Skip to content

AI 智能体核心架构系统讲解

2026-08-15 · AI智能体 架构设计

从 Harness 到 Memory,系统拆解构建生产级 AI 智能体的七大核心概念。理解大模型如何从"只会想"的孤岛,进化为"能行动、能记忆、能协作"的完整工作单元。

全景概览

一个公式:Agent = Model + Harness

大语言模型(Model)是"大脑",但它本身是无状态的——每次 API 调用都是从零开始。Harness 是包裹在模型外面的整套基础设施,负责工具调用、上下文管理、记忆持久化、错误恢复和安全执行,将无状态模型转变为能执行多步骤任务的自主智能体(Agent)。

在这个体系中,MCP 提供标准化工具连接,SKILL 封装可复用专业知识,Prompt 定义模型行为指令,Memory 实现跨会话上下文持久化。七者协同,构成完整智能体。

架构分层

用户输入                    ← 自然语言指令

Prompt 层                  ← 系统提示词 + 指令,定义模型角色、约束与输出格式

SKILL 层                   ← 按需加载专业技能,渐进式披露

Model 层                   ← 大语言模型推理,负责理解、推理与决策

MCP 层                     ← 标准化工具连接,连接外部数据源、API 和服务

Memory 层                  ← 持久化记忆,跨会话上下文、用户偏好、项目状态

Harness 层                 ← 编排循环 + 执行引擎,调度上述所有组件

核心洞察: 大多数 AI Agent 的问题并不是模型问题,而是 Harness 问题。模型可以回答问题,但无法自己读取文件、执行代码、安装依赖或从失败中恢复——这些能力全部来自 Harness 基础设施。LangChain 在 Terminal Bench 2.0 上通过仅优化基础设施(不改模型),将成绩从 52.8% 提升到 66.5%,排名提升 25 个名次。[1]

Harness

智能体运行框架 · 大模型的"操作系统"

定义

Harness 是除模型本身之外的所有代码、配置和执行逻辑。 它将无状态的语言模型转变为能够执行多步骤任务的自主智能体,管理编排循环、工具执行、上下文窗口、记忆持久化、错误恢复、安全执行和输出验证。[1]

用操作系统的类比来理解:一个原始 LLM 就像一颗没有操作系统的 CPU——可以计算,但无法自己读取磁盘、绘制窗口或与网络通信。Harness 就是语言模型的 OS。

OS 类比映射

  • Context window = RAM:快速、有限、昂贵,放进去的内容决定模型能推理什么
  • 外部数据库 = 磁盘:容量大、速度慢、持久化
  • Tools = 设备驱动:模型与外部系统交互的接口
  • Harness = 操作系统:管理上下文、持久化记忆、路由工具调用、从错误恢复

Harness vs Framework

Framework(如 LangChain、AutoGen)提供抽象组件,需要人类架构师组装。Harness 来自相反方向——没有组装步骤,交付的是一个可工作的 Agent。核心是一个带有工具注册表和权限层的 while 循环,所有东西已经连接好。

Framework 是为人类组装 Agent 而构建的;Harness 是为 Agent 自己完成任务而构建的。

六大核心组件

组件类比核心职责
Orchestration Loop 编排循环主循环 / 调度器驱动"观察→推理→行动→观察"的循环,决定何时调用模型、何时执行工具、何时结束任务。是整个 Agent 的心脏
Tool Execution 工具执行系统调用接口解析模型输出的 JSON 指令,从工具注册表中找到对应代码,传入参数,等待返回,将结果格式化后塞回上下文
Context Management 上下文管理内存管理器决定每轮模型能"看到"什么。处理上下文压缩、信息裁剪、优先级排序,防止上下文窗口溢出和上下文腐烂
Memory Persistence 记忆持久化文件系统在多轮交互之间维护状态,将关键信息写入外部文件或数据库,按需检索并注入上下文
Error Recovery 错误恢复异常处理机制处理工具调用失败、格式错误、超时、死循环检测,决定重试、放弃还是换路径
Safety Enforcement 安全执行权限沙箱权限分级、凭据隔离、操作审批,确保 Agent 的行动在受控范围内。敏感操作需要人工确认

典型产品

