写了 10 个 Agent 后,我才搞懂“什么不是 Agent“ 📅 2026/6/26 2:10:09 阅读时间约 10 分钟前置知识了解 LLM 是什么知道 OpenAI 的函数调用能跑通一个简单的 API 请求“我不再 prompt Agent我设计 Loop。”Claude Code 的负责人和 OpenClaw 的负责人先后说了几乎同一句话。当时我没听懂这句话的分量。后来我写了十几个 Agent踩了足够多的坑才真正理解Agent 的核心不在模型有多聪明而在你如何设计它的工作循环。而在设计循环之前你首先要搞清楚——什么不是 Agent。误解一能调工具的就是 Agent最常见的定义LLM 函数调用 Agent。这个定义的问题——它把一个能力当成了一个系统。Function Calling 确实是 Agent 体系中最基础的技术组件。但能调用工具只是 Agent 的第一层积木。一个真正能称为 Agent 的系统需要同时满足感知能理解上下文、识别任务状态、判断工具调用的时机和参数决策根据感知结果做出多步推理不是单次判断而是一连串的判断执行调用工具、处理返回值、判断是否继续还是结束闭环上述三个环节形成可循环的机制不是跑一次就停思考一下你现在的项目中哪个环节最容易断掉感知、决策、执行还是判断是否继续正确的定义Agent 是一个具备感知-决策-执行闭环的自主系统。它能在不确定环境中通过多步推理和工具交互完成一个目标。这个定义里最关键的词是**“闭环”**。没有闭环只有 LLM 的一次性调用——你叫它自动化脚本更合适。本章要点Agent ≠ 单次 LLM 调用。Agent 感知 决策 执行 闭环。没有闭环只是自动化脚本。刚才我们搞清楚了什么不是 Agent。但搞清楚之后你面临一个更大的问题你真正需要搞清楚的是模型的边界而不是模型能做什么。误解二Agent 什么都能做这是比第一个误解更危险的错觉。很多初学者在写完第一个能跑起来的 Agent 后会立刻开始往上加功能“能不能让它自己写代码”“能不能让它自己调试”“能不能让它自己部署”每多一个能不能你就离过度工程化更近一步。模型能力 vs 工程边界Agent 的能力边界由两部分组成模型自身能力不需要工程处理文本理解、推理、生成基于上下文的判断多轮对话中的上下文记忆超出模型能力必须工程处理确定性结果“这个 Bug 的根因”——模型会说可能精确状态“文件第 37 行有一个 bug”——模型会数错持久化状态“我上次看到的那个 API 文档”——模型不记得外部世界交互“执行一个不可逆的操作”——模型不知道后果思考一下你手头的项目里有哪些需求是模型天然做不到的不是做得不好而是根本做不到。一个真实的踩坑案例我见过一个智能客服Agent 的设计方案接收用户消息LLM 理解意图 → 从知识库检索LLM 生成回复初看合理。但实际运行时出现了一个致命问题当知识库检索不到相关信息时Agent 没有任何不知道就说不知道的兜底机制而是继续基于有限的信息编造答案。这不是模型能力不够是工程边界不清。正确的做法是加一道判断置信度的门——如果检索结果与用户问题的相关性低于阈值不生成回复直接转人工。本章要点模型能力 ≠ 工程系统能力。确定性任务需要工程兜底。每个环节设兜底——感知有置信度、决策有阈值、执行有验证。刚才我们说了模型能力的边界。接下来看另一个常见的过度设计——你以为它需要多 Agent其实单 Agent 就够了。误解三多 Agent 协作 好 Agent当你理解了什么不是 Agent之后下一个陷阱就是“既然单 Agent 不够那上多 Agent”这是 AI 社区最流行的幻觉之一。多 Agent 不是答案它只是把问题从一个 Agent 搞不定变成了多个 Agent 的协调问题更难解决。什么时候该用多 Agent只有同时满足以下条件时才考虑任务可以明确拆分为独立的子任务不是看起来可以拆子任务之间有清晰的数据流转关系不是大概这样传子任务之间的依赖关系不需要频繁回溯不是做到一半要改前面否则优先用单 Agent。简单不是妥协是工程直觉。本章要点多 Agent 不是升级是复杂度升级。能不用就不用。先实现一个能用的单 Agent然后再考虑是否需要多 Agent。Agent 的工程边界——决策循环图现在你已经知道什么不是 Agent了。接下来要看的是Agent 工程中哪些事是模型该做的哪些事是工程该做的。这张图描述了一个典型 Agent 的决策循环以及每一步的工程边界意图识别上下文提取置信度高置信度低成功失败临时错误业务错误继续结束用户输入感知层任务分类关键信息抽取决策层生成执行计划转人工执行工具调用执行结果结果处理错误分类重规划是否继续最终回答关键边界标注环节模型负责工程负责感知理解意图、提取上下文设定感知阈值、过滤噪声决策生成执行计划、推理置信度判断、兜底策略、安全约束执行调用工具、生成参数幂等性保证、错误分类、重试策略判断是否继续/结束的判断超时控制、最大循环次数、停止条件本章要点模型负责做什么工程负责做到什么程度。先画你的 Agent 决策循环图再标注每个环节的边界。思考一下对照这张图你当前实现的 Agent哪个环节的边界是模糊的比如决策层该由模型决定但实际写成了工程判断最强 Agent 的真相模型是引擎Harness 是整辆车Claude Code 的源码被泄露后社区对它的架构分析揭示了几个关键点核心竞争力不是模型本身而是模型周围的精密控制系统——也就是 Agent 工程中的Harness上下文管理采用三级压缩流水线微压缩 → 绘画记忆压缩 → 完整压缩。核心工具启动时加载扩展工具按需加载安全与约束通过分类器、权限模式、HOOX 系统实现规则一旦编码在所有循环中机械式执行本章要点模型是引擎Harness 是整辆车。没有好的 Harness再强的引擎也跑不快。系统设计优先于模型选择。过渡引导语到这里我们从什么不是 Agent聊到了Agent 的工程边界最后看了一家最强编码 Agent 的架构真相。你可能觉得——这离我自己写一个能跑的 Agent 还差得远。别急。下一篇我们从一个最简单的 Agent 开始。总结读完这篇你应该带走这几件事本文围绕五个核心概念展开建议你读完后再回顾一遍Agent 是什么感知 决策 执行 闭环缺一不可。没有闭环的系统不是 Agent。什么不是 Agent单次 LLM 调用、Workflow 模板、多 Agent 堆砌——这些都不是 Agent。模型边界模型负责理解和推理工程负责确定性、持久化和不可逆操作。多 Agent不是升级是复杂度升级。先做好单 Agent再考虑多 Agent。Harness模型是引擎Harness 是整辆车。系统设计优先于模型选择。思考一下你现在觉得自己在哪个阶段是还在理解什么是 Agent、“能跑起来但不知道边界”、还是知道边界但不知道怎么设计带着这个问题的答案进入下一篇。思维导图什么不是 Agent三个常见误解调工具 Agent一次调用不等于闭环需要感知 决策 执行 闭环什么都能做模型能力不等于工程能力确定性任务需工程兜底多 Agent 好 Agent复杂度升级能不用就不用Agent 工程边界感知层意图识别和上下文提取 / 工程负责阈值过滤和兜底决策层生成执行计划 / 工程负责置信度和安全约束执行层工具调用和参数生成 / 工程负责幂等性和重试判断层是否继续和结束 / 工程负责超时和最大循环最强 Agent 的真相Claude Code 源码分析模型是引擎Harness 是整辆车上下文三级压缩约束机械式执行核心 Takeaways先搞清楚边界再动手单 Agent 做好再考虑多 Agent系统设计优于模型选择闭环才是 Agent 的底线下一篇预告P02. Tool Use 实战让 LLM 调用外部工具的 3 种模式从 0 开始写一个能跑起来的 Agent。代码量不到 50 行。工具定义 → 绑定到 Chat Completion → 解析 Tool Call → 执行函数 → 提交 Tool Message看完这篇你会理解为什么 Function Calling 是 Agent 的第一块积木以及为什么它只是积木不是整个房子。思考一下读完这篇后你对 Agent 的理解有没有被改变或者你有踩过的坑想分享在评论区告诉我。