
MiMo Code: Where Models and Agents Co-Evolve
中文 | English
MiMoCode 是一个终端原生的 AI 编程助手。它能读写代码、执行命令、管理 Git,通过持久化记忆系统,在多次会话间保持对你项目的深度理解,并自我进化。
内置 MiMo Auto 限时免费通道——零配置即可开始使用。也支持接入各家主流 LLM 厂商 API。
# 一键安装
curl -fsSL https://mimo.xiaomi.com/install | bash
# 或通过 npm 安装
npm install -g @mimo-ai/cli
# 运行
mimo
首次启动自动引导配置。支持: - MiMo Auto(限时免费) — 匿名通道,零配置 - 小米 MiMo 平台 — OAuth 登录 - 从 Claude Code 导入 — 一键迁移已有认证 - 自定义 Provider — TUI 内添加任意 OpenAI 兼容 API
WSL:剪贴板问题
如果在 WSL 上复制出现乱码,安装 xsel:
sudo apt install xsel
Windows:shell 输出中文(CJK)乱码
在系统区域为非 UTF-8 的 Windows 上(如简体中文,活动代码页为 936/GBK),命令输出里的 中日韩字符可能显示为乱码。MiMoCode 已为 PowerShell/cmd 子进程强制开启 UTF-8 输出。 如果在尚未覆盖的场景下仍遇到乱码,可以开启 Windows 的系统级 UTF-8 支持:
设置 → 时间和语言 → 语言和区域 → 管理语言设置 → 更改系统区域设置 → 勾选「Beta 版: 使用 Unicode UTF-8 提供全球语言支持」→ 重启。
这会把活动代码页(ACP)切换为 UTF-8(65001),所有程序都生效,子进程不再继承旧代码页。 注意这是系统级 Beta 开关,可能导致部分老的非 Unicode 程序显示异常,建议作为临时方案。
除了 MiMoCode,小米 MiMo 模型也能在 Cursor、Cline、Zed 等各种 Agent 和编程工具里使用。
awesome-mimo-agent 收集了这些工具接入 MiMo 模型的配置教程,想换个工具试试 MiMo 的话可以去看看。也欢迎把你自己的接入方式提 PR 分享出来。
| 智能体 | 说明 |
|---|---|
| build | 默认。完整工具权限,用于开发 |
| plan | 只读分析模式,适合代码探索和方案设计 |
| compose | 编排模式,适合 specs-driven 开发和 Skill 驱动流程 |
按 Tab 在主智能体间切换。子智能体由系统按需生成。
基于 SQLite FTS5 全文搜索的跨会话记忆:
MEMORY.md) — 跨会话持久的项目知识、规则、架构决策checkpoint.md) — 结构化状态快照,由 checkpoint-writer 子智能体自动维护notes.md) — Agent 临时记录区tasks/<id>/progress.md) — 逐任务日志记忆自动在会话恢复时注入上下文,agent 无需重新理解项目背景。
树状任务系统(T1, T1.1, T1.2…),自动与检查点系统联动,恢复会话时任务进度不丢失。
主智能体可按需生成子智能体,共享当前会话上下文并行工作,支持生命周期追踪、取消机制和后台执行。
/goal 命令为会话设置停止条件。当 agent 想停下来时,由独立裁判模型评估对话内容,判断条件是否真正满足——防止自主工作中的"乐观停止"。
Compose 模式提供结构化的 specs-driven 开发流程,内置规划、执行、代码审查、TDD、调试、验证、合并等技能——编排从 spec 到交付的完整开发生命周期。
基于 TenVAD 和 MiMo ASR 的实时流式语音输入。通过 /voice 激活,按停顿分片转写,文本逐段追加到输入框。仅对 MiMo 登录用户可用。需要安装 sox(macOS 上 brew install sox,其他平台类似)。
WSLg 音频配置
sudo apt install -y sox pulseaudio libasound2-plugins
export PULSE_SERVER=unix:/mnt/wslg/PulseServer
SSH 远程音频(Mac → 远程主机)
# Mac(本地)
brew install pulseaudio
pulseaudio --load="module-native-protocol-tcp auth-ip-acl=127.0.0.1" --exit-idle-time=-1 --daemonize
# 在 ~/.ssh/config 中添加: RemoteForward 4713 127.0.0.1:4713
# 远程主机
apt install -y pulseaudio pulseaudio-utils sox
export PULSE_SERVER=tcp:127.0.0.1:4713
# 验证: pactl info
非 MiMo 渠道语音输入(OpenRouter、内部 API 等)
语音输入可通过 voice 配置字段路由到其他 OpenAI 兼容 provider。ASR 模型(mimo-v2.5-asr)仅在 MiMo 平台可用;语音控制模式(mimo-v2.5)可通过 OpenRouter 等中转平台使用。
OpenRouter(仅语音控制):
使用 /connect 连接 OpenRouter 后,只需在配置中添加:
{
"voice": {
"control_model": "openrouter/xiaomi/mimo-v2.5"
}
}
内部 / 自建中转平台(ASR + 语音控制):
{
"provider": {
"internal": {
"options": {
"baseURL": "https://your-api-gateway.example.com/v1",
"apiKey": "sk-..."
},
"models": {
"xiaomi/mimo-v2.5-asr": { "name": "MiMo-V2.5-ASR" },
"xiaomi/mimo-v2.5": { "name": "MiMo-V2.5" }
}
}
},
"voice": {
"asr_model": "internal/xiaomi/mimo-v2.5-asr",
"control_model": "internal/xiaomi/mimo-v2.5"
}
}
自定义 provider 必须在 models 中注册至少一个模型才能被系统识别。voice.*_model 中的模型名直接传给 API,不必与注册的 key 完全一致。OpenRouter 等内置 provider 无需手动配置 models。
注意:自定义 provider 注册的模型会出现在主模型选择列表中。请勿将 ASR 专用模型(如
mimo-v2.5-asr)用作编程主模型。
/dream — 扫描近期会话轨迹,提取持久知识到项目记忆,清理过时条目/distill — 发现近期工作中重复的手动工作流,将高置信度候选打包成可复用的 skill、subagent 或 command通过项目目录下的 .mimocode/mimocode.json(或全局 ~/.config/mimocode/mimocode.json)配置。主要选项包括:
Max Mode(并行 best-of-N 推理 + 裁判选优)可通过配置中的 experimental.maxMode 开启。
允许访问系统临时目录(/tmp)
默认情况下,读写项目工作目录之外的文件会触发 external_directory 权限询问——系统临时目录也不例外。
这是有意为之:MiMoCode 不会静默放宽权限,你始终掌控模型在项目之外能触碰什么。
临时目录之所以经常被用到,是因为多数模型习惯把它当作临时工作空间(比如临时脚本、一次性数据文件)。 如果你信任所处环境、不想每次都被询问,可以在配置中主动放行:
```json title=".mimocode/mimocode.json" { "$schema": "https://opencode.ai/config.json", "permission": { "external_directory": { "/tmp/**": "allow" } } }
**此设置存在已知风险——使用风险由你自行承担。** 临时目录对所有用户和进程可写,与机器上的其他进程
共享。自动放行意味着模型无需确认即可在其中读写,这会扩大你对“可预测临时路径 / 软链替换”一类攻击的
暴露面(例如其他进程提前把 `/tmp/foo` 创建为指向敏感文件的软链)。因此仅建议在单人、可控的环境或
容器内使用。请尽量缩小放行范围。
---
## 开发
```bash
bun install # 安装依赖
bun run dev # 开发模式运行
bun turbo typecheck # 类型检查
MiMoCode 基于 OpenCode fork 构建,保留其全部核心能力(多 Provider、TUI、LSP、MCP、插件),并在此基础上构建了持久化记忆、智能上下文管理、子智能体编排、目标驱动的自主循环、Compose 工作流,以及通过 dream/distill 实现的自我进化。
扫描二维码加入社区群聊:

源代码基于 MIT 许可证 开源。
使用 MiMoCode 还需遵守使用限制。 使用小米 MiMo 托管服务须遵守 MiMo 服务条款。 使用 MiMo 名称、标志和商标须遵守 MiMo 商标政策。
$ claude mcp add MiMo-Code \
-- python -m otcore.mcp_server <graph>