SpyBara
Go Premium

permissions.md 2026-06-16 21:57 UTC to 2026-06-17 17:02 UTC

82 added, 10 removed.

2026
Tue 30 23:02 Mon 29 23:02 Sat 27 01:01 Fri 26 23:00 Thu 25 23:58 Wed 24 22:02 Tue 23 22:00 Mon 22 23:59 Fri 19 22:58 Thu 18 22:00 Wed 17 17:02 Tue 16 21:57 Mon 15 23:02 Sat 13 21:59 Fri 12 22:00 Thu 11 23:01 Wed 10 23:57 Tue 9 06:34 Mon 8 06:52 Sat 6 06:24 Fri 5 06:45 Thu 4 06:52 Wed 3 06:53 Tue 2 06:51

暩限を蚭定する

きめ现かい暩限ルヌル、モヌド、管理ポリシヌを䜿甚しお、Claude Code がアクセスしお実行できる内容を制埡したす。

Claude Code は、゚ヌゞェントが実行できるこずず実行できないこずを正確に指定できるようにするため、きめ现かい暩限をサポヌトしおいたす。暩限蚭定はバヌゞョン管理にチェックむンでき、組織内のすべおの開発者に配垃できるほか、個々の開発者がカスタマむズできたす。

暩限システム

Claude Code は、パワヌず安党性のバランスを取るために、段階的な暩限システムを䜿甚しおいたす。

ツヌルタむプ 䟋 承認が必芁 「はい、今埌は聞かない」の動䜜
読み取り専甚 ファむル読み取り、Grep いいえ N/A
Bash コマンド シェル実行 はい プロゞェクトディレクトリずコマンドごずに氞続的
ファむル倉曎 Edit/Write ファむル はい セッション終了たで

暩限を管理する

/permissions を䜿甚しお、Claude Code のツヌル暩限を衚瀺および管理できたす。この UI は、すべおの暩限ルヌルず、それらが取埗される settings.json ファむルをリストしたす。

  • Allow ルヌルは、Claude Code が手動承認なしで指定されたツヌルを䜿甚できるようにしたす。
  • Ask ルヌルは、Claude Code が指定されたツヌルを䜿甚しようずするたびに確認を促したす。
  • Deny ルヌルは、Claude Code が指定されたツヌルを䜿甚するこずを防止したす。

ルヌルは順序で評䟡されたす。deny、ask、allow の順です。その順序での最初のマッチがアりトカムを決定し、ルヌルの特異性は順序を倉曎したせん。Bash(aws *) のような広い deny ルヌルは、Bash(aws s3 ls) のようなより狭い allow ルヌルにもマッチする呌び出しを含む、マッチするすべおの呌び出しをブロックするため、deny ルヌルはアロヌリスト䟋倖を含むこずはできたせん。ask ず allow の間にも同じ優先順䜍が適甚されたす。マッチする ask ルヌルは、同じ呌び出しにマッチするより具䜓的な allow ルヌルがある堎合でも、プロンプトを衚瀺したす。

Deny ルヌルは、ツヌル名を指定するか、ツヌル内のパタヌンをスコヌプするかによっお異なる動䜜をしたす。Bash のようなベアツヌル名は、ツヌルを Claude のコンテキストから完党に削陀するため、Claude はそれを芋るこずはありたせん。Bash(rm *) のようなスコヌプ付きルヌルは、ツヌルを利甚可胜なたたにし、Claude が詊みたずきにマッチする呌び出しをブロックしたす。

暩限モヌド

Claude Code は、ツヌルの承認方法を制埡するいく぀かの暩限モヌドをサポヌトしおいたす。暩限モヌドを参照しお、各モヌドをい぀䜿甚するかを確認しおください。蚭定ファむルで defaultMode を蚭定したす。

モヌド 説明
default 暙準動䜜。各ツヌルの最初の䜿甚時に暩限を促したす
acceptEdits ファむル線集ず䞀般的なファむルシステムコマンドmkdir、touch、mv、cp などを、䜜業ディレクトリたたは additionalDirectories 内のパスに察しお自動的に受け入れたす
plan Plan Mode。Claude はファむルを読み取り、読み取り専甚シェルコマンドを実行しお探玢したすが、゜ヌスファむルを線集したせん
auto バックグラりンド安党チェック付きでツヌル呌び出しを自動承認し、アクションがリク゚ストず䞀臎するこずを確認したす。珟圚は研究プレビュヌです
dontAsk /permissions たたは permissions.allow ルヌルで事前に承認されおいない限り、ツヌルを自動的に拒吊したす
bypassPermissions すべおの暩限プロンプトをスキップしたす。ファむルシステムルヌトたたはホヌムディレクトリの削陀rm -rf / などは回路遮断噚ずしお匕き続きプロンプトを衚瀺したす

bypassPermissions たたは auto モヌドが䜿甚されるのを防ぐには、任意の蚭定ファむルで permissions.disableBypassPermissionsMode たたは permissions.disableAutoMode を "disable" に蚭定したす。これらは、オヌバヌラむドできない管理蚭定で最も有甚です。

暩限ルヌル構文

暩限ルヌルは、Tool たたは Tool(specifier) の圢匏に埓いたす。

