settings.json

permissions.blockReadsOutsideWorkingDirectories

型boolean記述場所どの設定ファイルでも可

Read・Grep・Glob・LSP ツールでの、セッションの作業ディレクトリ外パスへの読み取りを、bypassPermissions を含むすべての権限モードでブロックします。

既定値: 未設定であり、その場合、作業ディレクトリ外の読み取りは権限モードとルールに従って動作します

記述例

{
  "permissions": {
    "blockReadsOutsideWorkingDirectories": true
  }
}

使い方・用途

  • 作業ディレクトリ外のファイル読み取りを Read・Grep・Glob・LSP ツールで禁止し、bypassPermissions を含むすべての権限モードで適用される。Bash コマンドが cat など認識対象のコマンドで該当パスを読む場合、自動モードや bypassPermissions モードでも確認プロンプトが表示される。デフォルトは未設定で、その場合は権限モードとルールに従う。 要 Claude Code v2.1.257 以降
  • macOS で有効化しても、サンドボックス内の git コマンドがユーザーの git config を参照でき、worktree 分離されたサブエージェントも自身のチェックアウトにアクセスできるよう修正済み
  • 自動モードでは、作業ディレクトリ外のファイル読み取り時に初回のみプロンプトが表示され、この設定でブロックすることも可能
英語原文(公式ドキュメントより)

Stop Claude from reading paths outside the session's [working directories](/docs/en/permissions#working-directories) with the Read, Grep, Glob, and LSP tools, in every permission mode including bypassPermissions. A Bash command that reads a matching path through a file command Claude Code recognizes, such as cat, prompts you even in auto mode and bypassPermissions mode. Requires Claude Code v2.1.257 or later.

関連ドキュメント

関連する変更履歴

v2.1.290(1件)

Fixed
permissions.blockReadsOutsideWorkingDirectories や Read の deny ルールが設定されている場合に、ワーキングディレクトリ外へシンボリックリンクされたプロジェクトの CLAUDE.md、ルールファイル、AGENTS.md が読み込まれる問題を修正しました。
英語原文を表示
Fixed a project CLAUDE.md, rule or AGENTS.md symlinked outside the working directories loading under permissions.blockReadsOutsideWorkingDirectories or a Read deny rule

変更前

ワーキングディレクトリ外へのシンボリックリンクであっても、これらの保護設定をすり抜けてファイルが読み込まれていました。

変更後

ワーキングディレクトリ外にシンボリックリンクされたプロジェクトの CLAUDE.md、ルールファイル、AGENTS.md が、permissions.blockReadsOutsideWorkingDirectories や Read の deny ルールが設定されていても読み込まれてしまう状態でした。

ユーザーへの恩恵

ワーキングディレクトリ外へのシンボリックリンクで参照されたメモリやルールファイルが権限設定に従って確実にブロックされるようになり、意図しないファイルの読み込みを防げる。

関連ドキュメント

v2.1.288(1件)

Fixed
permissions.blockReadsOutsideWorkingDirectories が有効な場合に、git config ファイルに対する sandbox.credentials.files エントリが適用されない問題を修正しました。
英語原文を表示
Fixed sandbox.credentials.files entries on git config files not taking effect while permissions.blockReadsOutsideWorkingDirectories is on

変更前

permissions.blockReadsOutsideWorkingDirectories が有効な場合、git config ファイルに対する sandbox.credentials.files のエントリが正しく適用されませんでした。その結果、ブロックが有効な環境でこれらのエントリが指定する認証情報ファイルのマスクや拒否などの動作が機能しませんでした。

変更後

permissions.blockReadsOutsideWorkingDirectories が有効な場合でも、git config ファイルに対する sandbox.credentials.files のエントリが正しく適用されるようになりました。

ユーザーへの恩恵

permissions.blockReadsOutsideWorkingDirectories を有効にしている環境でも、git config ファイルに設定した sandbox.credentials.files のエントリが正しく反映されるようになります。

関連ドキュメント

v2.1.281(1件)

Added
Claude apps gateway が、desktop ポリシーブロック内で Claude Desktop の新しいキー(clusterReadsOutsideWorkingDirectories や disableBypassPermissionsMode など)をサポートするようになった。
英語原文を表示
Added Claude apps gateway support for newer Claude Desktop keys in desktop policy blocks, including blockReadsOutsideWorkingDirectories and disableBypassPermissionsMode

変更前

Claude apps gateway は desktop ポリシーブロックをインストール済みバージョンにバンドルされたスキーマで検証するため、Claude Desktop の新バージョンで導入されたキーは未定義として扱われ、gateway が認識できなかった。そのため、管理ポリシー経由でこれらの新しい設定キーを配信することができなかった。

変更後

Claude apps gateway が、desktop ポリシーブロック内で Claude Desktop の新しいキーを認識・配信できるようになった。具体的には、作業ディレクトリ外の読み取りをブロックする blockReadsOutsideWorkingDirectories や、Bypass Permissions モードの無効化を制御する disableBypassPermissionsMode がスキーマに追加され、gateway の起動時バリデーションを通過してポリシーとして配信できる。

ユーザーへの恩恵

組織の管理者は、新しい Claude Desktop のキーを gateway の desktop ポリシーブロックに記述するだけで、メンバーの Claude Desktop に作業ディレクトリ外の読み取り制限や Bypass Permissions モードの無効化といった新しいポリシーを一元的に配信できるようになる。

v2.1.273(2件)

