有人把 Claude Code——Anthropic 的 AI 编程工具——逆向拆开,发现它的心脏只是一段 while(true) 循环。

调用模型,解析出工具调用,查一遍权限,执行,把结果喂回去,再调用一次,直到模型自己说”干完了”。

就这么一个循环,把”会聊天的 AI”变成了”能干活的 Agent(智能体)”。

很多人以为二者的差别在模型:聊天机器人用弱模型,Agent 用强模型。

我觉得不是。

同一个模型,放进聊天框就是聊天机器人,放进这个循环就是 Agent。

Agent 和聊天机器人的分界线,不在智商,而在有没有”调工具、看结果、再决定”的闭环。

而一旦有了这个闭环,你面对的就不再是一个对话产品,而是一种新的工作组织方式。

这是本系列要讲清楚的第一件事。

一、单次问答、工具调用、Agent 工作流:三层台阶

先把三个经常被混着说的东西分开。

单次问答:你问,它答。输入靠你打字,输出靠你自己拿去用。它对世界没有任何动作能力,答错了它也不知道。

工具调用(Function Calling,函数调用):模型可以在回答里”按一次”外部工具——查数据库、调接口。但什么时候调、调完之后怎么办,还是外面的程序说了算。它像一台能按按钮的答录机。

Agent 工作流:模型进了循环。它调工具、看返回结果、根据结果决定下一步,一轮一轮推进,直到它判断任务完成。据第三方源码拆解,Claude Code 的引擎层干的就是这件事:四十多个工具挂在同一个循环上,而且每次执行前都先查权限——先问”能不能做”,再做。

三层的差别不是能力大小,而是谁在承担”接下来怎么办”的判断。

前两层里,这个判断在人手里;到了第三层,它第一次被交给了机器。

Agent 接管的不是打字,而是流程。

二、Agent 的七个部件,像一份岗位说明书

拆开一个真正能用的 Agent,里面一般有七样东西:

  • 目标:要做成什么,做到什么程度算完;
  • 上下文:这一轮它该看到哪些信息;
  • 工具:它被允许动什么——读文件、跑命令、查资料;
  • 记忆:跨轮次该记住什么,不该忘什么;
  • 执行:动手干活的那个循环本身;
  • 验证:干完之后,谁来检查是不是真的完成了;
  • 交接(handoff,结构化交接):做了什么、没做什么、卡在哪里,如何汇报给下一环。

把”它”换成”他”,这就是你给一个新员工安排工作时要交代的全部东西。

我第一次真正理解这一点,是发现给 AI 布置任务和带实习生一模一样:你说,他做;他错,你改;他再做。

交代不清目标,他就自由发挥;不给上下文,他就瞎猜;没人验收,他就”看起来做完了”;不要求汇报,长任务一定跑偏。

Agent 的构成清单,读起来不像技术文档,更像一份岗位说明书。

三、所以真正的问题是管理问题

一旦承认 Agent 是个”岗位”而不是个”功能”,问题就换了一批。

你不再问:这个模型能不能写代码?

你要问的是:谁来派活?谁来实现?谁来验证?谁来同步上下文?谁来定义”完成”?出了错,谁负责?

这些问题,没有一个能靠换更强的模型来解决。

它们是组织设计问题——过去发生在会议室里,现在发生在你的终端里。

也因此,每一个 Agent 都需要一个人:不是需要人替它按回车,而是需要有人定目标、判结果、管边界、担责任。

四、这个系列会写什么

接下来几篇,就沿着这份”岗位说明书”往下拆。写的都是怎么判断和取舍,不是接口教程:

  • 多个 Agent 怎么协作,五种模式各适合什么场合;
  • 为什么多 Agent 不能十个一起开干——调度本质上是管理;
  • Workflow(工作流)、Tools(工具)和 MCP(Model Context Protocol,模型上下文协议,一种工具接入标准)到底谁在哪一层;
  • 验证为什么必须早于实现,交接为什么比记忆可靠;
  • 以及最后:人应该站在哪个节点上。

工具会换,模型会升级,但有一件事不会变:

聊天机器人会等你提问,而 Agent 在等你管理。

延伸阅读