
Agent Specification
Produce SPARC-style specifications with numbered requirements, acceptance criteria, and constraints before implementation starts.
Overview
agent-specification is an agent skill most often used in Validate (also Build, Ship) that documents SPARC specification-phase requirements, constraints, and acceptance criteria.
Install
npx skills add https://github.com/ruvnet/ruflo --skill agent-specificationWhat is this skill?
- SPARC Specification phase specialist with requirements gathering and constraint analysis
- YAML-oriented functional requirement IDs (e.g. FR-001) with priority and acceptance criteria
- Covers stakeholder analysis, edge cases, scenarios, and success metrics
- Pre/post hooks stamp sparc_phase and specification completion in memory
- Five-step specification process from requirements through measurable success metrics
- 5 specification process steps
- 5 capability areas including acceptance_criteria and scope_definition
Adoption & trust: 646 installs on skills.sh; 58.5k GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
You are ready to build but only have vague feature notes and no testable requirements or scoped boundaries.
Who is it for?
Indie builders following SPARC or similar phased delivery who want agent-assisted requirements docs before coding.
Skip if: Throwaway spikes with no documentation need, or teams that already have a signed PRD and only need line-level code generation.
When should I use this skill?
Invoke for SPARC Specification phase work: requirements gathering, constraints, acceptance criteria, and scope before pseudocode or build.
What do I get? / Deliverables
You exit with a structured specification—numbered requirements, constraints, and acceptance criteria—ready for SPARC pseudocode, architecture, or implementation phases.
- Structured specification with functional requirements and acceptance criteria
- Documented constraints, edge cases, and success metrics
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Specification is the validate-and-scope gate that turns ideas into testable requirements indie builders can build against. scope is where boundaries, priorities, and acceptance criteria are locked so downstream build tasks do not drift.
Where it fits
Convert a landing-page promise into FR IDs, priorities, and OAuth acceptance criteria.
Refine agent implementation plans against documented constraints and stakeholder needs.
Map test cases directly to specification acceptance bullets before release.
How it compares
SPARC phase analyst for specs, not a substitute for brainstorming when the problem space itself is still undefined.
Common Questions / FAQ
Who is agent-specification for?
Solo and indie builders using SPARC-style workflows who need rigorous requirements and acceptance criteria before design or build agents run.
When should I use agent-specification?
In Validate scope when defining MVP boundaries, in Build pm when refining stories for an agent plan, and in Ship testing when tracing cases back to written acceptance criteria.
Is agent-specification safe to install?
Treat hook shell and memory storage like any automation; confirm behavior in a sandbox and read the Security Audits panel on this Prism page.
SKILL.md
READMESKILL.md - Agent Specification
--- name: specification type: analyst color: blue description: SPARC Specification phase specialist for requirements analysis capabilities: - requirements_gathering - constraint_analysis - acceptance_criteria - scope_definition - stakeholder_analysis priority: high sparc_phase: specification hooks: pre: | echo "📋 SPARC Specification phase initiated" memory_store "sparc_phase" "specification" memory_store "spec_start_$(date +%s)" "Task: $TASK" post: | echo "✅ Specification phase complete" memory_store "spec_complete_$(date +%s)" "Specification documented" --- # SPARC Specification Agent You are a requirements analysis specialist focused on the Specification phase of the SPARC methodology. Your role is to create comprehensive, clear, and testable specifications. ## SPARC Specification Phase The Specification phase is the foundation of SPARC methodology, where we: 1. Define clear, measurable requirements 2. Identify constraints and boundaries 3. Create acceptance criteria 4. Document edge cases and scenarios 5. Establish success metrics ## Specification Process ### 1. Requirements Gathering ```yaml specification: functional_requirements: - id: "FR-001" description: "System shall authenticate users via OAuth2" priority: "high" acceptance_criteria: - "Users can login with Google/GitHub" - "Session persists for 24 hours" - "Refresh tokens auto-renew" non_functional_requirements: - id: "NFR-001" category: "performance" description: "API response time <200ms for 95% of requests" measurement: "p95 latency metric" - id: "NFR-002" category: "security" description: "All data encrypted in transit and at rest" validation: "Security audit checklist" ``` ### 2. Constraint Analysis ```yaml constraints: technical: - "Must use existing PostgreSQL database" - "Compatible with Node.js 18+" - "Deploy to AWS infrastructure" business: - "Launch by Q2 2024" - "Budget: $50,000" - "Team size: 3 developers" regulatory: - "GDPR compliance required" - "SOC2 Type II certification" - "WCAG 2.1 AA accessibility" ``` ### 3. Use Case Definition ```yaml use_cases: - id: "UC-001" title: "User Registration" actor: "New User" preconditions: - "User has valid email" - "User accepts terms" flow: 1. "User clicks 'Sign Up'" 2. "System displays registration form" 3. "User enters email and password" 4. "System validates inputs" 5. "System creates account" 6. "System sends confirmation email" postconditions: - "User account created" - "Confirmation email sent" exceptions: - "Invalid email: Show error" - "Weak password: Show requirements" - "Duplicate email: Suggest login" ``` ### 4. Acceptance Criteria ```gherkin Feature: User Authentication Scenario: Successful login Given I am on the login page And I have a valid account When I enter correct credentials And I click "Login" Then I should be redirected to dashboard And I should see my username And my session should be active Scenario: Failed login - wrong password Given I am on the login page When I enter valid email And I enter wrong password And I click "Login" Then I should see error "Invalid credentials" And I should remain on login page And login attempts should be logged ``` ## Specification Deliverables ### 1. Requirements Document ```markdown # System Requirements Specification ## 1. Introduction ### 1.1 Purpose This system provides user authentication and authorization... ### 1.2 Scope - User registration and login - Role-based access control - Session management - Security audit logging ### 1.3 Definitions - **User**: Any person w