Skip to content

/expand-tasks

Expand all TaskMaster tasks with deep research before coding begins. Reads tasks.json, launches parallel research agents per task in waves using the research-expander agent. Writes findings back to tasks.json. Part of the prd-taskmaster toolkit. Use after PRD is parsed and

From plugin
prd
61010 skills1 agent2 hooks1 MCP

Claude Code

$ npx -y skills add anombyte93/prd-taskmaster --skill expand-tasks --agent claude-code

SKILL.md

expand-tasks.SKILL.md
name: expand-tasks
description: >-
  Expand all TaskMaster tasks with deep research before coding begins.
  Reads tasks.json, launches parallel research agents per task in waves using
  the research-expander agent. Writes findings back to tasks.json. Part of the
  prd-taskmaster toolkit. Use after PRD is parsed and before implementation.
  Invoke with /expand-tasks.
user-invocable: true
allowed-tools:
  - Read
  - Write
  - Edit
  - Bash
  - Task
  - Skill
  - Glob
  - Grep
  - AskUserQuestion
  - ToolSearch
  - mcp__atlas-engine
  - mcp__plugin_prd_go
  - mcp__plugin_prd-taskmaster_go
  - mcp__plugin_atlas-go_go

Expand Tasks with Research v1.0

Expands TaskMaster tasks with research before coding begins. Deterministic operations handled by `script.py`; AI handles judgment.

**Script location**: `skills/expand-tasks/script.py` (relative to plugin root) **Part of**: `prd-taskmaster` plugin **Depends on**: `research-expander` agent (parallel research worker), any research provider configured via `task-master models --set-research` or registered as an MCP research tool.

When to Use

Activate when user says: expand tasks, research tasks, research before coding for all, expand subtasks. Do NOT activate for: single task research (use /research-before-coding), PRD generation (use /prd:go).

Native-parallel first (token economy)

