CLI リファレンス
doctor
apothem doctor コマンドの CLI リファレンス。
インストールされているものの健全性をチェックします。
apothem verify が選択したハーネスをチェックするのに対し、doctor はインストール済みのすべてのハーネスと共有プロファイルを 1 回でチェックします。
構文
apothem doctor [--project PATH] [--quiet|-q] [--verbose|-v]
[--format plain|json] [--json] [--no-color]チェック内容
- 共有プロファイル。 存在するプロファイルは、同梱のスキーマに照らして検証されます。不正な形式のプロファイルは、その診断コードとともに失敗します。
プロファイルが存在しない場合は報告されますが、失敗にはなりません(
installが作成します)。 - インストール済みのハーネスのみ。 インストールされていないハーネスは
not_installedとして報告され、失敗にはならないため、健全なハーネスが 1 つあるマシンは合格します。 プロジェクトスコープのハーネスは、--projectがそのルートを指定した場合にチェックされます。指定がない場合はneeds_projectとして報告されます。 - 検証。 インストール済みの各ハーネスは、
verifyと同じチェックに合格しなければなりません。 - フックランタイム。 検証された各ハーネスについて、doctor はその最新のインストールが書き込んだファイルを読み取り、Apothem がそこに登録したフックコマンドを見つけ、各インタープリターとフックスクリプトを何もしないペイロード(登録された引数に
--helpを加えたもの、stdin 上の{}、スクラッチの作業ディレクトリ、そしてPYTHONPATHの除去)で 1 回ずつ起動します。 何も書き込まれません。 インタープリターの欠落、スクリプトの欠落、またはインポート時のクラッシュは、チェックを失敗させます。
失敗した各チェックは、修正方法を示します。 失敗したチェックがない場合は 0 で、それ以外の場合は 1 で終了します。
JSON 出力
--json は従来のフィールド(version、python、platform、profile_path、profile_exists、profile_valid、harnesses、all_ok、そしてプロファイルが無効な場合の profile_error)を維持し、次のフィールドを追加します。
profile_error_code— プロファイルが無効な場合の、プロファイルの診断コード。project— 解決された--projectルート、またはnull。harnesses[].status—ok、not_installed、needs_project、verify_failed、hook_failed、errorのいずれか。加えてverifiedとhooks({"probed": N, "failed": [...]}、またはインストールレコードが存在しない場合はnull)。checks— チェックごとに 1 つのレコード。code(たとえばharness.verify_failed、hook.start_failed、ledger.unreadable、またはprofile.*コード)、status(pass、fail、infoのいずれか)、harness、message、fixを含みます。
{
"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 …"
}
]
}オプション
| オプション | 説明 |
|---|---|
--project PATH | プロジェクトスコープのハーネス向けのプロジェクトルート。指定がない場合、それらは needs_project として報告されます。 |
--quiet, -q | 情報出力を抑制し、エラーのみを出力します。 |
--verbose, -v | 他のコマンドとの一貫性のために受け付けられます。このコマンドは追加の出力を表示しません。 |
--format plain|json | 出力形式(デフォルト: plain)。 |
--json | --format json の短縮形です。 |
--no-color | 出力中の ANSI カラーコードを無効にします。 |
-h, --help | ヘルプを表示して終了します。 |
例
apothem doctor
apothem doctor --project .
apothem doctor --jsonデフォルトの plain 形式は、人間が読める診断を出力します。--json(--format json と同等)は、機械可読なドキュメントを stdout に出力し、他のツールへのパイプに適しています。
終了コード
| コード | 意味 |
|---|---|
| 0 | すべてのチェックに合格した(まだハーネスが 1 つもインストールされていない場合も含む) |
| 1 | インストール済みのハーネスが検証に合格しない、登録されたフックコマンドを起動できない、アダプターを読み込めなかったかプローブできなかった、または存在するプロファイルがスキーマ検証に失敗した |
| 64 | 使用法エラー: 不明なオプションまたはコマンド、あるいは欠落した、または無効なオプション値。--json の下では、エラーはコード cli.usage を持つ JSON エンベロープになります。 |
関連項目
- apothem harnesses — 登録済みのハーネスを一覧表示・検査する
- apothem verify — ハーネスアダプターのインストールを検証する