Claude Codeは、Anthropic社が提供するAIツールです。ChatGPTやClaudeのチャット画面と大きく違うのは、AIが実際にあなたのパソコン上で作業をするという点です。ファイルを書き換えたり、プログラムを動かしたり、指示すれば、多くの作業を自動で進めてくれます。

だからこそ、使い始める前に考えておくべきことがあります。「実際に作業ができる」ということは、間違った作業や、見せたくないファイルへのアクセスも起こりうる、ということだからです。

たとえば、あなたのパソコンの中には「AIに見せてはいけないファイル」があるはずです。各種サービスのパスワード、顧客情報、契約書。人間の新しいスタッフに仕事を任せるとき、初日から金庫の鍵まで渡す会社はありません。Claude Codeも同じで、最初に「触っていい範囲」を決めてから仕事を任せます。

この記事では、その「範囲決め」のやり方を3つのステップで説明します。そして最後に、いちばん大事な話をします。設定を書いただけでは安心できない、という話です。

前提:Claude Codeは「勝手に何でもする」ツールではない

最初に、Claude Codeの基本的な安全設計を確認します。Claude Codeは、初期状態では、確認なしにできることが読み取り系の操作に限られています。ファイルの編集や書き込み、多くのコマンドの実行、外部への通信が必要になる場面では、画面に確認が表示されます。あなたがOKを出すまで実行されません(lscat のような一部の読み取り系コマンドは、確認なしで実行されます)。

また、初期状態では、Claude Codeが扱うファイルは主に「起動したフォルダ内」に限られます。たとえばあなたが「仕事用」というフォルダでClaude Codeを起動したら、そのフォルダの外にあるファイルは、追加の設定や明示的な許可がない限り書き換えられない仕組みになっています。

つまりClaude Codeは、もともと「許可した範囲でだけ動く」設計になっています。初期設定とは、この「許可の範囲」を自分の仕事に合わせて決めておく作業です。

ステップ1:「絶対に触らせないもの」をリストに書く

Claude Codeには、settings.json(セッティングス・ジェイソン) という設定ファイルがあります。難しく聞こえるかもしれませんが、中身はルールの一覧です。書けるルールは3種類あります。

  • deny(デナイ:禁止) … 絶対にやらせないこと
  • ask(アスク:要確認) … やる前に必ず確認させること
  • allow(アロウ:許可) … 確認なしでやっていいこと

大事なのは順番です。ルールは 禁止 → 要確認 → 許可 の順にチェックされます。つまり「禁止」に書いたことは、他にどんな設定があっても実行されません。禁止リストがいちばん強い、と覚えてください。

では、最初に何を禁止しておけばよいのでしょうか。公式ドキュメントに載っている設定例をもとにすると、次の2つです。

1つ目:パスワードやAPIキーが入ったファイルを読ませない

プログラム開発の世界では、パスワードやAPIキー(サービスを利用するための鍵のような文字列)を「.env(ドットエンブ、または .env ファイル)」という名前のファイルにまとめておく習慣があります。このファイルと、秘密情報を入れたフォルダを、読み取り禁止にします。

2つ目:外部にデータを送るコマンドを禁止する

「curl(カール)」という、外部のサーバーとデータをやり取りするための代表的な命令があります。この命令を禁止しておけば、万が一、悪意ある指示がAIに紛れ込んでも、あなたのパソコンの情報が外に送り出される経路を1つ減らせます。

ただし、外部への通信手段は curl だけではありません。他にも同じことができる命令(wget など)や仕組みがあるため、curl の禁止だけで外部通信を完全に防げるわけではない点は覚えておいてください。より安全にするには、wget なども禁止リストに加えたうえで、次に説明するサンドボックスの通信制限と組み合わせます。

設定ファイルには、こう書きます。

{
  "permissions": {
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)",
      "Bash(curl *)",
      "Bash(wget *)"
    ]
  }
}

英語ばかりで身構えるかもしれませんが、意味は上で説明した通り、「.envファイルとsecretsフォルダを読むな、curlとwgetを使うな」と書いてあるだけです。.env や secrets フォルダを読ませない設定、curl を禁止する設定は、公式ドキュメントの例に沿っています。自分の環境に「見せたくないファイル」が他にあれば、同じ形式で行を足していきます。

なお、この設定ファイルをどこに置くか、どう作るかは、Claude Code本人に「settings.jsonにdenyルールを設定したい」と聞けば案内してくれます。設定ファイルを書く作業そのものは、AIに手伝わせて構いません。

ステップ2:サンドボックスをオンにする

禁止リストに加えて、もう一段深い守りとしてサンドボックスという機能があります。サンドボックスは直訳すると「砂場」。公園の砂場の中では子どもが自由に遊べるけれど、砂場の外には影響が及ばない、という発想の安全機能です。

