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…

npx skills add https://github.com/rivet-dev/rivet --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

More skills from rivet-dev

multiplayer-game
rivet-dev
Pragmatic patterns for building multiplayer games: matchmaking, tick loops, realtime state, interest management, and validation. Includes starter code and architecture patterns for 10 game types (battle royale, arena, IO style, open world, party, physics 2D/3D, ranked, turn-based, idle) with actor topology, lifecycle diagrams, and netcode strategies. Covers server simulation fundamentals: fixed realtime loops vs. action-driven updates, physics engine selection (Rapier 2D/3D), and spatial...
rivetkit
rivet-dev
Long-lived, stateful compute for AI agents, multiplayer apps, and workflow automation. Actors are persistent in-memory processes that maintain state across requests without database round trips, with automatic scaling from zero to millions of concurrent instances. Built-in realtime communication via WebSockets and events, durable queues for ordered message processing, and SQLite for structured data queries. State persists across restarts and crashes through Rivet Cloud or self-hosted...
ai-agent
rivet-dev
Build an AI agent backend with persistent memory: one Rivet Actor per conversation, queued message handling, and streaming LLM responses as realtime events.
ai-agent-workspace
rivet-dev
Give every AI agent its own computer: a persistent workspace with a filesystem, processes, shells, networking, and agent sessions on a lightweight in-process…
chat-room
rivet-dev
Build a realtime chat room backend with Rivet Actors: one actor per room, SQLite-backed message history, and WebSocket broadcast to every connected client.
collaborative-text-editor
rivet-dev
Build a collaborative text editor backend with Yjs CRDTs and Rivet Actors: per-document actors relay sync and awareness updates and persist snapshots.
cron-jobs
rivet-dev
Durable cron jobs with Rivet Actors: schedule.after and schedule.at timers survive restarts and crashes, plus re-arming recurring jobs and idempotent handlers.
live-cursors
rivet-dev
Live cursors and multiplayer presence with Rivet Actors: per-connection cursor state, realtime updates over events or raw WebSockets, and throttling.