doctor
CLI-Referenz für den Befehl apothem doctor.
Prüft den Zustand dessen, was installiert ist. Während
apothem verify die Harnesses prüft, die Sie
auswählen, prüft doctor jeden installierten Harness und das gemeinsame Profil
in einem Durchlauf.
Übersicht
apothem doctor [--project PATH] [--quiet|-q] [--verbose|-v]
[--format plain|json] [--json] [--no-color]Was geprüft wird
- Gemeinsames Profil. Ein vorhandenes Profil wird gegen das mitgelieferte
Schema validiert; ein fehlerhaftes schlägt mit seinem Diagnosecode fehl. Ein
fehlendes Profil wird gemeldet, gilt aber nicht als Fehlschlag (
installlegt eines an). - Nur installierte Harnesses. Ein nicht installierter Harness wird als
not_installedgemeldet und gilt nicht als Fehlschlag, sodass ein Rechner mit einem intakten Harness die Prüfung besteht. Harnesses mit Projektgeltungsbereich werden geprüft, wenn--projectihre Wurzel benennt; ohne diese Option werden sie alsneeds_projectgemeldet. - Verifizierung. Jeder installierte Harness muss dieselbe Prüfung bestehen
wie
verify. - Hook-Laufzeit. Für jeden verifizierten Harness liest doctor die Dateien,
die seine letzte Installation geschrieben hat, findet die Hook-Befehle, die
Apothem dort registriert hat, und startet jeden Interpreter und jedes
Hook-Skript einmal mit einer wirkungslosen Nutzlast (die registrierten
Argumente plus
--help,{}auf stdin, ein temporäres Arbeitsverzeichnis und entferntesPYTHONPATH). Es wird nichts geschrieben. Ein fehlender Interpreter, ein fehlendes Skript oder ein Absturz beim Import lässt die Prüfung fehlschlagen.
Jede fehlgeschlagene Prüfung nennt eine Korrektur. Beendet sich mit 0, wenn keine Prüfung fehlschlägt, andernfalls mit 1.
JSON-Ausgabe
--json behält die früheren Felder bei (version, python, platform,
profile_path, profile_exists, profile_valid, harnesses, all_ok
sowie profile_error, wenn das Profil ungültig ist) und fügt hinzu:
profile_error_code— der Profil-Diagnosecode, wenn das Profil ungültig ist.project— die aufgelöste--project-Wurzel odernull.harnesses[].status—ok,not_installed,needs_project,verify_failed,hook_failedodererror; dazuverifiedundhooks({"probed": N, "failed": [...]}odernull, wenn kein Installationsdatensatz existiert).checks— ein Datensatz pro Prüfung:code(zum Beispielharness.verify_failed,hook.start_failed,ledger.unreadableoder einprofile.*-Code),status(pass,failoderinfo),harness,messageundfix.
{
"schema_version": 1,
"all_ok": false,
"checks": [
{
"code": "hook.start_failed",
"status": "fail",
"harness": "claude-code",
"message": "claude-code: a registered hook command cannot start: …",
"fix": "Check that the interpreter in the hook command exists and runs, then …"
}
]
}Optionen
| Option | Beschreibung |
|---|---|
--project PATH | Projektwurzel für Harnesses mit Projekt-Geltungsbereich; ohne diese Option werden sie als needs_project gemeldet. |
--quiet, -q | Unterdrückt informative Ausgaben; nur Fehler werden ausgegeben. |
--verbose, -v | Aus Gründen der Konsistenz mit anderen Befehlen akzeptiert; dieser Befehl gibt keine zusätzliche Ausgabe aus. |
--format plain|json | Ausgabeformat (Standard: plain). |
--json | Kurzform für --format json. |
--no-color | Deaktiviert ANSI-Farbcodes in der Ausgabe. |
-h, --help | Zeigt die Hilfe an und beendet den Befehl. |
Beispiele
apothem doctor
apothem doctor --project .
apothem doctor --jsonDas Standardformat plain gibt menschenlesbare Diagnosen aus; --json
(gleichwertig zu --format json) gibt ein maschinenlesbares Dokument auf stdout
aus, das sich für die Weiterleitung per Pipe an andere Werkzeuge eignet.
Exit-Codes
| Code | Bedeutung |
|---|---|
| 0 | Alle Prüfungen bestanden (auch wenn noch kein Harness installiert ist) |
| 1 | Ein installierter Harness besteht die Verifizierung nicht, ein registrierter Hook-Befehl kann nicht starten, ein Adapter konnte nicht geladen oder sondiert werden, oder ein vorhandenes Profil hat die Schemavalidierung nicht bestanden |
| 64 | Verwendungsfehler: eine unbekannte Option oder ein unbekannter Befehl oder ein fehlender oder ungültiger Optionswert. Unter --json ist der Fehler ein JSON-Umschlag mit dem Code cli.usage. |
Siehe auch
- apothem harnesses — registrierte Harnesses auflisten und inspizieren
- apothem verify — die Installation eines Harness-Adapters verifizieren