dojo-suite — all eight
bundle
All eight plugins in one install. It has no skills, agents, hooks or commands of its own: it only lists the eight below as dependencies, so installing it installs them, and it adds nothing to your always-on context.
- Components
- Dependencies:
dojo-protocol, dojo-gates, dojo-router, dojo-meter, dojo-verify, dojo-flow, dojo-doctor, dojo-settle
- Contents: a plugin manifest and nothing else
- Install
- In Claude Code
/plugin install dojo-suite@dojo-genesis
Or one at a time, for example/plugin install dojo-gates@dojo-genesis
- Kill switch
DOJO_OFF=1 turns off every hook in the suite. dojo-suite has no hooks and no switch of its own; each plugin's switch is on its card below.
early access Mods are early access. Enable them with export CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1 (or add it under env in ~/.claude/settings.json), then restart Claude Code. They load from dojo-router, dojo-meter and dojo-verify; dojo-suite includes all three, and if you installed plugins one at a time you need those three. Everything classic works without them.
dojo-protocol — session protocol
classic
The Dojo Protocol for Claude Code: ten rules at session start, a scout→contract→build→verify spine, and role agents pinned to the right model.
- Components
- Hook:
hooks/session_start.py (SessionStart) adds the ten rules to the session's context; a project's ./DOJO.md replaces the text
- Agents:
dojo-protocol:scout (haiku), dojo-protocol:builder (sonnet), dojo-protocol:reviewer (sonnet), dojo-protocol:judge (opus)
- Skills:
protocol, scout-first, contract, refute, delegate
- Output style:
status-and-path (a status line first; big deliverables go to a file and come back as a path)
- Install
- In Claude Code
/plugin install dojo-protocol@dojo-genesis
- Kill switch
DOJO_OFF=1 or DOJO_PROTOCOL_OFF=1. A project's ./DOJO.md replaces the text.
dojo-gates — tool guards
classic
Deterministic guards for the mistakes that waste a day: blanket staging, rewriting pushed commits, printing secrets, oversized reads, silent probes.
- Components
- Skill:
gates (what each guard does, the ids, the overrides)
- Hooks: the guards listed below, each with an id
- Guards
staging refuses blanket staging (git add with -A, --all or a dot, and git commit -a) and suggests explicit paths
pushed-rewrite refuses amend, rebase, hard reset and force-push when the commits are already on a remote; allows them when they aren't
secret-print refuses commands that print secret-shaped environment variables or read .env files
token-url refuses token-shaped strings inside URLs and arguments to git and curl
big-read refuses a whole-file read of a large file and suggests grep or an offset and limit
mac-timeout on macOS, refuses the timeout command when it isn't installed and says the fix
masked-exit warns when a test or build piped into tail, head or grep is followed by a commit or push, because the pipe hides the exit code
config-first after a 401, a refused connection or a missing command, adds a note to check env, settings and credentials before logic (once per session per pattern)
empty-probe after a search or probe that printed nothing, adds a note: prove it can see a known positive before trusting the negative (once per session)
claude-md-reach off by default (the claude_md_reach setting turns it on); when enabled, denies the first edit under a directory whose nearest CLAUDE.md was never loaded this session, once, and names the file to read
- Install
- In Claude Code
/plugin install dojo-gates@dojo-genesis
- Kill switch
DOJO_OFF=1 or DOJO_GATES_OFF=1. Skip single guards with DOJO_GATES_SKIP=<id>,<id>.
dojo-router — model router
classic + mod
No subagent silently inherits your most expensive model. Warns or blocks unpinned dispatches; the mod routes them by role.
- Components
- Hook:
hooks/agent_model.py (PreToolUse on Agent and Task) warns, or blocks in block mode, when a subagent names no model
- Hook:
hooks/workflow_models.py (PreToolUse on Workflow) lists workflow agents that name no model
- Mod:
hooks/register.ts fills in the model by role and shows the routed model in the status line
- Skill:
router (the role table, and how to set model on a call and in a workflow)
- Settings:
mode, default_tier, explore_tier, auto_route, opus_cap
- Install
- In Claude Code
/plugin install dojo-router@dojo-genesis
- Kill switch
DOJO_OFF=1 or DOJO_ROUTER_OFF=1. The mode setting takes warn, block or off; auto_route turns the mod's routing off.
early access Mod: early access. It needs function hooks (CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1); the classic hooks above work without them.
dojo-meter — cost report
classic + mod
See what each turn, agent and model costs, and how big your context is: a cost report from your transcripts, and a live band with the mod.
- Components
- Command:
/dojo-meter:cost reads your transcripts and prints a table by model and by main thread versus subagents. It's an estimate at list prices; unknown models show as unpriced, never as zero
- Mod:
hooks/register.ts keeps a live band (session estimate, context size, cache-read share) and warns near a budget or a large context
- Command:
/dojo-meter:band toggles the band
- Settings:
show_band, budget_usd, context_warn_tokens
- Install
- In Claude Code
/plugin install dojo-meter@dojo-genesis
- Kill switch
DOJO_OFF=1 or DOJO_METER_OFF=1. The show_band setting hides the band.
early access Mod: early access. It needs function hooks (CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1); the /dojo-meter:cost command above works without them.
dojo-verify — evidence check
classic + mod
"Done" means a check ran and passed in this session. Flags claims of success with no evidence behind them.
- Components
- Hook:
hooks/stop_evidence.py (Stop) blocks a final message that claims success when no check has passed since your last edit, and never blocks twice in a row
- Skill:
evidence (a report is a claim; load the real page after a deploy; empty output isn't evidence)
- Mod:
hooks/register.ts shows an UNVERIFIED status and a dispatched, returned and failed tally for agents
- Settings:
mode, show_status, toast_unverified
- Install
- In Claude Code
/plugin install dojo-verify@dojo-genesis
- Kill switch
DOJO_OFF=1 or DOJO_VERIFY_OFF=1. The mode setting takes block, warn or off; show_status and toast_unverified quiet the mod.
early access Mod: early access. It needs function hooks (CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1); the classic hooks above work without them.
dojo-flow — workflow DAGs
workflows
Parallel builds that stay independent: a contract gate, scouts on small models, builders in the middle, judges at the ends, and a scorecard that counts returns.
- Components
- Workflow:
build runs Contract, Scout, Advise, Build, Integrate and Audit; its Contract phase refuses tracks that overlap
- Workflow:
converge runs audit lenses, adversarial verification of each finding, optional fixes and a gate
- Commands:
/dojo-flow:build, /dojo-flow:converge
- Skill:
dag-plan (how to cut a goal into independent tracks, and report returns instead of dispatches)
- Script:
scripts/dag_ops.py (validate, width, critical path, cone)
- Install
- In Claude Code
/plugin install dojo-flow@dojo-genesis
- Kill switch
- No hooks. Nothing runs unless you call it. To turn it off, disable or uninstall it with
/plugin.
dojo-doctor — config doctor
classic
Find the hooks and settings that fail or cost you silently: broken interpreters, noisy injections, always-on token weight, flags that are off.
- Components
- Command:
/dojo-doctor:check runs scripts/doctor.py, which only reads. It never runs your hook commands
- Sections: interpreters, hook failures in recent transcripts, injection weight, always-on weight (an estimate), the function-hooks flag, the python3 version
- Skill:
doctor (when to run it, how to read it)
- Install
- In Claude Code
/plugin install dojo-doctor@dojo-genesis
- Kill switch
- No hooks. Nothing runs unless you call it. To turn it off, disable or uninstall it with
/plugin.
dojo-settle — decision experiments
classic
Settle claims with evidence: pre-registered experiments, with/without baselines and decision gates before anything becomes a number.
- Components
- Skills:
settle, decision-gate, eval-kit
- Script:
scripts/prereg.py writes a pre-registration file with a hash of the decision rule, and verifies it later
- Templates:
templates/case.yaml, templates/prereg.md. They are scaffolds; the with/without eval hasn't been run
- Install
- In Claude Code
/plugin install dojo-settle@dojo-genesis
- Kill switch
- No hooks. Nothing runs unless you call it. To turn it off, disable or uninstall it with
/plugin.