npx skills add ...
npx skills add forztf/open-skilled-sdd --skill openspec-proposal-creation
Creates structured change proposals with specification deltas for new features, breaking changes, or architecture updates. Use when planning features, creating proposals, speccing changes, introducing new capabilities, or starting development workflows. Triggers include "openspec proposal", "create proposal", "plan change", "spec feature", "new capability", "add feature planning", "design spec".
npx skills add forztf/open-skilled-sdd --skill openspec-proposal-creation
Creates comprehensive change proposals following spec-driven development methodology.
Creating a spec proposal involves three main outputs:
Basic workflow: Generate change ID → scaffold directories → draft proposal → create spec deltas → validate structure
Copy this checklist and track progress:
Before creating a proposal, understand the current state:
Choose a descriptive, URL-safe identifier:
Format: add-<feature>, fix-<issue>, update-<component>, remove-<feature>
Examples:
add-user-authenticationfix-payment-validationupdate-api-rate-limitsremove-legacy-endpointsValidation: Check for conflicts:
Create the change folder with standard structure:
Example:
Use the template at templates/proposal.md as starting point.
Required sections:
Tone: Clear, concise, decision-focused. Avoid unnecessary background.
Break implementation into concrete, testable tasks. Use the template at templates/tasks.md.
Format:
Best practices:
This is the most critical step. Spec deltas use EARS format (Easy Approach to Requirements Syntax).
For complete EARS guidelines, see reference/EARS_FORMAT.md
Delta operations:
## ADDED Requirements - New capabilities## MODIFIED Requirements - Changed behavior (include full updated text)## REMOVED Requirements - Deprecated featuresBasic requirement structure:
For validation patterns, see reference/VALIDATION_PATTERNS.md
Run these checks before presenting to user:
Automated checks:
Summarize the proposal clearly:
EARS format details: See reference/EARS_FORMAT.md Validation patterns: See reference/VALIDATION_PATTERNS.md Complete examples: See reference/EXAMPLES.md
When adding net-new capability:
ADDED Requirements deltaWhen changing existing behavior:
MODIFIED Requirements deltaWhen removing features:
REMOVED Requirements deltaDon't:
Do:
All templates are in the templates/ directory:
Token budget: This SKILL.md is approximately 450 lines, under the 500-line recommended limit. Reference files load only when needed for progressive disclosure.
ls spec/changes/ | grep -i "<proposed-id>"# Replace {change-id} with actual ID
mkdir -p spec/changes/{change-id}/specs/{capability-name}mkdir -p spec/changes/add-user-auth/specs/authentication# Implementation Tasks
1. [First concrete task]
2. [Second concrete task]
3. [Test task]
4. [Documentation task]## ADDED Requirements
### Requirement: User Login
WHEN a user submits valid credentials,
the system SHALL authenticate the user and create a session.
#### Scenario: Successful Login
GIVEN a user with email "user@example.com" and password "correct123"
WHEN the user submits the login form
THEN the system creates an authenticated session
AND redirects to the dashboardStructure Checklist:
- [ ] Directory exists: `spec/changes/{change-id}/`
- [ ] proposal.md has Why/What/Impact sections
- [ ] tasks.md has numbered task list (5-15 items)
- [ ] Spec deltas have operation headers (ADDED/MODIFIED/REMOVED)
- [ ] Requirements follow `### Requirement: <name>` format
- [ ] Scenarios use `#### Scenario:` format (4 hashtags)# Count delta operations (should be > 0)
grep -c "## ADDED\|MODIFIED\|REMOVED" spec/changes/{change-id}/specs/**/*.md
# Verify scenario format (should show line numbers)
grep -n "#### Scenario:" spec/changes/{change-id}/specs/**/*.md
# Check requirement headers
grep -n "### Requirement:" spec/changes/{change-id}/specs/**/*.md## Proposal Summary
**Change ID**: {change-id}
**Scope**: {brief description}
**Files created**:
- spec/changes/{change-id}/proposal.md
- spec/changes/{change-id}/tasks.md
- spec/changes/{change-id}/specs/{capability}/spec-delta.md
**Next steps**:
Review the proposal. If approved, say "openspec implement" or "apply the change" to begin implementation.