--- name: erp-feature-brainstorm description: 功能循环第 1 步。针对单个 REQ-XXX-NNN 进行交互式头脑风暴,产出功能规格文件到 docs/superpowers/specs/。 user-invocable: false allowed-tools: Read Write Skill Bash(mysql *) --- **所有输出必须使用中文。** # erp-feature-brainstorm ## 说明 针对一个 REQ-XXX-NNN,委托本插件的 `superpower-brainstorming`(superpowers:brainstorming 的本地 fork,已剥掉 approval gates)进行头脑风暴,再把输出填入标准规格模板,产出单页功能规格。 ## 执行步骤 1. **红旗检查**:调用 `erp-red-flag-check`。如果命中 → 停止。 2. 确定输入: - 当前 REQ-XXX-NNN(从对话中获取,或 `docs/08` 当前模块下一个未完成的 REQ)。 - REQ 卡片:`docs/01-需求清单/.md` 中对应的 REQ-XXX-NNN 节。 - 相关数据表(从 `docs/03` 或实时 mysql 命令行查询)。 3. 委托本插件 `superpower-brainstorming`,以 REQ 卡片 + schema 引用作为上下文;把步骤 4 推导出的落盘路径作为 caller-provided path 传入。 4. 推导路径:`docs/superpowers/specs/$(date +%F)-.md`。如已存在,征求用户确认后覆盖。 5. 用 `Read` 读取 `${CLAUDE_SKILL_DIR}/templates/feature-spec-template.md`,从头脑风暴输出填充槽位: - `goal`、`input`、`output`、`rules`、`constraints`、`schema_refs`、`api_refs`、`acceptance` 6. 将填充后的规格写入推导路径。 7. **验证**:模板中每个顶级节必须非空;**spec 全文不得包含 `【人工填写:...】` 或 `TBD`**。如出现:先在 `.env.local` / `docs/07-环境配置.md` / `CLAUDE.md` / 现有代码中查找真值并写入(同时注明来源),查不到则用 `AskUserQuestion` 向用户询问;拒绝把"待人工填写"的标记写入 B 阶段 spec(该标记仅供 A 阶段用户审阅文档用)。 8. 输出 `feature-brainstorm: `。 ## 衔接 立即调用 `Skill(erp-feature-plan)` 进入下一步。 ## 参考 - `${CLAUDE_SKILL_DIR}/templates/feature-spec-template.md` - 委托:`superpower-brainstorming`(本插件 `skills/internal/superpower-brainstorming/`,superpowers:brainstorming 的无门 fork) - 守门:`erp-red-flag-check`