SSD Nodes Learn Hosting plans →
Guias Matt ConnorPor Matt Connor · Atualizado 2026-08-26

MiMo-Code: o agente de código da Xiaomi

Conheça o MiMo-Code, agente CLI open source da Xiaomi com licença MIT e fork do OpenCode. Veja as alegações de benchmark antes de trocar de ferramenta.

O que é o MiMo-Code?

O MiMo-Code é um agente de programação para terminal desenvolvido pela equipa MiMo da Xiaomi e lançado como software open source em 15 June 2026 sob a licença MIT. Funciona como uma ferramenta CLI (command line interface) na shell. Lê e edita ficheiros num projeto, executa comandos da shell, utiliza o git e mantém notas sobre a base de código entre sessões.

A estrutura é semelhante à do Claude Code. Descreve uma tarefa em linguagem simples, o agente propõe alterações e comandos, e aprova-os. Há duas diferenças importantes. O código-fonte é aberto, pelo que pode ver exatamente o que o agente envia ao modelo. Além disso, o modelo é escolhido separadamente do agente. Assim, o mesmo harness pode utilizar os modelos da Xiaomi, um endpoint compatível com OpenAI ou um modelo alojado por si.

O repositório chama-se MiMo-Code e o comando que instala é mimo. Os dois nomes aparecem na documentação, pelo que uma pesquisa por qualquer um deles encontra a mesma ferramenta.

Origem do MiMo-Code e por que isso é importante

O MiMo-Code é um fork do OpenCode, o agente de terminal de código aberto do projeto sst. O ficheiro LICENSE mantém a linha Copyright (c) 2025 opencode original, e o README inclui uma secção curta sobre a relação entre os projetos. Existe uma issue aberta no repositório que pede à Xiaomi para creditar os contribuidores do OpenCode de forma mais completa do que uma linha de licença preservada permite.

Isto explica algo que, de outro modo, pareceria impossível. Um projeto lançado pela primeira vez em junho de 2026 já inclui uma TUI (interface de utilizador de texto) bem desenvolvida, um sistema de plugins, uma abstração de providers compatível com muitas APIs de modelos, suporte para MCP (model context protocol) e integração com LSP (language server protocol). Esse trabalho não foi feito em seis semanas. Veio com o fork. O que a Xiaomi acrescentou foi a camada de memória e a integração com os seus próprios modelos.

Se já executou o OpenCode num VPS, o layout e os atalhos de teclado serão familiares, porque o código subjacente é o mesmo.

O que significa realmente “modelos e agentes evoluem em conjunto”

A descrição do repositório é “Onde modelos e agentes evoluem em conjunto”. Essa frase contém duas afirmações distintas, mas apenas uma delas é sustentada por detalhes publicados.

A primeira afirmação diz respeito ao runtime e está documentada. O MiMo-Code mantém um armazenamento de memória persistente para cada projeto, suportado por pesquisa de texto integral do SQLite, juntamente com o estado da sessão e o progresso das tarefas. Dois comandos slash controlam esse mecanismo. /dream extrai conhecimento duradouro das sessões recentes e grava-o na memória do projeto. /distill transforma um procedimento repetido numa skill reutilizável. O próprio texto de engenharia da Xiaomi afirma que estes comandos são executados num ciclo de aproximadamente uma a quatro semanas, e não depois de cada sessão. Assim, o comportamento do agente no seu repositório muda ao longo do tempo, enquanto o ficheiro do modelo permanece idêntico. Esse armazenamento é preenchido automaticamente, mas não substitui os ficheiros de instruções que escreve manualmente. Num monorepo, é preferível manter esses ficheiros num ficheiro pequeno por pacote, em vez de num único ficheiro na raiz; o agente carrega o ficheiro correspondente ao diretório em que está a trabalhar. Escrever esses ficheiros é a parte fácil. Quando o agente ignora uma regra que parecia clara, as razões pelas quais uma instrução é ignorada são mais mecânicas do que misteriosas. A memória destilada de sessões anteriores é apenas uma forma de impedir que o agente volte a aprender o projeto do zero. Um mapa do repositório criado com tree-sitter e consultável pelo agente através de MCP reduz o mesmo desperdício pelo lado oposto, fornecendo a estrutura em vez de obrigar o agente a reconstruí-la através da leitura.

