Files
EmailBill/.opencode/skills/openspec-new-change/SKILL.cn.md
SunCheng 51172e8c5a
All checks were successful
Docker Build & Deploy / Build Docker Image (push) Successful in 4m27s
Docker Build & Deploy / Deploy to Production (push) Successful in 7s
Docker Build & Deploy / Cleanup Dangling Images (push) Successful in 1s
Docker Build & Deploy / WeChat Notification (push) Successful in 1s
fix
2026-02-11 13:00:01 +08:00

2.6 KiB

name, description, license, compatibility, metadata
name description license compatibility metadata
openspec-new-change Start a new OpenSpec change using the experimental artifact workflow. Use when the user wants to create a new feature, fix, or modification with a structured step-by-step approach. MIT Requires openspec CLI.
author version generatedBy
openspec 1.0 1.1.1

使用实验性 artifact 驱动方法开始新变更。

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

步骤

  1. 如果未提供明确输入,询问他们想要构建什么

    使用 AskUserQuestion 工具(开放式,无预设选项)询问:

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

    从他们的描述中,派生一个 kebab-case 名称(例如 "add user authentication" → add-user-auth)。

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

  2. 确定工作流 schema

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

    仅在用户提到时使用不同的 schema:

    • 特定 schema 名称 → 使用 --schema <name>
    • "显示工作流"或"有哪些工作流" → 运行 openspec schemas --json 并让他们选择

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

  3. 创建变更目录

    openspec new change "<name>"
    

    仅当用户请求特定工作流时才添加 --schema <name>。 这将在 openspec/changes/<name>/ 创建一个使用所选 schema 的脚手架变更。

  4. 显示 artifact 状态

    openspec status --change "<name>"
    

    这显示需要创建哪些 artifacts 以及哪些已准备好(依赖关系已满足)。

  5. 获取第一个 artifact 的说明 第一个 artifact 取决于 schema(例如 spec-driven 的 proposal)。 检查状态输出以找到第一个状态为 "ready" 的 artifact。

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

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

  6. 停止并等待用户指示

输出

完成步骤后,总结:

  • 变更名称和位置
  • 正在使用的 Schema/工作流及其 artifact 序列
  • 当前状态(已完成 0/N 个 artifacts)
  • 第一个 artifact 的模板
  • 提示: "准备创建第一个 artifact 了吗? 只需描述此变更的内容,我会起草它,或者让我继续。"

护栏

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