rnd-buildlisted
Install: claude install-skill oleksify/rnd-framework
# R&D Framework: Build
Determine the RND artifacts directory:
```bash
RND_DIR=$("${CLAUDE_PLUGIN_ROOT}/lib/rnd-dir.sh")
```
Read the plan from `$RND_DIR/protocol.md`. Check `TaskList` to identify current task states. When displaying blocked tasks or blocked-by references, always translate Claude Code internal IDs (`#<n>`) to pipeline IDs (`T<n>`) by matching against `metadata.pipelineId` or extracting the `T<n>` prefix from the blocking task's subject.
If $ARGUMENTS is empty (user ran `/rnd-framework:rnd-build` with no arguments):
- Read `$RND_DIR/protocol.md` and inspect `TaskList` to find the next wave where all tasks are `pending` and unblocked.
- If a clear next wave is found, use `AskUserQuestion` to confirm: "Build wave-N next? (N tasks: T1, T2, ...)" with options "Yes, build wave-N (Recommended)" and "Choose a different task or wave".
- If no pending wave is found, report the current state and use `AskUserQuestion`.
- If the plan does not exist, prompt the user to run `/rnd-framework:rnd-start` first.
If $ARGUMENTS specifies a task ID (e.g., "T3"):
- Build that one task.
If $ARGUMENTS specifies a wave (e.g., "wave-2"):
- Build ALL tasks in that wave sequentially.
If $ARGUMENTS is "next":
- Use `TaskList` to find the next unblocked wave and build it.
## Build Process
**For each task, spawn a Builder agent:**
```
Agent({
description: "Build task T<id>",
subagent_type: "rnd-framework:rnd-builder",
mode: "acceptEdits",
prompt: "Task: T<id>\nRND_DIR: <path