openspec-new-change

作者: rivet-dev

使用实验性工件工作流启动新的 OpenSpec 变更。当用户想要创建具有结构化…的新功能、修复或修改时使用。

npx skills add https://github.com/rivet-dev/actors --skill openspec-new-change

Start a new change using the experimental artifact-driven approach.

Input: The user's request should include a change name (kebab-case) OR a description of what they want to build.

Steps

  1. If no clear input provided, ask what they want to build

    Use the AskUserQuestion tool (open-ended, no preset options) to ask:

    "What change do you want to work on? Describe what you want to build or fix."

    From their description, derive a kebab-case name (e.g., "add user authentication" → add-user-auth).

    IMPORTANT: Do NOT proceed without understanding what the user wants to build.

  2. Determine the workflow schema

    Use the default schema (omit --schema) unless the user explicitly requests a different workflow.

    Use a different schema only if the user mentions:

    • A specific schema name → use --schema <name>
    • "show workflows" or "what workflows" → run openspec schemas --json and let them choose

    Otherwise: Omit --schema to use the default.

  3. Create the change directory

    openspec new change "<name>"
    

    Add --schema <name> only if the user requested a specific workflow. This creates a scaffolded change at openspec/changes/<name>/ with the selected schema.

  4. Show the artifact status

    openspec status --change "<name>"
    

    This shows which artifacts need to be created and which are ready (dependencies satisfied).

  5. Get instructions for the first artifact The first artifact depends on the schema (e.g., proposal for spec-driven). Check the status output to find the first artifact with status "ready".

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

    This outputs the template and context for creating the first artifact.

  6. STOP and wait for user direction

Output

After completing the steps, summarize:

  • Change name and location
  • Schema/workflow being used and its artifact sequence
  • Current status (0/N artifacts complete)
  • The template for the first artifact
  • Prompt: "Ready to create the first artifact? Just describe what this change is about and I'll draft it, or ask me to continue."

Guardrails

  • Do NOT create any artifacts yet - just show the instructions
  • Do NOT advance beyond showing the first artifact template
  • If the name is invalid (not kebab-case), ask for a valid name
  • If a change with that name already exists, suggest continuing that change instead
  • Pass --schema if using a non-default workflow

来自 rivet-dev 的更多技能

multiplayer-game
rivet-dev
构建多人游戏的实用模式:匹配机制、滴答循环、实时状态、兴趣管理及验证。包含10种游戏类型(大逃杀、竞技场、IO风格、开放世界、派对、2D/3D物理、排位、回合制、放置类)的入门代码与架构模式,涵盖角色拓扑、生命周期图及网络代码策略。涉及服务器模拟基础:固定实时循环与动作驱动更新对比、物理引擎选择(Rapier 2D/3D)及空间...
rivetkit
rivet-dev
为AI代理、多人应用和工作流自动化提供长期运行、有状态的计算能力。Actor是持久化的内存进程,无需数据库往返即可在请求间保持状态,并支持从零到数百万并发实例的自动扩展。内置通过WebSocket和事件的实时通信、用于有序消息处理的持久队列,以及用于结构化数据查询的SQLite。通过Rivet Cloud或自托管方式,状态可在重启和崩溃后持续保留...
ai-agent
rivet-dev
使用持久化内存构建AI代理后端:每个对话一个Rivet Actor,队列化消息处理,并将流式LLM响应作为实时事件。
ai-agent-workspace
rivet-dev
为每个AI代理配备专属计算机:一个持久化工作空间,包含文件系统、进程、Shell、网络功能以及轻量级进程内的代理会话…
chat-room
rivet-dev
使用 Rivet Actors 构建实时聊天室后端:每个房间一个 Actor,基于 SQLite 的消息历史记录,以及通过 WebSocket 向所有连接的客户端广播。
collaborative-text-editor
rivet-dev
使用Yjs CRDTs和Rivet Actors构建协作式文本编辑器后端:每个文档的actor中继同步和感知更新,并持久化快照。
cron-jobs
rivet-dev
使用Rivet Actors的持久化cron任务:schedule.after和schedule.at定时器可在重启和崩溃后继续运行,同时支持重新激活周期性任务和幂等处理器。
live-cursors
rivet-dev
基于Rivet Actors的实时光标与多人协作存在:每个连接的光标状态、通过事件或原始WebSocket的实时更新,以及限流机制。