从Skill崇拜到CLI觉醒:重新审视AIAgent的能力地基
去年深秋,我第一次在生产环境部署ClaudeCode时,被它的稳定性震惊了。不是因为它会写代码,而是因为它从不死机。
那个让我停下来的细节
当时团队在做一个内部工具,需要Agent帮忙定位代码库里的某个实现。ClaudeCode启动后,用GlobTool扫文件、GrepTool搜关键词、LSPTool跳转引用,全程没有任何花哨操作,但每一步都精准得像在做手术。
我开始反思:它凭什么这么稳?答案很简单——底层工具扎实。GlobTool找文件是确定性的,GrepTool搜内容是零token的,LSPTool做符号分析是原子的。每一个工具都像一个合格的扳手,Agent拿来就能用,不需要反复试错。
Skill很美,但它可能是伪命题
行业叙事总在追逐更性感的概念。Skill自动生成、Agent自主进化、越用越聪明——这些词汇比"命令行工具"好听一万倍。但当我真正去拆解那些"失败案例",发现一个规律:问题几乎都出在工具层,而不是Skill层。
拿OpenClaw来说,用户吐槽最多的两点:token烧得快、任务跑着跑着失联。表面看是两个bug,往深挖是同一个病根——用脆弱的浏览器自动化去做本该确定性工具完成的事。页面DOM一改,Agent就蒙圈;按钮状态一抖,它就开始循环重试。每一次"观察-分析-重试"都在烧token,但任务永远完不成。
Skill进化解决的是"怎么更聪明地用一个工具",解决不了"工具本身是否可靠"。这才是根本区别。
CLI的范式转移:从人用变成Agent用
更深层的变革正在发生:CLI的使用者正在从人变成Agent。
给人用的CLI可以有交互提示,可以容忍模糊输出,可以用"差不多就行"的设计。但Agent不一样。Agent不睡觉,不容忍歧义,会并发,会在没有预料到的时机无限重试。一个"勉强能用"的CLI,对Agent来说就是高频事故源。
给Agent设计的CLI必须满足:一条命令只产出一个明确结果;输出是结构化JSON;错误信息不仅说哪里错,还要指明下一步;长任务必须支持异步;接口天然支持幂等和并发。这些要求听起来像技术规范,但背后是对软件设计哲学的重写。
三层架构才是终态
我逐渐形成一个判断:Agent领域的正确架构应该是三层。底层是CLI,执行确定性逻辑,零token,可并发;第二层是Skill,做上下文编排和经验蒸馏;最上层才是LLM,处理真正需要语义判断的部分。
今天的很多系统跳过了CLI层,直接让Skill和LLM兜底。结果就是:系统又贵又慢又不稳定。正确的路径是:开发者预制CLI,上层应用自动管理Skill,LLM在Skill辅助下调用CLI。
Hermes的出现是一个信号——Skill层的问题正在被解决,但下一个真正的战场在CLI层。Web端、PC端、移动端的CLI化改造才刚刚开始。这可能是AIAgent领域最不性感、但最关键的事情。



