本文へ移動

AI Buildersのための最新のニュース、知見、事例を毎日お届け

運営会社
コーディングエージェントAnthropic

Claude Codeに作業フォルダ外への書き込みを止める設定 全モードで効く

米AnthropicはClaude Codeの2.1.314で、作業フォルダの外へのファイルの書き込みと編集を、どの権限モードでも断る設定を足した。読み取りを止める設定は9月からあり、書き込みの側がそろった形だ。ただしシェルのコマンドは対象に入っておらず、説明文書もまだ更新されていない。

記事の内容を自社でどう進めるか、内容が固まっていない段階でも相談できます。仕事の相談

毎週 1 回、その週の記事から 5 本と実践の 1 本を選んでメールで届けます。ニュースレターを購読する(無料)

Claude Codeの文書の画面。Bashのコマンドを実行してよいかを利用者に尋ねる確認の画面
画像: Anthropic

米AnthropicのコーディングエージェントClaude Codeは、10月30日付のバージョン2.1.314で、作業フォルダの外へのファイルの書き込みを止める設定「permissions.blockWritesOutsideWorkingDirectories」を足した。更新履歴によると、これを有効にすると、ファイルを書く・編集する道具が、作業フォルダの外の場所を全ての権限モードで断る。エージェントに承認なしで作業させる人にとって、触ってよい範囲の外を確実に守る手段が一つ増えた。

書く・直す・ノートの道具が外を断る

対象になるのは、ファイルを新しく書くWrite、中身を書き換えるEdit、Jupyterのノートを編集するNotebookEditの3つの道具だ。この設定がある時、3つの道具は作業フォルダの外の場所を断る。更新履歴は「全ての権限モードで」と書いている。人が毎回承認するモードでも、承認を省くモードでも、外には書けないということだ。

作業フォルダは、権限の説明文書によると、Claude Codeを起動したフォルダが基本になる。起動時の--add-dir、作業中の/add-dir、設定ファイルのadditionalDirectoriesで広げられる。書き込みを許したいフォルダがほかにあるなら、この3つのどれかで足しておけばよい。

使いどころは、エージェントに長い作業を任せる時だ。例えば一つのリポジトリの修正を頼んだのに、エージェントが気を回してホームフォルダの設定ファイルや隣のリポジトリまで書き換えてしまう、といった事故を、権限のモードに関係なく防げる。承認の確認を毎回出すほどではないが、触る範囲だけは決めておきたい、という使い方に合う。

9月からある読み取りの設定と対になる

読み取りの側には、同じ形の設定「permissions.blockReadsOutsideWorkingDirectories」がすでにある。更新履歴では9月1日付の2.1.257で入った。設定の説明文書によると、こちらは承認を全て省くbypassPermissionsのモードも含めて、作業フォルダの外へのRead、Grep、Glob、LSPの呼び出しを断り、/add-dirでフォルダを足すよう利用者に頼むようClaudeに伝える。スキルやCLAUDE.mdなど、Claude Code自身が要るファイルは読めるままだ。有効にするには、設定ファイルのpermissionsの中でこの項目をtrueにする。今回の書き込みの設定で、読む側と書く側の両方に同じ柵を立てられるようになった。

同じ2.1.314では、組織が配る管理用の設定を手元に写したファイルを、ファイルの道具が編集する前に確認を求めるようにも変わった。エージェントが自分の権限の設定に手を出す余地を減らす変更が、同じ版に並んでいる。

シェルのコマンドは対象外、説明文書もまだ

注意したいのは、更新履歴が挙げる対象がWrite、Edit、NotebookEditの3つだけで、シェルのコマンドを走らせるBashの道具が入っていない点だ。Bashでリダイレクトやコピーを使えば、作業フォルダの外に書ける余地は残るとみられる。設定の説明文書には、サンドボックスの中で動くコマンドに特定の場所への書き込みを禁じる「sandbox.filesystem.denyWrite」があり、シェルの側も止めたいなら、こうした設定と組み合わせることになる。

また、11月1日(日本時間)に確かめた時点で、設定の説明文書の一覧にはこの書き込みの設定がまだ載っていない。権限の設定の項目の並びも、読み取りの設定までしか書かれていない。どの設定ファイルに書けるのか、組織の管理用の設定で強制できるのかは、更新履歴の1行からは分からない。入れる前に、手元の版が2.1.314以上かをclaude --versionで確かめ、作業フォルダの外に書かせる指示を出して、本当に断られるかを試すのが無難だ。

編集部の見方

承認を省くモードでエージェントを走らせると、作業は速くなる一方、ホームフォルダの設定ファイルや別のリポジトリを書き換えられる心配がつきまとう。これまで書き込みの範囲を締めるには、拒否のルールを並べるか、サンドボックスに頼るしかなかった。1つの設定で「作業フォルダの外には書かない」と決められるのは、夜通し任せる使い方と相性がよい。ただし柵はファイルの道具にしか立たない。シェルまで含めて囲うなら、サンドボックスの設定と合わせて使い、試してから任せる範囲を広げたい。

出典

に確認(日本時間)

  1. 更新履歴(code.claude.com)
  2. 権限の説明文書(code.claude.com)
  3. 設定の説明文書(code.claude.com)

この記事をシェア

この記事は役に立ちましたか