软件工厂不是让 AI 写代码,而是让人去造工厂

Dru Knox · Tessl 产品负责人 · 2026-10-09
听中文精华AI 合成朗读00:00
这就是工厂的核心思想:你团队里的每个人实际上都变成了内部工具构建者,然后你构建一个生产你产品的系统。
— Dru Knox

关联

Tessl 产品与设计负责人 Dru Knox 在这场演讲里,讲了一个正在硅谷快速成形的思路:

既然 AI 编程代理已经能干活,工程师的工作就该变了——不再亲手写产品代码,而是去建造和维护一条由代理组成的生产线。

他称之为软件工厂,而建造它的核心手艺,叫 harness engineering(也有人开始叫它 loop engineering)。以下内容适合已经在日常使用编程代理的团队。

什么是软件工厂?

Knox 给的定义很简单:

一个由代理系统产出所有最终交付给用户的产品的体系,而工程团队的职责是建造这个工厂,让它更自主、更自动、产出质量更高 。

换句话说,团队里每个人都变成了内部工具的开发者。

他强调,很多人把工厂当成快速上线更多功能、忍受一点低质代码的手段,但那只是短期现象。真正的回报是:

积压的缺陷修复、测试改进、架构重构,这些永远没时间做的事,在工厂模式下不再排队 ——待办清单这个概念本身就消失了。

而且非技术角色也更容易贡献想法,因为工程师在底层搭系统,其他人在上面提需求。

三个衡量指标:自主、自动、质量

自主(autonomy)指需要多少次人工纠偏——改代码、给提示——代理才能做对。自动化(automation)指你敢不敢不看代码直接接受结果。

两者听起来像,其实不同:代理可能经常一次做对(高自主),但你还不信任它,逐行审查(低自动化)。

必须先建立自主,才能推进自动化。质量则是最终产品的好坏,用常规的用户数据和测试覆盖率衡量。

路径是:先提自主,再提自动化,质量保持稳定,最后再拉升。

核心手艺:造三个循环

Harness engineering 的本质,是搭建让工厂自我改进的循环。Knox 把它拆成三个,对应开发的三个阶段。

内循环(inner loop):代理在提交代码前的快速迭代,循环要便宜、高频地跑,作用是不用人工出手就纠正代理,直接提升自主度 。

外循环(outer loop):代码提交之后才跑的昂贵检查——比如代理式测试、变异测试——把原本需要人工验证的事变成自动验证,省下审查时间 。

元循环(meta loop):它站在开发流程之外,观察代理日志、代码评审、问题追踪和用户反馈,找出漏到用户手里的错误或被人工拦下的错误,再把改进反馈回内、外循环 。

Knox 说,想持续提升AI 原生程度,主要就是投资元循环。

为什么这事难:三个现实问题

第一,这门学科变化太快。

Knox 半开玩笑地说,团队会「基本上变成 AI 研究员才能跟上」——读论文、看博客,总结出的最佳实践过两周就过时,甚至变成反模式。

你得提前想好怎么腾出时间跟上。

第二,它是典型的计划外工作。你无法预知代理会在哪失败、修多久,而改进代理的工作又和按时交付功能直接竞争。

不做,代理永远不进步;做了,可能误了工期 。

第三,你想要的数据拿不到。改进代理需要的信号,大多埋在本地日志里、某人的电脑上、某人的脑子里。

得先把工作流搬到一切都被记录、可被工具读取的地方。

动手的三层清单

Knox 把要做的事分成三层,也是先后顺序。

先搭控制平面:所有工作从问题追踪器开始,交给沙箱里运行的无人值守代理,代理提交代码,工程师在评审里留言纠偏。

关键是,人和代理的所有交互都变得可读、可分析 。

基本组件是:问题追踪与触发、代码评审(最简单的是 GitHub 评审)、以及一个统一分发技能的仓库或注册表。

再做代理 IT(Agent IT):把代理真正需要的东西给它——命令行工具、API 权限、内部服务访问、生产日志、能执行代码的环境。

