Claude Code 实战-2.3 添加上下文

当用 Claude 处理编码项目时,管理上下文至关重要。你的项目可能有几十到数百个文件,但 Claude 只需要正确的信息来高效帮助你。过多无关的上下文会降低 Claude 的表现,因此学会引导它关注相关文件与文档很重要。

/init 命令

在新项目中首次启动 Claude 时,运行 /init。这会让 Claude 分析整个代码库并理解:

1.项目的目的与架构

2.重要命令与关键文件

3.编码模式与结构

分析完成后,Claude 会生成摘要并写入 CLAUDE.md 文件。Claude 请求创建该文件时,你可以按 Enter 逐次批准写入,或按 Shift+Tab 允许 Claude 在本会话中自由写文件。

CLAUDE.md 文件

CLAUDE.md 有两个主要作用:

1.引导 Claude 浏览你的代码库,指出重要命令、架构与编码风格

2.允许你给 Claude 提供具体或自定义的指示

该文件会被包含在你对 Claude 的每次请求中,相当于项目的持久系统提示。

CLAUDE.md 的位置

Claude 识别三种常见位置的 CLAUDE.md 文件:

1. CLAUDE.md——由 /init 生成,提交到版本控制,与其他工程师共享

2. CLAUDE.local.md——不与其他工程师共享,包含你个人的指令与定制

3. ~/.claude/CLAUDE.md——适用于你机器上的所有项目,存放希望 Claude 在所有项目中遵循的指令

添加自定义指令

你可以在 CLAUDE.md 中添加指令来定制 Claude 的行为。比如,如果 Claude 对代码添加了过多注释,你可以在文件中进行约束。

使用 # 命令进入“记忆模式”,智能编辑你的 CLAUDE.md。例如输入:

# Use comments sparingly. Only comment complex code.

Claude 会自动将这条指令合并进 CLAUDE.md。

用 ‘@’ 提及文件

当需要 Claude 查看特定文件时,使用 @ 加文件路径。这样该文件内容会自动包含在对 Claude 的请求中。

例如,你想询问认证系统且知道相关文件,可以输入:

How does the auth system work? @auth

Claude 会显示与认证相关的文件列表供你选择,然后将所选文件纳入对话。

在 CLAUDE.md 中引用文件

你也可在 CLAUDE.md 里用相同的 @ 语法直接提及文件,这对在项目多处都相关的文件尤其有用。

例如,若有定义数据结构的数据库 schema 文件,你可以加入:

The database schema is defined in the @prisma/schema.prisma file. Reference it anytime you need to understand the structure of data stored in the database.

以这种方式提及文件后,其内容会自动包含在每次请求中,Claude 可立即回答有关数据结构的问题,而无需每次再搜索并读取该 schema 文件。

发表回复