本文根据 Claude Code 官方文档《Explore the .claude directory》《Manage sessions》《Authentication》整理,资料核对于 2026-11-05。配图为本站整理的示意图,不是界面截图。本站(bigolab.com)不是 Anthropic 官方网站。
适用于谁
- 搜「claude code 历史记录在哪」「claude code 文件夹在哪」,想找到会话记录的人;
- 想清理磁盘、又怕误删设置和登录信息的人;
- 想知道自己的对话内容有没有明文留在电脑上的人。
结论先说
- 用户级的东西都在
~/.claude,Windows 上就是%USERPROFILE%\.claude。设置了环境变量CLAUDE_CONFIG_DIR,则都改到那个目录下;~/.claude.json也一样。 - 会话记录在
~/.claude/projects/<项目>/<会话 ID>.jsonl;你输入过的提示在~/.claude/history.jsonl。 - 项目级的东西在你项目里的
.claude/文件夹,以及项目根目录的CLAUDE.md、.mcp.json。 - 默认超过 30 天的会话记录等会被自动清理,由设置项
cleanupPeriodDays控制;history.jsonl这类则不会被自动清。 ~/.claude.json、~/.claude/settings.json、~/.claude/plugins/官方明确说不要删,里面有账号信息、偏好和已装插件。- 这些文件是明文,没有加密,对话里出现过的文件内容、命令输出都可能在里面。

图:本站根据 Claude Code 官方文档:Explore the .claude directory 整理的示意图
一、会话记录和提示历史
会话记录的完整路径是 ~/.claude/projects/<项目>/<会话 ID>.jsonl,其中 <项目> 是你启动时所在目录的路径,把非字母数字的字符都换成 -(例如 /Users/you/my-project 会变成以 -Users-you-my-project 为名的文件夹)。里面是对话消息、工具调用和结果,以及 Claude Code 发给模型的请求。会话怎么恢复见 /guides/claude-code-resume-history,导出成文字见 /guides/claude-code-export-conversation-context。
~/.claude/history.jsonl 存的是你输入过的提示,附时间戳和项目路径,用于按 ↑ 召回、Ctrl+R 搜索历史和 ! 开头的 shell 命令补全。
同一个项目下还有这些子目录,官方说它们和会话记录一起按保留期清理:
projects/<项目>/<会话>/subagents/:子代理的记录;projects/<项目>/<会话>/tool-results/:太大而单独存放的工具输出;file-history/<会话>/:Claude 改文件前的快照,/rewind靠它还原,见 /guides/claude-code-rewind-checkpoints-undo。
二、设置、凭据和其他个人文件
| 位置 | 作用 |
|---|---|
~/.claude/settings.json | 个人设置:权限、Hook、环境变量、模型默认值,详见 /guides/claude-code-settings-json |
~/.claude.json | 应用状态、账号信息、界面开关、个人 MCP 服务器 |
~/.claude/CLAUDE.md | 对所有项目生效的个人指令,写法见 /guides/claude-md-agents-md |
~/.claude/keybindings.json | 自定义快捷键 |
~/.claude/plugins/ | 已安装的插件和 marketplace |
~/.claude/projects/<项目>/memory/ | 自动记忆,官方说清理不会删它 |
~/.claude/stats-cache.json | /usage 用的汇总统计 |
登录凭据的位置,官方在认证文档里写明:macOS 存在加密的 Keychain(Keychain 拒绝写入时退回到 ~/.claude/.credentials.json);Linux 存在 ~/.claude/.credentials.json,文件权限 0600;Windows 存在 %USERPROFILE%\.claude\.credentials.json,沿用你用户目录的访问控制。官方说这个文件由 /login 和 /logout 管理,登录与退出见 /guides/claude-code-login-logout-switch-account。
三、项目里的 .claude 文件夹
项目级配置放在你的项目里,提交到 git 就能和团队共享:
- 根目录的
CLAUDE.md:每次会话都会加载的项目说明; .claude/settings.json:项目的权限、Hook、环境变量;.claude/settings.local.json:你个人对本项目的覆盖,官方说 Claude Code 往里存设置时会让它被 git 忽略;.mcp.json:团队共享的 MCP 服务器,配置见 /guides/claude-code-mcp-setup;.claude/skills/、.claude/agents/、.claude/rules/:技能、子代理和按主题写的规则。
四、保留多久、会不会被自动删
官方的规则:~/.claude 下的会话记录、子代理记录、工具输出、文件快照、调试日志等,超过 cleanupPeriodDays 就会被删,默认 30 天,最小值是 1,设成 0 会报校验错误。
不会被自动清理的包括:history.jsonl、stats-cache.json,以及 projects/<项目>/memory/ 下的自动记忆文件。想让快照和记录保留更久,就把 cleanupPeriodDays 调大;想缩短,调小。
图片和临时草稿目录不在 ~/.claude 里:官方说新版本把粘贴和附加的图片存到临时目录下每个会话的 images/ 里,会话草稿目录(scratchpad)在 Windows 上是 %TEMP%\claude\<项目>\<会话 ID>\scratchpad\。
五、想清理,先看会丢什么

图:本站根据 Claude Code 官方文档:Explore the .claude directory 整理的示意图
官方有一个专门的命令:claude purge,用来删除某个项目的状态。它会删这个项目的会话记录和自动记忆、对应的 tasks/、debug/、file-history/ 条目、history.jsonl 里属于该项目的提示行,以及 ~/.claude.json 里该项目的条目。用法:
bash
claude purge ~/work/my-repo --dry-run
claude purge ~/work/my-repo
第一条只预览删除计划,不真删;第二条会先打印同样的计划,再要求你确认([y/N])。省略路径则从交互列表里选;--all 清所有项目。官方说 v2.1.288 之前这条命令叫 claude project purge。
六、明文存储:注意什么
官方在文档里写明,转录和历史不加密,只有操作系统的文件权限保护它们。工具读到 .env 文件,或命令打印了凭据,这些值就会写进 .jsonl。官方给的降低风险的办法包括:缩短 cleanupPeriodDays;设环境变量 CLAUDE_CODE_SKIP_PROMPT_HISTORY 让任何模式下都不写转录和提示历史;用权限规则禁止读取凭据文件。权限规则的写法见 /guides/claude-code-stop-asking-permission。
常见问题
Q:Windows 的 ~ 是哪里?
官方说是 %USERPROFILE%,通常是 C:\Users\你的用户名。
Q:能把 .claude 搬到 D 盘吗?
官方给的做法是设置环境变量 CLAUDE_CONFIG_DIR,让所有 ~/.claude 下的路径改到那个目录。官方也说 .claude.json 会跟着走。
Q:删了 projects/ 会怎样?
官方的说法是:丢失过去会话的恢复、继续和回退,以及所有项目的自动记忆。
Q:想看某个会话的内容,直接打开 .jsonl 行吗?
可以打开看,但官方说格式是内部的、会随版本变化,不建议用脚本解析。
相关教程
参考资料
- Claude Code 官方文档:Explore the .claude directory — https://code.claude.com/docs/en/claude-directory
- Claude Code 官方文档:Manage sessions — https://code.claude.com/docs/en/sessions
- Claude Code 官方文档:Authentication — https://code.claude.com/docs/en/authentication
0 条评论
还没有评论,来抢沙发~