Fixed
permissions.blockReadsOutsideWorkingDirectories 有効時に、権限チェッカーが完全に解析できないBashコマンドがプロンプトをスキップする問題と、bypassモードでサブシェルが危険な rm コマンドを隠す問題を修正した。
英語原文を表示
Fixed Bash commands the permission checker cannot fully analyze skipping the prompt under permissions.blockReadsOutsideWorkingDirectories, and a subshell hiding a dangerous rm in bypass mode

変更前

権限チェッカーが完全に解析できないBashコマンドは permissions.blockReadsOutsideWorkingDirectories 有効時にプロンプトを表示せずに実行され、bypassモードではサブシェルで危険な rm コマンドを隠して検出を回避できた。

変更後

権限チェッカーが完全に解析できないBashコマンドが、permissions.blockReadsOutsideWorkingDirectories 有効時にプロンプトを表示せずに実行される問題と、bypassモードでサブシェルが危険な rm コマンドを隠して検出を回避できる問題が修正された。

ユーザーへの恩恵

ユーザーは解析困難なコマンドやサブシェル経由の危険なコマンドに対しても確実にプロンプトで確認できるようになり、意図しないファイル削除などのリスクを減らせる。

Fixed
MemoryPermission
permissions.blockReadsOutsideWorkingDirectories の不具合を修正: リポジトリの settings で選択されたメモリディレクトリが、プロンプトへの読み込み・recall・インデックス化・メモリ抽出に使われなくなった。
英語原文を表示
Fixed permissions.blockReadsOutsideWorkingDirectories: a memory directory chosen by a repository's settings is no longer loaded into the prompt, recalled, indexed, or used by memory extraction

変更前

permissions.blockReadsOutsideWorkingDirectories を設定しても、リポジトリの settings で選ばれたメモリディレクトリが working directory の外にあってもプロンプトに読み込まれ、recall・インデックス化・メモリ抽出に使われていた。

変更後

メモリディレクトリがプロンプトへ読み込まれず、recall・インデックス・メモリ抽出にも使われなくなった。

ユーザーへの恩恵

working directory 外からのメモリ読み込みをブロックできるようになり、意図しないコンテキスト混入を防げる。

関連ドキュメント

v2.1.271(1件)

Fixed
bypass モードおよび auto モードで、permissions.blockReadsOutsideWorkingDirectories が有効な場合に、2つのディレクトリ移動やサブシェル、cd と git の連鎖を含む Bash コマンドが確認プロンプトをスキップする問題を修正した。
英語原文を表示
Fixed Bash commands with two directory changes, a subshell, or a cd+git chain skipping the prompt under permissions.blockReadsOutsideWorkingDirectories in bypass and auto mode

変更前

bypass モードと auto モードでは、permissions.blockReadsOutsideWorkingDirectories が有効でも、作業ディレクトリ内で2つのディレクトリ移動(例: cd dir1 && cd dir2 && cat file)を含む Bash コマンドや、サブシェル(例: (cd /tmp && cat file))、cd と git の連鎖(例: cd /etc && git status)を含むコマンドは、作業ディレクトリ外への読み取りを含んでいてもプロンプトが表示されずに実行されていました。

変更後

bypass モードと auto モードでは、2つのディレクトリ移動を含む Bash コマンドや、サブシェル、cd と git の連鎖を含むコマンドでも、permissions.blockReadsOutsideWorkingDirectories が有効な場合に作業ディレクトリ外への読み取りについて確認プロンプトが表示されるようになりました。

ユーザーへの恩恵

ユーザーは複雑な構造の Bash コマンドであっても、作業ディレクトリ外への読み取りが見逃されることなく、常に確認できるようになった。

v2.1.260(1件)

Fixed
macOS で permissions.blockReadsOutsideWorkingDirectories が有効な場合に、サンドボックス内の git コマンドからユーザーの git config が隠されたり、worktree 分離されたサブエージェントが自身のチェックアウトを参照できなくなる問題を修正した。
英語原文を表示
Fixed permissions.blockReadsOutsideWorkingDirectories on macOS hiding the user's git config from sandboxed git and hiding a worktree-isolated sub-agent's own checkout

変更前

macOS でも permissions.blockReadsOutsideWorkingDirectories が正しく機能し、サンドボックス化された git コマンドからユーザーの git config を保護し、worktree 分離されたサブエージェントも自身のチェックアウトに問題なくアクセスできる。

変更後

permissions.blockReadsOutsideWorkingDirectories が有効な環境でサンドボックス内の git コマンドがユーザーの git config を読めず、worktree 分離されたサブエージェントも自身のチェックアウトを参照できずに動作しなかった。

ユーザーへの恩恵

macOS ユーザーはファイル読み取り制限を有効にしても git 操作や worktree 分離されたサブエージェントが正常に動作するようになる。

v2.1.257(1件)

Added
作業ディレクトリ外の最初のファイル読み取り時に、そのような読み取りをブロックするオプションを提供するために、自動モードで一度だけプロンプトを表示する機能を追加しました。
英語原文を表示
Added a one-time prompt in auto mode before the first file read outside the working directories, with the option to block such reads (permissions.blockReadsOutsideWorkingDirectories)

変更前

自動モードでは、作業ディレクトリ外のファイルを読み取る際に確認プロンプトが表示されず、意図せぬアクセスが発生する可能性がありました。

変更後

作業ディレクトリ外のファイルを読み取る際、初回のみ確認プロンプトが表示されるようになりました。また、permissions.blockReadsOutsideWorkingDirectories 設定により、そのような読み取りをブロックすることも可能です。

ユーザーへの恩恵

ユーザーは、作業ディレクトリ外へのファイルアクセスを制御できるようになり、意図しない読み取りを防ぐことができます。

関連ドキュメント