A segunda afirmação diz respeito ao treino, e aqui é necessário ter cuidado. A Xiaomi descreve o pós-treino do MiMo-V2.5 como um pipeline de três fases: supervised fine-tuning, depois large-scale agentic reinforcement learning (RL) e, por fim, destilação on-policy de vários modelos teacher especializados para um único modelo student. Agentic RL significa que o modelo foi treinado com episódios de chamadas de ferramentas em várias etapas, e não com pares isolados de pergunta e resposta. Isto é real e explica por que razão o modelo mantém a coerência ao longo de sequências extensas de chamadas de ferramentas. O que a Xiaomi não publicou foi um relatório de treino que mostre o modelo otimizado dentro deste harness específico, com o harness a alterar-se em resposta ao modelo.

Por isso, interprete “evoluem em conjunto” como uma declaração de intenção de uma equipa que controla ambas as partes. O benefício que pode observar na prática é mais limitado, mas continua a ter valor: as mesmas pessoas definem os schemas das ferramentas e o system prompt e distribuem o modelo, pelo que estes componentes são compatíveis entre si. O Claude Code não pode funcionar dessa forma, porque o seu harness é um cliente de um modelo disponibilizado através de uma API fixa. A Anthropic também treina os seus modelos para utilização agentic, mas não pode substituir o modelo por baixo do harness.

Como é uma sessão do MiMo-Code num terminal

Executar mimo abre uma interface de terminal em ecrã inteiro. Escreve uma tarefa, o agente lê ficheiros, propõe uma alteração e pede confirmação antes de escrever ou executar qualquer coisa. Além do modo de compilação predefinido, a ferramenta inclui um modo de plano e um modo de composição, além de um sistema de subagentes que encaminha parte de uma tarefa para uma execução separada do agente. O Claude Code chega ao mesmo nível por outra abordagem: um estilo de saída reescreve o próprio prompt do sistema, em vez de alternar entre um conjunto fixo de modos preparados. Também inclui um conjunto extenso de skills integradas, que são procedimentos pré-empacotados que o agente pode chamar pelo nome. Uma skill também pode alterar a forma como o agente trabalha, e não aquilo que sabe. Essa é a ideia por trás de Ponytail, uma skill que obriga o agente a fazer a menor alteração que funcione.

Convém conhecer alguns detalhes antes de começar.

  • Por predefinição, é necessária aprovação para cada ação. A flag --dangerously-skip-permissions remove os pedidos de confirmação. O nome é preciso, por isso use-a apenas quando um erro não tiver consequências. O MiMo-Code transforma esta opção num interruptor de tudo ou nada, enquanto o Claude Code divide a mesma decisão em modos de permissões graduais. Por isso, o que o modo automático permite que um agente faça sem pedir confirmação é a comparação útil antes de usar a flag.
  • Funciona sem um terminal interativo. mimo run recebe um prompt e executa-o de forma não interativa, que é o necessário para um script ou uma tarefa de CI. Também inclui uma interface web.
  • A configuração fica em ficheiros que pode guardar no repositório. Um projeto lê .mimocode/mimocode.jsonc e as definições globais ficam em ~/.config/mimocode/mimocode.jsonc.
  • As credenciais não ficam nesses ficheiros. São guardadas em ~/.local/share/mimocode/auth.json. Mantenha esse caminho fora do git e de qualquer backup que partilhe.

Um agente que pode executar comandos shell é um programa ao qual entregou o seu shell. Dê-lhe a sua própria máquina e o seu próprio utilizador. A forma mais segura de experimentar um agente novo é usar uma VM descartável que possa destruir depois da sessão, porque um comando incorreto lhe custará então uma reinstalação, em vez de uma restauração.

O MiMo-Code realmente supera o Claude Code?

O material de lançamento da Xiaomi faz uma afirmação específica: execute o mesmo modelo nos dois harnesses e o MiMo-Code obtém uma pontuação superior. Estes são os valores publicados.

ChartXiaomi's self-reported harness comparison, same model in both agents
The data behind this chart
[
  {
    "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
  }
]

