Automation shape routing
Skill boshu2/agentops/images/gemini/skills/automation-shape-routing
The operating loop a coding agent follows — and skills to orchestrate multi-agent systems.
npx -y skills add boshu2/agentops --skill automation-shape-routingAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Front door for agent automation: choose inline, bounded fanout, reusable skill/workflow/gate, persistent agent-native workers, or explicit Gas City. Triggers: "build automation", "which orchestration shape", "should this use NTM".
SKILL.md
5.8 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
Automation Shape Routing
Choose the smallest execution shape that preserves the required evidence and control. This skill routes; it does not build or start a substrate.
Ordered routing works because each rung is strictly cheaper to operate than the next: if the smallest shape truly preserves the evidence and control the task needs, every larger shape can only add coordination cost, never correctness.
Named failure mode — substrate romance: routing to persistent workers because the topology is interesting, not because any deciding axis demands it.
Anti-pattern: starting the chosen substrate as part of routing "to save a step". Corrective: return the one-line verdict and let the owner start under its own authority.
Critical Constraints
- Route only; do not start a substrate. Why: choosing an execution shape is a judgment step, while launching NTM, Agent Mail, or Gas City changes runtime state and requires separate operator authority.
- Prefer the smallest shape that preserves evidence. Why: persistence and coordination add recovery and ownership costs that one-shot work cannot repay.
- Partition write scopes before choosing concurrency. Why: a larger worker topology cannot make overlapping production writes safe.
Route in order
- One deliverable? Do it inline. Use a small in-session fresh-context fanout only when independent perspectives are the product. Do not create a reusable artifact for a one-off task.
- Reusable sequential procedure? Use
skill-builder. - Must-never-regress constraint? Route through
operationalizeto a gate. - Fixed typed DAG, headless, no attach/steer? Use
workflow-builderonly where that runtime is explicitly selected and available. - Persistent, attachable roles over caller-supplied packets? Use
agent-native. NTM is the pane adapter; Agent Mail coordinates only explicitly selected live actors. - Durable city of quests with GC-native supervision/store? Route to
using-gconly when the operator explicitly selects Gas City. GC is not an automatic fallback or anaoruntime enum.
Deciding axes
| Axis | Lightweight choice | Escalated choice |
|---|---|---|
| lifetime | current turn | persistent/attachable worker |
| topology | one writer or bounded fanout | durable role graph |
| control | no mid-run steering | observe/nudge/replace |
| output | one artifact | reusable skill/workflow/gate |
| store | caller-owned packet set | operator-selected GC quest store |
| contention | one writer | partition, then Agent Mail reservation |
Parallelism buys independence, not guaranteed speed. Refuse persistent orchestration for one-shot work, colliding write scopes, or a sequential chain that has no exploitable concurrency.
Handoff
Return exactly one of:
inlineorbounded-fanoutskill-builderworkflow-builderagent-nativewith a named reason persistent panes helpusing-gcwith explicit operator choiceoperationalize:gate
Name the deciding axis and invoke the owner. Do not copy the delegated workflow into this router.
Output Specification
-
Artifact directory: stdout only; this routing decision creates no file.
-
Filename convention: none. Emit exactly one routing-verdict line.
-
Serialization/schema format:
shape=<allowed-shape>; axis=<deciding-axis>; owner=<owning-skill>using one of the shapes listed under Handoff. -
Owner mapping:
inlineandbounded-fanoutusecurrent-agent;skill-builder,workflow-builder,agent-native, andusing-gcuse the same value for owner;operationalize:gateusesoperationalize. -
Validator command: validate a captured
$verdictas exactly one line with the declared shape/owner mapping:printf '%s\n' "$verdict" | awk ' NR > 1 { extra = 1 } { valid = ($0 ~ /^shape=(inline|bounded-fanout); axis=[^;]+; owner=current-agent$/ || $0 ~ /^shape=skill-builder; axis=[^;]+; owner=skill-builder$/ || $0 ~ /^shape=workflow-builder; axis=[^;]+; owner=workflow-builder$/ || $0 ~ /^shape=agent-native; axis=[^;]+; owner=agent-native$/ || $0 ~ /^shape=using-gc; axis=[^;]+; owner=using-gc$/ || $0 ~ /^shape=operationalize:gate; axis=[^;]+; owner=operationalize$/) } END { exit !(NR == 1 && !extra && valid) } ' -
Downstream handoff: invoke the named owner only after returning the verdict;
inlineremains in the current agent andbounded-fanoutremains in-session.
Quality Rubric
- The verdict names exactly one allowed shape and one deciding axis.
- Persistent or city-shaped routes cite the operator's explicit selection.
- Concurrent routes state that production write scopes do not overlap.
- The router delegates to the owner without copying or starting its workflow.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.
Gives 0 of the 12 instructions most automation workflows skills give in ~1.1k tokens
Counted across 745 of the 1,008 authors here whose files we hold, read 2026-08-07
- Write conventional commit messagesin 36 of 745, across 35 files
- Delete branches after mergein 30 of 745, across 21 files
- Make atomic commitsin 25 of 745, across 15 files
- Write minimal code to pass testsin 22 of 745, across 10 files
- Re-snapshot after navigation or DOM changesin 21 of 745, across 13 files
- Use try-catch for error handlingin 20 of 745, across 8 files
- Run tests before committingin 20 of 745, across 12 files
- Write tests before implementationin 20 of 745, across 8 files
- Configure branch protection rulesin 19 of 745, across 5 files
- Explain the why in commit messagesin 19 of 745, across 9 files
- Refactor code while tests remain greenin 19 of 745, across 6 files
- Interact with elements using refsin 19 of 745, across 11 files
Said here and by no other author read
- choose the smallest execution shape preserving evidence
- route only without starting a substrate
- partition write scopes before choosing concurrency
- perform one-off deliverables inline
- use skill-builder for reusable sequential procedures
- route must-never-regress constraints through operationalize
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.