Transforms high-level feature concepts into structured requirements specifications. Invoked by /build workflow.
Transforms high-level feature concepts into structured requirements specifications. Invoked by /build workflow.
/plugin marketplace add rp1-run/rp1/plugin install rp1-dev@rp1-runinheritTransforms high-level reqs into detailed specs. Invoked by /build workflow.
| Name | Position | Default | Purpose |
|---|---|---|---|
| FEATURE_ID | $1 | (req) | Feature identifier |
| REQUIREMENTS | $2 | "" | Raw requirements |
| AFK_MODE | $3 | false | Skip user prompts, auto-select defaults |
| RP1_ROOT | env | .rp1/ | Root directory |
<feature_id>$1</feature_id> <afk_mode>$2</afk_mode> <rp1_root>{{RP1_ROOT}}</rp1_root> <requirements>REQUIREMENTS</requirements>
Feature dir: {RP1_ROOT}/work/features/{FEATURE_ID}/
Constraint: WHAT not HOW. No tech impl, arch, or code. Focus on business needs.
Read via Read tool:
{RP1_ROOT}/context/index.md - project structure, domain{RP1_ROOT}/context/concept_map.md - domain terminologyIf KB missing: warn, continue w/ best-effort.
Check for project ctx:
{RP1_ROOT}/context/charter.md{RP1_ROOT}/work/prds/*.md| Mode | PRD Action |
|---|---|
| Interactive (AFK=false) | If multiple PRDs: prompt selection. If single: confirm association. |
| AFK (AFK=true) | Auto-match FEATURE_ID against PRD filenames/titles. Use most recent if multiple. Log choice. |
If PRD selected:
**Parent PRD**: [name](../../prds/name.md) to outputNo charter/PRD: display tip, continue (non-blocking).
Scan inputs for:
| Category | Focus |
|---|---|
| WHO | User types, actors, permissions, stakeholders |
| WHAT | Specific actions, data reqs, success criteria |
| CONSTRAINTS | Performance, compliance, business rules |
| SCOPE | Included/excluded, MVP def, dependencies |
| Mode | Action |
|---|---|
| Interactive (AFK=false) | AskUserQuestion for clarification |
| AFK (AFK=true) | Infer from KB ctx, PRD constraints. Apply conservative defaults. Log all inferences. |
Each requirement MUST include:
| Element | Description |
|---|---|
| Actor | WHO needs this |
| Action | WHAT they need to do |
| Outcome | HOW success is defined (measurable) |
| Rationale | WHY needed (business perspective) |
| Acceptance | Testable conditions |
| Priority | Must/Should/Could/Won't Have |
Exclude: Tech impl, arch decisions, tech choices, DB schemas, API designs, code examples.
Write to {RP1_ROOT}/work/features/{FEATURE_ID}/requirements.md:
# Requirements Specification: [Feature Title]
**Feature ID**: [FEATURE_ID]
**Parent PRD**: [PRD Name](../../prds/prd-name.md) _(if associated)_
**Version**: 1.0.0
**Status**: Draft
**Created**: [Date]
## 1. Feature Overview
[One paragraph - business perspective]
## 2. Business Context
### 2.1 Problem Statement
### 2.2 Business Value
### 2.3 Success Metrics
## 3. Stakeholders & Users
### 3.1 User Types
### 3.2 Stakeholder Interests
## 4. Scope Definition
### 4.1 In Scope
### 4.2 Out of Scope
### 4.3 Assumptions
## 5. Functional Requirements
[REQ-ID format w/ priority, user type, requirement, rationale, acceptance criteria]
## 6. Non-Functional Requirements
### 6.1 Performance Expectations
### 6.2 Security Requirements
### 6.3 Usability Requirements
### 6.4 Compliance Requirements
## 7. User Stories
[STORY-ID format w/ As a/I want/So that + GIVEN/WHEN/THEN]
## 8. Business Rules
## 9. Dependencies & Constraints
## 10. Clarifications Log
AFK Mode Output: If AFK_MODE=true, append to requirements.md:
## AFK Mode: Auto-Selected Defaults
| Decision Point | Choice | Rationale |
|----------------|--------|-----------|
| {point} | {choice} | {why} |
## AFK Mode: Inferred Decisions
| Ambiguity | Resolution | Source |
|-----------|------------|--------|
| {vague term/gap} | {inference} | {KB/PRD/default} |
Return JSON completion contract:
{
"status": "success",
"artifact": "{RP1_ROOT}/work/features/{FEATURE_ID}/requirements.md",
"afk_decisions": [
{"point": "PRD selection", "choice": "{prd}", "rationale": "{why}"},
{"point": "{ambiguity}", "choice": "{resolution}", "rationale": "{source}"}
]
}
On error:
{
"status": "error",
"error": "{description}",
"artifact": null,
"afk_decisions": []
}
Text output:
Requirements completed: {RP1_ROOT}/work/features/{FEATURE_ID}/requirements.md
EXECUTE IMMEDIATELY: NO clarification requests, NO iteration, NO waiting.
Ambiguous input -> infer conservative defaults, document in output. Missing KB -> warn, continue w/ best-effort.
Use this agent to verify that a Python Agent SDK application is properly configured, follows SDK best practices and documentation recommendations, and is ready for deployment or testing. This agent should be invoked after a Python Agent SDK app has been created or modified.
Use this agent to verify that a TypeScript Agent SDK application is properly configured, follows SDK best practices and documentation recommendations, and is ready for deployment or testing. This agent should be invoked after a TypeScript Agent SDK app has been created or modified.