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 skills add gaasher/Agent-Loop-Skills --skill tournament-autoresearchgit clone --depth 1 https://github.com/gaasher/Agent-Loop-SkillsWrote 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/gaasher/agent-loop-skills/tournament-autoresearch)<a href="https://agentmods.dev/skills/gaasher/agent-loop-skills/tournament-autoresearch"><img src="https://agentmods.dev/badge/skills/gaasher/agent-loop-skills/tournament-autoresearch/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/gaasher/agent-loop-skills/tournament-autoresearch"><img src="https://agentmods.dev/badge/skills/gaasher/agent-loop-skills/tournament-autoresearch.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Tool Misuse · line 128 Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).Fix: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults.
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.1 | $0.00152 | $0.03035 |
| Opus 5 | $0.00076 | $0.01517 |
| Sonnet 5 | $0.00030 | $0.00607 |
| Haiku 4.5 | $0.00015 | $0.00303 |
Grade A, and why
tournament-autoresearch 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 10d 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.
How it starts
The opening of the file, as written. The whole thing — 187 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Tournament Autoresearch Loop
An ML autoresearch loop whose single "form a hypothesis" step is replaced by an idea tournament.
The artifact is an experiment ledger; the feedback signal is the realized <metric> delta of the
change that won the tournament. Each iteration <n> ResearchAgents propose competing architecture
changes, a Judge critiques and ranks them, the proposers refine, and the Judge selects one
change to run. The Judge is the orchestrator and self-calibrates: it scores its predictions
against realized results, so it learns which kinds of ideas actually pay off. The experiment mechanics
(snapshot → run → mandatory analysis → keep/revert) match the sibling ml-autoresearch loop.
When to use
Use this for open-ended ML experimentation where competing ideas should be vetted before compute is
spent and the picker should improve over time. You are the Judge: adopt roles/Judge.md and spawn
the proposers with roles/ResearchAgent.md. Default to <n> competing proposers with one refine
round; widen <n> or add rounds when ideas are converging too fast. Not for running a single
pre-decided experiment, and not for analysis-only exploration over a dataset — for one uncompeted
hypothesis per iteration use the sibling ml-autoresearch loop.
The cast and files (all in this folder):
roles/Judge.md— your behavior: critique, rank, decide, self-calibrate.roles/ResearchAgent.md— the proposer role, spawned<n>times each round.rubrics/rubric.md— the scoring criteria (shipped defaults; copied to a working copy at setup).schemas/idea.schema.json— what a proposer returns (one proposed change).schemas/verdict.schema.json— what the Judge records per idea (scores, rank, decision).
Setup
Resolve bindings interactively. If loop.run.yaml exists in the working dir, load it, confirm the
values in one line, and skip to the loop. Otherwise: on Claude Code (the AskUserQuestion tool is
available) infer a likely value for each binding and present it as the recommended option; on other
hosts ask each as a quoted plain-text prompt. Then write loop.run.yaml (format:
examples/run.example.yaml) and confirm the values before creating any other files.
What ships with it
6 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 10d ago First seen · 187 lines · 152 tokens per session scan A 65371be3a55e
tournament-autoresearch is a skill published in the GitHub repository gaasher/Agent-Loop-Skills (169 stars, last pushed 2mo ago), licensed MIT. It adds 152 tokens to every session and 3,035 once invoked, about $0.0008 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.
Other skills, from other repositories
cerna-analysis
Use when building a ceRNA regulatory network from a key gene list by combining bundled miRNA-mRNA and miRNA-lncRNA database files, with flat-file CSV exports and PDF visualization in a single output directory. NOT for: differential expression, single-cell analysis, enrichment analysis, or workflows without a key gene…
cibersort-immune-infiltration-analysis
Use when estimating relative immune cell infiltration from a bulk expression matrix with a CIBERSORT-style nu-SVR deconvolution workflow based on an LM22 signature matrix, comparing one case group against one control group, and generating structured tables plus immune-fraction plots. NOT for single-cell RNA-seq…
gene-protein-expression-matrix-normalization
Use when normalizing bulk gene or protein expression matrices with log2 transform, z-score standardization, or min-max scaling before downstream visualization or exploratory analysis. NOT for count-model normalization such as TPM/DESeq2 size factors, batch correction, or single-cell preprocessing.
template-autoresearch-project
AutoResearch loop exemplar — deterministic ML candidate evaluation, evidence registries, claim ledgers, artifact manifests, readiness gates.
autoresearch-ml
Autonomous LLM training optimization with GPU support. Runs 5-minute training experiments, measures valbpb, keeps improvements or reverts — repeat forever. Use this skill when the user asks to "train a model autonomously", "optimize LLM training", "run ML experiments", "autoresearch with GPU", "optimize valbpb"…
autoresearch-ml-skill
Autonomous ML training research loop (NVIDIA GPU required) — modify train.py, run fixed-budget experiment, parse valbpb, keep/revert. karpathy-style.