现在谈 Agent,如果还停留在“模型会不会 Function Calling”,很容易错过真正的工程变化。
2026 年更值得关注的是 Agent Harness:模型之外那套负责上下文、工具、环境、状态、权限和验证的运行系统。它决定 AI 是只生成一段看起来合理的文字,还是能在真实环境里持续推进任务。

从一次推理到一个运行循环
传统聊天请求的边界很清楚:输入上下文,返回内容。Agent 的边界却是一个任务。任务可能持续几十分钟,经历多次工具调用、失败、重试和人工插入。

一个简化的 Harness 通常包含:
type AgentState = {
goal: string
plan: Step[]
observations: Observation[]
artifacts: Artifact[]
retries: number
status: 'running' | 'blocked' | 'done'
}
async function runAgent(state: AgentState) {
while (state.status === 'running') {
const context = selectContext(state)
const action = await reason(context, registeredTools)
const observation = await execute(action, permissionPolicy)
const verdict = await verify(action, observation, state.goal)
state = reduceState(state, action, observation, verdict)
}
return state.artifacts
}
循环并不神秘。困难的是如何避免它在长任务里漂移、重复、误操作和无限消耗。
Harness 的五个关键职责
1. Context selection,而不是 context dumping
把整个仓库、全部聊天记录和所有工具说明塞进窗口,既贵又未必有效。需要根据当前步骤选择文件、历史决策、工具描述和运行时状态,并在任务变长时做摘要和 checkpoint。
2. 工具调用必须有类型、策略和边界
参数 Schema 只是第一层。还需要处理工具超时、幂等性、重试策略、写操作审批、网络权限和敏感信息。读文件和删除文件不能使用同一套默认策略。
3. Environment 是 Agent 的“身体”

Coding Agent 从终端和文件系统切入,是因为代码环境天然有测试、Diff、版本控制和可回滚性。通用工作 Agent 则要面对浏览器、办公文件、本地应用和云环境,这些环境的可验证性明显更差。
4. Verification 不应该只靠模型自评
能用测试就跑测试,能比对 Schema 就比对 Schema,能检查引用就检查引用。模型自我反思可以作为信号,但不应该是唯一验收机制。
5. Human-in-the-loop 是风险控制,不是能力不足
高风险动作停下来请求批准,并不会让 Agent“不够自动”。真正成熟的系统应该区分低风险读取、可撤销写入和不可逆外部操作。
产品形态为什么开始分叉

Codex 与 Claude Code 继续深挖代码、终端和仓库;ChatGPT Work 与 Claude Cowork 把 Agent 扩展到知识工作;Manus 同时提供浏览器、本地电脑和云端任务环境;Gemini 让 Computer Use 成为模型内置工具。
这些产品的差异并不只是模型榜单,而是 Harness 选择:任务状态放在哪里、工具如何注册、环境是否持久、用户何时接管、结果如何验证。
别用一次成功的 Demo 评价 Agent

横评 Agent 时,我更关心六个问题:
- 同一任务运行五次能成功几次?
- 最终产物能否直接使用?
- 中间需要人工救场几次?
- 失败后能否从 checkpoint 继续?
- 完成任务的实际时间和费用是多少?
- 高风险动作是否清晰、可见、可审批?
最后
模型决定能力上限,Harness 决定这些能力能不能稳定落到工作里。
从 Chat 到 Agent 的真正变化,不是聊天框长出了几只手,而是系统开始围绕任务、状态、工具、环境、验证和权限重新设计。接下来真正拉开产品差距的,也会是这些“模型之外”的工程。
参考资料
- OpenAI:How agents are transforming work
- OpenAI:ChatGPT Work and Codex
- Anthropic:Agentic coding and persistent returns to expertise
- Google:Computer Use in Gemini 3.5 Flash
- MCP:The 2026 MCP Roadmap
- Manus:Browser Operator