SuperAPI AI Directory

sdd-propose

Coding & development

View repository

Updated 10-16 05:46

About this skill

sdd-propose

Creates a change proposal with clear intent, defined scope, and technical approach.

Triggers: /sdd-propose <change-name>, create proposal, define change, sdd proposal


Purpose

The proposal defines the WHAT and WHY before entering into technical details. It is the scope contract of the change. Without an approved proposal, there are no specs or design.

For substantial proposals (cross-team scope, multiple stakeholders, or user-facing product changes), optionally pair the proposal with a PRD using docs/templates/prd-template.md. The PRD captures problem statement, target users, user stories, NFRs, and acceptance criteria — feeding directly into the sdd-spec phase. Skip the PRD for internal refactors or single-stakeholder changes.

Skill resolution

Project-local → global, in order:

1. .claude/skills/sdd-propose/SKILL.md     (project-local — highest priority)
2. ~/.claude/skills/sdd-propose/SKILL.md   (global catalog — fallback)

See docs/SKILL-RESOLUTION.md for the full algorithm.



Claude execution wiring

These notes bind the tool-neutral logic above to the Claude Code harness. They are the EXECUTION layer that does not port to other tools.

  • Step 0a preload — follow skills/_shared/sdd-phase-common.md Section F (Project Context Load). Non-blocking.
  • Step 0c preload — follow skills/_shared/sdd-phase-common.md Section G (Spec Context Preload). Non-blocking.
  • Artifact reads — use the harness Read("docs/sdd/{change-name}/explore.md") tool (disk-primary, per _shared/sdd-phase-common.md Section B). If a disk file is absent (legacy change), fall back to mem_search(query: "sdd/{change-name}/explore") → mem_get_observation(id).
  • Proposal persistence — disk-primary, per _shared/sdd-phase-common.md Section C: first Write("docs/sdd/{change-name}/proposal.md", <full markdown>), then mem_save a pointer + summary with topic_key: sdd/{change-name}/proposal, type: architecture, project: {project}. If Engram MCP is unreachable: still write the disk artifact; skip the engram pointer only. The Step 3a-bis gate failure path MUST NOT call Write or mem_save.
  • Orchestrator output — return the neutral Output Contract as the JSON block the orchestrator expects; the persisted-pointer artifact entry is engram:sdd/{change-name}/proposal. The manual next steps are /sdd-spec <change-name> and /sdd-design <change-name> (can run in parallel).