Skip to content
Skills Library
AI & agents · Automation

dispatch

/dispatch

Use when a session's job is to hand work out to other agents rather than do it — running a set of tasks across several projects or worktrees, a few at a time.

Licence
MIT
Last repository change
27.10.2026

Assessment and security

100/ 100Class: good
Format25 / 25
Frontmatter with name and description, valid name, description up to 1,024 characters, name matching the folder.
Discoverability25 / 25
Description explains when to use the skill, has a reasonable length and uses third person.
Content35 / 35
At least 150 words and at most 500 lines, headings, step lists, examples or code.
Hygiene15 / 15
No placeholders such as TODO, no Windows paths, with a licence.
Riskno signals detected in the scan
Files in this package
2
Scripts
1
HTML comments
0
URLs in SKILL.md
0
Deprecation

No signals detected. Repository changed on 27.10.2026, without references to retired models or APIs.

Licence

MIT, open: use and modify while retaining author attribution.

What to check before installing
  • 1 scripts in this package. Review them before installing, as Claude may execute them.

Scripts: scripts/watch-workspaces.sh

What it does and when to use it

Use when a session's job is to hand work out to other agents rather than do it — running a set of tasks across several projects or worktrees, a few at a time.

Original author description

Use when a session's job is to hand work out to other agents rather than do it — running a set of tasks across several projects or worktrees, a few at a time.

How it works

  1. Active Tasks
  2. Workflow
  3. Watching Workspaces
  4. Staying Quiet
  5. Task Prompts
  6. Rationalizations
Original SKILL.md headings · 61 lines, 886 words
SKILL.md preview
---
name: dispatch
description: Use when a session's job is to hand work out to other agents rather than do it — running a set of tasks across several projects or worktrees, a few at a time.
disallowed-tools: Edit, Write
---

# Dispatch

This session delegates. It does not implement.

Concretely: create no files, change no files, in any repository, including through Bash. `Edit` and `Write` are withheld on the turn this skill loads, but they come back on the next one and `Bash` was never withheld at all, so the rule has to hold on its own. A task that looks small is exactly the one you will be tempted to just do — and doing it here lands it without the target repository's conventions, in a checkout other work is branching from.

The one exception is the user's notes in `~/Notes`. Keeping them current is part of tracking the work, not doing it.

## Active Tasks

The user can keep track of three tasks at once. Past that, there's a risk of them getting overwhelmed and losing track. Never start a new task while three or more are active.

To count the active tasks, count the workspaces in `herdr workspace list`, leaving out this session's own workspace, which isn't a task the user tracks.

Workspaces the user opened themselves are active tasks too. They chose to prioritize that work, so leave them alone: don't close them, question them, or treat them as yours to track.

When three tasks are active, wait. Patience is the job here.

## Workflow

