requirements-design

Convert vague requests into observable, testable acceptance criteria before implementation.

1|Updated Apr 21, 2026
One-click install
npx skills add https://github.com/devbasex/ai-plugins --skill requirements-design-devbasex
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: requirements-design
Source: https://github.com/devbasex/ai-plugins/tree/main/plugins/ndf/skills/requirements-design
Command: npx skills add https://github.com/devbasex/ai-plugins --skill requirements-design-devbasex

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Vague requests containing words like "fast", "user-friendly", or "works properly" cannot be verified, so implementations drift and reviews stall. This Skill turns ambiguous requests into observable, unambiguous, testable acceptance criteria before any code is written. ## Core Features & Use Cases - Ambiguity Detection: Scans the original request for evaluative or degree words and rewrites them as measurable quantities (e.g., response time targets, step counts, rejection rules). - Assumption Management: Classifies undecidable points into "stop and ask" versus "record as an explicit assumption", preventing silent interpretation drift. - Spec Authoring: Produces a specification with scope (included/excluded), acceptance criteria, non-functional requirements across six categories, verification commands, and boundaries, using the provided template. - Use Case: A stakeholder asks to "make search faster". The Skill records the original wording, converts it to "search API responds within 1 second on 10,000 records", defines out-of-scope items, and writes a spec file under issues/ that implementation-plan and tdd-cycle can build on. ## Quick Start Ask the AI to turn this vague feature request into verifiable acceptance criteria and a spec before implementing it.

Frequently Asked Questions about requirements-design

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

FAQPage Schema
How do I write acceptance criteria for a vague feature request?▼

Record the original request verbatim, then rewrite evaluative words like "fast" or "user-friendly" into observable quantities such as response time limits or step counts. Each criterion must be observable, unambiguous, and reproducible via a test or command.

What makes a good acceptance criterion in software development?▼

A good acceptance criterion is observable (judgable from output, state, or logs), unambiguous (all readers reach the same verdict), and testable (reproducible by a procedure or command). Write one condition per line at a granularity that maps directly to a test name.

When should I skip writing acceptance criteria?▼

Skip them when the change does not alter behavior, such as wording, formatting, or configuration value edits, or when the request already states verifiable conditions. Also skip when the task is investigation-only with no resulting change.

How do I handle requirements that change mid-implementation?▼

Rewrite the acceptance criterion and preserve the change as a visible record, for example striking through the old condition and noting the new value, date, and who requested it. Deleting conditions silently makes it impossible to distinguish missed requirements from changed ones.

What non-functional requirements should a specification include?▼

Cover only the categories the change actually touches among availability, performance and scalability, operability, migration, security, and system environment. Omit untouched categories entirely so reviewers can distinguish intentional omission from forgotten items.