背景
通信demo马 demo backlog #2 跟踪。通信龙 review #25 时选择本案为优先级 #2,并 PASS「AI 新闻编辑室」(理由:模式与 translation-pipeline 重合)。
提案文档(v1 草案):docs/demos/standup-room-proposal.md(draft PR 上来后链接生效)
一句话定位
模拟 5 分钟产品 standup → 1 host 按顺序点名 → 3 reporter 各报 yesterday/today/blockers → recorder 汇总输出 markdown standup notes。
入口:anet demo standup --topic "..." --reporters 3(CLI one-shot,对齐 anet demo debate / anet demo pr-review)。
编队(5 agent,序列化轮询 + 累积 barrier)
| Alias |
职责 |
host-<suffix> |
主持 + 按顺序点名 + 过渡话术(LLM 推理驱动指挥棒传递) |
reporter-1/2/3-<suffix> |
三段式报告 yesterday/today/blockers |
recorder-<suffix> |
累积 barrier 等 3 份 transcript → 提炼 risks/next-actions → 输出 markdown |
编排时序
T0 CLI 拿 topic
T1 host 开场 + 点名 reporter-1
T2 reporter-1 → host 过渡 → reporter-2 → host → reporter-3 → host
T5 host 把 3 份 transcript 整包派给 recorder
T6 recorder → 汇总 → markdown standup notes
T7 CLI 写入 ./standup-<topic>-<ts>.md
T8 cascade 清理 5 agent + 独立 network(除非 --keep)
编排范式对比矩阵(refs PR #26 同结构)
| Demo |
编排范式 |
Agent |
Topology |
| hello-world |
对话 |
2 |
A↔B |
| translation-pipeline |
线性链 |
3 |
A→B→C |
| debate |
9 步回合制 |
6 |
host 主导驱动 |
| telegram-squad |
指挥-worker |
11 |
commander 1→N |
| PR 审查室 |
同步并行扇出 + barrier 合并 |
4 |
CLI→3 并行→judge |
| standup(本案) |
序列化轮询 + 累积 barrier |
5 |
host↔3 序列→recorder |
跟 PR 审查室形成「并行 vs 序列」核心范式对比。
实现路径
照搬 demoDebateCommand 模板(agent-network/bin/cli.ts:3592):
demoStandupCommand() — 主入口
buildStandupPrompts() — host / reporter / recorder 三类 prompt
driveStandupRound(host, reporter) — 单轮 host 点名 → reporter 回复 → host 过渡,循环 N 次
验证
| 层级 |
验证 |
| 资产 |
agent-network/bin/cli.ts 加 demo standup 子命令 |
| 自动化 |
tests/test29-standup-room/ — Docker 起 hub + 5 agent,喂 --topic + --reporters 3,验证输出 + recorder 三段式存在 |
| 文档 |
docs-site/docs/cases/standup-room.md(ZH + EN)+ 加入 cases/index.md 表格 |
Timeline
- 现在:本 issue + draft PR 提交提案
- 等:Vincent merge 完当前 PR queue 腾出 LLM 注意力
- 然后:实施 5 agent + CLI 代码,PR closes 本 issue(跟 #25 PR 审查室排队)
不在范围内(v1)
- 不做 host 拐回追问 blocker 的二轮(留 review Q2)
- 不做异常缺席处理(v1 假设全员到齐)
- 不接 Slack / 飞书 channel 自动 standup notes(v2 加 channel adapter)
- 不做参与者持久化身份
风险
- host LLM 推理过渡话术冗余 → v1 用 prompt 强制 ≤ 30 字
- reporter 走形式答非所问 → 结构化 prompt + recorder 正则提取
- recorder 合并跑题 → prompt 强制三 section 不放 freeform
留 review Q
--reporters <n> 参数化默认 3 最小 2 最大 6,还是固定 3?
- 要不要 host 拐回追问 blocker 的二轮(
--probe flag)演示更复杂编排?
- recorder 输出风格选:(a) 完整 transcript / (b) 结构化三段 + risks/next-actions(倾向)/ (c) 经理视角只输出 risks-blockers-next-actions。还是 b+a 并列?
Backlog 状态
- ✅ PR 审查室(#25 + draft PR #26)
- 🟡 standup(本 issue)
- ❌ AI 新闻编辑室(通信龙 PASS)
👥 Agent Assignment
背景
通信demo马 demo backlog #2 跟踪。通信龙 review #25 时选择本案为优先级 #2,并 PASS「AI 新闻编辑室」(理由:模式与 translation-pipeline 重合)。
提案文档(v1 草案):
docs/demos/standup-room-proposal.md(draft PR 上来后链接生效)一句话定位
模拟 5 分钟产品 standup → 1 host 按顺序点名 → 3 reporter 各报 yesterday/today/blockers → recorder 汇总输出 markdown standup notes。
入口:
anet demo standup --topic "..." --reporters 3(CLI one-shot,对齐anet demo debate/anet demo pr-review)。编队(5 agent,序列化轮询 + 累积 barrier)
host-<suffix>reporter-1/2/3-<suffix>recorder-<suffix>编排时序
编排范式对比矩阵(refs PR #26 同结构)
跟 PR 审查室形成「并行 vs 序列」核心范式对比。
实现路径
照搬
demoDebateCommand模板(agent-network/bin/cli.ts:3592):demoStandupCommand()— 主入口buildStandupPrompts()— host / reporter / recorder 三类 promptdriveStandupRound(host, reporter)— 单轮 host 点名 → reporter 回复 → host 过渡,循环 N 次验证
agent-network/bin/cli.ts加demo standup子命令tests/test29-standup-room/— Docker 起 hub + 5 agent,喂--topic+--reporters 3,验证输出 + recorder 三段式存在docs-site/docs/cases/standup-room.md(ZH + EN)+ 加入cases/index.md表格Timeline
不在范围内(v1)
风险
留 review Q
--reporters <n>参数化默认 3 最小 2 最大 6,还是固定 3?--probeflag)演示更复杂编排?Backlog 状态
👥 Agent Assignment