7.8 KiB
ComfyUI-Doctor
繁中 | 简中 | 日本語 | 한국어 | Deutsch | Français | Italiano | Español | English |
ComfyUI-Doctor ist ein Echtzeit-Diagnose- und Debugging-Assistent für ComfyUI. Er erfasst Laufzeitfehler, identifiziert wahrscheinlichen Node-Kontext, zeigt umsetzbare lokale Hinweise an und kann optional einen LLM-Chat-Workflow für tiefere Fehlersuche verwenden.
Neueste Änderungen
Die neuesten Änderungen werden in der englischen README gepflegt. Siehe Latest Updates.
Kernfunktionen
- Echtzeit-Erfassung von ComfyUI console/error-Ausgaben ab dem Start.
- Integrierte Vorschläge aus 58 JSON-basierten Fehlermustern, darunter 22 core patterns und 36 community-extension patterns.
- Validierte Node-Kontextextraktion für aktuelle workflow-Ausführungsfehler, wenn ComfyUI genügend Ereignisdaten bereitstellt.
- Geeignete verschachtelte validation errors können anhand öffentlicher graph-Daten am äußeren subgraph angezeigt werden, ohne die Quellinformationen zu verlieren.
- Model-asset diagnostics verwenden bevorzugt ComfyUIs live model registry und prüfen verschachtelte subgraphs sowie benutzerdefinierte Erweiterungen mit festen Grenzen.
- Modellpfade werden durch real-path containment geschützt; Werte von
AuthorizationundX-API-Keywerden immer maskiert. - Doctor settings deaktivieren host setting-change telemetry; Desktop runtime identity und private state storage source werden getrennt bestimmt.
- Doctor-Sidebar mit Chat-, Statistics- und Settings-Tabs.
- Optionale LLM-Analyse über OpenAI-compatible services, Anthropic, Gemini, xAI, OpenRouter, Ollama und LMStudio mit einheitlicher provider request/response-Verarbeitung.
- Privacy controls für ausgehende LLM-Anfragen, einschließlich Sanitization-Modi für Pfade, Schlüssel, E-Mails und IP-Adressen.
- Optionaler serverseitiger credential store mit admin guarding und encryption-at-rest support.
- Lokale diagnostics, statistics, plugin trust report, telemetry controls und community feedback preview/submit tools.
- Konsistente JSON error envelopes für Doctor API-Fehler.
- Vollständige UI- und Vorschlagssprachunterstützung für Englisch, traditionelles Chinesisch, vereinfachtes Chinesisch, Japanisch, Koreanisch, Deutsch, Französisch, Italienisch und Spanisch.
Screenshots
Installation
ComfyUI-Manager
- Öffne ComfyUI und klicke auf Manager.
- Wähle Install Custom Nodes.
- Suche nach
ComfyUI-Doctor. - Installiere es und starte ComfyUI neu.
Manuelle Installation
cd ComfyUI/custom_nodes/
git clone https://github.com/rookiestar28/ComfyUI-Doctor.git
Starte ComfyUI nach dem Clone neu. Doctor sollte seine Startdiagnose ausgeben und den Doctor-Sidebar-Eintrag registrieren.
Grundlegende Verwendung
Automatische Diagnose
Nach der Installation zeichnet Doctor die ComfyUI-Laufzeitausgabe passiv auf, erkennt Tracebacks, gleicht bekannte Fehlermuster ab und zeigt die neueste Diagnose in der Sidebar und im optionalen rechten Berichtspanel an. Bei optionaler LLM-Analyse erstellt Doctor den prompt context über dieselbe strukturierte Pipeline, die Sanitization, Node-Kontext, Ausführungslogs, workflow pruning und Systeminformationen verarbeitet.
Doctor-Sidebar
Öffne Doctor in der linken Sidebar von ComfyUI:
- Chat: aktuellen Fehlerkontext prüfen und weitere Debugging-Fragen stellen.
- Statistics: aktuelle Fehlertrends, diagnostics, trust/health information, telemetry controls und feedback tools prüfen.
- Settings: Sprache, LLM provider, base URL, model, privacy mode, Auto-Open-Verhalten und optionalen serverseitigen credential storage auswählen.
Smart Debug Node
Klicke mit der rechten Maustaste auf den Canvas, füge Smart Debug Node hinzu und platziere ihn inline, um durchlaufende Daten zu prüfen, ohne den workflow output zu verändern.
Optionale LLM-Einrichtung
Cloud provider benötigen ein credential, das über das session-only UI field, Umgebungsvariablen oder den optionalen admin-gated server store bereitgestellt wird. Lokale provider wie Ollama und LMStudio können ohne cloud credential laufen. Doctor normalisiert provider-specific request/response-Formate für OpenAI-compatible APIs, Anthropic und Ollama, sodass chat, single-shot analysis, model listing und connectivity checks dasselbe Backend-Verhalten teilen.
Empfohlene Defaults:
- Für cloud provider Privacy Mode: Basic oder Strict verwenden.
- In gemeinsam genutzten oder produktionsähnlichen Umgebungen Umgebungsvariablen verwenden.
- Auf gemeinsam genutzten Servern
DOCTOR_ADMIN_TOKENundDOCTOR_REQUIRE_ADMIN_TOKEN=1setzen. - Den local-only loopback convenience mode nur für Single-User-Desktop-Nutzung behalten.
Dokumentation
- User Guide: UI walkthrough, diagnostics, privacy modes, LLM setup und feedback flow.
- Architecture: host startup, backend/frontend boundaries, data flows, security/storage boundaries und test lanes.
- Configuration and Security: environment variables, admin guard behavior, credential storage, outbound safety, telemetry und CSP notes.
- API Reference: öffentliche Doctor- und debugger endpoints.
- OpenAPI Contract: machine-readable API contract.
- Validation Guide: lokale full-gate commands und optionale focused, integration, stress, compatibility, coverage und audit lanes.
- Security Audit: quarterly audit cadence, report template, manual checks, optional external scanners und evidence handling.
- Plugin Guide: community plugin trust model und plugin authoring notes.
- Plugin Migration: migration tooling für plugin manifests und allowlists.
- Outbound Safety: static checker und outbound request safety rules.
- Contributing: setup, development workflow, validation expectations und PR readiness.
Unterstützte Fehlermuster
Patterns werden als JSON-Dateien unter patterns/ gespeichert und können ohne Codeänderungen aktualisiert werden.
| Pack | Count |
|---|---|
| Core builtin patterns | 22 |
| Community extension patterns | 36 |
| Total | 58 |
Community packs decken derzeit häufige Fehlermodi für ControlNet, LoRA, VAE, AnimateDiff, IPAdapter, FaceRestore, checkpoint, sampler, scheduler und CLIP ab.
Validierung
Für lokale CI-parity validation verwende das full-test script des Projekts:
powershell -File scripts/run_full_tests_windows.ps1
bash scripts/run_full_tests_linux.sh
Das full gate umfasst supply-chain checks, secrets detection, pre-commit hooks, host-like startup validation, backend unit tests und frontend Playwright E2E tests. Explizite staged commands und optionale lanes stehen im Validation Guide.
Anforderungen
- ComfyUI custom-node environment.
- Python 3.10 oder neuer.
- Node.js
>=18 <26nur für frontend E2E validation. - Zur Laufzeit ist keine zusätzliche Python package dependency über ComfyUIs bundled environment und die Python standard library hinaus erforderlich.
Lizenz
MIT License
Mitwirken
Beiträge zu Patterns und Dokumentation sind willkommen. Führe bei Codeänderungen vor dem Öffnen eines pull request das vollständige validation gate aus und vermeide das Committen generierter lokaler Zustände, Logs, credentials oder interner planning files.

