软件的用户,正在变成机器
软件的用户,正在变成机器
一个你可能没注意到的现象
过去两年,各大平台陆续做了一件看起来有点复古的事:把自家软件重新包了一层 CLI。
Stripe 早就提供了 stripe 命令行工具,供开发者在终端直接操作支付。GitHub 官方出了 gh,让你不打开浏览器就能创建 PR、合并分支、触发 Actions 工作流。Vercel、Cloudflare、Supabase、Netlify 全都有官方 CLI。AWS 的 aws 命令行工具已经是云工程师日常的标准配置。连 Google 也在 2025 年推出了 Google Workspace CLI,一个命令行工具覆盖 Drive、Gmail、Calendar、Sheets、Docs、Chat、Admin 全线产品。
国内这边,动作来得更密集,而且更具象征意义。3 月 17 日,阿里巴巴发布企业 AI 原生工作平台悟空,同步宣布钉钉已完成全面 CLI 化改造,为 AI 重写底层代码,让所有产品能力都能被 Agent 原生调用,而非模拟人类点击图形界面。10 天后的 3 月 27 日,钉钉 CLI 正式开源上架 GitHub,以 Apache-2.0 协议发布,首批开放 AI 表格、日历、待办、DING 消息、考勤等 10 项核心产品能力,原生支持 Claude Code、Cursor 等主流 Agent 执行环境。这是国内首个面向 AI Agent 开源全产品能力的国民级应用。
飞书紧随其后,3 月 28 日推出 Lark CLI v1.0.0,基于 MIT 协议开源,通过命令行即可调用飞书开放平台 2500+ API,覆盖消息、日历、文档、多维表格、邮箱、任务、会议等 11 个业务领域。
企业微信的节奏更克制一些,目前推出了面向 10 人以下小团队的 OpenClaw 官方 MCP 插件,开放消息、文档、日程、会议等能力,尚未跟进开源 CLI。腾讯选择了不同的切入角度,把筹码放在微信生态的社交连接上。
这三家动作,时间集中在 3 月下旬的短短两周内。
三条路:CLI、GUI、API,各自代表什么
计算机发展史上,人类和软件的交互方式经历过几次范式跃迁。
最早的交互是 CLI,命令行界面。你对着黑屏输字,机器吐回结果。这种方式对人类极不友好,你必须记住命令语法,一个字母打错就报错,没有任何视觉线索。但它有一个核心优势:精确。每一条指令都是结构化的、可重复的、可组合的。
后来 GUI 出现了,图形界面。你用鼠标点击,通过视觉反馈来操作。普通人终于可以用电脑了。GUI 的本质是把命令翻译成图标、按钮、菜单,让不会敲代码的人也能完成复杂任务。这一步让个人电脑真正走进了千家万户,也让互联网时代成为可能。
再后来是 API,应用程序编程接口。这是软件与软件之间通话的方式。当你用微信扫码登录某个 App,背后就是 API 在传递凭证;当你的系统自动从钉钉拉取审批状态,走的也是 API。API 是机器对机器的语言,高效、标准化,但对人类同样不友好,它需要开发者来搭桥。
三种方式,三种受众:CLI 服务于熟悉命令的技术人员,GUI 服务于所有人,API 服务于系统与系统之间的自动化集成。
这三者的关系,在 AI Agent 出现之前,是相对稳定的。GUI 是主流,API 是底层配套,CLI 在专业开发者里存活,但从未变成主角。
从 GUI 到 CLI 的回流,意味着什么
现在的问题是:为什么这么多公司,包括面向普通用户的钉钉、飞书这类产品,开始重新重视 CLI?
这背后有一个很直接的答案,但你要接受它可能需要一秒钟:软件的主要用户,正在从人类变成 AI Agent。
AI Agent 是什么?一句话:能够自主感知环境、做出决策、执行操作的 AI 系统。它不只是聊天机器人,它能调用工具、读写文件、访问 API、甚至控制其他软件。
对于 AI Agent 来说,GUI 是一场噩梦。
想象一下让 AI Agent 去完成一个报销审批流程:它要打开浏览器,识别页面上的按钮在哪里,点击,等待加载,判断下一步该点哪里……这叫做 GUI Agent,用截图和视觉识别来控制软件。2025 年字节跳动的研究团队做出了 UI-TARS,在 GUI 自动化任务上超越了 GPT-4,但整个方向依然脆弱,一旦界面改版,Agent 就可能认不出原来的按钮,整个流程断掉。
传统 RPA(机器人流程自动化)就是死在这里的。用坐标定位、录制回放,每次 UI 变动都要重新配置,维护成本比节省的人力还高。
CLI 完全不同。对 Agent 来说,CLI 是为它量身定制的语言。命令是结构化的,输出是可解析的,执行结果是确定性的。没有视觉噪音,没有动态渲染,没有浏览器兼容性问题。Agent 只需要调用 stripe charges list --limit 10,就能拿到格式化的 JSON 数据,直接处理,无需任何截图解析。
钉钉 CEO 陈航(无招)在发布悟空时说了一句话,直白得有点震撼:过去是人用钉钉来工作,未来是 AI 用钉钉来工作。这不是愿景,这是他们已经完成底层重构之后说出来的事实。
这正是为什么越来越多平台在重新拥抱 CLI:因为 CLI 天然就是 Agent 可以可靠调用的接口。
CLI-Anything:一个极具象征意义的开源项目
几乎在钉钉、飞书集中动作的同一时期,香港大学数据智能实验室(HKUDS)也发布了一个项目,名叫 CLI-Anything,口号是 Making ALL Software Agent-Native,让所有软件对 Agent 原生友好。
这个项目在 GitHub 上迅速积累到 2.4 万颗星。它做的事情非常直接:给任何一个有源代码的软件,自动生成一套完整的 CLI 接口。
GIMP(图像编辑软件)、Blender(3D 建模软件)、LibreOffice(办公套件)、OBS Studio(直播录制软件)……这些原本只有 GUI 的工具,通过 CLI-Anything,都获得了一套结构化的命令行接口。Agent 可以用 cli-anything-gimp resize input.jpg --width 1920 来处理图片,不需要打开 GIMP 的界面,不需要用鼠标拖拉框选。
项目作者 Chao Huang 在发布时写道:Today’s software serves humans. Tomorrow’s users will be agents.(今天的软件服务人类,明天的用户将是 Agent。)
这句话,是整个时代转型最清晰的一句注脚。
那么,API 去哪了?
你可能要问:既然 API 也是机器对机器的接口,为什么不是 API 成为 Agent 的主要通道,而是 CLI?
这个问题问到了点子上。
API 当然还在,而且还很重要。但它有一个根本局限:每个 API 都是孤立的,你调用 Stripe 的 API 和调用 GitHub 的 API,需要分别学习两套认证机制、两套数据结构、两套错误处理逻辑。 系统越多,整合成本呈指数级增长。这就是 Anthropic 在推出 MCP 时提到的 N×M 问题。
MCP,Model Context Protocol,是 Anthropic 在 2024 年 11 月提出的开放标准。它的目标不是取代 API,而是在 API 之上建一层统一的连接层,让 AI 模型可以用标准化的方式发现并调用任意外部工具,不需要为每个服务单独写适配器。
可以把 MCP 理解为 AI 时代的 USB-C:同一个接口,连接所有设备。
2025 年 3 月,OpenAI 正式采纳 MCP 标准。Google DeepMind 随后跟进。2025 年 12 月,Anthropic 把 MCP 捐给了 Linux 基金会下属的 Agentic AI Foundation(AAIF),成员包括 Google、Microsoft、AWS 和 OpenAI。这意味着 MCP 已经从一个公司标准变成了行业基础设施,就像 HTTP 之于 Web,就像 TCP/IP 之于互联网。
在这个框架里,CLI 和 API 的关系变得更清晰了:
-
• API 是底层能力的提供者 -
• CLI 是在本地环境中 Agent 直接可用的工具接口 -
• MCP 是连接 Agent 与各种工具、数据源的通用协议层
三者不是互相替代,而是各司其职。Agent 通过 MCP 发现可用工具,通过 CLI 直接在本地执行,通过 API 访问远端服务。
开发者工具的全面 CLI 化
如果说钉钉和飞书的动作还只是办公协同赛道的局部信号,那 2025 年以来全球主流开发者工具的集体转向就是更大范围的产业共识。
Anthropic 的 Claude Code 在 GitHub 上超过 7.9 万颗星,在终端里运行,理解整个代码库,直接执行重构、修 bug、处理 git 工作流。
OpenAI 的 Codex CLI 拿到了 3.1 万颗星,npm install -g @openai/codex 一行命令装好,就能在终端里让 AI Agent 帮你写 SQL、改逻辑、生成单元测试。
Google 的 Gemini CLI 是 Apache 2.0 开源,支持 MCP 扩展,提供 100 万 token 的上下文窗口。你可以在终端里直接 @github 查看 PR,或者 @database 跑查询,Agent 在背后调度工具,你只需要描述意图。
Cline 拿到了 4.8 万颗星,是开发者社区最受欢迎的开源 Agent 工具之一,支持 Plan/Act 两种模式,每一步操作都需要用户确认,走的是人在回路的路线。
AWS 推出了 CLI Agent Orchestrator(CAO),专门用来协调多个 CLI Agent 并行工作,把 Amazon Q Developer CLI 和 Claude Code 编排进同一个 tmux 会话里,让多个 Agent 像一支工程团队一样分工协作。
Snowflake 有 Cortex Code CLI,JetBrains 有 Junie CLI,Ant Group 有 Neovate Code,Warp 把终端本身变成了 Agent 控制台……这场 CLI 化运动几乎覆盖了整个开发者工具生态。
这些工具有一个共同特征:它们都把 CLI 当作 Agent 的工作界面,而不是人类的操作界面。人类设定目标,Agent 通过 CLI 调度工具、读写文件、操控环境。
2025,Agentic Era 的元年
The New Stack 的技术评论在 2025 年年底写道:2025 was the start of the Agentic Era.(2025 年是 Agentic 时代的开始。)
这个判断并不夸张。
如果用一条时间线来看:
-
• 2022 年,ChatGPT 让大众理解了什么是大语言模型 -
• 2023 年,function calling 让 LLM 有了调用工具的能力 -
• 2024 年,MCP 出现,统一了 AI 与工具的连接标准 -
• 2025 年,Claude Code、Gemini CLI、Codex CLI 集中爆发,AI Agent 开始真正进入生产环境 -
• 2026 年 3 月,钉钉、飞书在两天内先后开源 CLI,办公软件开始系统性为 Agent 重构底层
每一步,都是在为 AI 可以独立完成复杂任务铺路。
但这里有一个细节值得注意:当前的 AI Agent 还没有完全独立。
Warp 的 CEO Zach Lloyd 说了一句老实话:This was supposed to be the year AI replaced developers, but it wasn’t even close.(这本来应该是 AI 取代开发者的一年,但差得远呢。)
Agent 当前最擅长的是:结构化数据转换、基于已有模式的代码生成、有明确规则的流程自动化。它最难搞定的是:跨越多个系统的复杂推理、长周期任务中的状态管理、对未知情境的灵活应对。
人类工程师在这个阶段的角色变了:从自己写每一行代码,变成审查 Agent 的输出、定义任务边界、在 Agent 卡住时介入。Human-in-the-Loop,人在回路,把人从执行层抬升到监督层,这是当下最真实的状态。
GUI 并没有消亡,但它的受众变了
有一个误解需要澄清:CLI 的回归,并不代表 GUI 要消失。
GUI 还是人类的主要操作界面,而且在可预见的未来都不会被取代。普通用户打开钉钉审批假期,不会去敲命令行,他们永远在用 App。
但对于软件开发者和企业的技术团队来说,他们在构建 Agent 的时候,正在系统性地绕过 GUI。他们要的是可以被编程调用的接口,而 CLI 和 API 比 GUI 稳定得多、效率高得多。
过去的软件是目的地,用户主动打开、浏览、点击;现在的软件正在变成能力组件,用户对智能助手下一条指令,Agent 在后台完成调用,用户甚至感知不到中间经过了哪个平台。
衡量平台价值的指标也在随之移动。DAU、用户停留时长、点击率这些过去十年的核心数字,正在被 Agent 调用频次悄悄替代。
所以更准确的描述是:GUI 的受众,仍然是人类;CLI 和 API 的受众,正在被 AI Agent 大规模接管。
软件产品要同时服务两类用户:一类是坐在电脑前的人,一类是在服务器上跑的 Agent。之前设计软件只需要考虑前者,现在不够了。
对做 AI Agent 服务的人来说,意味着什么
如果你现在在做 AI Agent 的落地服务,这个趋势有几个很具体的影响。
工具选择的优先级变了。 给 Agent 选工具,CLI 接口比 GUI 截图识别稳定一个数量级。如果目标系统有开放的 CLI 或 API,优先走这条路,不要用模拟点击。钉钉和飞书的 CLI 开源,意味着企业协同场景里最常见的那些操作,Agent 现在可以直接调用,不再需要绕道。
系统集成的标准化趋势很明显。 MCP 已经成为事实上的行业标准,Anthropic、OpenAI、Google、Microsoft、AWS 都在其中。在给企业客户搭 Agent 系统时,优先选择支持 MCP 的工具栈,能大幅降低未来的集成成本。
Agent 能做什么的边界还在快速扩张。 今天 Agent 还需要人来审核每一步操作,但这个比例在以可感知的速度下降。现在积累的对 Agent 行为的理解和控制经验,是真正有价值的资产。
最后想说的
技术史上有一个规律:每一次交互范式的跃迁,都会让之前太难用的工具重新变得有价值。
DOS 时代的 CLI 对普通人太难,GUI 出现让电脑民主化了。API 对普通人太难,所以各种 SaaS 界面把它包起来卖给企业。现在,自然语言交互让 CLI 和 API 对普通人也变得可触达,你不需要记命令语法,你只需要跟 Agent 说把这个 Excel 里的数据导进 Salesforce,Agent 自己去调 CLI 和 API。
这不是 CLI 战胜了 GUI。这是 LLM 变成了一个通用的翻译层,把人类的自然语言翻译成机器可执行的命令。在这个过程里,CLI 比 GUI 容易被机器调用,所以它重新变得重要。
软件的用户,确实正在变成机器。
而你如果现在在给这些机器搭工具、建系统、设计工作流,你恰好站在这个转折点上。
这个位置,不是每个时代都有。
夜雨聆风