Agent skill

MiMoCode Self-Help Docs

by XiaomiMiMo in XiaomiMiMo/MiMo-Code

Lets MiMoCode answer questions about itself, including its modes, commands, keybindings, providers and config files, and change its own configuration without guessing schema fields.

MITAuto-check passedAgent Workflows

Install MiMoCode Self-Help Docs

skills CLI
$ npx skills add XiaomiMiMo/MiMo-Code --skill mimocode-docs -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install XiaomiMiMo/MiMo-Code mimocode-docs --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/XiaomiMiMo/MiMo-Code.git skills-src && mkdir -p .claude/skills && cp -r skills-src/packages/cli/src/skill/builtin/.bundle/mimocode-docs .claude/skills/mimocode-docs && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
mimocode-docs
GitHub stars
14k
Token cost
~2.7k tokens
SKILL.md length
1,198 words
Files
9
Skills in repo
22
Repo updated
First seen
Licence
MIT

At a glance

Lets MiMoCode answer questions about itself, including its modes, commands, keybindings, providers and config files, and change its own configuration without guessing schema fields.

  • Works in 7 steps: Read the routed reference and identify… → Determine scope from the request. Treat… → Inspect only the exact config… → …
  • Asking how to switch between build, plan and compose modes
  • SKILL.md covers Identity, Feature Map, Configuration Basics and Reference routing, plus 5 more sections
  • Reaches mimo.xiaomi.com

What it does

This skill is the agent's reference for MiMoCode, a terminal-based coding agent whose CLI binary is `mimo` and which is built as a fork of OpenCode. A feature map covers the build, plan and compose agent modes, subagents, persistent memory, context management, the task tree, the `/goal` stop condition and compose workflows, and says how to reach each one. Mode rules are spelled out: only the user enters a mode, and a mode locks after the first message, except that build and plan still switch freely.

It is also the first stop for setup questions: custom OpenAI-compatible or Anthropic-compatible endpoints, base URLs, API keys, model names, global or project `mimocode.json` files, `mimo llm-server` task tokens and how to expose a port for them. The approach is to inspect the existing configuration safely, make minimal changes and verify them instead of guessing schema fields or model capabilities. Reference files cover commands, config, providers, permissions, MCP sampling, workflows and the capability API.

When your agent uses it

  • Asking how to switch between build, plan and compose modes
  • Adding a custom OpenAI-compatible provider with a base URL and API key
  • Finding where MiMoCode keeps its global or project configuration
  • Diagnosing TUI lag, rendering glitches or SSH rendering problems
  • Letting a script borrow this instance's models through its local /v1 endpoint

Example prompts

  • “How do I leave plan mode so the agent can start editing files?”
  • “Point MiMoCode at my company's OpenAI-compatible gateway and set the model name.”
  • “Why is the terminal UI laggy over SSH, and what can I change?”
  • “Which key cycles between the primary agents?”

Requirements

  • MiMoCode (the `mimo` CLI)

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. Read the routed reference and identify the exact schema fields. Do not infer fields from another tool's config format.
  2. Determine scope from the request. Treat model/provider setup as global unless the user says it is project-only; use project config for…
  3. Inspect only the exact config candidates. Never recursively search the user's home directory. Prefer an existing higher-precedence .jsonc…
  4. Keep secrets out of tool output and the final response. When inspecting a config, redact values for keys such as apiKey, token, secret…
  5. Edit minimally. If the request says configure, use, or make default, also set the top-level model; if it only says add, leave the current…
  6. When persisting a newly supplied API key and model, also put that exact provider/model at the front of the TUI recent-model state so the…
  7. Validate the parsed configuration with the narrowest relevant command and report the config and recent-model state files changed, selected…

What it can do on your machine

Read from SKILL.md and the folder at commit 6babeb0. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are jsonc).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • mimo.xiaomi.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

MiMoCode Self-Help Docs loads about 2.7k tokens when it runs. Until then it costs about 256 tokens; SKILL.md has 1,198 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~256
When it runs · the whole SKILL.md, loaded when a task matches
~2.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from XiaomiMiMo/MiMo-Code at commit 6babeb0, republished under its MIT licence (© XiaomiMiMo). 1,198 words, ~2,668 tokens.

