ARTICLE · 1135091
不会自己进化的软件,不是好软件

最近有一期播客让我反复咀嚼了很久。
OpenClaw之父Peter Steinberger,和GitHub联合创始人Tom Preston-Werner,坐下来聊了聊AI时代软件该长什么样。
聊到最后,Tom说了一句让我头皮发麻的话:
"这是我这辈子头一次见到一款软件会主动问我:'你希望我怎样修改我自己?尽管吩咐,我现在就去改。'"
他顿了顿,又补了一句:
"还能这么玩?居然真能让机器自己修改自己、自己安装依赖、自己调试环境、自己跑起来……这种体验在此之前我闻所未闻。"
而Peter的回应更绝:
"我现在已经被惯坏了。如果用别的软件不能要求它自我修改,我都会忍不住抓狂——搞什么?你怎么连自己改自己都做不到?"
你看,一个软件的终极竞争力,已经不是"功能多不多",而是"它能不能自己进化"。
一、静态代码,正在变成一具朽木
我们过去对软件的理解是:写好了,打包了,发布了,用户下载了,完事了。
软件是一块砖。你把它砌进墙里,它就永远是一块砖。想改?等下个版本。想修个Bug?提工单,排期,等三个月。
但Peter描述的新范式彻底掀翻了这张桌子。
在他的工作流里,Agent写完代码,不是直接交差。它会唤起一个全新空白上下文的实例充当审查员。两个AI,互不相识,没有预设立场,像两个刚入职的陌生同事一样互相挑刺、辩论、攻防——最多打10个回合。
这还不是终点。代码逻辑对了,还得扔进测试沙箱里跑。编译、安装、拉起虚拟机、打开图形界面、模拟鼠标点击、截屏分析——端到端验证。
Peter说:"如果我自己手动提一个PR,10分钟搞定。交给它,可能要两个小时。但这两个小时里它对代码的测试严苛程度,远远超越了我亲手编写测试所能达到的极限。"
而在这两个小时里,他去忙别的事了。
软件不再是写死的。它在自我审视、自我修复、自我迭代。
而那些不会这么干的软件呢?
它们就是那块砖。静静地待在墙里,等着被拆掉。
二、PR已死,有事发Prompt
对话里最让我拍案的一个观点,是Peter对Pull Request的"宣判"。
他说,在AI批量生成样板代码的时代,开源项目最不缺的就是代码。你的Agent能写,我的Agent也能写,大家跑一遍推理引擎,产出物没有本质区别。
真正稀缺的,是思考。
所以他更希望贡献者提交的不是代码,而是:
- 一条条理清晰、复现步骤详尽的Issue;
- 一份附带思考链路的Prompt;
- 你对问题本质的理解和拆解。
他甚至管这叫 "Prompt Request",取代Pull Request。
他在OpenClaw代码库里专门做了一个机制:提交PR时,Agent会自动问你——"要不要附带一份脱敏后的Prompt记录?"然后后台自动抹去隐私信息,整理出干净的上下文交上去。
Peter说:"我根本不在乎你字句怎么雕琢。我在乎的是:你是真的花心思拆解了问题,还是纯粹在批量生产低质垃圾代码?"
你品品这句话。
一个不会思考、不会进化、只会机械复制的软件,和一份没有灵魂的AI垃圾PR,有什么区别?
三、别迷信大厂给你的"安全安慰剂"
对话里还有一个极其犀利的观点,值得所有做软件的人听一听。
Tom是个"安全偏执狂",把Agent锁在Docker容器里,连邮箱都不敢让AI碰。他问Peter:你到底怎么敢把整台电脑的权限全交出去,还挂到公开Discord上?
Peter的回答很坦诚:我做了一次风险推演,最坏结果不至于毁掉我的人生,而且顶尖模型的防御能力已经够强了。
但更精彩的是他接下来戳破的那层窗户纸:
"商业闭源工具和开源系统,用的是完全相同的底层沙盒原语。唯一的差异在于,商业软件默认关闭所有权限,给你一种心理安慰。两者面临的原生漏洞风险,完全处于同一水平线。"
翻译一下:大厂花了一百亿美元做营销,告诉你"用我们的产品更安全"。但底层该漏的照样漏。昨天Hacker News头条就是Claude Code被渗透窃取了用户名。
安全不是靠一个logo背书的。安全是靠持续的自我审视、自我加固、自我迭代换来的。
这跟软件进化是一个道理:不是挂个"大厂出品"就能永远安全、永远领先。你不进化,漏洞就会找上你,用户就会抛弃你。
四、下一代软件,是一家"数字公司"
Peter描绘的未来图景,让我想到一个词:组织。
他说,未来的Agent不再是单兵作战。它更像一家公司。
你跟你的主Agent说:"我想好好调理身体。"它不会自己挽起袖子给你列食谱。它会说:"好的,我为你创建了一位专属健身顾问。"
然后,一个持久化的、有记忆的、会主动找你的子Agent就诞生了。
你说:"我想做一款新软件。"主Agent就派生出一个专属开发Agent,永远留存项目上下文,每天自动醒来检查GitHub,帮你维护代码库。
软件不再是一个工具。它是一个会自我招聘、自我分工、自我运转的组织。
Peter说:"我们怎样才能构建出更贴合人类社会分工协作的结构?同时又能保持极简?"
这个问题,恰恰是那些"写死在光盘里"的传统软件永远回答不了的。
五、软件也得"三省吾身"
聊到这里,我忽然想到一件事。
曾子曰:"吾日三省吾身。"
两千多年了,人还得每天复盘。软件凭什么不用?
我认真想了想,一款不想被淘汰的软件,每天至少得扪心自问三个问题:
第一省:今天哪里运行有问题?
哪个接口响应慢了半拍?哪个按钮用户点了三次才找对?哪段代码像个中年人的膝盖,一到流量高峰就咔咔作响?哪个模块已经开始拖累全局了,但还没人注意到?
不反省,明天就崩给你看。崩的时候用户不会心疼你,只会截图发朋友圈。
第二省:今天竞对出了什么新特性?
隔壁老张家的App昨晚悄悄上了个AI助手,对面老李家的工具今早支持了一键自我重构,后边新来的小王家更狠,直接让软件跟用户对话:"主人,我觉得我这块可以改得更好,你批准吗?"
你还在用去年的架构沾沾自喜,觉得"够用就行"?
醒醒。用户已经在应用商店里看别家了。手指头离"卸载"键就剩两厘米。
第三省:今天我有没有主动问用户一句——"你想让我怎么改自己"?
这是最要命的一问。
曾子那个年代,人不主动反思,顶多是原地踏步,混个平庸。但软件不主动进化?那是直接被替换。你不问用户,用户就自己去问你的竞争对手了。
三省完毕,该重构重构,该迭代迭代,该连夜发补丁就连夜发补丁。
不会三省吾身的软件,跟不会复盘的员工一个下场——今天领导不淘汰你,明天市场淘汰你。
六、好好学习,天天向上,否则就被扫进历史的垃圾堆
回到最开始那句话:不会自己进化的软件,不是好软件。
Peter在对话最后说了一个细节,我觉得是整场对话最好的注脚:
"我现在甚至已经被惯坏到这种地步:如果用别的软件不能要求它自我修改,我都会忍不住抓狂。"
Tom接话:
"能让软件自己去修自己的Bug,简直棒呆了。"
你听出来了吗?这不是在讨论技术。这是在讨论一种生存哲学。
一个软件,如果它不能审视自己的代码、不能修复自己的缺陷、不能根据用户反馈重构自己的架构、不能主动问一句"你希望我变成什么样"——
那它跟一个拒绝学习、拒绝成长、拒绝改变的生物有什么区别?
答案是没有区别。而且结局也一样:被淘汰。
Peter说他14岁自学编程,干了13年心力交瘁,彻底退休,环游世界,三年没碰代码。2025年重新出山,几个月做了几十个项目。
他为什么能回来?因为他骨子里是个"做东西的人"。他可以压制一段时间,但迟早加倍反弹。
软件也一样。你可以让它静止一阵子,但在这个时代,静止就是倒退,倒退就是死亡。
最后
Tom在对话结尾说了一段话,我觉得送给所有做软件的人刚刚好:
"当年我创立GitHub时,没有任何命中注定。无非是在正确的时间、正确的地点,碰上了契合的想法,然后以最快速度坚决执行,拥抱社区,一路狂奔。"
"想要获得绝妙好点子的最佳途径,就是让自己先拥有海量且密集的点子。"
"放手去干,把东西推向现实世界。"
软件如此,人也如此。
不会自我进化的软件,不是好软件。不会自我进化的人,也终将被这个时代淘汰。
好好学习,天天向上。
共勉。
本文内容整理自《AI Worth Using》播客最新一期,嘉宾:OpenClaw之父Peter Steinberger、GitHub联合创始人Tom Preston-Werner。