spec-first

Create requirements documents, architecture diagrams, Gherkin feature files, and implementation plans.

Updated Apr 3, 2026
One-click install
npx skills add https://github.com/kirvin/agent-dev-harness --skill spec-first-kirvin
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: spec-first
Source: https://github.com/kirvin/agent-dev-harness/tree/main/plugins/kf/skills/spec-first
Command: npx skills add https://github.com/kirvin/agent-dev-harness --skill spec-first-kirvin

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve?

This Skill addresses the challenge of managing complex software development by implementing a structured spec-first methodology, ensuring requirements and architecture are well-defined before coding begins.

Core Features & Use Cases

  • Structured Requirements: Guides users through creating detailed requirements documents with MoSCoW prioritization.
  • System Invariants: Encourages the use of EARS format to document non-negotiable system constraints.
  • Architecture Documentation: Facilitates the creation of comprehensive system architecture documentation.
  • Gherkin Feature Files: Generates executable acceptance criteria for user-facing behaviors.
  • Implementation Plans: Breaks down the spec into executable, phased implementation work.
  • Use Case: For a new project, use this Skill to outline the system requirements, document architectural decisions, and create a phased implementation plan.

Quick Start

Run the 'spec-first' skill to initiate the spec-first development process for your project.

Frequently Asked Questions about spec-first

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

FAQPage Schema
What is spec-first development methodology for software projects?

Spec-first development is a methodology that defines structured requirements and architecture before coding begins. It uses markdown for documentation to capture system invariants, architecture diagrams, and phased implementation plans to manage complex software development.

How do I write requirements and architecture documentation before coding?

Write requirements and architecture documentation by creating detailed requirement documents with MoSCoW prioritization, documenting non-negotiable system constraints using EARS format, and generating comprehensive architecture diagrams before starting implementation.

How do I generate executable acceptance criteria using Gherkin feature files?

Generate executable acceptance criteria using Gherkin feature files to capture user-facing behaviors. This process translates structured requirements into executable specifications that validate system behavior against the documented architecture and constraints.

Can I integrate spec-first methodology with version control for requirements management?

Yes, spec-first methodology ensures version control integration by utilizing markdown for all documentation. This approach allows requirements documents, architecture diagrams, and implementation plans to be tracked alongside code changes.

What is the best way to break down a software specification into an implementation plan?

The best way to break down a software specification is to generate a phased implementation plan from the defined requirements and architecture. This translates the spec into executable, phased implementation work that guides the actual coding process.

When do I need EARS format and MoSCoW prioritization for requirements management?

Use EARS format and MoSCoW prioritization when capturing structured requirements for complex software projects. EARS documents non-negotiable system invariants, while MoSCoW prioritization categorizes requirements to ensure architecture is well-defined before coding.