MiMo Code
MiMo Code is an AI-powered command-line interface tool designed to streamline software development by integrating large language models directly into your terminal workflow. It features autonomous file editing, context-aware code generation, intelligent debugging, and seamless shell command execution, with broad compatibility across various local and remote LLMs. By operating natively in the terminal, it eliminates context-switching overhead, providing developers with rapid, precise code transformations while maintaining strict control over their local environment. This makes it highly effective for rapid prototyping, complex codebase refactoring, and embedding automated AI assistance into CI/CD pipelines or headless server environments. Explore the repository at https://github.com/XiaomiMiMo/MiMo-Code to integrate MiMo Code into your development toolkit.
Latest Releases
All releases---
小米今日正式发布并开源 MiMo-V2.6 系列,包含全模态旗舰模型 Pro、高效推理模型 Flash 与超高速模型 Pro-UltraSpeed。MiMoCode 0.1.15 同步带来多项改进,覆盖智能体的日常运行。在同一次执行中,模型发出的多个工具调用会进入串行门禁:只读、检索类的工具仍可并行,其余调用依次执行;若带副作用的调用失败,后续可能受影响的调用会被安全跳过。此外还加入了工具调用的洪水检测:单次响应里调用量过大时,超出部分会被拦下而不真正执行,用于应对目前可能存在的过量调用。会话恢复也更加可靠:可恢复的模型错误会退避重试,中断的会话能够从正确的恢复点继续,空闲的子智能体会随主会话一并恢复。在输入侧,Read 工具支持读取图像、音频与视频文件,便于全模态智能体处理更丰富的材料。
What's Changed
- fix(websearch): use session model for Xiaomi sidecar requests by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2312
- fix(session): avoid _- in session IDs by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2195
- test: drop the resetDatabase fixture by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2319
- feat(node): export LLMServerTokens from the Node entry by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2325
- fix(tool): unify bash output truncation on a token budget by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2328
- test(session): cover case-insensitive search for mixed CJK titles by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2330
- fix(session): strip leading slash-mentions from title generation context by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2332
- fix(ui): preserve patch line endings in session diff view by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2339
- feat(tool): gate tool-name case folding behind a flag by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2343
- feat(provider): sniff image MIME and transcode BMP before send by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2344
- refactor(llm-server): serve chat models only by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2336
- fix(provider): skip plugin auth loader when provider is missing from catalog by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2350
- docs: announce MiMo Desktop open beta in readmes by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2352
- docs(readme): show MiMo Desktop UI screenshots in the en/zh readmes by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2353
- docs(readme): show MiMo Desktop UI screenshots in the en/zh readmes by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2354
- docs(readme): use the en desktop screenshot in the en readme by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2355
- feat(session): authoritative titles and session set-title by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2346
- fix(plugin): skip plugins that do not return a hook object by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2358
- fix(provider): keep Xiaomi non-PTC chat on the stock openai-compatible SDK by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2364
- feat(media): bound inline attachment size and gate PDF reads on capability by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2376
- fix(session): broaden recovery candidates and support model override on resume by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2377
- perf(history): bound search/get for large media sessions by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2374
- fix(actor): deliver terminal outcomes after execution settles by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2347
- fix(models): keep local catalog available during best-effort refresh by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2375
- feat(media): read audio and video as inline attachments by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2381
- test(history): use audio/aac as the unsupported attachment fixture by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2384
- fix(task): publish Bus events on the calling fiber's Instance by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2383
- fix(provider): keep Xiaomi models on the stock openai-compatible SDK by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2386
- fix(server): treat port 0 as OS ephemeral; stop preferring 4096 by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2385
- fix(tool): gate read media attach on a finite MIME allowlist by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2388
- fix(session): decouple memory system prompt from checkpoint flag by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2389
- feat(tool): remove read-before-edit hard gate by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2390
- feat(actor): drop model-facing context from spawn/run tool by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2392
- fix(history): migrate indexes once with resumable progress by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2391
- fix(installation): pin plugin SDK npm version only for semver identities by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2393
- feat(provider): classify MiMo gateway errors for xiaomi-* providers by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2395
- fix(tools): exact-only tool name lookup; drop alias repair by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2397
- fix(history): truncate FTS bodies via tool-result preview path by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2398
- fix(session): treat user image attachments as user media, not fake Read by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2404
- feat(tool): hard-gate main-worktree writes when auto_worktree is on by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2382
- fix(session): persist user-side synthetic reminders for prompt-cache stability by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2403
- fix(retry): stop request-phase ladders from stacking session.status reconnect frames by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2406
- fix(session): strip leading slash-command prefixes from title input by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2408
- fix(session): persistent exponential retry for recoverable errors by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2407
- fix(provider): treat contextwindowexceeded as context overflow by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2417
- refactor(worktree): remove automatic isolation policy by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2413
- refactor(skill): unbundle design-blueprint and frontend-design by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2420
- fix(session): preserve Responses images in native tool outputs by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2418
- fix(session): clean empty residue on resume and re-dispatch parent user by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2419
- fix(provider): tolerate missing tool call IDs in openai-compatible streams by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2421
- fix(session): session abort cascades cancel to all same-session actors by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2424
- feat(session): experimental.uncommitted_hint re-hint on dirty user turns by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2423
- feat(session): cascade subagent resume and honest failure terminals by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2430
- fix(session): clean default system prompt residual by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2434
- fix(agent): give general subagent skill rules and brand-root identity guard by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2438
- fix(runner): ensure sent prompt always gets a loop by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2437
- fix(mcp): refresh host connections with bounded lifetimes by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2433
- fix(actor): settle orphaned running question parts on abandon sweep by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2441
- fix(mcp): truncate SDK execution exceptions before persistence by @penghao9 in https://github.com/XiaomiMiMo/MiMo-Code/pull/2447
- fix(mcp): host-owned admission at connect/add/store/auth boundaries by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2440
- fix(session): sweep orphan tool parts before idle with execution ownership by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2445
- fix(mcp): close residual admit gaps after PR#2440 merge by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2449
- feat(skill): default to mimocode+agents roots and skip dotted skill dirs by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2446
- feat(session): trailing-user resume with exclusive admission by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2442
- fix(mcp): persist target presentation while tools are running by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2451
- fix(session): bounded UnknownError retry + no JSON quote wrap on string errors by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2450
- docs(skill): compose-next worktree base and short delivery range by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2457
- fix(session): unify resume recovery and subagent status ownership by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2455
- fix(core): disable directory script loading and remove evolve skill by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2459
- fix(tool): sequence multi-tool calls within each agent step by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2456
- fix(core): avoid scanning question history during project bootstrap by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2462
- Guard tool batches against flooding and failure cascades by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2463
- Remove speculative search batching advice from glob by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2464
- fix(session): align actor state, inbox rendering, and automatic titles by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2465
- Allow the first tool call during flooding recovery by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2487
- fix: expose PascalCase tools to MiMo v2.6 by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2490
- chore(sdk): regenerate openapi and js sdk types by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2499
- chore: bump version to 0.1.15 by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2500
Full Changelog: https://github.com/XiaomiMiMo/MiMo-Code/compare/v0.1.14...v0.1.15
Interrupted or errored turns stay recoverable: the incomplete assistant message is kept as a candidate, and
/recover continues the turn append-only without rewriting history.Conversation titles can be generated through a dedicated API (
POST /experimental/title, plus a genTitle helper) that falls back to a lite model when the preferred one is unavailable or returns invalid output.TUI voice input is upgraded to a tool-based
voice_input protocol: ASR applies caret/selection-aware insert or set, submit stays explicit through the send field, and the call shape is validated so models can drive it reliably.Also in this release: compaction keeps a summary plus only the API rounds that arrive while that summary is generated, triggers at a flat 90% of the context window, and collapses the post-rebuild tail into an activity log; unused
actor spawn/run resume arguments removed so models are pointed at send (already the supported path for waking and continuing a subagent); subagent actor use via exec limited to send; nested exec tool calls persisted and replayable in the TUI; same-session subagents inherit parent permission grants; per-session system prefix frozen in a snapshot for stable prompt-cache prefixes; optional auto_worktree notice (default off); skills updates for mate, pdf-official CJK fonts, and pptx-official image sourcing; plus provider/retry, MCP, compose-next, and build fixes.---
中断或出错的回合仍可恢复:未完成的 assistant 消息会保留为候选,
/recover 以 append-only 方式续跑,不改写历史。会话标题可通过专用 API 生成(
POST /experimental/title 与 genTitle helper);首选模型不可用或返回无效结果时,会回退到 lite model。TUI 语音输入升级为基于工具的
voice_input 协议:ASR 按光标/选区做 insert 或 set,发送始终由 send 字段显式触发;调用 schema 经过校验,模型可以稳定驱动。本版本还包括:compaction 保留 summary 以及生成期间到达的 API 轮次,触发条件改为上下文窗口的固定 90%,重建后的 tail 收成活动日志;删除
actor spawn/run 中未实现的 resume 参数,把模型导向本来就能用的 send;子代理经 exec 使用 actor 时仅允许 send;嵌套 exec 调用会持久化且可在 TUI 回放;同会话子代理继承父级权限;会话 system prefix 冻结进快照以保持 prompt-cache 前缀稳定;可选的 auto_worktree 提示(默认关闭);mate、pdf-official 中日文字体与 pptx-official 配图规则等 skill 更新;以及 provider/重试、MCP、compose-next 与构建相关修复。Features
- tui: upgrade voice input to the tool-based
voice_inputprotocol (caret/selection insert/set, explicit send, validated schema) by @yanyihan-xiaomi in #2308, #2309 - session: project compaction as a summary plus compression-time tail; fire at a flat 90% of the context window; add
MIMOCODECOMPACTIONMAX_CONTEXTenv default by @MiMoHardFather in #2294, #2263, #2260 - session: support append-only interrupted turn recovery (
/recover, TUI recover action); keep errored assistants as recovery candidates by @wqymi in #2205, #2279 - session: collapse rebuild tail into a compact activity log instead of replaying verbatim tool results by @wqymi in #2275
- session: freeze the per-session system prefix in a persistent snapshot; move skill catalogs from user messages to the system tail; preserve prompt cache prefixes by @MiMoHardFather in #2289, #2287, #2258
- sdk: expose reliable
POST /experimental/title/genTitlewith lite-model fallback and write guards by @wqymi in #2228 - actor: drop unimplemented spawn/run
actor_idresume arguments; keepsendas the path for waking and continuing a subagent by @yanyihan-xiaomi in #2262 - actor: limit subagent
actorcalls throughexectosendonly by @wqymi in #2217, #2223 - exec: persist replayable nested tool parts (versioned snapshots, TUI renderers, debounce) by @yanyihan-xiaomi in #2222
- permission: same-session subagents inherit parent grants (fall back to current session id for inherit parent) by @wqymi in #2273
- config: add
auto_worktreetoggle (default off); path-based once-per-session main-worktree mutation notice by @wqymi in #2227, #2270, #2292 - skill: add
matebuiltin skill for desktop pet creation by @oscar-cao7 in #2225 - skill: pdf-official CJK font protocol (per-OS TTF ladder, CID STSong-Light fallback, never Helvetica) by @oscar-cao7 in #2189
- skill: pptx-official image sourcing decision rules (draw / cite / search / generate; limited
image_genbudget) by @oscar-cao7 in #2265 - provider: route Xiaomi PTC through Responses custom exec; keep exec gateway available under GPT tool filtering by @MiMoHardFather in #2203, #2183
- tool-script: typed
execcommandparameters (cmd,yieldtime_ms,workdir); resolve MCP-prefixed tool aliases by @MiMoHardFather in #2180, #2202
Bug Fixes
- provider: use 128K output defaults for large model families; align large-model output and compaction reserves by @MiMoHardFather in #2181, #2182
- provider: stabilize
defaultModelfallback (cfg → recent → id-asc first allowed; no menu-priority sort) by @wqymi in #2306 - session: centralize provider retry coordination (terminal vs transient, Retry-After, no live-step replay after side effects) by @wqymi in #2216
- session: scope
replace-agentbase override to main/peer actors so subagents keep their own agent prompt by @MiMoHardFather in #2264 - session: allow relative paths within the workspace for file/search tools by @yanyihan-xiaomi in #2251
- session: defer text part creation until first delta (no empty text shells in DB) by @wqymi in #2193
- skill: replace broken skill-tools filtering with glob prefix matching; remove skill-search reminder infrastructure by @MiMoHardFather in #2166, #2168
- llm-server: advertise
Server.listensomimo llm-server issueresolves a realbase_url; publish/unpublish on serve stop by @wqymi in #2293 - mcp: record local startup exit code and stderr tail on stdio failure by @wqymi in #2269
- mcp: show MiMoCode branding in OAuth callback pages and DCR client registration by @MiMoHardFather in #2301
- compose-next: require spec to land in the worktree (pipeline
grill → workspace → spec → implement) by @yanyihan-xiaomi in #2307 - actor: scope fork contexts by session so repeated actor ids cannot collide across sessions by @wqymi in #2259
- build: prevent ancestor
node_modulesbun from hijacking compiled binaries (pin check +process.execPath) by @MiMoHardFather in #2291 - build-node: define
MIMOCODEVERSIONfor the node target so embedded builds stop extracting underbuiltinskills/local/by @yanyihan-xiaomi in #2297
Refactor
- skill: move
drive-mimoto repository scope (.mimocode/skills/) instead of the product-wide builtin bundle by @yanyihan-xiaomi in #2210 - session: simplify harness selection — explicit harness flag is the single source of truth; PTC transport no longer auto-selects the GPT toolset;
MIMOCODECODEXMODE=falseforces the default harness for every model by @MiMoHardFather in #2243, #2252, #2303 - tool: remove standalone
change_directory; require absolute working directories for shell/code-mode commands by @yanyihan-xiaomi in #2239 - prompt: rewrite Tools section as “Using your tools” guidance; instruction files default-on and decoupled from the dynamic system prompt flag by @MiMoHardFather in #2302, #2285
Internal / CI
- session: retune the auto-overflow fixture for the flat 90% trigger by @yanyihan-xiaomi in #2266
- sdk: regenerate openapi and js sdk types (projection schema, harness description, compaction field docs) by @yanyihan-xiaomi in #2310
- chore: bump version to 0.1.14 by @yanyihan-xiaomi in #2311
Full Changelog: https://github.com/XiaomiMiMo/MiMo-Code/compare/v0.1.13...v0.1.14
- fix(runtime): use Node APIs for hashing and FTS queries in core by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2110
- chore: drop the dead dev branch and the beta release path by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2111
- fix(flag): read MIMOCODEAUTOAPPROVE_DELETE lazily so embedders can toggle it at runtime by @JinyuXiang-Mimo in https://github.com/XiaomiMiMo/MiMo-Code/pull/2114
- feat(permission): make the delete-ask exemption instance-scoped, not process-global by @JinyuXiang-Mimo in https://github.com/XiaomiMiMo/MiMo-Code/pull/2115
- fix(provider): replay empty signed Anthropic thinking blocks by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2117
- fix(permission): let yolo auto-approve deletes by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2120
- feat(checkpoint): add disable switch by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2121
- fix(id): extend identifier timestamps to 64 bits before v1 wraps by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2122
- fix(checkpoint): hide disabled lifecycle prompt copy by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2124
- fix(checkpoint): hide disabled lifecycle prompt copy by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2130
- fix(session): stabilize MCP tool ordering by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2131
- fix(session): gate dynamic system prompt content behind flag by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2132
- fix(skill): add MIMOCODEDISABLEAGENTS_SKILLS flag by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2133
- fix(skill): dedupe skills catalog in model messages and cache global discovery by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2134
- perf(prompt): keep system environment cache-stable by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2119
- fix(agent): prevent subagents from spawning nested subagents by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2139
- fix(session): don't tell subagents to call the masked actor tool by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2140
- fix(provider): enforce Anthropic image dimension limits by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2146
- fix(tui): bash_delete prompt — stale glyph leak, dropped deletion lines, sizing by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2145
- fix(session): roll back the compaction boundary when no summary lands by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2148
- fix(codex): remove 372K context cap for GPT models by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2149
- feat(permission): decouple skip-all from permission ask timeout by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2151
- feat(server): OpenAI-compatible capability API on every session by @wqymi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2147
- fix: remove hasSideEffect for OpenAI Responses API compatibility by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2152
- feat(exec): expose all request-authorized MCP tools to exec without search gating by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2153
- feat(exec): add ALL_TOOLS catalog and transpile scripts with TypeScript by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2154
- feat: add MIMOCODECODEXMODE flag and unify system prompts by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2157
- feat(runtime): isolate child process environments by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2159
- fix(gpt): use normal prompt for mimo-v2.5 models by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2161
- Update SDK types and OpenAPI spec by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2162
- chore: bump version to 0.1.13 by @qiaozongming in https://github.com/XiaomiMiMo/MiMo-Code/pull/2164
Full Changelog: https://github.com/XiaomiMiMo/MiMo-Code/compare/v0.1.12...v0.1.13
- chore(sdk): sync generated types missed by earlier commits by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2078
- fix(release): widen npmmirror sync window, drop auto-retry, exit non-zero on failure by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2080
- feat(cli): add --yolo permission bypass alias by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2082
- docs: align contribution and security guidance by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2079
- feat(bash): exempt temp-scoped deletes from the forced-ask confirmation by @JinyuXiang-Mimo in https://github.com/XiaomiMiMo/MiMo-Code/pull/2099
- fix(session): retry GPT server overload errors by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2100
- fix(skill-search): blacklist reminder models by @MiMoHardFather in https://github.com/XiaomiMiMo/MiMo-Code/pull/2103
- fix(auth): stop handing user credentials to child processes by @yuyang27 in https://github.com/XiaomiMiMo/MiMo-Code/pull/2101
- fix(compose): make Compose Next model-invocable by @yanyihan-xiaomi in https://github.com/XiaomiMiMo/MiMo-Code/pull/2102
- chore: bump version to 0.1.12 by @qiaozongming in https://github.com/XiaomiMiMo/MiMo-Code/pull/2105
New Contributors
- @yuyang27 made their first contribution in https://github.com/XiaomiMiMo/MiMo-Code/pull/2101
Full Changelog: https://github.com/XiaomiMiMo/MiMo-Code/compare/v0.1.11...v0.1.12
The headline of this release is
memory.disable_write — a switch that stops MiMoCode from writing memory while leaving reads intact. With it on, no checkpoints, MEMORY.md, notes.md or task progress.md are written and dream/distill stop running automatically; nothing is ever deleted and the builtin memory search tool keeps working. One caveat we corrected in the same release: existing memory is *not* auto-loaded while writing is off — the dumps normally reach context through a checkpoint rebuild, which is short-circuited by design when no new checkpoint can be written, so the switch's wording no longer promises automatic availability.Also notable: a patched
@ai-sdk/openai-compatible fixes MCP tools with more than two parameters silently losing their arguments — the stream parser finalized a tool call as soon as the accumulated arguments first parsed as valid JSON, so providers that emit complete-JSON snapshots (e.g. OpenRouter) had all later fragments dropped. Plus a new memory-search builtin skill (querying the SQLite trajectory DB) and an MCP refactor that makes the single-client-per-process property structural instead of relying on layer memoisation.---
本次发布的主角是
memory.disable_write —— 一个只停写、不停读的记忆开关。开启后不再写入 checkpoint、MEMORY.md、notes.md 和任务 progress.md,dream/distill 也不再自动运行;任何文件都不会被删除,内置 memory 检索工具照常可用。同一版本里我们同时修正了一处措辞:停写期间既有记忆不会自动加载——记忆内容平时是靠 checkpoint 重建进入上下文的,而停写时无法写新 checkpoint,重建会按设计短路并降级为压缩,因此开关文案不再承诺"自动可用"。另一个重点:通过给
@ai-sdk/openai-compatible 打补丁,修复了参数多于两个的 MCP 工具静默丢参数的问题——流解析器一旦发现累积的 arguments 首次能解析为合法 JSON 就提前完结该工具调用,导致以完整 JSON 快照方式推流的 provider(如 OpenRouter)后续片段全部被丢弃。此外还新增 memory-search 内置技能(查询 SQLite 轨迹库),以及一次 MCP 重构:把"每进程单一 client"从依赖 layer memo 的巧合变成图上可见的结构性保证。Features
- memory: add the
memory.disable_writeswitch — stop memory writes, keep reads by @wqymi in #2040 - skill: add
memory-searchbuiltin skill — SQLite trajectory DB query guide by @JinyuXiang-Mimo in #2046, #2053
Bug Fixes
- mcp: patch
@ai-sdk/openai-compatibleto stop dropping multi-arg tool calls by @YOMXXX in #2054 - memory: stop promising memory loads itself while writing is off by @wqymi in #2071
- agent: align subagent prompts with runtime tool schemas by @MiMoHardFather in #2039
- session: scope diffs to requested message by @MiMoHardFather in #2055
- tui: hide runtime-spawned agent hosts from the Sessions list by @wqymi in #2035
- cli: normalize command output newlines by @yanyihan-xiaomi in #2041
Refactor
- mcp: share one process-wide client layer by @wqymi in #2044
Docs
- remove free MiMo Auto API mentions from READMEs by @MiMoHardFather in #2075
New Contributors
- @YOMXXX made their first contribution in https://github.com/XiaomiMiMo/MiMo-Code/pull/2054
Full Changelog: https://github.com/XiaomiMiMo/MiMo-Code/compare/v0.1.10...v0.1.11
Installation
curl -fsSL https://mimo.xiaomi.com/install | bash
npm install -g @mimo-ai/cli