Reference 0001
Agent 架构模式速查
把 agent runtime、workspace、memory、tool system、orchestration、sandbox 和 observability 压缩成一张可复习的模式表。
1. 模式分层
| 条目 | 说明 |
|---|---|
| Agent app | 用户看到的产品或入口:CLI、IDE、Gateway、desktop app、bot。 |
| Runtime | 拥有上下文组装、模型调用、工具执行、状态保存的一次运行闭环。 |
| Harness | 管理多个 runtime、权限、协作、状态、部署和人工介入的上层控制系统。 |
2. 组件清单
| 条目 | 说明 |
|---|---|
| Context | 系统规则、历史、workspace、文件、工具结果、记忆和附件。 |
| Memory/State | 状态服务恢复,记忆服务跨任务复用。 |
| Tools/Skills | 工具执行外部动作,skills 封装可复用任务知识。 |
| Sandbox | 限制执行环境和 blast radius。 |
| Trace/Eval | 把行为变成可定位、可复现、可改进的证据。 |
3. 组件判断题
| 组件 | 判断问题 | 常见错误 |
|---|---|---|
| Runtime | 谁拥有循环、停止条件、工具回写和会话持久化? | 把一次模型调用误认为完整 agent runtime。 |
| Context | 哪些信息必须进入本轮输入,哪些应该检索,哪些必须结构化保存? | 把所有历史都塞进 prompt,导致污染和成本失控。 |
| Memory | 这条信息明天是否仍应影响 agent?是否可删除、可审计、可降权? | 让模型自行判断“重要就保存”。 |
| Tools | 工具 schema、权限、错误语义和副作用边界是否清楚? | 只暴露一个自由 shell 或 HTTP 工具,让模型自己约束风险。 |
| Orchestration | 任务是否真的需要 subagent 或 manager-worker,还是单 agent 足够? | 为了“高级”而拆多 agent,反而增加路由和状态同步错误。 |