Agent Harness 具体要如何设计 入门科普

Agent Harness(智能体支撑架构) 本质上是包裹在大模型(LLM)外层的"底盘工程"与操作系统。如果把大模型比作一台引擎,Harness 就是把方向盘、油门、仪表盘、刹车和外部工具全部组装起来的整车架构。

现代通用 Agent Harness 的设计并非盲目堆砌功能,而是建立在 PTC 设计原则 之上,由 6 大工具拼图、3 个系统事件与 7 层系统提示词 组成。

一、 核心设计哲学:PTC 原则(代码化工具调用)

在设计 Harness 的工具之前,必须先理清工具的抽象层级:

  • 朴素陷阱(Atomic Tool 堆叠): 早期开发习惯根据业务需求一个接一个加工具(如查订单做 queryPending、查业务员做 queryCommissioner)。这会导致工具定义占满 System Prompt(即 Prefill 膨胀),像 Anthropic 曾测算 58 个原子工具就会吃掉 55K 的 Token,严重挤占对话上下文。

  • PTC 解法(Programmatic Tool Calling): 既然大模型的代码生成能力已经极强,且编程语言本身是图灵完备的,直接给 Agent 提供编写与执行代码的能力即可。Agent 面对新需求时,自己写脚本(如 Python/Bash)、调 SDK 处理数据并输出结果。

  • 复杂度转移: PTC 将"定义成百上千个业务工具"的工程复杂度,转移到了"大模型自身的 Coding 能力与执行沙箱的安全隔离"上。

二、 Agent Harness 标准架构:六大拼图

一个完整的通用 Harness 需要装配以下 6 个维度的工具与机制:

模块分类 核心工具 / 机制 角色与通俗解释
1. PTC 工具组 write、read、edit、bash 基础动手能力。Agent 可以创建代码文件、查看局部内容、精准替换代码片段并在命令行里运行它。
2. 规划与子智能体 task、enter_plan、exit_plan、todo_write 大脑指挥部 。复杂任务由 task 委派只读或专能子智能体执行;规划模式与待办清单用来防止目标漂移、随时恢复上下文。
3. 上下文补齐 ask_user、grep、glob、web_search、web_fetch 防幻觉情报网 。信息不足时向人询问(ask_user),查本地代码/文件(grep/glob),或者联网搜索并提取网页文本。
4. 循环工程 get_goal、set_goal 长程目标校准。维持长期目标的锚点,属于相对低频的持久化指引工具。
5. 记忆持久化 read_skill 工具 + 项目基建发现 知识加载器 。按需将特定专业技能(如 SKILL.md)调入上下文,避免一开始全量注入。
6. 上下文压缩 compact(系统事件) 内存垃圾回收。对话历史快撑满时自动压缩。

三、 系统事件(System Events):不能让模型自己决定的机制

并非所有逻辑都适合做成模型自主调用的 Tool。为了保证系统的确定性与稳定性,以下三件事被设计为无须模型思考、触发即执行的系统底层事件:

  1. SKILL 自动发现(创建新 Session 时触发): 系统扫描工作区所有的技能文件,仅把 Skill 的名称、简介和调用方式提取成目录写入提示词,具体内容待调用时再读。

  2. AGENTS.md 自动发现(创建新 Session 时触发): 自动读取项目的全局开发规范、项目约束,直接灌入提示词顶层。

  3. 上下文压缩 Compact(上下文占用达到约 80% 时自动触发): 绝不能让模型自己决定何时清内存,当 Token 消耗接近阈值,底盘自动截断早期执行轨迹并做摘要总结,替换下一轮请求的上下文。

四、 架构粘合剂:七层 System Prompt 设计

将上述组件串联起来注入大模型的,是一套严密的结构化系统提示词(System Prompt):

  1. 身份定位(Identity): 说明 Agent 是谁、主要角色与核心目标。

  2. 行为准则(Guidelines): 设定语气风格、思考方式与通用操作禁忌。

  3. 操作边界(Boundaries): 明确 PTC 的权限红线(如限制在特定目录内操作,超出路径必须调用 ask_user 征求授权)。

  4. 工具定义(Tool Schema): 注入 write、read、bash 等工具的参数规范。

  5. 技能索引(Skills): 注入已发现的 Skill 列表与简要描述。

  6. 项目规则(AGENTS.md): 注入项目级的代码规范、提交规范等硬性约束。

  7. 记忆管理(Memory Policy): 规定哪些工作经验可以存入长期记忆、存放路径及更新机制。

五、 落地该架构时的现实权衡

设计这套 Harness 时,需要注意两个现实边界:

  • 安全性沙箱: 给予 Agent bash 权限意味着它拥有毁灭性操作的能力(如误删数据、修改关键配置),必须配合容器/沙箱进行网络隔离与权限截断。

  • 基模门槛: 这套架构要求底层模型不仅能听懂人话,还必须具备极高的代码编写可靠性(Coding 能力)与工具规划逻辑(Agentic 能力)。

相关推荐
ahccqw几秒前
OpenCV 缩放 与 位移
人工智能·opencv·计算机视觉
长不大的杨瑞杰7 分钟前
OpenCode v2 GitLab 集成实战:Issue 驱动开发、MR 审查与 CI/CD 最小权限
人工智能·ci/cd·gitlab·ai编程·opencode
深蓝AI1 小时前
美团 LongCat-2.5 拆解:1.6T 参数只激活 3%,1M 上下文卖 0.3 美元,Agent 模型的账变了
人工智能·llm
小和尚同志6 小时前
54.6k star 的 Multica: 集多 Agent 和看板于一体的 AI 平台
人工智能·aigc·three.js
hpoenixf6 小时前
一个 null 如何让 Agent 工具调用失败:流式协议兼容性实战
agent
一枕槐安4876 小时前
少样本提示(Few-shot)在业务场景的落地实践
大数据·人工智能·意图分类·mmr多样性·knn检索·动态示例选择
王中阳Go7 小时前
后端转 Agent 岗面试怎么答:8 个高频问题与应答口径
人工智能·后端·python·大语言模型
hpoenixf7 小时前
Agent 的行动提醒:从生成建议到真正送达模型
agent
hpoenixf7 小时前
Agent 有这个工具,模型为什么还是看不到?——工具表面的演进
agent
海宇AI7 小时前
零信任架构实战:基于海宇个人风险报告构建自动化分期商城信用额度初审网关
运维·人工智能·架构·自动化