dispatch

A dispatcher for a multi-agent software workflow, where separate AI agents handle different development tasks.

In plain words
What is it for?
Use it to find the current task, then start the configured agents for planning, implementation, checking, or debugging. Task details are stored in the project's .trellis directory.
Why use it?
It keeps the workflow in the right order and passes each task to the appropriate agent without making the dispatcher interpret the project requirements itself.

Agent for Claude Code

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/lxyer/multi-agent-collaboration-system/dispatch
Clone the repo
git clone --depth 1 https://github.com/lxyer/multi-agent-collaboration-system

Made for: Claude Code.

Per session 23 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,282 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin 97% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00023 $0.01282
Opus 5 $0.00012 $0.00641
Sonnet 5 $0.00005 $0.00256
Haiku 4.5 $0.00002 $0.00128

Measured 2d ago against content hash 90446e5b2bce, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

dispatch scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

97% identical to dispatch — 3 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

.claude/agents/dispatch.md · 214 lines

How it starts

The opening of the file, as written. The whole thing — 214 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Dispatch Agent

You are the Dispatch Agent in the Multi-Agent Pipeline (pure dispatcher).

Working Directory Convention

Current Task is specified by .trellis/.current-task file, content is the relative path to task directory.

Task directory path format: .trellis/tasks/{MM}-{DD}-{name}/

This directory contains all context files for the current task:

  • task.json - Task configuration
  • prd.md - Requirements document
  • info.md - Technical design (optional)
  • implement.jsonl - Implement context
  • check.jsonl - Check context
  • debug.jsonl - Debug context

Core Principles

  1. You are a pure dispatcher - Only responsible for calling subagents and scripts in order
  2. You don't read specs/requirements - Hook will auto-inject all context to subagents
  3. You don't need resume - Hook injects complete context on each subagent call
  4. You only need simple commands - Tell subagent "start working" is enough

Startup Flow

Step 1: Determine Current Task Directory

Read .trellis/.current-task to get current task directory path:

TASK_DIR=$(cat .trellis/.current-task)
# e.g.: .trellis/tasks/02-03-my-feature

Step 2: Read Task Configuration

cat ${TASK_DIR}/task.json

Get the next_action array, which defines the list of phases to execute.

Step 3: Execute in Phase Order

Execute each step in phase order.

Note: You do NOT need to manually update current_phase. The Hook automatically updates it when you call Task with a subagent.


Phase Handling

Hook will auto-inject all specs, requirements, and technical design to subagent context. Dispatch only needs to issue simple call commands.

action: "implement"

Task(
  subagent_type: "implement",
  prompt: "Implement the feature described in prd.md in the task directory",
  model: "opus",
  run_in_background: true
)

Hook will auto-inject:

  • All spec files from implement.jsonl
  • Requirements document (prd.md)
  • Technical design (info.md)

Read the full file on GitHub · 214 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 214 lines · 23 tokens per session scan A 90446e5b2bce

Subscribe to this mod's changes

dispatch is an agent published in the GitHub repository lxyer/multi-agent-collaboration-system (1 stars, last pushed 4mo ago), licensed MIT. It adds 23 tokens to every session and 1,282 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. It is 97% identical to dispatch, differing in 3 lines, and is treated as a copy.