Skip to content

Latest commit

 

History

History
226 lines (156 loc) · 7.28 KB

File metadata and controls

226 lines (156 loc) · 7.28 KB

MiMoCode

MiMoCode

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

核心特性

多智能体

智能体 说明
build 默认。完整工具权限,用于开发
plan 只读分析模式,适合代码探索和方案设计
compose 编排模式,适合 specs-driven 开发和 Skill 驱动流程

Tab 在主智能体间切换。子智能体由系统按需生成。

持久化记忆

基于 SQLite FTS5 全文搜索的跨会话记忆:

  • 项目记忆 (MEMORY.md) — 跨会话持久的项目知识、规则、架构决策
  • 会话检查点 (checkpoint.md) — 结构化状态快照,由 checkpoint-writer 子智能体自动维护
  • 笔记暂存 (notes.md) — Agent 临时记录区
  • 任务进展 (tasks/<id>/progress.md) — 逐任务日志

记忆自动在会话恢复时注入上下文,agent 无需重新理解项目背景。

智能上下文管理

  • 自动检查点 — 根据模型上下文窗口自动决定什么时候保存会话状态
  • 上下文重建 — 当上下文接近上限时,从最新 checkpoint、项目记忆、任务进展和保留的近期消息重建上下文,让 agent 继续当前任务
  • 预算化注入 — 用 token budget 控制 checkpoint / memory / notes 注入上下文的大小,按重要性排序

任务追踪

树状任务系统(T1, T1.1, T1.2…),自动与检查点系统联动,恢复会话时任务进度不丢失。

子智能体系统

主智能体可按需生成子智能体,共享当前会话上下文并行工作,支持生命周期追踪、取消机制和后台执行。

Goal / 停止条件

/goal 命令为会话设置停止条件。当 agent 想停下来时,由独立裁判模型评估对话内容,判断条件是否真正满足——防止自主工作中的"乐观停止"。

Compose 编排模式

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

  • /dream — 扫描近期会话轨迹,提取持久知识到项目记忆,清理过时条目
  • /distill — 发现近期工作中重复的手动工作流,将高置信度候选打包成可复用的 skill、subagent 或 command

配置

通过项目目录下的 .mimocode/mimocode.json(或全局 ~/.config/mimocode/mimocode.json)配置。主要选项包括:

  • Provider 和模型选择
  • Agent 权限和自定义 Agent
  • 检查点和记忆行为
  • MCP 服务器连接
  • 快捷键和主题

Max Mode(并行 best-of-N 推理 + 裁判选优)可通过配置中的 experimental.maxMode 开启。


开发

bun install              # 安装依赖
bun run dev              # 开发模式运行
bun turbo typecheck      # 类型检查

与 OpenCode 的关系

MiMoCode 基于 OpenCode fork 构建,保留其全部核心能力(多 Provider、TUI、LSP、MCP、插件),并在此基础上构建了持久化记忆、智能上下文管理、子智能体编排、目标驱动的自主循环、Compose 工作流,以及通过 dream/distill 实现的自我进化。


社区

扫描二维码加入社区群聊:

社区群聊二维码


许可证

源代码基于 MIT 许可证 开源。

使用 MiMoCode 还需遵守使用限制。 使用小米 MiMo 托管服务须遵守 MiMo 服务条款。 使用 MiMo 名称、标志和商标须遵守 MiMo 商标政策。