要点

対象:Claude Codeの不具合の原因を知りたい人

  1. 2.1.169 から使える
  2. 権限の設定は効いたまま
  3. --tools ""も付けると入力は約13分の1

Claude Codeで不具合が出たら、作業中のフォルダで claude --safe-mode と打って起動し直してください。

この記事の目次(6節)
  1. safe modeで読み込まないものと、そのまま使えるもの
  2. 設定が原因かを切り分ける手順
  3. このサイトで測った結果
  4. 定期実行で使うときの注意
  5. 使い始める前の確認
  6. 関連記事

それで症状が出なければ、原因はCLAUDE.md・フック・MCPサーバーなど、safe modeで読み込まない設定のどれかにあります。1

safe modeは、本来は設定の不具合を切り分けるためのオプションです。1

safe modeで読み込まないものと、そのまま使えるもの

safe modeは、公式の日本語の文書では「セーフモード」と書かれています。2.1.169(日本時間の2026年6月9日公開)から使えます。346

環境変数 CLAUDE_CODE_SAFE_MODE を 1 にしても同じです。6

似たオプションに --bare(最小限モード)があります。スクリプトから速く起動し、どのマシンでも同じ結果を得るためのモードです。12

項目ふつうの起動--safe-mode--bare
CLAUDE.md・スキル・プラグイン読み込む読み込まない読み込まない(作業フォルダを足す --add-dir で渡したフォルダのスキルは読み込む)
自分で設定したフック動く動かない動かない
MCPサーバーつなぐつながないつながない
自動メモリ(AIが自分で書き残すメモ)読み込む読み込まない読み込まない
組み込みのツール既定のツールを使える既定のツールを使えるBash・ファイルの読み取り・編集だけ
権限の設定効く効く公式の文書に記載なし
サブスクリプションのログイン使える使える使えない(APIキーが要る)

管理者が配る設定(管理設定)は、safe modeでは次のように分かれます。16

  • 効く: ポリシーで設定したフック・ステータスライン
  • 読み込まない: 管理設定で配ったプラグイン・スキル・CLAUDE.md・MCPサーバー

設定が原因かを切り分ける手順

  1. ふつうに起動し、不具合が再現することを確かめる
  2. 同じフォルダで claude --safe-mode と打って起動し、同じプロンプトを送る

結果で、次のように分かれます。

  • 再現しない → 原因はsafe modeで読み込まない設定にある。ふつうの起動に戻し、CLAUDE.md・フック・MCPサーバーを1つずつ外して、どれを外すと再現しなくなるかを見る
  • 再現する → safe modeでも残る権限の設定・管理設定か、Claude Codeのプログラム自体・ネットワーク・ログインを疑う

このサイトで測った結果

2026年10月23日に、このサイトでLinux版のClaude Code 2.1.309を使って測りました。モデルは --model haiku で指定し、動いたのはClaude Haiku 5.5でした。

検証用のフォルダに、架空の社内ルールを書いた約3万字のCLAUDE.mdを置きました。その中に、合言葉「みかん色の自転車」も入れました。

起動時に動く SessionStart フックも設定し、AIへ「今日の当番は経理の佐藤さんです」と伝えるようにしました。

非対話モードの claude -p で、合言葉と今日の当番を聞きました。どの条件も2回ずつ測り、2回とも同じ値でした。

入力のトークン数には、--output-format json で出る usage のうち、3つの値の合計を使いました。

足したのは input_tokens・cache_creation_input_tokens・cache_read_input_tokens で、Zennの記事と同じ測り方です。5

付けたオプション入力のトークン数AIの答え
なし(ふつうの起動)48,203合言葉と当番を答えた
--settings '{}'48,203合言葉と当番を答えた
--tools ""15,114合言葉と当番を答えた
--safe-mode33,589答えられなかった
--safe-mode --tools ""3,675答えられなかった
--safe-mode --tools "" に --system-prompt "日本語で短く答えてください。" も付ける1,440答えられなかった
--bare測れなかった認証エラーで止まった
付けたオプション別の、入力のトークン数(トークン) なし(ふつうの起動) --tools "" --safe-mode --safe-mode --tools "" さらに --system-prompt 48,203 15,114 33,589 3,675 1,440
検証用のフォルダで、付けたオプション別に測った入力のトークン数

