Agent工程化-智能体编排
上下文助手
我们知道当前不管是Code、Cowork 以及 比较火的OpenClaw 等助手类的Agent,不外乎两个特点
- 所有的自洽和逻辑都只能维持在当前的上下文
- 上下文可以被动态的追加、压缩、整理、拼接
- 外挂一些固定的处理接口:Task、SubAgent、Skills、Mcp等等
- 支持额外的记忆
- 支持和现有一些软件的控制、执行
- MCP 支持现有一些服务的的对接
主要的问题
- 上下文局限性,决定了不能进行大范围,高深度的思考
- 使用有限的上下文处理经过拆分的大范围的知识片段会非常的繁琐
- LLM本身存在的抽象深度问题,智商不够
- 动态学习能力的欠缺
Harness
这套方法不是理论上的概念,而是一种 工程结构(Engineering Structure):
让 Agent 不再“一口气做完所有事”,而是像一个真正的软件工程师一样:
- 从一个明确定义的 feature list 开始
- 初始化项目骨架
- 每轮做一小步、只做一个 feature
- 每轮产生可追踪的 artifact 和 commit
- 保持项目状态的连续性
- 通过日志、文件结构、状态缓存持续“记住”上下文
最关键的约束:Agent 永远在“小步快走”,这样才能跨数十轮保持稳定
- 拥有持久化工作空间(workspace)
- 拥有 feature list / task list
- 拥有日志、状态、内存
- 通过一轮轮 “patch + commit” 前进
- 由 harness 保证其 可控性、稳定性和可追踪性
Agent Harness 是包裹在 LLM 外层的一套编排系统。它的核心作用是将不确定的模型行为转化为稳定、高效的生产力。
- Instructions(指令系统): 包含 System Prompt 和动态规则(Rules)。
- Tools(工具集): 赋予模型“手脚”,如文件读写、终端执行、搜索能力。
- User Messages(交互流): 用户的指令以及上下文的维护。