> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 設定ファイル

> Devin CLI の設定ファイル形式に関する完全なリファレンス。permissions、proxy、sandbox、read_config_from など、ユーザーおよびプロジェクトのすべてのオプションを網羅しています。

Devin CLI では、設定に JSON ファイル (コメント対応) を利用します。このページでは、使用可能なすべてのオプションを説明します。

***

<h2 id="file-locations">
  ファイルの場所
</h2>

| ファイル | Purpose |
| - | - |
| `~/.config/devin/config.json` | ユーザー共通の設定 |
| `.devin/config.json` | プロジェクト設定 (コミット対象) |
| `.devin/config.local.json` | プロジェクトのローカルオーバーライド (.gitignore で無視される) |
| `~/.config/devin/mcp_config.json` | ユーザー共通のMCPサーバー |
| `.devin/mcp_config.json` | プロジェクトのMCPサーバー (コミット対象) |
| `.devin/mcp_config.local.json` | プロジェクトのローカルMCPサーバー (.gitignore で無視される) |
| [System ポリシーファイル](/ja/cli/enterprise/system-config) | マシン全体の管理者管理設定 (`system.json`) |

<Note>
  Windows では、ユーザー設定のパスは `~\.config\devin\` ではなく、`%APPDATA%\devin\config.json` および `%APPDATA%\devin\mcp_config.json` です (例: `C:\Users\<you>\AppData\Roaming\devin\config.json`)。
</Note>

<Note>
  MCPサーバーは v3000.3 (Local 3.6 リリース) で専用の `mcp_config.json` ファイルに移行しました。以前のバージョンでは、代わりにメイン設定ファイルの `mcpServers` キーに保存されます。新しいバージョンでは、起動時にそこにある `mcpServers` エントリを自動的に移行します。[mcpServers](#mcpservers) を参照してください。
</Note>

***

<h2 id="full-config-reference">
  完全な設定リファレンス
</h2>

<Tabs>
  <Tab title="ユーザー設定">
    ```json theme={null}
    // ~/.config/devin/config.json
    {
      // エージェントの動作
      "agent": {
        "model": "swe-1-6-fast",           // デフォルトのモデル
        "subagent_model": "swe-1-6-fast",  // サブエージェント用のモデル
        "show_history_on_continue": true  // 再開時にメッセージを表示
      },

      // テーマ
      "theme_mode": null,            // "light"、"dark"、"terminal-dark"、"terminal-light"、"nocolor"、または null（自動）

      // 権限
      "permissions": {
        "allow": [],
        "deny": [],
        "ask": []
      },

      // 表示
      "show_path": false,             // 入力欄の枠に CWD を表示
      "unicode_mode": "auto",         // "auto"、"unicode"、または "ascii"
      "show_hints": true,             // やり取りの合間にヒントを表示

      // ファイル補完
      "include_gitignored_files": false, // @ 補完に .gitignore で無視されるファイルを含める

      // ファイルアクセス
      "respect_gitignore": false,        // gitignore されたパスへのツールアクセスをブロック

      // コミットと PR の帰属情報
      "attribution": true,            // コミットと PR に "Generated with Devin" / Co-Authored-By を追加

      // サブエージェント
      "subagents_enabled": true,      // エージェントによるサブエージェントの起動を許可

      // 前提情報ごと、次にアクションごとに指定するキーバインドの上書き
      "keymap": {
        "global": { "clear_screen": "ctrl-shift-k" }
      },

      // 更新
      "auto_update": true,            // 新しいバージョンをバックグラウンドでインストール

      // キーバインドの上書き（前提情報 -> アクション -> キー仕様）
      "keymap": {},

      // 通知
      "notify": "smart",              // "never" | "smart" | "always" — ターミナル通知

      // CLI の HTTP トラフィック用プロキシ設定
      "proxy": {
        "mode": "system",           // "system" | "manual" | "off"
        "url": null,                // プロキシ URL（手動モードで必須）
        "no_proxy": null            // カンマ区切りの除外リスト
      },

      // サンドボックスのネットワークフィルタリング
      "sandbox": {
        "allowed_domains": [],       // ドメインの許可リスト（空 = フィルタリングなし）
        "denied_domains": [],        // ドメインの拒否リスト（こちらが優先）
        "network_mode": "full"       // "full" または "limited"（GET/HEAD/OPTIONS のみ）
      },

      // 他のツールから設定をインポート
      "read_config_from": {
        "agents_standard": true,
        "cursor": true,
        "windsurf": true,
        "claude": true,
        "copilot": true,
        "opencode": true,
        "zed": true
      }
    }
    ```
  </Tab>

  <Tab title="プロジェクト設定">
    ```json theme={null}
    // .devin/config.json
    {
      // 権限
      "permissions": {
        "allow": [],
        "deny": [],
        "ask": []
      },

      // 他のツールから設定をインポート
      "read_config_from": {
        "agents_standard": true,
        "cursor": true,
        "windsurf": true,
        "claude": true,
        "copilot": true,
        "opencode": true,
        "zed": true
      }
    }
    ```
  </Tab>
</Tabs>

***

<h2 id="options-reference">
  オプションリファレンス
</h2>

<Note>
  **ユーザーのみ** と記載されたオプションは、ユーザー設定 (`~/.config/devin/config.json`、Windows では `%APPDATA%\devin\config.json`) でのみ設定できます。プロジェクト設定で利用できるのは、`permissions`、`read_config_from`、`hooks` のみです。`mcpServers` は両方のレベルで設定できますが、専用の `mcp_config.json` ファイルに保存されます ([mcpServers](#mcpservers) を参照) 。
</Note>

<h3 id="agent-user-only">
  agent <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

| オプション | 型 | デフォルト | 説明 |
| - | - | - | - |
| `model` | string | `"swe-1-6-fast"` | デフォルトのAIモデル |
| `subagent_model` | string | 未設定 | サブエージェントが利用するモデル。チームの[Default subagent model](/ja/cli/subagents#which-model-does-a-subagent-use)より優先されます。チームで許可されているモデルを指定する必要があります |
| `show_history_on_continue` | boolean | `true` | セッション再開時に以前のメッセージを表示 |

<h3 id="theme_mode-user-only">
  theme\_mode <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

| 値 | 動作 |
| - | - |
| `null` | 自動検出 (初回実行時に確認) |
| `"light"` | ライトテーマ |
| `"dark"` | ダークテーマ |
| `"terminal-dark"` | 16 色の ANSI カラーに制限したダークテーマ (端末の配色に従う) |
| `"terminal-light"` | 16 色の ANSI カラーに制限したライトテーマ (端末の配色に従う) |
| `"nocolor"` | カラー出力なし (モノクロ、VT100 端末で有用) |

<h3 id="permissions">
  権限
</h3>

詳しいドキュメントについては、[権限](/ja/cli/reference/permissions)を参照してください。

```json theme={null}
{
  "permissions": {
    "allow": ["Read(**)", "Exec(git)"],
    "deny": ["Exec(sudo)"],
    "ask": ["Write(**/.env*)"]
  }
}
```

<h3 id="mcpservers">
  mcpServers
</h3>

サーバー名とサーバー設定の対応を示すマップです。ローカルコマンド (stdio) とリモートHTTPサーバーの両方に対応しています。詳細は [MCP Configuration](/ja/cli/extensibility/mcp/configuration) を参照してください。

v3000.3 (Local 3.6 リリース) 以降、MCPサーバーは専用ファイルで管理されます: `~/.config/devin/mcp_config.json` (Windows では `%APPDATA%\devin\mcp_config.json`) 、`.devin/mcp_config.json`、および `.devin/mcp_config.local.json`。以前のバージョンでは、`mcpServers` キーはメイン設定ファイルに直接含まれています。新しいバージョンでは、起動時に自動的に専用ファイルへ移行されます。

```json theme={null}
// mcp_config.json
{
  "mcpServers": {
    "server-name": {
      "command": "executable",
      "args": ["arg1", "arg2"],
      "env": { "KEY": "value" }
    },
    "remote-server": {
      "url": "https://mcp.example.com/mcp",
      "transport": "http"
    }
  }
}
```

<h3 id="show_path-user-only">
  show\_path <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

入力欄の枠線に現在の作業ディレクトリのパスを表示します。有効にすると、入力ボックス上部の枠線に、見やすい形式の CWD (例: `~/projects/my-app`) が表示されます。

| 値 | 動作 |
| - | - |
| `false` | 非表示 (デフォルト) |
| `true` | 入力欄の枠線に CWD パスを表示 |

<h3 id="unicode_mode-user-only">
  unicode\_mode <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

ターミナルUIで Unicode 記号を利用するか、ASCII で安全に表示できる代替文字を利用するかを制御します。端末やフォントで Unicode グリフが正しく表示されない場合 (例: ⏺ 記号が四角で表示される場合) は、`"ascii"` に設定してください。

| Value | Behavior |
| - | - |
| `"auto"` | Environment から Unicode サポートを検出する (デフォルト) |
| `"unicode"` | 常に Unicode 記号を利用する |
| `"ascii"` | 常に ASCII で安全に表示できる文字を利用する |

<h3 id="show_hints-user-only">
  show\_hints <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

会話の合間に、ときどきヒントを表示します (例: 「ご存じですか？ `/model` を利用すると、利用可能なモデルを切り替えられます」) 。CLIの機能を見つけるのに便利です。使い方に慣れたら、表示しないように `false` に設定してください。

| Value | Behavior |
| - | - |
| `true` | ときどきヒントを表示する (デフォルト) |
| `false` | ヒントを一切表示しない |

<h3 id="include_gitignored_files-user-only">
  include\_gitignored\_files <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

`@` タブ補完の結果に、`.gitignore` で無視されるファイルを含めます。有効にすると、`.gitignore` パターンに一致するファイルが `@` メンション補完に表示されます。参照したいドキュメントやその他のファイルを、`.gitignore` で無視されるディレクトリに保存している場合に便利です。

| 値 | 動作 |
| - | - |
| `false` | 補完結果から `.gitignore` で無視されるファイルを除外します (デフォルト) |
| `true` | `@` 補完に `.gitignore` で無視されるファイルを含めます |

<h3 id="respect_gitignore-user-only">
  respect\_gitignore <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

ツール経由でファイルを読み書きする際に、エージェントが `.gitignore` を尊重するかどうかを制御します。有効にすると、gitignore されたパスにアクセスするツール呼び出しはブロックされます。これは `include_gitignored_files` とは別の設定で、後者は `@` タブ補完にのみ影響します。

| 値 | 動作 |
| - | - |
| `false` | `.gitignore` に関係なく、エージェントはすべてのファイルにアクセスできます (デフォルト) |
| `true` | gitignore されたパスへのツールアクセスをブロック |

<h3 id="attribution-user-only">
  attribution <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

エージェントが作成するコミットとプルリクエストに、Devin の帰属情報を追加するかどうかを制御します。有効にすると、コミット本文と PR 本文に `Generated with [Devin]` 行と `Co-Authored-By: Devin` トレーラーが含まれます。どちらも追加しない場合は、`false` に設定します。

| Value | Behavior |
| - | - |
| `true` | コミットと PR に `Generated with [Devin]` 行と `Co-Authored-By` トレーラーを追加します (デフォルト) |
| `false` | コミットと PR から Devin の帰属情報をすべて省略します |

<div id="subagents_enabled" />

<h3 id="subagents_enabled-user-only">
  subagents\_enabled <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

エージェントが作業を[サブエージェント](/ja/cli/subagents)に委任できるかどうかを制御します。無効にすると、`run_subagent` ツールと `read_subagent` ツールが削除され、エージェントがすべての作業を自身で行います。この設定を変更すると即座に適用され、実行中のセッションにも再起動なしで反映されます。

| 値 | 動作 |
| - | - |
| `true` | エージェントはサブエージェントを起動できます (デフォルト) |
| `false` | このユーザーではサブエージェントが無効になります |

<Note>
  組織のポリシーが優先されます。管理者が **Default subagent model** 設定で組織のサブエージェントを無効にしている場合、この設定にかかわらずサブエージェントは無効のままです。
</Note>

<div id="keymap" />

<h3 id="keymap-user-only">
  keymap <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

CLI に組み込まれている[キーボード ショートカット](/ja/cli/reference/keyboard-shortcuts)を上書きします。このセクションは、前提情報 (`global`、`editor`、`input`、`list`、…) ごとにアクション名と、それをトリガーするキーを対応付ける表です。記載しないアクションには、組み込みのデフォルトが適用されます。

```json theme={null}
{
  "keymap": {
    "global": {
      "clear_screen": "ctrl-shift-k",
      "history_search": ["ctrl-r", "f3"]
    },
    "editor": {
      "beginning_of_line": "home"
    }
  }
}
```

| 値 | 意味 |
| - | - |
| `"ctrl-shift-k"` | アクションにバインドされた単一のキー仕様 |
| `["ctrl-r", "f3"]` | いずれかでアクションをトリガーする複数のキー仕様 |
| `[]` | アクションのバインドを解除する |

キー仕様は、修飾キー (`ctrl`、`alt`、`shift`) を `-` で区切って並べ、その後に1つのキー名 (文字、または `enter`、`esc`、`tab`、`home`、`page-up`、`f5` などの名前付きキー) を指定したものです。修飾キーの順序は問わず、マッチングでは大文字と小文字が区別されません。ただし、単一の大文字は Shift を押した状態のキーにバインドされます (`"K"` は `"shift-k"` と同じです) 。

<Tip>
  `/shortcuts` を実行すると、ここで使用するものと同じ `context.action` 識別子を含むすべてのアクションを確認し、対話形式で再バインドできます。そこで設定したバインドはこのセクションに保存されます。
</Tip>

<Note>
  `global.cancel` (`Ctrl+C`) はバインド解除できないため、実行中のエージェントをいつでも中断できます。無効なエントリ、不明な前提情報やアクション、同じ前提情報内の別のショートカットと競合するオーバーライドは起動時に報告され、組み込みのデフォルトに戻されます。
</Note>

<h3 id="auto_update-user-only">
  auto\_update <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

macOS と Linux でバックグラウンド自動更新を制御します。有効にすると、Devin CLI の実行中に新しいリリースがダウンロードされて有効化されるため、次回 `devin` を起動した際に自動的に最新バージョンが利用されます。現在実行中のセッションには影響ありません。`current` シンボリックリンクの切り替えが反映されるのは、次回の起動時のみです。

この更新は、中断が発生しても安全なように設計されています。ファイルシステム上の各ステップは一時パスで準備してから、アトミックなリネームで切り替えます。また、同時に実行される更新処理はファイルロックによって直列化されます。更新の途中で終了しても、インストールが壊れた状態になることはありません。再起動後は以前のバージョンがそのまま利用されるだけです。

自身で管理するインストールにのみ適用されます (macOS/Linux での `curl | bash`) 。別の製品に同梱されたインストール (例: Windsurf) ではこの設定は無視され、親アプリケーション経由で更新されます。

| Value | Behavior |
| - | - |
| `true` | バックグラウンドで新しいバージョンをダウンロードしてインストールします (デフォルト) |
| `false` | 新しいバージョンを確認するだけで、`/update` から手動でインストールします |

<h3 id="keymap-user-only-2">
  keymap <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

キーボード ショートカットを上書きします。上書きは前提情報とアクションで指定します。各ショートカットについて、`/shortcuts` に表示される `context.action` 識別子 (例: `editor.insert_newline`) を使用します。

```json theme={null}
{
  "keymap": {
    "global": {
      "clear_screen": "ctrl-shift-k",
      "history_search": ["ctrl-r", "f5"],
      "feedback_up": []
    },
    "editor": {
      "insert_newline": ["shift-enter", "alt-enter", "ctrl-j"]
    }
  }
}
```

| 値 | 動作 |
| - | - |
| `"<spec>"` | アクションを1つのキーにバインドする |
| `["<spec>", ...]` | アクションを複数のキーにバインドする (いずれのキーでもトリガーされる) |
| `[]` | アクションのバインドを解除する |

オーバーライドは、そのアクションの組み込みのデフォルト設定を完全に置き換えます。記載されていないアクションにはデフォルト設定が適用されます。`Ctrl+C` (キャンセル) はバインド解除できません。無効なエントリ (不明な名前、不正なキー仕様、型が正しくない値、または同じ前提情報内の別のバインドと競合するオーバーライド) は、起動時に警告として通知され、スキップされます。その他の設定は引き続き適用されます。

キー仕様は、`-`で区切られた0個以上の修飾キーと、それに続く1つのキー名で構成されます (例: `ctrl-shift-p`、`alt-enter`、`f5`、`K`) 。修飾キー: `ctrl`/`control`/`c`、`alt`/`meta`/`option`/`opt`/`m`、`shift`/`s`。名前付きキー: `enter`、`esc`、`tab`、`backspace`、`delete`、`insert`、`up`、`down`、`left`、`right`、`home`、`end`、`page-up`、`page-down`、`space`、`f1`–`f24`。それ以外の単一文字は、その文字キーにバインドされます (大文字と小文字は区別されます。`K`はShift+Kにバインドされます) 。マイナスキーには`-`を使用します (`ctrl--`) 。

対話的に再バインドすることもできます。`/shortcuts`でショートカット行を選択して`Enter`を押し、新しいキーを押します。変更はこの`keymap`セクションに保存されます。[キーバインドのカスタマイズ](/ja/cli/reference/keyboard-shortcuts#customizing-keybindings)を参照してください。

<h3 id="notify">
  notify
</h3>

エージェントの処理完了時や、ユーザー入力が必要なときのターミナル通知を制御します。CLI は BEL 文字 (ターミナルベル / ビジュアルベルをトリガー) 、OSC 9 エスケープシーケンス (iTerm2 および互換ターミナルでシステム通知をトリガー) 、および OSC 777 シーケンス (rxvt-unicode などのターミナルでデスクトップ通知) を書き込みます。これらのシーケンスを認識しないターミナルでは、安全に無視されます。

| Value | Behavior |
| - | - |
| `"never"` | 通知しない |
| `"smart"` | ターミナルウィンドウがフォーカスされていないときのみ通知する (OSC のフォーカスレポートを利用)  (デフォルト) |
| `"always"` | フォーカスに関係なく、該当するイベントごとに通知する |

<h3 id="read_config_from">
  read\_config\_from
</h3>

他の AI ツールの設定からのインポートを制御します。各オプションが読み取るソースファイルの詳細については、[Configuration Import](/ja/cli/reference/configuration/read-config-from) を参照してください。

| Option | Type | Default | Description |
| - | - | - | - |
| `agents_standard` | boolean/null | `true` | `AGENTS.md`、`AGENTS.local.md`、`AGENT.md`、`.windsurfrules` から標準的なプロジェクトルールをインポートします |
| `cursor` | boolean/null | `true` | Cursor の設定ファイルからルールと MCPサーバーをインポートします |
| `windsurf` | boolean/null | `true` | Windsurf からルール、スキル、MCPサーバーをインポートします |
| `claude` | boolean/null | `true` | Claude Code からルール、スキル、コマンド、MCPサーバーをインポートします |
| `copilot` | boolean/null | `true` | GitHub Copilot のプロジェクトおよびグローバルのスキルディレクトリからスキルをインポートします |
| `opencode` | boolean/null | `true` | OpenCode の設定ファイルから MCPサーバーをインポートします |
| `zed` | boolean/null | `true` | Zed の設定ファイルから MCPサーバーをインポートします |

特定のインポートを無効にするには `false` を設定します。`null` は `true` として扱われます。

<h3 id="proxy-user-only">
  proxy <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

CLI自身の外向きHTTP/HTTPSトラフィック (APIコール、アップデート、MCPサーバーなど) をどのようにルーティングするかを設定します。これはサンドボックスの子プロセスのネットワーク通信には影響しません (下記の `sandbox` を参照) 。

`mode` フィールドでプロキシ戦略を選択します:

| Mode | Behavior |
| - | - |
| `"system"` (デフォルト) | 環境変数 (`HTTP_PROXY`、`HTTPS_PROXY`、`ALL_PROXY`) と、macOSおよびWindowsのプラットフォームネイティブPAC (プロキシ自動構成) に従います |
| `"manual"` | すべてのCLIトラフィックを、明示的に指定した `url` 経由でルーティングします |
| `"off"` | 直接接続 — プロキシなし |

| Option | Type | Default | Description |
| - | - | - | - |
| `mode` | string | `"system"` | プロキシ戦略: `"system"`、`"manual"`、または `"off"` |
| `url` | string/null | `null` | プロキシURL。`mode` が `"manual"` の場合は必須です。`http://`、`https://`、`socks5://` スキームをサポートします |
| `no_proxy` | string/null | `null` | プロキシを経由しないホスト/ドメインのカンマ区切りリスト。`NO_PROXY` 環境変数と同じ構文を使用します (例: `"localhost,127.0.0.1,.corp.example.com"`) 。どのモードでも適用されます |

