用途:把用户想构建或修复的内容转化为完整的变更规划。输入需包含 kebab-case 变更名,或对目标的描述;若描述不清需先向用户确认。本工作流仅授权规划,不修改项目代码,也不启动实施。
主要能力:通过 openspec CLI 创建变更目录并生成 schema 定义的产物。默认 spec-driven schema 包括 proposal.md(做什么与为什么)、specs/<capability-path>/spec.md(能力规格增量)、design.md(如何做)、tasks.md(实施步骤)。<capability-path> 为 specs/ 下的目录路径,如 user-auth 或 identity/user-auth。
使用方式:若使用独立 store,先运行 openspec store list --json 获取 id,并在读写 spec 与变更的命令上追加 --store <id>,后续保持一致。创建变更:openspec new change "<name>";显式 schema 用 --schema "<schema-name>"。获取构建顺序:openspec status --change "<name>" --json,解析 applyRequires、artifacts、planningHome、artifactPaths、actionContext。按依赖顺序获取说明:openspec instructions <artifact-id> --change "<name>" --json,读取其中 template、instruction、resolvedOutputPath、dependencies。每个产物创建后重跑 status 确认。最终运行 openspec status --change "<name>" 并总结变更位置与产物清单。
适用场景:希望快速获得可评审的变更方案,且后续明确需要进入 apply 阶段时。
限制:只生成规划产物,不实施;产物完成后应停止,等待新请求再启动 apply。必须创建 apply 阶段传递依赖的全部产物,而非仅 apply.requires 列出的。依赖产物需从磁盘重新读取。context 与 rules 是约束,不应写入产物文件。若同名变更已存在,需询问用户继续还是新建。收费、价格等信息暂未提供。