Outil CLI
XiaomiMiMo/MiMo-Code avatar
XiaomiMiMo/MiMo-Code

MiMoCode : un assistant de codage IA natif du terminal avec mémoire persistante

Code MiMo : où les modèles et les agents co-évoluent. MiMoCode prend également en charge la connexion à n'importe quelle API de fournisseur LLM grand public.

13 111 étoiles1 351 forksTypeScriptMIT

En bref

De quoi s’agit-il ?
Un assistant natif du terminal de Xiaomi MiMo qui lit et écrit du code, exécute des commandes, gère Git et conserve le contexte du projet entre les sessions.
À qui s’adresse-t-il ?
MiMoCode est un fork d'OpenCode avec une mémoire, une gestion de contexte et une auto-amélioration ajoutées. Le code source est sous licence MIT, mais des restrictions distinctes et les conditions de Xiaomi s'appliquent.
Puis-je l’utiliser commercialement ?
Oui. MIT est une licence permissive : vous pouvez utiliser, modifier et vendre un logiciel qui en dépend, à condition de conserver les mentions de droit d’auteur et de licence.
Est-il encore maintenu ?
Oui. Les derniers commits datent d’il y a 1 jour.
En quel langage est-il écrit ?
Principalement TypeScript, d’après les statistiques de langage de GitHub.

Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 14 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.

ANALYSE OPEN SOURCE APPROFONDIE

Un assistant natif du terminal avec un système de mémoire

MiMoCode est un assistant de codage IA natif du terminal. Selon le README, il peut lire et écrire du code, exécuter des commandes, gérer Git et utiliser un système de mémoire persistante pour maintenir une compréhension approfondie d'un projet entre les sessions tout en s'améliorant continuellement. Le canal MiMo Auto intégré est gratuit pour une durée limitée et ne nécessite aucune configuration. L'assistant peut également se connecter aux API des principaux fournisseurs de LLM. La description du dépôt indique « Where Models and Agents Co-Evolve », ce qui est aussi le slogan du README.

Premier lancement et options de fournisseur

La section de démarrage rapide répertorie des installateurs en une ligne pour macOS/Linux (curl) et Windows PowerShell, ainsi qu'une installation npm pour toutes les plateformes, puis l'exécution de « mimo ». Le premier lancement guide à travers la configuration. Les options prises en charge incluent MiMo Auto (anonyme, gratuit pour une durée limitée), la plateforme Xiaomi MiMo via OAuth, Codex via OAuth OpenAI, l'importation depuis Claude Code, une liste de fournisseurs pour les clés API ou OAuth (par exemple xAI/Grok), et un fournisseur personnalisé pour toute API compatible OpenAI. Le README fournit également des notes de dépannage pour le presse-papiers WSL, le rendu du terminal macOS, le décalage TUI via SSH et la sortie CJK sous Windows.

Modes d'agent et workflow compose

MiMoCode a trois agents principaux : build (par défaut, permissions complètes sur les outils), plan (analyse en lecture seule) et compose (orchestration pour le développement piloté par spécifications). La touche Tab permet de basculer entre eux. Après le premier message, le mode est verrouillé : build et plan peuvent encore basculer, mais compose est isolé. Pour les modèles frontaliers, la méthode recommandée pour exécuter un travail de type compose est l'agent build avec la compétence « /compose-next ». L'agent compose hérité orchestre quatorze compétences intégrées. Il existe également une commande « /goal » qui définit une condition d'arrêt, évaluée par un modèle indépendant pour éviter les arrêts prématurés. Les sous-agents peuvent être créés à la demande, partagent le contexte de session, travaillent en parallèle et ont un suivi du cycle de vie.

Mémoire persistante et gestion du contexte

Le système de mémoire est alimenté par la recherche en texte intégral SQLite FTS5. Il comprend la mémoire du projet (MEMORY.md), le point de contrôle de session (checkpoint.md), les notes brouillons (notes.md) et la progression par tâche sous tasks/<id>/progress.md. La mémoire est injectée automatiquement lors de la reprise d'une session. Les fonctionnalités de gestion du contexte incluent des points de contrôle automatiques, la reconstruction du contexte à partir du dernier point de contrôle lorsque la limite approche, une injection budgétaire avec classement par importance et un point de compactage réglable via « /context-limit » ou « compaction.max_context ». Le README explique pourquoi un utilisateur pourrait vouloir compacter plus tôt : les niveaux de coût, une fenêtre utilisable qui peut différer de celle annoncée selon la route, et des considérations de qualité/latence.

