关于 automation-shape-routing
Automation Shape Routing 是一项技能,用于选择能满足任务证据与控制要求的最小执行形态。它只负责将工作路由给相应负责人,不会启动所选运行环境或更改运行状态。
主要功能
- 01按顺序选择执行形态
- 02评估生命周期、拓扑、控制和输出需求
- 03并发前检查写入范围冲突
- 04按规范返回单行路由结论
适用场景
- 01为一次性交付选择内联执行
- 02为可复用流程选择技能或工作流
- 03判断何时需要持久且可引导的工作者
- 04避免未经授权启动编排运行环境
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ boshu2/ agentops --skill automation-shape-routing安装后在 Claude Code 中输入/automation-shape-routing确认已加载。
详细介绍
自动化形态路由
选择能够保留所需证据和控制力的最小执行形态。本技能只负责路由,不负责构建或启动底层系统。
按顺序路由之所以有效,是因为每一级的运维成本都严格低于下一级:如果最小形态确实能保留任务所需的证据和控制力,那么任何更大的形态只会增加协调成本,不会提高正确性。
明确的失败模式——迷恋底层系统:仅仅因为拓扑结构有趣,就路由到持久型工作进程,而不是因为某个决定性维度确实要求这样做。
反模式:在路由过程中启动所选底层系统,以「省一步」。纠正方式:只返回一行结论,由负责人在其自身权限下启动。
关键约束
- **只做路由;不要启动底层系统。原因:**选择执行形态是一项判断工作,而启动 NTM、Agent Mail 或 Gas City 会改变运行时状态,需要另行获得操作员授权。
- **优先选择能够保留证据的最小形态。原因:**持久化和协调会增加恢复与所有权成本,一次性任务无法抵偿这些成本。
- **选择并发方案前先划分写入范围。原因:**更大的工作进程拓扑无法让相互重叠的生产环境写入变得安全。
按顺序路由
- 只有一个交付物? 在当前会话中完成。仅当独立视角本身就是产出时,才使用小型的会话内新上下文扇出。一次性任务不要创建可复用产物。
- 可复用的顺序流程? 使用
skill-builder。 - 绝不能退化的约束? 通过
operationalize路由到一个门禁。 - 固定类型的 DAG、无头运行,且无需附加或引导? 仅在明确选择并且可用该运行时时,使用
workflow-builder。 - 针对调用方提供的数据包,需要持久且可附加的角色? 使用
agent-native。NTM 是窗格适配器;Agent Mail 仅协调明确选定的活动参与者。 - 需要具备原生监管和存储能力的持久任务之城? 仅当操作员明确选择 Gas City 时,才路由到
using-gc。GC 不是自动回退方案,也不是ao运行时枚举值。
决策维度
| 维度 | 轻量选择 | 升级选择 |
|---|---|---|
| 生命周期 | 当前轮次 | 持久/可附加的工作进程 |
| 拓扑 | 单个写入者或有界扇出 | 持久角色图 |
| 控制 | 运行期间无需引导 | 观察/提示/替换 |
| 输出 | 单个产物 | 可复用技能/工作流/门禁 |
| 存储 | 由调用方持有的数据包集 | 由操作员选定的 GC 任务存储 |
| 竞争 | 单个写入者 | 先划分范围,再通过 Agent Mail 预留 |
并行化带来的是独立性,而非速度保证。对于一次性工作、写入范围冲突,或无法利用并发的顺序链,应拒绝使用持久化编排。
交接
只能准确返回以下其中一项:
inline或bounded-fanoutskill-builderworkflow-builderagent-native,并说明使用持久窗格的具体理由using-gc,并明确说明操作员的选择operationalize:gate
指出决定性维度和负责人,然后停止。调用方可以另行调用相应负责人;不要从这个路由器复制或启动委派的工作流。
输出规范
-
**产物目录:**仅限 stdout;此路由决策不会创建文件。
-
**文件名约定:**无。只输出一行路由判定。
-
序列化/架构格式:
shape=<allowed-shape>; axis=<deciding-axis>; owner=<owning-skill>,其中 shape 必须使用 Handoff 下列出的某个值。 -
Owner 映射:
inline和bounded-fanout使用current-agent;skill-builder、workflow-builder、agent-native和using-gc的 owner 使用相同的值;operationalize:gate使用operationalize。 -
**验证器命令:**验证捕获的
$verdict是否严格为一行,并符合声明的 shape/owner 映射:printf '%s\n' "$verdict" | awk ' NR > 1 { extra = 1 } { valid = ($0 ~ /^shape=(inline|bounded-fanout); axis=[^;]+; owner=current-agent$/ || $0 ~ /^shape=skill-builder; axis=[^;]+; owner=skill-builder$/ || $0 ~ /^shape=workflow-builder; axis=[^;]+; owner=workflow-builder$/ || $0 ~ /^shape=agent-native; axis=[^;]+; owner=agent-native$/ || $0 ~ /^shape=using-gc; axis=[^;]+; owner=using-gc$/ || $0 ~ /^shape=operationalize:gate; axis=[^;]+; owner=operationalize$/) } END { exit !(NR == 1 && !extra && valid) } ' -
**下游交接:**将指定的 owner 返回给调用方,不调用它;
inline和bounded-fanout描述建议的执行形态,但不授权此路由技能开始执行。
质量标准
- 判定恰好指定一个允许的 shape 和一个决策轴。
- 持久化或城市形态的路由注明操作员的明确选择。
- 并发路由说明生产写入范围互不重叠。
- 路由器将任务委派给 owner,不复制或启动其工作流。