ホームへ戻る

AI 程式開發工具

Claude Code 2.1.248にrestrictedモードが追加、デフォルトでコマンド実行とWebFetchを無効化

新しいフラグによりファイルツールを作業ディレクトリ内に制限し、ユーザー設定とプロジェクト設定を読み飛ばすことで、評価プラットフォームや共有ホスト上でのエージェント実行を容易にする。起動引数でツールを再び追加できるため、OSレベルのサンドボックスではない。

Qzekrom (screenshot) · Public domain · Image source
zh-Hant

AnthropicはClaude Code 2.1.248に`--restricted`を追加した。評価harness、CI、共有マシン上でcoding agentをより小さなデフォルト権限で起動できるようにすることが狙いだ。有効にすると、Claude Codeはコマンドやコードを実行できる組み込みツールと`WebFetch`を無効化する。組み込みの読み書きツールがアクセスできる範囲は起動時の作業ディレクトリ内に限定され、`bypassPermissions`権限モードとの併用も拒否される。同じ動作は`CLAUDE_CODE_RESTRICTED=1`でも有効にできる。

もう一つの重要な境界は、設定の読み込み元だ。restrictedモードでは、ユーザー、プロジェクト、ローカルの設定ファイルを無視し、組織が管理する設定と、`--settings`で明示的に渡された設定だけを読み込む。これにより、開発者のコンピューター上にあるhooks、ツール権限、プロジェクト固有のカスタマイズによってテスト結果が知らないうちに変わることを防げるほか、悪意のあるリポジトリがローカル設定を利用して権限を拡大する可能性も抑えられる。複数のエージェントを比較する研究者にとっては、単に`--tools`を使用するよりも、再現可能な最小ベースラインに近い。

ただし、restrictedは強制的な隔離を意味しない。ドキュメントでは、操作者が`--tools`を使ってBash、プログラム実行、WebFetchを個別に再追加することが明示的に認められている。また、MCPツールは`--tools`の制御対象外であるため、別途`--disallowedTools "mcp__*"`でブロックする必要がある。ファイル境界はClaude Code自体によって適用されるものであり、コンテナ、仮想マシン、読み取り専用マウント、ネットワークポリシー、低権限のOSアカウントを代替するものではない。CIで信頼されていないpull requestを処理する場合、エンジニアリングチームは引き続き外側のレイヤーで実効性のあるリソース隔離とネットワーク隔離を構築する必要がある。

同じバージョンでは、子エージェントごとのprompt-cache TTL、セッションをまたぐメッセージ、複数のキャッシュ修正も追加されたが、デプロイモデルに最も直接的な影響を与える変更はrestrictedだ。今後は、シンボリックリンク、MCP、hooks、明示的に再追加したツールとの相互作用に加え、監査可能な脅威モデルとエスケープテストを公式が提供するかどうかを検証する必要がある。

出典

  1. Claude Code v2.1.248 release notes
  2. Claude Code CLI reference: --restricted
  3. AI Coding News — August 28, 2026: Claude Code Ships a Restricted Mode