docs(workflow): 工作流重构——3阶段状态机+独立审查代理+阶段技能体系

- 简化 game-pm:删除质量门审查和风险检测,改为进度检查+任务分配调度器
- 重写 game-reviewer:改为子代理模式,角色完成工作后自行启动,使用 ai-reviewer 账号
- 新增 project-initializer 技能:项目冷启动初始化
- 新增 stage-sketch/roadmap/iteration 技能:3 阶段任务序列管理
- 修改 game-designer/game-dev:添加审查交接流程
- 更新 gitea-collab/quality-gate-review/development-workflow
- gitea.js:添加 reviewer 角色 + 5 个新标签(review:pass/fail, stage:sketch/roadmap/iteration)
This commit is contained in:
2026-06-07 23:49:58 +08:00
parent e31151a8b6
commit 6ba07318be
12 changed files with 1202 additions and 915 deletions
+79 -57
View File
@@ -33,6 +33,7 @@ description: "Gitea 协作工具 — CLI 命令速查、认证机制、Assignee
| 程序 | `dev` | game-dev |
| 美术 | `artist` | (暂无独立 Agent) |
| PM | `pm` | game-pm |
| 审查 | `reviewer` | game-reviewer |
---
@@ -46,12 +47,13 @@ description: "Gitea 协作工具 — CLI 命令速查、认证机制、Assignee
| 程序 | `ai-programmer` | `P-XXX` |
| 美术 | `ai-artist` | `A-XXX` |
| PM | `ai-pm` | (管理任务) |
| 审查 | `ai-reviewer` | (审查操作,不拥有任务) |
---
## 4. 标签体系
14 个标准标签,通过 `node scripts/gitea.js label init` 初始化。
19 个标准标签,通过 `node scripts/gitea.js label init` 初始化。
### status(任务状态)
| 标签 | 含义 |
@@ -60,20 +62,31 @@ description: "Gitea 协作工具 — CLI 命令速查、认证机制、Assignee
| `status:ready` | 已就绪,可开始 |
| `status:in-progress` | 进行中 |
| `status:blocked` | 被阻塞 |
| `status:in-review` | 审查中 |
| `status:in-review` | 待审查(角色完成工作后设置) |
| `status:done` | 已完成 |
### gate(质量门判定)
### gate(质量门判定 — 旧标签,保留用于历史 Issue)
| 标签 | 含义 |
|------|------|
| `gate:execution-pass` | 执行案质量门通过 |
| `gate:execution-fail` | 执行案质量门未通过 |
| `gate:tech-pass` | 程序设计质量门通过 |
| `gate:tech-fail` | 程序设计质量门未通过 |
| `gate:art-pass` | 美术资产验收门通过 |
| `gate:art-fail` | 美术资产验收门未通过 |
| `gate:impl-pass` | 程序实现验收门通过 |
| `gate:impl-fail` | 程序实现验收门未通过 |
| `gate:execution-pass/fail` | 执行案质量门 |
| `gate:tech-pass/fail` | 程序设计质量门 |
| `gate:art-pass/fail` | 美术资产验收门 |
| `gate:impl-pass/fail` | 程序实现验收门 |
> 新工作流使用 `review:*` 标签替代 `gate:*`。旧 Issue 上的 gate 标签保留不动。
### review(审查结果 — 新标签)
| 标签 | 含义 |
|------|------|
| `review:pass` | 审查已通过 ✅ |
| `review:fail` | 审查未通过 ❌ |
### stage(开发阶段 — 新标签)
| 标签 | 含义 |
|------|------|
| `stage:sketch` | 草图阶段任务 |
| `stage:roadmap` | 总路线阶段任务 |
| `stage:iteration` | 迭代阶段任务 |
> **注**:`pipeline:*` 和 `role:*` 标签已废弃并从 Gitea 上删除。如旧 Issue 上仍残留这些标签,忽略即可。
@@ -172,14 +185,16 @@ node scripts/gitea.js test
| 概念 | Gitea 对应 | 说明 |
|------|-----------|------|
| 任务 (P-002) | Issue | 标题含任务 ID 前缀 |
| 版本 (v0.1) | Milestone | 版本号即里程碑标题 |
| 阶段/版本 | Milestone | 阶段名或版本号作为里程碑标题 |
| 任务状态 | Label (`status:*`) | 6 种状态标签 |
| 质量门结果 | Label (`gate:*`) | 8 种判定标签 |
| 审查结果 | Label (`review:*`) | 通过/未通过 |
| 开发阶段 | Label (`stage:*`) | 草图/总路线/迭代 |
| 质量门结果 | Label (`gate:*`) | 旧标签,保留用于历史 Issue |
| 角色归属 | Assignee | 通过 `--assignees` 指派 |
| 流水线步骤 | Pipeline Tracker | Meta Issue 记录全局流水线状态 |
| 当前进度 | Pipeline Tracker | Meta Issue 记录当前阶段和进度 |
| 角色汇报 | Issue 评论 | 各角色在对应 Issue 下评论 |
| 审查记录 | Issue 评论(摘要+链接)+ 本地 `docs/plans/reviews/` | 本地文件名格式 `<任务ID>-审查记录.md` |
| 任务归档 | close Issue | 不需要本地 archive 文件 |
| 任务归档 | close Issue | 用户确认后由 PM 关闭 |
---
@@ -199,11 +214,34 @@ node scripts/gitea.js test
## 8. Pipeline Tracker
Pipeline Tracker 是一个 **Meta Issue**,用于记录当前版本的全局流水线状态。
Pipeline Tracker 是一个 **Meta Issue**,用于记录项目当前阶段和进度。
- 初始化:`pipeline init`(阶段开始时执行一次)
### Tracker 正文格式
```markdown
# 流水线进度追踪
## 当前阶段
草图阶段 / 总路线阶段 / 迭代阶段
## 当前里程碑
- 名称: <milestone title>
- 状态: open/closed
- Open Issues: X
- Closed Issues: Y
## 阶段历史
| 阶段 | 里程碑 | 进入日期 | 完成日期 |
|------|--------|----------|----------|
| 草图阶段 | 草图阶段 | YYYY-MM-DD | — |
```
### 相关命令
- 初始化:`pipeline init`
- 查看状态:`pipeline status`
- 更新步骤:`pipeline update <number> --step <1-7> --status "描述"`
- 阶段转换时直接编辑 Issue 正文更新「当前阶段」和「阶段历史」
---
@@ -258,26 +296,10 @@ node scripts/gitea.js --role <role> issue comment <number> --body "## 修改汇
- path/to/output"
```
### PM 审查后
### PM 确认关闭任务(审查通过后)
```bash
# 发布审查摘要评论
node scripts/gitea.js --role pm issue comment <number> --body "## 质量门审查 [通过✅/未通过❌]
**质量门**:[类型]
**审查日期**:YYYY-MM-DD
**审查记录**:docs/plans/reviews/<task-ID>-审查记录.md
### 结论
[一句话总结]
### 问题清单(不通过时)
1. ..."
# 更新标签反映质量门结果
node scripts/gitea.js --role pm issue labels <number> --set <gate-pass|gate-fail>,<status-*>,...
# 审查通过时关闭 Issue
# 用户确认后关闭 Issue
node scripts/gitea.js --role pm issue close <number> --body "## 任务完成 ✔
**完成日期**:YYYY-MM-DD
@@ -292,17 +314,22 @@ node scripts/gitea.js --role pm issue close <number> --body "## 任务完成 ✔
PM 在每次会话启动时按序执行:
```bash
# 1. 读取当前里程碑
node scripts/gitea.js --role pm milestone list --state open
# 2. 读取活跃任务
node scripts/gitea.js --role pm issue list --milestone <当前版本>
# 3. 读取流水线状态
# 1. 读取 Pipeline Tracker(确定当前阶段)
node scripts/gitea.js --role pm pipeline status
# 4. 读取近期评论(按需)
node scripts/gitea.js --role pm issue comments <number>
# 2. 读取当前里程碑
node scripts/gitea.js --role pm milestone list --state open
# 3. 读取活跃任务
node scripts/gitea.js --role pm issue list --state open
# 4. 根据阶段调用对应技能:
# 无进度 → project-initializer
# 草图阶段 → stage-sketch
# 总路线阶段 → stage-roadmap
# 迭代阶段 → stage-iteration
# 5. 检查 review:pass 标签的 Issue → 请示用户是否关闭
```
---
@@ -312,30 +339,25 @@ node scripts/gitea.js --role pm issue comments <number>
### 创建任务
```bash
# 创建 Issue(必须指定 assignees)
# 创建 Issue(必须指定 assignees 和 stage 标签)
node scripts/gitea.js --role pm issue create \
--title "D-001 交互系统执行案" \
--body "## 任务信息\n- **任务ID**: D-001\n- **所属版本**: v0.1\n- **角色**: 策划\n- **预期产出**: docs/design/prototype/交互系统-执行案.md\n..." \
--title "D-001 概念设计" \
--body "## 任务信息\n- **任务ID**: D-001\n- **所属阶段**: 草图阶段\n- **角色**: 策划\n- **预期产出**: docs/design/概念草案.md\n..." \
--milestone <id> \
--assignees ai-designer
# 设置标签
node scripts/gitea.js --role pm issue labels <number> --set <status-label-id>,<gate-label-id>
# 设置标签(status + stage + role)
node scripts/gitea.js --role pm issue labels <number> --set <status-label-id>,<stage-label-id>,<role-label-id>
# 设置依赖
node scripts/gitea.js --role pm issue block <blocker_number> <new_number>
```
### 关闭任务
### 关闭任务(用户确认后)
```bash
node scripts/gitea.js --role pm issue close <number> --body "## 任务完成 ✔\n**完成日期**: YYYY-MM-DD\n**产出**: path/to/output"
```
### 更新流水线
```bash
node scripts/gitea.js --role pm pipeline update <tracker_number> --step <1-7> --status "状态描述"
# 审查通过 + 用户确认关闭后
node scripts/gitea.js --role pm issue close <number> --body "## 任务完成 ✔\n**完成日期**: YYYY-MM-DD\n**产出**: path/to/output\n**审查记录**: docs/plans/reviews/<task-ID>-审查记录.md"
```
---
+137
View File
@@ -0,0 +1,137 @@
---
name: "project-initializer"
description: "项目初始化技能 — 检查版本管理/项目管理配置、初始化 Gitea 标签/里程碑/任务。仅在项目无进度时由 PM 调用。"
---
# 项目初始化
> 本技能处理项目冷启动。在 PM 上下文中运行,完成后 PM 直接感知初始化结果。
> 仅在无 Pipeline Tracker 或无里程碑时触发。
---
## 初始化流程
### 步骤 1:版本管理确认
逐项确认以下内容:
1. **SSH 仓库地址**:确认 `git remote -v` 中的仓库地址正确
2. **角色 Gitea 账号**:确认以下账号存在且可访问
- `starmen1265`(用户)
- `ai-pm`
- `ai-designer`
- `ai-programmer`
- `ai-artist`
- `ai-reviewer`
3. **SSH key 配置**:运行 `ssh -T git@micecola.top -p 2223` 测试连接
- 失败 → 引导用户生成并配置 SSH key
### 步骤 2:项目管理配置
确认以下配置就绪:
1. **Token 文件**:`scripts/.gitea-tokens.json` 存在且包含所有角色 token
- `pm`、`designer`、`dev`、`artist`、`reviewer`
2. **Token 文件已忽略**:`.gitignore` 中包含 `scripts/.gitea-tokens.json`
3. **Gitea CLI 可用**:`node scripts/gitea.js --role pm test` 运行通过
缺失时引导用户配置。
### 步骤 3:现有代码与需求检查
**情况 A:有现有代码和需求**
- 探索 `docs/` 和 `Content/` 目录结构
- 读取现有设计文档
- 生成迁移方案:
- 哪些文档可直接映射到新阶段
- 哪些需要拆分或重写
- 哪些可以作为已有产出直接关闭任务
- 将迁移方案提交用户确认后执行
**情况 B:无现有代码(全新项目)**
- 建议用户手动准备开发环境:
1. 安装 UE 5.7.4
2. 创建第三人称/第一人称/顶视角模板项目
3. 添加插件:BlockoutStarterPack、LowpolyCharacter
4. 启用 PythonEditorPlugins 插件
- 等待用户确认环境就绪
### 步骤 4:Gitea 初始化
依次执行(所有操作需用户确认后再执行):
```bash
# 1. 创建标准标签
node scripts/gitea.js --role pm label init
# 2. 创建 Pipeline Tracker Issue
node scripts/gitea.js --role pm issue create \
--title "Pipeline Tracker" \
--body "# 流水线进度追踪
## 当前阶段
草图阶段
## 当前里程碑
- 名称: 草图阶段
- 状态: open
- Open Issues: 1
- Closed Issues: 0
## 阶段历史
| 阶段 | 里程碑 | 进入日期 | 完成日期 |
|------|--------|----------|----------|
| 草图阶段 | 草图阶段 | $(date +%Y-%m-%d) | — |" \
--labels "stage:sketch,role:pm,status:in-progress"
# 3. 创建草图阶段里程碑
node scripts/gitea.js --role pm milestone create \
--title "草图阶段" \
--description "概念设计与技术可行性验证"
# 4. 创建第一个任务:概念设计
node scripts/gitea.js --role pm issue create \
--title "D-001 概念设计" \
--body "## 任务信息
- **任务ID**: D-001
- **所属阶段**: 草图阶段
- **角色**: 策划
## 预期产出
产出概念草案 \`docs/design/概念草案.md\`,包含以下 7 个必填字段:
1. 一句话概述(这是什么游戏)
2. 核心玩法(玩家做什么)
3. 美术风格
4. 目标平台
5. 灵感来源
6. 核心假设(为什么好玩)
7. 范围约束(MVP 包含什么)
## 质量标准
- 每个字段有明确的、不含糊的描述
- 美术风格有参考图或参考作品
- 核心假设可验证(能通过原型验证)" \
--milestone "草图阶段" \
--labels "stage:sketch,role:design,status:ready" \
--assignees "ai-designer"
```
### 步骤 5:确认完成
初始化完成后向用户报告:
- ✅ 版本管理配置状态
- ✅ 项目管理配置状态
- ✅ Gitea 初始化结果(标签数、Pipeline Tracker Issue 编号、里程碑、首个任务编号)
- 📋 建议下一步:启动策划角色开始概念设计
---
## 注意事项
- 每一步都需要用户确认后才执行,不自动推进
- 如果中途失败(如 Gitea 连接失败),报告具体错误并建议修复方案
- 初始化完成后,PM 进入草图阶段,后续由 stage-sketch 技能接管
+22 -26
View File
@@ -1,19 +1,19 @@
---
name: "quality-gate-review"
description: "质量门审查技能 — 4 道质量门标准、阶段对应标准、审查流程、强制操作清单"
description: "审查标准技能 — 4 道质量门标准、阶段对应标准、审查流程、强制操作清单。供 game-reviewer 子代理使用。"
---
# 质量门审查
# 审查标准
> 本技能定义 4 道质量门的审查标准、阶段对应标准和审查后强制操作。
> 供 game-reviewer agent、game-pm agent 及各工种自审使用。
> 供 **game-reviewer 子代理**使用——角色完成工作后启动 reviewer 子代理,reviewer 按此标准审查。
> 项目管理工具操作细节参见 `.claude/skills/gitea-collab.md`。
---
## 审查流程
每次质量门审查必须严格按以下步骤执行:
每次审查必须严格按以下步骤执行:
### 1. 读取交付物
- 从对应 Issue 的评论中获取产出文件路径
@@ -28,17 +28,19 @@ description: "质量门审查技能 — 4 道质量门标准、阶段对应标
- 格式见下方"审查记录格式"
### 4. Issue 评论(强制)
- **无论通过或不通过,都必须在对应 Issue 上发布审查结论评论**
- 使用 `--role reviewer` 操作
- 评论中标注审查者身份:`审查 Agent (ai-reviewer)`
- 无论通过或不通过,都必须在对应 Issue 上发布审查结论评论
- 通过:摘要 + 通过结论
- 不通过:摘要 + 具体问题清单
### 5. 更新标签
- 通过:设置 `gate:*-pass` 标签,移除 `gate:*-fail`(如有)
- 不通过:设置 `gate:*-fail` 标签,移除 `gate:*-pass`(如有)
- 通过:设置 `review:pass` 标签,移除 `status:in-review`
- 不通过:设置 `review:fail` 标签,移除 `status:in-review`,改为 `status:blocked`
### 6. 通过时关闭 Issue(强制)
- **审查通过时必须关闭 Issue**,附完成说明
- 不通过时 Issue 保持打开,等待修改
### 6. 返回结果给启动角色
- 不关闭 Issue(关闭决策权在用户)
- 将审查结果返回给启动你的角色,由该角色向用户汇报
---
@@ -58,8 +60,6 @@ description: "质量门审查技能 — 4 道质量门标准、阶段对应标
> 关卡执行案的质量门**仅做资产存在验证**。空间精度、比例、跨文档一致性等维度的准确性由程序在白模搭建过程中验证——如果程序在 Issue 中汇报了搭建异常,审查者将异常汇总并汇报给用户确认,不自行判断通过或不通过。
标签:`gate:execution-pass` / `gate:execution-fail`
### 质量门 2:程序设计质量门(④→⑤)
检查维度:
@@ -70,8 +70,6 @@ description: "质量门审查技能 — 4 道质量门标准、阶段对应标
- **技术风险**:是否识别?
- **工作量与拆分建议**:是否给出工作量估算?拆分方式是否合理,每个子任务可独立验证?拆分后的任务集合是否完整覆盖实现方案?
标签:`gate:tech-pass` / `gate:tech-fail`
### 质量门 3:美术资产验收门(⑤→⑥)
检查维度:
@@ -80,8 +78,6 @@ description: "质量门审查技能 — 4 道质量门标准、阶段对应标
- **资产规格**:尺寸和格式是否符合需求?
- **缺失项处理**:未到位资产是否有明确处理方案?
标签:`gate:art-pass` / `gate:art-fail`
### 质量门 4:程序实现验收门(⑥→⑦)
检查维度:
@@ -89,10 +85,8 @@ description: "质量门审查技能 — 4 道质量门标准、阶段对应标
- **执行案覆盖度**:最终实现是否覆盖所有行为规则?
- **资产使用确认**:美术资产是否正确集成?
- **偏差处理**:
- **轻微偏差**(不影响核心行为)→ 记录,在⑦复盘时同步文档
- **重大偏差**(影响核心行为)→ 建议回退到③或开启新版本,用户决定
标签:`gate:impl-pass` / `gate:impl-fail`
- **轻微偏差**(不影响核心行为)→ 记录,在复盘时同步文档
- **重大偏差**(影响核心行为)→ 建议回退或开启新版本,用户决定
---
@@ -109,8 +103,8 @@ description: "质量门审查技能 — 4 道质量门标准、阶段对应标
## 判定规则
- **通过** → 发布通过评论 + 设置 pass 标签 + **关闭 Issue**
- **不通过** → 发布不通过评论(附问题清单)+ 设置 fail 标签 + Issue 保持打开
- **通过** → 发布通过评论 + 设置 `review:pass` 标签 + 返回结果(不关闭 Issue)
- **不通过** → 发布不通过评论(附问题清单)+ 设置 `review:fail` 标签 + 设置 `status:blocked` + 返回结果
- **争议** → 用户最终裁决;审查者提供明确证据和具体文档位置
---
@@ -126,6 +120,7 @@ description: "质量门审查技能 — 4 道质量门标准、阶段对应标
**审查对象**:[任务名] — [产出文档路径]
**宏观阶段**:[原型 / 批量生产]
**质量门类型**:[执行案 / 程序设计 / 美术资产 / 程序实现]
**审查者**:审查 Agent (ai-reviewer)
## 检查结果
@@ -149,7 +144,8 @@ description: "质量门审查技能 — 4 道质量门标准、阶段对应标
审查完成后,**必须**逐项确认以下操作:
- [ ] 在 `docs/plans/reviews/<task-ID>-审查记录.md` 写了审查记录
- [ ] 在对应 Issue 上发布了审查结论评论(通过/不通过 + 摘要)
- [ ] 更新了 Issue 的 gate:* 标签(通过→pass,不通过→fail)
- [ ] **通过时**:关闭 Issue 并附完成说明
- [ ] **不通过时**:评论中包含具体问题清单,Issue 保持打开
- [ ] 使用 `--role reviewer` 在对应 Issue 上发布了审查结论评论(标注审查者身份)
- [ ] 更新了 Issue 的标签(通过→`review:pass`,不通过→`review:fail` + `status:blocked`)
- [ ] 将审查结果返回给了启动你的角色
- [ ] **不关闭 Issue**(关闭决策权在用户)
- [ ] **不通过时**:评论中包含具体问题清单
+308
View File
@@ -0,0 +1,308 @@
---
name: "stage-iteration"
description: "迭代阶段技能 — 版本迭代开发管理。插件检查→设计补充→执行案→需求分析→开发→优化→整合→修复。"
---
# 迭代阶段
> 当 PM 检测到 Pipeline Tracker 标记为「迭代阶段」时调用本技能。
> 目标:按版本迭代推进开发,每个迭代完成一个可玩版本。
---
## 阶段概述
| 项目 | 说明 |
|------|------|
| 目标 | 将设计转化为可玩的迭代版本 |
| 产出 | 可运行的 UE5 版本 |
| 参与角色 | 策划(执行案)、程序(需求分析+开发) |
| 完成标志 | Bug 修复任务关闭 |
---
## 任务序列
每个迭代版本按以下顺序逐步创建任务。**PM 每次激活时只创建下一个可创建的任务**,不要一次全部创建。
### 任务列表(按创建顺序)
| 编号 | 任务名称 | 角色 | 前置依赖 | 首次迭代 |
|------|---------|------|---------|---------|
| 1.4.0 | 插件资产检查与准备 | 程序 | 无 | 仅首次 |
| 1.4.0.5 | 设计案迭代补充 | 策划 | 1.4.0(首次)或无 | 可选 |
| 1.4.1 | 策划执行案 | 策划 | 1.4.0.5 | 必选 |
| 1.4.2 | 程序需求分析 | 程序 | 1.4.1 | 必选 |
| 1.4.3.1 | 关卡搭建 | 程序 | 1.4.2 | 有场景时 |
| 1.4.3.2 | 系统开发 | 程序 | 1.4.2 | 必选 |
| 1.4.3.3 | 优化意见 | 程序 | 1.4.3.1 + 1.4.3.2 | 必选 |
| 1.4.3.5 | 资产接入整合 | 程序 | 1.4.3.3 | 必选 |
| 1.4.4 | Bug 修复 | 程序 | 1.4.3.5 | 必选 |
---
### 各任务详细说明
#### 1.4.0 插件资产检查与准备(仅首次迭代)
```bash
--title "P-XXX 插件资产检查与准备"
--body "## 任务信息
- **任务ID**: P-XXX
- **所属阶段**: 迭代阶段
- **角色**: 程序
## 预期产出
插件资产引用表 \`docs/technical/插件资产引用表.md\`
## 检查内容
1. BlockoutStarterPack — 白模资产完整性检查
- 路径: Content/BlockingStarterPack/
- 参考: .claude/refs/blockout-asset-reference.md
2. Lowpoly 角色/场景资源
- 路径: Content/Lowpoly*/ 或对应插件目录
3. 人物动作相关插件(动画蓝图、骨骼等)
4. 其他已安装插件
## 产出格式
对每个插件/资产包:
- 插件名称和版本
- 安装路径
- 关键资产列表(按类型分类:网格体、材质、动画、音效等)
- 可用性评估(完整/部分可用/缺失)
- 对开发的支持程度说明
## 目的
生成资产引用表,使开发过程可以脱离 3D 美术进行。"
--labels "stage:iteration,role:dev,status:ready"
--assignees "ai-programmer"
```
#### 1.4.0.5 设计案迭代补充(可选)
```bash
--title "D-XXX 设计案迭代补充 — <版本号>"
--body "## 任务信息
- **任务ID**: D-XXX
- **所属阶段**: 迭代阶段
- **角色**: 策划
## 预期产出
对现有设计文档的迭代补充,可能包括:
- 新增系统设计细节
- 调整已有系统参数
- 补充关卡设计细节
- 更新 UI/音频设计
## 说明
每个迭代版本可能对总路线阶段的设计有调整。
策划根据本版本的范围和目标,检查并补充设计文档。
如果设计文档无需调整,此任务可以跳过(直接关闭并说明'无需补充')。"
--labels "stage:iteration,role:design,status:ready"
--assignees "ai-designer"
```
#### 1.4.1 策划执行案
```bash
--title "D-XXX 策划执行案 — <版本号>"
--body "## 任务信息
- **任务ID**: D-XXX
- **所属阶段**: 迭代阶段
- **角色**: 策划
- **依赖**: D-XXX 设计案迭代补充完成
## 预期产出
根据设计案为本版本写策划执行案:
- 系统执行案(每份系统一份,如 D-XXXa 交互系统执行案)
- 关卡执行案(如涉及场景搭建)
## 执行案要求
- 只写玩家可感知的行为规则
- 不包含引擎组件、代码架构、数据格式
- 每条行为规则清晰无歧义
- 边界情况有明确处理
## 参考文档
- 设计案: docs/design/
- 执行案模板: .claude/refs/level-execution-template.md(关卡执行案)"
--labels "stage:iteration,role:design,status:backlog"
--assignees "ai-designer"
```
#### 1.4.2 程序需求分析
```bash
--title "P-XXX 程序需求分析 — <版本号>"
--body "## 任务信息
- **任务ID**: P-XXX
- **所属阶段**: 迭代阶段
- **角色**: 程序
- **依赖**: D-XXX 策划执行案完成
## 预期产出
技术设计文档(使用 /requirements-analysis 技能)
## 工作方式
基于策划执行案,使用 8 步需求分析技能产出技术设计文档:
1. 特性点枚举
2. 功能域图
3. 类设计图
4. 时序图(条件性)
5. 核心数据结构
6. 复杂接口描述(条件性)
7. 技术风险
8. 工作量估算
## 产出路径
docs/technical/<系统名>-tech.md"
--labels "stage:iteration,role:dev,status:backlog"
--assignees "ai-programmer"
```
#### 1.4.3.1 关卡搭建(有场景时)
```bash
--title "P-XXX 关卡搭建 — <版本号>"
--body "## 任务信息
- **任务ID**: P-XXX
- **所属阶段**: 迭代阶段
- **角色**: 程序
- **依赖**: P-XXX 程序需求分析完成
## 预期产出
白模关卡文件 + 搭建报告
## 搭建流程
参见 .claude/refs/level-execution-template.md 和 game-dev agent 的 Workflow B"
--labels "stage:iteration,role:dev,status:backlog"
--assignees "ai-programmer"
```
#### 1.4.3.2 系统开发
```bash
--title "P-XXX 系统开发 — <版本号>"
--body "## 任务信息
- **任务ID**: P-XXX
- **所属阶段**: 迭代阶段
- **角色**: 程序
- **依赖**: P-XXX 程序需求分析完成
## 预期产出
根据技术设计文档实现各系统代码
## 工作方式
参见 game-dev agent 的 Workflow C"
--labels "stage:iteration,role:dev,status:backlog"
--assignees "ai-programmer"
```
#### 1.4.3.3 优化意见
```bash
--title "P-XXX 优化意见 — <版本号>"
--body "## 任务信息
- **任务ID**: P-XXX
- **所属阶段**: 迭代阶段
- **角色**: 程序
- **依赖**: P-XXX 关卡搭建 + P-XXX 系统开发
## 预期产出
优化意见报告,包含:
- 性能分析(帧率、内存)
- 关卡布局优化建议
- 系统交互优化建议
- 体验改进建议"
--labels "stage:iteration,role:dev,status:backlog"
--assignees "ai-programmer"
```
#### 1.4.3.5 资产接入整合
```bash
--title "P-XXX 资产接入整合 — <版本号>"
--body "## 任务信息
- **任务ID**: P-XXX
- **所属阶段**: 迭代阶段
- **角色**: 程序
- **依赖**: P-XXX 优化意见完成
## 预期产出
整合所有资产到最终关卡中,确保:
- 白模资产正确替换(如有正式资产)
- 所有系统正常交互
- 关卡可完整游玩"
--labels "stage:iteration,role:dev,status:backlog"
--assignees "ai-programmer"
```
#### 1.4.4 Bug 修复
```bash
--title "P-XXX Bug修复 — <版本号>"
--body "## 任务信息
- **任务ID**: P-XXX
- **所属阶段**: 迭代阶段
- **角色**: 程序
- **依赖**: P-XXX 资产接入整合完成
## 工作方式
1. 完整游玩当前版本
2. 记录发现的 Bug
3. 按严重程度排序修复
4. 验证修复后无回归"
--labels "stage:iteration,role:dev,status:backlog"
--assignees "ai-programmer"
```
---
## 进度检查
每次 PM 激活时执行:
1. **读取当前迭代任务状态**:`issue list --milestone "迭代-vX.X" --state open`
2. **判断当前焦点**:
- 按 1.4.0 → 1.4.0.5 → 1.4.1 → 1.4.2 → 1.4.3.1/2 → 1.4.3.3 → 1.4.3.5 → 1.4.4 顺序
- 找到第一个未完成的步骤 → 建议:启动对应角色完成该步骤
- 如果某步骤的依赖未完成 → 建议:先完成依赖任务
3. **只创建下一个可创建的任务**:
- 已有任务进行中 → 不创建新任务
- 所有前置依赖已完成 → 创建下一个任务并设为 `status:ready`
4. **检查完成条件**:
- 1.4.4 (Bug修复) 已关闭 → 触发迭代转换
---
## 迭代转换
**前置条件**:Bug 修复任务(1.4.4)已关闭。
**询问用户**:是否有下一个迭代版本?
### 情况 A:有下一个迭代
```bash
# 1. 关闭当前迭代里程碑
node scripts/gitea.js --role pm milestone update <当前里程碑ID> --state closed
# 2. 创建下一个迭代里程碑
node scripts/gitea.js --role pm milestone create \
--title "迭代-vX.X" \
--description "第 N 个迭代版本:<简要描述>"
# 3. 从 1.4.0.5(设计补充)或 1.4.1(执行案)开始
# 非首次迭代跳过 1.4.0(插件检查)
# 4. 更新 Pipeline Tracker
```
### 情况 B:无下一个迭代,返回总路线
```bash
# 1. 关闭当前迭代里程碑
# 2. 重新打开或创建总路线阶段里程碑
# 3. 更新 Pipeline Tracker 为「总路线阶段」
# 4. 下次 PM 激活时将调用 stage-roadmap 技能
```
+183
View File
@@ -0,0 +1,183 @@
---
name: "stage-roadmap"
description: "总路线阶段技能 — 全面设计文档产出与版本路径规划。管理总路线阶段任务创建和阶段转换。"
---
# 总路线阶段
> 当 PM 检测到 Pipeline Tracker 标记为「总路线阶段」时调用本技能。
> 目标:产出完整的游戏设计文档体系,规划版本迭代路径。
---
## 阶段概述
| 项目 | 说明 |
|------|------|
| 目标 | 建立"这个游戏长什么样"的完整蓝图 |
| 产出 | 9 份设计文档 + 版本路径图 |
| 参与角色 | 策划(全部文档) |
| 完成标志 | 所有任务关闭 + 里程碑下无 open issues |
---
## 任务创建
### 检查已有任务
先通过 `issue list --milestone "总路线阶段" --state open` 检查现有任务,避免重复创建。
### 需要创建的任务(共 9 个)
**占位规则**:除系统设计文档(⑤)和关卡设计文档(⑥)必须完整内容外,其他文档允许暂时留空文件占位(包含标题、章节结构和「待填充」说明),后续迭代中逐步完善。
---
**任务 1:设计总索引文档** (D-XXX)
```bash
--title "D-XXX 设计总索引文档"
--body "## 任务信息
- **任务ID**: D-XXX
- **所属阶段**: 总路线阶段
- **角色**: 策划
- **优先级**: 最高(其他设计文档的索引基础)
## 预期产出
设计总索引 \`docs/design/设计总索引.md\`,包含:
- 所有设计文档的目录和链接
- 文档间的依赖关系图
- 当前完成状态追踪
## 占位规则
此文档必须完整产出(不允许占位)。"
--labels "stage:roadmap,role:design,status:ready"
--assignees "ai-designer"
```
**任务 2:世界观设计文档** (D-XXX) — 可占位
```
--title "D-XXX 世界观设计"
--body "...产出 docs/design/世界观设计.md
占位规则:允许占位(标题+章节结构+待填充说明)"
--labels "stage:roadmap,role:design,status:ready"
```
**任务 3:剧情设计文档** (D-XXX) — 可占位
```
--title "D-XXX 剧情设计"
--body "...产出 docs/design/剧情设计.md
占位规则:允许占位"
--labels "stage:roadmap,role:design,status:ready"
```
**任务 4:角色设计文档** (D-XXX) — 可占位
```
--title "D-XXX 角色设计"
--body "...产出 docs/design/角色设计.md
占位规则:允许占位"
--labels "stage:roadmap,role:design,status:ready"
```
**任务 5:系统设计文档** (D-XXX) — ⚠️ 必须完整
```
--title "D-XXX 系统设计"
--body "...产出 docs/design/系统设计.md(含各子系统的设计)
⚠️ 不允许占位,必须产出完整内容。"
--labels "stage:roadmap,role:design,status:ready"
```
**任务 6:关卡设计文档** (D-XXX) — ⚠️ 必须完整
```
--title "D-XXX 关卡设计"
--body "...产出 docs/design/关卡设计.md
⚠️ 不允许占位,必须产出完整内容。"
--labels "stage:roadmap,role:design,status:ready"
```
**任务 7:UI 设计文档** (D-XXX) — 可占位
```
--title "D-XXX UI设计"
--body "...产出 docs/design/UI设计.md
占位规则:允许占位"
--labels "stage:roadmap,role:design,status:ready"
```
**任务 8:音频设计文档** (D-XXX) — 可占位
```
--title "D-XXX 音频设计"
--body "...产出 docs/design/音频设计.md
占位规则:允许占位"
--labels "stage:roadmap,role:design,status:ready"
```
**任务 9:版本路径图** (D-XXX)
```
--title "D-XXX 版本路径图"
--body "...产出 docs/plans/版本路径图.md
包含:版本列表、每个版本的核心目标、范围概述、内容完成度、
涉及的系统清单、版本间递进逻辑、验收标准
依赖:任务 2-8(至少了解各文档的概要信息后才能规划版本路径)"
--labels "stage:roadmap,role:design,status:backlog"
```
### 依赖关系
```
任务 1(总索引)→ 先完成
任务 2-8(各设计文档)→ 1 完成后可并行创建,建议按序执行
任务 9(版本路径图)→ 依赖 2-8,最后完成
```
设置依赖:`issue block <任务9> <任务2>` ~ `issue block <任务9> <任务8>`
---
## 进度检查
每次 PM 激活时执行:
1. **读取任务状态**:`issue list --milestone "总路线阶段" --state open`
2. **判断当前焦点**:
- 任务 1 未完成 → 建议:先完成设计总索引
- 任务 2-8 有未完成的 → 建议按序完成各设计文档
- 任务 2-8 全完成,任务 9 未开始 → 更新任务 9 为 `status:ready`
- 任务 9 进行中 → 等待
3. **检查完成条件**:
- 总路线阶段里程碑下 open issues = 0 → 触发阶段转换
---
## 阶段转换
**前置条件**:总路线阶段里程碑下无 open issues。
**转换操作**(每步需用户确认):
```bash
# 1. 关闭总路线阶段里程碑
node scripts/gitea.js --role pm milestone update <总路线里程碑ID> --state closed
# 2. 创建第一个迭代版本里程碑
node scripts/gitea.js --role pm milestone create \
--title "迭代-v0.1" \
--description "第一个迭代版本"
# 3. 创建第一个迭代任务:插件资产检查与准备
# (详细参数见 stage-iteration 技能)
# 4. 更新 Pipeline Tracker
# 更新正文:当前阶段改为「迭代阶段」
# 阶段历史表添加总路线阶段完成日期
# 5. 告知用户已进入迭代阶段
# 下次 PM 激活时将调用 stage-iteration 技能
```
+120
View File
@@ -0,0 +1,120 @@
---
name: "stage-sketch"
description: "草图阶段技能 — 概念设计与技术可行性验证。管理草图阶段任务创建和阶段转换。"
---
# 草图阶段
> 当 PM 检测到 Pipeline Tracker 标记为「草图阶段」时调用本技能。
> 目标:验证游戏概念可行,产出概念草案和技术可行性报告。
---
## 阶段概述
| 项目 | 说明 |
|------|------|
| 目标 | 验证"这个游戏值得做、技术上可行" |
| 产出 | 概念草案 + 技术可行性报告 |
| 参与角色 | 策划(概念设计)、程序(技术评估) |
| 完成标志 | 两个任务都关闭 + 里程碑下无 open issues |
---
## 任务创建
### 检查已有任务
先通过 `issue list --milestone "草图阶段" --state open` 检查现有任务。
### 需要创建的任务(共 2 个)
**任务 1:概念设计** (D-XXX)
```bash
node scripts/gitea.js --role pm issue create \
--title "D-XXX 概念设计" \
--body "## 任务信息
- **任务ID**: D-XXX
- **所属阶段**: 草图阶段
- **角色**: 策划
## 预期产出
概念草案 \`docs/design/概念草案.md\`,包含 7 个必填字段:
1. 一句话概述
2. 核心玩法
3. 美术风格
4. 目标平台
5. 灵感来源
6. 核心假设(为什么好玩)
7. 范围约束(MVP 包含什么)
## 参考文档
- 游戏愿景:docs/plans/游戏愿景.md(如有)" \
--milestone "草图阶段" \
--labels "stage:sketch,role:design,status:ready" \
--assignees "ai-designer"
```
**任务 2:技术可行性报告** (P-XXX)
```bash
node scripts/gitea.js --role pm issue create \
--title "P-XXX 技术可行性评估" \
--body "## 任务信息
- **任务ID**: P-XXX
- **所属阶段**: 草图阶段
- **角色**: 程序
- **依赖**: D-XXX 概念设计完成
## 预期产出
技术可行性报告 \`docs/technical/可行性评估.md\`,评估:
1. 引擎能力匹配度(UE5 能否实现核心玩法)
2. 性能预期(目标平台帧率目标)
3. 关键技术风险(需要验证的技术点)
4. 插件/工具链可行性
5. 结论:可行/有条件可行/不可行" \
--milestone "草图阶段" \
--labels "stage:sketch,role:dev,status:backlog" \
--assignees "ai-programmer"
```
设置依赖关系:`issue block <D-XXX> <P-XXX>`
---
## 进度检查
每次 PM 激活时执行:
1. **读取任务状态**:`issue list --milestone "草图阶段" --state open`
2. **判断当前焦点**:
- D-XXX 未完成 → 建议用户启动策划做概念设计
- D-XXX 完成,P-XXX 未开始 → 更新 P-XXX 标签为 `status:ready`,建议启动程序做技术评估
- P-XXX 进行中 → 等待
3. **检查完成条件**:
- 草图阶段里程碑下 open issues = 0 → 触发阶段转换
---
## 阶段转换
**前置条件**:草图阶段里程碑下无 open issues。
**转换操作**(每步需用户确认):
```bash
# 1. 关闭草图阶段里程碑
node scripts/gitea.js --role pm milestone update <草图里程碑ID> --state closed
# 2. 创建总路线阶段里程碑
node scripts/gitea.js --role pm milestone create \
--title "总路线阶段" \
--description "全面设计文档产出:世界观、剧情、角色、系统、关卡、UI、音频、版本路径"
# 3. 更新 Pipeline Tracker
# 更新 Issue 正文:当前阶段改为「总路线阶段」,阶段历史表添加草图阶段完成日期
# 4. 告知用户已进入总路线阶段
# 下次 PM 激活时将调用 stage-roadmap 技能
```