Loading...
Loading...
Creates a change proposal with clear intent, defined scope, and technical approach. Trigger: /sdd-propose <change-name>, create proposal, define change scope, sdd proposal.
npx skill4agent add fearovex/claude-config sdd-proposeCreates a change proposal with clear intent, defined scope, and technical approach.
/sdd-propose <change-name>1. .claude/skills/sdd-propose/SKILL.md (project-local — highest priority)
2. ~/.claude/skills/sdd-propose/SKILL.md (global catalog — fallback)docs/SKILL-RESOLUTION.mdskills/_shared/sdd-phase-common.mdstatus: blockedstatus: failed.mdai-context/features/_template.md_<change-name>-.md<change-name>artifactsstems = change_name.split("-").filter(s => s.length > 1)
for each feature_file in ai-context/features/ (excluding _ prefix files):
domain = feature_file.stem (filename without .md)
if domain in change_name OR any stem in domain -> matchadd-payments-gateway[add, payments, gateway]features/payments.mdauth-token-refresh[auth, token, refresh]features/auth.mdimprove-project-audit[improve, project, audit]skills/_shared/sdd-phase-common.mdmem_search(query: "sdd/{change-name}/explore")mem_get_observation(id)ai-context/architecture.md## Branch Diff## Prior Attempts## Contradiction Analysismem_search(query: "sdd/{change-name}/explore")mem_get_observation(id)## Context Notes## Supersedes"None — this is a purely additive change."### REMOVED### REPLACED### CONTRADICTEDMUST_RESOLVEmem_savetopic_key: sdd/{change-name}/proposaltype: architectureproject: {project}# Proposal: [change-name]
Date: [YYYY-MM-DD]
Status: Draft
## Intent
[One clear sentence: what problem it solves or what need it covers]
## Motivation
[Why this is necessary now. Business or technical context.]
## Supersedes
[ALWAYS present — even if nothing is superseded. If purely additive: "None — this is a purely additive change."]
### REMOVED (if applicable)
- **[Feature or component name]** (`path/to/file`)
Reason: [why it is being removed]
### REPLACED (if applicable)
| Old | New | Reason |
|-----|-----|--------|
| [old feature] | [new feature] | [why] |
### CONTRADICTED (if applicable)
- **[Feature or behavior]**: prior context says "[X]", this proposal says "[NOT X]"
Resolution: [contract superseded / breaking change / deprecation period / stakeholder coordination required]
## Scope
### Included
- [deliverable 1]
- [deliverable 2]
- [deliverable 3]
### Excluded (explicitly out of scope)
- [what will NOT be done and why]
## Proposed Approach
[High-level description of the technical solution.
Does not go into implementation detail — that is the design's job.
Explains the "how" at a conceptual level.]
## Affected Areas
| Area/Module | Type of Change | Impact |
| ----------- | -------------------- | --------------- |
| [area] | New/Modified/Removed | Low/Medium/High |
## Risks
| Risk | Probability | Impact | Mitigation |
| ------ | --------------- | --------------- | ----------------- |
| [risk] | Low/Medium/High | Low/Medium/High | [how to mitigate] |
## Rollback Plan
[How to revert if something goes wrong.
Must be concrete: which files, which commands, which steps.]
## Dependencies
- [What must exist/be completed before starting]
- [Changes in other parts of the system that this requires]
## Success Criteria
- [ ] [measurable and verifiable criterion 1]
- [ ] [measurable and verifiable criterion 2]
- [ ] [measurable and verifiable criterion 3]
## Effort Estimate
[Low (hours) / Medium (1-2 days) / High (several days)]## Context Notes## Context## Context
Recorded from conversation at [YYYY-MM-DDTHH:MMZ]:
### Explicit Intents
- **[intent]**: [exact wording or paraphrase from user]
### Platform Constraints
- **[constraint]**: [description]
### Provisional Notes
- **[note]**: [description and condition]## Context## Contradiction Analysismem_search(query: "sdd/{change-name}/explore")mem_get_observation(id)## Contradiction Resolution## Contradiction Resolution
### [Feature or behavior name]
**Prior context**: [what the prior spec or archived change said]
**This proposal**: [what this change intends to do instead]
**Resolution approach**: [one of: contract superseded / breaking change with migration / deprecation period / stakeholder coordination required]## RisksProposal created: [change-name]
Intent: [one line]
Scope: [N deliverables included, M excluded]
Approach: [one line]
Risk: Low/Medium/High
Next step: specs + design (can run in parallel){
"status": "ok|warning|blocked",
"summary": "Proposal [name]: [intent in one line]. Risk [level].",
"artifacts": ["engram:sdd/{change-name}/proposal"],
"next_recommended": ["sdd-spec", "sdd-design"],
"risks": ["[main risk if any]"]
}sdd-design