Before launching agent waves, check the cheaper path: the native engine expands tasks in parallel for free. Prefer `python3 script.py expand` — backend op expand (native api) — or the `expand_tasks` MCP tool: it runs structured `expand` across pending tasks concurrently (inheriting the engine's ThreadPoolExecutor) on economy-tier models / keyless host CLIs and merges atomically. Use THIS skill's agent waves when: no provider/CLI is available, native expand reports failures for specific tasks (rerun just those here), or the research must be repo-grounded (agents can read the codebase; native expand cannot).

Prerequisites

  • TaskMaster `tasks.json` must exist (run `/prd:go` first)
  • A research provider is configured — either (a) `task-master models --set-research <model> --<provider>` for any task-master provider family, or (b) an MCP research tool registered in `~/.claude.json` that Claude Code can call directly (for example `mcp__plugin_prd_go__*` tools or an external search/reason MCP)
  • At least 1 task in `tasks.json`

---

Workflow (5 Steps)

Step 1: Preflight

python3 skills/expand-tasks/script.py read-tasks

Returns JSON: `total`, `expanded`, `pending_expansion`, `tasks[]`.

**If `pending_expansion` is 0**: Report all tasks already expanded. Exit skill.

**If research provider is not configured**: Check via `task-master models` and verify a research role is set. If none, tell the user to configure one (`task-master models --set-research <model> --<provider>`) and exit. The skill does not assume any specific research backend — it uses whatever is configured.

---

Step 2: Choose Scope

Use AskUserQuestion:

  • **All tasks** (default): Expand every task that hasn't been researched yet
  • **Specific tasks**: User provides task IDs (comma-separated)
  • **By dependency level**: Expand tasks with no dependencies first, then next wave

**AI judgment**: Recommend "All tasks" for initial expansion, "By dependency level" for incremental work.

---

Step 3: Generate Research Prompts

For each task to expand:

python3 skills/expand-tasks/script.py gen-prompt --task-id <ID>

Returns JSON with `prompt` field containing the full research agent prompt.

**AI judgment**: Review the auto-generated prompt. Customize research questions if the task needs domain-specific queries. Add project context from the PRD or session-context files if relevant.

---

Step 4: Launch Parallel Research Agents

Launch research agents in parallel waves. Each wave = up to 5 concurrent agents.

**For each task**, spawn a Task agent using the dedicated `research-expander` subagent type (defined in `agents/research-expander.md`):

Task(
  subagent_type: "research-expander",
  description: "Research Task <ID>: <title>",
  run_in_background: true,
  prompt: <prompt from Step 3>
)

**Wave strategy**:

  • Wave 1: Tasks with no dependencies (they inform downstream tasks) — run in parallel
  • Wave 2: Tasks depending on Wave 1 — run in parallel
  • Wave 3+: Continue until all tasks covered — run in parallel per wave
  • Max 5 agents per wave to avoid overwhelming the configured research backend

**Wait for each wave to complete before launching the next.** Parallel dispatch only happens WITHIN a wave; waves themselves are serial.

---

Step 5: Collect and Write Results

As each `research-expander` agent completes, save its research output:

1. Write agent output to a temp file:

   cat > /tmp/research-task-<ID>.md <<'EOF'
   <agent output>
   EOF

2. Write research back to `tasks.json`:

   python3 skills/expand-tasks/script.py write-research --task-id <ID> --research /tmp/research-task-<ID>.md

3. After all tasks are written, verify:

   python3 skills/expand-tasks/script.py status

**AI judgment**: Review each research result for quality. If a result is too thin (< 5 lines of useful content) or clearly failed, re-run that specific task's research through a fresh `research-expander` invocation.

---

Research Agent Prompt Pattern

The `gen-prompt` command generates prompts that follow the research-before-coding pattern:

1. Agent receives task context (title, description, dependencies, subtasks) 2. Agent runs 3-5 targeted queries against the user's configured research provider. The `research-expander` agent is tool-agnostic: it picks up whichever research tools are available in the current Claude Code session. This may be `task-master research`, an MCP search/reason tool from `~/.claude.json` (including any `mcp__plugin_prd_go__*` tools registered by this plugin), WebSearch as a last resort, or

Read more
@anombyte93
Ships withprd

prd-taskmaster by Atlas AI is an open-source engine for Claude Code that takes a one-line goal, interviews you like a senior PM, writes a **graded, placeholder-proof PRD, compiles it into a **dependency-ordered task graph, and executes every task with

61010 skills1 agent1 MCP
Get the whole plugin, auto-invoked

Stars on GitHub

Momentum

stars in total
610
Star history of anombyte93/prd-taskmaster on GitHub, a chart by star-history.com

Other skills on prd.

atlas
Auto-invoked

atlas

The Atlas engine — turn any goal into a validated PRD and an executable, verified task graph. Brand-name entrypoint; a thin alias…

@anombyte93@anombyte93Install Skill
customise-workflow
Auto-invoked

customise-workflow

Customise the prd-taskmaster plugin workflow via curated brainstorm questions. The AI asks, the user answers in plain English,…

@anombyte93@anombyte93Install Skill
discover
Auto-invoked

discover

Phase 1 of the prd-taskmaster pipeline: brainstorm-driven discovery. Delegates to superpowers:brainstorming in Interactive Mode…

@anombyte93@anombyte93Install Skill
execute-fleet
Auto-invoked

execute-fleet

Phase execution skill for licensed Atlas Fleet runs. Use when HANDOFF has selected Atlas Fleet and the project should be executed…

@anombyte93@anombyte93Install Skill
execute-task
Auto-invoked

execute-task

Execute the next TaskMaster task using the implementation plan with CDD verification. Picks the next ready task, matches it to…

@anombyte93@anombyte93Install Skill
generate
Auto-invoked

generate

Phase 2 of the prd-taskmaster pipeline: spec generation and task parsing. Loads a template (comprehensive|minimal), fills it with…

@anombyte93@anombyte93Install Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills2w309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react5d252k
@facebook@facebookInstall Skill

Questions about expand-tasks.

Which coding agents can use expand-tasks?
expand-tasks installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.