MiMoCode is Xiaomi MiMo’s open-source, terminal-native AI coding agent. It can inspect a repository, edit files, run shell commands, manage Git, connect to MCP servers, and retain project knowledge across sessions.
The MiMo-V2.5 anonymous free trial ended on July 26, 2026. The MiMoCode CLI remains available under the MIT License and separate use restrictions, but model access now depends on the provider you connect.
Current model options include the Xiaomi MiMo platform, Codex OAuth for eligible ChatGPT Plus or Pro accounts, imported Claude Code authentication, and custom OpenAI-compatible endpoints.
MiMoCode is good for developers who want a provider-flexible coding agent with persistent memory, checkpoint-based context reconstruction, MCP, reusable skills, and deterministic multi-agent workflows.
Its most distinctive value appears in long-running repository work that spans several sessions.
MiMoCode Current Status
| Developer | Xiaomi MiMo team |
| Product type | Open-source terminal AI coding agent |
| License | MIT License |
| Anonymous free model access | Ended July 26, 2026 |
| Current model access | Xiaomi MiMo OAuth, Codex OAuth, imported Claude Code authentication, provider catalog, or custom endpoint |
| Platforms | macOS, Linux, and Windows |
| Primary interface | Terminal TUI and headless CLI |
| Memory | Project memory, checkpoints, task records, notes, and SQLite FTS5 search |
| Extensions | MCP, skills, custom agents, commands, plugins, LSP, formatters, hooks, and custom tools |
| Best fit | Long-running repository tasks, multi-session work, and provider-flexible coding workflows |
Free-status note: MiMoCode’s source code remains open source. The discontinued MiMo Auto trial referred to hosted model access, not the software license. Xiaomi-hosted model usage now requires an eligible account, balance, or Token Plan. Provider and API charges vary outside Xiaomi’s platform.
Key Features
- Repository-level coding: MiMoCode reads and writes files, runs shell commands, works with Git, searches code through LSP integrations, and supports interactive or headless execution.
- Build, Plan, and Compose agents: Build has full development tools, Plan provides read-only analysis, and the dedicated Compose agent supplies the legacy interactive orchestration path.
- Recommended Compose workflow: Current releases recommend the Build agent with the
/compose-nextskill for interactive spec-to-ship work. The dedicated Compose agent remains available for the legacy skill-driven workflow. - Persistent project memory:
MEMORY.mdstores durable project knowledge and architecture decisions. Session checkpoints, scratch notes, task records, and SQLite FTS5 preserve working context. - Context reconstruction: When the active model approaches its usable context limit, MiMoCode rebuilds the session from the latest checkpoint, project memory, task progress, and recent messages.
- Configurable compaction point: The
/context-limitcommand can lower the context threshold for a model. This helps control latency, route-specific model limits, and high-context pricing tiers. - Goal-verified autonomous work: The
/goalcommand defines a natural-language stop condition. A separate judge checks whether the condition has been met before the agent finishes. - Dream and Distill:
/dreamconsolidates durable knowledge into memory./distillturns repeated procedures into reusable skills, subagents, or commands. - Subagents: Primary agents can launch general or exploration subagents for parallel and background work, with lifecycle tracking and cancellation.
- Deterministic workflows: JavaScript workflow scripts can encode fixed phases, bounded retries, structured handoffs, parallel execution, nested workflows, and isolated Git worktrees.
- Four built-in workflows: MiMoCode includes
compose,deep-research,fact-check, andresearch-experiment. - Reusable skills: Built-in skills cover coding delegation, Codex, Claude Code, research, office documents, product design, modern Python tooling, long-horizon research, and other specialized tasks.
- Skill discovery: MiMoCode searches skills by exact name, localized alias, and BM25 relevance. A high-confidence match can load automatically, while
/skillsand slash autocomplete expose manual selection. - Multi-skill orchestration: Referencing two or more skills in one message can load up to three skills and add an orchestration plan.
- Programmatic tool orchestration: The optional
tool_scriptcapability chains several tool calls inside a QuickJS sandbox to reduce repeated model round trips. - Provider flexibility: First-launch options include Xiaomi MiMo, Codex OAuth, Claude Code authentication import, catalog providers, and custom OpenAI-compatible endpoints.
- Local model support: A local model can connect through an OpenAI-compatible gateway when the model and endpoint support the tool calls needed for agentic coding.
- MCP and development extensions: MiMoCode supports local and remote MCP servers, OAuth-enabled MCP authentication, LSP, plugins, custom commands, custom tools, hooks, formatters, and themes.
- Permission controls: Rules can allow, deny, or ask for actions. Destructive operations receive extra protection, while unattended modes retain prominent warnings.
- Voice input: Streaming voice input uses TenVAD and MiMo ASR. It requires
soxand appropriate model access. - Experimental Max Mode: MiMoCode can generate several candidate responses and use a judge to select one. This mode increases provider calls and token use.
MiMo Code vs Claude Code
MiMo Code and Claude Code both inspect repositories, edit files, run terminal commands, work with Git, automate development tasks, and connect to MCP servers. Their main difference is the model and extension architecture.
MiMoCode exposes its TypeScript source, inherits core OpenCode capabilities, and accepts several provider routes. Claude Code is Anthropic’s commercial coding agent and centers on Claude models through a Claude subscription, the Anthropic API, Amazon Bedrock, Google Vertex AI, or supported gateways.
| MiMo Code | Claude Code | |
|---|---|---|
| Product | Open-source terminal coding agent | Commercial agentic coding tool |
| Source | MIT-licensed | Proprietary distribution |
| Primary interface | Terminal TUI and headless CLI | Terminal CLI with supported editor and automation integrations |
| Model access | Xiaomi MiMo, Codex OAuth, Claude auth import, or custom endpoints | Claude subscription, Anthropic API, Bedrock, Vertex AI, or supported gateways |
| Anonymous hosted access | The MiMo-V2.5 free trial ended July 26, 2026 | No comparable anonymous hosted channel |
| Persistent memory | Project memory, checkpoints, notes, tasks, and SQLite FTS5 | Project instructions, memory files, and session history |
| Context management | Checkpoint writer, reconstruction, budgeted injection, and configurable compaction point | Compaction and session management within the Claude Code workflow |
| Primary modes | Build, Plan, legacy Compose, and /compose-next | Interactive and permission-controlled agent workflows |
| Multi-agent work | Subagents, workflows, Compose, and experimental orchestration | Subagents, Agent SDK, hooks, and automation surfaces |
| Deterministic workflows | Sandboxed JavaScript workflows with fixed phases and structured output | Hooks, SDKs, headless execution, and CI integrations |
| Provider flexibility | Provider catalog and custom OpenAI-compatible endpoints | Claude models through Anthropic and supported enterprise hosts |
| Customization | Skills, agents, workflows, plugins, tools, commands, hooks, MCP, LSP | Skills, agents, hooks, plugins, MCP, settings, and SDKs |
| Cost basis | Software is open source; model and provider usage determines cost | Claude plan, API, Bedrock, Vertex AI, or gateway usage |
| Best fit | Provider choice, persistent memory, and customizable long-running workflows | Teams and developers centered on Claude models and Anthropic’s coding stack |
Install MiMoCode
Install MiMoCode on macOS or Linux:
curl -fsSL https://mimo.xiaomi.com/install | bashUse the native PowerShell installer on Windows:
powershell -ep Bypass -c "irm https://mimo.xiaomi.com/install.ps1 | iex"The npm package works across supported platforms:
npm install -g @mimo-ai/cli --registry https://registry.npmjs.orgOpen a project directory and run the mimo command:
cd /path/to/your/project
mimoThe first launch guides you through model access. Choose Xiaomi MiMo OAuth, Codex OAuth, Claude Code authentication import, a catalog provider, or a custom provider. The discontinued MiMo Auto trial no longer provides anonymous model inference.
Run /init inside the project on first use. MiMoCode analyzes the repository and creates or updates AGENTS.md with project structure, conventions, and guidance for later sessions.
/initSelect the primary agent before sending the first message. Build and Plan can switch after a session starts, but Compose is isolated once entered. Current releases recommend Build with
/compose-nextfor interactive spec-to-ship work.
Start with a concrete repository task, review each requested permission, and inspect the resulting diff. Add a stop condition before a long autonomous run:
/goal all tests pass and the feature branch is committedUse the recommended Compose skill for a feature that needs specification, implementation, verification, and review:
/compose-next implement the account export featureRebuild a long session from its latest checkpoint when context recovery needs manual intervention:
/rebuildChoose an earlier compaction point for the active model when route limits, latency, or long-context pricing require a smaller working budget:
/context-limitRun memory maintenance after a long project phase, or package recurring procedures into reusable instructions:
/dream
/distillModel and Provider Options
| Option | How it works | Access requirement |
|---|---|---|
| Xiaomi MiMo Platform | OAuth login connects MiMoCode to pay-as-you-go API usage or a Token Plan. | Xiaomi MiMo account with sufficient balance or an active plan |
| Codex | OpenAI OAuth connects through an eligible ChatGPT subscription. | ChatGPT Plus or Pro account supported by the Codex login flow |
| Import from Claude Code | MiMoCode imports an existing Claude Code authentication setup. | Existing Claude Code credentials and applicable Anthropic access |
| Provider catalog | Select a built-in provider and authenticate with an API key or supported OAuth flow. | Provider-specific account and billing rules |
| Custom provider | Add an OpenAI-compatible base URL, model ID, and credentials in the TUI or config. | A compatible endpoint and model with reliable tool calling |
| Local model gateway | Connect Ollama or another local service through an OpenAI-compatible API layer. | A local model and gateway that support the required agent tools |
A custom provider needs a registered model entry. Keep the upstream base URL and model ID exactly as the provider supplies them, and do not add or remove /v1 unless the endpoint requires it.
{
"$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"
}
}
}
}MiMoCode Cheat Sheet and Quick Reference
CLI Commands
| Command | Purpose |
|---|---|
mimo | Launch the interactive terminal interface. |
mimo run | Run a headless, non-interactive coding task. |
mimo mcp | Manage and inspect MCP servers. |
mimo agent | Manage agent definitions. |
mimo models | List models and resolved context information. |
mimo providers | List or manage model providers. |
mimo account | Open account and login controls. |
mimo upgrade | Update MiMoCode. |
mimo uninstall | Remove MiMoCode and optionally preserve data. |
mimo serve | Run the MiMoCode server. |
mimo stats | Show usage statistics. |
mimo export / mimo import | Export or import sessions. |
mimo session | List and manage saved sessions. |
mimo github / mimo pr | Use GitHub and pull-request integrations. |
mimo generate | Open the code-generation entry point. |
mimo plugin | Manage plugins. |
mimo db | Run database utilities. |
mimo acp / mimo attach | Use ACP or attach to a running session. |
mimo debug | Open debugging utilities. |
mimo completion | Generate shell completion scripts. |
Run mimo <command> --help to inspect the current flags for a command. Notable TUI flags include --continue, --session, --model, --agent, --never-ask, --trust, and --dangerously-skip-permissions.
Application Slash Commands
| Command | Action |
|---|---|
/sessions | List and continue previous sessions. |
/workflows | Open the workflow list when workflow support is enabled. |
/new | Start a new session. |
/models | Select a model. |
/agents | Switch the current agent. |
/modalities | Configure image, audio, video, or PDF input for a custom model. |
/never-ask | Toggle never-ask permission mode. |
/skip-permissions | Toggle runtime auto-allow while explicit deny rules remain active. |
/mcps | Show MCP server status. |
/variants | Switch model variants when available. |
/login | Sign in to Xiaomi MiMo. |
/connect | Connect or authenticate a model provider. |
/logout | Sign out of Xiaomi MiMo. |
/org | Switch organizations when multiple organizations are available. |
/status | Show system, model, context, and session status. |
/worktree | List and switch Git worktrees. |
/themes | Choose a terminal theme. |
/language | Change the TUI language. |
/doc | Open user documentation. |
/exit | Exit MiMoCode. |
Session and Prompt Commands
| Command | Action |
|---|---|
/editor | Edit the current prompt in an external editor. |
/skills | Browse and select available skills. |
/voice | Toggle streaming voice input. |
/share | Share the current session when sharing is enabled. |
/rename | Rename a session. |
/timeline | Open the message timeline. |
/fork | Fork a session from an earlier message. |
/compact | Summarize a long session to free context. |
/btw <question> | Ask a side question without adding it to the main context. |
/undo | Undo the latest message and file changes. |
/redo | Restore an undone message and file changes. |
/thinking | Toggle reasoning-block visibility. |
/copy | Copy the session transcript. |
/export | Export the session transcript. |
Built-in Prompt Commands
| Command | Action |
|---|---|
/init | Generate or update project guidance in AGENTS.md. |
/review [target] | Review uncommitted changes, a commit, branch, or pull request. |
/goal <condition> | Set a judge-verified stop condition. |
/dream [focus] | Consolidate durable knowledge into project memory. |
/distill [focus] | Package recurring work into skills, subagents, or commands. |
/rebuild | Reconstruct context from the latest checkpoint. |
/context-limit | Set an earlier compaction point for the current model. |
/deep-research <question> | Start a multi-source research workflow when workflow support is available. |
/loops | List or cancel scheduled jobs when cron support is enabled. |
/compose-next | Start the recommended interactive spec-to-ship workflow. |
/<skill-name> | Invoke a discovered built-in, project, or personal skill. |
Built-in Agents
| Agent | Role |
|---|---|
build | Default primary agent with full development tools. Use with /compose-next for the recommended interactive Compose workflow. |
plan | Read-only code exploration and solution design. |
compose | Legacy interactive orchestration mode with a fixed Compose skill set. |
general | General-purpose subagent launched by a primary agent. |
explore | Codebase exploration subagent. |
Compose Options
| Option | Use it for |
|---|---|
/compose-next on Build | Exploratory or ambiguous feature work that needs questions, redirection, and human judgment between phases. This is the recommended interactive path for capable models. |
compose workflow | Well-defined work that can split into independent subtasks and run non-interactively through specification, implementation, verification, review, and merge. |
compose agent | The legacy interactive path for the older skill-driven Compose curriculum. |
Built-in Workflows
| Workflow | Purpose |
|---|---|
compose | Runs a development pipeline from brainstorming and design through implementation, verification, review, reporting, and merge. |
deep-research | Plans parallel research, checks evidence gaps, writes one cited report, and reviews the final citations. |
fact-check | Searches, extracts claims, groups duplicates, runs adversarial cross-checks, and returns structured findings. |
research-experiment | Runs a guarded optimization loop against one mechanically verifiable numeric metric, with baseline, keep-or-revert decisions, and audit logs. |
Built-in Skills
| Skill | Purpose |
|---|---|
arxiv | Search, read, cite, and analyze arXiv papers. |
claude-code | Delegate coding, testing, review, and Git work to the Claude Code CLI. |
codex | Run and troubleshoot Codex CLI work in automation, CI, containers, and remote environments. |
compose-next | Run the recommended interactive specification-to-shipping development workflow. |
data-analytics | Analyze product and business data through reusable analytical workflows. |
deep-research | Produce cited multi-source research reports with parallel subagents. |
design-blueprint | Create a design blueprint and decision trace before visual implementation. |
docx-official | Create, read, and transform Word documents. |
drive-mimo | Script and automate another MiMoCode process. |
evolve | Modify agent tools, hooks, knowledge, workflows, or UI. |
frontend-design | Apply visual design guidance to user interfaces. |
html-to-video-pipeline | Render HTML content to MP4 video. |
learn-everything | Turn source material into an adaptive course with exercises and progress tracking. |
loop | Schedule recurring prompts on a fixed cadence. |
mimocode-docs | Load MiMoCode features, commands, providers, and configuration references. |
modern-python-toolchain | Configure Python projects with uv, Ruff, and Pyright. |
pdf-official | Create, read, fill, and transform PDF files. |
pptx-official | Create and edit PowerPoint presentations. |
product-design | Explore, audit, implement, and QA product and UX designs. |
research-paper-writing | Write and polish academic papers. |
sales | Support account research, meeting preparation, prioritization, deal strategy, and forecasting. |
skill-creator | Create or improve reusable agent skills. |
super-research | Run long-horizon research, experiments, benchmarks, reproductions, and citation audits. |
xlsx-official | Build, clean, and transform spreadsheets. |
The claude-code and codex skills appear only when the corresponding executables are installed. Project skills in .mimocode/skills/ and personal skills in supported skill directories can override a built-in skill with the same name.
Core Config Files
| Scope | File |
|---|---|
| Project config | .mimocode/mimocode.jsonc or .mimocode/mimocode.json |
| Global config | ~/.config/mimocode/mimocode.jsonc or mimocode.json |
| Project TUI | .mimocode/tui.json |
| Global TUI | ~/.config/mimocode/tui.json |
| Credentials | ~/.local/share/mimocode/auth.json |
| Project skills | .mimocode/skills/<name>/SKILL.md |
| Project workflows | .mimocode/workflows/<name>.js |
Core Config Fields
| Field | Use |
|---|---|
$schema | Enable completion and validation with the published MiMoCode schema. |
model | Set a primary model or model group. |
model_groups | Define reusable capability tiers such as lite, standard, and ultra. |
small_model | Legacy lightweight-model setting; new configurations should use the lite model group. |
provider | Configure custom providers and model overrides. |
enabled_providers / disabled_providers | Allow or block provider IDs. |
default_agent | Select the primary agent used by default. |
agent | Configure built-in or custom agents. |
skills | Add skill directories or remote skill indexes. |
mcp | Define local or remote MCP servers, headers, OAuth, and sampling permissions. |
tools | Enable or disable individual tools. |
tool.invocation_style | Select JSON or shell-style tool invocation. |
command | Define custom slash commands. |
plugin | Load plugin packages or local plugin paths. |
formatter / lsp | Configure formatters and language servers. |
instructions | Include extra instruction files or globs. |
permission | Control tool, path, skill, and external-directory access. |
compaction | Control automatic compaction, pruning, retained turns, and model-specific context budgets. |
checkpoint | Set checkpoint thresholds, reserves, section caps, and memory-search behavior. |
memory / history | Configure indexed project memory and conversation history. |
dream / distill | Control automatic memory consolidation and workflow extraction. |
voice | Configure ASR and voice-control models. |
compose | Set Compose document paths and behavior. |
workflow | Control subagent concurrency, nesting depth, lifecycle limits, and script deadlines. |
experimental | Enable optional features such as Max Mode and batch tools. |
autoupdate | Enable, disable, or notify about updates. |
share | Set manual, automatic, or disabled session sharing. |
snapshot | Control filesystem snapshots used for undo and redo. |
server | Configure mimo serve. |
logLevel | Set runtime log verbosity. |
Important Environment Variables
| Variable | Use |
|---|---|
MIMOCODE_HOME | Override all data, cache, config, and state roots. |
MIMOCODE_CONFIG_DIR | Add an extra configuration directory. |
MIMOCODE_PURE | Run without external plugins. |
MIMOCODE_MIMO_ONLY | Disable inherited Claude Code settings and provider keys for a MiMo-focused environment. |
MIMOCODE_DISABLE_LOG_ROTATION | Keep one growing log file instead of rotating logs. |
MIMOCODE_TEXT_TOOL_CALL_RETRY_LIMIT | Set retries for models that emit tool calls as prose instead of structured calls. |
MIMOCODE_EXPERIMENTAL_CRON | Control scheduled prompts and loops. |
MIMOCODE_DISABLE_CRON | Disable cron and loop scheduling at runtime. |
MIMOCODE_EXPERIMENTAL_TOKEN_EFFICIENCY_HEURISTIC | Enable shape-based reduction of noisy shell output. |
MIMOCODE_DISABLE_BUILTIN_SKILLS | Disable all built-in skills. |
MIMOCODE_DISABLE_COMPOSE_SKILLS | Disable legacy Compose skills. |
MIMOCODE_DISABLE_EXTERNAL_SKILLS | Disable externally discovered skills. |
MIMOCODE_DISABLE_CLAUDE_CODE_SKILLS | Disable Claude Code skill-directory discovery. |
MIMOCODE_DISABLE_CODEX_SKILLS | Disable Codex skill-directory discovery. |
MIMOCODE_DISABLE_OPENCODE_SKILLS | Disable OpenCode skill-directory discovery. |
MIMOCODE_DANGEROUSLY_SKIP_PERMISSIONS | Enable unattended permission handling. Use only in a trusted disposable environment. |
Alternatives and Related Resources
- Best CLI AI Coding Agents compares terminal-based agents for developers who need a wider shortlist.
- Popular Agent Skills for Coding Agents lists reusable skills that extend compatible coding tools.
- Kimi Code CLI is another open-source terminal agent with skills and MCP support.
- Pi Coding Agent focuses on an extensible terminal workflow for developers.
- CodeWhale provides a DeepSeek-oriented terminal coding experience.
- OpenClaude provides a multi-model coding-agent CLI.
FAQs
Q: What is MiMoCode?
A: MiMoCode is Xiaomi MiMo’s open-source terminal AI coding agent. It can inspect repositories, edit files, run commands, manage Git, connect to MCP servers, and retain project knowledge across sessions.
Q: Is MiMoCode free?
A: The MiMoCode source code is available under the MIT License and separate use restrictions. The anonymous MiMo-V2.5 model trial ended on July 26, 2026. Continued model use requires Xiaomi MiMo access, an eligible Codex or Claude authentication route, another provider, or a custom endpoint. Provider charges can apply.
Q: What happened to MiMo Auto?
A: MiMo Auto supplied anonymous access to the MiMo-V2.5 trial. MiMoCode v0.1.9 enforced the end of that free trial after July 26, 2026. Bringing your own provider or API access remains available.
Q: Does MiMoCode require signup?
A: MiMoCode itself can be installed without creating a software-license account, but hosted model access requires the account or credentials used by the selected route. Xiaomi OAuth, Codex OAuth, Claude authentication import, and most catalog providers require an account.
Q: Can MiMoCode use ChatGPT Plus or Pro?
A: Yes. Current first-launch options include Codex OAuth for eligible ChatGPT Plus or Pro accounts. Availability and usage limits follow the Codex and ChatGPT account rules.
Q: Is MiMoCode an alternative to Claude Code?
A: Yes. Both tools can read code, edit files, run commands, work with Git, and connect to MCP servers. MiMoCode is open source and supports several provider routes. Claude Code is Anthropic’s commercial coding agent and centers on Claude models.
Q: Can MiMoCode use Ollama or another local model?
A: MiMoCode accepts custom OpenAI-compatible providers. A local model can connect when Ollama or another gateway exposes a compatible endpoint and the selected model can perform the structured tool calls required for coding work.
Q: Does MiMoCode support MCP servers?
A: Yes. MiMoCode can add and inspect local or remote MCP servers and supports OAuth-enabled MCP authentication. Permission rules should reflect the files, credentials, and actions exposed by each server.
Q: How does MiMoCode preserve context in long sessions?
A: A checkpoint writer records structured session state. Context reconstruction combines the latest checkpoint, project memory, task progress, notes, and recent messages. Budgeted injection limits how much stored material returns to the active context.
Q: What is the difference between /compose-next, the Compose workflow, and the Compose agent?
A: /compose-next is the recommended interactive path for exploratory feature work. The deterministic Compose workflow fits well-defined jobs that can run through fixed phases with limited intervention. The dedicated Compose agent is the legacy interactive path.
Q: Does MiMoCode have a desktop app or web interface?
A: The supported user interface is the terminal TUI, with headless and server commands for automation. The current command reference marks the separate web command as disabled, so this page does not treat MiMoCode as a finished desktop or browser coding product.
Q: Is permission skipping safe?
A: Permission skipping can let an agent run commands and access files with little or no confirmation. Use it only in a trusted disposable container, sandbox, or CI job. Keep explicit deny rules for sensitive paths and inspect the repository for malicious instructions.
Last updated: August 1, 2026.