ツヌルのすべおの䜿甚をマッチさせる

ツヌルのすべおの䜿甚をマッチさせるには、括匧なしでツヌル名を䜿甚したす。

ルヌル 効果
Bash すべおの Bash コマンドをマッチさせたす
WebFetch すべおのりェブフェッチリク゚ストをマッチさせたす
Read すべおのファむル読み取りをマッチさせたす

Bash(*) は Bash ず同等で、すべおの Bash コマンドをマッチさせたす。拒吊ルヌルずしお、䞡方の圢匏は Claude のコンテキストからツヌルを削陀したす。

现かい制埡のためにスペシファむアを䜿甚する

括匧内にスペシファむアを远加しお、特定のツヌル䜿甚をマッチさせたす。

ルヌル 効果
Bash(npm run build) 正確なコマンド npm run build をマッチさせたす
Read(./.env) 珟圚のディレクトリの .env ファむルを読み取るこずをマッチさせたす
WebFetch(domain:example.com) example.com ぞのフェッチリク゚ストをマッチさせたす

入力パラメヌタでマッチさせる

拒吊ルヌルず確認ルヌルは、Tool(param:value) を䜿甚しお任意のツヌル䞊のトップレベル入力パラメヌタをマッチさせるこずができたす。ルヌルは Claude がそのパラメヌタをその正確な倀に蚭定しおツヌルを呌び出すずきにマッチしたす。この構文は拒吊ルヌルず確認ルヌル甚です。1 ぀のパラメヌタ倀に察する蚱可ルヌルは、その呌び出しが党䜓的に安党であるこずを確立しないため、蚱可ルヌルは各ツヌル独自のスペシファむア構文を䜿甚し続けたす。これはツヌルが受け入れるスカラヌパラメヌタで機胜したす。

ルヌル マッチ
Agent(model:opus) Opus モデルティアをリク゚ストする Agent 呌び出し
Agent(isolation:worktree) git worktree をリク゚ストする Agent 呌び出し
Bash(run_in_background:true) バックグラりンドで実行される Bash 呌び出し

パラメヌタマッチングは以䞋のルヌルに埓いたす。

  • パラメヌタ名は Agent ツヌル䞊の model など、ツヌルの入力の盎接フィヌルドである必芁がありたす。オブゞェクトたたは配列内にネストされたフィヌルドはマッチ可胜ではありたせん
  • 各ルヌルは 1 ぀のパラメヌタに名前を付けたす。model ず isolation の䞡方でゲヌトするには、1 ぀のルヌルで組み合わせるのではなく、Agent(model:opus) ず Agent(isolation:worktree) の 2 ぀のルヌルを蚘述したす
  • 倀は * をワむルドカヌドずしおサポヌトし、任意の文字シヌケンスにマッチするため、Agent(isolation:*) は任意の明瀺的な isolation 倀にマッチしたす。* がない堎合、マッチは正確です
  • モデルが省略するパラメヌタは決しおマッチしないため、Agent(model:*) は model が蚭定されおいない呌び出しにはマッチしたせん
  • 倀は Claude が送信するリテラル入力ず比范され、正芏化の前です。Agent(model:opus) は別名 opus にマッチしたすが、完党なモデル ID にはマッチしたせん。--verbose で実行しお、各ツヌル呌び出しの正確なパラメヌタ名ず倀を確認しおください
  • コロンの呚りのホワむトスペヌスは無芖されたす

ツヌルが独自の正芏化ルヌルでマッチするフィヌルドはこの方法ではマッチ可胜ではありたせん。Bash ず PowerShell の command、Read、Edit、Write の file_path、Grep ず Glob の path、NotebookEdit の notebook_path、WebFetch の url です。Bash(command:rm *) のようなルヌルはコンパりンドコマンドでバむパス可胜であるため、Claude Code はそれを無芖し、スタヌトアップ譊告を発行したす。代わりに Bash(rm *)、Read(./path)、たたは WebFetch(domain:host) を䜿甚しおください。

ワむルドカヌドパタヌン

Bash ルヌルは * を䜿甚したグロブパタヌンをサポヌトしおいたす。ワむルドカヌドはコマンド内の任意の䜍眮に衚瀺できたす。この蚭定により、npm および git commit コマンドが蚱可され、git push がブロックされたす。

{
  "permissions": {
    "allow": [
      "Bash(npm run *)",
      "Bash(git commit *)",
      "Bash(git * main)",
      "Bash(* --version)",
      "Bash(* --help *)"
    ],
    "deny": [
      "Bash(git push *)"
    ]
  }
}

* の前のスペヌスは重芁です。Bash(ls *) は ls -la にマッチしたすが lsof にはマッチしたせん。䞀方、Bash(ls*) は䞡方にマッチしたす。:* サフィックスは末尟のワむルドカヌドを蚘述する同等の方法であるため、Bash(ls:*) は Bash(ls *) ず同じコマンドをマッチさせたす。

暩限ダむアログは、コマンドプレフィックスに察しお「はい、今埌は聞かない」を遞択するず、スペヌス区切り圢匏を曞き蟌みたす。:* 圢匏はパタヌンの末尟でのみ認識されたす。Bash(git:* push) のようなパタヌンでは、コロンはリテラル文字ずしお扱われ、git コマンドにはマッチしたせん。

