# 导演补充规则

低频参考规则合集，从 `SKILL.md` 拆出以保持主文档精简。

---

## 用户确认（进入阶段 6 前，满足任一即可）

1. `plan.md` 用户确认章节勾选「用户已确认」并尽量填写确认时间（全量模板 §8，lite 模板 §6）；或  
2. 用户自然语言明确：**「确认按 plan 执行」「确认执行」「同意该方案」**；或  
3. 用户声明**仅执行子集**（例：「只做清单 1～3」）——导演须回写 `plan.md` 并递增 **`plan_version`**（见 `plan-output` 模板顶栏说明）。  

**不算确认**：「再看看」「好像行」等模糊表述 — 保持 `awaiting_approval`，不执行高风险工具。

---

## 轮次与成本（建议）

**实际角色数以阶段 2 为准**；下表仅帮助估算成本，**不规定**你必须用几人。

| 参与角色数（示例） | 观点 + 互评（默认） | subagent 调用量级（约） | 说明 |
|--------------------|---------------------|-------------------------|------|
| 1（仅当任务确实只需单视角审视时） | 可取消互评或改为「自我质疑」一轮 | ≈1～2 | 须在 `state.md` 写明**为何不设多角色** |
| 2 | 各 1 轮 | ≈4 | 常见最小多视角 |
| 3 | 各 1 轮 | ≈6 | 常见 |
| 4 及以上 | 各 1 轮 | ≥8 | 建议合并视角或缩短互评；见 `debate-protocol` 提前收束 |
| 任意规模 | 用户要求「快」 | 可仅观点 1 轮 → 直接 plan | 必须标注 **压缩模式** |

**搜索/事实核查**：单独 **1 次** subagent，结果由导演注入后续角色任务，避免每角色重复搜同一关键词。

---

## 事实检索、研报与「工具不可用」

- **依赖可引用事实的任务**（市场研报、竞品数据、政策条文等）：在进入阶段 4 前，应完成 **至多 1～2 次**集中检索/事实整理；**具体调用哪类工具**遵循工作区 **`AGENTS.md` 技能路由**（本 skill 不维护与 OpenClaw 工具的固定对表）。  
- **检索失败或工具不可用**（网络、配额、环境）：在 `state.md` 写明原因；在 `plan.md` 风险与交付正文**显著位置**声明（如「未接入实时检索，数字待第三方核实」），**禁止**捏造来源。  
- 阶段 6 若需补检索：仍算执行子步骤，**递增 `plan_version`** 或写 `execution-log.md` 一行说明。

---

## 与 OpenClaw 其它能力

- **渠道（飞书等）**：通常一条用户消息 = 一个导演会话；多路由参见工作区 **`docs/multi-agent-architecture-plan-b.md`**（`bindings`、Orchestrator 演进）。
- **阶段 6**：调用具体 skills 时遵循 **`AGENTS.md`** 技能路由与工作区根 **`TOOLS.md`**（含浏览器、Obsidian、cron、生图/生视频流程等节；见 `scripts/phases/06-phase_6_execution.md` §0 对照表），不绕过「先问再做」等安全约定。

---

## 外部参考：gstack（本地只读克隆）

- **路径**：`workspace/reference/gstack/` — 上游 [garrytan/gstack](https://github.com/garrytan/gstack)（MIT，README [见此](https://github.com/garrytan/gstack/blob/main/README.md)）。
- **用途**：借鉴其 **分阶段产出链**、**分角色审查清单**（如 `office-hours`、`plan-*-review` 的写法）；**不要**默认把 gstack 的 `setup`/bash 前置换进 OpenClaw，除非你愿意单独做适配。
- **怎么落到本 skill**：见 **`docs/gstack-learning-notes.md`**（阅读顺序、映射表、不建议照搬的部分）。

---

## 会话续跑与渠道线程（飞书 / Web 等）

- **同一 `session_id` 续写**：用户追加需求时，导演须**先读**既有 `state.md` / `plan.md`，再决定：从哪一 **phase** 恢复、是否 **递增 `plan_version`**、交付物是否追加到同一 `deliverables/`。  
- **默认建议**：**一新工作坊一新文件夹**（新 `session_id`），避免长线程里多主题混在一个 `state`；仅当用户明确说「继续上一 session / 同一项目」时合并续跑。  
- **渠道侧**：一条消息触发一次「导演回合」时，须在回复或 `state` 中保持 **session 路径**指向一致，避免产出写到错误目录。

---

## 与 subagents 的关系

- **事实核查 / 搜索**：单独一次 subagent，勿让每个角色重复搜同一题。
- 角色轮次 subagent 可用 `agents.defaults.subagents.model`；可要求「简短输出」以省 token。
- **每次 subagent 必须有结束**：在提示词中要求输出 **「本子 agent 结束说明」**（摘要 / 完成度 / 导演下一步），详见 **`references/subagent-closure.md`**；导演负责收口，禁止「说完就停、无是否完成」的悬空单。
- **全任务结束**：阶段 6 完成后更新 **`state.md` 的 Session 状态 + 结束与归档**；脚本不会自动替你标记结束。

---

## 参考协议

提前收束、冲突处理、语言约定见 `references/debate-protocol.md`。
