name: coding-start description: B 阶段(Coding)入口与阶段分发器。验证 Plan 完成后做后端 + 前端的完成性检查,每段检查后立即派发:后端未完成 → module-start(写后端);后端已完成 + 前端未完成 → frontend-start(写前端);都完成 → 全部完成。本 skill 只做分发,不做 prototype/ 门禁。 user-invocable: true
allowed-tools: Skill Read Glob Grep Bash(cat *) Bash(git tag *)
所有输出必须使用中文。
B 阶段(Coding)的入口分发器。module-start 写后端,frontend-start 写前端——coding-start 在每次入口时按"先后端、再前端"的次序检查并立即派发。本 skill 只做分发,不做 prototype/ 门禁——前端阶段的前置检查由 frontend-start 内部承担。
module-start 与 frontend-start 互不感知对方。
执行步骤
步骤 0:打印 B 阶段整体流程图
cat "${CLAUDE_PLUGIN_ROOT}/skills/crosscut/coding-start/banners/flow-overview.txt"
步骤 1:确认 docs/08 存在
检查 docs/08-模块任务管理.md 存在。
- 不存在 → 打印"⚠️ 项目尚未初始化,请先运行
/erp-workflow:plan-start[ERP-HALT]"并停下。
步骤 2:Plan 完成性检查
读取 docs/08-模块任务管理.md § 一,判断 A0~A5 是否全部勾选(含子项)。
- 任一未勾选 → 提示用户先运行
/erp-workflow:plan-start完成 A 阶段并打印[ERP-HALT],停下 - 全部勾选 → 进入步骤 3
步骤 3:后端完成性检查 + 派发
读 docs/08 § 二,对每个后端模块的 里程碑: 字段(并用 git tag -l 'milestone/<module_id>' 校验 tag 真实存在):
任一模块
里程碑: —或对应milestone/<module_id>tag 不存在 → 后端未完成,打印[coding-start] 后端未完成 → 派发 module-start(写后端),立即用 Skill 工具调用 module-start(直接调用,不要先输出"已完成 / 接下来 / 请检查 / 等你确认"之类桥接叙述——会被解读为 turn 结束信号、害用户手敲 continue),本 skill 结束,不进入步骤 4。所有模块
里程碑: milestone/<module_id>且 tag 存在 → 后端已完成,进入步骤 4。
步骤 4:前端完成性检查 + 派发
读 docs/08 § 三 整体里程碑: 字段(并用 git tag -l 'milestone/frontend-phase' 校验):
整体里程碑: milestone/frontend-phase且 tag 存在 → 前端已完成,打印所有阶段已完成(后端模块 + 前端阶段里程碑均已标记) [ERP-HALT],结束本 skill。整体里程碑: —或 tag 不存在 → 前端未完成,打印[coding-start] 后端已完成、前端未完成 → 派发 frontend-start(写前端),立即用 Skill 工具调用 frontend-start(直接调用,不要先输出"已完成 / 接下来 / 请检查 / 等你确认"之类桥接叙述——会被解读为 turn 结束信号、害用户手敲 continue),本 skill 结束。
参考
-
docs/08-模块任务管理.md § 一(A0~A5 进度勾选,步骤 2 读取) -
docs/08-模块任务管理.md § 二(后端模块元数据 + 里程碑字段,步骤 3 读取) -
docs/08-模块任务管理.md § 三(前端阶段整体里程碑,步骤 4 读取) - 下游:
-
module-start(写后端:步骤 3 派发) -
frontend-start(写前端:步骤 4 派发)
-
-
plan-start(姊妹入口,A 阶段) -
CLAUDE.md(项目指令)