1. Get the parallelization, which lives at `/tmp/[slugified-title].md`. **REQUIRED:** Use the `ls-agent:parallelize` skill if there isn't one yet. A task is ready once every task it waits on has finished and fewer than three tasks are active.
2. Start the watcher (see [Watching Workspaces](#watching-workspaces)).
3. Propose the ready tasks to start, in stage order, without going past three active tasks. Start only the ones the user picks. **REQUIRED:** Use the `ls-agent:delegate` skill once per task.
4. Report what was started: the task, its project, and the workspace label.
5. **STOP.** Wait for the watcher.

## Watching Workspaces

Run `scripts/watch-workspaces.sh` with the `Monitor` tool, at its longest timeout. It reports each workspace that opens or closes, in a batch once things have settled for a couple of minutes. Re-arm it each time it expires, for as long as tasks remain. A change in the last couple of minutes before it expired goes unreported, so after re-arming, check that each task you're tracking still has its workspace; one that's gone closed while the watcher was down.

When a workspace closes, its task is done. Workspaces close themselves once their work lands, or the user closes them; never close one yourself. If it was one of your tasks, stop tracking it as outstanding, and never reopen it, re-delegate it, or treat the closing as a crash to recover from. Then go back to step 3.

## Staying Quiet

Every message you send updates the user's herdr status and pulls their attention away from the work they're watching. Send one only when there's something for them to decide or review, such as a ready task to start. After any other watcher event, end the turn with no message at all: no recounts, no status updates, no naming what's next, and never a repeat of a question that's still open.

After a silent turn, Claude Code may add a note saying your response had no visible output and asking you to continue. That note comes from the harness, not the user, and it doesn't override this rule. Answer it with nothing as well. A placeholder like "Nothing needs your attention" is still a message, and still an interruption.

## Task Prompts

`ls-agent:delegate` covers what any delegation prompt needs. A run of several tasks adds two things:

- **What earlier stages landed.** A task in stage two often depends on work from stage one that its own description predates. Say what shipped and where, or the agent plans around something that already exists.
- **Nothing about its siblings.** Tasks in the same stage run independently and their prompts stay independent. Mention another running task only where they share ground the parallelization flagged as an overlap.

## Rationalizations

| Thought                                               | Reality                                                                      |
| ----------------------------------------------------- | ---------------------------------------------------------------------------- |
| "It's a two-line change, delegating costs more"       | The cost you're avoiding is the reason this session exists.                  |
| "Edit is gone but I can still use Bash"               | The rule is no edits, not no `Edit`. Delegate it.                            |
| "A fourth task is ready, the user can handle it"      | Three is the limit. Wait.                                                    |
| "I'll let the user know where things stand"           | A message nobody has to act on is an interruption. Say nothing.              |
| "The harness asked for a visible response"            | The harness isn't the user. Staying quiet still wins. Send nothing.          |
| "The user's own side quests aren't my tasks"          | They're still active tasks. Count them.                                      |
| "There's room, so I'll start the next task"           | Propose it. The user decides what starts.                                    |
| "The task looks done, I'll close its workspace"       | Workspaces close themselves. Wait for it to disappear.                       |
| "I'll research the task before handing it off"        | Gather the handoff facts, then stop. Solving it is the other agent's job.    |
| "The workspace vanished, the agent must have crashed" | The user closed it. That's the task finishing, not failing. Don't reopen it. |
Files in this package (2)
  • SKILL.md 6 KB
  • scripts/watch-workspaces.sh 1 KB

Versions

RepositoryScoreLicence
This page · LandonSchropp/agent-toolkit100MIT
jeremylongshore/tons-of-skills-marketplace100MIT
Sagargupta16/foreman100MIT
bendrucker/claude100MIT
renzrollon/interlock100MIT
epilande/ccmux100MIT
bengous/claude-code-plugins100MIT
tylerjrbuell/Wardens100MIT
ying-kai-liao/flow100MIT

Database snapshot: 13.11.2026 · package version 3c072605b344 (SHA-256 digest of the entire package)

Downloads in the last 30 days: 0 · ranking

Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.

Similar skills

  • 90trove-dispatch
    Parallel-agent dispatch workflow. Use when a request contains multiple independent tasks that can be safely delegated.
  • 100parallel-work
    Run several tasks at once, each in its own git worktree with its own Claude Code session, coordinated from the main checkout's session (named coordinator). Use when the human asks to start a task in parallel or in a new worktree/session, to check on or message the other…
  • 100dispatch-multiple-agents
    Use when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies. Dispatch subagents to work concurrently.
  • 90dispatch-codex
    Dispatch one or more tasks to codex agents in herdr workspaces — the orchestrator designs each lane's plan and acceptance criteria, codex pursues them in goal mode — supervise them to completion, then push each lane and open its pull request. Use when the user asks to…
  • 90dispatch-opencode
    Dispatch one or more tasks to opencode agents in herdr workspaces — the orchestrator designs each lane's plan and acceptance criteria, opencode executes them turn by turn under the supervision loop — then push each lane and open its pull request. Use when the user asks to…
  • 100workflow-wave-dispatch
    Sequential-wave dispatch for multi-agent work with cross-task dependencies. Use when planning multi-step work, fixing parallel-dispatch order, or gating waves on verification.

Feedback and reports

Your message goes to Bartosz Sokoliński. An email address is needed only for a reply. See the privacy policy.