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 instructions/bitqs/slime/agents-mdgit clone --depth 1 https://github.com/bitqs/SlimeWhat 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.02038 | $0.02038 |
| Opus 5 | $0.01019 | $0.01019 |
| Sonnet 5 | $0.00408 | $0.00408 |
| Haiku 4.5 | $0.00204 | $0.00204 |
Grade A, and why
Slime AGENTS.md 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 yesterday.
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 — 141 lines — stays where its author put it; the contents beside it link to each section on GitHub.
AGENTS.md — read this first, then you can ship
The single onboarding doc for any coding agent or vibe-coder working on Slime.
Read it top to bottom and you can collaborate without breaking anything. It is
harness-neutral; CLAUDE.md is the Claude-Code-specific companion, and
docs/STRUCTURE.md is the full file-by-file map.
What Slime is
A zero-dependency, zero-build plugin that renders a real coding session as a turn-based RPG. Hooks observe every prompt and tool call and append battle events to an append-only stream; three read-only consumers visualize them — a statusline HUD, a tmux pane, and a PixiJS browser arena. Your work goals are the bosses; your plugins are your gear.
The prime directive (never violate)
Observer principle. The plugin must never change the real session. With Slime installed, the agent's behavior must be byte-identical to without it. Therefore:
- Hooks are fail-soft: whole body in
try/catch, alwaysprocess.exit(0), never block, no LLM calls in the hot path (the heuristiccore/estimate.jsexists precisely to avoid one). - Consumers (
statusline.js,watch.js,serve.js) are read-only w.r.t. game state. The sole exception:serve.jswrites thelangpreference toconfig.jsonon an explicit user click (POST /set-lang, 127.0.0.1-only, validated) — a UI preference, not game state, and it never touches Claude's session, so the observer principle still holds. Nothing else underSLIME_ROOTis written by a consumer.
The other hard rules
- Zero runtime deps, zero build. No npm install to run; no bundler; no
.tssource. TypeScript is dev-only via JSDoc +tsc --checkJs. The browser arena vendorspublic/vendor/pixi.min.js— never a CDN.devDependenciesare fine. - Statusline safety. Anything rendered to the terminal goes through
hud.sanitize(strips control chars / ANSI — state files are untrusted input replayed every keystroke). Arena DOM usestextContent/escHtml, neverinnerHTML. - Flash safety. Arena flashes are capped ≤3/sec by the sequencer governor;
?calm=1andprefers-reduced-motionmust keep degrading new effects. - Determinism / replay-stability. State is replayed from the event stream and
polled every keystroke. Do not use
Math.random()in render or hook hot paths — derive "randomness" from an event index/hash (seemapper'shash) so output is stable across replays. Money/XP/unlocks are persisted once, never re-derived. - i18n. User-facing strings live in
data/locales/{en,zh}.json(flat key→string;locale.tfalls back to en). Add both languages for every new key. Player resource is Token (boss HP keeps "HP"). - Test isolation. Every test sets
process.env.SLIME_ROOTto a tmpdir before requiring libs (ROOT is captured at require time) and cleans up after.
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.
- yesterday First seen · 141 lines · 2,038 tokens per session scan A 14d679a6ae58
Slime AGENTS.md is an instructions file published in the GitHub repository bitqs/Slime (1 stars, last pushed 2mo ago), licensed MIT. It adds 2,038 tokens to every session, about $0.0102 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 instructions, from other repositories
klaudiush CLAUDE.md
Instructions for smykla-skalski/klaudiush, covering claude.md, project overview, commands, completion (shell completion scripts) and doctor (diagnose setup and configuration).
vibeguard AGENTS.md
Instructions for majiayu000/vibeguard, covering agent instructions, scope, start here, core rules and delivery policy.
safedeps AGENTS.md
Instructions for aldegad/safedeps, covering agents.md — safedeps, engine support, architecture invariants (do not break), version ssot and docs.
cc-safe-setup CLAUDE.md
Instructions for yurukusa/cc-safe-setup, covering project rules, safety, code style and git.
mumei CLAUDE.md
Instructions for iroha924/mumei, covering mumei development guide, what mumei is, language policy, bash + jq conventions (essentials) and schemas/ conventions (essentials).
claudemd CLAUDE.md
Instructions for sdsrss/claudemd, covering code graph (repo-wide ast index) and claude-mem-lite — persistent memory.