Knox 提醒,这一步比你想象的更糟,没人做完后还觉得简单 。它无法提前规划,只能花一两周硬啃,还牵出权限治理和合规问题。

最后是改进循环:这也是耗时最多的一层。

包括每天或每周扫一遍代码库找问题的维护任务、常见开发操作的指南(比如怎么给命令行工具加功能)、识别重复任务并尽快自动化,以及持续检查产出质量,把发现的错误固化成技能更新,避免重犯 。

Tessl 卖什么?

Knox 强调以上都是通用技术,不绑定任何工具。

Tessl 想做的是让这条路变得渐进、可持续:提供带治理和版本管理的技能注册表,Linear 到 GitHub 的连接器,以及代码评审工具。

它的代理会挖掘提交记录和问题,发现「每周都要手动找不稳定测试」这类重复劳动,自动建议做成技能并挂到 GitHub Action 上 。

一条 teslaunch 命令可以把任何技能变成自动化工作流,在沙箱里运行,支持 Codex、Claude Code、Gemini 等代理。

他的期望是:半年后回头看,「我们已经走到软件工厂的 40%,从没耽误过交付」。

本集带走

  • 软件工厂的定义:产品代码全部由代理产出,工程师负责建造和改进工厂本身。
  • 衡量进度看三个指标:自主(减少人工纠偏)、自动化(减少人工审查)、质量(先持平后提升)。
  • Harness engineering 的核心是三个循环:内循环提自主、外循环提自动化、元循环驱动整体质量。
  • 最大的障碍不是技术而是组织:知识更新太快、改进工作是计划外工作、关键信号散落在不可读的地方。
  • 实施顺序:先搭控制平面,再解决代理的环境与权限,最后持续投资改进循环;可用「人工接管次数、PR 人工评论数、无人工发起的 PR 比例」追踪进展。
全部金句 9 条

这就是工厂的核心思想:你团队里的每个人实际上都变成了内部工具构建者,然后你构建一个生产你产品的系统。
That’s kind of the core idea of a factory, though, is everyone on your team effectively becomes internal tool builders, and then you’re building a system that produces your product.
—— Dru Knox · [02:48]

你可以有高自主性,即智能体经常能一次性解决你给它们的问题,但自动化程度低,因为你还不信任它。
You can have high autonomy in the sense that agents frequently are one-shotting the problems you’re giving them, but low automation because you don’t trust it yet.
—— Dru Knox · [03:43]

你必须先建立起自主性,然后才能转向自动化。
You have to build up autonomy first before you can move to automation.
—— Dru Knox · [04:01]

有了软件工厂,积压这个概念基本上就消失了。
With a software factory, the idea of a backlog kind of goes away.
—— Dru Knox · [05:21]

你基本上变成了一个 AI 研究员,就为了努力跟上。
You basically become an AI researcher just to try and keep up.
—— Dru Knox · [09:29]

你想出一些最佳实践,但下一周就过时了,再过两周又过时了。
You’re coming up with best practices that go out of date the next week and then two weeks after that.
—— Dru Knox · [09:35]

你要么不做,智能体就永远不会进步,被困在局部最优里;要么做了,就会错过功能的截止日期,惹上麻烦,于是没有人去做。
You either don’t do it and you get stuck in the local maxima of the agent never improves, or you do it and you miss your deadline for the feature and you get in trouble and so no one ever does it.
—— Dru Knox · [10:32]

没有人在进来时想着“对对对,这对我们来说不会那么难”,最后离开时还这么说。
Like there’s no one who has come in thinking like, yeah, yeah, it’s not going to be that hard for us has left saying that at the end.
—— Dru Knox · [13:25]

所以我们认为工厂的每一个组件不可能都由单一公司做到业界最佳。
So we don’t think every component of a factory is going to be best in class with a single company.
—— Dru Knox · [16:13]

接着看

顺着「AI 编程」挖下去