Claude Code创建者的开发工作流程

来源: InfoQ 话题 - 大前端

原文

Claude Code的创造者Boris Cherny描述了他如何在Anthropic上使用Claude Code,强调了诸如运行并行实例、共享学习成果、自动化提示和严格验证结果等实践,以随着时间的推移提高生产力。

Cherny没有定制Claude Code,因为他发现它开箱即用,非常好用,可以并行运行许多会话,包括在他的MacBook终端本地运行的5个会话和在Anthropic的网站上运行的5-10个会话。为了避免冲突,每个本地会话使用自己的 git checkout ,而不是分支或工作树。他从CLI开始与 & 进行远程会话,并经常使用 -teleport 将它们来回移动。然而,由于意外情况,这些会话中有10-20%被放弃了。

Cherny更喜欢使用Opus 4.5进行所有编码工作,他重视其比Sonnet更高的质量和可靠性,尽管Sonnet的速度较慢。他还发现Opus更擅长使用工具,并指出其总体上比小模型更快。

Anthropic的每个团队都在git中维护一个 CLAUDE.md 文件,以便Claude可以随着时间的推移而改进,以及最佳实践,如风格约定、设计指南、PR模板等。Cherny经常经常在同事的PR上使用 @.claude 标签,将学习成果添加到 CLAUDE.md 中,确保每个PR的知识都被保存下来。Cherny说,目前,他们的 CLAUDE.md 有2.5k的token。

他的工作流程的一个关键方面是,先制定一个计划,然后迭代完善,再切换到自动编辑:

如果我的目标是写一个Pull Request,我会使用Plan模式,然后和Claude来回交流,直到我喜欢它的计划。从那里,我切换到自动接受编辑模式,Claude通常可以一次性完成。一个好的计划真的很重要!

Cherny使用斜杠命令执行提交、PR、简化和验证等日常工作流程来启动子智能体。所有的命令都存储在 .claude/commands/ 中,这也有助于减少对明确提示的需求。

例如,Claude和我每天使用/commit-push-pr斜杠命令数十次。该命令使用内联bash预先计算git状态和其他一些信息,以使命令快速运行,并避免与模型来回切换。

虽然Claude的代码通常格式良好,但不一致有时会导致CI失败。为了防止这种情况发生,Cherny运行了一个PostToolUse钩子来清理代码:

"PostToolUse" : [
     "matcher": "WritelEdit",
      "hooks": [         
        {             
          "type": "command",             
          "command": "bun run format || true"         
        }     
      ]

出于安全考虑,Cherny几乎从不使用 --dangerously-skip-permissions 。相反,他通过 /permissions 启用在他的环境中安全的常用bash命令。这省去了他在诸如 bun run build:* 、 bun run test:* 、 cc:* 等命令上不必要的许可提示。他使用 --dangerously-skip-permissions 的唯一情况是在沙箱中运行长期任务,以防止Claude重复停止。

最重要的技巧是给Claude提供一种通过反馈循环验证其工作的方法,例如运行bash命令、测试套件、或通过浏览器或模拟器测试应用程序。这可以将最终结果的质量提高2-3倍:

Claude会使用Claude Chrome扩展测试我给他的每一个claude.ai/code变更。它打开一个浏览器,测试UI,不断迭代,直到代码正常运行,用户体验很好。

总的来说,Cherny解释说,这种工作流程让他的团队专注于代码审查和指导,并指出当工程师阅读PR时,代码已经处于良好的可用状态。

Cherny的推文在X.com上引发了广泛的讨论,包括一些我们在这里包含的有用澄清,但请务必阅读原文以了解全部细节。

原文链接:

https://www.infoq.com/news/2026/01/claude-code-creator-workflow/