spec-driven-development

Generate documentation and task plans from manually drafted specifications.

Updated Dec 18, 2021
One-click install
npx skills add https://github.com/isihigameKoudai/utils --skill spec-driven-development-isihigamekoudai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: spec-driven-development
Source: https://github.com/isihigameKoudai/utils/tree/main/.agents/skills/spec-driven-development
Command: npx skills add https://github.com/isihigameKoudai/utils --skill spec-driven-development-isihigamekoudai

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill ensures that all non-trivial development work starts from well-defined, verifiable specifications, reducing ambiguity and improving the quality of the resulting code.

Core Features & Use Cases

  • Specification-Based Development: Encourages writing executable specifications as acceptance criteria before implementation.
  • Documentation: Automatically creates and maintains specifications in doc/plans/<topic>.md.
  • Scalability: Handles complex, multi-file changes and ambiguous requirements with structured approaches.

Quick Start

Begin implementing new features or complex changes by drafting a specification following the guidelines outlined in the SKILL.md for this skill unit.

Frequently Asked Questions about spec-driven-development

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

FAQPage Schema
How do I reduce ambiguity when starting non-trivial software development tasks?

Specification-based development reduces ambiguity by requiring manual drafting of verifiable specifications before implementation begins. This approach ensures requirements are actionable, directly improving resulting code quality and overall project stability.

How do I manage documentation for complex multi-file changes and requirement planning?

You manage documentation by generating and maintaining specification files automatically within the `doc/plans/<topic>.md` directory. This provides a structured approach to track requirement planning and handle complex, multi-file changes effectively throughout the development lifecycle.

What is specification-based development and when do I need it for my software project?

Specification-based development is a methodology ensuring implementation starts from precise, verifiable specifications. You need it for software projects requiring clear, actionable requirements to handle ambiguous tasks and enhance project stability.

What's the best way to write executable specifications as acceptance criteria before coding?

The best way to write executable specifications is by drafting them manually following structured guidelines before implementation. This practice establishes clear acceptance criteria, reducing uncertainty and improving code quality for complex development tasks.

Does specification-based development work for complex and ambiguous project requirements?

Yes, specification-based development handles complex, multi-file changes and ambiguous requirements using structured approaches. By enforcing verifiable specifications, it provides the necessary framework to break down and manage uncertainty in large software engineering projects.

Do I need to manually draft specifications to use this development methodology?

Yes, you must manually draft specifications to use this development methodology. Manual specification drafting is required to establish verifiable acceptance criteria, while the system provides support for documentation generation and task planning.