設定を空にするつもりで --settings '{}' を付けても、値は変わりませんでした。--settings は、書いたキーだけを上書きするからです。1

safe modeでは、CLAUDE.mdとフックの中身を答えられませんでした。それでも入力のトークン数は、約3割しか減りませんでした。

safe modeで残った33,589トークンの多くは、組み込みのツールの定義だと見ています。--tools "" も付けると、33,589から3,675トークンまで減ったからです。ふつうの起動と比べると、約13分の1です。

表とは別に、何も置かないフォルダでsafe modeを2回測りました。1回は33,589トークンでした。もう1回はAIがツールでフォルダの中を調べ始め、101,846トークンになりました。

ツールを残すと、同じ条件でも、入力のトークン数が回によって大きく変わりました。

10月21日にZennで公開された記事でも、定期実行の claude -p "ok" を見直しています。

--safe-mode・--tools ""・--system-prompt を付けて、入力は39,968から737トークンに減ったと報告されています。5

定期実行で使うときの注意

cronなどでClaude Codeを動かしているなら、オプションは目的に合わせて選びます。safe modeはログインをそのまま使えるので、毎回の入力のトークン数を減らすのにも使えます。

したいこと付けるオプション気をつけること
CLAUDE.mdやフックを読み込ませず、ログインは使う--safe-mode自分で設定したフックで禁止していた操作も、実行できてしまう
ツールを使わない短い返事だけをさせる--tools ""AIはファイルを読めず、コマンドも動かせない
決まった形の返事だけをさせる--system-prompt "…"ツールの使い方や安全に関する指示も含めて、既定のシステムプロンプトが全部置き換わる
どのマシンでも同じ結果にする--bareサブスクリプションのログインは使えず、APIキーが要る

既定のシステムプロンプトを残したまま指示を足すなら、--append-system-prompt を使います。1

Anthropicは、スクリプトやSDKから呼ぶときには --bare を勧めています。将来は、--bare が claude -p の既定の動きになる予定です。2

--bare を付けない claude -p は、信頼したことのないフォルダでも .claude/settings.json のフックを動かします。.mcp.json のMCPサーバーにもつなぎます。2

このとき、フォルダを信頼するかの確認も、サーバーごとの承認も出ません。2

safe modeを付けると、そのフォルダのフックもMCPサーバーも読み込みません。1上の測定でも、フックが伝える当番をAIは答えられませんでした。

使い始める前の確認

自分で組む場合も、開発を頼む場合も、次の4つを確かめてください。

  1. Claude Codeが2.1.169以降か(claude --version で分かる)
  2. フックで禁止していた操作を、権限の拒否(deny)ルールなど、ほかの方法でも禁止しているか
  3. 付けたあとも、出力の形式が変わらないか
  4. 付ける前と後で、入力のトークン数はどれだけ違うか

関連記事

まずは、いま動いている定期実行のコマンドに --output-format json を付けて1回動かし、usage の3つの値の合計を確かめてください。

出典

  1. Claude Code「CLI リファレンス」(公式文書・日本語)(参照 2026-10-23)
  2. Claude Code「Run Claude Code programmatically」(公式文書・英語)(参照 2026-10-23)
  3. Anthropic「Claude Code CHANGELOG」(GitHub。2.1.169 の項)(参照 2026-10-23)
  4. npm「@anthropic-ai/claude-code」バージョンの一覧(参照 2026-10-23)
  5. cronのclaude -pが"ok"だけで4万トークン——--safe-modeと--tools ""で98%削減(Zenn)(参照 2026-10-23)
  6. Claude Code「環境変数」(公式文書・日本語)(参照 2026-10-23)