MiMo-Code是什么?小米版Claude Code详解
了解 MiMo-Code 的真实定位:小米 MiMo 团队基于 OpenCode 分支开发、采用 MIT 许可证的终端编码代理,并核对其自报基准测试结果,再决定是否迁移。
MiMo-Code 是什么?
MiMo-Code 是由 Xiaomi MiMo 团队开发的终端编码代理,于 2026 年 6 月 15 日以 MIT 许可证开源。它以 CLI(命令行界面)工具的形式运行在 shell 中。它可以读取和编辑项目文件、运行 shell 命令、操作 git,并在不同会话之间保存代码库相关的笔记。
它的使用方式与 Claude Code 相同。您可以用自然语言描述任务,代理会提出编辑和命令,您确认后再执行。两点差异很重要。该项目源码开放,因此您可以准确查看代理发送给模型的内容。模型与代理也是分离的,因此同一套代理框架可以连接 Xiaomi 的模型、OpenAI 兼容端点,或您自行托管的模型。
该代码库名为 MiMo-Code,安装的命令为 mimo。文档中会使用这两个名称,因此搜索任意一个名称都可以找到同一工具。
MiMo-Code 的来源,以及这为何重要
MiMo-Code 是 OpenCode 的一个分支。OpenCode 是 sst 项目的开源终端代理。LICENSE 文件保留了原始的 Copyright (c) 2025 opencode 行,README 也有一个简短章节说明两者的关系。该仓库中有一个公开 issue,要求 Xiaomi 比仅保留许可证行更完整地致谢 OpenCode 贡献者。
了解这一点后,另一个看似不可能的现象就容易解释了。一个在 2026 年 6 月首次发布的项目,已经具备完善的 TUI(文本用户界面)、插件系统、可对接多个模型 API 的提供商抽象层、MCP(模型上下文协议)支持,以及 LSP(语言服务器协议)集成。这些功能不可能在六周内完成。它们随分支一同引入。Xiaomi 新增的是记忆层,以及与 Xiaomi 自有模型的集成。
如果您已经在 VPS 上运行过 OpenCode,就会对其布局和键绑定感到熟悉,因为底层使用的是同一套代码。
“模型与智能体共同演进”实际意味着什么
该仓库的标语是“模型与智能体共同演进”。这句话包含两个不同的主张,但目前只有其中一个有已发布的详细资料支持。
第一个主张与运行时有关,并且已有文档说明。MiMo-Code 为每个项目维护一个持久化记忆存储,使用 SQLite 全文搜索作为后端,同时保存会话状态和任务进度。两个斜杠命令负责驱动这一机制。/dream 从近期会话中提取持久化知识,并将其写入项目记忆。/distill 将重复执行的流程转换为可复用技能。小米自己的工程说明称,这些操作按大约一到四周的周期运行,而不是在每次会话结束后运行。因此,即使模型文件保持不变,智能体在你的仓库中的行为也会随时间变化。该存储会自动填充,但不能替代你手动编写的指令文件。在 monorepo 中,最好将这些文件维护为每个软件包一个小文件,而不是单个根目录文件,这样智能体会加载其当前工作目录中的文件。编写这些文件只是较容易的一半;当智能体跳过一条你确信已经说明清楚的规则时,指令被忽略的原因通常比想象中更机械。根据过往会话提炼的记忆,只是避免智能体从头重新学习项目的一种方式;一个可供智能体通过 MCP 查询的仓库 tree-sitter 映射则从另一端解决同样的浪费:直接提供仓库结构,而不是让智能体重新读取并恢复这些结构。
第二个主张与训练有关,需要谨慎理解。小米将 MiMo-V2.5 的后训练描述为三个阶段的流水线:监督微调、大规模智能体强化学习(RL),以及将多个专业教师模型中的知识通过 on-policy 蒸馏到一个学生模型中。智能体强化学习表示,模型使用多步骤工具调用任务进行训练,而不是只使用单轮问答对。这个说法是有依据的,也解释了模型为何能在较长的工具调用序列中保持一致性。但小米尚未发布训练报告,证明该模型是在这个特定 harness 中进行优化的,也没有证明 harness 会根据训练结果发生变化。
因此,应将“共同演进”理解为一个拥有两部分的团队所表达的目标。你实际可以观察到的收益更有限,但仍然有价值:同一批人负责编写工具 schema 和系统提示词,并负责发布模型,因此这些组件彼此匹配。Claude Code 无法采用这种方式,因为它的 harness 是固定 API 模型的客户端。Anthropic 同样会针对智能体用途训练模型,但你无法在 harness 下方替换模型。
MiMo-Code 会话在终端中的样子
运行 mimo 会打开全屏终端界面。您输入任务后,代理会读取文件、提出修改方案,并在写入或运行任何内容前征得您的同意。除默认的构建模式外,它还提供计划模式和编排模式,以及子代理系统,可将部分任务交给单独的代理运行。Claude Code 则从另一端实现相同的控制能力:一种输出样式会直接改写系统提示词,而不是在一组固定的预设模式之间切换。它还内置了大量技能。技能是代理可以按名称调用的预打包流程。技能也可以改变代理的工作方式,而不是改变它掌握的知识。这正是 Ponytail 的设计理念:通过一个技能让代理坚持采用能奏效的最小改动。
开始前,有几点需要了解。
- 默认情况下,每个操作都需要单独批准。标志
--dangerously-skip-permissions会移除这些提示。它的名称准确反映了作用,因此只有在出错不会造成任何影响时才使用它。MiMo-Code 将此设置做成全有或全无的开关,而 Claude Code 则将同一决定拆分为分级的权限模式;因此,在使用该标志前,先了解 自动模式允许代理在无需询问的情况下执行哪些操作 更有参考价值。 - 它可以在非交互式终端中运行。
mimo run接收提示并以非交互方式执行,这正是脚本或 CI 任务所需的方式。此外还包含 Web 界面。 - 配置保存在可提交到版本库的文件中。项目读取
.mimocode/mimocode.jsonc,全局设置保存在~/.config/mimocode/mimocode.jsonc中。 - 凭据不保存在这些文件中。凭据写入
~/.local/share/mimocode/auth.json,因此不要将该路径纳入 git,也不要将其包含在要共享的备份中。
能够运行 shell 命令的代理,相当于您将 shell 的控制权交给了一个程序。请为它分配独立的计算机和用户。尝试新代理时,最安全的方法是使用 会话结束后可以销毁的一次性 VM,因为错误命令造成的后果将是重新构建,而不是从备份恢复。
MiMo-Code 真的胜过 Claude Code 吗?
小米的发布材料提出了一个具体说法:在两个工具框架中运行同一个模型时,MiMo-Code 得分更高。以下是已公布的数据。
The data behind this chart
[
{
"tool": "MiMo-Code",
"swe_bench_pro_pct": 62,
"terminal_bench_2_pct": 73
},
{
"tool": "Claude Code",
"swe_bench_pro_pct": 57,
"terminal_bench_2_pct": 68
}
]在 SWE-bench Pro 上,小米报告 MiMo-Code 的得分为 62%,Claude Code 为 57%。在 Terminal Bench 2 上,两个得分分别为 73% 和 68%。这种表述的前提是模型保持不变,因此约 5 个百分点的差距来自智能体系统,而不是模型本身。只有了解智能体工具框架实际涵盖哪些内容,这种表述才有意义:两者的差异在于循环、工具定义、权限提示和会话状态,而模型权重保持不变。
应将这些数据视为厂商数据。评测由小米执行并发布,而 MiMo-Code 似乎没有出现在公开的 SWE-bench 或 Terminal-Bench 排行榜中,因此没有独立机构复现这一差距。小米对自身结果的局限说明得相当直接。该公司在说明中表示,这些基准测试衡量的是针对单个代码仓库问题的一次性问题解决能力;根据其内部测试,在执行步骤大致少于 200 步时,两个智能体的表现基本相同。所宣称的优势出现在长时间运行中,而一次性基准测试无法覆盖这种情况。
这才是合理的解读。厂商执行的基准测试高出 5 个百分点,足以成为尝试该工具的理由。但这不足以成为将团队依赖的工作迁移过去的理由。
MiMo-Code 的运行成本
发布时,Xiaomi 提供了一个名为 MiMo Auto 的免费渠道,无需注册即可使用。该渠道从一开始就被说明为限时服务,2026 年 7 月 24 日发布的 0.1.9 版本说明提到了免费 MiMo-V2.5 试用的结束。不要基于它构建工作流。
与头部模型提供商相比,Xiaomi 平台的付费访问价格较低。截至 2026 年 8 月,MiMo-V2.5-Pro 公布的国际价格为:缓存未命中时,每百万个输入 token 收费 $1.00,每百万个输出 token 收费 $3.00,上下文长度最高为 256K。价格会调整,因此规划预算前应查看当前价格页面。
另一种方式是使用自有硬件。MiMo-V2.5 和 MiMo-V2.5-Pro 的权重已根据 MIT license 发布在 Hugging Face 上,因此可以自行部署。必须根据模型规模合理评估硬件需求。上下文窗口达到一百万 token 的模型不适合普通 VPS,此时需要考虑 挂载 GPU 的 VPS 或专用机器。较小的本地模型则是另一种方案,更接近 在 VPS 上运行 Ollama 以自行托管 LLM。
MiMo-Code 还可以连接其他供应商。它可以迁移现有的 Claude Code 登录状态、连接 OpenAI 账户、接受其他供应商的 API key,或连接任意兼容 OpenAI 的 endpoint。连接前应查看消费者订阅的条款,因为供应商条款决定哪些客户端可以使用订阅计划,其他供应商提供的 CLI 不一定包含在允许范围内。
是否应该转用 Claude Code?
如果您已经在使用 Claude Code 且运行正常,不需要转用。2026 年 7 月下旬发布的 0.1.9 版,距离首个版本仅 6 周,这是一个明确的信号。0.1.x 版本号意味着不同版本之间可能存在不兼容变更,配置格式也仍在调整。对于正在评估的工具,这没有问题;但对于团队所依赖的工具,这会带来维护负担。
在以下 4 种情况下,MiMo-Code 值得认真考虑。
- 费用由您承担。Xiaomi 的 token 价格远低于前沿厂商,而且 agent 本身免费。
- 您需要审查 harness。开源意味着您可以检查 prompts 和 tool definitions,这对安全审查或审计很重要。
- 您希望将 agent 和 model 分开采购,这样更换其中一个时不必同时更换另一个。
- 代码不能离开您的网络。开放权重使自托管后端成为可能,无需进行相关协商。
Cursor 和 Copilot 属于另一类比较对象。两者都运行在编辑器中,而 MiMo-Code 运行在终端中。这一差异对您日常工作的影响,大于任何基准测试分数;Claude Code 与 Cursor、Codex 和 Copilot 的比较详细介绍了其中的取舍。
在已租用的 VPS 上运行 MiMo-Code
终端代理应运行在服务器上。它需要保持会话数小时,需要稳定的网络连接,还应在笔记本电脑合上盖子后继续运行。其他终端代理也采用相同模式:在小型服务器上保持一个长期运行的会话,然后从任何位置重新连接。具体方法请参阅在 VPS 的 tmux 中运行编码代理。同一台服务器上运行多个代理后,Claude Code 可以让一个会话直接将文本传递给另一个会话,无需手动在 tmux 窗口之间转移输出。
为它创建一个专用的非特权用户,并让它使用代码仓库的克隆副本,而不是你唯一的副本。它能访问的范围取决于运行它的账户。即使提示词出现问题,这项限制仍然有效。
该项目通过两种方式提供安装:通过 HTTPS 提供的 shell 安装脚本,以及适用于已安装 Node.js 的计算机、名为 @mimo-ai/cli 的 npm 软件包。在你需要保护的服务器上,优先使用 npm 软件包。运行前,你可以查看软件包包含的内容,也不会将远程脚本直接通过管道传给 shell。若要了解还有哪些工具适合部署在这台服务器上,请参阅自托管 AI 代理汇总。
FAQ
MiMo-Code 免费吗?
该代理在 MIT 许可证下免费且开源,您可以阅读和修改其代码。真正产生费用的是它背后的模型。小米在发布时提供了限时免费渠道 MiMo Auto,2026 年 7 月 24 日的发行说明提到该试用即将结束,因此应按付费访问进行规划。截至 2026 年 8 月,已公布的 MiMo-V2.5-Pro 国际价格为:缓存未命中时,每百万个输入 token 收费 $1.00,每百万个输出 token 收费 $3.00。您也可以将 MiMo-Code 指向任意兼容 OpenAI 的端点,改为向其他供应商付费。
MiMo-Code 与 OpenCode 是同一个东西吗?
MiMo-Code 最初是 OpenCode 的一个分支,目前仍共享其核心代码。终端界面、插件系统、供应商抽象层和 MCP 集成都源自该代码库,OpenCode 的版权声明也保留在代码库的 LICENSE 文件中。小米增加了基于 SQLite 全文搜索的持久化记忆层、额外的代理模式,以及对其自有模型的直接访问。如果您了解 OpenCode,就已经了解 MiMo-Code 的大部分行为。
我可以使用 Claude 或 GPT 模型,而不是小米的模型吗?
可以。首次运行设置会提供迁移现有 Claude Code 登录状态、连接 OpenAI 账户,或接受其他供应商的 API key 的选项。您也可以在 ~/.config/mimocode/mimocode.jsonc 中手动配置任意兼容 OpenAI 的端点。连接消费者订阅前,请先查看其条款,因为供应商条款会规定哪些客户端可以使用订阅方案。
在主机上运行 MiMo-Code 安全吗?
请将其视为任何可以运行 shell 命令的代理。默认情况下,它会在每次操作前请求批准;--dangerously-skip-permissions 会关闭这些提示,而大多数事故都由此引发。请使用专用的非特权用户运行它,并针对代码库副本执行操作;最好使用可以销毁并重建的机器。它的影响范围取决于运行它的账户,因此应限制该账户的权限和可访问资源。