乐于分享
好东西不私藏

AI Agent和传统软件,相看两厌

AI Agent和传统软件,相看两厌

说真的,我见过最离谱的技术对骂,不是程序员和产品经理之间的Battle,而是两个”物种”之间的互相嫌弃——一边是AI Agent,一边是传统软件。它们之间的矛盾,已经到了”你站在我面前我都忍不住要吐槽”的程度。

最近看到一篇文章,写的是Agent看传统软件,觉得那套鉴权体系、UI状态耦合、多层图形化菜单导航,简直就是专门为人类设计的一套”反机器”基础设施。而人类看Agent生成的代码呢?那在他们眼里叫”活的屎山”——不是比喻,是真的觉得这东西没法维护,今天能跑明天就炸。

这篇文章的标题,叫”两看相厌”,精准到让人心疼。

所以今天咱们就来扒一扒,AI Agent和传统软件之间这场”世纪互嫌”,到底是怎么回事,谁的错更多一点,以及——有没有一种可能,它们本来就不是为了互相咬合而设计的两块积木?

先搞清楚,它们压根不是一个物种

传统软件——飞书、ERP、SaaS系统——它们的底层设计假设是什么?是”人类操作者”。整个架构都是围着人的行为模式转的:Session维护登录状态,UI组件树绑定数据,可视化配置菜单让你不用写代码也能干活,Changelog靠人工阅读理解版本更新。

这套东西,对人类来说非常友好。符合直觉,上手就能用,改个配置点点鼠标就成。

但AI Agent来了。Agent的核心需求是:无状态、高并发、程序化接口。它不需要Session,要Token。它不看你那个UI,只要一个CLI。它不想阅读Changelog,要机器可读的Diff接口。

这两个东西从娘胎里就不是一路人。一个为”人”设计,一个给”机器”用,结果现在硬要捏在一起工作,互相看不顺眼简直太正常了。

就像你让一个广东人和一个北京人同一个锅里吃饭——不是说不能吃,是饮食习惯差异大到每次都得吵一架。

人类工程师看Agent代码:我血压上来了

先站人类工程师这边说一句公道话。

你让AI Agent写一段代码,它是真的能跑。功能上,逻辑上,三秒给你整出来,效率高得让你怀疑人生。但是——当你点开那个代码文件,准备欣赏一下数字员工的杰作,你看到了什么?

一个函数,两千行。所有逻辑全塞一块儿。变量命名走着走着就变成了a1、a2、temp、temp2。注释?不存在的。模块化?想多了。命名规范?你在做梦吗?

这不是我编的,这是大量真实案例里人类工程师共同的控诉。Agent写代码追求的是”上下文效率”——它要把Token消耗压到最低,所以在它的世界观里,把所有逻辑集中在一个文件里,减少文件切换次数,是绝对正确的选择。至于你人类能不能维护,那不在它的优化目标里。

Agent就是这样,它眼里只有任务完成,没有代码传承。

人类工程师的愤怒完全可以理解:你们Agent写的这堆东西,今天我能跑,明天换个需求我来维护,得先花两天时间把这坨东西读懂,读懂之后还不敢改,一改就不知道哪里会爆炸——这不是屎山是什么?

Agent看传统软件:你那些设计就是针对我的吧?

把屁股挪到Agent那边坐一坐。

Agent也是有苦衷的。你们人类设计的那套传统软件,有很多东西在你们看来理所当然,但放在Agent的执行逻辑里,简直就是专门给机器挖的坑。

先说鉴权。

传统软件的鉴权,靠的是Session/Cookie。人类用户登录一次,领到一个Session,之后在这个Session有效期内干啥都可以。这个机制对人类很友好,但Agent是stateless的,它每次请求都是独立的,没有”登录一下然后保持状态”这个概念。你让Agent去操作你的SaaS系统?它得先搞定那套基于Session的鉴权机制,光这一项就能让一个Agent开发工作量翻倍。

然后是状态管理。

传统软件的状态是绑定在UI组件树里的。你的数据不是独立存在的,它跟界面是耦合的。你想单独拿一个数据?不行,你得先渲染出那个界面,然后从界面里把数据捞出来。这套逻辑人类用着很顺手,点个按钮界面就变了,数据也跟着变了,闭环了。但Agent想要的是:直接拿到数据,不要你那层UI做中转。结果Agent只能去爬界面,去解析DOM,去模拟人类点击——明明想要一个数字,结果要先渲染整个页面,然后从某个span标签里把这个数字抠出来。这是人干的事吗?

还有配置体系。

传统软件的配置,那叫一个层级深、菜单多、导航复杂。人类可以通过图形化界面一级一级点进去,改了保存,ok。但Agent想要的是声明式Schema,一次性注入配置,然后干活。大多数传统软件根本不提供这种接口。Agent要么去模拟人类操作界面,要么去读那套人类才能理解的配置文档——在Agent眼里,这简直是一种侮辱。

Agent的委屈是真实的:不是我不配合,是你这套基础设施压根没给我留门。

这场矛盾的根本:设计假设的底层撕裂

说了这么多,你会发现AI Agent和传统软件之间的矛盾,根本不是技术问题,是”设计假设”的根本性差异。

传统软件的设计假设是:用户是人,人有直觉,人需要可视化,人会犯错所以需要确认机制。

Agent的设计假设是:调用方是程序,程序需要确定性,程序需要可重复,程序不需要”确认”这个概念,程序的上下文窗口有限所以要减少信息噪音。

