~/.claude/settings.json(または $CLAUDE_SETTINGS_PATH)の enabledPlugins["cc-safety-net@cc-marketplace"] の項目を読み取ります。CC Safety Net を別のエージェント用にインストールした場合や、マーケットプレイスのプラグインではなく手動の Claude Code hook として設定した場合、このインジケーターは当てはまりません。
ステータスラインを設定する
~/.claude/settings.json に statusLine の項目を追加します。環境に合った実行方法を選んでください。
- Bun(推奨)
- Claude X
- NPM
- 既存コマンドにつなげる
ステータスラインのインジケーター
出力は、必ず次の形式の 1 行です。レベルのインジケーター
レベルを示す絵文字は常に 1 つだけ表示されます。示されるのは、設定した環境変数そのものではなく、policy.json と環境変数を組み合わせた結果として実際に適用されている安全レベルです。
custom は、次のいずれかの場合に表示されます。有効な機能の組み合わせがどの preset にも一致しない場合、または destructive_command_protection.overrides によって破壊的コマンドのルールが preset 本来の状態から変わった場合です。たとえば既定のレベルに CC_SAFETY_NET_PARANOID=1 を重ねると、2 つの paranoid 機能は有効になりますが、fail_closed は無効のままです。
各レベルがブロックする内容は安全レベルを、有効なレベルが決まる優先順位は環境変数を参照してください。
worktree、プロジェクトポリシー、degraded のインジケーター
次のインジケーターは、レベルの絵文字の後ろにこの順で追加されます。
🔻 は、どの項目が緩和されたかまでは示しません。
npx cc-safety-net status を実行すると Project policy のブロックが表示され、緩和された項目ごとに project policy lowers level: strict -> standard や project policy disables rule <id> のような行が 1 行ずつ並びます。npx cc-safety-net doctor は同じ行を Project policy deltas: の下に出力します。プロジェクトポリシーで設定できる内容は、ポリシーを参照してください。
⚠️ は、設定が degraded であることを知らせる唯一の常時表示のサインです。どの設定元が失敗したかまでは示しません。詳しい診断は npx cc-safety-net status、詳細なレポートは npx cc-safety-net doctor で確認してください。ready と degraded の意味、およびそれぞれの修復方法については、設定の復旧を参照してください。
プラグイン無効のインジケーター
これは、
status が Not active の先頭項目として報告する条件と同じものです。プラグインが無効でも影響するのは Claude Code の連携だけなので、判定は ready または degraded のままです。statusline コマンドはこの条件を最初に確認し、行の残りを置き換えます。そのため、❌ と並んでレベル、worktree、プロジェクトポリシー、degraded のインジケーターが表示されることはありません。
❌ はあくまで、Claude Code のマーケットプレイスプラグインが無効であることを示します。CC Safety Net を手動の Claude Code hook として動かしている場合や、まったく別のエージェントで使っている場合は、保護が有効であってもステータスラインに ❌ が出ることがあります。ステータスラインが反映するのは、~/.claude/settings.json の enabledPlugins の項目だけです。ステータスラインと status コマンドの違い
どちらのコマンドも、ポリシーのスナップショットと解決済みの環境変数を読み込みますが、設定状態の見せ方が異なります。status は、判定と問題ごとの診断を複数行のレポートとしてターミナルに出力します。ステータスラインは絵文字 1 行のインジケーターだけを出力し、診断は表示しません。
その状態になった理由を調べるには status を使います。状態を常時表示するにはステータスラインを使ってください。status と statusline の構文、出力、終了時の挙動は、CLI コマンドを参照してください。
~/.claude/settings.json の変更は即座に反映され、Claude Code を再起動する必要はありません。statusline コマンドでは、--claude-code の短いエイリアスとして -cc を使えます。別のコマンドを
statusline にパイプすると、そのコマンドの出力が前に置かれ、<piped output> | 🛡️ CC Safety Net … の形式で表示されます。Claude Code は自身のステータス情報をコマンドにパイプしてくるため、標準入力からパイプされた JSON はそのまま出力せずに破棄します。