Claude Code 是 Anthropic 推出的命令行式代理编码工具,与传统聊天机器人不同,它能够主动读取文件、运行命令、修改代码,并在你旁观、纠正甚至完全离开时自主完成任务。它改变了"自己写代码、让 AI 审查"的旧模式,转而让开发者描述想要什么,由 Claude 自己探索、规划并实现。但这种自主性也带来了学习曲线——理解它的边界和最佳实践,决定了你能从它身上获得多大的杠杆。本文整理了 2026 年官方文档中已被 Anthropic 内部团队和大量工程师验证有效的核心模式。

配图:Anthropic 官方 Claude Code 产品页 OG 图。
一切围绕 Context Window 展开
几乎所有最佳实践都源自一个核心约束:Claude 的 context window(约 200K tokens)会快速被填满,而填满之后性能就会显著下降。一次复杂的调试会话或代码库探索可能会消耗数万 token,模型可能开始"忘记"早期指令、犯更多错误。
因此,Context 是你最重要的资源。官方建议使用自定义 statusline 持续追踪 context 使用情况,并主动通过 /clear、/compact 来管理。在不相关任务之间频繁运行 /clear 完全重置 context,远比在长会话里堆积无关历史更高效。
如果想精细控制压缩内容,可以使用 /compact <instructions>,例如:
/compact Focus on the API changes
或者使用 Esc + Esc 打开 rewind 菜单,从某条消息开始重新总结。
给 Claude 一种验证自己工作的方式
这是杠杆率最高的一条建议:Claude 在能验证自己工作时表现显著更好。没有明确的成功标准,它可能产出"看起来正确但实际上不工作"的代码,最终唯一的反馈循环就是你自己。
| 场景 | 模糊提示 | 优秀提示 |
|---|---|---|
| 函数实现 | "实现一个验证邮箱的函数" | "编写 validateEmail 函数。测试用例:[email protected] 为真,invalid 为假,[email protected] 为假。实现后运行测试" |
| UI 修改 | "让仪表板看起来更好" | "[粘贴截图] 实现此设计。完成后截图与原图对比,列出差异并修复" |
| 修复错误 | "构建失败" | "构建失败,错误如下:[粘贴]。修复并验证构建成功,要解决根因,不要抑制错误" |
UI 改动可以通过 Chrome 中的 Claude 扩展自动迭代验证。命令行项目则建议接入测试套件、linter 或 bash 输出检查。
探索 → 规划 → 编码 的四阶段工作流
让 Claude 直接跳入编码,往往会产出"解决了错误问题"的代码。官方推荐的工作流分为四个阶段,使用 Plan Mode 将探索与执行分开:
- 探索:进入 Plan Mode(按
Shift+Tab),让 Claude 只读地阅读代码并回答问题。例如read /src/auth and understand how we handle sessions。 - 规划:要求 Claude 输出详细实现计划。按
Ctrl+G可以在编辑器中直接修改计划。 - 实现:切回 Normal Mode,让 Claude 按计划编码并自我验证。
- 提交:让 Claude 用描述性 commit message 提交并开 PR。
但 Plan Mode 也有开销。对于范围明确的小修改(修拼写、加日志、重命名变量),直接执行更快。规划真正发挥威力的场景,是当方法不确定、改动跨多个文件、或者你不熟悉被修改的代码时。
编写有效的 CLAUDE.md
CLAUDE.md 是 Claude 在每次对话开始时都会读取的文件,承载着无法从代码本身推断的持久上下文。运行 /init 可以让 Claude 分析当前项目结构生成初版。
但膨胀的 CLAUDE.md 会让 Claude 忽略你的实际指令。对每一行都问自己:"删除这个会让 Claude 犯错吗?"如果不会,就删掉。
| ✅ 应该包含 | ❌ 应该排除 |
|---|---|
| Claude 无法猜到的 bash 命令 | Claude 读代码就能搞清楚的事 |
| 与默认值不同的代码风格规则 | 标准语言约定 |
| 测试指令和首选 runner | 详细 API 文档(链接到原文档) |
| 仓库礼仪(分支命名、PR 约定) | 经常变化的信息 |
| 项目特有的架构决策 | 长篇教程 |
CLAUDE.md 也支持通过 @path/to/import 语法导入其他文件,并且可以放在多个位置(用户主目录、项目根、子目录),按层级自动加载。
提供丰富、具体的上下文
Claude 能推断意图,但不能读心。你的指令越精确,需要的纠正就越少:
- 使用
@引用文件,而不是描述位置——Claude 会在响应前先读取 - 粘贴图像:直接复制粘贴或拖拽到提示框
- 提供 URL:使用
/permissions把常用域名加入允许列表 - 管道数据:
cat error.log | claude直接发送内容 - 限定调查范围:避免无止境探索消耗 context,可以显式让 subagent 来研究
使用 Subagents 隔离 Context
由于 context 是根本约束,subagents 是最强大的工具之一。当 Claude 研究代码库时,它读取的所有文件都会消耗主对话的 context。Subagents 在独立的 context window 中运行,只把摘要返回给主对话:
Use subagents to investigate how our authentication system handles token
refresh, and whether we have any existing OAuth utilities I should reuse.
也可以用 subagent 做"事后审查":让一个 Claude 实现功能,另一个全新 context 的 Claude 来审查边界情况,避免它偏向自己写过的代码。

自动化与水平扩展
一旦你掌握了"一个 Claude"的用法,下一步是通过并行会话和非交互模式扩大产出。
非交互模式适合 CI、pre-commit hook 或脚本:
claude -p "Explain what this project does"
claude -p "List all API endpoints" --output-format json
claude -p "Analyze this log file" --output-format stream-json
Writer/Reviewer 并行模式:会话 A 编写实现,会话 B 在干净 context 中审查,再把反馈回传给会话 A 修复。Claude Code 桌面应用、网页版以及 Agent teams 都支持并行会话管理。
跨文件扇出:对大型迁移任务,可以让 Claude 先生成文件清单,再循环调用:
for file in $(cat files.txt); do
claude -p "Migrate $file from React to Vue. Return OK or FAIL." \
--allowedTools "Edit,Bash(git commit *)"
done
--allowedTools 在无人值守运行时尤其重要,能限定 Claude 的操作范围。
常见失败模式与应对
- 厨房水槽会话:在一个会话里穿插无关任务,context 被污染。修复:在不相关任务之间
/clear。 - 反复纠正:连续两次纠正同一个问题后,context 已被失败方法污染。修复:
/clear后用一个包含已学经验的更好初始 prompt 重新开始。 - 过度指定的 CLAUDE.md:太长会导致重要规则被噪声淹没。修复:无情修剪。
- 信任但不验证:实现"看起来合理"但没处理边界情况。修复:始终提供测试、脚本或截图作为验证依据。
- 无限探索:让 Claude "调查"却不限定范围。修复:缩小调查范围,或交给 subagent。
总结
Claude Code 的高效使用,本质上是关于 context 的纪律:让模型在干净、聚焦的上下文里工作;通过验证机制让它能自我纠错;在探索阶段使用 Plan Mode 和 subagents 隔离噪声;并通过并行会话和非交互模式实现水平扩展。这些模式不是教条,而是经过 Anthropic 内部和外部工程师反复验证的起点——真正的直觉需要在实际使用中慢慢培养:注意什么有效、什么无效,并随时调整你的工作流。
评论