ears-requirements

Write and rewrite textual system requirements using EARS (Easy Approach to Requirements Syntax). Use when converting ambiguous natural-language requirements into structured statements, classifying requirements into EARS patterns, or reviewing requirement quality for missing triggers, states, and measurable responses.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "ears-requirements" with this command: npx skills add hexbee/hello-skills/hexbee-hello-skills-ears-requirements

Ears Requirements

Overview

Transform requirement drafts into concise EARS-compliant statements, preserving intent while reducing ambiguity.

Workflow

  1. Extract requirement intent from user input.
  2. Identify the correct EARS pattern:
    • Ubiquitous
    • State-driven
    • Event-driven
    • Optional-feature
    • Unwanted-behavior
    • Complex combinations
  3. Rewrite each requirement using strict clause order and one clear system response.
  4. Run a quality pass for measurability, testability, and missing conditions.
  5. Return:
    • Rewritten requirement(s)
    • Pattern label for each
    • Brief rationale if pattern choice could be disputed

Authoring Rules

  • Keep one requirement per statement.
  • Use exactly one explicit system subject (for example: "the ATM").
  • Use shall for mandatory behavior.
  • Prefer observable outcomes over implementation details.
  • Keep conditions explicit; avoid implied triggers or hidden states.
  • Avoid weak phrases such as "as appropriate", "if possible", "etc.".
  • If numeric limits or timing are unknown, add a clear placeholder token (for example: <MAX_LATENCY_MS>).

EARS Clause Order

Apply only the clauses needed by the chosen pattern, always in this order:

While <state/precondition>, when <trigger>, the <system> shall <response>

Use unwanted behavior pattern as:

If <undesired trigger>, then the <system> shall <response>

For pattern definitions and examples, read references/ears-patterns.md.

Scripts

Use scripts/validate_ears.py to classify pattern and catch syntax/quality issues quickly.

Single requirement:

python3 scripts/validate_ears.py --requirement "When mute is selected, the laptop shall suppress all audio output."

Batch file (one requirement per line):

python3 scripts/validate_ears.py --file requirements.txt

Machine-readable output:

python3 scripts/validate_ears.py --file requirements.txt --json

Quality Gate

Before finalizing, verify each requirement:

  • Is testable with a pass/fail criterion.
  • Has unambiguous actor, condition, and response.
  • Uses consistent terminology with no synonym drift.
  • Avoids combining multiple independent behaviors unless explicitly complex.
  • Matches the selected EARS pattern.

If any check fails, provide a corrected version and explain the minimal change made.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

deep-productivity

No summary provided by upstream source.

Repository SourceNeeds Review
254-hexbee
General

cross-domain-thinking-toolbox

No summary provided by upstream source.

Repository SourceNeeds Review
General

mungers-lattice

No summary provided by upstream source.

Repository SourceNeeds Review
General

learning-first-principles

No summary provided by upstream source.

Repository SourceNeeds Review
ears-requirements | V50.AI