作者 | 超人🦸♀️不会飞
"2024 年 9 月,我把 Claude Code 当作一个业余项目创建出来时,完全没想到它会发展成今天的样子"。此时Claude Code已经是一个ARR 10亿美金的项目了,
Claude Code的作者Boris在X上分享:“在过去的三十天里,我提交了 259 个 PR——497 次提交,新增 4 万行代码,删除 3.8 万行代码。每一行代码都出自 Claude Code + Opus 4.5 之手。Claude 会持续运行数分钟、数小时甚至数天(使用停止Hook)。软件工程正在变革,我们正在步入编码历史的新篇章。而我们才刚刚起步……”
1月3日,Boris在X上分享了他是如何用 Claude Code,并简单展示了一些他自己的配置,一共13条建议,我已经整理好了,小伙伴可以试试是不是可以显著提升Claude Code的使用体验。
第一条
我一般会在终端中同时运行 5 个 Claude 进程,并依次将tab页编号为1-5,同时使用系统通知来知道什么时候哪个 Claude 进程需要输入信息了:
第二条
除了本地的 Claude 实例外,我同时还会在claude.ai/code 网站上运行 5到10个 Claude 实例 。当我在终端编写代码时,经常会将本地会话切换到 Web 端(使用 & 参数),或者在 Chrome 浏览器中手动启动会话,有时还会使用 --teleport 参数命令在本地和 Web 端之间来回切换。此外,我每天早上和白天都会从手机(通过 Claude iOS 应用)启动几个会话,之后再查看它们的运行情况。
第三条
我喜欢使用 Opus 4.5 并结合 Thinking for Everything模式。这是我用过的最好的编码模型,尽管它比 Sonnet 更大更慢,但由于它需要的干预操作更少,而且工具使用更高效,所以它最终总是比使用更小的模型更快。
第四条
我们团队共享一个单独的用于 Claude Code 代码库的 CLAUDE.md 文件。我们会将其提交到 Git,整个团队每周都会多次提交代码。每次当我们发现 Claude犯了错误,我们都会将其错误添加到 CLAUDE.md 文件中 ,以便 Claude 下次避免犯同样的错误。
其他团队则维护着自己的CLAUDE.md文件 。团队的每个成员都有义务工作保持其CLAUDE.md文件内容及时更新。
第五条
在代码审查期间,我经常会在同事的 PR 中标记 @.claude,以便将一些内容添加到CLAUDE.md 文件中。我们使用 Claude Code Github action (/install-github-action) 来实现这一点。这是我们版本中的 danshipper的Compounding Engineering
第六条
大多数会话都从Plan模式(Shift+Tab 两次)下开始的。如果我的目标是提交一个 Pull Request,我会使用Plan模式,然后和 Claude 反复沟通,直到我对Plan满意为止。之后,我会切换到自动接受修改模式,Claude 通常可以一次性完成。一个好的Plan真的非常重要!
第七条
我在所有需要每天多次执行的“inner loop”工作流程中都使用斜杠命令。这避免了我重复的prompting,也同样使得 Claude 能学会使用这些工作流程。这些命令已提交到 git 仓库,并位于 .claude/commands/ 目录下。
例如,我和 Claude 每天都会使用数十次 /commit-push-pr斜杠命令。该命令使用内联的 bash命令来预先计算 git 的状态和其他信息,以使命令运行速度更快,并避免与模型来回交互。
第八条
我经常使用一些subagents,例如:code-simplifier 会在 Claude 完成工作后的简化代码操作,verify-app 会提供详细的端到端 Claude 代码测试指南,等等。也类似于斜杠命令,我认为subagents的作用是自动化我平时处理大多数 PR 时最常用的工作流程。
第九条
使用 PostToolUse 钩子函数来格式化 Claude 生成的代码。Claude 通常能自动生成格式良好的代码,而该钩子函数会处理剩下10%的代码,以避免后续在持续集成 (CI) 过程中出现格式错误。
第十条
我不使用 `--dangerously-skip-permissions` 这个参数。相反,我喜欢使用 `/permissions` 参数来允许Claude预执行一些我知道的且在我的环境中安全的常用 bash 命令,以避免一些不必要的权限提示。这些配置大部分都已提交到 `.claude/settings.json` 文件中,并与团队共享。
第十一条
Claude Code 会为我使用所有工具。它经常搜索信息并发布到 Slack(通过 MCP 服务器),运行BigQuery查询来回答分析问题(使用 bq CLI),从 Sentry 获取错误日志等等。Slack MCP 配置已添加到我们的 .mcp.json 文件中,并与团队共享。
第十二条
对于耗时很长的任务,我通常会采取以下三种方法中的任何一起:(a) 任务完成后,提示 Claude 使用后台agent验证其运行情况;(b) 使用agent的Stop Hook以更确定的方式进行验证; (c) 使用 ralph-wiggum 插件(最初由GeoffreyHuntley构思得到)。
我还会在沙盒中使用 --permission-mode=dontAsk 或 --dangerously-skip-permissions 来避免会话的权限提示,这样 Claude 就可以不受我的限制地进行尽情发挥。
第十三条
最后一点建议:要想让 Claude Code 发挥最佳效果,最重要的一点是——给 Claude提供验证其运行结果的方法。如果 Claude 一旦拥有了这种反馈机制,最终结果的质量将提升 2-3 倍。Claude会仔细检查我所做的每一次改动。
使用 Claude浏览器扩展程序访问claude.ai/code 。它会打开浏览器,测试用户界面,并不断迭代,直到代码运行正常且用户体验良好。
每个领域的验证方式都不尽相同。它可能很简单,只是运行一个 bash 命令,或者运行一套测试套件,或者在浏览器或手机模拟器中测试应用程序。务必确保验证过程万无一失。