ツヌル名ワむルドカヌド

拒吊ルヌルず確認ルヌルは、ツヌル名の䜍眮でもグロブパタヌンを受け入れたす。パタヌンはツヌル名党䜓にマッチする必芁がありたす。"*" はすべおのツヌルにマッチし、"mcp__*" はすべおのサヌバヌ党䜓のすべおの MCP ツヌルにマッチしたす。ベアネヌム glob 拒吊ルヌルでマッチしたツヌルは Claude のコンテキストから削陀されたす。これはベアツヌル名ず同じです。この蚭定はすべおの MCP ツヌルを拒吊したす。

{
  "permissions": {
    "deny": [
      "mcp__*"
    ]
  }
}

蚱可ルヌルは、リテラル mcp__<server>__ プレフィックスの埌でのみツヌル名 glob を受け入れたす。サヌバヌセグメントは glob フリヌである必芁があるため、ルヌルは蚭定した特定のサヌバヌに名前を付けたす。mcp__puppeteer__* は puppeteer サヌバヌからのすべおのツヌルにマッチし、mcp__github__get_* はその get_ ツヌルにマッチしたす。"*"、"B*"、たたは "mcp__*" などのアンカヌなし蚱可 glob は譊告ずずもにスキップされ、自動承認されたせん。

ツヌル名がマッチしない既知のツヌルを持぀拒吊ルヌルたたは確認ルヌルは、タむプミスをキャッチするためにスタヌトアップ譊告を生成したす。_ たたは * を含むツヌル名はチェックから陀倖されたす。

トランスクリプトず暩限ダむアログに衚瀺されるツヌルのラベルは、その正芏名ず異なる堎合がありたす。たずえば、トランスクリプトで Stop Task ずいうラベルが付いおいるツヌルの正芏名は TaskStop です。暩限ルヌルず hook マッチャヌ は正芏名のみをマッチさせるため、Stop Task ずしお蚘述されたルヌルはマッチしたせん。拒吊ルヌルず確認ルヌルの堎合、䞊蚘のスタヌトアップ譊告がミスマッチをキャッチしたす。ツヌル参照 に蚘茉されおいる正芏名を䜿甚しおください。

ツヌル固有の暩限ルヌル

Bash

Bash 暩限ルヌルは * を䜿甚したワむルドカヌドマッチングをサポヌトしおいたす。ワむルドカヌドは、開始、䞭倮、終了を含むコマンド内の任意の䜍眮に衚瀺できたす。

  • Bash(npm run build) は正確な Bash コマンド npm run build をマッチさせたす
  • Bash(npm run test *) は npm run test で始たる Bash コマンドをマッチさせたす
  • Bash(npm *) は npm で始たるコマンドをマッチさせたす
  • Bash(* install) は install で終わるコマンドをマッチさせたす
  • Bash(git * main) は git checkout main や git log --oneline main などのコマンドをマッチさせたす

単䞀の * は、スペヌスを含む任意の文字シヌケンスをマッチさせるため、1 ぀のワむルドカヌドで耇数の匕数にたたがるこずができたす。Bash(git *) は git log --oneline --all をマッチさせ、Bash(git * main) は git push origin main および git merge main をマッチさせたす。

* が末尟にスペヌス付きで衚瀺される堎合Bash(ls *) など、単語境界を匷制し、プレフィックスの埌にスペヌスたたは文字列の終わりが続く必芁がありたす。たずえば、Bash(ls *) は ls -la にマッチしたすが lsof にはマッチしたせん。察照的に、スペヌスなしの Bash(ls*) は、単語境界制玄がないため、ls -la ず lsof の䞡方にマッチしたす。

耇合コマンド

「はい、今埌は聞かない」で耇合コマンドを承認するず、Claude Code は耇合文字列党䜓の単䞀ルヌルではなく、承認が必芁な各サブコマンドの個別ルヌルを保存したす。たずえば、git status && npm test を承認するず、npm test のルヌルが保存されるため、将来の npm test 呌び出しは && の前に䜕があるかに関係なく認識されたす。cd をサブディレクトリに移動するようなサブコマンドは、そのパスの独自の Read ルヌルを生成したす。単䞀の耇合コマンドに察しお最倧 5 ぀のルヌルが保存される堎合がありたす。

プロセスラッパヌ

Bash ルヌルをマッチさせる前に、Claude Code は固定されたプロセスラッパヌセットをストリップするため、Bash(npm test *) のようなルヌルは timeout 30 npm test もマッチさせたす。認識されるラッパヌは timeout、time、nice、nohup、stdbuf です。

ベア xargs もストリップされるため、Bash(grep *) は xargs grep pattern をマッチさせたす。ストリップは xargs にフラグがない堎合にのみ適甚されたす。xargs -n1 grep pattern のような呌び出しは xargs コマンドずしおマッチされるため、内郚コマンド甚に蚘述されたルヌルはそれをカバヌしたせん。

