[!IMPORTANT]
This skill is designed to be used with the sdd-team:sdd-pm.agent agent.
Switch to it in the agent selector before invoking this skill for the full interactive experience.
If you are already using sdd-team:sdd-pm.agent, proceed with the workflow below.
Propose a change that updates all shared project documents and creates all change artifacts — in one automated pipeline.
This covers:
- Updating
{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/prd.md with any new requirements - if update is needed
- Updating
{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/ux.md and HTML prototype with UX changes - if exists
- Updating
{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/architecture.md with technical changes - if exists
- Creating change artifacts (
proposal.md, design.md, tasks.md, specs/*)
The output is a fully updated project documentation set + a ready-to-implement change.
Input: The argument after /sdd-propose is the change name (kebab-case) OR a description of what the user wants to build.
Agent: Coordinates the full pipeline, dispatching subagents for shared document updates.
Steps
PRD Gate — check if {ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/prd.md exists.
If it does NOT exist, stop immediately and tell the user:
"A PRD is required before proposing a change. Please create one first using /sdd-prd, then come back to /sdd-propose."
Do NOT proceed past this step without a PRD.
Understand the change
If no input was provided, 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."
Read all shared project documents ({ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/prd.md, {ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/ux.md, {ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/architecture.md, {ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/prototype-*.html, README.md), existing specs ({ARTIFACT_MAIN_FOLDER}/{SPECS_SUBFOLDER}/*/spec.md) and user input to fully understand the change and its implications.
Present a change impact summary:
- What's changing
- Which documents need updating and why
- Which existing specs are affected
- Proposed change name (kebab-case, e.g. "add user authentication" →
add-user-auth)
Get user confirmation before proceeding.
Phase 1 — Update PRD ({ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/prd.md)
Launch a subagent (via runSubagent) with a detailed prompt that:
- Instructs it to read
pm.agent.md and adopt the PM agent persona
- Provides the change description and affected sections
- Requests surgical edits only: Scope table, User Journeys, Functional Requirements, Non-Functional Requirements
- Updates
Last updated date
- Returns a summary of changes made
Phase 2 — Update UX ({ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/ux.md + {ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/prototype-*.html)
Launch a subagent (via runSubagent) with a detailed prompt that:
- Instructs it to read
ux-designer.agent.md and adopt the UX Designer agent persona
- Provides the change description and affected sections
- Requests surgical edits: Design Decisions Log, Component Inventory, Wireframes, Prototype Spec, HTML prototype
- Updates
Last updated date
- Returns a summary of changes made
Phase 3 — Update Architecture ({ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/architecture.md)
Launch a subagent (via runSubagent) with a detailed prompt that:
- Instructs it to read
architect.agent.md and adopt the Architect agent persona
- Provides the change description and affected sections
- Requests surgical edits: Database schema, API surface table, API response examples, Conventions table
- Updates
Last updated date
- Returns a summary of changes made
Phase 4 — Create change artifacts
Create the change directory:
mkdir -p {ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/"<name>"
If a change with that name already exists, ask the user whether to continue it or start fresh.
Use the TodoWrite tool to track progress through the following artifacts (in creation order):
a. proposal.md — what & why (must be created first)
- Read
assets/proposal.md for structure
- Use the confirmed change description, PRD context, and summaries from Phases 1–3 as input
- Save to
{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/proposal.md
- Verify the file exists before continuing
b. design.md — how (requires proposal)
- Read
assets/design.md for structure
- Read
{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/proposal.md for context
- Incorporate Architecture decisions from Phase 3
- Save to
{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/design.md
- Verify the file exists before continuing
c. tasks.md — implementation steps (requires design)
- Read
assets/tasks.md for structure
- Read
{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/design.md for context
- If API surface changed, include a task for README update
- Save to
{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/tasks.md
- Verify the file exists before continuing
d. specs/<capability>/spec.md — only if new capabilities are introduced
- Read
assets/spec.md for structure
- Can be created alongside design
- Save to
{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/{SPECS_SUBFOLDER}/<capability>/spec.md
<capability> is the name of any new capability introduced by the change (e.g., "user authentication"). It does not contains a date in the name. Only the archived change in archive/YYYY-MM-DD-<change-name> contains the date in its name.
Completion
Show pipeline summary:
- Which shared docs were updated and what changed in each
- List of artifacts created under
{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/
- Status: "All artifacts created! Ready for implementation with
/sdd-implement."
Tracker Update
Follow the sdd-tracker skill — add a new change entry for <name> with status: ready-for-dev and only the artifacts actually created in this pipeline listed under the change's artifacts field. Add a changelog entry "Change proposed on YYYY-MM-DD" with a summary of what was done.
Guardrails
{SKILL_ASSETS_NOTICE}
- Single input, full pipeline — user describes the change once, all phases use that context
- Ask question if input is unclear — do not proceed without understanding the change
- Surgical edits — never rewrite entire documents; only update affected sections
- Cross-document consistency — same terminology and field names across PRD, UX, Architecture, and specs
- Date stamps — update in every modified document
- No silent skips — if a phase has no changes, explicitly state it
- README awareness — if API surface changes (endpoints, request/response, curl examples), include README update in tasks
- Ask user only at Step 1 for confirmation — then execute the full pipeline autonomously
- Phases 1–3 MUST each be dispatched via
runSubagent — never read agent files directly to adopt a persona
- Phase 4 runs directly (no subagent needed) — use project context and Phase 1–3 summaries as constraints
- Each subagent prompt must be self-contained: include change description, affected sections, edit rules, and expected return format
- Follow each agent's quality standards (FR format for PRD, C/R/A decisions for UX, decision rationale for Architecture)
1---2name: sdd-propose3description: Scope a new change end-to-end — writes a proposal, design doc, capability specs, and task list, then updates the shared PRD, UX, and architecture as needed. Use when scoping new product changes, creating a proposal with spec, design, and tasks in one workflow. Do not use for implementing already-proposed changes or updating a single shared document in isolation.4---56> [!IMPORTANT]7> This skill is designed to be used with the **sdd-team:sdd-pm.agent** agent.8> Switch to it in the agent selector before invoking this skill for the full interactive experience.9> If you are already using **sdd-team:sdd-pm.agent**, proceed with the workflow below.1011Propose a change that updates all shared project documents and creates all change artifacts — in one automated pipeline.1213This covers:14- Updating `{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/prd.md` with any new requirements - if update is needed15- Updating `{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/ux.md` and HTML prototype with UX changes - if exists16- Updating `{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/architecture.md` with technical changes - if exists17- Creating change artifacts (`proposal.md`, `design.md`, `tasks.md`, `specs/*`)1819The output is a fully updated project documentation set + a ready-to-implement change.2021---2223**Input**: The argument after `/sdd-propose` is the change name (kebab-case) OR a description of what the user wants to build.2425**Agent**: Coordinates the full pipeline, dispatching subagents for shared document updates.2627**Steps**28290. **PRD Gate** — check if `{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/prd.md` exists.3031 If it does NOT exist, stop immediately and tell the user:32 > "A PRD is required before proposing a change. Please create one first using `/sdd-prd`, then come back to `/sdd-propose`."3334 Do NOT proceed past this step without a PRD.35361. **Understand the change**3738 If no input was provided, use the **AskUserQuestion tool** (open-ended, no preset options) to ask:39 > "What change do you want to work on? Describe what you want to build or fix."4041 Read all shared project documents (`{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/prd.md`, `{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/ux.md`, `{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/architecture.md`, `{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/prototype-*.html`, `README.md`), existing specs (`{ARTIFACT_MAIN_FOLDER}/{SPECS_SUBFOLDER}/*/spec.md`) and user input to fully understand the change and its implications.4243 Present a **change impact summary**:44 - What's changing45 - Which documents need updating and why46 - Which existing specs are affected47 - Proposed change name (kebab-case, e.g. "add user authentication" → `add-user-auth`)4849 Get user confirmation before proceeding.50512. **Phase 1 — Update PRD** (`{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/prd.md`)5253 Launch a **subagent** (via `runSubagent`) with a detailed prompt that:54 - Instructs it to read `pm.agent.md` and adopt the PM agent persona55 - Provides the change description and affected sections56 - Requests surgical edits only: Scope table, User Journeys, Functional Requirements, Non-Functional Requirements57 - Updates `Last updated` date58 - Returns a summary of changes made59603. **Phase 2 — Update UX** (`{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/ux.md` + `{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/prototype-*.html`)6162 Launch a **subagent** (via `runSubagent`) with a detailed prompt that:63 - Instructs it to read `ux-designer.agent.md` and adopt the UX Designer agent persona64 - Provides the change description and affected sections65 - Requests surgical edits: Design Decisions Log, Component Inventory, Wireframes, Prototype Spec, HTML prototype66 - Updates `Last updated` date67 - Returns a summary of changes made68694. **Phase 3 — Update Architecture** (`{ARTIFACT_MAIN_FOLDER}/{SHARED_SUBFOLDER}/architecture.md`)7071 Launch a **subagent** (via `runSubagent`) with a detailed prompt that:72 - Instructs it to read `architect.agent.md` and adopt the Architect agent persona73 - Provides the change description and affected sections74 - Requests surgical edits: Database schema, API surface table, API response examples, Conventions table75 - Updates `Last updated` date76 - Returns a summary of changes made77785. **Phase 4 — Create change artifacts**7980 Create the change directory:81 ```bash82 mkdir -p {ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/"<name>"83 ```8485 If a change with that name already exists, ask the user whether to continue it or start fresh.8687 Use the **TodoWrite tool** to track progress through the following artifacts (in creation order):8889 a. **`proposal.md`** — what & why (must be created first)90 - Read `assets/proposal.md` for structure91 - Use the confirmed change description, PRD context, and summaries from Phases 1–3 as input92 - Save to `{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/proposal.md`93 - Verify the file exists before continuing9495 b. **`design.md`** — how (requires proposal)96 - Read `assets/design.md` for structure97 - Read `{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/proposal.md` for context98 - Incorporate Architecture decisions from Phase 399 - Save to `{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/design.md`100 - Verify the file exists before continuing101102 c. **`tasks.md`** — implementation steps (requires design)103 - Read `assets/tasks.md` for structure104 - Read `{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/design.md` for context105 - If API surface changed, include a task for README update106 - Save to `{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/tasks.md`107 - Verify the file exists before continuing108109 d. **`specs/<capability>/spec.md`** — only if new capabilities are introduced110 - Read `assets/spec.md` for structure111 - Can be created alongside design112 - Save to `{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/{SPECS_SUBFOLDER}/<capability>/spec.md`113 114 `<capability>` is the name of any new capability introduced by the change (e.g., "user authentication"). It does not contains a date in the name. Only the archived change in `archive/YYYY-MM-DD-<change-name>` contains the date in its name.1151166. **Completion**117118 Show pipeline summary:119 - Which shared docs were updated and what changed in each120 - List of artifacts created under `{ARTIFACT_MAIN_FOLDER}/{CHANGE_SUBFOLDER}/<name>/`121 - Status: "All artifacts created! Ready for implementation with `/sdd-implement`."1221237. **Tracker Update**124125 Follow the **`sdd-tracker` skill** — add a new change entry for `<name>` with `status: ready-for-dev` and only the artifacts actually created in this pipeline listed under the change's `artifacts` field. Add a changelog entry "Change proposed on YYYY-MM-DD" with a summary of what was done.126127**Guardrails**128{SKILL_ASSETS_NOTICE}129- Single input, full pipeline — user describes the change once, all phases use that context130- Ask question if input is unclear — do not proceed without understanding the change131- Surgical edits — never rewrite entire documents; only update affected sections132- Cross-document consistency — same terminology and field names across PRD, UX, Architecture, and specs133- Date stamps — update in every modified document134- No silent skips — if a phase has no changes, explicitly state it135- README awareness — if API surface changes (endpoints, request/response, curl examples), include README update in tasks136- Ask user only at Step 1 for confirmation — then execute the full pipeline autonomously137- Phases 1–3 MUST each be dispatched via `runSubagent` — never read agent files directly to adopt a persona138- Phase 4 runs directly (no subagent needed) — use project context and Phase 1–3 summaries as constraints139- Each subagent prompt must be self-contained: include change description, affected sections, edit rules, and expected return format140- Follow each agent's quality standards (FR format for PRD, C/R/A decisions for UX, decision rationale for Architecture)