No SWE-bench Pro, a Xiaomi reporta 62 por cento para o MiMo-Code, contra 57 por cento para o Claude Code. No Terminal Bench 2, os valores são 73 por cento e 68 por cento. A ideia é que o modelo foi mantido constante, portanto uma diferença de cerca de cinco pontos vem do sistema de agentes, e não do modelo. Essa interpretação só faz sentido se souber o que um harness de agente realmente inclui: o ciclo de execução, as definições das ferramentas, os pedidos de permissão e o estado da sessão são as partes que diferem entre os dois, enquanto os pesos permanecem iguais.

Trate estes valores como números do fornecedor. A Xiaomi executou a avaliação e publicou os resultados, e o MiMo-Code não aparece nas tabelas de classificação públicas do SWE-bench ou do Terminal-Bench. Portanto, nenhuma entidade independente reproduziu essa diferença. A Xiaomi é invulgarmente direta sobre a limitação do seu próprio resultado. O texto da empresa afirma que estes benchmarks medem a resolução de problemas numa única execução, em issues de um único repositório, e que, nos seus próprios testes, os dois agentes tiveram um desempenho aproximadamente igual abaixo de cerca de 200 passos de execução. A vantagem declarada surge em execuções longas, que um benchmark de execução única não cobre.

Essa é a interpretação correta. Uma diferença de cinco pontos num benchmark executado pelo fornecedor é motivo para experimentar a ferramenta. Não é motivo para transferir para ela o trabalho de que a sua equipa depende.

Quanto custa executar o MiMo-Code

No lançamento, a Xiaomi disponibilizou um canal gratuito chamado MiMo Auto, que podia ser utilizado sem registo. Desde o início, foi descrito como uma oferta temporária, e as notas de versão da versão 0.1.9, de 24 July 2026, referem o fim desse período de avaliação gratuito do MiMo-V2.5. Não crie um fluxo de trabalho com base nele.

O acesso pago à plataforma da Xiaomi é barato em comparação com os fornecedores de modelos de fronteira. Em August 2026, o preço internacional publicado para o MiMo-V2.5-Pro era de $1.00 por milhão de tokens de entrada quando não existe correspondência na cache e de $3.00 por milhão de tokens de saída, para um contexto até 256K. Os preços podem mudar, por isso consulte a página atual antes de planear um orçamento.

A outra opção é utilizar o seu próprio hardware. Os pesos do MiMo-V2.5 e do MiMo-V2.5-Pro estão publicados no Hugging Face sob a licença MIT, por isso nada impede que os disponibilize por conta própria. Seja realista quanto à escala. Um modelo com uma janela de contexto de um milhão de tokens não é adequado para um VPS comum. Será necessário considerar um VPS com uma GPU associada ou uma máquina dedicada. Os modelos locais mais pequenos são um caso diferente, mais próximo de executar o Ollama num VPS para alojar um LLM localmente.

O MiMo-Code também se liga a outros fornecedores. Pode migrar um início de sessão existente do Claude Code, ligar-se a uma conta OpenAI, aceitar uma chave de API de outro fornecedor ou comunicar com qualquer endpoint compatível com OpenAI. Consulte os termos de uma subscrição de consumidor antes de a ligar, porque os termos do fornecedor determinam quais os clientes que podem utilizar um plano de subscrição, e uma CLI de outro fornecedor nem sempre está abrangida.

Você deve deixar de usar o Claude Code?

Se já paga pelo Claude Code e ele funciona, não. A versão 0.1.9 no final de julho de 2026, seis semanas depois do primeiro lançamento, é um sinal claro. Um número de versão 0.1.x significa que existem alterações incompatíveis entre versões e que o formato de configuração ainda está a mudar. Isso é aceitável para uma ferramenta que está a avaliar, mas é problemático para uma ferramenta de que uma equipa depende.

O MiMo-Code merece uma análise séria em quatro situações.

  • O custo é um problema. Os preços por token da Xiaomi são muito inferiores aos dos fornecedores líderes, e o próprio agente não tem custos.
  • Precisa de analisar o harness. O código aberto permite inspecionar os prompts e as definições das ferramentas, o que é importante numa revisão de segurança ou numa auditoria.
  • Quer adquirir o agente e o modelo separadamente, para que a alteração de um não obrigue a alterar o outro.
  • O código não pode sair da sua rede. Os pesos abertos tornam possível utilizar um backend self-hosted, em vez de depender de uma negociação.

