name: 添加群集模式 description: 当向agent-relay添加新的多智能体协调模式时使用 - 提供类型、模式、模板和文档更新的清单 tags: agent-relay, swarm, patterns, workflows
添加群集模式
概述
通过更新四个位置向agent-relay添加新的多智能体协调模式:TypeScript类型、JSON模式、YAML模板和Markdown文档。
何时使用
- 添加新的群集模式(例如“竞争型”、“拍卖型”)
- 扩展多智能体工作流的协调能力
- 响应用户对新编排策略的请求
快速参考
| 文件 | 位置 | 添加内容 |
|---|---|---|
| types.ts | packages/broker-sdk/src/workflows/types.ts |
添加到SwarmPattern联合类型 |
| schema.json | packages/broker-sdk/src/workflows/schema.json |
添加到SwarmPattern.enum数组 |
| template.yaml | packages/broker-sdk/src/workflows/builtin-templates/ |
创建{pattern}.yaml |
| pattern.md | docs/workflows/patterns/ |
创建{pattern}.md |
| template.md | docs/workflows/templates/ |
创建{pattern}.md |
| README.md | docs/workflows/README.md |
添加到模式和模板表格 |
实施清单
1. 更新TypeScript类型
// packages/broker-sdk/src/workflows/types.ts
export type SwarmPattern =
| "fan-out"
| "pipeline"
// ... 现有模式 ...
| "your-new-pattern"; // 在此添加
2. 更新JSON模式
// packages/broker-sdk/src/workflows/schema.json
"SwarmPattern": {
"type": "string",
"enum": [
"fan-out",
"pipeline",
// ... 现有模式 ...
"your-new-pattern"
]
}
3. 创建YAML模板
# packages/broker-sdk/src/workflows/builtin-templates/{pattern}.yaml
version: "1.0"
name: 模式名称
description: "单行描述"
swarm:
pattern: 模式名称
maxConcurrency: N
timeoutMs: N
channel: swarm-pattern-name
agents:
- name: lead
cli: claude
role: "角色描述"
# ... 更多智能体
workflows:
- name: workflow-name
steps:
- name: step-name
agent: agent-name
task: |
任务描述,包含{{task}}占位符
verification:
type: output_contains
value: STEP_COMPLETE
coordination:
barriers:
- name: barrier-name
waitFor: [step1, step2]
state:
backend: memory
namespace: pattern-name
errorHandling:
strategy: fail-fast
4. 创建模式文档
# docs/workflows/patterns/{pattern}.md
# 模式名称
单句描述。
## 何时使用
- 使用场景1
- 使用场景2
## 结构
[显示智能体/步骤流程的ASCII图表]
## 配置
[YAML代码片段]
## 最佳实践
- 实践1
- 实践2
5. 创建模板文档
# docs/workflows/templates/{pattern}.md
# 模式模板
**模式:** 名称 | **超时:** N分钟 | **通道:** swarm-name
## 概述
此模板的功能。
## 智能体
| 智能体 | CLI | 角色 |
|-------|-----|------|
## 工作流步骤
1. **步骤**(智能体)— 描述
## 使用方式
[CLI和TypeScript示例]
## 验证标记
- `MARKER` — 描述
6. 更新README
在docs/workflows/README.md的两个表格中添加:
- 模式表格:
| [模式](patterns/pattern.md) | 描述 | 最佳适用场景 | - 模板表格:
| [模式](templates/pattern.md) | 模式 | 描述 |
常见错误
| 错误 | 修复方法 |
|---|---|
| 忘记schema.json | 如果模式不包含该模式,验证将失败 |
| 命名不一致 | 在类型、模式、模板文件名和文档中使用相同名称 |
| 缺少验证标记 | 每个步骤都应有output_contains验证 |
| 错误的文档链接 | 使用相对路径:patterns/name.md而非/docs/workflows/patterns/name.md |
模式设计指南
良好模式应具备:
- 清晰的协调模型(谁与谁通信)
- 定义的故障处理(如果一个智能体失败会发生什么)
- 适当的并发性(并行与顺序)
- 收敛点的屏障同步
模式类别:
- 并行型:扇出、竞争型、分散-聚集
- 顺序型:管道、交接、级联
- 层次型:中心-辐射、分层、监督者
- 共识型:共识、辩论、拍卖
- 图型:有向无环图、网状