Mitchell Hashimoto 的全新代码编写方式
Mitchell Hashimoto 如何始终保持智能体运行
Mitchell Hashimoto — HashiCorp 联合创始人、Terraform 创建者,目前正在构建 Ghostty — 在 Gergely Orosz 的 The Pragmatic Engineer 节目上分享了一套经过深思熟虑的 AI 辅助开发方法论。这不是炒作或空话。这是一位拥有 20 年经验的从业者描述他如何从根本上围绕 AI 智能体重组了他的日常工作流程。
核心纪律: “I endeavor to always have an agent doing something at all times. I want an agent if I’m coding, I want an agent planning. If they’re coding, I want to be reviewing. There should always be an agent doing something.”(我努力始终让智能体做一些事情。如果我在编码,我想要一个智能体在规划。如果它们在编码,我想要在审查。应该总是有一个智能体在做什么。)
在每次转换之前 — 离开家,开车去某个地方,停止工作 — Mitchell 花 30 分钟思考:“我的智能体接下来还有什么缓慢的工作可以做?“他给智能体分配研究任务、库评估和不需要实时关注的边界情况分析。最关键的是,他关闭了所有智能体通知:“我选择何时中断智能体。它没有权利打断我。”
关于 AI 真正给你什么: “It’s really allowed me to choose what I want to actually think about. I always felt limited — I’m going to have to spend the next two hours doing this boilerplate. But now I don’t have to learn about it.”(它真正让我能够选择我想思考的内容。我总是感到受限 — 我将不得不花接下来的两个小时做这个样板代码。但现在我不必学习它。) 这不是关于生成更多代码。这是关于将认知能力重新定向到重要的工作上。
工具工程:复合质量策略
Mitchell 对 AI 编码讨论的最原创贡献是工具工程 — 他对构建智能体可以调用的工具的术语,以防止重复错误。
模式: 当智能体出现错误时,与其仅仅纠正它,不如构建一个测试工具、验证脚本或 linting 规则,智能体可以调用来自我检查。将规则添加到你的 CLAUDE.md 或 agents.md 文件。智能体永远不会再犯那个具体的错误。
这会随着时间复合。 每个会话改进工具。每个工具改进使后续智能体会话更可靠。Mitchell 将这个称为他 2026 年的关键目标之一,并认为它是使用 AI 智能体的团队的关键基础设施投资。
扩展的测试要求: AI 是”目标导向的” — 它会在其当前任务范围之外破坏东西以实现其直接目标。这意味着测试覆盖范围需要比仅人工开发充分得多。每个 AI 错误应该导致工具改进,而不仅仅是修复。
上下文相关质量:从零审查到每一行
Mitchell 根据项目应用完全不同的质量标准:
- Ghostty(开源终端,长期维护):审查每一行 AI 生成的代码。每帧 9 微秒的性能很重要。
- 一次性项目(家庭婚礼网站):零代码审查。“它在三个浏览器中渲染正确吗?上线吧。它只会在线 2 个月。”
这种实用主义延伸到竞争性智能体运行。对于信心低的难题,他并行运行两个智能体 — Claude Code 与 Codex — 并选择更好的结果。他把自己描述为”市长”,最多管理两个智能体。
Git 为什么可能无法在智能体时代存活
最具煽动性的预测:“This is the first time in like 12 to 15 years that anyone is even asking that question — will Git be around? — without laughing.”(这是大约 12 到 15 年以来第一次有人在不笑的情况下问那个问题 — Git 还会存在吗?)
Mitchell 辩称 Git 和 GitHub forges “不适用于当今的智能体基础设施”。当智能体变动率是人类变动率的 10-100 倍时,合并队列变得不可能,磁盘空间爆炸,人工审查员无法跟上。他为一家正在专门解决这个问题的隐身公司提供建议。
他对版本控制未来的愿景:保留更多分支、失败的实验和历史 — 永不删除。这是”版本控制的 Gmail 时刻”。但它需要根本上更好的工具来在大型存储库中找到相关上下文。
AI 生成的开源贡献正在破坏信号
Ghostty 每天收到 2-3 个低质量的 AI 生成的 PR。Mitchell 现在如果没有关联的问题编号就关闭它们,甚至不读。“AI makes it trivial to create plausible looking but incorrect and low-quality contributions. Open source has always been a system of trust. Before we had default trust. Now it’s default deny.”(AI 使创建看起来合理但不正确和低质量的贡献变得微不足道。开源一直是一个信任系统。之前我们有默认信任。现在是默认拒绝。)
他希望智能体工具能够”暂停打开 PR” — 它们对维护者造成的摩擦超过了对贡献者的便利。他甚至识别出 Claude 的特征:打开一个没有正文的草稿 PR,编辑正文,然后重新打开它 — 这是没有人类会遵循的模式。
Mitchell Hashimoto AI 工作流程的 6 条原则
- 始终运行智能体 — 利用转换(开车、休息、一天结束)来排队缓慢的智能体任务。智能体在工作时间内不应该闲置
- 将规划与执行分开 — 在智能体编码之前专门的规划步骤大大提高了输出质量
- 构建工具,而不仅仅是修复 — 每个智能体错误应该产生防止重复发生的工具,而不仅仅是更正
- 选择你思考的内容 — AI 的价值不是每小时更多代码,而是将认知能力重新定向到架构、设计和用户需求
- 上下文相关的审查严格性 — 生产代码获得逐行审查;一次性原型获得零审查。将工作量与风险相匹配
- 投资学习曲线 — “就像有人试用 Git 一小时然后决定它没有生产力一样。成为熟练需要持续的努力”
这对工程组织意味着什么
Mitchell 将 AI 的价值框架化为不是原始生产力收益,而是扩展的实验能力。曾经需要一周的概念验证现在可以在一天内完成。但他明显谨慎:“I hesitate to say more productive. There’s an expectation they could do more. You should be able to build a full demo, design, everything — you don’t need a team to do that anymore.”(我犹豫是否说更有生产力。有一种期望他们可以做更多。你应该能够构建完整演示、设计、所有东西 — 你不再需要一个团队来做这个。)
对于组织,含义是具体的:在招聘中要求 AI 工具能力,将智能体配置文件(CLAUDE.md)视为一流基础设施,投资工具工程,并接受 CI/CD 管道需要根本重新思考以处理 AI 生成代码要求的扩展测试。工程基础设施中的一切 — 编辑器、forges、CI/CD、测试、可观察性、沙箱 — 都在一次改变的范围内。正如 Mitchell 所说:“这是我 20 年职业生涯中第一次这么多东西同时在改变范围内。”