
真正正在发生的变化,不是 GUI 会不会消失,而是 GUI 正在从"主执行层"退回到"浏览与确认层"。
很多人看到这个标题,第一反应会觉得太绝对。GUI 怎么会过时?网页、App、后台系统不是还到处都是吗?
问题不在于 GUI 会不会消失。问题在于,在 AI 开始大规模进入软件之后,什么界面更适合"执行",什么界面更适合"理解",什么界面更适合"协作",这件事正在重新分层。
如果你还把所有精力都花在"把 GUI 做得更丰富、更复杂、更顺手"上,很可能是在继续优化一个已经不再适合作为主执行层的东西。

真正的变化,不是 GUI 消失,而是界面分层
过去几十年,软件界面大致经历了三次主导变化:
- Dos 时代:强调直接输入、直接执行
- GUI 时代:强调可视化、低门槛、易学习
- Web 时代:强调在线化、协作、跨设备访问
这三层都解决过自己的时代问题,所以都成立。但 AI 进来以后,新的问题出现了:
- 软件不再只服务"人"
- 软件也开始服务 Agent / AI
- 系统动作不只是给人点的,也要给模型调用
- 高价值的不再只是"看起来容易用",而是"能不能被稳定执行"
所以未来更像不是某一种界面统一天下,而是四层分工越来越清楚:
- GUI:负责学习、浏览、确认
- Web:负责连接、协作、分发
- CLI:负责高频执行
- Agent:负责理解、编排、生成下一步
从这个角度看,CLI is future 这句话的真正含义,不是"以后大家都回去敲黑窗口",而是:
未来真正承担执行层的,会越来越像 CLI。

为什么 CLI 会重新变重要
不是因为它"酷",也不是因为它"程序员味更浓",而是因为它在 AI 时代天然符合执行层的要求。
1. CLI 天生适合表达动作
按钮、菜单、弹窗,本质上是给人看的。命令则是给执行系统用的。
同一个动作,如果写成按钮,你只能点。如果写成命令,它就可以:
- 重复执行
- 参数化执行
- 组合到流程里
- 被脚本调用
- 被 AI 生成和理解
这就是为什么一旦任务进入"高频、多步骤、强规则"的区间,CLI 的优势会迅速放大。
2. CLI 比 GUI 更适合被审计和复盘
GUI 很适合上手,但不适合还原。点了什么、为什么点、顺序是什么、有没有漏步骤,这些都不天然清晰。
CLI 则相反。它天然把动作写成文本,天然能留下日志,天然能还原执行过程。
这对 AI 时代尤其重要。因为 AI 参与执行以后,组织真正关心的不是"它会不会帮你点按钮",而是:
- 它到底做了什么
- 这一步能不能复现
- 出问题时能不能追责
3. CLI 更容易成为工作流零件
真正有价值的,不是单条命令,而是命令之间能不能拼成流程。
未来软件的竞争力,越来越不只是单点功能,而是:
- 能不能串成链路
- 能不能接上其他系统
- 能不能让 AI 接管一部分判断与整理
GUI 在单点体验上往往更强,但 CLI 在"成为流程零件"这件事上,几乎天然更强。
4. CLI 是 Agent 最容易理解的执行接口
Agent 最擅长的,不是像人一样到处找按钮。Agent 最擅长的是:
- 读文本
- 组织步骤
- 选择参数
- 调用稳定接口
而 CLI 恰好就是最接近这种能力结构的执行层。
所以很多人以为未来是"AI 接管 GUI",我反而更倾向于判断:未来大量软件会先把关键动作 CLI 化,再交给 Agent 编排。
GUI 以后还有没有价值
当然有,而且依然很重要。
只是它更适合这些场景:
- 第一次学习一个系统
- 浏览复杂信息
- 做视觉确认
- 处理低频、例外、非标准动作
换句话说,GUI 更像"认知层"和"确认层",不再天然是最优的"执行层"。
所以真正该放弃的,不是 GUI 本身,而是继续把 GUI 当成未来一切软件动作的默认主战场。

opencli 和 CLI-Anything,代表了两种不同的 CLI 化方向
很多人把所有 CLI 工具都归成一类,其实不对。
opencli 更像外部接入层
opencli 做的事情,本质上是把网站、桌面 App、SaaS、登录态环境接成命令入口。
这类工具特别适合:
- 从网站拉信息
- 连接已有平台
- 读取消息和外围上下文
- 给 Agent 提供外部世界接口
所以它非常有价值。但它更像"把外面接进来",而不是"承担最核心、最稳定的执行主链路"。
OpenCLI 最大的价值,不是它已经把一切都做成熟了。而是它非常清晰地展示了一种未来形态:
把网页、桌面应用和本地工具,统一收敛成 AI 可发现、可调用、可组合的命令接口。
CLI-Anything 更像核心执行层
CLI-Anything 这类方向,更强调把软件本身整理成真正可安装、可测试、可调用的 CLI harness。
这类东西更适合做:
- 核心业务动作
- 本地或内部系统执行
- 长期在线的稳定命令
- 被 Agent 持续调用的主链路
如果把两者放在一起看,就很清楚了:
- opencli 更像外部接入层
- CLI-Anything 或团队自建 CLI 更像核心执行层
这比简单喊一句"全部都 CLI 化"要准确得多。

tmux 的角色作为组织者
它非常适合把不同层的命令环境固定下来。
一个更合理的工作台,不应该只是四个格子乱堆命令,而应该至少分出几种职责:
- 一个 pane 看核心状态
- 一个 pane 接外部上下文
- 一个 pane 做核心执行
- 一个 pane 交给 AI 做摘要、记录、交接
这时候 tmux 的作用就很清楚了:它不是执行层本身,而是执行层的组织器。

所以,标题到底成不成立
如果把这句话理解成"以后大家都别做 GUI 了",那当然不成立。但如果把它理解成一种行业判断,我认为它是成立的:
别再把主要心思花在把 GUI 打磨成未来的主执行层了。
因为未来真正更有价值的方向,是:
- 把核心动作接口化
- 把高频流程 CLI 化
- 把外围世界接进命令层
- 让 Agent 在稳定接口之上做理解和编排
GUI 仍然存在。Web 仍然存在。但真正承担"高频执行"这件事的那一层,我越来越相信,会越来越像 CLI。
CLI is future。
当然了,个人观点。持续使用,持续探索,怎么舒服怎么来。
参考项目
- OpenCLI: https://github.com/jackwener/opencli
- CLI-Anything: https://github.com/HKUDS/CLI-Anything
- tmux: https://github.com/tmux/tmux
评论