**例 — 社内プロキシ:**

```json theme={null}
{
  "proxy": {
    "mode": "manual",
    "url": "http://proxy.corp.example.com:8080",
    "no_proxy": "localhost,127.0.0.1,.internal.corp"
  }
}
```

**例 — プロキシを無効にする:**

```json theme={null}
{
  "proxy": {
    "mode": "off"
  }
}
```

<Note>
  管理者は、マシン全体に適用される[system configuration file](/ja/cli/enterprise/system-config) にも同じ `proxy` ブロックを設定できます。Enterprise設定が優先されるため、両方のファイルでプロキシを設定するとエラーになります。組織で管理している場合は、ユーザー設定から `proxy` セクションを削除してください。
</Note>

<div id="sandbox" />

<h3 id="sandbox-user-only">
  sandbox <span style={{fontSize: '0.7em', color: 'gray'}}>(ユーザーのみ)</span>
</h3>

<Warning>
  サンドボックス のネットワークフィルタリングは現在不安定です。この機能が必要な場合は、安定化の時期についてアカウント担当者にお問い合わせください。
</Warning>

サンドボックス のドメイン単位のネットワークフィルタリングを設定します。`--sandbox` がアクティブで、ドメインフィルタリングが設定されている場合、管理対象のネットワークプロキシがループバック上で起動し、サンドボックス はすべての子プロセスのトラフィックをそのプロキシ経由に制限します。

