Repository navigation
Releases: XiaomiMiMo/MiMo-Code
Release list
v0.1.15
Today Xiaomi released and open-sourced MiMo-V2.6 — the flagship multimodal model Pro, the efficient reasoning model Flash, and the ultra-fast model Pro-UltraSpeed. MiMoCode 0.1.15 follows with a number of improvements to everyday agent runs. Within a single agent step, model-emitted tool calls now go through a sequencing gate: only pure read/search tools overlap, everything else runs one after another; if a side-effecting call fails, later calls that could be affected are safely skipped. There is also a flood guard on tool calls — when a single response emits too many calls, the excess are held back instead of being executed, as a safeguard against over-aggressive batching. Session resume is also more dependable — recoverable provider errors back off and retry, and an interrupted session can pick up from the right recovery target, with idle subagents resumed alongside the main turn. On the input side, the Read tool can read images, audio, and video files, so multimodal agents can work with a wider range of material.
小米今日正式发布并开源 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 #2312
- fix(session): avoid _- in session IDs by @wqymi in #2195
- test: drop the resetDatabase fixture by @MiMoHardFather in #2319
- feat(node): export LLMServerTokens from the Node entry by @wqymi in #2325
- fix(tool): unify bash output truncation on a token budget by @MiMoHardFather in #2328
- test(session): cover case-insensitive search for mixed CJK titles by @MiMoHardFather in #2330
- fix(session): strip leading slash-mentions from title generation context by @wqymi in #2332
- fix(ui): preserve patch line endings in session diff view by @MiMoHardFather in #2339
- feat(tool): gate tool-name case folding behind a flag by @MiMoHardFather in #2343
- feat(provider): sniff image MIME and transcode BMP before send by @MiMoHardFather in #2344
- refactor(llm-server): serve chat models only by @wqymi in #2336
- fix(provider): skip plugin auth loader when provider is missing from catalog by @MiMoHardFather in #2350
- docs: announce MiMo Desktop open beta in readmes by @MiMoHardFather in #2352
- docs(readme): show MiMo Desktop UI screenshots in the en/zh readmes by @MiMoHardFather in #2353
- docs(readme): show MiMo Desktop UI screenshots in the en/zh readmes by @MiMoHardFather in #2354
- docs(readme): use the en desktop screenshot in the en readme by @MiMoHardFather in #2355
- feat(session): authoritative titles and session set-title by @wqymi in #2346
- fix(plugin): skip plugins that do not return a hook object by @MiMoHardFather in #2358
- fix(provider): keep Xiaomi non-PTC chat on the stock openai-compatible SDK by @MiMoHardFather in #2364
- feat(media): bound inline attachment size and gate PDF reads on capability by @MiMoHardFather in #2376
- fix(session): broaden recovery candidates and support model override on resume by @wqymi in #2377
- perf(history): bound search/get for large media sessions by @wqymi in #2374
- fix(actor): deliver terminal outcomes after execution settles by @wqymi in #2347
- fix(models): keep local catalog available during best-effort refresh by @wqymi in #2375
- feat(media): read audio and video as inline attachments by @MiMoHardFather in #2381
- test(history): use audio/aac as the unsupported attachment fixture by @yanyihan-xiaomi in #2384
- fix(task): publish Bus events on the calling fiber's Instance by @yanyihan-xiaomi in #2383
- fix(provider): keep Xiaomi models on the stock openai-compatible SDK by @MiMoHardFather in #2386
- fix(server): treat port 0 as OS ephemeral; stop preferring 4096 by @yanyihan-xiaomi in #2385
- fix(tool): gate read media attach on a finite MIME allowlist by @yanyihan-xiaomi in #2388
- fix(session): decouple memory system prompt from checkpoint flag by @yanyihan-xiaomi in #2389
- feat(tool): remove read-before-edit hard gate by @yanyihan-xiaomi in #2390
- feat(actor): drop model-facing context from spawn/run tool by @yanyihan-xiaomi in #2392
- fix(history): migrate indexes once with resumable progress by @wqymi in #2391
- fix(installation): pin plugin SDK npm version only for semver identities by @yanyihan-xiaomi in #2393
- feat(provider): classify MiMo gateway errors for xiaomi-* providers by @yanyihan-xiaomi in #2395
- fix(tools): exact-only tool name lookup; drop alias repair by @yanyihan-xiaomi in #2397
- fix(history): truncate FTS bodies via tool-result preview path by @wqymi in #2398
- fix(session): treat user image attachments as user media, not fake Read by @wqymi in #2404
- feat(tool): hard-gate main-worktree writes when auto_worktree is on by @wqymi in #2382
- fix(session): persist user-side synthetic reminders for prompt-cache stability by @wqymi in #2403
- fix(retry): stop request-phase ladders from stacking session.status reconnect frames by @wqymi in #2406
- fix(session): strip leading slash-command prefixes from title input by @wqymi in #2408
- fix(session): persistent exponential retry for recoverable errors by @wqymi in #2407
- fix(provider): treat context_window_exceeded as context overflow by @wqymi in #2417
- refactor(worktree): remove automatic isolation policy by @wqymi in #2413
- refactor(skill): unbundle design-blueprint and frontend-design by @MiMoHardFather in #2420
- fix(session): preserve Responses images in native tool outputs by @wqymi in #2418
- fix(session): clean empty residue on resume and re-dispatch parent user by @wqymi in #2419
- fix(provider): tolerate missing tool call IDs in openai-compatible streams by @MiMoHardFather in #2421
- fix(session): session abort cascades cancel to all same-session actors by @wqymi in #2424
- feat(session): experimental.uncommitted_hint re-hint on dirty user turns by @wqymi in #2423
- feat(session): cascade subagent resume and honest failure terminals by @wqymi in #2430
- fix(session): clean default system prompt residual by @yanyihan-xiaomi in #2434
- fix(agent): give general subagent skill rules and brand-root identity guard by @yanyihan-xiaomi in #2438
- fix(runner): ensure sent prompt always gets a loop by @wqymi in #2437
- fix(mcp): refresh host connections with bounded lifetimes by @wqymi in #2433
- fix(actor): settle orphaned running question parts on abandon sweep by @wqymi in #2441
- fix(mcp): truncate SDK execution exceptions before persistence by @penghao9 in #2447
- fix(mcp): host-owned admission at connect/add/store/auth boundaries by @wqymi in #2440
- fix(session): sweep orphan tool parts before idle with execution ownership by @wqymi in #2445
- fix(mcp): close residual admit gaps after PR#2440 merge by @wqymi in #2449
- feat(skill): default to mimocode+agents roots and skip dotted skill dirs by @yanyihan-xiaomi in #2446
- feat(session): trailing-user resume with exclusive admission by @wqymi in #2442
- fix(mcp): persist target presentation while t...
v0.1.14
What's Changed
- fix(skill): replace broken skill-tools filtering with glob prefix matching by @MiMoHardFather in #2166
- fix: remove skill search reminders and related infrastructure by @MiMoHardFather in #2168
- fix(gpt): align Codex prompt and shell tool exposure by @MiMoHardFather in #2176
- fix(gpt): correct Tengu AgentToolHook wrapper script alias by @MiMoHardFather in #2177
- feat: compact GPT tool surface with hidden tool registration by @MiMoHardFather in #2179
- fix(gpt): update reasoning format instruction to accept both We need and Need by @MiMoHardFather in #2178
- feat(tool-script): add exec_command parameter schema with yield_time_ms and workdir by @MiMoHardFather in #2180
- fix(provider): use 128K output defaults for large models by @MiMoHardFather in #2181
- fix(provider): align large-model output and compaction reserves by @MiMoHardFather in #2182
- fix(tool): keep exec gateway available under GPT tool filtering by @MiMoHardFather in #2183
- fix(session): preserve automatic harness inference by @MiMoHardFather in #2192
- feat(session): persist prompt and harness selection by @MiMoHardFather in #2191
- fix(tool): sync max_output_tokens command translator to main by @MiMoHardFather in #2201
- fix(tool): resolve MCP-prefixed tool aliases by @MiMoHardFather in #2202
- feat(provider): route Xiaomi PTC through Responses custom exec by @MiMoHardFather in #2203
- fix(session): defer text part creation until first delta by @wqymi in #2193
- fix(skill): pdf-official CJK font protocol — verified TTF ladder, CID fallback, never Helvetica by @oscar-cao7 in #2189
- refactor(skill): move drive-mimo to repository scope by @yanyihan-xiaomi in #2210
- fix(tool): repair custom exec parameter compatibility by @MiMoHardFather in #2211
- feat(session): support append-only interrupted turn recovery by @wqymi in #2205
- feat(exec): persist replayable nested tool parts by @yanyihan-xiaomi in #2222
- feat(skill): add mate builtin skill for desktop pet creation by @oscar-cao7 in #2225
- fix: restrict subagent actor calls to send action only by @wqymi in #2223
- feat: add subagent progress notifications by @wqymi in #2217
- feat: auto-worktree soft hint injection by @wqymi in #2227
- Remove change_directory and clarify shell path usage by @yanyihan-xiaomi in #2239
- refactor(session): centralize provider retry coordination by @wqymi in #2216
- Restore session cwd SDK compatibility and regenerate API by @yanyihan-xiaomi in #2241
- fix: default checkpoint writer to fork mode by @wqymi in #2246
- fix: gate GPT toolset on resolved API model for mimo by @MiMoHardFather in #2243
- fix: simplify MiMo model harness selection by @MiMoHardFather in #2252
- Allow relative paths within the workspace by @yanyihan-xiaomi in #2251
- feat(sdk): expose reliable genTitle API by @wqymi in #2228
- fix(session): preserve prompt cache prefixes by @MiMoHardFather in #2258
- fix(actor): scope fork contexts by session by @wqymi in #2259
- feat(session): add MIMOCODE_COMPACTION_MAX_CONTEXT flag by @MiMoHardFather in #2260
- fix(session): fire compaction at a flat 90% of the context window by @MiMoHardFather in #2263
- fix(session): scope replace-agent base override to main/peer actors by @MiMoHardFather in #2264
- fix(actor): drop the unimplemented spawn/run resume argument by @yanyihan-xiaomi in #2262
- feat(pptx-official): image sourcing decision rules by @oscar-cao7 in #2265
- test(session): retune the auto-overflow fixture for the flat 90% trigger by @yanyihan-xiaomi in #2266
- fix(mcp): record local startup exit code and stderr tail; scope ask-timeout env in tests by @wqymi in #2269
- fix(session): fire auto-worktree notice on main-worktree mutations by path by @wqymi in #2270
- fix(permission): same-session subagents inherit parent grants by @wqymi in #2273
- feat(session): collapse rebuild tail into activity log by @wqymi in #2275
- session: keep errored assistants as recovery candidates by @wqymi in #2279
- feat(session): request-layer loop-streak recovery (opt-in) by @wqymi in #2278
- feat(session): decouple instruction-file injection from the dynamic system prompt flag by @MiMoHardFather in #2285
- feat(session): freeze the per-session system prefix in a persistent snapshot by @MiMoHardFather in #2289
- feat(session): move skill catalogs from user messages to the system tail by @MiMoHardFather in #2287
- fix(build): prevent ancestor node_modules bun from hijacking compiled… by @MiMoHardFather in #2291
- feat(config): add auto_worktree toggle, default off by @wqymi in #2292
- fix(llm-server): advertise Server.listen so issue can resolve base_url by @wqymi in #2293
- fix(build-node): define MIMOCODE_VERSION for node target by @yanyihan-xiaomi in #2297
- feat(session): project compaction as a summary plus compression-time tail by @MiMoHardFather in #2294
- fix(mcp): show MiMoCode branding in OAuth pages and client registration by @MiMoHardFather in #2301
- chore(prompt): rewrite Tools section as Using your tools guidance by @MiMoHardFather in #2302
- fix(codex): allow explicit default harness for GPT by @MiMoHardFather in #2303
- fix(provider): stabilize defaultModel fallback (no menu-priority sort) by @wqymi in #2306
- fix(compose-next): require spec to land in the worktree by @yanyihan-xiaomi in #2307
- feat(tui): voice control via voice_input tool with caret/selection by @yanyihan-xiaomi in #2308
- fix(tui): restore voice_input schema shape and tolerate missing tool name by @yanyihan-xiaomi in #2309
- chore(sdk): regenerate openapi and js sdk types by @yanyihan-xiaomi in #2310
- chore: bump version to 0.1.14 by @yanyihan-xiaomi in #2311
Full Changelog: v0.1.13...v0.1.14