第一章

Agent 到底是什么

1. Agent 的定义没有唯一答案

Agent 常译为“智能体”。它不是个新概念,早期 Agent 研究并不依赖今天的大语言模型。

早在 1990 年代,人工智能研究者就已经系统讨论 Agent。当时常见的理解是:它能够接收环境信息、采取行动、追求目标,并在情况变化时作出反应;有些研究还会讨论多个 Agent 怎样协作。那时,人们对 Agent 的边界就没有统一意见,围绕“什么是 Agent”这件事争论个不停。

等大语言模型流行以后,人可以直接用自然语言交代目标,模型参与理解和判断,软件再连接文件、搜索、浏览器或其他工具。Agent 因而从研究和工程概念转向可以落地到用户端的软件能力。

几家前沿科技公司的关注重点仍然不同:

  • OpenAI 关注“能不能代表用户完成任务”。 模型参与管理过程和作出决定,工具负责获取信息或采取行动,指令与限制规定它怎样做。

  • Anthropic 关注“下一步由谁决定”。 路线主要由程序提前写好,更接近 Workflow;模型能根据情况选择步骤和工具,更接近 Agent。

  • Google 关注“能不能计划并执行行动”。 它把今天的 Agent 概括为能够理解用户输入、计划下一步并代表用户行动的软件;工具和权限决定它实际能做什么。

但这些说法共同指向四件事:有目标、会判断、能使用工具、能够推进任务。 分歧主要在于系统应该自主到什么程度,以及什么程度才配叫 Agent。

2. 这本手册Agent的定义,以及 Agent 是怎样组成的

对于Agent,本手册采用下面这个实用定义:

Agent 是一个围绕目标工作,由模型参与判断,能够使用工具,并根据行动结果继续、调整或停止的软件系统。

Agent 最核心的三样构成:模型、工具和指令

OpenAI 和 Cursor 的官方说明都把现代 Agent 的核心归纳为模型、工具和指令。先不要把它们记成三个孤零零的名词,下面这张表一次把每一项讲清楚。

核心组成 它是什么、负责什么 从哪里来、常见形式 常见例子
模型 Model 一种经过训练、能够处理信息的程序;负责读懂要求、分析资料、生成内容并参与判断下一步 由 OpenAI、Anthropic、深度求索等公司训练,再被 AI 应用或 Agent 系统接入;相应软件可能允许用户选择模型,也可能在后台自动选择 GPT、Claude、DeepSeek 等模型家族;它可以判断“下一步应读取哪份文件”,但模型本身不等于完整 Agent
工具 Tools Agent 可以调用的一项项实际能力;负责取得资料、执行动作或检查结果,把模型的判断变成外部操作 由 Agent 软件内置,或通过插件、MCP 等外部连接接入;每个工具都有自己的功能、参数和权限范围,这些连接方式会在后文解释 读取文件、搜索网页、查询资料库;创建文档、修改表格、运行命令;核对格式、运行测试、比较修改前后的差异
指令 Instructions Agent 工作时需要遵守的要求和规则;负责说明任务怎么做、哪些不能做、什么情况必须停下来 可以来自用户本次输入的 Prompt、Agent 软件预设的系统规则、项目规则文件、Skill 中保存的做法,以及管理员设置的工作规则 “只创建新文件”“引用必须带来源”“最多尝试三次”“发送邮件前必须让我确认”

三者的关系可以压缩成一句话:

模型负责理解和判断,工具负责实际行动,指令负责规定做法与边界。

除了三样东西持续工作,还需要一套运行结构

模型、工具和指令构成了基础,但要让它们围绕同一件事连续、可控地工作,还需要一套运行结构:

运行部分 解决什么问题 新人用户可以怎样理解
目标 Goal 最终要交付什么,什么时候算完成 任务的终点,例如“交付一份含五个问题的报告”
上下文 Context 模型这一步可以依据哪些信息 当前摊在它面前的任务要求、资料、规则和过程结果
循环 Loop 做完一步后怎样根据结果继续 判断下一步—使用工具—查看结果—再次判断
控制 Control 它能做什么,什么情况必须停下 文件、网络和工具权限,以及删除、发送、付款前的人工确认
运行环境 Runtime 上面这些部分实际在哪里工作,能接触哪些资源 用户电脑、指定项目目录或隔离的云端沙箱

