agentsclimarketplace

Parallel orchestrator

Skill shakestzd/wipnote/.claude/skills/.archived/parallel-orchestrator

Orchestrate parallel agent workflows using Wipnote's ParallelWorkflow. Activate when planning multi-agent work, using Task tool for sub-agents, or coordinating concurrent feature implementation.From its SKILL.md

Install
npx -y skills add shakestzd/wipnote --skill parallel-orchestrator

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

8.2 KB, as published. Nobody here has run it

Parallel Orchestrator Skill

When to Activate This Skill

Trigger keywords:

  • "parallel", "concurrent", "simultaneously"
  • "multiple agents", "spawn agents", "Task tool"
  • "work in parallel", "parallelize"
  • "speed up", "faster completion"

Trigger situations:

  • Planning work that could run concurrently
  • Multiple independent features ready to implement
  • Using Claude Code's Task tool for sub-agents
  • Coordinating 2+ agents on different tasks

Core Principle: 6-Phase Parallel Workflow

Wipnote provides ParallelWorkflow for optimal parallel agent execution:

┌─────────────────────────────────────────────────────────────────┐
│  1. ANALYZE     →  Check dependencies, assess risks            │
│  2. PREPARE     →  Cache shared context, isolate tasks         │
│  3. DISPATCH    →  Generate prompts, spawn agents              │
│  4. MONITOR     →  Track health, detect anti-patterns          │
│  5. AGGREGATE   →  Collect results, check conflicts            │
│  6. VALIDATE    →  Verify outputs, update dependencies         │
└─────────────────────────────────────────────────────────────────┘

Phase 1: Pre-Flight Analysis (REQUIRED)

Always run analysis before dispatching agents!

from wipnote import SDK

sdk = SDK(agent="orchestrator")

# Method 1: Quick check
parallel = sdk.get_parallel_work(max_agents=5)
print(f"Max parallelism: {parallel['max_parallelism']}")
print(f"Ready now: {parallel['ready_now']}")

# Method 2: Full analysis with ParallelWorkflow
plan = sdk.plan_parallel_work(max_agents=3)

if plan["can_parallelize"]:
    print(f"✅ Parallelize {plan['task_count']} tasks")
    print(f"   Speedup: {plan['speedup_factor']:.1f}x")
    print(f"   Ready: {plan['ready_tasks']}")
else:
    print(f"⚠️ {plan['recommendation']}")

Decision Criteria

ConditionAction
max_parallelism >= 2Can parallelize
len(ready_tasks) < 2Work sequentially
Shared file editsPartition or sequence
speedup < 1.5xMay not be worth cost

Phase 2: Context Preparation

Reduce redundant file reads by pre-caching shared context:

# Identify files ALL agents need
shared_files = [
    "src/models.py",      # Data models
    "src/config.py",      # Configuration
    "tests/conftest.py",  # Test fixtures
]

# Plan with shared context
plan = sdk.plan_parallel_work(
    max_agents=3,
    shared_files=shared_files
)

What Preparation Does

  1. Reads shared files once (not per-agent)
  2. Generates summaries for agent context
  3. Identifies file conflicts before dispatch
  4. Creates isolation rules (which files each agent owns)

Phase 3: Dispatch with Task Tool

CRITICAL: Send ALL Task calls in a SINGLE message for true parallelism!

# Get ready-to-use prompts
prompts = plan["prompts"]

# CORRECT: All in one message (parallel)
for p in prompts:
    Task(
        subagent_type="general-purpose",
        prompt=p["prompt"],
        description=p["description"]
    )

# WRONG: Sequential messages (not parallel)
# result1 = Task(...)  # Wait for completion
# result2 = Task(...)  # Then next one

Prompt Structure (Auto-Generated)

Each prompt includes:

## Task: {feature_id}
Title: {title}
Priority: {priority}

## Your Assignment
{specific_instructions}

## Pre-Cached Context (DO NOT re-read these)
- models.py: Contains User, Session, Feature classes
- config.py: DATABASE_URL, API_KEY settings

## Files to AVOID (other agents editing)
- {files_assigned_to_other_agents}