Cursor、Claude Code、Codex、Windsurf 都是围绕大语言模型构建的 Agent Harness 实例。DeepSeek 于 2026 年 8 月发布开源的 DeepSeek Harness,采用"一切皆插件"的架构——模型、工具、技能、沙箱、存储等所有能力均由插件组合,可自由替换、灵活重组。[2]

关键认知

Harness 的难点不是写代码,而是做决策。上下文快满了该丢哪些信息?工具调用失败了该重试还是放弃?模型反复做同一件事,第几次判定为死循环?这些没有标准答案,取决于业务场景、用户容忍度和成本预算。

此外,Harness 编码的假设会随模型改进而过时——旧模型容易输出格式错误,Harness 加了校验和重试;新模型不犯这个错了,这些逻辑就废了。Anthropic 原话:"Harness 编码的假设会随着模型改进而过时。"[3]

Agent 与 Model

大脑与完整工作单元

Model:大语言模型

Model 是 Agent 的"大脑"——一个无状态的函数,将输入文本转化为输出文本。它能理解语言、推理逻辑、生成内容,但本身不携带状态,不执行代码,不访问网络

当前主流模型包括 Claude(Anthropic)、GPT(OpenAI)、Gemini(Google)、DeepSeek 等。模型正在快速商品化,各家能力趋于收敛。

Agent:智能体

Agent = Model + Harness 的完整工作单元。它能自主决定下一步做什么——调用什么工具、读取哪个文件、是否需要搜索、何时结束任务。

大模型说"我要调搜索"时,它只输出了一段 JSON 文本。是 Runtime 解析了这段 JSON,是 Gateway 转发了请求,是 Policy 检查了权限,是 Memory 记录了结果——这些"动手"的全是 Harness

本质区别: 大模型负责"想",Harness 又动手又兜底。大模型输出的只是一段文字,它没有真的上网、没有连接搜索引擎、没有拿到结果。Harness 才把指令变成真正的动作。[3]

Agent 的核心能力

Agent 的核心能力就一个:大模型自己决定下一步调什么函数,是模型实时判断出来的,也是模型根据当前上下文"想"出来的。其余的归 Harness,都为了让这个过程能跑得稳、跑得快、跑得安全。世界上没有脱离 Harness 的 Agent。

Model 能力维度

维度说明发展趋势
上下文窗口模型一次能处理的文本长度,从 32K 到 2M tokens 不等持续扩大,但"更大不等于更好"——信息过载导致注意力衰减
推理能力逻辑推理、代码生成、数学计算的准确度新一代模型判断力显著提升,减少了对硬性规则的依赖
工具调用输出结构化 JSON 指令的能力(function calling)从专有格式向 MCP 等开放标准收敛
格式控制稳定输出指定结构数据的能力API 层可通过 Schema 约束,稳定性大幅提升

Anthropic 的发现

官方团队将 Claude Code 的系统提示词删减 80% 后,编程评测成绩未降级。原因是新模型判断力变强了,旧式"规则堆砌"反而制造"上下文腐化"——规则互相打架,模型需要额外精力判断优先级。新做法是"只给方向,不给死规矩"——从"给规则"到"让模型运用判断力"。[4]

MCP

Model Context Protocol · AI 领域的"USB-C 接口"

定义

MCP(Model Context Protocol,模型上下文协议) 是 Anthropic 于 2024 年 11 月开源的协议标准,旨在标准化大语言模型与外部数据源、工具和服务之间的交互方式。[5]

在 MCP 出现之前,开发者需要为每个数据源编写特有的连接代码——Google Drive 一个、Slack 一个、数据库又一个。MCP 提供了一个通用协议,让 AI 系统可以通过单一标准连接任意数据源,替换碎片化的定制集成。

架构

MCP Host(宿主)           ← 运行 AI 模型的主应用,如 Claude Desktop、IDE 插件
    ↕ 1:1 有状态会话
MCP Client × N            ← Host 内部中间件
    ↕ JSON-RPC 2.0
MCP Server × N            ← 文件系统服务 / 数据库查询服务 / 第三方 API 网关

三大原语(Primitives)

