756 字
约 2 分钟
10
S22-J03 · 项目工程细节:子 Agent、Skill 与沙箱

适用读者:要搭一个"能用"的 Agent 项目的人。
前置:S21-J01(Harness)、S21-B04(Skills)。
覆盖旧文:765(141) 754(70) 316(45) 288(48) 764(198) 770(209) = 711 点。
覆盖扩展:E-S22-010(子 Agent 边界)、E-S22-011(沙箱策略)。
上一篇:S22-J02 · 记忆系统落地:分层与会话
下一篇:S22-J04 · ReAct 变体与 DAG。


1. 一句话结论

一个能用的 Agent 项目 = 主循环 + 工具层 + 记忆层 + 沙箱 + 可观测。模块化的目的是"每个模块能被单独替换与测试"。

┌──────────────┐
│ 主 Agent 循环 │ ← 步数上限、终止判据(S21-B02)
├──────────────┤
│ Skill / 子Agent │ ← 能力组合(S21-B04)
├──────────────┤
│ 工具执行 + 沙箱 │ ← 权限边界(E-S22-011)
├──────────────┤
│ 记忆 / 检索     │ ← S22-J02
└──────────────┘

2. 子 Agent 的边界(E-S22-010)

该拆子 Agent 不该拆
上下文会长到爆炸 两三步就能做完
权限不同(只读/可写) 同权限、同上下文
可并行 强顺序依赖

"子 Agent 返回什么":结构化结果(结论 + 引用 + 未决项),不要返回整段对话(S21-J02)。


3. Skill 与工具的层次(A-754/A-316)

层 例子 谁维护
工具 read_file、query_db 开发者
Skill "把 PDF 转 Markdown 并入库" 开发者/业务
子 Agent "负责文档处理的代理" 架构层

判据:"它能被复用在另一个场景吗?" 能 → 做成 Skill;只此一处 → 留在业务代码。


4. 沙箱策略(E-S22-011)

操作 沙箱要求
读文件 路径白名单
执行命令 容器/VM 隔离(S21-J01)
网络访问 域名白名单
写操作 临时目录 + 审批(S21-A02)

"为什么沙箱要在项目早期就做":后期加沙箱要改所有工具的执行路径——一开始就设计成"工具必须通过执行器"。


5. 五个误区

误区 真相
"先做功能,沙箱后补" 后期改造成本高
"子 Agent 越多越模块化" 协调成本上升
"Skill 就是提示词" 它绑定工具与流程
"工具直接调系统就行" 必须过执行器/沙箱
"记忆和检索是一件事" 前者是状态,后者是知识

6. 自检

  1. 五层结构的职责?
  2. 子 Agent 该拆/不该拆的判据?
  3. Skill 与工具的层次?
  4. 沙箱为什么要在早期设计?
  5. 记忆与检索的区别?

7. 下一篇

S22-J04 · ReAct 变体与 DAG 编排

模块讲完,下一篇讲"流程形态":静态图与动态循环怎么选。


本篇属于系列《S22 · AI 工程落地实战》。旧文来源:A-765/754/316/288/764/770;扩展点 E-S22-010/011。

S22-J03 · 项目工程细节:子 Agent、Skill 与沙箱
https://www.clxhxhhr.top/posts/5521/
作者
clxstart
发布于
2024-12-31
许可协议
CC BY-NC-SA 4.0
评论
0 条
还没有评论,先写一条吧。