Workflows et compétences

Les workflows sont des scripts JavaScript déterministes qui orchestrent plusieurs agents dans un runtime sandboxé. Quatre workflows intégrés sont répertoriés : compose (pipeline complet avec des phases de Brainstorm à Merge), deep-research (rapport multi-sources), fact-check (vérification contradictoire) et research-experiment (boucle d'optimisation autonome). Les workflows personnalisés peuvent être placés dans .mimocode/workflows/ ou .claude/workflows/. Les compétences sont des ensembles d'instructions réutilisables ; le README liste 24 compétences intégrées, notamment arxiv, docx-official, pdf-official, evolve et skill-creator. Les compétences peuvent être remplacées par des compétences utilisateur dans des répertoires de projet ou personnels. Les variables d'environnement peuvent désactiver les compétences intégrées ou les masquer de l'autocomplétion TUI.

Configuration et contrôles de permission

MiMoCode utilise des fichiers de configuration JSON/JSONC avec des schémas JSON publiés. La configuration principale peut être au niveau du projet (.mimocode/mimocode.jsonc) ou globale (~/.config/mimocode/mimocode.jsonc). La configuration TUI et les informations d'authentification ont leurs propres emplacements. Des points de terminaison personnalisés compatibles OpenAI peuvent être ajoutés avec baseURL, apiKey et ID de modèle. Le README avertit que apiKey est stocké en clair et ne doit pas être commité. Les contrôles de permission incluent une invite external_directory pour les fichiers en dehors du répertoire de travail du projet, et un drapeau « --dangerously-skip-permissions » pour les environnements jetables de confiance. Le README avertit explicitement des risques et note qu'une règle « ask » restante peut rendre le drapeau sans effet.

Développement, lignée et licence

Les commandes de développement utilisent bun : « bun ci » installe les dépendances, « bun run dev » exécute le mode développement et « bun turbo typecheck » effectue la vérification de type. Le README indique que MiMoCode est construit comme un fork d'OpenCode et conserve ses capacités de base (fournisseurs, TUI, LSP, MCP, plugins) tout en ajoutant la mémoire persistante, la gestion du contexte, l'orchestration des sous-agents, les boucles orientées objectif, les workflows compose et l'auto-amélioration dream/distill. Le code source est sous licence MIT, avec les droits d'auteur détenus par MiMo Code et Xiaomi Corporation (et 2025 opencode). La licence MIT accorde l'utilisation, la copie, la modification, la fusion, la publication, la distribution, la sous-licence et la vente, sans fournir de garantie. Le README mentionne également des restrictions d'utilisation distinctes, les conditions d'utilisation de MiMo pour les services hébergés et une politique de marque ; ces documents ne sont pas inclus dans les métadonnées du dépôt que nous possédons. Avec MiMoCode, commencez par `npm install -g @mimo-ai/cli` puis `mimo` dans un dépôt de test. Vérifiez l'authentification choisie et la capacité à lire, modifier, exécuter une commande et gérer Git avant de lui ouvrir un vrai projet. Pour une machine distante, `mimo serve --port 4096` et `mimo attach http://127.0.0.1:4096` séparent le rendu TUI du serveur. Examinez aussi `MEMORY.md`, `checkpoint.md` et `tasks/<id>/progress.md` après plusieurs sessions : la mémoire persistante est un avantage opérationnel, mais elle devient une surface de contrôle à sauvegarder et à nettoyer.

Conclusion éditoriale

MiMoCode est un fork d'OpenCode avec une mémoire, une gestion de contexte et une auto-amélioration ajoutées. Le code source est sous licence MIT, mais des restrictions distinctes et les conditions de Xiaomi s'appliquent. Avec MiMoCode, commencez par `npm install -g @mimo-ai/cli` puis `mimo` dans un dépôt de test. Vérifiez l'authentification choisie et la capacité à lire, modifier, exécuter une commande et gérer Git avant de lui ouvrir un vrai projet. Pour une machine distante, `mimo serve --port 4096` et `mimo attach http://127.0.0.1:4096` séparent le rendu TUI du serveur. Examinez aussi `MEMORY.md`, `checkpoint.md` et `tasks/<id>/progress.md` après plusieurs sessions : la mémoire persistante est un avantage opérationnel, mais elle devient une surface de contrôle à sauvegarder et à nettoyer.

Sources officielles

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Notes de la communauté

Notes de la communauté