原语控制方说明示例
Resources 资源应用控制类似"读取"操作。暴露只读数据源,模型可访问静态数据本地文件、配置文件、API 文档
Tools 工具模型控制类似"执行"操作。模型可调用的动作或函数,支持双向交互和状态变更数据库写入、API 调用、文件操作
Prompts 提示模板用户/开发者服务器提供的预设指令模板,帮助模型理解如何使用该服务器的数据和工具SQL 查询模板、代码审查模板

通信机制

基于 JSON-RPC 2.0 协议,支持两种传输方式:

  • STDIO(标准输入输出):用于本地 MCP 服务器,低延迟
  • HTTP SSE(Server-Sent Events):用于远程 MCP 服务器,通过 HTTP/HTTPS 访问

动态发现机制允许 AI 模型实时集成新工具,无需预定义代码。

核心优势

  • 标准化集成:减少 80% 定制开发代码,开发周期平均缩短 40%[6]
  • 安全性:通过权限分级和凭据隔离,避免敏感数据直接暴露给模型
  • 模块化扩展:支持动态接入各类服务,形成正向生态飞轮
  • 模型无关:与具体模型解耦,任何支持 JSON-RPC 的 AI 应用都能使用

生态进展

早期采用者包括 Block、Apollo;开发工具厂商 Zed、Replit、Codeium、Sourcegraph 已集成 MCP。预构建服务器覆盖 Google Drive、Slack、GitHub、Git、Postgres、Puppeteer 等主流服务。MCP 已成为 AI 工具连接领域的事实标准。

SKILL

Agent Skills · 可复用的结构化专业说明书

定义

Skill 是一个包含指令、脚本和资源的文件夹,用于教会大模型如何更好地执行特定任务。 它将特定领域的知识、标准、操作流程打包成结构化模块,让 AI 助手像加载"按需专家"一样扩展自身功能。[7]

Anthropic 于 2025 年 10 月推出 Skills,12 月正式作为开放标准发布。Simon Willison 评价:"Claude Skills 可能比 MCP 更具影响力。" 目前已获得 Microsoft(VS Code、GitHub)、Cursor、Goose、Amp 等平台采用,Anthropic 的 Skills 仓库在 GitHub 上突破 6 万 star。

Skill 的文件结构

markdown
---YAML 前置元数据---
name: my-skill-name
description: 技能描述和触发条件
version: 1.0
tags: ["react", "frontend"]
---

# 技能名称

## 指令
[Claude 执行任务时遵循的详细步骤]

## 示例
[具体使用场景]

## 指南
[最佳实践和注意事项]

每个 Skill 由三部分构成:SKILL.md(主要指令文件,必需)、scripts/(可执行代码,可选)、reference/(参考资源,可选)。

渐进式披露(Progressive Disclosure)

Skills 的核心加载策略,与传统上下文注入方式截然不同:

  1. 第一层:目录预加载 — 对话开始时扫描技能文件夹,仅读取名称和概要描述(约 30-50 Token)
  2. 第二层:模型自主激活 — 模型根据用户请求和 Skill 描述自动判断是否需要加载某个技能,无需显式调用
  3. 第三层:按需加载内容 — 根据任务需要逐步读取相关章节,不一次性加载全部内容,保持上下文高效利用

vs 传统 Prompt

传统系统提示词每次对话都需完整加载所有背景信息。Skills 采用"索引→按需加载"方式:先加载 30-50 Token 的技能索引,需要时再逐级加载详细内容,避免上下文被无关信息撑爆。

vs RAG vs 微调

  • 微调:需消耗算力改变模型权重,成本高、不灵活
  • RAG:依赖向量数据库检索质量,黑箱
  • Skills:通过"文件夹+Markdown"实现知识直接挂载与按需调用,比微调灵活,比 RAG 透明,人可审计、Git 友好

实际案例

  • Rakuten:管理会计和财务工作流自动化,8 小时任务缩短到 1 小时
  • Notion:让 Claude 与 Notion 无缝协作,复杂任务更少需要反复调试提示词
  • SEO 优化师:将完整 SEO 优化流程封装为单个 Skill,2+ 小时工作缩短到几分钟
  • 金融报告流水线:Skills 串联 Excel→PPT→PDF,Token 效率提升约 90%[7]