这两个假设放在一起,就是一个死结。你让传统软件为了Agent去重构?改动量相当于重写,因为整个架构都是围绕”人类操作者”搭建的。你让Agent去适配传统软件?可以,但那意味着你要模拟一整套人类的操作行为,成本极高而且极其脆弱,界面改一个字Agent可能就废了。

这不是谁的错,这是两个物种在进化路上走了不同的分支,现在硬要它们互相协作,矛盾是必然的。

行业已经给出了答案:再接口化

好消息是,行业里已经有人在解决这个问题了,思路出奇的一致——”再接口化”。

什么叫再接口化?就是别让Agent去模拟人类操作界面了,给传统软件单独开一个机器能直接用的接口。这个接口,专门给Agent用,不走UI,直接操作底层数据。

CLI Anything——把一切传统软件的能力转化成命令行接口。你原来通过图形界面操作的那些东西,现在通过命令行也能完成,而且这个命令行是给机器用的,输出是结构化的,Agent能直接解析。

MCP(Model Context Protocol)——今年最火热的协议之一,专门解决Agent和工具之间的连接问题。传统软件不需要重写,你只需要实现一个MCP Server,你的工具就能被任何支持MCP的Agent调用。相当于传统软件的”机器接口”终于有了一个统一标准。

飞书CLI——飞书出了一个命令行工具,可以用程序的方式操作飞书文档、消息、表格。不用再爬界面了,直接调接口,Agent也能用。

这些工具的共同思路是:让传统软件变成”双栖动物”,既有人类用的GUI,也有Agent用的CLI。两个界面并存,各走各的路,互不干扰。

这其实是技术史上的老规律了。每一次范式切换,都会带来这种”中间层”的机会。汇编语言时代编译器出现了,程序员不用直接写机器码了。面向过程时代对象思想出现了,代码开始模块化了。现在AI Agent时代,”再接口化”出现了。

哪类软件最先被Agent攻破?

不是所有传统软件被Agent接管的难度都一样。一份研究把软件服务分成了四类,看它们被Agent接管的速度:

第一类,纯数据服务——比如Boss直聘、Twitter(X)。这类服务数字层占比极高,Agent获取数据只需要调API,不需要物理操作。这类会被最快接管,速度可能是爆炸式的。

第二类,物理交付服务——比如美团、顺丰。Agent能完成线上环节:选餐、下单、跟踪物流信息。但配送那个环节,你总不能让骑手消失吧?这类是”半接管”,Agent负责决策和流程,物理世界还得人来。

第三类,法人背书服务——比如银行转账。数字层完全可以Agent来完成,但问题在于合规和责任。你转出去一笔钱,谁负责?Agent能负责吗?现阶段不能。这类服务会慢,但长期看也会变,只是需要一个法律和合规框架的更新。

第四类,专业黑盒服务——比如FFmpeg、CAD。Agent会重度依赖它们的能力,但会重构它们的入口。Agent不会去学FFmpeg那些复杂的命令行参数,但可以通过一个统一的自然语言接口来调用FFmpeg。对于用户来说,还是在跟Agent对话,但底层跑的是专业工具。

黄仁勋说你们都误读了

说到这儿,不得不提黄仁勋。

今年2月份,老黄接受采访的时候说了一句话,我觉得是对这场”Agent vs 传统软件”焦虑的一个非常清醒的定调:市场误读了AI颠覆软件的风险。

他的意思是:Agentic AI不是来取代现有软件工具的,它是来当一个”超级操作员”的。它使用软件,而不是取代软件。

翻译成人话就是:你们担心AI把传统软件灭了,这个逻辑本身就跑偏了。AI Agent的角色,是学会用那些已经存在了几十年的专业软件,用得更高效、更精准、更不知道疲倦。ServiceNow、SAP、Cadence这些软件存在了几十年,有它们深刻的理由——合规、流程管理、行业纵深,这些护城河不是AI三年五年能填平的。

AI不是来拆这些软件的,是来当这些软件的超级用户的。

未来软件的样子:双栖架构

未来会被广泛接受的软件形态,我判断是:双栖架构——同时暴露人类界面和Agent接口,两套体系并存,同步数据状态,互不干扰但实时一致。

一个具体场景:你用飞书文档,明面上是通过浏览器或者客户端操作的,这是给人类用的界面。同时,飞书提供了一套API和CLI,这是给Agent用的接口。你在网页上改了一个标题,Agent通过API查询到的数据是同步的。两个人类——碳基的和硅基的——在同一个文档系统里协作,但走的是不同的路。

这个形态在技术实现上已经不是难题了。难题是:大量的传统软件还停留在”只服务人类”的单一架构里,Agent想去调用,门槛极高。

但这就是机会所在。现在Agent化基础设施的窗口期,大概就是1到2年。谁先完成”双栖改造”,谁就提前拿到了未来十年的船票。


最后三句升华:

第一,Agent和传统软件的关系,不是取代,是赋能。别把这两件事放在对立面去想。

第二,现在这个”互相嫌弃”的阶段,恰恰是最有创业和投资机会的时间点——谁先解决这个接口问题,谁就是下一个基础设施的建造者。

第三,如果你是一个开发者,或者一个企业的技术负责人,别等了,现在就去看看你的核心系统,有没有给Agent留接口。没有的话,这事儿比任何AI模型选型都重要。