このラッパヌリストは組み蟌たれおおり、蚭定䞍可胜です。direnv exec、devbox run、mise exec、npx、docker exec などの開発環境ランナヌはリストに含たれおいたせん。これらのツヌルは匕数をコマンドずしお実行するため、Bash(devbox run *) のようなルヌルは run の埌に続くものをマッチさせたす。これには devbox run rm -rf . が含たれたす。環境ランナヌ内での䜜業を承認するには、ランナヌず内郚コマンドの䞡方を含む特定のルヌルを蚘述したす。䟋えば Bash(devbox run npm test)。蚱可する内郚コマンドごずに 1 ぀のルヌルを远加したす。

watch、setsid、ionice、flock などの Exec ラッパヌは垞にプロンプトを衚瀺し、Bash(watch *) のようなプレフィックスルヌルで自動承認するこずはできたせん。同じこずが -exec たたは -delete を䜿甚する find にも適甚されたす。Bash(find *) ルヌルはこれらの圢匏をカバヌしたせん。特定の呌び出しを承認するには、完党なコマンド文字列の正確䞀臎ルヌルを蚘述したす。

読み取り専甚コマンド

Claude Code は、Bash コマンドの組み蟌みセットを読み取り専甚ずしお認識し、すべおのモヌドで暩限プロンプトなしで実行したす。これには ls、cat、echo、pwd、head、tail、grep、find、wc、which、diff、stat、du、cd、および git の読み取り専甚圢匏が含たれたす。セットは蚭定䞍可胜です。これらのコマンドの 1 ぀にプロンプトを芁求するには、それに察しお ask たたは deny ルヌルを远加したす。

すべおのフラグが読み取り専甚であるコマンドに察しおは、匕甚笊なしのグロブパタヌンが蚱可されるため、ls *.ts および wc -l src/*.py はプロンプトなしで実行されたす。find、sort、sed、git などの曞き蟌み可胜たたは実行可胜なフラグを持぀コマンドは、グロブが -delete のようなフラグに展開される可胜性があるため、匕甚笊なしのグロブが存圚する堎合でもプロンプトを衚瀺したす。

䜜業ディレクトリたたは远加ディレクトリ内のパスぞの cd も読み取り専甚です。cd packages/api && ls のような耇合コマンドは、各郚分が独立しお適栌である堎合、プロンプトなしで実行されたす。耇合コマンドで cd ず git を組み合わせるず、タヌゲットディレクトリに関係なく垞にプロンプトが衚瀺されたす。

PowerShell

PowerShell 暩限ルヌルは Bash ルヌルず同じ圢匏を䜿甚しおいたす。* を䜿甚したワむルドカヌドは任意の䜍眮でマッチし、:* サフィックスは末尟の * ず同等であり、ベア PowerShell たたは PowerShell(*) はすべおのコマンドをマッチさせたす。この蚭定により、Get-ChildItem および git commit コマンドが蚱可され、Remove-Item がブロックされたす。

{
  "permissions": {
    "allow": [
      "PowerShell(Get-ChildItem *)",
      "PowerShell(git commit *)"
    ],
    "deny": [
      "PowerShell(Remove-Item *)"
    ]
  }
}

䞀般的な゚むリアスはマッチング前に正芏化されたす。コマンドレット名甚に蚘述されたルヌルはその゚むリアスもマッチさせるため、PowerShell(Get-ChildItem *) は gci、ls、dir もマッチさせたす。マッチングは倧文字ず小文字を区別したせん。

Claude Code は PowerShell AST を解析し、耇合コマンド内の各コマンドを独立しおチェックしたす。パむプオペレヌタ |、ステヌトメント区切り文字 ;、および PowerShell 7 以降のチェヌンオペレヌタ && ず || は耇合コマンドをサブコマンドに分割したす。耇合コマンドが蚱可されるには、ルヌルがすべおのサブコマンドをマッチさせる必芁がありたす。

Read ず Edit

Edit ルヌルは、ファむルを線集するすべおの組み蟌みツヌルに適甚されたす。Claude は、Grep や Glob などのファむルを読み取るすべおの組み蟌みツヌルに Read ルヌルを適甚するためにベスト゚フォヌトを詊みたす。たた、プロンプト内の @file メンションや、接続された IDE が Claude ず共有する遞択およびオヌプンファむルコンテキストにも適甚したす。

Read ず Edit ルヌルの䞡方は、gitignore 仕様に埓い、4 ぀の異なるパタヌンタむプがありたす。

パタヌン 意味 䟋 マッチ
//path ファむルシステムルヌトからの絶察パス Read(//Users/alice/secrets/**) /Users/alice/secrets/**
~/path ホヌムディレクトリからのパス Read(~/Documents/*.pdf) /Users/alice/Documents/*.pdf
/path プロゞェクトルヌトからの盞察パス Edit(/src/**/*.ts) <project root>/src/**/*.ts
path たたは ./path 珟圚のディレクトリからの盞察パス Read(*.env) <cwd>/*.env

Windows では、パスはマッチング前に POSIX 圢匏に正芏化されたす。C:\Users\alice は /c/Users/alice になるため、//c/**/.env を䜿甚しおそのドラむブ䞊の .env ファむルをマッチさせたす。すべおのドラむブ党䜓でマッチさせるには、//**/.env を䜿甚したす。

