Claude 代码
管理Claude的内存
了解如何通过不同的内存位置和最佳实践在会话之间管理Claude Code的内存。
Claude Code可以在会话之间记住您的偏好,如样式指南和工作流程中的常用命令。
确定内存类型
Claude Code提供三种内存位置,每种位置服务于不同的目的:
内存类型 | 位置 | 目的 | 使用案例示例 |
---|---|---|---|
项目内存 | ./CLAUDE.md | 团队共享的项目指令 | 项目架构、编码标准、常见工作流程 |
用户内存 | ~/.claude/CLAUDE.md | 适用于所有项目的个人偏好 | 代码样式偏好、个人工具快捷方式 |
项目内存(本地) | ./CLAUDE.local.md | 个人项目特定偏好 | (已弃用,见下文) 您的沙盒URL、首选测试数据 |
启动Claude Code时,所有内存文件都会自动加载到其上下文中。
CLAUDE.md导入
CLAUDE.md文件可以使用@path/to/import
语法导入其他文件。以下示例导入了3个文件:
相对路径和绝对路径都是允许的。特别是,导入用户主目录中的文件是一种方便的方式,让您的团队成员提供未签入存储库的个人指令。以前的CLAUDE.local.md服务于类似目的,但现在已被导入功能所取代,因为它们在多个git工作树中工作得更好。
为避免潜在冲突,导入不会在markdown代码段和代码块内部进行评估。
导入的文件可以递归地导入其他文件,最大深度为5跳。您可以通过运行/memory
命令查看加载了哪些内存文件。
Claude如何查找内存
Claude Code递归读取内存:从当前工作目录开始,Claude Code递归向上到_/_并读取它找到的任何CLAUDE.md或CLAUDE.local.md文件。这在处理大型存储库时特别方便,例如当您在_foo/bar/_中运行Claude Code,并且在_foo/CLAUDE.md_和_foo/bar/CLAUDE.md_中都有内存。
Claude还会发现嵌套在当前工作目录下子树中的CLAUDE.md。它们不会在启动时加载,而是仅在Claude读取这些子树中的文件时才包含进来。
使用#
快捷方式快速添加内存
添加内存的最快方法是以#
字符开始您的输入:
系统将提示您选择要将此内存存储在哪个内存文件中。
使用/memory
直接编辑内存
在会话期间使用/memory
斜杠命令在系统编辑器中打开任何内存文件,以进行更广泛的添加或组织。
内存最佳实践
- 具体明确:“使用2空格缩进”比”正确格式化代码”更好。
- 使用结构来组织:将每个单独的内存格式化为项目符号,并在描述性的markdown标题下对相关内存进行分组。
- 定期审查:随着项目的发展更新内存,确保Claude始终使用最新的信息和上下文。