Skip to content
Apothem
リファレンス

設定

ツールの権限、フックの配線、環境変数、ステータスラインのテンプレートを扱う、settings.json における Claude Code ハーネスの設定。

settings.json は、Claude Code ハーネスの設定を保持します: フックの配線、ツールの権限、環境変数、ステータスラインの設定です。

完全な正規リファレンスは settings-reference.md にあります。このページは契約を要約し、より詳しいリファレンスを案内します。

セクション

セクション目的
permissionsマッチャーごとのツールのホワイトリストとブラックリスト
hooksイベントをキーとするフックコマンドの表(正規の配線)
envセッションごとの環境変数
statusLineホストがレンダリングするステータスラインのテンプレート

単一テンプレートの不変条件

Claude Code アダプターは、1 つの settings.json テンプレートを出荷します。フックコマンドはシェル固有のコマンド文字列ではなく exec 形式(command と args)を使用するため、OS をまたぐ動作は 1 つのファイルの中でレビューされます。新しい権限エントリとフックイベントは、そのファイルにアトミックに追加されます。

自分の設定ファイルへのマージ

settings.json はあなた自身のファイルでもあります。インストールはテンプレートでファイルを置き換えるのではなく、テンプレートをファイルにマージし、どのキーとリストエントリを追加したかをインストール台帳(~/.apothem/state/<harness>/ledger.jsonl)に正確に記録します:

  • permissions.allow と permissions.deny は和集合としてマージされます: あなたのルールが先頭に残り、Apothem のルールが末尾に追加されます。あなたが書いた拒否ルールは必ず残り、Claude Code は許可ルールより前に拒否ルールを適用します。
  • あなた自身のフックハンドラーはそのまま残ります。ハンドラーが Apothem のものとみなされるのは、Apothem がハーネスルート配下にインストールしたスクリプトを実行する場合だけです。そのため、ほかの hooks/dispatch.py を呼び出すハンドラーはあなたのものです。
  • 再インストールでは、Apothem が前回追加したものだけが置き換えられます。そのため、テンプレートから外れたエントリは削除され、あなたが追加したエントリは保持されます。
  • アンインストールでは、台帳が Apothem のものとして記録しているエントリだけが削除されます。たまたま Apothem のルールと同じであるルール(たとえば、最初のインストールより前にあなた自身の allow リストにあった Read)は残ります。ファイルが削除されるのは、Apothem がそのファイルを作成し、あなたのものが何も残っていない場合だけです。

同じルールは、Qwen Code の settings.json や OpenCode の opencode.json にある MCP サーバーのマップなど、Apothem がマージする他の設定ファイルにも適用されます。

On this page