Download SKILL.mdSave it as .claude/skills/mimocode-docs/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.
name
mimocode-docs
description
Use whenever the user asks about MiMoCode itself: features, TUI or CLI commands, keybindings, terminal compatibility, rendering glitches, TUI lag, SSH or remote rendering, agent modes (build / plan / compose) and how to switch between them, configuration, file locations, providers, models, authentication, or custom OpenAI-compatible or Anthropic-compatible API endpoints. Especially trigger when a prompt supplies or asks to configure a base URL/baseURL, API key/apiKey, model name or ID, provider, Anthropic Messages API, or global/project mimocode.json/jsonc, or when the user asks how to enter or leave plan mode. Also trigger when a skill, task, subprocess, or external client needs to borrow this instance's models — the OpenAI-compatible /v1 chat endpoints every MiMoCode server serves, `mimo llm-server` task tokens, or how to expose a listening port for them. Use this skill to inspect existing config safely, make minimal changes, and verify them without guessing schema fields or model capabilities.

MiMoCode

You are MiMoCode. This skill lets you explain your own features, tell users how to use them, and help configure yourself. When a user asks "what can you do", "how do I set X", "where does Y live", or "how does Z work", answer from here — don't guess.

Identity

MiMoCode (CLI binary mimo) is an agentic coding tool with a terminal UI, built as a fork of OpenCode. Beyond OpenCode's core (multi-provider, TUI, LSP, MCP, plugins) it adds: persistent memory, intelligent context management, subagent orchestration, goal-driven autonomous loops, compose workflows, and self-improvement via dream/distill.

Feature Map

