Coordinate Task
SkillProductivityRun a Coordinate Agents Task from requirement clarification through planning, implementation, review, and the human release gate. Hide Agent Bus transport details behind the durable Task API.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Coordinate Task skill
What this skill tells your AI
The instructions your AI receives, as published by hogancv/coordinate-agents in skills/coordinate-task/SKILL.md and read by ahel’s review.
Use this skill when the user asks Coordinate Agents to implement a feature, fix a bug, or build an onboarding Todo web app. Use MCP tools for the normal workflow and do not make the user construct shell commands:
coordinate_agents_task_create
coordinate_agents_task_graph_validate
coordinate_agents_task_graph_create
coordinate_agents_task_graph_plan
coordinate_agents_task_graph_run
coordinate_agents_task_graph_advance
coordinate_agents_task_graph_dispatch
coordinate_agents_task_graph_recover
coordinate_agents_task_graph_resume
coordinate_agents_task_graph_stop
coordinate_agents_task_graph_cleanup
coordinate_agents_task_graph_integrate
coordinate_agents_task_graph_review
coordinate_agents_task_dispatch
coordinate_agents_task_status
coordinate_agents_task_inspect
coordinate_agents_task_resume
coordinate_agents_task_stop
For explicit Session diagnostics, use the bounded Session tools:
coordinate_agents_session_open
coordinate_agents_session_status
coordinate_agents_session_inspect
coordinate_agents_session_write
coordinate_agents_session_read
coordinate_agents_session_close
Only if MCP is unavailable, or if the user explicitly requests debugging, let
<skill-dir> be the absolute directory containing this SKILL.md and use
the bundled fallback. The following shell syntax is fallback/debug only, not
the normal Plugin path:
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" ...
The normal Plugin call is a structured coordinate_agents_task_create followed
by the other Task tools above. For standalone Runtime compatibility or explicit
debugging, use the fallback syntax below; never expose Agent Bus send, wait,
or state operations to the user:
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task graph-validate --root "<repository>" --input "<graph.json>" --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task graph-create --root "<repository>" --input "<graph.json>" --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task graph-plan --root "<repository>" --id task-... --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task graph-run --root "<repository>" --id task-... --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task graph-advance --root "<repository>" --id task-... --max-waves 3 --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task graph-dispatch --root "<repository>" --id task-... --subtask <subtaskId> --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task graph-recover --root "<repository>" --id task-... --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task graph-resume --root "<repository>" --id task-... --subtask <subtaskId> --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task graph-stop --root "<repository>" --id task-... --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task graph-cleanup --root "<repository>" --id task-... --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task graph-integrate --root "<repository>" --id task-... --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task graph-review --root "<repository>" --id task-... --decision REVIEW_APPROVED --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task create --root "<repository>" --title "<task>" --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task dispatch --root "<repository>" --id task-... --spec "<approved specification>" --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task status --root "<repository>" --id task-... --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task inspect --root "<repository>" --id task-... --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task resume --root "<repository>" --id task-... --json
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task stop --root "<repository>" --id task-... --reason "<reason>" --json
Task records are persisted under the project-local Agent Bus and contain the
Planner, Implementer, Reviewer, round, specification, commit, evidence,
timestamps, status, last error, and a non-owning sessionId reference. The
normal path is:
CREATED/PLANNING -> SPEC_READY -> IMPLEMENTING -> WAITING_IMPLEMENTER
-> REVIEWING -> APPROVED
task dispatch is the Plugin-facing workflow operation. It validates the
state and approved specification, resolves the workflow Implementer and its
effective command, checks the executable, sends IMPLEMENT, then opens or
reuses one healthy persistent Execution Session. The Task stores the returned
sessionId but does not own the process. If the adapter did not consume the
initial prompt as launch arguments, dispatch writes it to the Session. A
durable IMPLEMENTATION_DONE message maps the Task to REVIEWING, including
implementationCommit and evidence; otherwise a bounded activation remains
observable as WAITING_IMPLEMENTER.
Review feedback may enter CHANGES_REQUESTED. A failed activation enters
ERROR; an explicit user task resume is required before another dispatch.
CHANGES_REQUESTED is dispatched explicitly with the preserved feedback,
current round, and previous commit/evidence reference. A healthy matching
Session is reused for this rework; an exited/failed Session is replaced only
by that explicit dispatch. Use task review for
the Runtime decision operation:
node "<skill-dir>/../coordinate-agents/scripts/runtime-entry.mjs" task review \
--root "<repository>" --id task-... --decision CHANGES_REQUESTED \
--feedback "<concrete review findings>" --json
REVIEW_APPROVED changes Task status to APPROVED; it never authorizes
merge, push, tag, publish, deploy, or any other release action.
For a dependency-aware run, validate the complete additive Task Graph v1
before creating or dispatching graph work. The validation operation is
read-only, requires explicit configured Implementer identities and bounded
maxConcurrency, and rejects duplicate/malformed IDs, missing or cyclic
dependencies, self-edges, empty specifications, and unconfigured Agents with
TASK_GRAPH_INVALID. It finishes before Bus, Adapter, worktree, Session, or
process side effects; existing single-Task operations remain unchanged. After
validation, coordinate_agents_task_graph_create (or task graph-create)
atomically persists the parent, subtasks, dependency frontier, reasons,
evidence, and lifecycle event without launching an Implementer. Use the
existing task status/task inspect operations, or the explicit
task graph-status/task graph-inspect aliases, to read the durable graph.
Use coordinate_agents_task_graph_plan (or task graph-plan) as a Graph
Preflight for deterministic dependency/capacity decisions, configured
Agent/Adapter/executable facts, scope policy, selected-wave Runtime resource
estimates, bounded risks, and explicit graph-run/review/release boundaries. If
Intent Map coverage is available, the plan greedily derives a stable
non-conflicting READY wave and bounded WRITE_INTENT_CONFLICT facts. Missing
coverage is UNVERIFIED and does not prove concurrent writes are safe.
Conflict deferral never rewrites dependsOn. Planning creates no worktree,
Bus message, Session, event, or process.
Use coordinate_agents_task_graph_run (or task graph-run) to execute the
current selected wave concurrently up to maxConcurrency. Each selected
subtask gets an isolated worktree, branch/ref, Bus message, and Runtime-owned
Session; the operation does not recursively launch work unlocked during the
same run. The graph lock rechecks write-intent compatibility against RUNNING
subtasks before any worktree, Session, or Implementer launch.
Use coordinate_agents_task_graph_advance (or task graph-advance) only with
an explicit maxWaves from 1–32. It re-plans before every wave and stops on
conflict, failure, blocked/stopped/running work, integration/review boundaries,
or the caller limit. It never recovers, retries, integrates, reviews, or releases.
To dispatch one ready subtask, use coordinate_agents_task_graph_dispatch (or
task graph-dispatch --id <parentTaskId> --subtask <subtaskId>), which executes
the subtask in an isolated Git worktree rooted at the exact graph base commit
without touching uncommitted user files, and updates the frontier upon completion.
If a coordinator or Session host is interrupted, use
coordinate_agents_task_graph_recover (or task graph-recover) to inspect
durable Session, worktree, commit, and evidence facts. It never infers success
from filenames or prose, replays verified side effects, or retries automatically.
Use coordinate_agents_task_graph_resume (or task graph-resume) only for an
explicit recovery decision: a healthy Runtime-owned Session/worktree is reused;
an exited or failed Session is returned to READY for a separate dispatch.
Use coordinate_agents_task_graph_stop and
coordinate_agents_task_graph_cleanup for bounded ownership-checked cleanup.
They preserve user worktrees, refs, commits, and evidence, record cleanup
failures, and are idempotent.
After all required subtasks are verified successful, use
coordinate_agents_task_graph_integrate (or task graph-integrate) to
create the separate aggregate review worktree and apply source commits in
deterministic subtask-id order. Use
coordinate_agents_task_graph_review (or task graph-review) to inspect
that aggregate and record REVIEW_APPROVED or CHANGES_REQUESTED.
Integration conflicts are durable and bounded; they do not modify the user
checkout or source worktrees and do not authorize release actions.
See ../../docs/task-graph-v1.md for the input shape and parent/subtask
identity facts.
Signals
- GitHub stars
- 102
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
coordinate-task- Source
- github.com/hogancv/coordinate-agents