À propos
La compétence dojo est une boucle d'entraînement d'auto-amélioration qui utilise le temps de quota excédentaire pour analyser automatiquement le graphique ax, exécuter des expériences et générer des rapports. Elle se déclenche via des commandes spécifiques comme "/dojo" et nécessite axctl dans le PATH, en utilisant DuckDB embarqué sans démon de base de données. Les développeurs doivent l'utiliser pour le backtesting automatisé, la génération de propositions et le signalement de problèmes pendant les fenêtres de quota inutilisées.
Installation rapide
Claude Code
Recommandénpx skills add Necmttn/ax -a claude-code/plugin add https://github.com/Necmttn/axgit clone https://github.com/Necmttn/ax.git ~/.claude/skills/dojoCopiez et collez cette commande dans Claude Code pour installer cette compétence
Documentation
ax:dojo - overnight training loop
You are entering a budget-bounded self-improvement loop. The brain is
ax dojo agenda --json; you are the thin driver. Spec:
docs/superpowers/specs/2026-06-13-ax-dojo-design.md (in the Necmttn/ax repo).
Entry
- Run
ax dojo agenda --json. If it fails with a connection error, tell the user to runax doctorand STOP. - If
budget.has_surplusis false: report the envelope and STOP unless the user re-invokes with--force(then pass--forceon every lap). - On Claude Code: enter loop mode now - invoke the
/loopskill with/dojoas the recurring prompt (dynamic mode, self-paced). Each wakeup re-runs this skill from the top; that is expected and correct. On Codex (no /loop): run as ONE long turn - do not end the turn until a stop condition below is met.
The lap
ax dojo agenda --json-> agenda.- STOP conditions (write the report, then stop):
budget.has_surplusis false- now >=
budget.deadline itemsis empty
- Otherwise: take
items[0], follow its playbook below, then go to 1. Completed work self-clears: the item vanishes from the next agenda because the underlying system recorded it (verdict locked, brief consumed, proposal created). If the same item survives 2 laps untouched, skip it and note why in the report.
Playbooks by kind
- verdict_pending -
ax improve verdict <id>to see the suggested verdict + checkpoint evidence; confirm with--set <verdict>only when the evidence supports it. Distinguish "pattern resolved" from "artifact never fired" before locking no_longer_needed. - brief_unfilled - open the
.ax/tasks/*.mdbrief, do what it says in the target files, then run the reconciler it names (ax skills lint/ax improve lint). - routing_backtest - judgment-flagged routing classes: backtest the
pattern against dispatch history (
ax dispatches --candidates), check false-positive risk, thenax routing tune --apply=<ids> --days=<window>or reject with a written rationale in the report. - proposal_mint -
ax improve recommend; accept the grounded ones (ax improve accept <id>) so briefs exist for the next lap. - experiment - heavy item. Work ONLY in a fresh worktree
(
git worktree add .claude/worktrees/dojo-<slug> -b dojo/<slug>). Reproduce the churn pattern, attempt the fix/hook/skill, capture evidence. If it will not finish inside this budget: package it as a goal file (objective + checkpoint index + gates) under docs/superpowers/goals/ so the NEXT dojo session resumes it. Output = an improve proposal; merging the proposal is what activates anything. NEVER merge, never touch main. - New hooks specifically - author via @ax/hooks-sdk, then run BOTH
validators and embed their output in the proposal:
ax hooks backtest <file> --json→ cases caught (benefit side): would-block/ would-warn rates, false-positive count, cases with evidence.ax hooks bench <file> --json→ per-fire p50/p95 from real bun spawns, est fires/day from tool_call history, installed-chain budget vs --budget-ms default 250 (cost side). Reject the hook when daily cost (fires/day × p95) or an installed-chain budget overrun outweighs the benefit shown by backtest. Both ledgers must appear in the proposal; neither alone is sufficient.
- spar - only present when invoked with --spar and spendable >= 30%.
One task, one delta, scored. Concrete flow:
- Pick a landed task:
ax sessions here --days=30- note its commit sha fromax sessions near <sha>orgit log. ax dojo spar-plan <sha>- captures the baseline (prompt + cost/turns/churn) and writes~/.ax/dojo/spar/<id>.md; the command prints the exactgit worktree addcommand to run next.- Read the brief at
~/.ax/dojo/spar/<id>.md; run the printedgit worktree add .claude/worktrees/dojo-spar-<id> -b dojo/spar-<id> <parentSha>command to pin the worktree at the parent SHA. - Apply exactly ONE delta in the delta section (skill on/off, hook on/off, prompt change, thinking level, or model override) - no compound changes.
- Do the task in that worktree; let it finish naturally.
ax dojo spar-score <id>- auto-discovers the variant session from the worktree cwd; or pass--variant-session=<id>if there are multiple sessions. Writes the receipt to~/.ax/dojo/spar/<id>-report.md.- Append the receipt to the dojo report. Track multi-run campaigns as goal files under docs/superpowers/goals/ so the next session can resume.
- Pick a landed task:
- explore - free investigation, retro-meta style: follow a hunch
through
ax recall/ax sessions churn, and convert anything real into a proposal or outbox draft. - Upstream findings (any lap) - an ax bug or improvement found while
training (items of kind
upstream_draftare handled by this same rule): runax dojo draft --title=<title> --kind=bug|improvementto stage it to~/.ax/dojo/outbox/<slug>.md(complete issue draft: title, body, repro, session refs written by the command). NEVER publish from the dojo - the user reviews and publishes in the morning (ax-repo skill / gh).
Exit - the morning report
Run ax dojo report --since=<loop-start-iso> --notes-file=<lap-notes-path> to
write ~/.ax/dojo/reports/<YYYY-MM-DD>.md. The command collects the budget
envelope, per-lap item log (from the lap notes file), proposals created,
verdicts locked, and outbox drafts awaiting review - pass it the ISO timestamp
you recorded when the loop started and the scratch file you appended notes to.
Then tell the user the report path and the top 3 things awaiting their review.
For upstream findings (ax bugs or improvements discovered during training), stage
them with ax dojo draft --title=<title> --kind=bug|improvement before the
report step - never publish directly. The draft lands in
~/.ax/dojo/outbox/<slug>.md; the user reviews and publishes via ax-repo skill /
gh in the morning.
Hard rails
- worktrees only; never write on main; never merge anything
- proposals are the only activation path
- outbox only; nothing leaves the machine
- respect the deadline even mid-item: checkpoint, report, stop
Dépôt GitHub
Questions fréquentes
Qu’est-ce que le Skill dojo ?
dojo est un Skill Claude créé par Necmttn. Un Skill regroupe des instructions et des ressources que Claude charge à la demande pour effectuer des tâches liées à dojo sans consigne supplémentaire.
Comment installer dojo ?
Utilisez les commandes d’installation de cette page : ajoutez dojo à Claude Code comme plugin ou clonez son dépôt dans votre dossier skills, puis redémarrez Claude pour charger le Skill.
À quelle catégorie appartient dojo ?
dojo appartient à la catégorie Tests.
dojo est-il gratuit ?
Oui. dojo est référencé sur AIMCP et son installation est gratuite.
Compétences associées
Cette compétence Claude exécute le lm-evaluation-harness pour évaluer les modèles de langage sur plus de 60 tâches académiques standardisées telles que MMLU et GSM8K. Elle est conçue pour permettre aux développeurs de comparer la qualité des modèles, de suivre les progrès de l'entraînement ou de rapporter des résultats académiques. L'outil prend en charge différents backends, incluant les modèles HuggingFace et vLLM.
Cette compétence fournit une connaissance complète pour la mise en œuvre de Déclencheurs Cron Cloudflare afin de planifier des Workers à l'aide d'expressions cron. Elle couvre la configuration de tâches périodiques, de travaux de maintenance et de flux de travail automatisés, tout en traitant des problèmes courants tels que les expressions cron non valides et les problèmes de fuseau horaire. Les développeurs peuvent l'utiliser pour configurer des gestionnaires planifiés, tester des déclencheurs cron et intégrer avec Workflows et Green Compute.
Cette Compétence Claude fournit une boîte à outils basée sur Playwright pour tester des applications web locales via des scripts Python. Elle permet la vérification frontend, le débogage d'interface utilisateur, la capture d'écrans et la consultation des journaux, tout en gérant les cycles de vie du serveur. Utilisez-la pour les tâches d'automatisation de navigateur, mais exécutez les scripts directement plutôt que de lire leur code source pour éviter la pollution du contexte.
Cette compétence aide les développeurs à finaliser leur travail en vérifiant que les tests passent, puis en présentant des options d'intégration structurées. Elle guide le processus de fusion, de création de PRs ou de nettoyage des branches une fois l'implémentation terminée. Utilisez-la lorsque votre code est prêt et testé pour finaliser systématiquement le cycle de développement.
