SuperAPI AI 工具集

codely-openspec_spec-create_from_code

编程与开发

查看项目

更新于 10-15 22:35

技能介绍

用途:为团队采用 OpenSpec 之前就已实现的行为补写缺失的基线规格。OpenSpec 变更只能修改或删除 openspec/specs/ 中已存在的需求,没有基线时每次变更都会以 ADDED 落地,规格会遗忘原有行为。该技能写出“若当初用 OpenSpec 构建就会被归档”的规格:已实现且已验证的意图,每句都经得起代码对照。

输入:参数为自由文本,可为空或提问(如“哪些功能没有规格”)、一个能力名(如 checkout)、用户即将进行的变更(如 add discount coupons to checkout)、或路径/界面(如 src/app/admin/orders)。

主要步骤:1) 检查前置条件,运行 openspec --version,定位含 config.yaml 的 openspec/ 根目录,读取 config.yaml 的 context 决定规格语言(缺省英文)。2) 界定能力,能力是 openspec/specs/ 下以 kebab-case 命名的业务概念文件夹,运行 openspec list --specs 判断扩展还是新建,并检查活跃变更是否已有该能力的 delta。3) 依据 resources/evidence-guidelines.md 派发子代理收集证据。4) 将候选行为分类,对模糊项一次性询问用户。5) 依据 resources/spec-format.md 写 openspec/specs/<capability>/spec.md,只写已意图且已验证的行为;扩展时保留全部既有需求,代码与既有需求冲突属 drift,只报告不改。6) 对每个规格运行 openspec validate <capability> --type spec --strict,修复全部错误与警告后重跑。7) 用用户语言报告:写或扩展的规格及能力 id、范围决策、被排除的候选及其分类与证据、drift,并给出后续命令建议。

限制:只允许写入 openspec/specs/ 下,变更、config.yaml 与代码保持不变;规格保持未提交,待用户审阅后再提交。CLI 缺失时应停止并请用户安装。