doctor
Référence de la CLI pour la commande apothem doctor.
Vérifie l'état de santé de ce qui est installé. Là où
apothem verify vérifie les environnements que
vous sélectionnez, doctor vérifie chaque environnement installé ainsi que le
profil partagé en une seule passe.
Synopsis
apothem doctor [--project PATH] [--quiet|-q] [--verbose|-v]
[--format plain|json] [--json] [--no-color]Ce qui est vérifié
- Profil partagé. Un profil présent est validé par rapport au schéma
fourni avec le paquet ; un profil mal formé échoue avec son code de
diagnostic. Un profil absent est signalé, sans échec (
installen crée un). - Environnements installés uniquement. Un environnement qui n'est pas
installé est signalé comme
not_installedet ne constitue pas un échec ; une machine dotée d'un seul environnement en bonne santé réussit donc la vérification. Les environnements à portée de projet sont vérifiés lorsque--projectnomme leur racine ; sans cette option, ils sont signalés commeneeds_project. - Vérification. Chaque environnement installé doit réussir la même
vérification que
verify. - Runtime des hooks. Pour chaque environnement vérifié, doctor lit les
fichiers écrits par sa dernière installation, trouve les commandes de hook
qu'Apothem y a enregistrées, et démarre une fois chaque interpréteur et chaque
script de hook avec une charge utile sans effet (les arguments enregistrés
plus
--help,{}sur stdin, un répertoire de travail temporaire, etPYTHONPATHretiré). Rien n'est écrit. Un interpréteur manquant, un script manquant ou un plantage au moment de l'import fait échouer la vérification.
Chaque vérification en échec nomme une correction. Quitte avec 0 lorsqu'aucune vérification n'échoue, et avec 1 sinon.
Sortie JSON
--json conserve les champs antérieurs (version, python, platform,
profile_path, profile_exists, profile_valid, harnesses, all_ok,
et profile_error lorsque le profil est invalide) et ajoute :
profile_error_code— le code de diagnostic du profil, lorsque le profil est invalide.project— la racine--projectrésolue, ounull.harnesses[].status—ok,not_installed,needs_project,verify_failed,hook_failedouerror; plusverifiedethooks({"probed": N, "failed": [...]}, ounulllorsqu'aucun enregistrement d'installation n'existe).checks— un enregistrement par vérification :code(par exempleharness.verify_failed,hook.start_failed,ledger.unreadableou un codeprofile.*),status(pass,failouinfo),harness,messageetfix.
{
"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 …"
}
]
}Options
| Option | Description |
|---|---|
--project PATH | Racine de projet pour les environnements à portée de projet ; sans cette option, ils sont signalés comme needs_project. |
--quiet, -q | Supprime la sortie informative ; seules les erreurs sont émises. |
--verbose, -v | Accepté par cohérence avec les autres commandes ; cette commande n'affiche aucune sortie supplémentaire. |
--format plain|json | Format de sortie (par défaut : plain). |
--json | Raccourci de --format json. |
--no-color | Désactive les codes de couleur ANSI dans la sortie. |
-h, --help | Affiche l'aide et quitte. |
Exemples
apothem doctor
apothem doctor --project .
apothem doctor --jsonLe format plain par défaut affiche des diagnostics lisibles par un humain ;
--json (équivalent à --format json) émet sur stdout un document lisible par
une machine, adapté à un acheminement par pipe vers d'autres outils.
Codes de sortie
| Code | Signification |
|---|---|
| 0 | Toutes les vérifications ont réussi (y compris lorsqu'aucun environnement n'est encore installé) |
| 1 | Un environnement installé ne passe pas la vérification, une commande de hook enregistrée ne peut pas démarrer, un adaptateur n'a pas pu être chargé ou sondé, ou un profil présent a échoué à la validation du schéma |
| 64 | Erreur d'utilisation : une option ou une commande inconnue, ou une valeur d'option manquante ou invalide. Sous --json, l'erreur est une enveloppe JSON avec le code cli.usage. |
Voir aussi
- apothem harnesses — liste et inspecte les environnements enregistrés
- apothem verify — vérifie l'installation d'un adaptateur d'environnement