権限システムでは、エージェントがあなたの承認なしに実行できる操作を制御します。安全な操作は事前に承認し、危険なものはブロックし、機密性の高い操作では常に確認を求めるようにできます。Documentation Index
Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt
Use this file to discover all available pages before exploring further.
デフォルトの権限の動作
| Tool type | Example | Normal | Accept Edits | Bypass | Autonomous (sandbox) |
|---|---|---|---|---|---|
| 読み取り専用 | ファイルの読み取り、grep、glob | No | No | No | No |
| Fetch | HTTP リクエスト | Yes | Yes | No | No |
| Bash コマンド | シェルの実行 | Yes | Yes | No | No |
edit/write によるファイル編集 | ファイルの編集/書き込み | Yes | No (ワークスペース内) | No | Yes |
edit/write ツールによる直接のファイル編集は、それらのツールがサンドボックスの外で動作するため、引き続き確認が表示されます。Autonomous は、OS レベルのサンドボックスがアクティブな場合にのみ利用できます。
Autonomous モード
--sandbox フラグと組み合わせて使う権限モードです。概念的には、これはおおむね「現在のワークスペースで編集を受け入れる」に、任意のシェルコマンドを実行する機能を加えたもので、どちらの動作も OS レベルのサンドボックス内に制限されます。サンドボックスがアクティブな場合:
- 利用できる権限モードはこれだけです。 サンドボックスのセッションでは、Normal、Accept Edits、Bypass は表示されません。Plan モードは引き続き利用できます。
- シェルコマンドとFetchは、確認なしで自動承認されます。 サンドボックスによって、それらが読み取り・書き込みできる範囲や、ネットワーク経由で到達できる範囲が制限されるためです。
editおよびwriteツールによるファイルの直接編集では、引き続き確認が求められます。 これらのツールはサンドボックス内ではなく CLI プロセス内で実行されるため、サンドボックスで制限できません。プロンプトでWrite(...)スコープを付与すると、以後のシェルコマンドがその場所に書き込めるよう、サンドボックスが動的に拡張されます。- セッションの途中で付与されたスコープによって、以後のコマンドに対するサンドボックスの範囲が動的に拡張されます。
--sandbox (Autonomous が選択されます) を利用してください。書き込み可能/読み取り可能なルートやドメインフィルタリングの詳細については サンドボックス設定リファレンス を、Enterprise 向けの制御については チーム設定 → サンドボックス強制 を参照してください。
権限 の仕組み
- Deny rules — 最初に確認されます。一致した場合、その操作はただちにブロックされます。
- Ask rules — 次に確認されます。一致した場合は、常に確認を求められます (allow ルールより優先されます) 。
- Allow rules — 最後に確認されます。一致した場合、その操作は確認なしで実行されます。
- Default — 一致するルールがない場合は、承認を求められます。
deny は ask より先に確認され、ask は allow より先に確認されるため、deny ルールが常に優先されます。同じスコープが deny ルールと ask ルールの両方に一致する場合は、deny が適用されます。
設定
permissions セクションに権限を追加します。
Windows では、ユーザー設定ファイルのパスは
~/.config/devin/config.json ではなく、%APPDATA%\devin\config.json (通常は C:\Users\<you>\AppData\Roaming\devin\config.json) です。詳しくは Configuration File を参照してください。- プロジェクト設定
- ユーザー設定
- ローカルオーバーライド
権限の構文
スコープベースの権限
Read(glob)
Read(glob)
ファイルの読み取り権限を制御します。glob パターンはファイルパスにマッチします。ディレクトリパスは、その配下のすべてのファイルに自動的にマッチします。
Write(glob)
Write(glob)
ファイルの書き込み/編集権限を制御します。
Exec(prefix)
Exec(prefix)
シェルコマンドの実行権限を制御します。指定したプレフィックスで始まるコマンドにマッチします。
Exec(git) は “git”、“git status”、“git commit -m ‘msg’” にはマッチしますが、“gitk” や “github-cli” にはマッチしません。プレフィックスは完全な単語として一致する必要があります。Fetch(pattern)
Fetch(pattern)
URL パターンを使って HTTP fetch 権限を制御します。URL パターンは WHATWG URL Pattern 標準に従います。
domain: の省略記法は、完全一致するドメイン上の任意のパスにマッチします。ツールベースの権限
read, edit, grep, glob, exec
MCP ツールの権限
| パターン | 一致対象 |
|---|---|
mcp__server__tool | 特定の1つのツール |
mcp__server__* | サーバー上のすべてのツール |
mcp__* | あらゆる場所のすべてのMCPツール |
パスパターン
Read() と Write() では、以下の glob パターンをサポートしています。
| Pattern | Meaning |
|---|---|
* | 1 つのパスセグメント内の任意の文字 |
** | パスセグメントをまたぐ任意の文字 (再帰的) |
~ | ホームディレクトリの展開 |
システム上のすべてのファイルを対象にしたい場合は、絶対パスのプレフィックス (例:
Read(/**)) を使用してください。先頭に / のない Read(**) は現在の作業ディレクトリからの相対パスとして解決されるため、そのディレクトリ配下のファイルにしか一致せず、他の場所にある絶対パス経由のファイルには一致しません。永続化オプション
| オプション | 保存場所 | チームで共有されるか |
|---|---|---|
| 1回のみ許可 | 保存されない | いいえ |
| セッション中のみ許可 | メモリ内のみ | いいえ |
| プロジェクト全体で許可 | .devin/config.json | はい |
| プロジェクト全体で許可 (ローカル) | .devin/config.local.json | いいえ |
| グローバルに許可 | ~/.config/devin/config.json (%APPDATA%\devin\config.json on Windows) | いいえ |
MCPサーバーレベルの権限付与
list_issues) の許可を求められた場合、権限プロンプトには、より広いサーバーレベルの選択肢も表示されます。
| Option | Effect |
|---|---|
| このツールを許可する (このセッション) | 現在のセッション中、その特定のツールへのアクセスを許可します |
| このツールを常に許可する | その特定のツールへの許可を設定に保存します |
| このサーバー上のすべてのツールを許可する (このセッション) | このセッション中、そのサーバー上のすべてのツールへのアクセスを許可します |
| このサーバー上のツールを常に許可する | サーバー全体へのアクセス許可を設定に保存します |
優先順位
- 組織/チームの設定 (Enterprise の場合)
- セッションレベルの付与 (対話的な承認)
- プロジェクトのローカル設定 (
.devin/config.local.json) - プロジェクト設定 (
.devin/config.json) - ユーザー設定 (
~/.config/devin/config.json、Windows では%APPDATA%\devin\config.json)
