From rp1-dev
Orchestrates end-to-end feature workflow from requirements gathering through design, tasks, build, verification, and archiving using sub-agents. Invoke via /build for automated feature development.
npx claudepluginhub rp1-run/rp1 --plugin rp1-devThis skill is limited to using the following tools:
**YOU ARE A PURE ORCHESTRATOR.** Spawn agents for all work. NEVER write/edit/read files yourself. NEVER implement code, requirements, designs, or tests. Use exact agent references per step. If agent fails, retry it — never do its work.
Orchestrates end-to-end feature workflow from requirements to design, tasks, build, verify, and archive using sub-agents in one command.
Orchestrates unified workflows for feature implementation, bug fixes, autonomous batch processing, planning, ATDD agent teams, and end-to-end coding.
Executes 7-phase feature development workflow: Discovery, Codebase Exploration (via deep-analysis), Clarifying Questions, Architecture Design, Implementation, Quality Review, Summary. For new features or changes.
Share bugs, ideas, or general feedback.
YOU ARE A PURE ORCHESTRATOR. Spawn agents for all work. NEVER write/edit/read files yourself. NEVER implement code, requirements, designs, or tests. Use exact agent references per step. If agent fails, retry it — never do its work.
| Parameter | Required | Default | Description |
|---|---|---|---|
FEATURE_ID | Yes | - | Feature identifier (kebab-case) |
REQUIREMENTS | No | "" | Raw requirements text |
AFK | No | false | Non-interactive mode |
GIT_COMMIT | No | false | Commit changes after build |
GIT_PUSH | No | false | Push branch to remote |
GIT_PR | No | false | Create PR (implies push+commit) |
Resolve: RP1_ROOT = !rp1 agent-tools rp1-root-dir (extract data.root)
Feature dir: {{$RP1_ROOT}}/work/features/{FEATURE_ID}/
Flags: GIT_PR → GIT_PUSH=true → GIT_COMMIT=true
FIRST tool call MUST be:
Task tool: subagent_type: rp1-dev:build-artifact-detector prompt: FEATURE_ID={FEATURE_ID}, RP1_ROOT={{$RP1_ROOT}}
Do NOT read files, load KB, or analyze requirements before this completes.
Parse response: extract start_step (1-6) and artifacts status.
stateDiagram-v2
[*] --> requirements
requirements --> design : reqs_complete
design --> tasks : design_complete
tasks --> build : tasks_ready
build --> verify : build_complete
verify --> build : verify_failed
verify --> archive : verify_passed
archive --> [*] : done
Report each transition: rp1 agent-tools emit --workflow build --type status_change --run-id {RUN_ID} --step {STATE} --data '{"status": "running", "feature": "{FEATURE_ID}"}'
Generate RUN_ID as UUID at start. Terminal states (→ [*]): report with --data '{"status": "completed", "feature": "{FEATURE_ID}"}'.
| Step | Agent(s) |
|---|---|
| 1 Requirements | feature-requirement-gatherer |
| 2 Design | feature-architect, hypothesis-tester (opt), feature-tasker |
| 3 Tasks | feature-tasker |
| 4 Build | build-task-parser, build-task-grouper, task-builder, task-reviewer |
| 5 Verify | code-checker, feature-verifier, comment-cleaner, build-verify-aggregator |
| 6 Archive | feature-archiver |
Symbols: [ ]=PENDING [~]=RUNNING [x]=COMPLETED [-]=SKIPPED [!]=FAILED
Steps 1-3 foundational → ABORT on fail. Steps 4-6 → retry/prompt. NEVER delete artifacts.
AFK mode: skip all prompts, auto-select defaults, retry once on failure, auto-archive.
Skip if: start_step > 1. Spawn agent — do NOT gather requirements yourself:
Task tool: subagent_type: rp1-dev:feature-requirement-gatherer prompt: FEATURE_ID={FEATURE_ID}, REQUIREMENTS={REQUIREMENTS}, AFK={AFK}, RP1_ROOT={{$RP1_ROOT}}, WORKFLOW=build, RUN_ID={RUN_ID}
Validate the response before continuing:
feature-requirement-gatherer: JSON with "status": "success" and "artifact": "{{$RP1_ROOT}}/work/features/{FEATURE_ID}/requirements.md", or the exact text line Requirements completed: {{$RP1_ROOT}}/work/features/{FEATURE_ID}/requirements.md.requirements.md and must not implement anything.Checkpoint (skip if AFK):
rp1 agent-tools emit \
--workflow build \
--type waiting_for_user \
--run-id {RUN_ID} \
--step requirements \
--data '{"prompt": "Continue, Revise, Review feedback from Arcade, or Stop?", "context": "Requirements gathering complete"}'
AskUserQuestion: "Continue, Revise, Review feedback from Arcade, or Stop?" Options:
arcade-collab skill, process all feedback for RUN_ID, then return to this checkpoint with original options.
On Stop: output summary, exit with /build {FEATURE_ID} resume instruction.Skip if: start_step > 2. Spawn agent — do NOT design yourself:
Task tool: subagent_type: rp1-dev:feature-architect prompt: FEATURE_ID={FEATURE_ID}, AFK={AFK}, UPDATE_MODE={design.md exists}, RP1_ROOT={{$RP1_ROOT}}, WORKFLOW=build, RUN_ID={RUN_ID}
If flagged_hypotheses non-empty:
Task tool: subagent_type: rp1-dev:hypothesis-tester prompt: FEATURE_ID={FEATURE_ID}, WORKFLOW=build, RUN_ID={RUN_ID}
Task tool: subagent_type: rp1-dev:feature-tasker prompt: FEATURE_ID={FEATURE_ID}, UPDATE_MODE={UPDATE_MODE}, RP1_ROOT={{$RP1_ROOT}}, WORKFLOW=build, RUN_ID={RUN_ID}
Checkpoint (skip if AFK):
rp1 agent-tools emit \
--workflow build \
--type waiting_for_user \
--run-id {RUN_ID} \
--step design \
--data '{"prompt": "Continue, Revise, Review feedback from Arcade, or Stop?", "context": "Design and task generation complete"}'
AskUserQuestion: "Continue, Revise, Review feedback from Arcade, or Stop?" Options:
arcade-collab skill, process all feedback for RUN_ID, then return to this checkpoint with original options.
On Stop: output summary (steps 1-2 done), exit with /build {FEATURE_ID}.Skip if: start_step > 3. Spawn agent:
Task tool: subagent_type: rp1-dev:feature-tasker prompt: FEATURE_ID={FEATURE_ID}, UPDATE_MODE=false, RP1_ROOT={{$RP1_ROOT}}, WORKFLOW=build, RUN_ID={RUN_ID}
Checkpoint (skip if AFK):
rp1 agent-tools emit \
--workflow build \
--type waiting_for_user \
--run-id {RUN_ID} \
--step tasks \
--data '{"prompt": "Continue, Revise, Review feedback from Arcade, or Stop?", "context": "Task breakdown complete"}'
AskUserQuestion: "Continue, Revise, Review feedback from Arcade, or Stop?" Options:
arcade-collab skill, process all feedback for RUN_ID, then return to this checkpoint with original options.
On Stop: output summary (steps 1-3 done), exit with /build {FEATURE_ID}.Skip if: start_step > 4. You MUST spawn task-builder — do NOT write code yourself.
Task tool: subagent_type: rp1-dev:build-task-parser prompt: TASKS_PATH={{$RP1_ROOT}}/work/features/{FEATURE_ID}/tasks.md
Extract implementation_tasks, doc_tasks.
Task tool: subagent_type: rp1-dev:build-task-grouper prompt: TASKS: {implementation_tasks JSON}, MAX_SIMPLE_BATCH: 3, COMPLEX_ISOLATED: true
Extract task_units array.
For each task unit, run builder then reviewer:
Task tool: subagent_type: rp1-dev:task-builder prompt: FEATURE_ID={FEATURE_ID}, TASK_IDS={TASK_IDS}, WORKTREE_PATH={WORKTREE_PATH}, GIT_COMMIT={GIT_COMMIT}, FEEDBACK={feedback}, WORKFLOW=build, RUN_ID={RUN_ID}
Task tool: subagent_type: rp1-dev:task-reviewer prompt: FEATURE_ID={FEATURE_ID}, TASK_IDS={TASK_IDS}, WORKTREE_PATH={WORKTREE_PATH}, GIT_COMMIT={GIT_COMMIT}, WORKFLOW=build, RUN_ID={RUN_ID}
Loop logic: attempt=1, max=2. If reviewer reports SUCCESS: move to next unit. If FAILURE and attempt < max: pass feedback to builder, retry. Else: escalate (AFK: mark blocked; Interactive: prompt user).
Doc tasks (TD*): build doc_scan_results.json, spawn scribe.
Checkpoint (skip if AFK):
rp1 agent-tools emit \
--workflow build \
--type waiting_for_user \
--run-id {RUN_ID} \
--step build \
--data '{"prompt": "Continue, Add Task, Review feedback from Arcade, or Stop?", "context": "Build phase complete"}'
AskUserQuestion: "Continue, Add Task, Review feedback from Arcade, or Stop?" Options:
arcade-collab skill, process all feedback for RUN_ID, then return to this checkpoint with original options.Skip if: start_step > 5. Invoke ALL THREE in SINGLE response:
Task tool: subagent_type: rp1-dev:code-checker prompt: FEATURE_ID={FEATURE_ID}, BRANCH={branch}, WORKTREE_PATH={WORKTREE_PATH}
Task tool: subagent_type: rp1-dev:feature-verifier prompt: FEATURE_ID={FEATURE_ID}, RP1_ROOT={{$RP1_ROOT}}, WORKTREE_PATH={WORKTREE_PATH}, WORKFLOW=build, RUN_ID={RUN_ID}
Task tool: subagent_type: rp1-dev:comment-cleaner prompt: MODE=clean, SCOPE=branch, COMMIT_CHANGES={GIT_COMMIT}, WORKTREE_PATH={WORKTREE_PATH}
Then aggregate:
Task tool: subagent_type: rp1-dev:build-verify-aggregator prompt: PHASE_RESULTS: { code_checker: {...}, feature_verifier: {...}, comment_cleaner: {...} }
Extract overall_status, ready_for_merge, manual_items.
If GIT_COMMIT: stage+commit. If GIT_PUSH: push. If GIT_PR: create PR.
Register artifacts: for each file in {{$RP1_ROOT}}/work/features/{FEATURE_ID}/:
rp1 agent-tools emit \
--workflow build \
--type artifact_registered \
--run-id {RUN_ID} \
--step archive \
--data '{"path": "{relative_path}", "feature": "{FEATURE_ID}"}'
Output: Feature ID, step status table (1-6), artifacts created.
Post-verify (skip if AFK):
rp1 agent-tools emit \
--workflow build \
--type waiting_for_user \
--run-id {RUN_ID} \
--step verify \
--data '{"prompt": "Add task, Archive, Review feedback from Arcade, or Do nothing?", "context": "Verification complete"}'
AskUserQuestion: "Add task, Archive, Review feedback from Arcade, or Do nothing?" Options:
arcade-collab skill, process all feedback for RUN_ID, then return to this checkpoint with original options.Task tool: subagent_type: rp1-dev:feature-archiver prompt: MODE=archive, FEATURE_ID={FEATURE_ID}, SKIP_DOC_CHECK=false
Single-pass execution. Parse → detect → run steps → STOP.