因此可以这样理解:模型、工具和指令是 Agent 的核心工作组件;目标、上下文、循环和控制把这些组件组织成一个可以持续运行的系统。运行环境则是这套系统实际工作的地方。

Chatbot(聊天机器人)和 Agent,融合越来越深

Chatbot(聊天机器人)说的是以对话为主的 AI 应用形态;而Agent 说的是围绕目标连续行动的系统能力和工作方式。

你在网页或 App 的聊天框里问一个问题,AI 回答完就停下,这次使用更接近 Chatbot。你交代一个目标后,系统开始读取文件、调用工具、检查结果,并根据情况继续下一步,这次使用更接近 Agent。

所以,两者并不是非此即彼。同一个 AI 应用既可以提供普通聊天,也可以提供 Agent 模式。比如 ChatGPT 可以作为聊天入口,也可以承载 Codex 等 Agent 能力;真正需要观察的,不只是它有没有聊天框,而是它会不会围绕目标调用工具并继续推进任务。

3. 从模型到 Agent 产品,可以分成五层

很多混乱印象,来自平台上的一些表达把模型、工具、入口、其他软件和 Agent 软件混在一起。下面采用五层分类。它不是行业标准,而是这本手册帮助新人用户辨认这些对象的方式。

类别 例子 主要作用 与 Agent 的相关性
模型层 GPT、Claude、Gemini、Grok、DeepSeek、Qwen、Kimi、GLM、豆包 理解输入、生成内容并参与判断 Agent 的核心技术,但模型本身不是完整 Agent
工具层:内置工具 文件读取、网页搜索、代码执行、表格写入、浏览器操作、图像生成 让 Agent 获取信息、执行动作或检查结果 是 Agent 可以直接调用的能力;单个工具不是 Agent
工具层:插件与扩展 浏览器插件、IDE 扩展、Agent 插件、Connector 给原有软件增加新入口或能力 插件不等于具体工具;它可以包含工具,也可以包含界面和规则
工具层:MCP 连接文件、数据库、日历或消息服务的 MCP Server 用共同协议把外部资料和能力接入 AI 应用 MCP 是连接协议,不是工具本身;MCP Server 可以向 Agent 提供工具入口
入口层:对话入口 Chatbot 网页聊天框、App、消息软件 用户输入要求、查看过程和接收结果 Chatbot 可以只做问答,也可以成为 Agent 的操作入口
入口层:工作界面 编辑器侧栏、终端窗口、TUI、任务面板、云端控制台 让用户在具体工作环境中交代任务、查看修改和批准动作 同一个 Agent 可以同时拥有多个入口;使用终端或编辑器不代表它一定是 Agent
入口层:程序入口 API、定时任务、消息触发、后台队列 由软件或预定事件发起任务 Agent 产品也可以按预定事件自动开始任务
其他软件层:CLI 软件 普通命令行程序、Git、PowerShell,以及带 AI 的 CLI 程序 让人通过文字命令操作软件 CLI 既可指命令行界面;普通 CLI 不是 Agent;Agent 软件也可以采用 CLI 形态
其他软件层:IDE 与代码编辑器 VS Code、Cursor、Zed、JetBrains 系列 查看、编写和修改代码,并整合调试、终端等开发工具 不等于 Agent,但可以内置 Agent 模式或接入 Agent 插件
其他软件层:办公与自动化软件 Word、Excel、Notion、Obsidian、浏览器、自动化平台 提供文档、表格、网页或流程的工作环境 软件本体通常不是 Agent,但可以成为 Agent 的工作现场并接入 Agent 功能
Agent 产品层:面向用户的产品或模式 Codex、Claude Code、Gemini CLI、Cursor Agent 把模型、工具、指令、循环、运行环境和控制组合起来,直接完成任务 这是现在日常讨论中最常被称为 Agent 的一类产品或模式
Agent 产品层:可自行部署或改造的系统 OpenCode、OpenClaw、Hermes Agent、Pi 让用户自行部署、选择模型、扩展工具或改造运行方式 同样属于 Agent 产品、Agent 系统或 Harness,但开放程度、用途和安全边界差异很大

