周五晚上,我想在关电脑前再提交一个小功能。两个Claude Code窗口并排开着,同样的提示词,两个应用共享95%的技术栈。等我合上笔记本时,左边的应用已经自主迭代三次完成了功能验证,右边的还在等我手动点击后台确认。

问题出在一个文件夹上。

打开网易新闻 查看精彩图片

两个应用都是我的。一个是同步WooCommerce目录的后台系统,另一个是管理多个客户网店的运维平台。都用了Next.js、Convex、shadcn、Vercel,同样的开发规范。唯一的区别:一个有真正的CLI作为核心层,另一个只有scripts/文件夹里那些"fix-thing-2025-08.mjs"式的临时脚本。

这个CLI不是简单的脚本集合。它有子命令对应具体业务动作——catalog refresh、partner sync、site init——直接调用与后台相同的业务层代码,只是输出JSON到标准输出。当Claude Code写完一个mutation,它能立即在终端运行验证,读取返回的JSON,发现字段类型错误,自动修复,重新运行。三次迭代,完全自主。

另一个应用呢?Claude Code写完代码就停下来问我:能打开后台确认一下吗?我点击,刷新,再点击,再反馈。本该替我编码的AI,反而把我变成了它的鼠标。

我翻看了两个仓库五月这30天的提交记录。有CLI的应用提交了272个commit,另一个只有150个。1.8倍的差距,不是因为AI、框架或后端不同,而是因为那个被"2026技术栈指南"遗漏的层。

CLI正在成为新的MCP——不是口号,而是把超级能力交给Claude、Codex和所有为你编码的agent。让编程LLM能以编程方式验证自己的工作,这给了它们相对于传统全栈应用的结构性优势。CLI正在成为新的全栈。