## Definition **OpenSpec** is a lightweight SDD framework that treats every meaningful change as a versioned **delta proposal** against the spec before any code is written. Proposals live in `openspec/changes/` and, once merged, archive into `openspec/archive/` as part of a growing source-of-truth document. ## Workflow 1. **Propose.** Author writes `openspec/changes/<slug>/proposal.md`. Agent helps fill in deltas. 2. **Review.** Humans and a reviewer agent push back on the proposal, not the code. 3. **Implement.** Only after the proposal is approved. The proposal *is* the prompt. 4. **Archive.** Merged proposals move to `openspec/archive/`, becoming audit trail and onboarding material. ## Proposal Template (abbreviated) ```markdown # Proposal: <name> ## Why <motivation> ## Spec delta ### Added - ... ### Changed - ... ### Removed - ... ## Acceptance criteria - AC1: ... - AC2: ... ## Open questions - ... ``` ## Strengths - **Lightest footprint** of major SDD frameworks — no agent persona overhead. - Delta-only specs avoid repeating unchanged surface. - Highest-rated overall in a Feb 2026 13-category independent evaluation. ## When to Use - Public APIs. - Compliance-relevant code. - Any change where "what changed and why" is a real question six months later. ## Related - [[Spec-Driven Development]] - [[BMAD Method]] - [[OpenSpec and the SDD Tools Map 2026]] - [[Spec-as-Prompt Pattern]]