FeatureWhat it isHow to reach it
Agents / modesbuild (default, full tools), plan (read-only analysis), compose (specs-driven orchestration), plus custom modes you define. Mode locks after the first message (Build↔Plan still switch freely; Compose is isolated). Only the user enters a mode — no tool lets the agent switch into plan, and the agent does not raise plan mode unasked; from inside plan the agent can call plan_exit to ask for approval and hand the plan back to buildTab cycles primary agents, or pick one in the agent dialog; add your own via .mimocode/agent/<name>.md (see @reference/guide.md)
SubagentsPrimary agent spawns general/explore helpers, parallel + background, with lifecycle/cancelautomatic; actor tooling
Persistent memoryMarkdown-backed memory with indexed search across MEMORY.md, checkpoint.md, notes.md, and tasks/<id>/progress.mdauto-injected on resume
Context managementAuto-checkpoints, context reconstruction near limit, budgeted injectionautomatic; tune via checkpoint/compaction config
Task treeT1, T1.1… tree, integrated with checkpointstask tooling
Goal / stop conditionJudge model verifies a stop condition before the agent halts/goal
Compose modeStructured spec→ship lifecycle; recommended entry is the compose-next skill on Build. The model may see and load it, but only after the user explicitly requests this workflow by slash command, name, or any other clear natural language. Legacy Compose remains a separate agent path/compose-next or an explicit natural-language request (see @reference/guide.md)
Visual modesvivid (default: star field, meteors, logo effects, animated activity) and minimal (quiet visuals, stable activity indicators); independent from the animation override/vivid or the visual-mode option in ctrl+p
Voice inputStreaming ASR (TenVAD + MiMo ASR); needs sox/voice
DreamConsolidates recent traces into project memory/dream
DistillPackages repeated manual workflows into skills/subagents/commands/distill
Scheduled promptsCron/loop: inject a prompt on a schedule or repeating loop (UTC, 5-field)cron tool · /loop · /loops
Dynamic workflowsJS scripts that orchestrate many subagents deterministically (fan-out, pipelines, nesting); built-ins include compose, deep-research, fact-check, and research-experiment.mimocode/workflows/*.js + workflow tool
Custom skillsAdd reusable task instructions under .mimocode/skills/see the skill-creator skill
Skill discovery/skill-name slash invocation (2+ in one message auto-load with an orchestration plan); skill_search tool matches by exact name/alias + BM25 and auto-loads high-confidence hits; some builtins (claude-code, codex) only appear when their CLI is installed/ autocomplete · automatic
MCPLocal & remote Model Context Protocol serversmcp config + mimo mcp
Capability APIEvery session already serves this project's chat models over OpenAI-compatible /v1 on a loopback port, so a skill or subprocess borrows a model instead of a provider keymimo llm-server issue mints a scoped token and prints the base URL (see @reference/capability-api.md)

Configuration Basics

Config file (JSON or JSONC), discovered by walking up from cwd:

  • Project: .mimocode/mimocode.json (or .jsonc)
  • Global: ~/.config/mimocode/mimocode.jsonc (preferred for new files) or mimocode.json

Add "$schema": "https://mimo.xiaomi.com/mimocode/config.json" for editor validation. All top-level keys are optional; project config merges over global.

jsonc
{
  "$schema": "https://mimo.xiaomi.com/mimocode/config.json",
  "model": "provider/model",
  "permission": { "external_directory": { "/tmp/**": "allow" } }
}

Reference routing

Read only the reference needed for the request, but read it before changing files:

  • Models, providers, API keys, base URLs, or OpenAI-/Anthropic-compatible endpoints: @reference/providers.md
  • Other config keys and on-disk locations: @reference/config.md
  • Task-oriented usage and setup: @reference/guide.md
  • Terminal compatibility, TUI rendering or lag, and SSH remote use: @reference/guide.md
  • CLI and slash commands: @reference/commands.md
  • Permission rules: @reference/permissions.md
  • MCP client-side sampling (servers borrowing your model, audio transcription): @reference/mcp-sampling.md
  • Lending this instance's chat models to a skill, task, or subprocess — the OpenAI-compatible /v1 endpoints and the mimo llm-server tokens that reach them: @reference/capability-api.md
  • Dynamic workflows: @reference/workflows.md
Show full SKILL.md (546 more words)Show less

How-To Guide

For task-oriented walkthroughs — signing in & choosing a model, troubleshooting TUI rendering or lag, using MiMoCode over SSH, making memory remember project rules, writing custom slash commands, remapping keybinds, adding MCP servers, scheduling prompts (cron/loop), and using compose mode — see @reference/guide.md. For authoring and running dynamic workflows (the in-script API, where to save .js workflow files, and the workflow tool) see @reference/workflows.md.

Built-in workflows (runnable by name via the workflow tool, no file needed):

  • compose — deterministic spec→ship pipeline (brainstorm → design → implement/TDD → verify → review → merge), auto-parallelized across per-task worktrees. Pass args.task.
  • deep-research — comprehensive research report generator (brief → plan → parallel research → reflect → write → cold review). Pass args: { dir, question, today, depth?, context? }. Convergent/resumable.
  • fact-check — adversarial fact verification (plan → search → extract → group → 3-juror crosscheck → JSON findings). Pass the question as args.
  • research-experiment — autonomous metric-improvement loop with baseline, guarded iterations, audit, and report. It requires an eval command, metric extraction rule, and editable-file scope.

Where Things Live On Disk

Base dirs follow MIMOCODE_HOME (if set, absolute) else XDG. Data typically lives at ~/.local/share/mimocode/ (memory, logs, extracted builtin skills), config at ~/.config/mimocode/, cache at ~/.cache/mimocode/. See @reference/config.md for the full layout and env vars.

Commands

mimo subcommands (mcp, run, agent, models, providers, upgrade, stats, export/import, github/pr, serve, …) and slash commands (/goal, /dream, /distill, /vivid, /voice, /loop, /connect, /<skill-name>) are documented in @reference/commands.md.

Helping the User Configure

When asked to change a behavior:

  1. Read the routed reference and identify the exact schema fields. Do not infer fields from another tool's config format.
  2. Determine scope from the request. Treat model/provider setup as global unless the user says it is project-only; use project config for explicitly repo-local behavior.
  3. Inspect only the exact config candidates. Never recursively search the user's home directory. Prefer an existing higher-precedence .jsonc file and preserve comments, $schema, unrelated providers, and other settings.
  4. Keep secrets out of tool output and the final response. When inspecting a config, redact values for keys such as apiKey, token, secret, and password; never dump the whole unredacted file merely to find its shape.
  5. Edit minimally. If the request says configure, use, or make default, also set the top-level model; if it only says add, leave the current selection unchanged.
  6. When persisting a newly supplied API key and model, also put that exact provider/model at the front of the TUI recent-model state so the user can switch to it immediately. Follow the merge procedure in @reference/providers.md; never replace favorites, variants, or unrelated recent models.
  7. Validate the parsed configuration with the narrowest relevant command and report the config and recent-model state files changed, selected provider/model, and whether a new session or re-selection is needed. Never include the credential in the summary.

Don't invent config keys, model limits, context windows, output limits, modalities, reasoning support, or tool-call capabilities. Add optional model metadata only when the user supplied it or a current authoritative source verifies it. If a requested behavior has no key, say so and suggest the closest supported option.

Answering Feature Questions

  • Confirm the feature exists in the map above before describing it.
  • Give the trigger (command / key / config), then a one-line how.
  • For authoring reusable task instructions, use the skill-creator skill.
  • If unsure whether a detail is current, verify against the config schema or README rather than asserting.

© XiaomiMiMo, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 8 other files in packages/cli/src/skill/builtin/.bundle/mimocode-docs of XiaomiMiMo/MiMo-Code.

  • SKILL.md
  • reference/capability-api.md
  • reference/commands.md
  • reference/config.md
  • reference/guide.md
  • reference/mcp-sampling.md
  • reference/permissions.md
  • reference/providers.md
  • reference/workflows.md

Open the folder on GitHubat commit 6babeb0

Compare with similar skills

MiMoCode Self-Help Docs next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

MiMoCode Self-Help Docs compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
MiMoCode Self-Help Docs this skillXiaomiMiMo/MiMo-Code14k—~2.7kAutomated safety check: PassMIT
LLM Councilgcpdev/llm-council-skill4611 repos~1kAutomated safety check: NotesMIT
CCG Tri-Model Orchestrationzereight/gitlab-mcp2k1 repos~657Automated safety check: PassMIT
Mem0 Integration Pipelinemem0ai/mem067k—~3.2kAutomated safety check: PassApache-2.0
Atomic Chat MCP Tool for NanoClawnanocoai/nanoclaw31k—~2.6kAutomated safety check: NotesMIT
Personalization Subagent Patterngrowthenginenowoslawski/coldoutboundskills740—~2.8kAutomated safety check: PassMIT

Similar skills

  • LLM Council

    gcpdev/llm-council-skill

    Multi-LLM collaborative brainstorming and planning. An agent skill from gcpdev/llm-council-skill.

    461 GitHub starsUsed in 1 repo~1k tokens
    Agent WorkflowsAuto-check: notes
  • CCG Tri-Model Orchestration

    zereight/gitlab-mcp

    Runs a task through Codex and Gemini CLIs in parallel alongside Claude, then synthesizes the three outputs into one answer with agreements and conflicts called out.

    2k GitHub starsUsed in 1 repo~657 tokens
    Agent WorkflowsAuto-check passed
  • Adds Mem0 memory to an existing repository with a test-first pipeline that detects the language, lets you choose Platform or open source, and leaves a local feature branch.

    67k GitHub stars~3.2k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Adds an MCP server to NanoClaw so its container agent can list and prompt local models served by the Atomic Chat desktop app.

    31k GitHub stars~2.6k tokensUpdated yesterday
    Agent WorkflowsAuto-check: notes
  • Personalization Subagent Pattern

    growthenginenowoslawski/coldoutboundskills

    Reusable approval-loop pattern for fanning out lead personalization across parallel Claude Code Task sub-agents.

    740 GitHub stars~2.8k tokensUpdated 2 days ago
    Agent WorkflowsAuto-check passed
  • Auto Review Loop LLM

    AI4Scientist/nano-scientist

    Autonomous research review loop using any OpenAI-compatible LLM API.

    128 GitHub starsUsed in 4 repos~1.8k tokens
    Agent WorkflowsAuto-check: warnings

More from XiaomiMiMo/MiMo-Code

All 22 skills in this repo
  • Paper Research on arXiv

    XiaomiMiMo/MiMo-Code

    Searches arXiv, fetches metadata, generates BibTeX, downloads PDFs and finds citations and related papers using a bundled Python script.

    14k GitHub starsUsed in 1 repo~1.5k tokens
    Auto-check passed
  • Agent Skill Creator

    XiaomiMiMo/MiMo-Code

    Interactive guide for creating, reviewing and fixing agent skills (SKILL.md folders), covering structure, frontmatter rules, trigger phrases and validation before sharing.

    14k GitHub stars~1.9k tokensUpdated 4 days ago
    Auto-check passed
  • DOCX Toolkit

    XiaomiMiMo/MiMo-Code

    Produces, edits and reads Microsoft Word files through python-docx and lxml, with a decision table for picking the lightest workflow for a given task.

    14k GitHub stars~2.4k tokensUpdated 4 days ago
    Auto-check passed
  • Drive MiMo Code

    XiaomiMiMo/MiMo-Code

    Lets one MiMoCode process drive another, headless with JSON events or interactively through tmux, to test behavior and visual regressions with parseable evidence.

    14k GitHub stars~3.9k tokensUpdated 4 days ago
    Auto-check passed
  • PDF Toolkit

    XiaomiMiMo/MiMo-Code

    Reads, transforms, composes and fills PDFs with Python scripts for extraction, merging, watermarking, encryption, OCR and form filling.

    14k GitHub stars~1.7k tokensUpdated 4 days ago
    Auto-check passed
  • XLSX Spreadsheet Toolkit

    XiaomiMiMo/MiMo-Code

    Builds, edits, cleans, recalculates and reads Excel workbooks and CSV files with openpyxl and pandas, plus LibreOffice for recalculation and PDF export.

    14k GitHub stars~2.9k tokensUpdated 4 days ago
    Auto-check passed

Categories

Questions about MiMoCode Self-Help Docs

What does MiMoCode Self-Help Docs do?

Lets MiMoCode answer questions about itself, including its modes, commands, keybindings, providers and config files, and change its own configuration without guessing schema fields. This skill is the agent's reference for MiMoCode, a terminal-based coding agent whose CLI binary is `mimo` and which is built as a fork of OpenCode. A feature map covers the build, plan and compose agent modes, subagents, persistent memory, context management, the task tree, the `/goal` stop condition and compose workflows, and says how to reach each one.

When should I use MiMoCode Self-Help Docs?

MiMoCode Self-Help Docs fits situations like: asking how to switch between build, plan and compose modes; adding a custom OpenAI-compatible provider with a base URL and API key; finding where MiMoCode keeps its global or project configuration; diagnosing TUI lag, rendering glitches or SSH rendering problems.

How do I install MiMoCode Self-Help Docs in Claude Code?

Run `npx skills add XiaomiMiMo/MiMo-Code --skill mimocode-docs -a claude-code`. Or copy the skill folder (packages/cli/src/skill/builtin/.bundle/mimocode-docs in XiaomiMiMo/MiMo-Code) into .claude/skills/mimocode-docs in your project. Claude Code loads it when a task matches its description.

How do I install MiMoCode Self-Help Docs in Codex?

Run `npx skills add XiaomiMiMo/MiMo-Code --skill mimocode-docs -a codex`. Or copy the skill folder (packages/cli/src/skill/builtin/.bundle/mimocode-docs in XiaomiMiMo/MiMo-Code) into .agents/skills/mimocode-docs in your project. Codex loads it when a task matches its description.

Can I use MiMoCode Self-Help Docs in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add XiaomiMiMo/MiMo-Code --skill mimocode-docs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/mimocode-docs, .gemini/skills/mimocode-docs, .github/skills/mimocode-docs and .opencode/skills/mimocode-docs in your project.

What does MiMoCode Self-Help Docs need to run?

SKILL.md names no scripts, command-line tools or credentials: MiMoCode Self-Help Docs is instructions for the agent only. Our summary lists: MiMoCode (the `mimo` CLI).

Does MiMoCode Self-Help Docs access the network?

SKILL.md names 1 domain. In commands or code: mimo.xiaomi.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is MiMoCode Self-Help Docs safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does MiMoCode Self-Help Docs use?

MiMoCode Self-Help Docs is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does MiMoCode Self-Help Docs use?

About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to MiMoCode Self-Help Docs?

Skills that share tags, products or a category with MiMoCode Self-Help Docs: LLM Council (gcpdev/llm-council-skill, 461 stars), CCG Tri-Model Orchestration (zereight/gitlab-mcp, 2k stars), Mem0 Integration Pipeline (mem0ai/mem0, 67k stars) and Atomic Chat MCP Tool for NanoClaw (nanocoai/nanoclaw, 31k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains MiMoCode Self-Help Docs?

XiaomiMiMo (a GitHub organization) maintains it in XiaomiMiMo/MiMo-Code, which has 13,601 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on October 3, 2026.

Source: XiaomiMiMo/MiMo-Code on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.