Claude Code 最佳实践
CC 本身是一个 Unix 工具
- CC 可以跑在服务器上面,做运维
- 把 Claude 放在管道(Pipe)中
cat code.py | claude -p '分析此代码中的错误' --output-format json > analysis.json- 可以在脚本里面写循环来调用 CC 批处理多个任务
CC 应该被并发使用,把人类的大脑 CPU 打满
- 可以使用 git worktree 并发提 PR
# 创建新的工作区 project-auth 并关联上 feature/auth 分支
# 如果这个分支不存在,会自动创建
git worktree add -b feature/auth ../project-auth feature/current_branch
git worktree add -b feature/ui-redesign ../project-ui feature/current_branch- 甚至可以多配一台电脑
双击 ESC 可以回到任意节点
必要的 MCP 与 Plugin
Sequential-Thinking MCP
claude mcp add -s user -- sequential-thinking npx -y @modelcontextprotocol/server-sequential-thinkingTavily MCP
claude mcp add --transport http tavily https://mcp.tavily.com/mcp
Context7 Plugin
/plugin marketplace add upstash/context7
/plugin install context7-plugin@upstash-context7CC 的上下文工程
- PreToolUse Hook
- PostToolUse Hook
- Stop Hook — 后面爆火 plugin 的主角
拥抱 CC 的插件生态
Anthropic 把以前 commands、subagents、skills、mcps 的功能都打包到了 plugins 中。
对于使用者来说只需要关心自己需要什么功能——背后是 skills 还是 commands 实现不用再关心,plugins 也成为目前最大的一个概念,并且可以通过市场自由插拔。
使用 /plugin 先添加市场,之后选择需要的插件添加。
给 Agent 的代码规范
我的 Claude.md 最后就保留了如下 Prompt:
同时沉淀了大量的历史设计、系分文档以及最佳实践。
确保架构设计没有问题
对于重要的需求文档、架构文档、数据结构设计,需要反反复复让LLM. 反复确认,可能需要打开多个窗口、使用不同的模型(Claude Opus、GPT5.2 hign 等)十几轮优化、确认原文档没有问题。
再套一层 Loop?
Claude Code 本身是 Loop 组成的智能体,并且内部自带 Loop。
而人类在使用 Claude Code 的过程中,提需求-规划-实现-review-再提需求…本身也是一个 Loop,这也是 Human-In-The-Loop 的泛化版。自然地,借助 Stop Hook,我们可以强制 CC 每次在其自然停下的时候都让其反思任务是否已经完成,如果没完成就必须继续 Loop:
/ralph-loop "Fix xxx" --max-iterations 10 --completion-promise "FIXED"这个命令表示让模型修复 xxx,一直到 CC 认为自己修复完成显式输出 “FIXED” 才会停止,最大迭代 10 次。
安装 ralph-loop
使用 /plugin 命令:
/plugin marketplace add anthropics/claude-code
/plugin install ralph-wiggum@anthropics-claude-code再套一个 Agent Loop?
ralph-loop很不错,但缺点也很明显——单纯让 CC 自己反思,并不能给 CC 指导性的意见,并不能真的像我们自己一样 review CC 每次停下来的输出,或者当 CC 问你要 A 还是 B 方案的时候,给 CC 一个方案。
解决办法就是在最外面的 Loop 里面再加一个 Agent,这个 Agent——Supervisor 将真正扮演我们自己的角色。它会 Fork 完整的会话上下文,评估实际的工作质量,而不是简单检测一些关键词或信号。
Supervisor 会检查:
- Agent 是否在等待用户确认?
- 是否做了应该自己做的事?
- 代码质量是否达标?
- 用户需求是否全部满足?
当然这个比较大的问题就是我们的决策权也一并交给 CC 了。当 CC 给出选项 A、B、C 的时候,我们的分身或许能根据当下情况选好 A、B、C,但目前应该还是不能真的像人一样提出 D 的选项给 CC。
Ralph 与 Supervisor 的比较
| 方面 | Ralph | CCC(Supervisor) |
|---|---|---|
| 检测方式 | AI 输出结构化状态 + 规则解析 | Supervisor AI 直接审查 |
| 评估方式 | 基于信号和规则 | Fork 会话上下文评估实际质量 |
| 灵活性 | 需要更新规则代码 | 更新 Prompt 即可 |
结论: 不过复杂场景,AI 归根结底不能代替人做判断。这是人的核心竞争力所在。