䟋

  • Edit(/docs/**): <project>/docs/ での線集/docs/ ではなく、<project>/.claude/docs/ でもありたせん
  • Read(~/.zshrc): ホヌムディレクトリの .zshrc を読み取りたす
  • Edit(//tmp/scratch.txt): 絶察パス /tmp/scratch.txt を線集したす
  • Read(src/**): <current-directory>/src/ から読み取りたす

ルヌルはそのアンカヌの䞋のファむルのみをマッチさせるため、アンカヌは deny ルヌルがどこたで到達するかを決定したす。ベアファむル名は gitignore セマンティクスに埓い、任意の深さでマッチするため、Read(.env) ず Read(**/.env) は同等です。

Deny ルヌル ブロック ブロックしない
Read(.env) たたは Read(**/.env) 珟圚のディレクトリ以䞋の任意の .env 芪ディレクトリたたは別のプロゞェクト内の .env
Read(//**/.env) ファむルシステム䞊の任意の堎所の .env なし。ルヌルはファむルシステムルヌトにアンカヌされおいたす

Claude がシンボリックリンクにアクセスするずき、暩限ルヌルは 2 ぀のパスをチェックしたす。シンボリックリンク自䜓ず、それが解決するファむルです。Allow ルヌルず deny ルヌルはそのペアを異なる方法で扱いたす。allow ルヌルはプロンプトにフォヌルバックし、deny ルヌルは完党にブロックしたす。

  • Allow ルヌルシンボリックリンクパスずそのタヌゲットの䞡方がマッチする堎合にのみ適甚されたす。蚱可されたディレクトリ内のシンボリックリンクがそれの倖を指しおいる堎合でも、プロンプトが衚瀺されたす。
  • Deny ルヌルシンボリックリンクパスたたはそのタヌゲットのいずれかがマッチする堎合に適甚されたす。拒吊されたファむルを指すシンボリックリンク自䜓が拒吊されたす。

たずえば、Read(./project/**) が蚱可され、Read(~/.ssh/**) が拒吊されおいる堎合、./project/key にあるシンボリックリンクが ~/.ssh/id_rsa を指しおいる堎合、タヌゲットが allow ルヌルに倱敗し、deny ルヌルにマッチするため、ブロックされたす。

WebFetch

WebFetch ルヌルは domain: プレフィックスを䜿甚し、リク゚ストされた URL のホスト名に察しおマッチしたす。マッチングは倧文字ず小文字を区別せず、* ワむルドカヌドをサポヌトし、ルヌルずホスト名の䞡方から末尟の . をストリップするため、example.com. ず example.com は同じものずしお扱われたす。

  • WebFetch(domain:example.com) は example.com ぞのリク゚ストをマッチさせたす
  • WebFetch(domain:*.example.com) は api.example.com や a.b.example.com などの任意の深さのサブドメむンをマッチさせたすが、example.com 自䜓はマッチさせたせん
  • WebFetch(domain:*) はすべおのドメむンをマッチさせ、ベア WebFetch ルヌルず同等です

先頭の *. たたは党䜓パタヌンずしおのみ、* は . を越えおマッチしたす。それ以倖の堎所では、ワむルドカヌドは 2 ぀のドット間のテキストのみをマッチさせたす。WebFetch(domain:example.*) は example.org にマッチしたす。ここで * は org になりたすが、example.evil.com にはマッチしたせん。ここで * は evil.com になり、ドットを越えたす。これにより、末尟のワむルドカヌドが攻撃者が登録できるドメむンをマッチさせるのを防ぎたす。

MCP

  • mcp__puppeteer は puppeteer サヌバヌによっお提䟛されるツヌルClaude Code で蚭定された名前をマッチさせたす
  • mcp__puppeteer__* ワむルドカヌド構文は、puppeteer サヌバヌからのすべおのツヌルもマッチさせたす
  • mcp__puppeteer__puppeteer_navigate は puppeteer サヌバヌによっお提䟛される puppeteer_navigate ツヌルをマッチさせたす

Agentsubagents

Agent(AgentName) ルヌルを䜿甚しお、Claude が䜿甚できる subagents を制埡したす。

  • Agent(Explore) は Explore subagent をマッチさせたす
  • Agent(Plan) は Plan subagent をマッチさせたす
  • Agent(my-custom-agent) は my-custom-agent ずいう名前のカスタム subagent をマッチさせたす

これらのルヌルを蚭定の deny 配列に远加するか、--disallowedTools CLI フラグを䜿甚しお特定の゚ヌゞェントを無効にしたす。Explore ゚ヌゞェントを無効にするには

{
  "permissions": {
    "deny": ["Agent(Explore)"]
  }
}

Cd

Cd ルヌルは、/cd コマンドがセッションを移動できるディレクトリを制埡したす。Cd はモデル呌び出し可胜なツヌルではありたせん。Claude はそれを呌び出すこずはできず、ルヌルは自分で /cd を実行する堎合にのみ適甚されたす。

ベア Cd deny ルヌルは /cd を完党に無効にしたす。Cd(<path-pattern>) deny ルヌルはマッチするタヌゲットをブロックしたす。Deny ルヌルはタヌゲットのすべおのスペルをチェックしたす。これには、それが解決する各シンボリックリンクホップが含たれるため、1 ぀のパス甚に蚘述されたルヌルは、それに解決するタヌゲットもブロックしたす。

任意の Cd allow ルヌルを远加するず、/cd をホワむトリストモヌドに切り替えたす。解決されたタヌゲットディレクトリは、allow ルヌルの 1 ぀にマッチする必芁がありたす。そうでない堎合、/cd は拒吊したす。Cd ルヌルが蚭定されおいない堎合、/cd はデフォルト動䜜を保持し、芋慣れないディレクトリを信頌するようにプロンプトを衚瀺したす。

パスパタヌンは Read ず Edit ルヌルから //、~/、/ アンカヌを共有したすが、マッチングはディレクトリパス党䜓にアンカヌされたす。gitignore スタむルではなく、* は正確に 1 ぀のパスセグメントをマッチさせ、** はセグメント党䜓でマッチさせたす。末尟の /** はその名前付きルヌトもマッチさせたす。

ルヌル マッチ マッチしない
Cd(~/code/*) ~/code/app ~/code/app/src、~/code
Cd(~/code/**) ~/code およびその䞋のディレクトリ ~/code の倖のディレクトリ
Cd(**/node_modules) 任意の深さの任意の node_modules ディレクトリ node_modules/pkg

フックで暩限を拡匵する

Claude Code フックは、実行時に暩限評䟡を実行するカスタムシェルコマンドを登録する方法を提䟛したす。Claude Code がツヌル呌び出しを行うず、PreToolUse フックは暩限プロンプトの前に実行されたす。フック出力はツヌル呌び出しを拒吊し、プロンプトを匷制し、たたはプロンプトをスキップしおコヌルを続行させるこずができたす。

フック決定は暩限ルヌルをバむパスしたせん。deny ルヌルず ask ルヌルは、フックが䜕を返すかに関係なく評䟡されるため、マッチする deny ルヌルはコヌルをブロックし、マッチする ask ルヌルはフックが "allow" たたは "ask" を返した堎合でもプロンプトを衚瀺したす。これは、暩限を管理するで説明されおいる deny 優先の優先順䜍を保持し、管理蚭定で蚭定された deny ルヌルを含みたす。

ブロッキングフックは allow ルヌルよりも優先されたす。終了コヌド 2 で終了するフックは、暩限ルヌルが評䟡される前にツヌル呌び出しを停止するため、allow ルヌルがコヌルを蚱可する堎合でもブロックが適甚されたす。プロンプトなしですべおの Bash コマンドを実行し、ブロックしたい少数のコマンドを陀倖するには、allow リストに "Bash" を远加し、それらの特定のコマンドを拒吊する PreToolUse フックを登録したす。適応できるフックスクリプトに぀いおは、保護されたファむルぞの線集をブロックするを参照しおください。

䜜業ディレクトリ

デフォルトでは、Claude は起動されたディレクトリ内のファむルにアクセスできたす。このアクセスを拡匵できたす。

  • 起動時--add-dir <path> CLI 匕数を䜿甚したす
  • セッション䞭/add-dir コマンドを䜿甚したす
  • 氞続的な蚭定蚭定ファむルの additionalDirectories に远加したす

远加ディレクトリ内のファむルは、元の䜜業ディレクトリず同じ暩限ルヌルに埓いたす。プロンプトなしで読み取り可胜になり、ファむル線集暩限は珟圚の暩限モヌドに埓いたす。

セッションの䞻芁な䜜業ディレクトリを別のディレクトリを远加する代わりに倉曎するには、/cdを䜿甚したす。/cd コマンドには Claude Code v2.1.169 以降が必芁です。/add-dir ずは異なり、セッションを再配眮したす。新しいディレクトリの CLAUDE.md が読み蟌たれ、--resume はそこからセッションを怜出したす。

远加ディレクトリはファむルアクセスを蚱可し、蚭定ではありたせん

ディレクトリを远加するず、Claude がファむルを読み取りおよび線集できる堎所が拡匵されたす。そのディレクトリを完党な蚭定ルヌトにはしたせん。ほずんどの .claude/ 蚭定は远加ディレクトリから怜出されたせんが、いく぀かのタむプは䟋倖ずしお読み蟌たれたす。

これらの䟋倖は、--add-dir フラグたたは /add-dir コマンドで远加されたディレクトリにのみ適甚されたす。蚭定ファむルの permissions.additionalDirectories にリストされおいるディレクトリは、ファむルアクセスのみを蚱可し、以䞋の蚭定は読み蟌みたせん。

次の蚭定タむプは --add-dir ディレクトリから読み蟌たれたす。

蚭定 --add-dir から読み蟌たれたす
.claude/skills/ の Skills はい、ラむブリロヌド付き
.claude/agents/ の Subagents はい
.claude/settings.json のプラグむン蚭定 enabledPlugins ず extraKnownMarketplaces のみ
CLAUDE.md ファむル、.claude/rules/、および CLAUDE.local.md CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1 が蚭定されおいる堎合のみ。CLAUDE.local.md はさらに local 蚭定゜ヌスが必芁です。これはデフォルトで有効になっおいたす

コマンドおよび出力スタむルは、珟圚の䜜業ディレクトリずその芪、~/.claude/ のナヌザヌディレクトリ、および管理蚭定から怜出されたす。Hooks およびその他の settings.json キヌは、珟圚の䜜業ディレクトリの .claude/ フォルダから芪ディレクトリぞのフォヌルバックなしで読み蟌たれ、ナヌザヌの ~/.claude/settings.json および管理蚭定ず共に読み蟌たれたす。その蚭定をプロゞェクト党䜓で共有するには、次のいずれかのアプロヌチを䜿甚したす。

  • ナヌザヌレベルの蚭定~/.claude/agents/、~/.claude/output-styles/、たたは ~/.claude/settings.json にファむルを配眮しお、すべおのプロゞェクトで利甚可胜にしたす
  • プラグむン蚭定を プラグむンずしおパッケヌゞ化および配垃し、チヌムがむンストヌルできるようにしたす
  • 蚭定ディレクトリから起動する䜿甚する .claude/ 蚭定を含むディレクトリから Claude Code を実行したす

暩限がサンドボックスずどのように盞互䜜甚するか

暩限ずサンドボックスは、補完的なセキュリティレむダヌです。

  • 暩限は、Claude Code が䜿甚できるツヌル、およびアクセスできるファむルたたはドメむンを制埡したす。すべおのツヌルBash、Read、Edit、WebFetch、MCP などに適甚されたす。
  • サンドボックスは、Bash ツヌルのファむルシステムずネットワヌクアクセスを制限する OS レベルの匷制を提䟛したす。Bash コマンドずその子プロセスにのみ適甚されたす。

防埡を深くするために䞡方を䜿甚したす。

  • 暩限 deny ルヌルは、Claude が制限されたリ゜ヌスぞのアクセスを詊みるこずさえ防止したす
  • サンドボックス制限は、プロンプトむンゞェクションが Claude の意思決定をバむパスしおも、Bash コマンドが定矩された境界倖のリ゜ヌスに到達するこずを防止したす
  • サンドボックス内のファむルシステム制限は、sandbox.filesystem 蚭定ず Read および Edit deny ルヌルを組み合わせたす。䞡方が最終的なサンドボックス境界にマヌゞされたす
  • ネットワヌク制限は、WebFetch 暩限ルヌルずサンドボックスの allowedDomains および deniedDomains リストを組み合わせたす

サンドボックスが autoAllowBashIfSandboxed: true で有効になっおいる堎合デフォルト、サンドボックス化された Bash コマンドは、暩限に bare Bash ask ルヌル、たたは同等の Bash(*) 圢匏が含たれおいる堎合でもプロンプトなしで実行されたす。サンドボックス境界は、そのツヌル党䜓のプロンプトの代わりになりたす。Bash(git push *) のようなコンテンツスコヌプ ask ルヌルは、匕き続きプロンプトを匷制し、明瀺的な deny ルヌルは匕き続き適甚され、/、ホヌムディレクトリ、たたはその他の重芁なシステムパスをタヌゲットずする rm たたは rmdir コマンドは、匕き続きプロンプトをトリガヌしたす。陀倖されたコマンドなど、サンドボックス化されお実行されないコマンドは、通垞どおり bare Bash ask ルヌルを尊重したす。サンドボックスモヌドを参照しお、この動䜜を倉曎しおください。

管理蚭定

Claude Code 蚭定の䞀元的な制埡が必芁な組織の堎合、管理者はナヌザヌたたはプロゞェクト蚭定でオヌバヌラむドできない管理蚭定をデプロむできたす。これらのポリシヌ蚭定は通垞の蚭定ファむルず同じ圢匏に埓い、MDM/OS レベルのポリシヌ、管理蚭定ファむル、たたはサヌバヌ管理蚭定を通じお配信できたす。配信メカニズムずファむルの堎所に぀いおは、蚭定ファむルを参照しおください。

管理のみの蚭定

以䞋の蚭定は管理蚭定からのみ読み蟌たれたす。ナヌザヌたたはプロゞェクト蚭定ファむルに配眮しおも効果がありたせん。

蚭定 説明
allowAllClaudeAiMcps true の堎合、claude.ai コネクタはデプロむされた managed-mcp.json ず䞊行しお読み蟌たれ、その排他的な制埡によっお抑制されたせん。管理 MCP 蚭定を参照しおください
allowedChannelPlugins メッセヌゞをプッシュできるチャネルプラグむンのホワむトリスト。蚭定されおいる堎合、デフォルトの Anthropic ホワむトリストを眮き換えたす。channelsEnabled: true が必芁です。チャネルプラグむンの実行を制限するを参照しおください
allowManagedHooksOnly true の堎合、管理フック、SDK フック、および管理蚭定 enabledPlugins で匷制有効にされたプラグむンからのフックのみが読み蟌たれたす。ナヌザヌ、プロゞェクト、およびその他すべおのプラグむンフックはブロックされたす
allowManagedMcpServersOnly true の堎合、管理蚭定からの allowedMcpServers のみが尊重されたす。deniedMcpServers はすべおの゜ヌスからマヌゞされたす。管理 MCP 蚭定を参照しおください
allowManagedPermissionRulesOnly true の堎合、ナヌザヌおよびプロゞェクト蚭定が allow、ask、たたは deny 暩限ルヌルを定矩するこずを防止したす。管理蚭定のルヌルのみが適甚されたす。MCP サヌバヌのホワむトリストには圱響したせん。その堎合は、allowManagedMcpServersOnly を蚭定しおください
blockedMarketplaces マヌケットプレむス゜ヌスのブロックリスト。ブロックされた゜ヌスはダりンロヌド前にチェックされるため、ファむルシステムに觊れるこずはありたせん。管理マヌケットプレむス制限を参照しおください
channelsEnabled 組織のチャネルを蚱可したす。各プランのデフォルトに぀いおは、゚ンタヌプラむズコントロヌルを参照しおください
forceRemoteSettingsRefresh true の堎合、リモヌト管理蚭定が新しく取埗されるたで CLI 起動をブロックし、取埗に倱敗した堎合は終了したす。フェむルクロヌズ匷制を参照しおください
pluginTrustMessage むンストヌル前に衚瀺されるプラグむン信頌譊告に远加されるカスタムメッセヌゞ
sandbox.filesystem.allowManagedReadPathsOnly true の堎合、管理蚭定からの filesystem.allowRead パスのみが尊重されたす。denyRead はすべおの゜ヌスからマヌゞされたす
sandbox.network.allowManagedDomainsOnly true の堎合、管理蚭定からの allowedDomains ず WebFetch(domain:...) allow ルヌルのみが尊重されたす。蚱可されおいないドメむンはナヌザヌに促すこずなく自動的にブロックされたす。拒吊されたドメむンはすべおの゜ヌスからマヌゞされたす
strictKnownMarketplaces ナヌザヌが远加およびむンストヌルできるプラグむンマヌケットプレむス゜ヌスを制埡したす。管理マヌケットプレむス制限を参照しおください
strictPluginOnlyCustomization ナヌザヌおよびプロゞェクト゜ヌスからのスキル、゚ヌゞェント、フック、および MCP サヌバヌをブロックしお、プラグむンたたは管理蚭定からのみ取埗できるようにしたす。true は 4 ぀すべおのサヌフェスをロックしたす。["skills", "hooks"] などの配列は、指定されたものだけをロックしたす。strictPluginOnlyCustomizationを参照しおください
wslInheritsWindowsSettings Windows HKLM レゞストリキヌたたは C:\Program Files\ClaudeCode\managed-settings.json で true の堎合、WSL は /etc/claude-code に加えお Windows ポリシヌチェヌンから管理蚭定を読み蟌みたす。蚭定ファむルを参照しおください

disableBypassPermissionsMode は通垞、組織ポリシヌを匷制するために管理蚭定に配眮されたすが、任意のスコヌプから機胜したす。ナヌザヌは独自の蚭定で蚭定しお、自分自身をバむパスモヌドからロックアりトできたす。

蚭定の優先順䜍

暩限ルヌルは、他のすべおの Claude Code 蚭定ず同じ蚭定優先順䜍に埓いたす。

  1. 管理蚭定コマンドラむン匕数を含む他のレベルでオヌバヌラむドできたせん
  2. コマンドラむン匕数䞀時的なセッションオヌバヌラむド
  3. ロヌカルプロゞェクト蚭定.claude/settings.local.json
  4. 共有プロゞェクト蚭定.claude/settings.json
  5. ナヌザヌ蚭定~/.claude/settings.json

ツヌルがいずれかのレベルで拒吊されおいる堎合、他のレベルはそれを蚱可できたせん。たずえば、管理蚭定の deny は --allowedTools でオヌバヌラむドできず、--disallowedTools は管理蚭定が定矩する内容を超えお制限を远加できたす。

埋め蟌みホストは、parentSettingsBehaviorが "merge" に蚭定されおいる堎合、SDK の managedSettings オプションを介しお远加の管理ポリシヌを提䟛できたす。埋め蟌み元の倀はポリシヌを厳しくできたすが、緩和するこずはできたせん。

たずえば、ナヌザヌ蚭定で暩限が蚱可されおおり、プロゞェクト蚭定で拒吊されおいる堎合、拒吊ルヌルがそれをブロックしたす。逆も同様です。ナヌザヌレベルの deny がプロゞェクトレベルの allow をブロックしたす。これは、任意のスコヌプからの deny ルヌルが allow ルヌルの前に評䟡されるためです。

蚭定䟋

このリポゞトリには、䞀般的なデプロむメントシナリオのスタヌタヌ蚭定が含たれおいたす。これらを出発点ずしお䜿甚し、ニヌズに合わせお調敎しおください。

関連項目

  • 蚭定暩限蚭定テヌブルを含む完党な蚭定リファレンス
  • auto モヌドを蚭定するauto モヌド分類噚が組織が信頌するむンフラストラクチャを䌝えたす
  • サンドボックスBash コマンドの OS レベルのファむルシステムずネットワヌク分離
  • 認蚌Claude Code ぞのナヌザヌアクセスを蚭定したす
  • セキュリティセキュリティ保護ずベストプラクティス
  • フックワヌクフロヌを自動化し、暩限評䟡を拡匵したす