Skip to content
Apothem
CLI リファレンス

diff

apothem diff コマンドの CLI リファレンス。

単一のハーネスについて、保留中の構成変更をプレビューします。

構文

apothem diff --harness NAME [--profile PATH] [--project PATH]
             [--quiet|-q] [--verbose|-v]
             [--format plain|json] [--json] [--no-color]

diff は読み取り専用の検査コマンドです。 install コマンドが実行するのと同じマテリアライズ処理を実行しますが、ドライランモードで実行するため、ディスクには何も書き込まれません。 保留中の各ターゲットについて、平易な言葉で表したアクション(たとえば Write file、Merge directory、Install skills、Prune stale files)、ターゲットパス、プレビューステータス(would create、would update、would remove、no change のいずれか)、そして(マージされることになるオペレーター所有のアンカーについては)変更の統一差分をレンダリングします。 ステータスはソースを現在のディスク上のターゲットと比較して算出されるため、すでに一致しているターゲットは no change と表示され、デフォルトのビューには表示されません。 これは、変更を加えることなく、「今この時点で apothem install はこのハーネスに何をするか?」という問いに答えるものです。

プランは、インストールが書き込むすべてのパスを対象とします。マニフェストのエントリ、ハーネス自身の設定ファイル(たとえば opencode.json や config.yaml)、共有プロファイルが投影される命令アンカーまたはプロファイルドキュメント(CLAUDE.md など)、そして .apothem/ 配下の共有データストアです。 インストールの直後には、diff は保留中の変更がないと報告します。その時点で再インストールしても何も書き込まれず、新しいバックアップも作成されません。 install --dry-run も同じプランを表示します。

スキルをホームディレクトリに書き込むアダプターについては、プランはそれらのフォルダーをホームのパスとともに、プロジェクトのファイルより前に列挙し、Apothem が書き込んだものではないスキルフォルダーは skill_conflict 警告として表示されます。

オペレーター所有のターゲット(あなた自身のコンテンツと Apothem 管理のブロックの両方を含むファイル)については、差分は変更されることになる正確な行を示します。 その他のターゲットについては、計画されたアクションとプレビューステータスが要約されます。

デフォルトのビューには、保留中の変更のみが一覧表示されます。 変更のないターゲットを含む完全なプランを、生の内部操作種別と結果の注釈付きで表示するには、--verbose を渡します。 --json のエンベロープは表示レイヤーの影響を受けません。機械的な利用者のために、常に生の operation フィールドと outcome フィールドを含みます。

diff は単一のハーネスに対して動作します。 install や verify とは異なり、all は受け付けません。ハーネス名を 1 つ渡してください。

オプション

オプション説明
--harness NAMEプレビューするハーネスアダプター(必須。all ではなく単一のハーネス)。
--profile PATH共有プロファイル YAML へのパス。デフォルトは ~/.config/apothem/profile.yaml です。
--project PATHプロジェクトスコープのハーネス向けのプロジェクトルート。選択したハーネスがプロジェクトスコープの場合は必須です。
--quiet, -q情報出力を抑制し、エラーのみを出力します。
--verbose, -v変更のないターゲットを含む完全なプランを、生の操作種別と結果の注釈付きで表示します。
--format plain|json出力形式(デフォルト: plain)。
--json--format json の短縮形です。
--no-color出力中の ANSI カラーコードを無効にします。
-h, --helpヘルプを表示して終了します。

JSON 出力

--json のエンベロープは、ドライランの install のエンベロープと同じ形をとります。 status は dry_run、files_written は常に空で、materialization ブロックと results リストが、計画されたターゲットの詳細をすべて含みます。 オペレーター所有の各結果行の detail.diff フィールドには、統一差分の文字列が含まれます。

{
  "schema_version": 1,
  "status": "dry_run",
  "command": "diff",
  "action": "dry_run",
  "harness": "claude-code",
  "files_written": [],
  "results": [
    {
      "harness": "claude-code",
      "outcome": "updated",
      "operation": "sentinel_merge",
      "path": "C:\\Users\\Example\\.claude\\CLAUDE.md",
      "message": "dry run: no filesystem changes made",
      "detail": {
        "ownership_class": "operator-owned",
        "diff": "--- a/CLAUDE.md\n+++ b/CLAUDE.md\n@@ ..."
      }
    }
  ],
  "warnings": [],
  "error": null,
  "materialization": { "...": "..." }
}

例

apothem diff --harness claude-code
apothem diff --harness cursor --project .
apothem diff --harness claude-code --json

終了コード

コード意味
0差分を報告した(保留中の変更は報告されるものであり、エラーではない)
1予期される検証、プロファイル、ハーネス、またはプロジェクトのエラー
64使用法エラー: 不明なオプションまたはコマンド、あるいは欠落した、または無効なオプション値。--json の下では、エラーはコード cli.usage を持つ JSON エンベロープになります。

関連項目

  • apothem status — すべてのハーネスについてインストール/検証/ドリフトの状態を報告する
  • apothem verify — ハーネスアダプターのインストールを検証する
  • apothem install — プレビューした変更を適用する

On this page