OpenSpec-新变更Skill openspec-new-change

OpenSpec-新变更技能是一个基于命令行的工具,用于启动和跟踪OpenSpec项目中的变更请求。它采用实验性工件工作流,通过结构化步骤帮助开发者创建新功能、修复问题或进行修改。适合DevOps和软件工程团队使用。关键词:OpenSpec, 变更管理, 工件工作流, CLI工具, 软件开发, 自动化。

DevOps 0 次安装 0 次浏览 更新于 3/11/2026

name: openspec-new-change description: 启动一个新的OpenSpec变更,使用实验性工件工作流。当用户想要通过结构化逐步方法创建新功能、修复或修改时使用。 license: MIT compatibility: 需要openspec CLI。 metadata: author: openspec version: “1.0” generatedBy: “1.0.0”

使用实验性工件驱动方法启动一个新变更。

输入:用户的请求应包括一个变更名称(kebab-case)或他们想要构建的内容描述。

步骤

  1. 如果没有提供清晰的输入,询问他们想要构建什么

    使用AskUserQuestion工具(开放性问题,无预设选项)提问:

    “您想处理什么变更?描述您想要构建或修复的内容。”

    从他们的描述中,推导出kebab-case名称(例如,“添加用户认证” → add-user-auth)。

    重要:在理解用户想要构建什么之前,不要继续。

  2. 确定工作流模式

    使用默认模式(省略--schema),除非用户明确请求不同的工作流。

    仅在用户提到以下情况时使用不同模式:

    • “tdd” 或 “test-driven” → 使用 --schema tdd
    • 特定模式名称 → 使用 --schema <name>
    • “show workflows” 或 “what workflows” → 运行 openspec schemas --json 并让他们选择

    否则:省略 --schema 以使用默认模式。

  3. 创建变更目录

    openspec new change "<name>"
    

    仅在用户请求特定工作流时添加 --schema <name>。 这会在 openspec/changes/<name>/ 创建选定的模式支架变更。

  4. 显示工件状态

    openspec status --change "<name>"
    

    这显示哪些工件需要创建,哪些已就绪(依赖满足)。

  5. 获取第一个工件的指令 第一个工件取决于模式(例如,spec-driven 的 proposal,tdd 的 spec)。 检查状态输出以找到状态为"ready"的第一个工件。

    openspec instructions <first-artifact-id> --change "<name>"
    

    这输出创建第一个工件的模板和上下文。

  6. 停止并等待用户指示

输出

完成步骤后,总结:

  • 变更名称和位置
  • 使用的模式/工作流及其工件序列
  • 当前状态(0/N 个工件完成)
  • 第一个工件的模板
  • 提示:“准备创建第一个工件吗?只需描述这个变更的内容,我会草拟它,或者让我继续。”

防护栏

  • 不要创建任何工件——只显示指令
  • 不要超过显示第一个工件模板
  • 如果名称无效(不是kebab-case),请求有效名称
  • 如果同名变更已存在,建议继续该变更
  • 如果使用非默认工作流,传递 --schema