skills/skill-agent-topology/SKILL.md
Audit whether a multi-agent setup earns its coordination cost — use before adding an agent, or when a workflow feels slow or agents agree without adding signal
npx skillsauth add nyldn/claude-octopus skill-agent-topologyInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Host: Codex CLI — This skill was designed for Claude Code and adapted for Codex. Cross-reference commands use installed skill names in Codex rather than
/octo:*slash commands. Use the active Codex shell and subagent tools. Do not claim a provider, model, or host subagent is available until the current session exposes it. For host tool equivalents, seeskills/blocks/codex-host-adapter.md.
Most advice about multi-agent systems is about how to add agents. This is about whether to. It audits a setup you already have, counts what each boundary between agents costs, and compares that against what the boundary buys. Removing an agent is a valid, and often the correct, result.
The framing comes from Liu, Canhui (2026), The Organizational Behavior of Agentic AI (arXiv:2606.30986), which models coordination overhead as contextual transaction cost — the cost of making task context usable across an agent boundary.
/octo:auto, which already routes
by intent, or skill-decision-support for a general option comparison.skill-intent-contract.skills/blocks/frontier-model-routing.md.If the setup is only described rather than run, say so in the output. An audit of a described topology is a prediction; an audit of a transcript is a measurement.
List every point where context crosses from one agent to another. Include the entry boundary (human to first agent) and the exit boundary (last agent to human) — they cost too, and the exit boundary is where synthesis quality is usually won or lost.
Count them. The number of boundaries, not the number of agents, is what drives coordination cost. Three agents in a star cost fewer crossings than three in a chain.
For each crossing, work through these and record only the ones that actually apply. Naming a cost that is not present is as unhelpful as missing one:
A boundary is earned only by a gain that a single agent could not produce:
skills/blocks/frontier-model-routing.md.The baseline is always one capable agent doing the whole task. The cited research found human-imitation topologies — pipelines, manager hierarchies, and committees deliberating in free text — measuring below that baseline, while agent-native forms built around shared memory measured above it. The single expert stays competitive precisely because it pays no internal transaction cost.
So the burden of proof falls on the boundary. Absent a gain term that a single agent could not deliver, the recommendation is to collapse.
Treat this as a directional prior, not proof. It is one simulation study plus model traces, and it is the source of the framing rather than a measurement of your setup. Effect sizes from that paper are deliberately not reproduced here: they describe the study's conditions, not yours.
One caveat that changes the reading, and must not be skipped. What the study
penalised was committee deliberation in free text with no independent evidence —
agents talking to each other about the same information. Providers that bring
genuinely independent evidence, different models with different training data
and real web search, are not that committee. /octo:debate and /octo:council
are therefore better positioned than the studied form. The problem those results
identify is the handoff, not the panel.
Do not invent a new "is this agent adding anything" metric. The council roster
already has one: council_persona_overlap_score in scripts/lib/council.sh
computes a Jaccard index over persona capability tokens, and the roster builder
drops a candidate above OCTOPUS_COUNCIL_DEDUP_THRESHOLD (default 0.65).
Apply the same idea one level down. Two agents whose inputs overlap that heavily are usually one agent with two prompts.
Prefer counting observed crossings over reasoning about intended ones. Workflows routinely skip or repeat boundaries at runtime.
Report in this order:
tools
Prototype one risky assumption within a fixed budget, then keep or discard the result
testing
Break a plan or spec into vertical slices that each declare what blocks them — use when work is agreed but not yet cut into fileable pieces
testing
Interrogate a plan, decision, or design one question at a time until it holds — use to stress-test your own thinking before committing to it
business
Move incoming issues and pull requests through triage states until each is actionable or closed — use when the queue has piled up or a report arrives unsorted