## Efficiency Guidelines
- Use Grep before Read (search then read)
- Batch Edit operations
- Mark feature complete when done

Phase 4: Monitor (During Execution)

Agents track their own health via transcript analytics:

Health Metrics Tracked

MetricHealthyWarning
Retry rate< 30%> 30%
Context rebuilds< 5> 5
Tool diversity> 30%< 30%
Overall health> 70%< 70%

Anti-Patterns Detected

# These patterns trigger warnings:
("Read", "Read", "Read")     # Cache instead
("Edit", "Edit", "Edit")     # Batch edits
("Bash", "Bash", "Bash", "Bash")  # Check errors
("Grep", "Grep", "Grep")     # Read results first

Phase 5: Aggregate Results

After all agents complete:

# Collect agent IDs from Task tool responses
agent_ids = ["agent-abc123", "agent-def456", "agent-ghi789"]

# Aggregate with SDK
results = sdk.aggregate_parallel_results(agent_ids)

print(f"Successful: {results['successful']}/{results['total_agents']}")
print(f"Health: {results['avg_health_score']:.0%}")
print(f"Speedup: {results['parallel_speedup']:.1f}x")
print(f"Conflicts: {results['conflicts']}")
print(f"Anti-patterns: {results['total_anti_patterns']}")

Result Structure

{
    "total_agents": 3,
    "successful": 3,
    "failed": 0,
    "total_duration_seconds": 450.0,
    "parallel_speedup": 2.3,
    "avg_health_score": 0.80,
    "total_anti_patterns": 4,
    "files_modified": ["auth.py", "api.py", "tests/..."],
    "conflicts": [],  # Empty = good!
    "recommendations": [...],
    "validation": {
        "no_conflicts": True,
        "all_successful": True,
        "healthy_execution": True,
    },
    "all_passed": True
}

Phase 6: Validate

if results["all_passed"]:
    print("✅ Parallel execution validated!")
    # Commit all changes together
else:
    # Handle issues
    for rec in results["recommendations"]:
        print(f"⚠️ {rec}")

Optimal Tool Patterns

DO (Efficient)

PatternWhy
Grep → ReadSearch before reading
Read → Edit → BashRead, modify, test
Glob → ReadFind files first
Single Task messageTrue parallelism

DON'T (Anti-Patterns)

PatternProblemFix
Read → Read → ReadRedundant readsCache content
Edit → Edit → EditUnbatchedCombine edits
Sequential Task callsNo parallelismSingle message
Overlapping filesConflictsIsolate scope

When NOT to Parallelize

SituationReasonAlternative
Shared dependenciesConflictsSequential + handoff
Tasks < 1 minuteOverhead not worth itSequential
Overlapping filesMerge conflictsPartition files
Complex coordinationRisk of errorsPlan agent

Integration with Other Skills

With wipnote-tracker

  • Parallel agents each track their own session
  • Activities attributed to features automatically
  • Drift detection per agent

With strategic-planning

  • Use find_bottlenecks() before parallel dispatch
  • Prioritize work that unlocks most downstream tasks
  • Assess risks before large parallel batches

Quick Reference

from wipnote import SDK

sdk = SDK(agent="orchestrator")

# 1. Plan
plan = sdk.plan_parallel_work(max_agents=3)

# 2. Check
if plan["can_parallelize"]:
    # 3. Dispatch (all at once!)
    for p in plan["prompts"]:
        Task(prompt=p["prompt"], ...)

    # 4. Aggregate (after completion)
    results = sdk.aggregate_parallel_results(agent_ids)

    # 5. Validate
    if results["all_passed"]:
        print("✅ Success!")

Troubleshooting

"Not enough independent tasks"

  • Check dependency graph: sdk.get_parallel_work()
  • Resolve bottlenecks first: sdk.find_bottlenecks()

High anti-pattern count

  • Add shared file caching
  • Review agent prompts for efficiency guidelines

File conflicts detected

  • Improve task isolation in Phase 2
  • Consider sequential execution for overlapping work

Low health scores

  • Check retry rates (consecutive same-tool usage)
  • Add more context to agent prompts
  • Use Grep before Read pattern

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.