Agent skill · Audited from source

requirements-engineering

skill · jasonkneen/kiroMIT licenceAudited 20 Oct 2026 · source 51e630616a9b

★ 755pushed 280 days agoversion 1.0.0
✓SAFEGrade B · 89/100 · 20 Oct 2026 · 51e6306
755repo stars · whole jasonkneen/kiro

Is it safe? Yes — SAFE, grade B (89/100). We read this skill's source at commit 51e630616a9b and found no filesystem, network or shell access and no hard-coded secrets. What it does: Transform vague feature ideas into clear, testable requirements using EARS format. Capture user stories, define acceptance criteria, identify edge cases, and validate completeness before moving to design.

Ask an AI about this pageGChatGPTCClaudePPerplexityGeGeminiXGrok
More
Cite

Cite this page

ModelsAtlas. “requirements-engineering (jasonkneen/kiro)”. Retrieved 20 Oct 2026. https://modelsatlas.com/skills/jasonkneen/requirements-engineering

Trust audit

Audit 0.4.1 · source read 20 Oct 2026

Trust score89/100✓SAFE B
0 critical0 high0 medium0 low0 info

SAFE means nothing in the source contradicts what the skill says it does. Grade B is shared by 13,985 of 14,816 audited skills.

What the source does

  • FilesystemNone observedNo reads or writes in the source
  • NetworkNone observedNo outbound calls in the source
  • ShellNone observedNo commands run in the source
  • DependenciesPinnedNothing floats
  • SecretsNone foundNo keys in source

Five audit layers

LayerWhat we checkResultFindings
L0 ProvenanceRepo owner, licence, archive status, activityPASS0
L1 Static sourceSecrets, path traversal, supply chain, hidden codeNA0
L2 InstructionsPrompt injection, authority framing, hidden directivesPASS0
L3 InventoryThe files and declarations match the sourcePASS0
L4 SandboxRun in isolation and watch behaviourSKIPPED why0

Gates applied: no behavioural pass.

Findings (0)

No findings at any severity. We re-audit when the source changes.

Audit 0.4.1 · source sha 51e630616a9b · 20 Oct 2026Report an issue or request a re-scan

Provenance

Who published it, and what the verdict is pinned to

  • Publisherjasonkneen GitHub userOwner of the repository this skill is read from
  • Source folderjasonkneen/kiro/skills/requirements-engineeringThe exact folder we audited
  • LicenceMITAs the repository states it
  • Commit pinned for this verdict51e630616a9bA new audit runs when the source changes
  • Repository statusNot archivedLast push 280 days ago
  • Sandboxed runNot runSkills are read, not executed; layer L4 is skipped

What it tells the agent

Full source on GitHub ↗

Its description: Transform vague feature ideas into clear, testable requirements using EARS format. Capture user stories, define acceptance criteria, identify edge cases, and validate completeness before moving to design.

---
name: requirements-engineering
description: Transform vague feature ideas into clear, testable requirements using EARS format. Capture user stories, define acceptance criteria, identify edge cases, and validate completeness before moving to design.
license: MIT
compatibility: Claude Code, Cursor, VS Code, Windsurf
metadata:
  category: methodology
  complexity: beginner
  author: Kiro Team
  version: "1.0.0"
---

# Requirements Engineering

Master the art of capturing what needs to be built before diving into how to build it. This skill teaches the EARS (Easy Approach to Requirements Syntax) format for creating clear, testable requirements.

## When to Use This Skill

Use requirements engineering when:
- Starting any new feature or project
- Clarifying ambiguous stakeholder requests
- Creating acceptance criteria for user stories
- Documenting system behavior for testing
- Ensuring all team members share understanding

## The EARS Format

EARS provides consistent patterns for writing requirements that are specific, testable, and unambiguous.

### Basic Patterns

**Event-Response (Most Common):**
```
WHEN [triggering event] THEN [system] SHALL [required response]
```

**Conditional Behavior:**
```
IF [precondition is met] THEN [system] SHALL [required response]
```

**Complex Conditions:**
```
WHEN [event] AND [additional condition] THEN [system] SHALL [response]
```

**Optional Conditions:**
```
WHEN [event] OR [alternative event] THEN [system] SHALL [response]
```

### Advanced Patterns

**State-Based:**
```
WHEN [system is in specific state] THEN [system] SHALL [behavior]
```

**Performance:**
```
WHEN [user action] THEN [system] SHALL [respond within X seconds/milliseconds]
```

**Security:**
```
IF [authentication condition] THEN [system] SHALL [security response]
```

## Step-by-Step Process

### Step 1: Capture User Stories

Format: **As a [role], I want [feature], so that [benefit]**

Focus on:
- Who is the user? (role)
- What do they want to accomplish? (feature)
- Why does it matter? (benefit/value)

**Example:**
```markdown
As a returning customer, I want to save my payment methods, so that I can checkout faster in the future.
```

### Step 2: Generate Acceptance Criteria

For each user story, define specific acceptance criteria using EARS:

**Example for payment methods:**
```markdown
**User Story:** As a returning customer, I want to save my payment methods, so that I can checkout faster.

**Acceptance Criteria:**
1. WHEN user adds a valid credit card THEN system SHALL securely store card details
2. WHEN user adds a card with invalid number THEN system SHALL display validation error
3. WHEN user has saved cards THEN system SHALL display list during checkout
4. WHEN user selects saved card THEN system SHALL pre-fill payment form
5. WHEN user deletes saved card THEN system SHALL remove card from list
6. IF user is not authenticated THEN system SHALL redirect to login before saving card
7. WHEN user adds card THEN system SHALL mask all but last 4 digits in display
```

