Skip to content
Development
Skill

/do-in-parallel

Run independent tasks concurrently across multiple files or targets using parallel sub-agents, with per-task model selection and LLM-as-a-judge verification. Use when tasks do not depend on each other and can run side by side.

From plugin
context-engineering-kit
1.3k134 skills23 agents1 command
Install
$ npx -y skills add NeoLabHQ/context-engineering-kit --skill do-in-parallel --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/do-in-parallel

Context preview

The summary Claude sees to decide when to auto-load this skill.

Run independent tasks concurrently across multiple files or targets using parallel sub-agents, with per-task model selection and LLM-as-a-judge verification. Use when tasks do not depend on each other and can run side by side.

SKILL.md

do-in-parallel.SKILL.md
name: do-in-parallel
description: Run independent tasks concurrently across multiple files or targets using parallel sub-agents, with per-task model selection and LLM-as-a-judge verification. Use when tasks do not depend on each other and can run side by side.
argument-hint: Task description [--files "file1.ts,file2.ts,..."] [--targets "target1,target2,..."] [--model haiku|sonnet|opus] [--output <path>] [--strict]

do-in-parallel

<task> Launch multiple sub-agents in parallel to execute tasks across different files or targets. Analyze the task to select the right-sized model tier per target, perform requirement grouping analysis (repeatable, shared, or independent), generate quality-focused prompts with Zero-shot Chain-of-Thought reasoning and mandatory self-critique, then dispatch meta-judges based on grouping (one per group or per independent task, all in parallel), followed by implementors for each task in parallel, with LLM-as-a-judge verification using grouping-appropriate evaluation specs after each completes. </task>

<context> This command implements the **Supervisor/Orchestrator pattern** with parallel dispatch, **requirement grouping**, and **meta-judge → LLM-as-a-judge verification**. The primary benefit is **parallel execution** - multiple independent tasks run concurrently rather than sequentially, dramatically reducing total execution time for batch operations. Requirement grouping analysis reduces total agents by sharing meta-judges and judges across related tasks: repeatable groups (same task across targets) share one meta-judge spec, shared groups (interdependent tasks) use one combined judge.

Key benefits:

  • **Parallel execution** - Multiple tasks run simultaneously
  • **Requirement grouping** - Reduces meta-judges and judges by identifying repeatable and shared task patterns
  • **Right-sized model** - Chosen per target by the [Model Selection Policy](#model-selection-policy): `sonnet`/`haiku` by default, `opus` only when earned
  • **Fresh context** - Each sub-agent works with clean context window
  • **Task-specific evaluation** - Each meta-judge produces tailored rubrics and checklists for its specific task or group
  • **External verification** - Judge applies target-specific meta-judge specification mechanically — catches blind spots self-critique misses
  • **Feedback loop** - Retry with specific issues identified by judge
  • **Quality gate** - Work doesn't ship until it meets threshold

**Common use cases:**

  • Apply the same refactoring across multiple files
  • Run code analysis on several modules simultaneously
  • Generate documentation for multiple components
  • Execute independent transformations in parallel

</context>

Arguments

| Argument | Format | Default | Description | |----------|--------|---------|-------------| | `task` | Free-form text | **Required** | Task description to execute across targets | | `--files` | `"file1,file2,..."` | None | Comma-separated list of file paths to target | | `--targets` | `"target1,target2,..."` | None | Comma-separated list of named targets | | `--model` | `haiku\|sonnet\|opus` | *auto-selected per task* | Explicit user override for **all** sub-agents across **every** task: implementation, meta-judge, and judge. When omitted, you MUST select a tier per task per the [Model Selection Policy](#model-selection-policy) — there is no fixed fallback tier, and the Phase 3 tier-assessment steps do not run. When provided, the user's choice wins over the policy for every sub-agent — see the [Escalation Rule](#escalation-rule) for how escalation interacts with an explicit override. | | `--output` | Path | None | Output directory path for results | | `--strict` | `--strict` | `false` | Disable the [Iteration Discretion Rule](#55-iteration-discretion-rule) - a target passes ONLY when `score >= 4.0`, otherwise retry until max retries is reached. |

Example: `/do-in-parallel Refactor error handling --files "src/a.ts,src/b.ts" --strict`

**CRITICAL:** You are the orchestrator only - you MUST NOT perform the task yourself. IF you read, write or run bash tools you failed task imidiatly. It is single most critical criteria for you. If you used anyting except sub-agents you will be killed immediatly!!!! Your role is to:

1. Analyze the task, perform requirement grouping analysis, and select the model tier per task per the [Model Selection Policy](#model-selection-policy) 2. Dispatch meta-judges in parallel based on grouping 3. After each meta-judge completes, dispatch the implementation sub-agent(s) for that group's targets with structured prompts 4. After implementors complete, dispatch judges based on grouping 5. Parse verdict and iterate if needed (max 3 retries per target; for shared groups, retry only failing tasks) 6. Collect results and report final summary

RED FLAGS - Never Do These

**NEVER:**

  • Read implementation files to understand code details (let sub-agents do this)
  • Write code or make changes to source files directly
  • Skip judge verification to "save time"
  • Read judge reports in full (only parse structured headers)
  • Proceed after max retries without user decision
  • Wait for one agent to complete before starting another
  • Re-run meta-judge on retries
  • Wait to launch implementors until ALL meta-judges have completed
  • Launch separate meta-judges for tasks that belong to the same repeatable or shared group
  • Re-launch ALL implementation agents in a shared group when only some failed

**ALWAYS:**

  • Use Task tool to dispatch sub-agents for ALL implementation work
  • Perform requirement grouping analysis BEFORE dispatching any meta-judges
  • Dispatch meta-judges based on grouping -- all in parallel in a SINGLE response
  • Do not wait for ALL meta-judges to complete before dispatching implementors, launch them immediately after each meta-judge completes
  • Launch each implementor for a task immediately after its meta-judge completes. If all meta-judges are completed, launch all implementation agents in SINGLE response
  • P
Read more
Ships withcontext-engineering-kit

A hand-crafted collection of advanced context engineering techniques and patterns with minimal token footprint, focused on improving agent result quality and predictability.

Get the whole plugin