Harness Engineering(智能体外壳工程)
Agent = Model + Harness
裸的大语言模型(LLM)本质上只是一个无状态的函数——给它文本,它返回文本。它本身没有记忆、不能执行动作、无法验证自己的结果。真正把模型变成可靠智能体的,是包裹在它周围的那一层外壳(Harness)。
Harness Engineering(外壳工程) 是 2026 年由业界(Mitchell Hashimoto 提出,OpenAI、Anthropic、Thoughtworks 等随后形成共识)正式确立的一门工程学科:它不再只关注「单次提示词」(Prompt Engineering)或「上下文窗口内的信息组织」(Context Engineering),而是在更高的抽象层上,设计模型周围的整个运行环境——编排循环、工具、记忆、状态、护栏、反馈回路与可观测性。
AIME Chat 的设计理念正是如此:它不是一个「模型前面的聊天框」,而是一套围绕模型构建的完整外壳,让任意提供商(云端或本地)都能被打造成可靠、目标驱动的智能体。
三个演进阶段
| 阶段 | 关注点 | 类比 |
|---|---|---|
| 提示词工程(2022–2024) | 单次交互中的完美指令 | 写好一封邮件 |
| 上下文工程(2025) | 单次决策中提供全部相关信息 | 准备好邮件的全部附件 |
| 外壳工程(2026) | 架构整个运行环境、工作流、约束与生命周期 | 搭建整个办公室 |
外壳工程包含了前两者,并把「提示词」和「上下文」重新定义为外壳中的一个组件。
AIME Chat 的外壳分层
AIME Chat 基于 Mastra 框架,把以下外壳能力组合成一个连贯的运行环境:
1. 编排循环(Orchestration Loop)
外壳的「心跳」。它驱动 提示 → 响应 → 工具调用 → 观察 → 下一步 的循环(即 ReAct / TAO 循环),直到任务完成或需要人工介入。
- 基于 Mastra 的 Agent 运行时
- 流式响应与多步工具调用
- 由外壳掌控循环的终止条件,而非简单地「一直调用模型直到它说完成」
2. 指引(Guides)
前置(feed-forward)约束,用于在动作发生前引导模型行为。
- Agent 指令:定义角色、能力、边界与输出格式
- 助手人格:可直接选用并定制的内置人格
- Skill 技能系统:从 Git 仓库或在线市场导入的可复用能力包
详见 Agent 管理。
3. 工具接口(Tool Interfaces)
智能体的「双手」。外壳以清晰的 Schema 向模型暴露工具,并负责注册、参数校验、沙箱执行与结果回传。
- 文件系统:Bash、Read、Write、Edit、Grep、Glob
- 代码执行:Python、Node.js
- 网络:Web Fetch、Web Search
- 多模态:Vision、OCR、图像生成与编辑
- 通过 MCP(Model Context Protocol) 可无限扩展第三方工具
4. 上下文与记忆(Context & Memory)
在多轮对话与跨会话之间,组装并沉淀正确的信息,对抗「上下文腐烂(context rot)」。
5. 编排与子 Agent(Orchestration & Sub-agents)
把复杂任务拆解、分派给多个专门的 Agent 协作完成。
- 子 Agent 配置
- 多 Agent 协作流程(如 规划 → 执行 → 审查)
6. 状态与长任务(State & Long-running Tasks)
持久化状态,让工作可以跨多次运行延续与恢复。
- 后台 Bash 会话:长时间运行的命令以后台会话形式被跟踪
- Goal 目标驱动执行:围绕目标推进的长程任务
- Crons 自动化任务:按计划自动执行(见 自动化 Crons)
7. 护栏与权限(Guardrails & Permissions)
约束智能体可执行的操作范围,确保安全可控。
- 按 Agent 的工具权限配置
- 敏感操作(如文件删除、命令执行)的审批
- 集中式 Secrets 管理,本地加密存储
8. 可观测性(Observability)
追踪智能体行为,便于调试并建立信任。
- 详细的运行时日志
- 运行库安装与工具调用的诊断信息
- 可从「关于」页面直接打开日志文件
外壳分层一览
| 分层 | 作用 | 在 AIME Chat 中的实现 |
|---|---|---|
| 编排循环 | 驱动 prompt→tool→observe 循环 | Mastra Agent 运行时,流式 + 多步工具调用 |
| 指引 | 前置约束,引导行为 | Agent 指令、助手人格、Skill |
| 工具接口 | 受控的对外访问 | Bash / 文件 / 代码 / 网络 / 视觉 / MCP |
| 上下文与记忆 | 组装并沉淀信息 | 知识库、养成记忆、会话/工作记忆 |
| 编排与子 Agent | 分派与协作 | 子 Agent 与多 Agent 流程 |
| 状态与长任务 | 持久化与恢复 | 后台 Bash、Goal、Crons |
| 护栏与权限 | 约束操作范围 | 工具权限、审批、Secrets 管理 |
| 可观测性 | 追踪与调试 | 运行时日志与日志入口 |
为什么外壳很重要
正如 Anthropic 的研究指出的:模型无法可靠地评估自己的工作,缺乏自我意识,容易犯错或陷入低效路径。外壳提供了模型所缺乏的外部控制、约束与反馈回路,从而实现持续、高质量、安全的自主运行。
「智能体不难,难的是外壳。」(Agents aren't hard; the Harness is hard.)
AIME Chat 把这套外壳工程内置于桌面应用之中,让你无需自己搭建基础设施,就能在本地把任意模型变成一个可靠的智能体。