singleton-dispatch

A dispatcher for a code-review workflow that starts one specialist agent only when an earlier preparation step says more analysis is needed. It uses status files to decide whether to skip or dispatch that agent.

In plain words
What is it for?
Use it after signal extraction or coverage review to conditionally run the corresponding single-agent analysis and write its expected output.
Why use it?
It avoids starting duplicate work when the preparation step already produced the required result.

Skill for Claude CodeCodex

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 skills/closedloop-ai/claude-plugins/singleton-dispatch
Any agent
npx skills add closedloop-ai/claude-plugins --skill singleton-dispatch
Clone the repo
git clone --depth 1 https://github.com/closedloop-ai/claude-plugins

Made for: Claude Code, Codex.

Per session 142 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,647 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found 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.00142 $0.01647
Opus 5 $0.00071 $0.00823
Sonnet 5 $0.00028 $0.00329
Haiku 4.5 $0.00014 $0.00165

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

Security

Grade A, and why

singleton-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.

plugins/code-review/skills/singleton-dispatch/SKILL.md · 91 lines

How it starts

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

PLN-725 Single-Agent Dispatch (stage_11 / stage_15)

This skill is the canonical PLN-725 single-agent dispatcher for /code-review. It is split out of commands/start.md so the orchestration spine stays lean; the orchestrator invokes it from walker-contract step 6 immediately after stage_11_extract_signals or stage_15_coverage_critic finishes. The content below is relocated verbatim from start.md.


PLN-725 Single-Agent Dispatch

Walker contract step 6 points here. Two stages (stage_11_extract_signals, stage_15_coverage_critic) emit a manifest whose status field decides whether a singleton LLM agent must be spawned. This section codifies the dispatch — the same protocol applies to both stages with different paths.

When to dispatch

After the prepare stage finishes, read its manifest:

Stage Manifest location
stage_11_extract_signals <CR_DIR>/extract_signals_manifest.json
stage_15_coverage_critic <CR_DIR>/coverage.json (critic section)

Parse status:

status Action
"cache_hit" Skip dispatch. Prepare already wrote the canonical output (extract_signals.json for stage_11; coverage.json.final for stage_15). The downstream sibling consolidate stage will no-op.
"skipped" Skip dispatch. Emitted by coverage-critic-prepare for any of three reasons (carried in the manifest's reason field): no-critic (operator passed --no-critic), no-roster (loaded available_reviewers.json is empty — no project agents configured), or no-candidates (roster is non-empty but every reviewer is already in the initial plan — nothing left for the critic to propose). In all three, prepare wrote coverage.json.final with critic_status: "skipped". The downstream sibling consolidate stage will no-op.
"needs_agent" Spawn the singleton agent below.

Spawn contract

For status: "needs_agent", the manifest carries the inputs the agent needs:

Field Use
prompt_path The agent's system prompt path — pass as {PROMPT_PATH} below; the agent reads it itself.
input_path The bounded input bundle (taxonomy + diff summary + AVAILABLE list / etc.) — pass as {INPUT_PATH}; the agent reads it itself.
model Model tier for the dispatch (haiku for signal-extraction, sonnet for coverage-critic).

Read the full file on GitHub · 91 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 · 91 lines · 142 tokens per session scan A 3e0acb61e5fd

Subscribe to this mod's changes

singleton-dispatch is a skill published in the GitHub repository closedloop-ai/claude-plugins (103 stars, last pushed 4d ago), licensed Apache-2.0. It adds 142 tokens to every session and 1,647 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.