spec-manager

devstefancho's avatarfrom devstefancho

Manage specification files for spec-driven development. Use when creating, updating, or deleting spec files. Supports feat, fix, docs, refactor, and chore scopes.

⭐2stars🔀0forks📁View on GitHub🕐Updated Dec 31, 2025

When & Why to Use This Skill

The Spec Manager skill is a specialized tool designed to streamline Spec-Driven Development (SDD) by automating the lifecycle of technical specification files. It enforces a standardized workflow for creating, updating, and organizing specs across various scopes like features, bug fixes, and refactoring. By utilizing XML-based templates and a strict 'one spec = one task' principle, it ensures consistency, prevents duplicate work, and maintains a clear, actionable roadmap for AI agents and human developers alike.

Use Cases

  • Feature Planning: Automatically generate structured 'feat' specifications with predefined XML tags to define new requirements and desired states before implementation.
  • Standardized Bug Fixing: Create 'fix' specs to document the scope of a bug and the intended resolution, ensuring that every patch follows a consistent documentation standard.
  • Codebase Refactoring: Manage 'refactor' specifications to plan structural changes, focusing strictly on the final state to avoid confusion with legacy code descriptions.
  • Project Documentation Management: Use the 'docs' and 'chore' scopes to systematically maintain project metadata, READMEs, and maintenance tasks within the same spec-driven framework.
  • Workflow Auditing: List and review all existing specs organized by scope to identify project progress, detect redundant tasks, and maintain a clean development history.
namespec-manager
descriptionManage specification files for spec-driven development. Use when creating, updating, or deleting spec files. Supports feat, fix, docs, refactor, and chore scopes.
allowed-toolsRead, Write, Glob, Grep, Bash, AskUserQuestion

Spec Manager

Manages specification files in specs/{scope}/{work-name}.md for spec-driven development workflow.

Principles

  1. One spec = one task (unless frontend + backend work together)
  2. No "before" sections - Focus only on the final desired state
  3. XML tag format - Use XML tags for structure (varies by scope)
  4. Minimal code examples - Avoid code in specs; if necessary, keep it brief and illustrative
  5. Check for duplicates - Always verify if similar specs exist before creating

Operations

Create

  1. Analyze request and infer scope (feat/fix/docs/refactor/chore)
  2. Search specs/{scope}/ for similar existing specs
  3. If found, ask: "Create new", "Update existing", or "Cancel"
  4. If ambiguous scope, ask user to confirm
  5. Generate filename (lowercase-with-hyphens)
  6. Use appropriate template based on scope
  7. Fill in XML tags based on user request

Update

  1. List existing specs in relevant scope
  2. Let user select which to update
  3. Verify update aligns with original purpose
  4. If purpose changed significantly, suggest new spec
  5. Apply changes while maintaining XML structure

Delete

  1. List all specs organized by scope
  2. Let user select spec(s) to delete
  3. Confirm and remove

List

Display all specs organized by scope directory structure.

Templates

See templates directory for scope-specific XML tag structures:

Each template uses different XML tags appropriate to its scope.