~/.claude から、指示、設定、skills、subagents、メモリを読み込みます。プロジェクトファイルを git にコミットしてチームと共有します。~/.claude 内のファイルは、すべてのプロジェクトに適用される個人設定です。
Windows では、~/.claude は %USERPROFILE%\.claude に解決されます。CLAUDE_CONFIG_DIR を設定した場合、このページのすべての ~/.claude パスはそのディレクトリの下に存在します。同じことが .claude.json にも当てはまります。このファイルは、設定しない場合は ~/.claude.json に配置されます。
ほとんどのユーザーは CLAUDE.md と settings.json のみを編集します。リポジトリに他のコーディングエージェント用の AGENTS.md が既にある場合、Claude Code は CLAUDE.md の代わりにそれを読み込むことができます。ディレクトリの残りはオプションです。必要に応じてスキル、ルール、またはサブエージェントを追加してください。
ディレクトリを探索する
ツリー内のファイルをクリックして、各ファイルの機能、読み込みタイミング、および例を確認してください。表示されないもの
エクスプローラーは、あなたが作成および編集するファイルをカバーしています。いくつかの関連ファイルは他の場所にあります。~/.claude はまた、Claude Code があなたが作業する際に書き込むデータも保持しています。トランスクリプト、プロンプト履歴、ファイルスナップショット、キャッシュ、およびログです。下記のアプリケーションデータを参照してください。
適切なファイルを選択する
異なる種類のカスタマイズは異なるファイルに存在します。このテーブルを使用して、変更がどこに属するかを見つけてください。ファイルリファレンス
このテーブルは、エクスプローラーがカバーするすべてのファイルをリストしています。プロジェクトスコープのファイルはリポジトリの.claude/ の下に存在します(CLAUDE.md、.mcp.json、.worktreeinclude はルートにあります)。グローバルスコープのファイルは ~/.claude/ に存在し、すべてのプロジェクトに適用されます。
これらのファイルに入れたものをオーバーライドできるいくつかのことがあります。
- 組織によってデプロイされた管理設定は、設定の優先順位における例外を除き、すべての設定ファイルおよび
--settingsの値に優先します --permission-modeや--settingsなどの CLI フラグはそのセッションのsettings.jsonをオーバーライドします- 一部の環境変数は同等の設定に優先しますが、これは異なります。各設定について環境変数リファレンスを確認してください
ファイル別フロントマターフィールド
スキル、コマンドファイル、サブエージェント、出力スタイル、およびルールは、ファイルの上部にある YAML フロントマターから設定を読み込み、それぞれが独自のフィールドセットを受け入れます。このテーブルは、各ファイルのフィールド名をリストアップし、それらを説明するリファレンスへのリンクを提供します。
プラグインに含まれるエージェントは、サブエージェントフィールドのサブセットに対応しています。
設定をトラブルシューティングする
設定、hook、またはファイルが有効になっていない場合は、設定をデバッグするを参照して、検査コマンドと症状優先ルックアップテーブルを確認してください。アプリケーションデータ
作成したコンフィグ以外に、~/.claude には Claude Code がセッション中に書き込むデータが保存されます。これらのファイルはプレーンテキストです。ツールを通過するすべてのものは、ディスク上のトランスクリプトに書き込まれます。ファイルの内容、コマンド出力、貼り付けたテキストなどです。
トランスクリプトには、Claude Code がメッセージとともにモデルに送信する内容も含まれる場合があります:
- システムプロンプト
- ツール定義
- リクエストパラメータ
- 読み込んだ指示ファイル(CLAUDE.md など)
自動的にクリーンアップされるファイル
Claude Code は、cleanupPeriodDays より古いファイルを以下のパスから削除します。ただし、保持期間を安全に判定できる場合に限ります。デフォルトは 30 日で、最小値は 1 です。0 に設定するとバリデーションエラーが発生します。同じ経過日数の閾値が、孤立した worktrees の自動削除にも適用されます。
sessions/ のセッションファイル、自動メモリ、Claude Desktop および Cowork トランスクリプトは、それぞれ独自の保持ルールに従います:
-
sessions/:実行中の各セッションに 1 つの小さいファイルを保持します。同時実行セッションとクラッシュを検出するために使用されます。年齢ベースのスイープの一部ではありません。Claude Code は、セッションが終了するときに各ファイルを削除し、次の起動時にクラッシュの残りをクリアします。 -
seed-admin/:ultrareview またはクラウドセッションのアップロードのためにリポジトリをパッケージ化する際に、Claude Code が作成する一時的な git ディレクトリです。アップロードが終了したとき、または中断された場合は後のセッションで、Claude Code はそのアップロードのディレクトリを削除し、seed-admin/自体はそのまま残します。 -
自動メモリ:スイープは、プロジェクトの自動メモリディレクトリ
projects/<project>/memory/内のメモリファイルを削除しません。Claude Code は、保持期間全体が空だった場合にのみそのディレクトリを削除します。v2.1.228 より前では、スイープはメモリディレクトリ内のフォルダをセッションデータとして扱い、その下の古いファイルを削除できました。 -
Claude Desktop および Cowork トランスクリプト:Claude Code は、Claude Desktop または Cowork で開始または最後に続行したセッションのトランスクリプトを任意の年齢で保持します。これらのトランスクリプトに年齢制限を与えるには、
desktopSessionCleanupPeriodDaysを設定します。Claude Code v2.1.248 以降が必要です。それより前のバージョンでは、cleanupPeriodDaysの後に削除します。 ただし、次のような場合、Claude Code はこれらのトランスクリプトをcleanupPeriodDaysの経過後に削除します。- 管理設定で
cleanupPeriodDaysが設定されている - HIPAA 設定がセッションに適用されている
- 管理設定で
- ベアモード:
--bareでclaude -pを実行する場合、Claude Code はそのセッションでスイープを実行しません。 - 一時停止されたスイープ:Claude Code が保持期間を安全に判定できない場合、スイープを一時停止します。
retention_sweepイベントには、スイープを一時停止させる各設定が記載されます。原因が読み込みまたは解析できない設定ファイルである場合、またはcleanupPeriodDaysやdesktopSessionCleanupPeriodDaysが設定された状態で設定エラーがある場合は、原因を修正するまで/statusに警告が表示されます。
cleanupPeriodDays を提供している場合、優先度の低い設定ファイルにエラーがあっても、Claude Code は管理値でスイープを実行します。
組織内のマシンが設定した保持期間でスイープを実行していることを確認するには、保持スイープを確認するを参照してください。
セッションスクラッチパッドディレクトリ
スクラッチパッドは、Claude Code が Claude に一時ファイル用に提供するセッションごとのディレクトリです。中間結果、ヘルパースクリプト、プロジェクトに属さないドラフトです。Claude が「スクラッチパッドに保存した」と言う場合、ファイルはそこにあります。Claude は/tmp の代わりにそれを使用し、権限プロンプトなしでそれ内のファイルを作成、編集、読み取ることができます。
スクラッチパッドは ~/.claude ではなく Claude Code の一時ディレクトリの下に存在します。プラットフォームの現在のセッションのパスを見つけます:
- macOS:
/private/tmp/claude-<uid>/<project>/<session-id>/scratchpad/ - Linux:
/tmp/claude-<uid>/<project>/<session-id>/scratchpad/、またはシステムが設定する場合は$TMPDIRの下の同じ形状 - Windows:
%TEMP%\claude\<project>\<session-id>\scratchpad\
<project> は、英字と数字以外のすべての文字が - に置き換えられた作業ディレクトリパスです。例えば、-Users-you-my-project。Windows では、<project> はその文字列の 16 文字のハッシュです。例えば、73295dabccd14c56。Desktop アプリのセッションでは、文字列そのものになる場合があります。正確なパスを知るには、Claude に尋ねてください。CLAUDE_CODE_TMPDIR を設定する場合、ツリーはそのディレクトリの下に移動します。フックは現在のセッションのパスを scratchpad_dir として受け取ります。
スクラッチパッドファイルはセッションのトランスクリプトと同じ期間続きます。保持スイープはトランスクリプトを削除するときにディレクトリを削除し、claude purgeは一時ディレクトリに触れません。ディレクトリはシステムの一時場所の下にあるため、オペレーティングシステムもそれをクリアできます。例えば、再起動時。Claude がそこに書き込んだものを保持するには、Claude にそれをプロジェクトに移動するよう依頼します。
セッションがスクラッチパッドを持つのは、以下のすべてが成り立つ場合のみです:
- API キーではなく claude.ai アカウントでサインインしている
- セッションが Amazon Bedrock、Google Cloud の Agent Platform、または Microsoft Foundry ではなく Anthropic API を使用している
enableArtifactがfalseに設定されていない
削除するまで保持されるファイル
特に記載のある行を除き、保持クリーンアップスイープは以下のパスを削除せず、Claude Code はそれらを削除するまで保持します。保持するべき状態ファイル
使用する機能に応じて、~/.claude/ には アプリケーションデータの表に記載されていないファイルも保存されます。そのうち、キャッシュとロックファイルは削除しても安全です。以下の状態ファイルは保持してください:
.credentials.json:ログイン認証情報agent-memory/:サブエージェントメモリjobs/とdaemon/:バックグラウンドセッションの状態
プレーンテキストストレージ
トランスクリプトと履歴は保存時に暗号化されません。OS ファイル権限が唯一の保護です。ツールが.env ファイルを読み込むか、コマンドが認証情報を出力する場合、その値は projects/<project>/<session>.jsonl に書き込まれます。露出を減らすには:
cleanupPeriodDaysを低くして、Claude Code がトランスクリプトを保持する期間を短縮しますdesktopSessionCleanupPeriodDaysを設定して、Claude Desktop および Cowork トランスクリプトにも年齢制限を与えますCLAUDE_CODE_SKIP_PROMPT_HISTORY環境変数を設定して、任意のモードでトランスクリプトとプロンプト履歴の書き込みをスキップします。非対話モードでは、代わりに-pと一緒に--no-session-persistenceを渡すか、TypeScript Agent SDK でpersistSession: falseを設定できます。Python SDK には同等のオプションがありません。- 権限ルールを使用して、認証情報ファイルの読み取りを拒否します
ローカルデータをクリアする
claude purge を実行して、1 つのプロジェクトに対して Claude Code が保持する状態を削除します。削除されるもの:
projects/の下のトランスクリプトと自動メモリ- セッションごとの
tasks/、debug/、file-history/エントリ history.jsonlの一致するプロンプト行~/.claude.jsonのプロジェクトエントリ
~/.claude ではなく Claude Code の一時ディレクトリの下に保存されるため、パージは削除しません。保持スイープは、cleanupPeriodDays より古くなると画像を削除します。パージされたセッションのスクラッチパッドは、削除するか、オペレーティングシステムが一時ディレクトリをクリアするまで残ります。
コマンドは完全な削除計画を出力し、何かを削除する前に確認を求めます。
v2.1.288 より前は、コマンドは claude project purge でした。
以下の例では、~/work/my-repo をプレースホルダーとして使用します。プロジェクトへのパスに置き換えます。パスに一致する状態がない場合、コマンドはエラーを出力し、ステータス 1 で終了します。
削除せずに計画をプレビューします:
Delete 3 item(s) for /home/user/work/my-repo? This cannot be undone. [y/N] と尋ね、y と答えた場合のみ削除します。
パスを省略して、対話的なリストからプロジェクトを選択します。
スクリプトで使用するために確認プロンプトをスキップします:
- パスの代わりに
--allを渡して、すべてのプロジェクトの状態を一度にパージします。これはhistory.jsonlをフィルタリングするのではなく、完全に削除します。 -iを渡して、削除計画を 1 つずつステップスルーします。
shell-snapshots/ と backups/ をそのままにしておきます。これらはプロジェクトスコープではないため、計画出力で警告します。マシン上で誰かが /heapdump を実行した場合は、それが書き込んだ .heapsnapshot ファイルも削除してください。ヒープスナップショットには会話全体とプロセスが保持していた認証情報が含まれており、保持スイープもパージもそれには触れません。
保持するべき状態ファイルを除き、上記のアプリケーションデータパスのいずれかを手動で削除することもできます。
~/.claude.json、~/.claude/settings.json、~/.claude/plugins/ は削除しないでください。これらはアカウント情報、環境設定、インストール済みプラグインを保持しています。
関連リソース
- Claude のメモリを管理する:CLAUDE.md、rules、auto memory を書き込んで整理します
- 設定を構成する:パーミッション、hooks、環境変数、モデルデフォルトを設定します
- Skills を作成する:再利用可能なプロンプトとワークフローを構築します
- Subagents を構成する:独自のコンテキストを持つ特化したエージェントを定義します