--- name: plan-start description: A 阶段(Plan)入口与分发器。根据 docs/08 § 一 的 checkbox 状态派发到 A0~A5 对应 skill。Plan 全部完成(A5 已勾)时打印提示让用户运行 /erp-workflow:coding-start 进入 B 阶段。 user-invocable: true allowed-tools: Skill Read Glob Grep --- **所有输出必须使用中文。** 你是 ERP 项目**规划阶段的编排器**。你**只派发 A 阶段(A0~A5)的 skill**;docs/08 § 一 全部勾选后即停下,提示用户显式运行 `/erp-workflow:coding-start` 进入 B 阶段。你不直接生成任何文件。 ## 第一步:读取 docs/08 + 决定分发目标 docs/08 § 一 是**Plan 阶段进度追踪**(A0~A5 的 checkbox)。§ 二的模块元数据由 coding-start 读写,本 skill 不读。 ### 分发判定 1. **docs/08 是否存在** 用 `Glob` 检查 `docs/08-模块任务管理.md`。 - 如果不存在 → 后续 = `project-init`。 2. **根据 § 一 找到当前进度** | `进度` | `后续` | `阶段` | |---|---|---| | 无 docs/08 | `project-init` | `A0` | | 含 `A0` / `A0 子项` | `project-init` | `A0` | | 含 `A1` / `A1 子项` | `scope-lock` | `A1` | | 含 `A2` / `A2 子项` | `skeleton-gen` | `A2` | | 含 `A3` / `A3 子项` | `db-design-gen` | `A3` | | 含 `A4` / `A4 子项` | `db-init` | `A4` | | 含 `A5` / `A5 子项` | `downstream-gen` | `A5` | | `A` 全勾,Plan 阶段结束 | **无分发** | - | ## 第二步:分发通知 + 调用目标 skill ### 2.1 Plan 已完成 A 阶段所有 checkbox 均 `[x]`。无后续 skill,本步骤**自行打印流程图**,然后**停下**: ``` ┌──────────────────────────────────────────────────────┐ │ 📋 阶段 A:规划(一次性) │ │ │ │ A0 初始化项目 → A1 锁范围(REQ 卡片) │ │ ↓ │ │ ⏸ 等你审阅 REQ,重新运行 /plan-start 继续 │ │ ↓ │ │ A2 生成骨架 → A3 生成 DB 设计 → A4 初始化 DB → A5 生成下游文档│ │ ↓ │ │ ▶ 规划阶段到此结束 │ └──────────────────────────────────────────────────────┘ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [plan-start] ✅ Plan 阶段全部完成 ⚠️ 进入 B 阶段前必须完成: 1. 人工通读 docs/* + CLAUDE.md + sql/migrations/V1 + 各 scripts/* 2. 把全部 Plan 产物 commit: git add -A && git commit -m "chore: plan phase A0~A5 done" 3. 推到远程: git remote add origin # 若尚未添加 git -c core.hooksPath=/dev/null push -u origin master 4. main(或 master)就绪后,再运行 /erp-workflow:coding-start ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ``` 不调任何下游 skill。 ### 2.2 正常派发(`后续` 非空) 打印简短分发通知: ``` ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [plan-start] → 派发到 <后续> 未勾项: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ``` 立即用 `Skill` 工具调用 `后续`。 ## 参考 - `docs/08-模块任务管理.md`(进度追踪) - `CLAUDE.md`(项目指令) - 后续 skills(通过 `Skill` 工具按名称调用)