Task Coordination Strategies
Seth HobsonCommunityCreated by Seth Hobson
- Skill
- Guidelines
- Agent tooling
- MIT
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
Task Coordination Strategies provides a structured approach to managing multi-agent workflows. It focuses on breaking down large objectives into manageable, parallelizable units while maintaining clear dependency graphs to prevent deadlocks and bottlenecks. The skill includes standardized templates for task descriptions, patterns for dependency design, and indicators for monitoring team performance and rebalancing workloads.
What it does
- Decomposes complex features into parallelizable task streams.
- Designs dependency graphs to optimize execution flow and minimize wait times.
- Provides a standardized task template ensuring clear objectives and acceptance criteria.
- Identifies critical paths and potential bottlenecks in multi-agent projects.
- Offers strategies for workload monitoring and rebalancing across team members.
When to use it
- When breaking down a large, complex feature for parallel development.
- When managing task dependencies to ensure correct execution order.
- When defining clear interface contracts between different agent workstreams.
- When troubleshooting team performance or identifying idle/overloaded agents.
Advantages
- Reduces development time through optimized parallel execution.
- Prevents circular dependencies and common coordination deadlocks.
- Improves clarity and accountability with standardized task descriptions.
- Facilitates easier integration by defining clear interface contracts.
Usage examples
- “Decompose the development of a new user authentication feature into parallel tasks for three agents.”
- The agent provides a breakdown into three streams (Login, Registration, Shared Infrastructure) with assigned files, requirements, and a dependency graph.
- “How should I structure tasks for a CRUD API to ensure maximum parallelism?”
- The agent suggests a layered decomposition (Data Layer, Business Logic, API Layer) and explains the dependency chain required to ensure each layer is ready for the next.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/wshobson/task-coordination-strategies/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip task-coordination-strategies.zip -d .agents/skills
Documentation by Seth Hobson
Task Coordination Strategies
Strategies for decomposing complex tasks into parallelizable units, designing dependency graphs, writing effective task descriptions, and monitoring workload across agent teams.
When to Use This Skill
Breaking down a complex task for parallel execution
Designing task dependency relationships (blockedBy/blocks)
Writing task descriptions with clear acceptance criteria
Monitoring and rebalancing workload across teammates
Identifying the critical path in a multi-task workflow
Task Decomposition Strategies
By Layer
Split work by architectural layer:
Frontend components
Backend API endpoints
Database migrations/models
Test suites
Best for: Full-stack features, vertical slices
By Component
Split work by functional component:
Authentication module
User profile module
Notification module
Best for: Microservices, modular architectures
By Concern
Split work by cross-cutting concern:
Security review
Performance review
Architecture review
Best for: Code reviews, audits
By File Ownership
Split work by file/directory boundaries:
src/components/— Implementer 1src/api/— Implementer 2src/utils/— Implementer 3
Best for: Parallel implementation, conflict avoidance
Dependency Graph Design
Principles
Minimize chain depth — Prefer wide, shallow graphs over deep chains
Identify the critical path — The longest chain determines minimum completion time
Use blockedBy sparingly — Only add dependencies that are truly required
Avoid circular dependencies — Task A blocks B blocks A is a deadlock
Patterns
Independent (Best parallelism):
Task A ─┐
Task B ─┼─→ Integration
Task C ─┘Sequential (Necessary dependencies):
Task A → Task B → Task CDiamond (Mixed):
┌→ Task B ─┐
Task A ─┤ ├→ Task D
└→ Task C ─┘Using blockedBy/blocks
TaskCreate: { subject: "Build API endpoints" } → Task #1
TaskCreate: { subject: "Build frontend components" } → Task #2
TaskCreate: { subject: "Integration testing" } → Task #3
TaskUpdate: { taskId: "3", addBlockedBy: ["1", "2"] } → #3 waits for #1 and #2Task Description Best Practices
Every task should include:
Objective — What needs to be accomplished (1-2 sentences)
Owned Files — Explicit list of files/directories this teammate may modify
Requirements — Specific deliverables or behaviors expected
Interface Contracts — How this work connects to other teammates' work
Acceptance Criteria — How to verify the task is done correctly
Scope Boundaries — What is explicitly out of scope
Template
## Objective
Build the user authentication API endpoints.
## Owned Files
- src/api/auth.ts
- src/api/middleware/auth-middleware.ts
- src/types/auth.ts (shared — read only, do not modify)
## Requirements
- POST /api/login — accepts email/password, returns JWT
- POST /api/register — creates new user, returns JWT
- GET /api/me — returns current user profile (requires auth)
## Interface Contract
- Import User type from src/types/auth.ts (owned by implementer-1)
- Export AuthResponse type for frontend consumption
## Acceptance Criteria
- All endpoints return proper HTTP status codes
- JWT tokens expire after 24 hours
- Passwords are hashed with bcrypt
## Out of Scope
- OAuth/social login
- Password reset flow
- Rate limitingWorkload Monitoring
Indicators of Imbalance
| Signal | Meaning | Action |
|---|---|---|
| Teammate idle, others busy | Uneven distribution | Reassign pending tasks |
| Teammate stuck on one task | Possible blocker | Check in, offer help |
| All tasks blocked | Dependency issue | Resolve critical path first |
| One teammate has 3x others | Overloaded | Split tasks or reassign |
Rebalancing Steps
Call
TaskListto assess current stateIdentify idle or overloaded teammates
Use
TaskUpdateto reassign tasksUse
SendMessageto notify affected teammatesMonitor for improved throughput
Files
- ATTRIBUTION.mdAdded by AutoGineer1006 B
- LICENSELicence file added by AutoGineer1.0 KiB
- SKILL.md4.6 KiB
- references/dependency-graphs.md2.6 KiB
- references/task-decomposition.md2.7 KiB
references/dependency-graphs.md
Dependency Graph Patterns
Visual patterns for task dependency design with trade-offs.
Pattern 1: Fully Independent (Maximum Parallelism)
Task A ─┐
Task B ─┼─→ Final Integration
Task C ─┘Parallelism: Maximum — all tasks run simultaneously
Risk: Integration may reveal incompatibilities late
Use when: Tasks operate on completely separate files/modules
TaskCreate: No blockedBy relationships; integration task blocked by all
Pattern 2: Sequential Chain (No Parallelism)
Task A → Task B → Task C → Task DParallelism: None — each task waits for the previous
Risk: Bottleneck at each step; one delay cascades
Use when: Each task depends on the output of the previous (avoid if possible)
TaskCreate: Each task blockedBy the previous
Pattern 3: Diamond (Shared Foundation)
┌→ Task B ─┐
Task A ──→ ┤ ├→ Task D
└→ Task C ─┘Parallelism: B and C run in parallel after A completes
Risk: A is a bottleneck; D must wait for both B and C
Use when: B and C both need output from A (e.g., shared types)
TaskCreate: B and C blockedBy A; D blockedBy B and C
Pattern 4: Fork-Join (Phased Parallelism)
Phase 1: A1, A2, A3 (parallel)
────────────
Phase 2: B1, B2 (parallel, after phase 1)
────────────
Phase 3: C1 (after phase 2)Parallelism: Within each phase, tasks are parallel
Risk: Phase boundaries add synchronization delays
Use when: Natural phases with dependencies (build → test → deploy)
TaskCreate: Phase 2 tasks blockedBy all Phase 1 tasks
Pattern 5: Pipeline (Streaming)
Task A ──→ Task B ──→ Task C
└──→ Task D ──→ Task EParallelism: Two parallel chains
Risk: Chains may diverge in approach
Use when: Two independent feature branches from a common starting point
TaskCreate: B blockedBy A; D blockedBy A; C blockedBy B; E blockedBy D
Anti-Patterns
Circular Dependency (Deadlock)
Task A → Task B → Task C → Task A ✗ DEADLOCKFix: Extract shared dependency into a separate task that all three depend on.
Unnecessary Dependencies
Task A → Task B → Task C
(where B doesn't actually need A's output)Fix: Remove the blockedBy relationship; let B run independently.
Star Pattern (Single Bottleneck)
┌→ B
A → ├→ C → F
├→ D
└→ EFix: If A is slow, all downstream tasks are delayed. Try to parallelize A's work.
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Seth Hobson
- Publisher
- Seth Hobson (Community)
- Source
- wshobson/agents · plugins/agent-teams/skills/task-coordination-strategies · commit 4bde316
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Seth Hobson or Seth Hobson.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download task-coordination-strategies.zip