存储与优先级

  • 个人 Skills:存放于 ~/.claude/skills/,跨项目共享,不提交版本控制
  • 项目 Skills:存放于 .claude/skills/,可提交 Git 团队共享,随项目分发
  • 当同名 Skill 同时存在于两个目录时,项目级优先级更高,允许项目级定制覆盖个人配置

Prompt

提示词 · 上下文工程的最内环

定义

Prompt 是输入给大语言模型、用于引导其输出的指令。 在早期 AI 应用中,Prompt 工程是优化的核心——通过设计更好的提示词来改善模型输出。

随着 AI 系统复杂化,行业认识到 Prompt 只是更大体系的一环。中国信通院将智能体工程化概括为三层递进:Prompt 工程(解决模型"如何理解任务")、Context 工程(解决模型"依据什么信息作答")、Harness 工程(解决智能体"如何在真实系统中可靠执行")。[8]

Prompt 工程 vs Context 工程

维度Prompt 工程Context 工程
核心问题"我该怎么措辞这个指令?""模型现在需要知道什么?"
范围单次查询系统级信息流
状态几乎无状态,单次有状态,跨多步演化
失败模式歧义:措辞不当导致误解检索问题:错误文档、过期信息或上下文腐烂
关系嵌套关系,非取代关系。Prompt 是最内环(仍然承重),Context 包在它外面

纠正一个流行误导

"Prompt 工程已死,被 Context 工程取代"是错误的。它们不是取代关系,而是嵌套关系——Prompt 是最内环,Context 是包在它外面的状态空间。两者相乘,缺一不可。最内环一旦松动,外面包再多 Context 也救不回来。[9]

上下文工程的四大操作

大多数上下文工程工作可以归结为对上下文窗口的四种操作:

  • Write(写入):将上下文持久化到窗口之外——草稿本、文件、记忆存储、任务列表,使其超越单个窗口存活,可被按需召回
  • Select(选择):从可用信息中筛选正确的子集放入上下文,如 RAG 检索、记忆召回、工具结果截断
  • Compress(压缩):将长内容压缩为更短的摘要——对话历史压缩、工具输出摘要,用更少的 Token 保留核心信息
  • Isolate(隔离):将上下文隔离到子任务或子 Agent 中——每个子上下文窗口独立工作,互不干扰

"少管式"提示词

Anthropic 的新范式:从"给具体规则"到"给方向和原则"。例如把"默认不写注释"改成"写出与周围代码一致的代码",模型会自己匹配注释密度、命名风格与上下文习惯。从"给具体示例"到"设计接口"——把工具参数设计清楚、枚举值列明白,模型自然知道怎么用。从"全部前置上下文"到"渐进式披露"——把独立信息放进 Skills,按需调用,不占日常上下文空间。[4]

Memory

记忆系统 · 跨会话的持久化上下文

定义

Memory 是让 Agent 在多轮交互之间维护状态的机制。 大模型的原生设计是无状态的——每次 API 调用都是从零开始的计算。上下文窗口只是"工作记忆",一旦跨会话、跨天、跨任务,Agent 就会集体"失忆"。[10]

行业在 2026 年达成共识:推理能力在被快速攻克,记忆才是真正的瓶颈。Sam Altman 直言当前 AI 的记忆还处在"GPT-2 时代",强个性化记忆将成为核心护城河。一句话总结:2024 年卷上下文窗口,2025 年卷工具调用,2026 年卷记忆。

认知科学映射

工业界采用认知科学的记忆分层模型来组织 Agent Memory:

记忆类型Agent 中的对应典型实现
工作记忆 Working Memory"我正在做什么"——当前上下文窗口Prompt 中的消息历史、状态
语义记忆 Semantic Memory"我知道什么"——事实与偏好用户画像、KV 事实库、知识图谱
情景记忆 Episodic Memory"我经历过什么"——具体事件与经验历史会话、任务轨迹、失败案例
程序性记忆 Procedural Memory"我会做什么"——技能与规则系统提示词迭代、Rules 文件、Skills

Claude Code 三层记忆架构

Claude Code 的记忆设计有一个核心理念:文件系统即记忆。它选择了一种极简的、人可读的、Git 友好的方案,而非依赖复杂的向量数据库。[11]