### Step 3: Identify Edge Cases

For each requirement, ask:
- What if the input is empty/null?
- What if the input is at boundary values?
- What if the operation fails?
- What if the user is not authorized?
- What if there are concurrent operations?

**Edge case patterns:**
```markdown
**Error Handling:**
- WHEN [operation fails] THEN system SHALL [display error / retry / log]

**Boundary Conditions:**
- WHEN [value equals minimum/maximum] THEN system SHALL [specific behavior]

**Concurrent Access:**
- WHEN [multiple users access same resource] THEN system SHALL [conflict resolution]

**Empty States:**
- WHEN [collection is empty] THEN system SHALL [display empty state message]
```

### Step 4: Validate Requirements

Use this checklist:

**Completeness:**
- [ ] All user roles identified and addressed
- [ ] Normal flow scenarios covered
- [ ] Edge cases documented
- [ ] Error cases handled
- [ ] Business rules captured

**Clarity:**
- [ ] Each requirement uses precise language
- [ ] No ambiguous terms (fast, easy, user-friendly)
- [ ] Technical jargon avoided or defined
- [ ] Expected behaviors are specific

**Consistency:**
- [ ] EARS format used throughout
- [ ] Terminology consistent across requirements
- [ ] No contradictory requirements
- [ ] Similar scenarios handled similarly

**Testability:**
- [ ] Each requirement can be verified
- [ ] Success criteria are observable
- [ ] Inputs and expected outputs specified
- [ ] Performance requirements are measurable

## Common Mistakes to Avoid

### Mistake 1: Vague Requirements
**Bad:** "System should be fast"
**Good:** "WHEN user submits search THEN system SHALL return results within 2 seconds"

### Mistake 2: Implementation Details
**Bad:** "System shall use Redis for caching"
**Good:** "WHEN user requests frequently accessed data THEN system SHALL return cached results"

### Mistake 3: Missing Error Cases
**Bad:** Only documenting happy path
**Good:** Include WHEN/IF statements for all error conditions

### Mistake 4: Untestable Requirements
**Bad:** "System should be user-friendly"
**Good:** "WHEN new user completes onboarding THEN system SHALL require no more than 3 clicks to reach main dashboard"

### Mistake 5: Conflicting Requirements
**Bad:** Requirements that contradict each other
**Good:** Review all requirements together, resolve conflicts explicitly

## Examples

### Example 1: File Upload Feature

```markdown
**User Story:** As a user, I want to upload files, so that I can share documents with my team.

**Acceptance Criteria:**
1. WHEN user selects file under 10MB THEN system SHALL accept file for upload
2. WHEN user selects file over 10MB THEN system SHALL display "file too large (max 10MB)" error
3. WHEN user selects unsupported file type THEN system SHALL display "unsupported format" error with list of allowed types
4. WHEN upload is in progress THEN system SHALL display progress indicator with percentage
5. WHEN upload completes successfully TH

Excerpt, first 6,000 characters of SKILL.md, verbatim from the audited commit. It is text from someone else’s repository, quoted so you can judge it before your agent reads it.

Install

Pinned to the audited commit 51e6306

Download folder ↗
git clone https://github.com/jasonkneen/kiro
git -C kiro checkout 51e630616a9b

The author documents no install command, so this uses the repository directly. Our verdict covers commit 51e630616a9b only.

Works in which agents?

What its own text says, not a test

AgentStatusMore
Claude CodeMentioned in its text, not testedSkills for Claude Code · About Claude Code
CursorMentioned in its text, not testedSkills for Cursor · About Cursor
WindsurfMentioned in its text, not testedSkills for Windsurf · About Windsurf
“Mentioned” means the skill’s text names the agent. We have not run it there.

Audit history

Every audit, every source change

  1. ✓SAFE B 89 / 100

    first audit · source 51e630616a9b

README badge

For maintainers · shows the latest audit

ModelsAtlas: SAFE BMODELSATLASSAFE · B
[![ModelsAtlas: SAFE B](https://modelsatlas.com/skills/jasonkneen/requirements-engineering/badge.svg)](https://modelsatlas.com/skills/jasonkneen/requirements-engineering/)

The badge shows our verdict and grade for this skill, and links back to this page. It changes when the audit does.

Similar skills

Add this badge to your README

[![ModelsAtlas: SAFE B](https://modelsatlas.com/skills/jasonkneen/requirements-engineering/badge.svg)](https://modelsatlas.com/skills/jasonkneen/requirements-engineering/)

Questions about requirements-engineering

What does the requirements-engineering skill do?
Complete System Prompts for Kiro IDE by Amazon
Is requirements-engineering safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can requirements-engineering access on my machine?
The audit observed no filesystem, network or shell use at all in its source.
Which assistants does requirements-engineering work with?
Its documentation mentions claude-code, cursor and windsurf. That is what the text claims, not a compatibility test we ran.
How current is this page?
The grade is for one exact copy of the source (51e630616a9b), read on 2026-10-20. The repository is watched, and a new audit runs when it changes — this is the first audit.

Sources

Spotted something wrong? Report a correction · Methodology

Keep going in your AI

Opens with this page as the source. We add nothing else to the prompt.