下拉查看上一篇

Claude Code 实战指南:从入门到高效协作的最佳实践


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

Claude Code 实战指南

配图: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 将探索与执行分开:

  1. 探索:进入 Plan Mode(按 Shift+Tab),让 Claude 只读地阅读代码并回答问题。例如 read /src/auth and understand how we handle sessions。
  2. 规划:要求 Claude 输出详细实现计划。按 Ctrl+G 可以在编辑器中直接修改计划。
  3. 实现:切回 Normal Mode,让 Claude 按计划编码并自我验证。
  4. 提交:让 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 Code Auto Mode

自动化与水平扩展

一旦你掌握了"一个 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 内部和外部工程师反复验证的起点——真正的直觉需要在实际使用中慢慢培养:注意什么有效、什么无效,并随时调整你的工作流。

参考来源

评论

上滑查看下一篇