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/xiaomimimo/mimo-code/evolvenpx skills add XiaomiMiMo/MiMo-Code --skill evolvegit clone --depth 1 https://github.com/XiaomiMiMo/MiMo-CodeWhat 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.00000 | $0.01627 |
| Opus 5 | $0.00000 | $0.00813 |
| Sonnet 5 | $0.00000 | $0.00325 |
| Haiku 4.5 | $0.00000 | $0.00163 |
Grade C, and why
evolve scanned grade C with 1 finding 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 2d 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.
Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
if (input.tool === "bash" && output.args.command?.includes("rm -rf /")) { How it starts
The opening of the file, as written. The whole thing — 151 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Evolve — Total Self-Modification
Every layer of you is rewritable by writing files to .mimocode/ (reload semantics differ per layer — see File Locations):
- What you can do — create tools, or override any built-in (bash, read, edit, ...) with your own implementation
- How you behave — hooks intercept everything: every tool call (block/rewrite args/rewrite output), every LLM request (system prompt, message list, temperature, headers), every session and subagent lifecycle event (cancel a run before it starts, gate a subagent's delivery and force it to redo work, inspect full trajectories after each step)
- What you know — skills persist domain knowledge across sessions
- How you orchestrate — workflow scripts encode multi-agent pipelines deterministically
- What the user sees — TUI plugins add panels, commands, dialogs, routes to the interface itself
This skill is not documentation — it is a standing instruction to notice when you should evolve, and act on it.
When to evolve (triggers)
Act on these signals — don't wait for the user to ask:
| Signal | Action |
|---|---|
| You ran the same bash/API sequence 3+ times (this or past sessions) | Wrap it into a tool |
| You keep making the same mistake, or the user keeps correcting the same behavior | Add a hook to block/fix it structurally |
| You learned non-obvious project knowledge that future sessions will need | Write a skill to persist it |
| A built-in tool's behavior conflicts with project needs | Override it (same-name tool) |
| A workflow you hand-orchestrated worked well and may repeat | Save it as a workflow script |
Before creating: check whether the extension already exists (ls .mimocode/tools .mimocode/hooks .mimocode/skills). Prefer improving an existing one over adding a near-duplicate.
Decision flow
Need to change WHAT you can do → tool (new capability, wraps commands/APIs)
Need to change HOW you behave → hook (intercept/modify/block existing behavior)
Need to remember HOW to do X → skill (knowledge, loaded on demand)
Need to redo a multi-agent run → workflow (.mimocode/workflows/*.js)
Need to change the UI → TUI plugin (.mimocode/tui/*.tsx)
What ships with it
4 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.
- 2d ago First seen · 151 lines · 0 tokens per session scan C bccaa16d489f
evolve is a skill published in the GitHub repository XiaomiMiMo/MiMo-Code (12,904 stars, last pushed 2d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,627 tokens. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
xiaomi-tts
Use this skill when the user wants to convert text to speech using Xiaomi MiMo's TTS models (mimo-v2.5-tts). Uses OpenAI-compatible chat/completions API with audio response. Supports multiple preset voices and custom voice design. Use when 用户提到 语音合成、文字转语音、TTS、朗读、读出来、生成语音、 生成音频、文本转音频、配音、念出来、小米语音、MiMo 语音、小米 TTS。.
byok-custom-model
Register a custom LLM endpoint with your own API key for chat in Starchild. Use when adding a personal Anthropic, OpenAI, Grok, Qwen, DeepSeek, Meta (Muse Spark), NEAR AI, or Venice key as a chat model (e.g. add my Claude key, register DeepSeek, use Muse Spark 1.1).
deepseek-vision
MUST use when the user sends or asks about images, photos, screenshots, pictures, audio, video, or mixed media documents, including requests to OCR/read text from an image. Route all media through Xiaomi MiMo V2.5 (mimo-v2.5) and mimo-v2.5-asr via scripts/mimo.py; never use local OCR, viewimage, native vision…
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
babysit-pr
Babysit a GitHub pull request after creation by continuously polling review comments, CI checks/workflow runs, and mergeability state until the PR is merged/closed or user help is required. Diagnose failures, retry likely flaky failures up to 3 times, auto-fix/push branch-related issues when appropriate, and keep…