sdd-spec

Generate delta specs documenting added, modified, and removed requirements with RFC 2119 keywords.

Updated Jan 24, 2026
One-click install
npx skills add https://github.com/MarcialFantini/saas-template --skill sdd-spec-marcialfantini
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: sdd-spec
Source: https://github.com/MarcialFantini/saas-template/tree/main/.agent/skills/sdd-spec
Command: npx skills add https://github.com/MarcialFantini/saas-template --skill sdd-spec-marcialfantini

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill turns change proposals into precise, testable specifications that capture what is being added, modified, or removed, removing ambiguity between product, design, and engineering teams.

Core Features & Use Cases

  • Delta spec generation: Create ADDED, MODIFIED, and REMOVED sections that describe requirement changes with RFC 2119 strength keywords.
  • Scenario-driven requirements: Provide Given/When/Then happy paths and edge cases for each requirement to enable automated testing.
  • Persistence-aware output: Support engram and openspec artifact modes or return results only when persistence is disabled.
  • Use Case: When an orchestrator assigns a change proposal touching auth and billing, group domains, read existing specs, and produce per-domain delta specs under openspec/changes/{change-name}/specs/.

Quick Start

Create delta specs for the change named ImproveBillingFlow by reading its proposal and writing the spec files under openspec/changes/ImproveBillingFlow/specs/.

Frequently Asked Questions about sdd-spec

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate delta specifications for a software change proposal?

Delta specifications document added, modified, and removed requirements for a proposed software change. They use ADDED, MODIFIED, and REMOVED sections with RFC 2119 strength keywords to remove ambiguity between product, design, and engineering teams.

How do I write Given/When/Then scenarios for requirements?

Write Given/When/Then scenarios for each requirement by providing happy paths and edge cases within the delta spec. This scenario-driven approach enables automated testing and ensures requirements are testable and precise.

What are RFC 2119 keywords and how are they used in specifications?

RFC 2119 keywords such as MUST, SHOULD, and MAY are used in delta specifications to define requirement strength and precision. They ensure specifications capture requirement changes with clear, testable intent across system domains.

Does openspec support persistence modes for artifact generation?

OpenSpec supports engram and openspec persistence modes for artifact generation, or returns results only when persistence is disabled. The output adheres to the openspec persistence contract while generating delta spec files under the changes directory.

Can I use delta specs across different system domains like auth and payments?

Delta specs can be applied to change proposals across system domains such as auth, payments, and UI. When a change touches multiple domains like auth and billing, per-domain delta specs are grouped and produced under openspec/changes/{change-name}/specs/.

What is the best way to document added, modified, and removed requirements?

The best way to document requirement changes is using delta specifications with separate ADDED, MODIFIED, and REMOVED sections. This approach uses RFC 2119 keywords and Given/When/Then scenarios to capture changes precisely and testably across domains.