MiMo-Code: l'alternativa di Xiaomi a Claude Code
Scopri MiMo-Code, l'agente CLI di Xiaomi con licenza MIT, derivato da OpenCode. Verifica le prestazioni dichiarate nei benchmark prima di cambiare strumento.
Che cos'è MiMo-Code?
MiMo-Code è un agente di coding da terminale sviluppato dal team MiMo di Xiaomi e rilasciato come open source nel giugno 2026 con licenza MIT. L'articolo di presentazione di Xiaomi, datato 10 giugno 2026, lo descrive già come software open source. Viene eseguito come strumento CLI (interfaccia a riga di comando) nella shell. Legge e modifica i file di un progetto, esegue comandi shell, gestisce git e conserva note sulla base di codice tra una sessione e l'altra.
La struttura è analoga a quella di Claude Code. Descrivi un'attività in linguaggio naturale, l'agente propone modifiche e comandi e tu li approvi. Due differenze sono importanti. Il codice sorgente è aperto, quindi puoi verificare esattamente cosa invia l'agente al modello. Inoltre, il modello viene scelto separatamente dall'agente: lo stesso harness può usare i modelli di Xiaomi, un endpoint compatibile con OpenAI oppure un modello ospitato autonomamente.
Il repository si chiama MiMo-Code e il comando che installa è mimo. Entrambi i nomi compaiono nella documentazione, quindi cercando uno dei due si trova lo stesso strumento.
Da dove proviene MiMo-Code e perché è importante
MiMo-Code è un fork di OpenCode, l’agente open source da terminale del progetto sst. Il file LICENSE conserva la riga Copyright (c) 2025 opencode originale e il README include una breve sezione sul rapporto tra i due progetti. Nel repository è presente un issue aperto che chiede a Xiaomi di attribuire il merito ai contributori di OpenCode in modo più completo rispetto a quanto faccia una semplice riga di licenza conservata.
Questo spiega un aspetto che altrimenti sembrerebbe impossibile. Un progetto rilasciato per la prima volta a giugno 2026 include già una TUI (interfaccia utente testuale) rifinita, un sistema di plugin, un’astrazione dei provider che comunica con molte API di modelli, il supporto a MCP (model context protocol) e l’integrazione con LSP (language server protocol). Questo lavoro non è stato realizzato in poche settimane. È arrivato con il fork. Le novità introdotte da Xiaomi sono il livello di memoria e il collegamento ai modelli proprietari di Xiaomi.
Se hai già eseguito OpenCode su un VPS, la struttura e le scorciatoie da tastiera ti risulteranno familiari, perché sotto il cofano è lo stesso codice.
Che cosa significa davvero che "modelli e agenti co-evolvono"
Il sottotitolo del repository è "Dove modelli e agenti co-evolvono". Questa frase contiene due affermazioni distinte, ma solo una è supportata da dettagli pubblicati.
La prima riguarda il runtime ed è documentata. MiMo-Code mantiene per ogni progetto un archivio persistente della memoria, basato sulla ricerca full-text di SQLite, insieme allo stato della sessione e all'avanzamento delle attività. Due comandi slash lo gestiscono. /dream estrae le conoscenze persistenti dalle sessioni recenti e le scrive nella memoria del progetto. /distill trasforma una procedura ripetuta in una skill riutilizzabile. Il documento tecnico pubblicato da Xiaomi afferma che Dream viene eseguito automaticamente ogni 7 giorni e Distill ogni 30 giorni, non al termine di ogni sessione. Di conseguenza, il comportamento dell'agente sul repository cambia nel tempo, mentre il file del modello resta identico. Questo archivio si aggiorna automaticamente, ma non sostituisce i file di istruzioni che scrivi manualmente; in un monorepo è preferibile organizzarli come un file piccolo per pacchetto invece di un unico file nella directory radice, così l'agente carica quello relativo alla directory in cui sta lavorando. Scrivere questi file è la parte semplice. Quando l'agente ignora una regola che ritenevi sufficientemente chiara, le ragioni per cui un'istruzione viene ignorata sono più meccaniche che misteriose. La memoria distillata dalle sessioni precedenti è solo un modo per evitare che un agente debba reimparare un progetto da zero. Anche una mappa tree-sitter del repository che l'agente può interrogare tramite MCP riduce lo stesso spreco, ma agisce dal lato opposto: fornisce direttamente la struttura invece di costringerlo a ricostruirla leggendo nuovamente il repository.
La seconda riguarda l'addestramento, e in questo caso è necessario essere prudenti. Xiaomi descrive il post-training di MiMo-V2.5 come una pipeline in tre fasi: supervised fine-tuning, quindi reinforcement learning (RL) agentico su larga scala, infine distillazione on-policy da diversi modelli teacher specialistici a un unico modello student. Il RL agentico significa che il modello è stato addestrato su episodi multi-step con chiamate agli strumenti, anziché su singole coppie domanda-risposta. Questo è documentato e spiega perché il modello mantenga la coerenza durante sequenze lunghe di chiamate agli strumenti. Xiaomi non ha però pubblicato un report di addestramento che dimostri l'ottimizzazione del modello all'interno di questo harness specifico, con un harness che cambia in risposta al modello.
Quindi interpreta "co-evolvono" come una dichiarazione di intenti da parte di un team che controlla entrambe le componenti. Il vantaggio che puoi osservare concretamente è più limitato, ma resta utile: le stesse persone definiscono gli schemi degli strumenti e il system prompt, oltre a distribuire il modello, quindi questi elementi sono progettati per funzionare insieme. Claude Code non può operare nello stesso modo, perché il suo harness è un client di un modello accessibile tramite un'API fissa. Anthropic addestra comunque i propri modelli per l'uso agentico, ma non puoi sostituire il modello sottostante lasciando invariato l'harness.
Come appare una sessione MiMo-Code in un terminale
L'esecuzione di mimo apre un'interfaccia a terminale a schermo intero. Si specifica un'attività, l'agente legge i file, propone una modifica e chiede conferma prima di scrivere o eseguire qualsiasi cosa. Oltre alla modalità di build predefinita, include una modalità di pianificazione e una modalità di composizione, oltre a un sistema di subagent che affida parte del lavoro a un'esecuzione separata dell'agente. Claude Code raggiunge lo stesso risultato dall'altra direzione: uno stile di output riscrive direttamente il prompt di sistema invece di passare da un insieme fisso di modalità predefinite. Include inoltre un ampio insieme di competenze integrate, ovvero procedure preconfezionate che l'agente può richiamare per nome. Una competenza può anche modificare il modo in cui l'agente opera, anziché ciò che sa; questo è il principio alla base di Ponytail, una competenza che impone all'agente di applicare la modifica minima funzionante.
Prima di iniziare, è utile conoscere alcuni dettagli.
- Per impostazione predefinita, l'approvazione viene richiesta per ogni azione. Il flag
--dangerously-skip-permissionsrimuove le richieste di conferma. Il nome descrive correttamente il comportamento, quindi usalo solo quando un errore non comporta conseguenze. MiMo-Code gestisce questa impostazione come un interruttore tutto-o-niente, mentre Claude Code suddivide la stessa decisione in modalità di autorizzazione con livelli diversi; per questo cosa consente all'agente la modalità automatica senza chiedere conferma è il confronto utile da fare prima di usare il flag. - Funziona senza un terminale interattivo.
mimo runriceve un prompt ed esegue l'operazione in modalità non interattiva, come richiesto da uno script o da un processo CI. - La configurazione risiede in file che puoi salvare nel repository. Un progetto legge
.mimocode/mimocode.jsonc, mentre le impostazioni globali risiedono in~/.config/mimocode/mimocode.jsonc. - Le credenziali non risiedono in questi file. Vengono salvate in
~/.local/share/mimocode/auth.json, quindi escludi quel percorso da git e da qualsiasi backup che condividi.
Un agente in grado di eseguire comandi shell è un programma a cui hai affidato la shell. Assegnagli una macchina e un utente dedicati. Il modo più sicuro per provare un nuovo agente è usare una VM temporanea da eliminare al termine della sessione, perché un comando errato comporta una nuova installazione invece di un ripristino.
MiMo-Code supera davvero Claude Code?
Il materiale di lancio di Xiaomi fa un’affermazione precisa: eseguendo lo stesso modello in entrambi gli ambienti, MiMo-Code ottiene un punteggio più alto. Questi sono i valori pubblicati.
I dati alla base di questo grafico
[
{
"tool": "MiMo-Code",
"swe_bench_pro_pct": 62,
"terminal_bench_2_pct": 73
},
{
"tool": "Claude Code",
"swe_bench_pro_pct": 57,
"terminal_bench_2_pct": 68
}
]Su SWE-bench Pro, Xiaomi riporta 62 percento per MiMo-Code contro 57 percento per Claude Code. Su Terminal Bench 2, i valori sono 73 percento e 68 percento. L’interpretazione proposta è che il modello sia mantenuto costante, quindi una differenza di circa cinque punti dipenda dal sistema agent e non dal modello. Questa interpretazione è significativa solo se si sa che cosa comprende realmente un agent harness: il ciclo di esecuzione, le definizioni degli strumenti, le richieste di autorizzazione e lo stato della sessione sono gli elementi che cambiano tra i due sistemi, mentre i pesi restano invariati.
Considerare questi dati come valori dichiarati dal fornitore. Xiaomi ha eseguito la valutazione e ne ha pubblicato i risultati. Ad agosto 2026, MiMo-Code non compariva nelle classifiche pubbliche di SWE-bench o Terminal-Bench. Fino a quel momento, quindi, nessun soggetto indipendente aveva riprodotto la differenza. Xiaomi è insolitamente esplicita sui limiti del proprio risultato. Il documento dell’azienda afferma che questi benchmark misurano la risoluzione al primo tentativo di problemi relativi a singoli repository e che, nei test interni, i due agent hanno ottenuto risultati pressoché equivalenti sotto circa 200 passaggi di esecuzione. Il vantaggio dichiarato emerge nelle esecuzioni lunghe, che un benchmark al primo tentativo non copre.
Questa è l’interpretazione corretta. Una differenza di cinque punti in un benchmark eseguito dal fornitore è un motivo per provare lo strumento. Non è un motivo per trasferirvi il lavoro da cui dipende il team.
Cosa costa eseguire MiMo-Code
Al momento del lancio Xiaomi ha reso disponibile un canale gratuito chiamato MiMo Auto, utilizzabile senza registrazione. Fin dall'inizio è stato descritto come temporaneo e il 23 July 2026 Xiaomi ha annunciato che la fase di utilizzo gratuito di MiMo Code sarebbe terminata alle 18:00 del 26 July 2026, indirizzando gli utenti verso un Token Plan a pagamento. Il canale è stato chiuso, quindi pianifica l'accesso a pagamento.
L'accesso a pagamento alla piattaforma Xiaomi è economico rispetto ai provider più avanzati. Una riduzione permanente dei prezzi, sincronizzata a livello globale e applicata dal 27 May 2026, ha fissato MiMo-V2.5-Pro a $0.435 per milione di token di input in caso di cache miss e a $0.87 per milione di token di output. La stessa riduzione ha eliminato la tariffazione distinta in base alla lunghezza dell'input, quindi un'unica tariffa copriva l'intera finestra di contesto da 1M di token. MiMo-V2.5-Pro è stato successivamente ritirato. Xiaomi ha instradato le richieste verso MiMo-V2.6 dalle 18:00 del 14 October 2026 (UTC+8), mentre MiMo-V2.5-Pro e MiMo-V2.5 sono stati ritirati alle 10:00 del 21 October 2026 (UTC+8). I relativi model ID non funzionano più, quindi indirizza ogni configurazione verso MiMo-V2.6-Pro. Al 25 October 2026 Xiaomi indica MiMo-V2.6-Pro alle stesse tariffe di $0.435 e $0.87 per milione di token, con una finestra di contesto da 1M di token. I prezzi cambiano, quindi consulta la pagina aggiornata prima di definire un budget.
L'altra possibilità consiste nell'usare il proprio hardware. I weights di MiMo-V2.5 e MiMo-V2.5-Pro sono pubblicati su Hugging Face con licenza MIT e il ritiro delle API non li ha rimossi, quindi nulla impedisce di servirli autonomamente. Considera realisticamente la scala necessaria. Un modello con una finestra di contesto da un milione di token non è adatto a un VPS ordinario: serve un VPS con una GPU collegata oppure una macchina dedicata. I modelli locali più piccoli richiedono un approccio diverso, più vicino a eseguire Ollama su un VPS per ospitare autonomamente un LLM.
MiMo-Code si collega anche ad altri vendor. Può migrare un login esistente di Claude Code, collegare un account OpenAI, accettare una API key per un altro provider oppure comunicare con qualsiasi endpoint compatibile con OpenAI. Controlla i termini di un abbonamento consumer prima di collegarlo, perché i termini del provider stabiliscono quali client possono usare un piano in abbonamento e una CLI di un altro vendor non è sempre inclusa.
Conviene abbandonare Claude Code?
Se paghi già Claude Code e funziona, no. La versione 0.1.15 di fine September 2026, circa tre mesi dopo la prima release e ancora l'ultima release al 25 October 2026, è un segnale chiaro. Un numero di versione 0.1.x indica che tra le release possono esserci breaking change e che il formato di configurazione è ancora in evoluzione. Questo è accettabile per uno strumento che stai valutando, ma può creare problemi se un team vi fa affidamento.
MiMo-Code merita una valutazione seria in quattro situazioni.
- Il costo è un problema. I prezzi dei token di Xiaomi sono molto inferiori a quelli dei vendor più avanzati e l'agent non ha costi.
- Devi poter esaminare l'harness. L'open source consente di ispezionare i prompt e le definizioni degli strumenti, un aspetto importante per una security review o un audit.
- Vuoi acquistare separatamente agent e modello, così la sostituzione di uno non obbliga a sostituire anche l'altro.
- Il codice non può lasciare la tua rete. I weights disponibili rendono possibile un backend self-hosted invece di richiedere una trattativa.
Cursor e Copilot sono un confronto diverso. Entrambi funzionano all'interno di un editor, mentre MiMo-Code funziona in un terminale. Questa differenza incide sulla maggior parte della giornata lavorativa più di qualsiasi punteggio benchmark e il confronto tra Claude Code, Cursor, Codex e Copilot analizza in dettaglio il compromesso.
Eseguire MiMo-Code su un VPS già disponibile
Un agente da terminale deve essere eseguito su un server. Mantiene una sessione aperta per ore, richiede una rete stabile e deve continuare a funzionare anche quando il coperchio del laptop è chiuso. Il modello operativo è lo stesso usato per altri agenti da terminale: una sessione persistente su un piccolo server, a cui ci si ricollega da qualsiasi luogo, descritta in eseguire un agente di programmazione in tmux su un VPS. Se su quel server lavora più di un agente, Claude Code può passare direttamente il testo da una sessione all'altra, evitando di trasferire manualmente l'output tra le finestre di tmux.
Assegna all'agente un utente non privilegiato dedicato e indirizzalo a un clone del repository, non alla tua unica copia. L'accesso dell'agente è limitato ai privilegi dell'account con cui viene eseguito. Questo è il controllo che continua a funzionare anche quando un prompt produce un risultato imprevisto.
Il progetto viene distribuito in due modi: tramite un installer shell pubblicato su HTTPS e tramite un pacchetto npm denominato @mimo-ai/cli, per le macchine che dispongono già di Node.js. Su un server importante, preferisci il pacchetto npm. Puoi esaminare il contenuto del pacchetto prima di eseguirlo e non invii direttamente uno script remoto a una shell. Per una panoramica più ampia di ciò che merita un posto su quel server, la panoramica degli agenti IA self-hosted offre una guida.
FAQ
MiMo-Code è gratuito?
L'agent è gratuito e open source con licenza MIT, quindi puoi leggerlo e modificarlo. Il modello che lo alimenta è la parte a pagamento. Al momento del lancio Xiaomi ha reso disponibile un canale gratuito temporaneo chiamato MiMo Auto e ha terminato la fase di utilizzo gratuito di MiMo Code il 26 July 2026, quindi pianifica l'accesso a pagamento. Una riduzione permanente dei prezzi applicata il 27 May 2026 ha fissato MiMo-V2.5-Pro a $0.435 per milione di token di input in caso di cache miss e a $0.87 per milione di token di output. Xiaomi ha ritirato MiMo-V2.5-Pro il 21 October 2026 e il suo successore, MiMo-V2.6-Pro, è indicato alle stesse tariffe al 25 October 2026. Puoi anche configurare MiMo-Code per usare qualsiasi endpoint compatibile con OpenAI e pagare un altro vendor.
MiMo-Code è la stessa cosa di OpenCode?
È nato come fork di OpenCode e ne condivide ancora il nucleo. L'interfaccia del terminale, il sistema di plugin, l'astrazione dei provider e l'integrazione MCP provengono tutti da quel codebase, e la riga di copyright di OpenCode è conservata nel file LICENSE del repository. Xiaomi ha aggiunto un livello di memoria persistente basato sulla ricerca full-text di SQLite, ulteriori modalità agent e l'accesso diretto ai propri modelli. Se conosci OpenCode, conosci già la maggior parte del comportamento di MiMo-Code.
Posso usare MiMo-Code con modelli Claude o GPT invece dei modelli Xiaomi?
Sì. La configurazione iniziale propone di migrare un login esistente di Claude Code, collegare un account OpenAI oppure accettare una API key per un altro provider; puoi anche configurare manualmente qualsiasi endpoint compatibile con OpenAI in ~/.config/mimocode/mimocode.jsonc. Controlla i termini di un abbonamento consumer prima di collegarlo, perché i termini del provider stabiliscono quali client possono usare un piano in abbonamento.
È sicuro eseguire MiMo-Code sulla macchina principale?
Trattalo come qualsiasi agent in grado di eseguire comandi shell. Per impostazione predefinita richiede l'approvazione prima di ogni azione e --dangerously-skip-permissions disattiva queste richieste: è così che si verificano la maggior parte degli incidenti. Eseguilo con un utente dedicato senza privilegi, su un clone del repository e, preferibilmente, su una macchina che puoi eliminare e ricreare. Il suo raggio d'azione è limitato all'account con cui viene eseguito, quindi mantieni quell'account con il minimo numero possibile di privilegi.