O Cursor e o Copilot são uma comparação diferente. Ambos funcionam dentro de um editor, enquanto o MiMo-Code funciona num terminal. Essa distinção afeta mais o seu dia de trabalho do que qualquer pontuação de benchmark, e a comparação do Claude Code com o Cursor, o Codex e o Copilot aborda detalhadamente esse compromisso.

Executar o MiMo-Code numa VPS que já arrenda

Um agente de terminal deve ficar num servidor. Mantém uma sessão aberta durante horas, precisa de uma rede estável e deve continuar a funcionar mesmo quando fecha a tampa do portátil. O padrão de utilização é o mesmo de outros agentes de terminal: uma sessão de longa duração num servidor pequeno, à qual pode voltar a ligar-se a partir de qualquer lugar, descrita em executar um agente de programação no tmux numa VPS. Quando há mais do que um agente a trabalhar nesse servidor, o Claude Code pode passar texto diretamente de uma sessão para outra, evitando transferir manualmente a saída entre janelas do tmux.

Atribua-lhe um utilizador dedicado sem privilégios e indique-lhe um clone do repositório, em vez da sua única cópia. O alcance do agente corresponde às permissões da conta com que é executado. Esse é o controlo que continua a funcionar quando um prompt corre mal.

O projeto é distribuído de duas formas: através de um instalador shell servido por HTTPS e através de um pacote npm chamado @mimo-ai/cli, para qualquer máquina que já tenha Node.js. Num servidor importante, prefira o pacote npm. Pode ler o conteúdo do pacote antes de o executar e não está a encaminhar um script remoto diretamente para uma shell. Para uma visão mais abrangente do que merece um lugar nesse servidor, o resumo dos agentes de IA autoalojados é o mapa.

FAQ

O MiMo-Code é gratuito?

O agente é gratuito e open source sob a licença MIT, por isso pode lê-lo e modificá-lo. O modelo subjacente é a parte que tem custos. A Xiaomi lançou um canal gratuito por tempo limitado chamado MiMo Auto, e as notas de lançamento de 24 July 2026 referem que esse período de teste terminou, por isso conte com acesso pago. Em August 2026, o preço internacional publicado para o MiMo-V2.5-Pro é de $1.00 por milhão de tokens de entrada quando não há correspondência na cache e de $3.00 por milhão de tokens de saída. Também pode apontar o MiMo-Code para qualquer endpoint compatível com OpenAI e pagar a outro fornecedor.

O MiMo-Code é a mesma coisa que o OpenCode?

Começou como um fork do OpenCode e continua a partilhar o seu núcleo. A interface de terminal, o sistema de plugins, a abstração de fornecedores e a integração com MCP vieram dessa base de código, e a linha de copyright do OpenCode foi preservada no ficheiro LICENSE do repositório. A Xiaomi adicionou uma camada de memória persistente baseada em pesquisa de texto completo do SQLite, modos de agente adicionais e acesso direto aos seus próprios modelos. Se conhece o OpenCode, já conhece a maior parte do funcionamento do MiMo-Code.

Posso usar o MiMo-Code com modelos Claude ou GPT em vez dos modelos da Xiaomi?

Sim. A configuração inicial permite migrar um login existente do Claude Code, ligar uma conta OpenAI ou aceitar uma chave de API de outro fornecedor. Também pode configurar manualmente qualquer endpoint compatível com OpenAI em ~/.config/mimocode/mimocode.jsonc. Consulte os termos de uma subscrição de consumidor antes de a ligar, porque os termos do fornecedor determinam quais clientes podem usar um plano de subscrição.

É seguro executar o MiMo-Code na minha máquina principal?

Trate-o como qualquer agente que possa executar comandos da shell. Por predefinição, pede aprovação antes de cada ação. --dangerously-skip-permissions desativa esses pedidos, que é a forma como ocorre a maioria dos acidentes. Execute-o com um utilizador dedicado sem privilégios, sobre um clone do repositório e, de preferência, numa máquina que possa destruir e reconstruir. O raio de impacto limita-se à conta com que o agente é executado, por isso mantenha essa conta com o mínimo de permissões possível.