<Note>
  サンドボックス の仕組みの全体像 — Enterprise による強制適用や、Enterprise 設定とユーザー設定の相互作用を含む — については、[サンドボックス ドキュメント](/ja/cli/sandbox) を参照してください。
</Note>

`--sandbox` フラグは、書き込み可能なパスと `deny` ルールを OS レベルで強制適用します。書き込み可能なルートは、許可された `Write(...)` scope とワークスペースのディレクトリから決まります。それ以外は、`Read(...)` の拒否ルールで非表示にされたパスを除き、すべて読み取り可能です。セッション中に新たに付与された `Write(...)` scope は、後続のコマンドに対して サンドボックス を動的に拡張します。

<Note>
  `--sandbox` が指定されていても サンドボックス の解決に失敗した場合 (e.g.、現在のプラットフォームでサンドボックス化ツールを利用できない場合) 、CLI はサンドボックスなしで実行するのではなく起動を拒否します。このフェイルクローズの動作により、`--sandbox` のセキュリティ上の意図が気付かないうちに回避されることはありません。
</Note>

| オプション | 型 | デフォルト | 説明 |
| - | - | - | - |
| `allowed_domains` | string\[] | `[]` | プロキシ経由で許可するドメインパターン。空でない場合、一致するドメインのみを許可します (許可リスト モード) |
| `denied_domains` | string\[] | `[]` | 常にブロックするドメインパターン。拒否ルールは許可ルールより優先されます |
| `network_mode` | string | `"full"` | `"full"` はすべての HTTP メソッドを許可し、`"limited"` は GET/HEAD/OPTIONS のみを許可します |

