~/.claude 讀取指令、設定、skills、subagents 和記憶。將專案檔案提交到 git 以與您的團隊共享;~/.claude 中的檔案是個人設定,適用於您的所有專案。
在 Windows 上,~/.claude 解析為 %USERPROFILE%\.claude。如果您設定了 CLAUDE_CONFIG_DIR,此頁面上的每個 ~/.claude 路徑都會改為位於該目錄下。
大多數使用者只編輯 CLAUDE.md 和 settings.json。如果您的儲存庫已經有一個 AGENTS.md 供其他編碼代理使用,Claude Code 可以自行讀取或與 CLAUDE.md 一起讀取。目錄的其餘部分是可選的:根據需要新增 skills、rules 或 subagents。
探索目錄
點擊樹中的檔案以查看每個檔案的功能、何時載入以及範例。未顯示的內容
探索器涵蓋您編寫和編輯的檔案。一些相關檔案位於其他位置:~/.claude 也保存 Claude Code 在您工作時寫入的資料:文字記錄、提示歷史記錄、檔案快照、快取和日誌。請參閱下方的應用程式資料。
選擇正確的檔案
不同類型的自訂設定位於不同的檔案中。使用此表格找到變更應該位於何處。檔案參考
此表列出探索器涵蓋的每個檔案。專案範圍的檔案位於您的儲存庫中的.claude/ 下(或 CLAUDE.md、.mcp.json 和 .worktreeinclude 的根目錄)。全域範圍的檔案位於 ~/.claude/ 中,適用於所有專案。
有幾件事可以覆蓋您在這些檔案中放入的內容:
- 您的組織部署的受管設定優先於所有內容,除了設定優先順序下的例外
- CLI 旗標(如
--permission-mode或--settings)會覆蓋該工作階段的settings.json - 某些環境變數優先於其等效設定,但這會有所不同:檢查環境變數參考以了解每個變數
按檔案分類的 Frontmatter 欄位
Skills、命令檔案、子代理、輸出樣式和規則從檔案頂部的 YAML frontmatter 讀取其設定,每個都接受自己的一組欄位。此表列出每個檔案的欄位名稱,並連結到描述它們的參考資料。
在 plugin 中提供的代理遵守子代理欄位的子集。
疑難排解設定
如果設定、hook 或檔案未生效,請參閱偵錯您的設定以取得檢查命令和症狀優先查詢表。應用程式資料
除了你編寫的設定外,~/.claude 還保存 Claude Code 在工作階段期間寫入的資料。這些檔案是純文字格式。任何通過工具的內容都會被寫入磁碟上的文字記錄:檔案內容、命令輸出、貼上的文字。
自動清理
Claude Code 會刪除下列路徑中的檔案,只要它們的年齡超過cleanupPeriodDays,只要它能安全地確定保留期間。預設值為 30 天,最小值為 1;設定 0 會導致驗證錯誤。相同的年齡截止值也適用於 孤立 worktrees 的自動移除。
sessions/ 中的工作階段檔案、自動記憶和 Claude Desktop 及 Cowork 文字記錄各自遵循自己的保留規則:
sessions/:為每個執行中的工作階段保存一個小檔案,用於偵測並行工作階段和崩潰。它不是基於年齡的掃描的一部分:Claude Code 在其工作階段退出時移除每個檔案,並在下次啟動時清除崩潰遺留物。- 自動記憶:掃描不會刪除專案 自動記憶 目錄
projects/<project>/memory/中的記憶檔案。Claude Code 只有在整個保留期間該目錄一直為空時才會移除它。在 v2.1.228 之前,掃描將記憶目錄內的資料夾視為工作階段資料,可能會刪除其下的舊檔案。 - Claude Desktop 和 Cowork 文字記錄:Claude Code 保留你在 Claude Desktop 或 Cowork 中啟動或最近繼續的工作階段的文字記錄,無論年齡如何。要為這些文字記錄設定年齡限制,請設定
desktopSessionCleanupPeriodDays。當 受管設定 設定cleanupPeriodDays時,Claude Code 會在該期間後刪除這些文字記錄。需要 Claude Code v2.1.248 或更新版本;較早版本在cleanupPeriodDays後刪除它們。
- 裸機模式:當你使用
--bare執行claude -p時,Claude Code 不會在該工作階段中執行掃描。 - 暫停掃描:如果 Claude Code 無法安全地確定保留期間,它會暫停保留清理掃描;
retention_sweep事件 列出每個暫停它的設定。當原因是無法讀取或解析的設定檔案,或cleanupPeriodDays或desktopSessionCleanupPeriodDays明確設定的設定錯誤時,Claude Code 也會在/status中顯示警告,直到你修復設定錯誤。當 受管設定 提供cleanupPeriodDays時,Claude Code 在任一情況下都會以受管值執行掃描。
工作階段暫存簿目錄
暫存簿是 Claude Code 為 Claude 提供的每個工作階段目錄,用於臨時檔案:中間結果、輔助指令碼和不屬於你的專案的草稿。當 Claude 說它將某些內容保存到「暫存簿」時,該檔案就在那裡。Claude 使用它而不是/tmp,可以在其中建立、編輯和讀取檔案,無需權限提示。
暫存簿位於 Claude Code 的暫存目錄下,而不是 ~/.claude。找到你的平台的目前工作階段路徑:
- 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。如果你設定 CLAUDE_CODE_TMPDIR,樹會改為移到該目錄下。Hooks 接收目前工作階段的路徑作為 scratchpad_dir。
暫存簿檔案的持續時間與工作階段的文字記錄相同:保留掃描 在刪除文字記錄時刪除目錄,claude project purge 不會觸及暫存目錄。因為目錄位於系統暫存位置下,你的作業系統也可以清除它,例如在重新啟動時。要保留 Claude 在那裡寫入的內容,請要求 Claude 將其移到你的專案中。
工作階段只有在以下所有情況都成立時才有暫存簿:
- 你使用 claude.ai 帳戶而不是 API 金鑰登入
- 工作階段使用 Anthropic API,而不是 Amazon Bedrock、Google Cloud 的 Agent Platform 或 Microsoft Foundry
enableArtifact未設定為false
保留直到你刪除它們
保留清理掃描不會移除下列路徑。Claude Code 保留它們直到你刪除它們,除了兩個快取在你登出時刪除。
其他檔案根據你使用的功能而出現。快取和鎖定檔案可以安全刪除。保留這些狀態檔案:
純文字儲存
文字記錄和歷史在靜止時未加密。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 project purge 以刪除 Claude Code 為一個專案保存的狀態。它刪除:
projects/下的文字記錄和自動記憶- 每個工作階段的
tasks/、debug/和file-history/項目 history.jsonl中的匹配提示行- 專案在
~/.claude.json中的項目
~/.claude,所以清除不會移除它們。保留掃描 仍會在圖片年齡超過 cleanupPeriodDays 時刪除它們;清除的工作階段的暫存簿會保留,直到你刪除它或你的作業系統清除暫存目錄。
該命令列印完整的刪除計畫並在移除任何內容之前要求確認。
下面的範例使用 ~/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 以逐項逐步執行刪除計畫。
該命令保留 shell-snapshots/ 和 backups/ 不動,因為那些不是專案範圍的,並在計畫輸出中警告它們。
你也可以手動刪除上述任何應用程式資料路徑,除了 保留的狀態檔案。新工作階段不受影響。下表顯示你對過去工作階段失去的內容。
不要刪除
~/.claude.json、~/.claude/settings.json 或 ~/.claude/plugins/:那些保存你的驗證、偏好設定和已安裝的外掛程式。
相關資源
- 管理 Claude 的記憶:寫入和組織 CLAUDE.md、rules 和自動記憶
- 設定設定:設定權限、hooks、環境變數和模型預設值
- 建立 skills:建立可重複使用的提示和工作流程
- 設定 subagents:定義具有自己上下文的專門代理