About this project

MiMoCode is a terminal-native AI coding assistant from Xiaomi. It can read and write code, run commands, manage Git, and use a persistent memory system to retain project understanding across sessions while improving itself over time. It is also described as the core engine behind the Xiaomi MiMo Desktop beta. Installation is offered via a one-line script for macOS/Linux, a PowerShell command for Windows, or npm (`@mimo-ai/cli`), then run with `mimo`. First launch guides configuration: Xiaomi MiMo OAuth, Codex (ChatGPT Pro/Plus) OAuth, importing from Claude Code, catalog providers by API key or OAuth, and custom OpenAI-compatible providers. The README notes macOS Terminal.app is unsupported (iTerm2 or VS Code terminal recommended), and documents WSL clipboard, SSH TUI lag (via `mimo serve`/`mimo attach`), and Windows CJK encoding workarounds. Core features include multiple primary agents (build, plan, compose) switchable with Tab; persistent memory backed by SQLite FTS5 with project memory, session checkpoints, scratch notes, and task progress; intelligent context management with automatic checkpoints, context reconstruction, budgeted injection, and an adjustable compaction point via `/context-limit`; a tree-shaped task tracking system; a subagent system with lifecycle tracking and background execution; and a `/goal` stop condition judged by an independent model. Compose mode provides a specs-driven workflow, recommended as the `/compose-next` skill on the build agent, with a legacy compose agent orchestrating fourteen built-in skills. Workflows are deterministic JavaScript scripts running in a sandboxed runtime; four built-ins ship: compose, deep-research, fact-check, and research-experiment. Custom workflows go in `.mimocode/workflows/` or `.claude/workflows/`. Builtin skills cover arXiv, Claude Code delegation, Codex CLI, data analytics, deep research, Office formats (docx, pdf, pptx, xlsx), HTML-to-video, learning courses, scheduling, Python toolchain, product design, research paper writing, sales, skill creation, and super-research. Skills can be overridden or extended via project and personal directories, with environment variables controlling discovery and disabling. Additional features include streaming voice input (TenVAD and MiMo ASR) with `/voice`, `/dream` for extracting persistent knowledge, and `/distill` for packaging repeated workflows into skills, subagents, or commands. Configuration uses JSON/JSONC files with published JSON Schemas, project and global locations, XDG data/state/cache directories, and support for custom OpenAI-compatible endpoints.