**ドメインパターンの構文:**

| パターン | 一致対象 |
| - | - |
| `example.com` | 完全一致のみ |
| `*.example.com` | 任意のサブドメイン (ルートドメイン自体は除く) |
| `**.example.com` | ルートドメインおよび任意のサブドメイン |

**例:**

```json theme={null}
{
  "sandbox": {
    "allowed_domains": [
      "github.com",
      "**.npmjs.org",
      "**.crates.io",
      "**.pypi.org"
    ],
    "denied_domains": ["evil.example.com"],
    "network_mode": "full"
  }
}
```

<Note>
  ドメインフィルタリングは、サンドボックス がアクティブな場合 (`--sandbox`) に適用されます。`--sandbox` を指定しない場合、サンドボックス のセクションは無視されます。
</Note>

<Note>
  Enterprise Team では、管理者は [チーム設定](/ja/cli/enterprise/team-settings#sandbox-enforcement) からドメインリストを上書きできます。Enterprise の許可リストが基準となるため、ローカルの `allowed_domains` は置き換えられます。一方、Enterprise の拒否リストは追加式で、ローカルの `denied_domains` にマージされます。
</Note>

***

<h2 id="json-with-comments">
  コメント付き JSON
</h2>

設定ファイルでは、JavaScript 形式のコメントをサポートしています。

```json theme={null}
{
  // 行コメント
  "agent": {
    "model": "sonnet"  // インラインコメント
  },
  /* ブロック
     コメント */
  "permissions": {}
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.