デフォルトの権限の動作
Normal モード (デフォルト) では、読み取り専用の操作は自動承認されますが、書き込み操作とシェルコマンドの実行には明示的な承認が必要です。アクションを承認するたびに、1 回だけ許可するか、セッション中は許可するか、またはプロジェクトに対して永続的に許可するかを選択できます。
Accept Edits モードでは、ワークスペース内のファイル編集は自動承認されますが、シェルコマンドとワークスペース外への書き込みでは引き続き確認が表示されます。
Bypass モードでは、すべてのツール呼び出しが確認なしで自動承認されます。
Autonomous モードでは、OS レベルのサンドボックスによってアクセス可能な範囲が制限されるため、シェルコマンドとネットワークリクエストは自動承認されます。一方、
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 ツールの権限
パスパターン
Read() と Write() では、以下の glob パターンをサポートしています。
使用例:
システム上のすべてのファイルを対象にしたい場合は、絶対パスのプレフィックス (例:
Read(/**)) を使用してください。先頭に / のない Read(**) は現在の作業ディレクトリからの相対パスとして解決されるため、そのディレクトリ配下のファイルにしか一致せず、他の場所にある絶対パス経由のファイルには一致しません。永続化オプション
MCPサーバーレベルの権限付与
list_issues) の許可を求められた場合、権限プロンプトには、より広いサーバーレベルの選択肢も表示されます。
これにより、信頼できるMCPサーバーに対して、各ツールを個別に承認しなくても、まとめてすばやくアクセスを許可できます。
優先順位
- 組織/チームの設定 (Enterprise の場合)
- セッションレベルの付与 (対話的な承認)
- プロジェクトのローカル設定 (
.devin/config.local.json) - プロジェクト設定 (
.devin/config.json) - ユーザー設定 (
~/.config/devin/config.json、Windows では%APPDATA%\devin\config.json)

