forge-golisted
Install: claude install-skill gldu/dev-forge
# forge-go — dev-forge 路由入口(R0)
## Goal
作为 dev-forge 编��智能体蜂群的**路由入口(R0)**,解析用户一句话意图,自动完成:
1. 读取项目状态(STATE.md)
2. 执行 Artifact Preflight Gate(检查上游工件完整性)
3. 解析用户意图并路由到正确阶段/子 skill
4. 估算 Token 预算并让用户选挡位
5. 自动准备(生成 change-id、加载规则与工件)
6. 显式声明执行计划后进入对应子 skill
> **直连触发(R0.1)**:20 个子 skill 自带 description,可被平台直接触发(如"修这个报错"→ forge-fix、"审查代码"→ forge-review)。直连时**跳过 R0 路由**,各 skill 自行执行 Preflight。forge-go 负责三类场景:① 意图含混 / 新事物 / 恢复;② 跨阶段切换(0→8);③ 需要预算估算或 Preflight 门禁兜底。两条路径的准入差异见 RULES R0.1。
## Workflow
### 第一步 · 读取项目状态
1. 尝试读仓库根 `STATE.md`。
- 若 `STATE.md` 损坏/丢失或存在多个未归档 `.specs/<id>/` 目录:自动扫描所有未归档变更,列出结构化菜单(如:`1. companion-platform (停留: 4-dev)`,`2. dark-mode (停留: 2-design)`),提示用户输入序号选择(回复 1 或 2)或自动恢复最新修改时间目录,无需用户输入具体 ID/路径/阶段名。
- 不存在且 `.specs/` 无未归档变更 → 视为新项目。
2. 关注字段:`活跃 Change` / `当前阶段` / `当前 Task` / `中断任务`
3. 存在 `中断任务` 非空 → **优先级最高**,直接走"恢复中断任务"分支
### 第二步 · Artifact Preflight Gate(强制)
路由到任何阶段前,检查上游工件是否齐全:
| 目标阶段 | 必须已有的上游工件 | 缺失时动作 |
|---|---|---|
| `0-change` | 无 | 直接进入 |
| `1-requirement` | `.specs/<id>/CHANGE.md` | 回 `0-change` |
| `2-design` | `CHANGE.md` + `REQUIREMENT.md` | 缺哪个回哪个 |
| `2a-ui-design` | `CHANGE.md` + `REQUIREMENT.md` + `DESIGN.md` | 回缺失阶段 |
| `3-task` | `REQUIREMENT.md` + `DESIGN.md`;前端还须有 `UI-DESIGN.md` | 回缺失阶段 |
| `4-dev` | 正式 `.specs/<id>/TASK.md` 中的当前 task,或用户显式临时最小 TASK | 反问:回 `3-task` 还是用户提供临时 TASK |
| `5-test` | `REQUIREMENT.md` + `DESIGN.md` + `TASK.md` + 各 `*-SUMMARY.md` | 回缺失阶段 |
| `6-review` | `REQUIREMENT.md` + `TASK.md` + `TEST.md` + 本次 d