L1 上下文内记忆(类比:CPU L1 缓存)

当前会话中 Message 列表的内容。速度最快但最脆弱——容量有限(即使 200K Token 也会耗尽),会话结束即丢失。两大硬约束:容量硬顶 + Context Rot(模型对上下文中间位置注意力显著低于首尾)。

L2 外部文件记忆(类比:L2 缓存 + 数据库索引)

当上下文窗口不够时,信息"外溢"到持久化存储。存储的不是完整信息,而是约 150 字符的指针索引。优势:按需加载、人可审计、Git 友好。Agent 只读取与当前任务相关的文件。

L3 跨会话持久记忆(类比:数据库 / 磁盘存储)

通过 CLAUDE.md 等文件实现跨会话记忆。Claude Memory 于 2025 年 9 月正式推出,允许 Claude 记住项目细节、用户偏好和团队流程。记忆按项目隔离,防止机密信息交叉泄漏。[12] Auto Memory 机制自动记录四类记忆:user(用户角色偏好)、feedback(用户纠正反馈)、project(项目进展决策)、reference(外部资源指针)。

记忆的五段式生命周期

无论哪家实现,都可以抽象为同一个闭环:

编码(从对话中抽取关键信息)→ 存储(写入向量/图/文件)→ 检索(召回相关记忆)→ 注入(注入上下文窗口)→ 巩固/遗忘(更新、合并、淘汰过期信息)

关键限制

  • 不是真正的记忆:与人类的情景回忆不同,Claude 的记忆基于显式脚手架——日志、提交和环境状态。忘记记录,Agent 就忘记
  • "褪色记忆"问题:随着 CLAUDE.md 文件变得更大,模型在海量上下文中定位相关信息的能力下降——信号被噪声淹没
  • 开发者依赖:系统在开发者编写结构良好的提示词、强制会话边界和维护清晰文档时效果最佳

协同架构

七大概念如何协同工作

一个完整请求的生命周期

以下是一个典型 AI 智能体处理用户请求的完整流程,展示七大概念如何协同:

步骤 1:用户输入 + Prompt 加载 用户发出自然语言指令。Prompt 层加载系统提示词,定义模型角色、约束与输出格式。同时加载 Memory 中的用户偏好和历史上下文。

步骤 2:Skill 匹配与加载SKILL 系统扫描技能目录(仅 30-50 Token),根据用户请求匹配相关技能,按需加载详细指令到上下文窗口。

步骤 3:Model 推理决策Model(大语言模型)处理组装好的完整上下文——系统提示+技能指令+记忆+用户请求——推理出下一步行动,输出结构化 JSON 指令(如"调用搜索工具")。

步骤 4:Harness 解析与调度Harness 的 Runtime 解析模型输出的 JSON 指令,Gateway 路由到正确的执行目标。Policy 层在执行前检查权限和安全约束。

步骤 5:MCP 工具执行MCP Client 将工具调用请求发送到对应的 MCP Server,Server 执行实际操作(数据库查询、API 调用、文件操作),返回结构化结果。

步骤 6:结果处理与记忆更新Harness 将工具结果格式化后注入上下文。Memory 层将关键信息持久化——更新项目状态、记录决策、保存用户反馈。Context Manager 管理上下文窗口,必要时压缩或裁剪旧信息。

步骤 7(循环):编排循环继续Harness 的编排循环决定是否继续——如果任务未完成,回到步骤 3 让 Model 处理更新后的上下文;如果完成,输出最终结果。整个过程可能循环数十甚至数百次。

横向对比

七大概念定位与关系

核心概念对比

概念角色定位类比解决的核心问题提供方
Model推理引擎大脑 / CPU理解、推理、生成Anthropic, OpenAI, Google, DeepSeek
Harness运行框架操作系统编排、执行、恢复、安全Claude Code, Cursor, Codex, DeepSeek Harness
Agent完整工作单元数字员工自主完成多步骤任务Model + Harness 的产物
MCP工具连接协议USB-C 接口标准化工具/数据接入Anthropic 开源标准
SKILL专业知识模块按需专家可复用的领域知识封装Anthropic 开放标准
Prompt行为指令工作指令定义模型角色与行为约束开发者 / 系统设计
Memory持久化上下文笔记本 / 日志跨会话状态保持与经验复用Agent 内置机制(如 CLAUDE.md)

