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.
npx agentmods add skills/albiol2004/trio-agent-loop/trionpx skills add albiol2004/trio-agent-loop --skill triogit clone --depth 1 https://github.com/albiol2004/trio-agent-loopWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/albiol2004/trio-agent-loop/trio)<a href="https://agentmods.dev/skills/albiol2004/trio-agent-loop/trio"><img src="https://agentmods.dev/badge/skills/albiol2004/trio-agent-loop/trio.svg" alt="Measured on agentmods" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00036 | $0.02403 |
| Opus 5 | $0.00018 | $0.01202 |
| Sonnet 5 | $0.00007 | $0.00481 |
| Haiku 4.5 | $0.00004 | $0.00240 |
Grade A, and why
trio 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 today.
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.
How it starts
The opening of the file, as written. The whole thing — 65 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are the orchestrator of a two-agent loop. You do no planning, implementing, or evaluating yourself — you sequence the two role agents, enforce stop conditions, and report to the human. One invocation of /trio = exactly one iteration. When the user asks to run/start/continue the trio loop in any phrasing (not a bare /trio), chain iterations end-to-end: reschedule promptly on ITERATE with no per-iteration checkpoint between Lead completion, the commit gate, Evaluator dispatch, and the next iteration — only SHIP/BLOCKED/NEEDS_HUMAN (or the iteration cap) stops the chain.
Mailbox directory: default loop/. If invoked with dir=<path> (e.g. /trio dir=loop-authz), that directory is the mailbox — every loop/ reference below means it, and every role prompt you write MUST name it as an absolute path (fresh-context agents have no other way to find it).
0. Preflight — decide whether to run at all
- Read
loop/STATE.md. If it does not exist, tell the user to run/trio-init <goal>first and STOP (if running under /loop, end the loop by not rescheduling).- Collision check: if STATE.md has a
mission:line, verify it still matches GOAL.md's mission sentence, and verify LOG.md's tail is consistent with the iterations you've been orchestrating. A mismatch means another session has repurposed this mailbox mid-loop: STOP immediately, do not write anything, and tell the human — the fix is separate mailbox dirs (/trio-init dir=loop-<name> …), never sharing one.
- Collision check: if STATE.md has a
- Read
loop/VERDICT.mdif it exists — its first line is machine-readable (VERDICT: SHIP|ITERATE|NEEDS_HUMAN|BLOCKED, with an optionalscope=designorscope=local:<paths>suffix on ITERATE); trust that line, not your reading of the prose. Apply stop conditions before doing any work:- Last verdict
SHIP→ announce completion (quote the Evaluator's retirement commit sha(s) fromloop/VERDICT.md'scommit:lines and follow-ups), end the loop. - Last verdict
BLOCKED→ surface the Evaluator's "what the human must decide" section to the user, end the loop. - Last verdict
NEEDS_HUMAN→ surface the Evaluator's## Human checksection to the user with its exact steps; the loop pauses until the human confirms or redirects. Do not start another iteration in the same turn. iteration >= max_iterationsin STATE.md → stop, summarize LOG.md, tell the user how to raise the cap in STATE.md and resume.- Plateau check: research shows iterate-loop gains flatten after ~3 iterations. From iteration 4 on, if the last verdict's "what changed" section shows the same checks still failing, treat it as BLOCKED (stuck) rather than starting another iteration.
- Last verdict
- Otherwise increment
iterationin STATE.md, setstatus: running, and proceed.
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.
- today Changed · +6 lines e46e5a4904f3
- 5d ago First seen · 59 lines · 36 tokens per session scan A f44b07a466a6
trio is a skill published in the GitHub repository albiol2004/trio-agent-loop (2 stars, last pushed 4d ago), licensed MIT. It adds 36 tokens to every session and 2,403 once invoked, about $0.0002 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-31.
Other skills, from other repositories
crit-cli
Use when an agent needs to author or reply to crit inline comments programmatically (including multi-agent workflows commenting on shared code/plans/docs/proposals), publish or unpublish a crit review with crit share, sync a crit review to or from a GitHub PR or GitLab MR, or read/interpret a crit review JSON file.…
crit
Review code changes, a plan, a live page (running dev server), or a local HTML file with Crit inline comments and structured human feedback. Use only when the user explicitly invokes /crit or directly asks to use Crit; a generic review request does not count.
crit-story
Author a crit story only when the user explicitly invokes crit-story or directly asks you to generate a crit story. Do not infer this skill from generic review, PR, or diff-review requests.
linked-intent-dev
Guide for linked-intent development (LID). Consult for ALL code changes. Walks changes through a mode-aware six-phase workflow (HLD → LLD → EARS → intent-narrowing edge audit → tests-first → code) with mandatory stops between each phase. Bugs walk the arrow like any other change — no short-circuit. Enforces cascade…
update-lid
Configure or reconcile a project for linked-intent development (LID). Dispatches on project state — fresh bootstrap, append directives to an existing agent-instructions file (AGENTS.md or CLAUDE.md), add missing mode marker, reconcile convention drift, or run mode transitions. Invoked as /update-lid. For fresh…
arrow-maintenance
Navigation and audit overlay for linked-intent development. Use when working with docs/arrows/ — orienting via index.yaml, auditing spec-to-code coherence, detecting reverse orphans and drift, splitting/merging/renaming/re-parenting segments. Dual-mode: ambient guidance when the overlay is present…