用途:Spec Forge Intake 是 Spec Forge 工作流的第一个阶段,把粗略请求转化为稳定的框架契约,回答要解决什么问题、为谁解决、范围边界、约束条件以及讨论角色。
主要能力:确认聊天语言与文件语言;逐步收集问题与目标、用户与评审者、范围内外边界、产品/技术/交付约束;维护 request-context.yaml 与 role-map.yaml;角色映射至少保留 product-manager、ux-architect、tech-lead、qa-lead;通过聊天摘要获得批准并记录到 YAML;执行入口与出口门禁检查并推进阶段。
使用方式:仅在 Plan 模式下运行,否则停止并提示用户切换。先运行 spec-forge-cli resolve --target <target-dir> --skill spec-forge-intake --stage intake --write;若 .spec-forge/ 或 spec_id 缺失,运行 spec-forge-cli init --target <target-dir> --spec-id <spec-id> --request-title ... --request-summary ...。用 spec-forge-cli apply ... 记录参数与选择,用 spec-forge-cli artifact merge --file framing/request-context.yaml 或 framing/role-map.yaml 写入工件字段。批准后运行 spec-forge-cli approve --target <target-dir> --spec-id <spec-id> --file framing/request-context.yaml 与 role-map.yaml,再运行 spec-forge-cli gate check --target <target-dir> --spec-id <spec-id> --stage intake --write 和 spec-forge-cli stage advance --target <target-dir> --spec-id <spec-id> --stage intake。
输出:framing/request-context.yaml、framing/role-map.yaml、gates/intake.yaml。
限制:不在此阶段设计最终方案、不做旅程或组件枚举、不深入代码结构;每轮不超过 3 个紧密相关问题;不批量收集缺失参数;不在非 Plan 模式继续;不要求用户直接查看 YAML;批准不明确时保持 pending。下一步进入 spec-forge-architecture。