三组关键对比

MCP vs SKILLMCP 解决"连接"问题——让 Agent 能调用外部工具和数据源。SKILL 解决"知识"问题——让 Agent 拥有领域专业能力。MCP 是"手"的延伸,SKILL 是"脑"的扩展。

Prompt vs SKILLPrompt 是每次对话都加载的底层指令。SKILL 是按需加载的专业模块,仅消耗 30-50 Token 索引。Prompt 是"基本职责",SKILL 是"专业技能证书"。

Memory vs ContextMemory 是持久化存储,跨会话存活。Context 是当前窗口内的信息,会话结束即消失。Memory 是"硬盘",Context 是"内存"。

演进趋势

从模型竞赛到系统工程

发展时间线

2023 - 2024:卷上下文窗口 大模型竞相扩大上下文窗口,从 32K 到 128K 再到 1M+ Tokens。但行业很快发现"更大不等于更好"——信息过载导致注意力衰减("lost in the middle"效应)。

2024 年 11 月:MCP 发布 Anthropic 开源 Model Context Protocol,标准化 AI 与外部工具的连接方式,被类比为"AI 领域的 USB-C 接口"。

2025 年:卷工具调用 + Skills 发布 Function Calling 成为标配。Anthropic 于 10 月推出 Agent Skills,12 月正式作为开放标准发布。Context Engineering 概念走红。

2026 年:卷记忆 + Harness 工程 Mem0、Letta、Zep 等记忆框架批量涌现,记忆成为独立赛道。中国信通院提出"Prompt→Context→Harness"三层工程化体系。DeepSeek 发布开源 Harness,"一切皆插件"架构引发关注。

趋势判断

模型正在商品化,竞争维度从"模型能力"上升到"模型如何利用工具"的底层运行时领域。未来 1-2 年,Harness 工程记忆架构将成为决定 Agent 产品力的关键变量。上下文工程将取代单一的 Prompt 工程,成为 AI 应用的核心方法论。

总结

七大概念一句话回顾

  • Model — 大语言模型是 Agent 的"大脑",能推理、生成、决策,但本身无状态、不执行、不联网。模型正在商品化,各家能力趋于收敛
  • Harness — 模型外面的整套基础设施,是语言模型的"操作系统"。管理编排循环、工具执行、上下文、记忆、错误恢复和安全。Agent = Model + Harness
  • Agent — Model + Harness 的完整工作单元。核心能力是"大模型自己决定下一步调什么函数",其余的归 Harness,让这个过程跑得稳、快、安全
  • MCP — AI 领域的"USB-C 接口",标准化连接外部工具和数据源。三大原语:Resources(读取)、Tools(执行)、Prompts(模板)
  • SKILL — 可复用的结构化"专业说明书",通过渐进式披露按需加载。仅 30-50 Token 索引即可激活,比 RAG 透明,比微调灵活
  • Prompt — 上下文工程的最内环,定义模型行为指令。与 Context 工程是嵌套关系而非取代关系,两者相乘缺一不可
  • Memory — 跨会话的持久化上下文,2026 年的竞争焦点。认知科学四层映射:工作记忆、语义记忆、情景记忆、程序性记忆。Claude Code 采用"文件系统即记忆"理念,三层架构:L1 上下文内→L2 外部文件→L3 跨会话持久

一句话总结: Model 是大脑,Harness 是操作系统,Agent 是完整的人,MCP 是手延伸的接口,SKILL 是按需加载的专业知识,Prompt 是行为指令,Memory 是跨会话的笔记本。七者协同,让 AI 从"只会想"进化为"能行动、能记忆、能协作"的数字员工。


参考资料: [1] LangChain Blog · [2] DeepSeek 官方 · [3] Anthropic Engineering · [4] Anthropic Prompt Engineering Guide · [5] MCP 官方文档 · [6] MCP 生态报告 · [7] Anthropic Skills 文档 · [8] 中国信通院 · [9] Context Engineering 相关讨论 · [10] AI Memory 综述 · [11] Claude Code 文档 · [12] Claude Memory 发布说明

Released under the MIT License.