把主要品牌和开源项目放回各自位置

同一个名字有时会横跨公司、模型和 AI 应用,确实容易把人绕晕。先看三个例子:

  • OpenAI、GPT、ChatGPT 和 Codex:OpenAI 是公司,GPT 是模型家族。ChatGPT 是面向用户的综合 AI 应用,可以承载聊天、办公和 Agent 等多种工作方式。Codex 是 OpenAI 的 Agent,既可以在 ChatGPT 桌面应用中使用,也可以通过 CLI、IDE 扩展和云端等入口运行。

  • Anthropic、Claude 和 Claude Code:Anthropic 是公司,Claude 既是模型家族的名称,也是面向用户的综合 AI 应用。Claude Code 是 Anthropic 的 Coding Agent,可以在 Claude 桌面应用中使用,也可以通过 CLI 和 IDE 等入口运行。

  • Cursor 和 OpenCode:Cursor 是一款 AI 代码编辑器,其中带有 Agent 模式;OpenCode 是开源 Coding Agent,可以选择不同模型。它们说明,Agent 既可能是某个软件中的一种模式,也可能是一套独立的软件。

这里不用记品牌全家桶。只要看清:公司负责推出模型或软件;模型提供理解和生成能力;AI 应用让人使用这些能力;Agent 软件或 Agent 模式进一步把能力用于连续完成任务。更多品牌和开源项目的对应关系,集中放在附录一。

4. 模拟任务:用户访谈整理

你是一个用户调研员,刚刚帮项目组完成一轮新品调研,电脑里放着 20 份刚出炉的用户访谈记录。你需要尽快向项目组提交一份总结,找出用户反复提到的五个核心问题,同时保留每项结论的原文依据。逐份阅读和整理很费时间,于是你准备把这项任务交给 Codex。

你打开 ChatGPT 桌面应用,切换到 Codex,打开存放访谈记录的文件夹,然后在对话框中交代:

请读取这个文件夹里所有的用户访谈记录,找出用户反复提及的五个核心问题,整理成一份 Markdown 报告放在文件夹里。

注意: 1)每个问题都要包括问题分析与总结、在多少份访谈中出现、原文依据和相关访谈记录列表。 2)如果需要分析用户特征,只能使用访谈中明确提供的信息。 3)创建新文件,不修改任何原始访谈记录。4)不要联网补充资料。 5)如果资料不足,请停下来告诉我,不要自行补充。

这时可以分成三层看:

  1. 产品与入口:Codex 是 Agent;ChatGPT 桌面应用是你使用它的一个入口;它工作的文件夹或沙箱是运行环境。

  2. 核心技术组成:大模型理解文档中的访谈文字,并判断下一步;工具读取、搜索和写入文件;指令规定报告格式、依据要求和禁止事项。

  3. 任务运行过程:目标是交付五个有依据的问题;上下文包括用户要求、访谈文件和过程结果;循环让它读一份、看结果、再读下一份并检查报告;控制限制文件范围,并让它在资料不足或需要额外权限时停下来问人。

把原来的八项逐一对应,就是:

八项观察清单 在这个 Codex 任务中是什么
目标 Goal 一份包含五个高频问题、每项附原文依据的 Markdown 报告
模型 Model 理解访谈、归并相近表达并判断下一步
指令 Instructions 你提出的不改原件、不自行联网、资料不足时停止等要求
上下文 Context 任务要求、访谈文件、项目规则和已经取得的结果
工具 Tools 读取文件、检索访谈内容、创建报告和检查保存位置
循环 Loop 重复读取、整理和检查,直到覆盖全部访谈,并确认五个问题都有依据
控制 Control 只访问指定范围,越界或高风险动作先问人
运行环境 Runtime Codex 在你电脑上打开的这个访谈文件夹,及其沙箱限制

5. 一句话释义

  • Agent 是一个围绕目标工作,由模型参与判断,能够使用工具,并根据行动结果继续、调整或停止的软件系统;桌面应用、CLI 和 IDE 是它可能采用的入口或形态。