Skip to content
Agent Orchestration
Skill

/openspec-propose

Propose a new change with all artifacts generated in one step. Use when the user wants to quickly describe what they want to build and get a complete proposal with design, specs, and tasks ready for implementation.

From plugin
chorus
1.2k44 skills7 agents4 commands1 MCP

Claude Code

$ npx -y skills add Chorus-AIDLC/Chorus --skill openspec-propose --agent claude-code

SKILL.md

openspec-propose.SKILL.md
name: openspec-propose
description: Propose a new change with all artifacts generated in one step. Use when the user wants to quickly describe what they want to build and get a complete proposal with design, specs, and tasks ready for implementation.
license: MIT
compatibility: Requires openspec CLI.
metadata:
  author: openspec
  version: "1.0"
  generatedBy: "1.3.1"

Propose a new change - create the change and generate all artifacts in one step.

I'll create a change with artifacts:

  • proposal.md (what & why)
  • design.md (how)
  • tasks.md (implementation steps)

When ready to implement, run /opsx:apply

---

**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. **Create the change directory**

   openspec new change "<name>"

This creates a scaffolded change at `openspec/changes/<name>/` with `.openspec.yaml`.

3. **Get the artifact build order**

   openspec status --change "<name>" --json

Parse the JSON to get:

  • `applyRequires`: array of artifact IDs needed before implementation (e.g., `["tasks"]`)
  • `artifacts`: list of all artifacts with their status and dependencies

4. **Create artifacts in sequence until apply-ready**

Use the **TodoWrite tool** to track progress through the artifacts.

Loop through artifacts in dependency order (artifacts with no pending dependencies first):

a. **For each artifact that is `ready` (dependencies satisfied)**:

  • Get instructions:
        openspec instructions <artifact-id> --change "<name>" --json
  • The instructions JSON includes:
  • `context`: Project background (constraints for you - do NOT include in output)
  • `rules`: Artifact-specific rules (constraints for you - do NOT include in output)
  • `template`: The structure to use for your output file
  • `instruction`: Schema-specific guidance for this artifact type
  • `outputPath`: Where to write the artifact
  • `dependencies`: Completed artifacts to read for context
  • Read any completed dependency files for context
  • Create the artifact file using `template` as the structure
  • Apply `context` and `rules` as constraints - but do NOT copy them into the file
  • Show brief progress: "Created <artifact-id>"

b. **Continue until all `applyRequires` artifacts are complete**

  • After creating each artifact, re-run `openspec status --change "<name>" --json`
  • Check if every artifact ID in `applyRequires` has `status: "done"` in the artifacts array
  • Stop when all `applyRequires` artifacts are done

c. **If an artifact requires user input** (unclear context):

  • Use **AskUserQuestion tool** to clarify
  • Then continue with creation

5. **Show final status**

   openspec status --change "<name>"

**Output**

After completing all artifacts, summarize:

  • Change name and location
  • List of artifacts created with brief descriptions
  • What's ready: "All artifacts created! Ready for implementation."
  • Prompt: "Run `/opsx:apply` or ask me to implement to start working on the tasks."

**Artifact Creation Guidelines**

  • Follow the `instruction` field from `openspec instructions` for each artifact type
  • The schema defines what each artifact should contain - follow it
  • Read dependency artifacts for context before creating new ones
  • Use `template` as the structure for your output file - fill in its sections
  • **IMPORTANT**: `context` and `rules` are constraints for YOU, not content for the file
  • Do NOT copy `<context>`, `<rules>`, `<project_context>` blocks into the artifact
  • These guide what you write, but should never appear in the output

**Guardrails**

  • Create ALL artifacts needed for implementation (as defined by schema's `apply.requires`)
  • Always read dependency artifacts before creating a new one
  • If context is critically unclear, ask the user - but prefer making reasonable decisions to keep momentum
  • If a change with that name already exists, ask if user wants to continue it or create a new one
  • Verify each artifact file exists after writing before proceeding to next
Read more
@chorus-aidlc
Ships withchorus

The Agent Harness for AI-Human Collaboration, inspired by the AI-DLC (AI-Driven Development Lifecycle)

1.2k44 skills7 agents1 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
1.2k
Star history of Chorus-AIDLC/Chorus on GitHub, a chart by star-history.com

Other skills on chorus.

blog

blog

Write release blog posts for Chorus — problem-first narrative, bilingual (zh/en), following the project's editorial style.

@chorus-aidlc@chorus-aidlcInstall Skill
e2e-verification

e2e-verification

Use when manually verifying a Chorus frontend change in a real browser — finding local login credentials, driving the running dev…

@chorus-aidlc@chorus-aidlcInstall Skill
openspec-apply-change

openspec-apply-change

Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through…

@chorus-aidlc@chorus-aidlcInstall Skill
openspec-explore

openspec-explore

Enter explore mode - a thinking partner for exploring ideas, investigating problems, and clarifying requirements. Use when the…

@chorus-aidlc@chorus-aidlcInstall Skill
plugin-maintenance

plugin-maintenance

Guide for modifying the Chorus plugin (Claude Code, Codex/TRAE CLI, OpenClaw, Kiro, Pi, dsh, and Hermes ports), updating skill…

@chorus-aidlc@chorus-aidlcInstall Skill

More skills from other plugins.

1password

1password

Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.

clawdis13d393k
@steipete@steipeteInstall Skill
computer-use

computer-use

Drives the GUI of a visible local app window through `orca computer`: accessibility tree, clicks, typing, menus, dialogs, and…

orca13d111k
@stablyai@stablyaiInstall Skill
agentmail

agentmail

Use your assigned AgentMail inbox to read email tasks, explicitly send or reply, and check delivery. Provided automatically by…

paperclip13d109k
@paperclipai@paperclipaiInstall Skill
adr-create

adr-create

Create a new Architecture Decision Record with sequential numbering and AgentDB registration

@ruvnet@ruvnetInstall Skill

Questions about openspec-propose.

Which coding agents can use openspec-propose?
openspec-propose installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.