Claude Codeの画面で /sandbox と入力すると有効にできます。これは、Claude Codeが実行するコマンド(Bashコマンド)を、OSレベルで隔離された領域の中で動かす機能です。隔離された領域では、主に次の2つが強制されます。

  • ファイルの制限:作業フォルダの外にあるファイルを変更できないようにする
  • 通信の制限:許可した接続先以外とは通信できないようにする

ステップ1の禁止リストが「この作業をやっていいか?」を判断する1つ目の門だとすると、サンドボックスは「実行されたコマンドが実際に何に触れられるか?」を制限する2つ目の門です。2つの仕組みを重ねておくことで、うっかりした許可や設定漏れに強くなります。

なお、/sandbox が隔離するのはあくまで実行されるコマンドの部分です。Claude Codeというツール全体をまるごと隔離したい場合は、専用のコンテナや仮想マシン(VM)といった、より外側の隔離環境を検討します。ここでは「まず /sandbox をオンにする」ところから始めれば十分です。

ステップ3:「確認を全部スキップ」は使わない

Claude Codeには、すべての確認を省略して自動で作業を進めさせるオプションがあります。オプションの名前に「dangerously(危険)」という単語が入っているほどで、公式ドキュメントでも、完全に隔離された特別な環境以外での使用は想定されていません。

使っていると、確認のたびにOKを押すのが面倒になってくる瞬間が必ず来ます。そこで「全部スキップ」に手を伸ばすのが、いちばんやってはいけない設定です。確認の回数を減らしたいなら、まず検討したいのがステップ2のサンドボックスです。あらかじめ安全な範囲を決めておけば、その範囲内のコマンド実行は、都度の確認を減らして任せられます。

なお、確認をすべて省くモードをどうしても使う必要がある場合は、/sandbox だけでは不十分とされており、専用のコンテナや仮想マシンなど、より外側でしっかり隔離された環境の中で使うのが前提です。通常の業務環境で確認をすべて省くのは避けてください。

いちばん大事な話:設定は「書いた」だけでは信用できない

ここまでで初期設定は一通り完了です。しかし、実務ではここからが本番です。

実は、Anthropicが公開しているClaude CodeのGitHubリポジトリには、「禁止リストに書いたのに、禁止されなかった」という利用者からの報告が、これまで複数のバージョンにわたって繰り返し寄せられています。2025年8月にはあるバージョン(v1.0.93)で禁止ルールが広く無視されるという報告があり、2026年2月にも、特定の書き方をした禁止ルールが効かなかったという報告が出ています。

個々の報告は、対応されたものもあれば、そのまま収束したものもあります。ただ、同じ種類の問題が版を変えて繰り返し現れているという事実は残ります。だからこそ、ここで受け取るべき教訓は普遍的です。セキュリティの設定は、「書いた時点」ではなく「効いていると確かめた時点」で初めて完成する、ということです。

確かめ方は簡単で、専門知識はいりません。設定を書き終えたら、Claude Codeにわざとこう頼んでみてください。

「.env ファイルの中身を読んで表示して」

禁止ルールが効いていれば、Claude Codeは「そのファイルは読めません」という趣旨の反応をします。もし中身が表示されてしまったら、設定が効いていないということです。書き方を見直すか、Claude Codeを最新版に更新して、もう一度試します。禁止したはずの命令(curlなど)も同じように、わざと実行を頼んでみて、断られることを確かめます。

あわせて、Claude Codeの画面で /permissions と入力すると、いま有効になっている許可・要確認・禁止のルールの一覧が表示されます。設定した禁止ルールがきちんと読み込まれているかを、ここで目で確認できます。設定ファイルそのものに書き間違いがないか点検したいときは /doctor が使えます。動作テストとあわせて使うと確実です。

火災報知器を取り付けたら、ボタンを押して鳴るか確かめますよね。あれと同じです。取り付けただけで一度も鳴らしたことのない報知器を、本当に信用できるでしょうか。

Claude Codeは更新の頻度が高いツールなので、バージョンが上がったタイミングでこのテストをもう一度やる、という習慣までセットにしておくと安心です。

まとめ:AIに任せられること、人間にしかできないこと

最後に整理します。今日の内容で、AIに任せていいことと、人間がやるべきことは、はっきり分かれます。

AIに任せていいこと

  • 設定ファイル(settings.json)を書く作業そのもの

人間にしかできないこと

  • 自分の環境で「絶対に触らせてはいけないもの」は何かを決めること
  • 設定が本当に効いているか、わざと破らせようとして確かめること
  • ツールが更新されるたびに、その確認を繰り返すこと

初期設定とは、設定ファイルを1回書くことではなく、この3つを続ける習慣を作ることです。禁止リスト、サンドボックス、確認スキップの封印。この3点を整えたうえで「本当に効いているか」を自分の手で確かめて、はじめてClaude Codeを安心して仕事に組み込めます。


本記事の仕様に関する記述は、2026年7月時点の公式ドキュメント(code.claude.com/docs)およびAnthropic公式ブログに基づいています。Claude Codeは更新頻度の高いツールのため、実際の設定時には最新の公式ドキュメントもあわせてご確認ください。