What it is
MiMoCode is a terminal-native AI coding assistant that reads and writes code, runs commands, manages Git, and keeps project understanding across sessions through a persistent memory system. It offers build, plan, and compose agents, subagents, task tracking, deterministic JavaScript workflows, and bundled skills. It also powers the Xiaomi MiMo Desktop app as its core engine and can connect to mainstream LLM provider APIs.
Who it's for
- Developers who want an AI coding agent in the terminal
- Users who need project knowledge preserved across sessions via memory and checkpoints
- Teams wanting spec-driven or automated multi-agent workflows such as compose, deep-research, and fact-check
- Users who want to connect their own OpenAI-compatible or mainstream LLM providers
Requirements
Requirements
- macOS/Linux (curl install), Windows (PowerShell install), or npm for all platforms
- Not supported in the built-in macOS Terminal.app; use iTerm2 or the VS Code integrated terminal
- An account or API access for a provider (Xiaomi MiMo OAuth, Codex/ChatGPT OAuth, Claude Code import, API key, or custom OpenAI-compatible endpoint)
- sox for voice input, which is available to MiMo logged-in users
- claude or codex executables installed for the claude-code and codex skills to be exposed
Setup
Install and run
Install with the one-line script (macOS/Linux), PowerShell (Windows), or npm (all platforms), then launch mimo. The first launch guides you through provider configuration.
bash# One-line install (macOS / Linux) curl -fsSL https://mimo.xiaomi.com/install | bash # One-line install (Windows PowerShell) powershell -ep Bypass -c "irm https://mimo.xiaomi.com/install.ps1 | iex" # Or install via npm (all platforms) npm install -g @mimo-ai/cli # Run mimoFix WSL clipboard garbling
If copying on WSL produces garbled text, install xsel.
bashsudo apt install xselUse iTerm2 on macOS
The built-in macOS Terminal is not supported; iTerm2 or the VS Code integrated terminal is recommended.
bashbrew install --cask iterm2
Examples
Run the TUI over a remote host without lag
bash# Remote host
mimo serve --port 4096
# Local host: create the SSH port forward
ssh -N -L 4096:127.0.0.1:4096 user@remote-host
# Local host: connect from another terminal
mimo attach http://127.0.0.1:4096What it does: Renders the TUI locally while only the MiMoCode server runs on the remote host, avoiding SSH lag.
Compact earlier for specific models
jsonc{
"compaction": {
"max_context": {
"openai/gpt-5.6": "272K", // token count, "300K", "1M", or "50%" of the window
"anthropic/*": "300K" // wildcards allowed, longest pattern wins
}
}
}What it does: Sets a per-model compaction point lower than the model's own context window via compaction.max_context.
Custom OpenAI-compatible provider
jsonc{
"$schema": "https://mimo.xiaomi.com/mimocode/config.json",
"model": "custom/MODEL_NAME",
"provider": {
"custom": {
"name": "Custom",
"npm": "@ai-sdk/openai-compatible",
"only_configured_models": true,
"models": {
"MODEL_NAME": {
"name": "MODEL_NAME"
}
},
"options": {
"baseURL": "BASE_URL",
"apiKey": "API_KEY"
}
}
}
}What it does: Configures a provider not in the built-in catalog using its base URL, API key, and model ID.
Trust the schema domain in VS Code / Cursor
json{
"json.schemaDownload.trustedDomains": {
"https://mimo.xiaomi.com/": true
}
}What it does: Lets the editor download MiMoCode's JSON Schemas for config autocompletion and validation.
Pros & cons
Pros
- Pro:Persistent memory (MEMORY.md, checkpoints, task progress) with automatic context reconstruction across sessions
- Pro:Flexible provider support: OAuth logins, API keys, Claude Code import, and custom OpenAI-compatible endpoints
- Pro:Rich built-in tooling: four deterministic workflows, about twenty bundled skills, and subagents, with custom workflows and skill overrides
- Pro:Goal/stop-condition judge model helps prevent premature stops during autonomous work
Cons
- Con:Built-in macOS Terminal.app is not supported, and rendering/lag issues may require workarounds (iTerm2, remote server attach, /vivid)
- Con:Voice input ASR is only available on MiMo's platform for MiMo logged-in users and requires sox
- Con:Windows non-UTF-8 locales may need a system-wide Beta UTF-8 workaround for garbled CJK output