diff --git a/README.md b/README.md index a3fa67cd..fd430ff9 100644 --- a/README.md +++ b/README.md @@ -465,7 +465,7 @@ Skills are reusable agent workflows that extend AIDD with specialized capabiliti - **[/aidd-ecs](ai/skills/aidd-ecs/README.md)** — Enforces @adobe/data/ecs best practices. Use when working with ECS components, resources, transactions, actions, systems, or services. - **[/aidd-error-causes](ai/skills/aidd-error-causes/README.md)** — Structured error handling with the error-causes library. Use when throwing errors, catching errors, defining error types, or implementing error routing. - **[/aidd-fix](ai/skills/aidd-fix/README.md)** — Fix a bug or implement review feedback following the AIDD fix process. Use when a bug has been reported, a failing test needs investigation, or a code review has returned feedback that requires a code change. -- **[/aidd-functional-requirements](ai/skills/aidd-functional-requirements/README.md)** — Write functional requirements for a user story. Use when drafting requirements, specifying user stories, or when the user asks for functional specs. +- **[/aidd-requirements](ai/skills/aidd-requirements/README.md)** — Write functional requirements for a user story. Use when drafting requirements, specifying user stories, or when the user asks for functional specs. - **[/aidd-javascript](ai/skills/aidd-javascript/README.md)** — JavaScript and TypeScript best practices and guidance. Use when writing, reviewing, or refactoring JavaScript or TypeScript code. - **[/aidd-javascript-io-effects](ai/skills/aidd-javascript-io-effects/README.md)** — Isolate network I/O and side effects using the saga pattern with call and put. Use when making network requests, invoking side effects, or implementing Redux sagas. - **[/aidd-jwt-security](ai/skills/aidd-jwt-security/README.md)** — JWT security review patterns. Use when reviewing or implementing authentication code, token handling, or session management. diff --git a/ai/commands/aidd-requirements.md b/ai/commands/aidd-requirements.md new file mode 100644 index 00000000..227dfc72 --- /dev/null +++ b/ai/commands/aidd-requirements.md @@ -0,0 +1,10 @@ +--- +description: Write functional requirements for a user story. Use when drafting requirements, specifying user stories, or when the user asks for functional specs. +--- +# 📋 /aidd-requirements + +Load and execute the skill at `ai/skills/aidd-requirements/SKILL.md`. + +Constraints { + Before beginning, read and respect the constraints in /aidd-please. +} diff --git a/ai/commands/index.md b/ai/commands/index.md index b3817f72..32efb4b7 100644 --- a/ai/commands/index.md +++ b/ai/commands/index.md @@ -16,6 +16,12 @@ Rank files by hotspot score to identify prime candidates for refactoring before *No description available* +### 📋 /aidd-requirements + +**File:** `aidd-requirements.md` + +Write functional requirements for a user story. Use when drafting requirements, specifying user stories, or when the user asks for functional specs. + ### 🧠 /aidd-rtc **File:** `aidd-rtc.md` diff --git a/ai/skills/aidd-functional-requirements/SKILL.md b/ai/skills/aidd-functional-requirements/SKILL.md deleted file mode 100644 index 685d908f..00000000 --- a/ai/skills/aidd-functional-requirements/SKILL.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -name: aidd-functional-requirements -description: Write functional requirements for a user story. Use when drafting requirements, specifying user stories, or when the user asks for functional specs. ---- - -# Functional requirements - -Act as a senior product manager to write functional requirements for a user story. - -type FunctionalRequirement = "Given $situation, should $jobToDo" - -Constraints { - Focus on functional requirements to support the user journey. - Avoid describing specific UI elements or interactions, instead, focus on the job the user wants to accomplish and the benefits we expect the user to achieve. -} \ No newline at end of file diff --git a/ai/skills/aidd-functional-requirements/README.md b/ai/skills/aidd-requirements/README.md similarity index 86% rename from ai/skills/aidd-functional-requirements/README.md rename to ai/skills/aidd-requirements/README.md index 70681818..2ff50f1d 100644 --- a/ai/skills/aidd-functional-requirements/README.md +++ b/ai/skills/aidd-requirements/README.md @@ -1,4 +1,4 @@ -# aidd-functional-requirements +# aidd-requirements Writes functional requirements for user stories using a standardized "Given X, should Y" format focused on user outcomes. @@ -11,7 +11,7 @@ requirements testable and unambiguous. ## Usage -Invoke `/aidd-functional-requirements` with the user story. Each requirement +Invoke `/aidd-requirements` with the user story. Each requirement follows this template: ``` diff --git a/ai/skills/aidd-requirements/SKILL.md b/ai/skills/aidd-requirements/SKILL.md new file mode 100644 index 00000000..c9a08d67 --- /dev/null +++ b/ai/skills/aidd-requirements/SKILL.md @@ -0,0 +1,23 @@ +--- +name: aidd-requirements +description: Write functional requirements for a user story. Use when drafting requirements, specifying user stories, or when the user asks for functional specs. +--- + +# Functional requirements + +Act as a senior product manager to write functional requirements for a user story. + +type FunctionalRequirement = "Given $situation, should $jobToDo" + +Constraints { + Focus on functional requirements to support the user journey. + Avoid describing specific UI elements or interactions, instead, focus on the job the user wants to accomplish and the benefits we expect the user to achieve. +} + +## Steps + +1. **Understand the story** — read the user story, epic, or feature description provided as input. +2. **Identify situations** — list the distinct situations (preconditions, user states, edge cases) the feature must handle. +3. **Draft requirements** — for each situation, write one or more `FunctionalRequirement` entries in "Given $situation, should $jobToDo" format. +4. **Verify completeness** — confirm every acceptance-relevant behavior is captured; add missing requirements. +5. **Return the list** — present the numbered requirements to the caller. diff --git a/ai/skills/aidd-task-creator/SKILL.md b/ai/skills/aidd-task-creator/SKILL.md index b0215575..51c488a1 100644 --- a/ai/skills/aidd-task-creator/SKILL.md +++ b/ai/skills/aidd-task-creator/SKILL.md @@ -30,7 +30,7 @@ State { ## Requirements Analysis -Use /aidd-functional-requirements to analyze and generate the requirements of the task. +Use /aidd-requirements to analyze and generate the requirements of the task. ## Agent Orchestration diff --git a/ai/skills/index.md b/ai/skills/index.md index eb0d70f4..f08894a4 100644 --- a/ai/skills/index.md +++ b/ai/skills/index.md @@ -6,7 +6,6 @@ - aidd-ecs - Enforces @adobe/data/ecs best practices. Use this whenever @adobe/data/ecs is imported, when creating or modifying Database.Plugin definitions, or when working with ECS components, resources, transactions, actions, systems, or services. - aidd-error-causes - Use the error-causes library for structured error handling in JavaScript/TypeScript. Use when throwing errors, catching errors, defining error types, or implementing error routing. - aidd-fix - Fix a bug or implement review feedback following the AIDD fix process. Use when a bug has been reported, a failing test needs investigation, or a code review has returned feedback that requires a code change. -- aidd-functional-requirements - Write functional requirements for a user story. Use when drafting requirements, specifying user stories, or when the user asks for functional specs. - aidd-javascript - JavaScript and TypeScript best practices and guidance. Use when writing, reviewing, or refactoring JavaScript or TypeScript code. - aidd-javascript-io-effects - Isolate network I/O and side effects using the saga pattern with call and put. Use when making network requests, invoking side effects, or implementing Redux sagas. - aidd-jwt-security - JWT security review patterns. Use when reviewing or implementing authentication code, token handling, session management, or when JWT is mentioned. @@ -18,6 +17,7 @@ - aidd-please - General AI assistant for software development projects. Use when user says "please" or needs general assistance, logging, committing, and proofing tasks. - aidd-product-manager - Plan features, user stories, user journeys, and conduct product discovery. Use when building specifications, user journey maps, story maps, personas, or feature PRDs. - aidd-react - Enforces React component authoring best practices. Use when creating React components, binding components, presentations, useObservableValues, or when the user asks about React UI patterns, reactive binding, or action callbacks. +- aidd-requirements - Write functional requirements for a user story. Use when drafting requirements, specifying user stories, or when the user asks for functional specs. - aidd-review - Conduct a thorough code review focusing on code quality, best practices, security, test coverage, and adherence to project standards and functional requirements. Use when reviewing code, pull requests, or completed epics. - aidd-rtc - Reflective Thought Composition. Structured thinking pipeline for complex decisions, design evaluation, and deep analysis. Use when quality of reasoning matters more than speed of response. - aidd-service - Enforces asynchronous data service authoring best practices. Use when creating front-end or back-end services, service interfaces, Observe patterns, AsyncDataService, or when the user asks about service layer, data flow, unidirectional UI, or action/observable design. diff --git a/docs/learn-aidd-framework.md b/docs/learn-aidd-framework.md index 4b8375f8..d5adda5a 100644 --- a/docs/learn-aidd-framework.md +++ b/docs/learn-aidd-framework.md @@ -6,7 +6,7 @@ There are a few different areas you need to learn to get good at aidd Framework: - [Product Management](../ai/skills/aidd-product-manager/SKILL.md) - [User Story Mapping](../ai/skills/aidd-product-manager/SKILL.md) -- [Functional Requirements](../ai/skills/aidd-functional-requirements/SKILL.md) +- [Functional Requirements](../ai/skills/aidd-requirements/SKILL.md) - [Test Driven Development](../ai/skills/aidd-tdd/SKILL.md) - [User Testing](user-testing.md) - Deployment & CI/CD