Claude Codeを使っていると、ふと気になる。「自分のファイルの中身、どこまで送られているのだろうか」。この疑問はもっともなものだ。Claude Codeは手元のパソコンで動くが、回答を生成するためにはサーバーとの通信が伴う。ただし「送られる」と「ずっと残る」は別の話で、除外設定やテレメトリの仕組みも押さえておけば、過度に恐れる必要はない。何が送信され、何が手元に残るのかを順番に見ていく。
一言でいうと
Claude Codeはローカルで動くツールだが、回答生成のために会話内容をサーバーに送信する。送信先は利用形態によって異なり、保持期間もそこで変わる。
送信されるのは入力した指示や参照したファイルの内容、会話の履歴など。Claude Codeのプログラム本体は送信されない。機密ファイルは.claudeignoreで除外できる。「送られる」と「ずっと残る」は別問題——この先で整理していく。
まず切り分けること
保持ルールを理解する前に、自分がどのルートでClaude Codeを使っているかを確定させたい。大きく3つのパターンがある。
個人で直接使う場合 — Anthropicのサイトでアカウントを作って使っているケース。無料プラン、月額の個人プラン、上位のMaxプランのいずれもここに当てはまる。
組織経由で使う場合 — 会社やチームの契約プラン経由で使っているケース。自分の設定に加えて、組織の管理者が設定したポリシーも関係する。
クラウドプロバイダー経由で使う場合 — AWSのBedrockやGoogle CloudのVertex AIを経由して動かしているケース。送信先がAnthropicではなく、各プロバイダーになる。
この3ルートで保持のルールが変わる。まずは自分がどれに当てはまるかを押さえておきたい。
補足:プラン名は時期によって変更されることがある。自分のプランがどれに該当するかはclaude.aiのアカウント設定で確認できる。
Claude Codeで送信される情報
具体的に何がサーバーに送られるのか。ざっくり3種類ある。
入力した指示(プロンプト) — ターミナルやデスクトップアプリで入力した内容がそのまま送られる。
参照したファイルの内容 — Claude Codeが文脈として読み込んだファイルの中身も送信される。ここで意識しておきたいのがCLAUDE.mdの存在だ。Claude Codeは起動時にCLAUDE.mdを自動的に読み込んでコンテキストに含める。つまりCLAUDE.mdに書いた内容もサーバーに送られる。仮に「このプロジェクトのデータベースパスワードはpass123」のような記述があれば、それも毎回送信されていることになる。
会話の履歴 — 同じセッション内でのやり取りは、文脈を保つために一緒に送られる。
送信先は利用ルートで異なる。直利用ならAnthropic、Bedrock経由ならAWS、Vertex経由ならGCPだ。逆に言うと、Claude Codeのプログラム本体は送信されない。
送信されるものの全体像は見えた。次は手元に何が残っているかを見る。
パソコンに残る情報
手元のPCにもデータが保存されている。場所は%USERPROFILE%\.claude\フォルダ(エクスプローラーのアドレスバーに直接入力すれば開ける)。
%USERPROFILE%\.claude\には、セッション履歴やプロンプト履歴などのローカルデータが保存される。保存される内容は平文で、Claude Codeが読んだファイル内容、コマンド出力、貼り付けたテキストなどが含まれることがある。便利な一方で、機密情報を読ませると手元の履歴にも残る点は押さえておきたい。
標準では30日間保存され、設定のcleanupPeriodDaysで期間を変更も可能だ。セッション履歴そのものを無効化する設定もある。
手動で削除する場合は、%USERPROFILE%\.claude\内の該当フォルダを消せばよい。ただし、セッション再開の利便性とのトレードオフになる。
冒頭で「送られる」と「ずっと残る」は別の話と書いたが、ここで具体像が見えてくる。手元にキャッシュが残っていても、それはセッション再開のための仕組みであって、サーバー側のデータ保持とは別物だ。逆に、手元のキャッシュを消しても、すでにサーバーに送られた分には影響しない。ローカルの整理とサーバー側の保持は、別々に考える必要がある。
機密ファイルを読ませない:.claude/settings.jsonのpermissions.deny
Claude Codeに読ませたくないファイルは、プロジェクト内の.claude/settings.jsonでpermissions.denyに指定できる。.envや秘密鍵、認証情報を含むファイルは、最初に拒否設定へ入れておくと安心だ。
{
"permissions": {
"deny": [
"Read(./.env)",
"Read(./.env.*)",
"Read(./secrets/**)",
"Read(./config/credentials.json)",
"Read(./*.key)",
"Read(./*.pem)"
]
}
}
※Readの拒否はClaude Codeの読み取りツール向けであり、Bashでcat .envのように実行されるケースまで完全に防ぐものではない。Bash側まで制限したい場合は、サンドボックスの設定も別途考える必要がある。
初心者なら、まず.envと*.keyを拒否設定に入れておけば大きく安心する。これらが含まれるプロジェクトは多く、除外しておけば意図せずAPIキーやパスワードが送信されるリスクを大幅に減らせる。除外しすぎて困ることは基本的にないので、迷ったら書いておく方向でよい。
保持ルールは何で変わるか
利用形態ごとに、サーバー側のデータ保持期間が変わる。
個人利用の場合。 データ学習(モデル改善への利用)を許可しているかどうかで扱いが変わる。学習を許可しない設定にしていれば、保持期間は短く抑えられる。許可している場合は、学習目的での利用期間に応じて長くなる。この設定はclaude.aiの設定画面から確認・変更できる。
商用利用の場合。 TeamプランやEnterpriseプラン、API利用では、標準で短い保持期間が設定されることが多い。学習への利用も標準で無効。
注意したいのが「削除ボタンを押したからもう安全」とは限らない点だ。画面上では会話がすぐ消えたように見えても、会話を削除すると画面上の履歴からはすぐ消えるが、バックエンド側では一定期間残る場合がある。コンシューマー向けClaudeでは、バックエンドからは30日以内に自動削除されると説明されている。ただし、規約違反対応や法令上の理由がある場合は例外がある。
組織利用の場合は、自分の設定だけでなく組織側のポリシーも関係する。管理者がデータ保持期間を定めていたり、学習利用を制限していたりするケースがある。自分のアカウント設定だけで判断せず、組織の方針も確認しておきたい。
迷ったら、まず自分がどの利用ルートに当てはまるかへ戻ると理解しやすい。
テレメトリ:利用状況データの送信
もう一つ送信されているデータがある。テレメトリだ。
Claude Codeには、運用メトリックやエラーログを送信する仕組みがある。運用メトリックにはコード本文やファイルパスは含まれないと説明されている。無効化したい場合は、環境変数DISABLE_TELEMETRY=1を設定する。エラーログも止めたい場合は、DISABLE_ERROR_REPORTING=1を設定する。
PowerShellでの設定例:
[System.Environment]::SetEnvironmentVariable('DISABLE_TELEMETRY', '1', 'User')
[System.Environment]::SetEnvironmentVariable('DISABLE_ERROR_REPORTING', '1', 'User')
なお、組織向けのOpenTelemetry監視は別の仕組みで、CLAUDE_CODE_ENABLE_TELEMETRY=1などを設定して有効化する。
組織利用では管理者がテレメトリ設定を一元管理している場合がある。この場合、自分で変更できないので管理者に確認することになる。
Bedrock / Vertex経由だと何が変わるか
AWSのBedrockやGoogle CloudのVertex AIを経由してClaude Codeを使う場合、データの送信先が変わる。Anthropicのサーバーではなく、それぞれAWSまたはGCPのインフラが受け手になる。
保持ルールも各プロバイダーの規約に従う。直利用ならclaude.aiの設定画面で確認できるが、Bedrock経由ならAWSコンソール、Vertex AI経由ならGCPコンソールが窓口になる。つまり「claude.aiの設定を見ればOK」ではなく、利用プロバイダーの管理画面で確認することになる。
詳細な保持ポリシーは各プロバイダーのドキュメントを参照してほしい。導線だけ覚えておけば十分だ。
よくある誤解
Claude Codeのデータ利用まわりで、初心者がつまずきやすいポイントを整理する。
「ローカル実行=通信しない」ではない — Claude Codeは手元で動くが、回答を生成するには必ず通信が発生する。完全にオフラインでは動かない。
「送信される=ずっと保存される」ではない — サーバー側にも保持期間があり、利用形態に応じて変わる。詳細は「保持ルールは何で変わるか」で触れた通りだ。
認証に使うAPIキーと、会話や読み込んだファイルに含めたAPIキーは別物だ — 認証用のキーは会話文そのものとして送るものではないが、プロンプトに貼り付けたり、.envを読ませたり、コマンド出力に表示されたりした場合は、その内容が送信・ローカル保存の対象になり得る。APIキーやパスワードは、会話にもファイル読み取りにも含めないのが安全だ。
CLAUDE.mdは参照ファイルとして送信される — 自動的に読み込まれるので、機密情報は載せないのが安全。
テレメトリが有効≠会話内容が送られているわけではない — テレメトリが送るのは利用状況のメタデータだけで、会話の中身は含まれない。この2つは別の経路で処理されている。
組織利用では管理者の管理対象になることがある — 組織の管理者が会話ログの収集や監査を設定している場合がある。自分の設定だけで安心せず、組織のポリシーも確認しておきたい。
自分の設定確認・削除方法
ここまで読んできたら、実際に自分の設定を確認してみよう。
データ学習設定の確認 — claude.aiにログインし、設定画面を開く。プライバシー関連の項目にデータ学習の許可設定があるので、オンかオフかを確認する。オフにしていれば、学習目的でのデータ利用は行われない。
セッション履歴の削除 — %USERPROFILE%\.claude\内の該当フォルダを手動で削除すれば、手元の履歴は消える。ただし前述の通り、手元のキャッシュを消してもサーバー側にすでに送られた分には影響しない。
Zero Data Retentionについて — 組織利用の一部プランでは、データをサーバー側に保持しない設定が利用できる場合がある。ただし利用には条件があり、すべてのプランで使えるわけではない。自組織で利用可能かどうかは管理者に確認してほしい。
ざっくり言うと、初心者がまずやるなら次の3点で安心度が大きく変わる。①自分の利用ルートを確定させる(直利用か組織利用かBedrock/Vertex経由か)→②学習設定をオフにする→③.claudeignoreで.envと*.keyを除外する。全部やる必要はなく、①と③だけでも大きく安心材料が変わる。
公式資料
さらに詳しく知りたい場合は、次の資料を参照してほしい。
- Anthropic Privacy Center — データ保持ポリシーの全文が確認できる。利用ルートごとの違いもここで読める
- Claude Code公式ドキュメント(Data usage) — 送信対象の技術的な詳細と、設定項目の説明が載っている
- Claude Code公式ドキュメント(Telemetry) — テレメトリの送信内容とオプトアウトの具体的な手順
関連記事として、CLAUDE.mdとMEMORY.mdの違いとは?やCLAUDE.mdをWindowsで作成する手順も併せて読むと、データ保護の理解がさらに深まる。
次にやること
読後すぐ動ける導線を書き出しておく。
自分の利用ルートを確定させる。直利用なのか、組織利用なのか、BedrockやVertex AI経由なのか。これが分かれば保持ルールの大枠も見えてくる。
claude.aiでデータ学習設定を確認する。学習を許可しているかどうかで、サーバー側の保持期間が変わる。許可したくない場合はオフにする。
.claudeignoreで機密ファイルを除外する。.envと*.keyを書いておけば、まずは十分だ。除外しすぎて困ることは基本的にない。
テレメトリ設定も確認しておきたい。初期設定で有効になっているが、~/.claude/settings.jsonのtelemetry項目でオフにできる。組織利用の場合は管理者に確認する。
利用ルートの確定と.claudeignoreの設定だけでもやっておけば、大きく安心度が変わる。残りは使っていく中で少しずつ整えていけばよい。
Claude Codeに最初の依頼をしてみようという段階なら、まずは.claudeignoreから始めるのがおすすめだ。
