Intermediário 11 minIDE

Mistral Vibe CLI com Devstral localmente: configuração route

Mistral Vibe CLI é o agente de código no terminal publicado pela Mistral AI com o Devstral 2, sob a licença Apache 2.0, segundo o anúncio. Por padrão, ele envia suas solicitações para a API da Mistral. Este guia o instala e depois o conecta a um Devstral Small 2 servido pelo Ollama na sua máquina, graças ao arquivo config.toml descrito na documentação « offline models ». Ele termina com as limitações reais de um agente de código que funciona inteiramente localmente.

Por Léa B.·Atualização 2026-10-19·Testado no Windows, macOS e Linux

#Mistral Vibe CLI: o que é e o que não é

Mistral Vibe CLI é um programa de linha de comando, escrito em Python, publicado em dezembro de 2025 juntamente com o Devstral 2 e o Devstral Small 2. Você o executa na pasta de um projeto, descreve uma tarefa em linguagem natural, e o agente lê seus arquivos, propõe modificações, executa comandos e itera até chegar ao resultado. É o mesmo princípio do Claude Code, OpenCode ou Aider, mas concebido em torno dos modelos Devstral, treinados para esse tipo de ciclo agentivo.

O código-fonte é publicado no GitHub, no repositório mistralai/mistral-vibe, sob a licença Apache 2.0, segundo o anúncio de Mistral. Você pode lê-lo, modificá-lo e usá-lo em uma empresa sem royalties. A CLI consegue conversar com a API de Mistral, mas também com qualquer servidor que disponibilize uma API no formato OpenAI: Ollama, llama.cpp, LM Studio ou vLLM. É esse segundo modo, documentado na página « offline models », que nos interessa aqui.

i
Vibe CLI não é o aplicativo Vibe
Mistral renomeou seu assistente voltado ao público geral, Le Chat, para « Vibe » ao longo de 2026. O aplicativo Vibe (web e mobile) é um chatbot hospedado por Mistral, com uma conta e uma assinatura. Mistral Vibe CLI é uma ferramenta para desenvolvedores instalada no seu terminal. Os dois compartilham um nome e um editor, não um uso. A palavra-chave « mistral vibe », sozinha, costuma levar ao aplicativo: se é ele que você procura, nosso guia sobre Mistral AI gratuito o compara aos modelos locais.

Por que querer um Vibe CLI local em vez da API? Três razões se destacam. O código não sai da máquina, o que é importante para código proprietário ou sujeito a um acordo de confidencialidade. Não há cobrança por uso nem cota: você paga pela eletricidade e pelo hardware que já possui. Por fim, a ferramenta continua funcionando offline ou atrás de um firewall rigoroso. Em troca, você perde o modelo Devstral 2 de 123 bilhões de parâmetros, grande demais para uma estação de trabalho, e aceita uma velocidade menor que a de um servidor de produção.

#Pré-requisitos: Python, Ollama e memória para o Devstral Small 2

O kit Copiloto Local

Este guia leva você ao modelo. O kit leva você ao copiloto que programa no seu editor.

  • Espaço online vitalício
  • PDF + arquivos
  • Reembolsado em 30 dias

Antes de instalar qualquer coisa, verifique estes quatro pontos. Eles evitam três quartos das falhas encontradas com agentes de código locais.

Sistema
Linux ou macOS são os alvos principais. No Windows, use WSL2 (Ubuntu): a CLI é instalada nele como no Linux, e Ollama para Windows continua acessível a partir do WSL pelo endereço localhost.
Python recente
A CLI é distribuída como um pacote Python. O repositório indica a versão mínima exigida em seu README; no momento do anúncio, tratava-se do Python 3.12 ou mais recente. Verifique com python3 --version antes de continuar.
Ollama instalado e iniciado
Ollama serve o modelo e disponibiliza uma API compatível com a OpenAI em http://localhost:11434. Se ainda não tiver feito isso, nosso guia de instalação do Ollama abrange os três sistemas.
Memória para um modelo 24B
O Devstral Small 2 tem 24 bilhões de parâmetros. Na quantização Q4_K_M, os pesos ocupam cerca de 14 GB, aos quais se soma o cache de contexto. Conte com uma GPU de 24 GB (RTX 3090, RTX 4090) ou um Mac com 32 GB de memória unificada para uma operação confortável. O anúncio de Mistral menciona, aliás, « uma RTX 4090 ou um Mac com 32 GB de RAM » como configuração-alvo.

Com uma GPU de 16 GB (RTX 4080, RTX 5070 Ti de desktop), o modelo Q4 cabe, mas o contexto rapidamente transborda para a memória do sistema, e a velocidade cai. Com 12 GB (RTX 3060, RTX 4070), Ollama distribui as camadas entre a GPU e a CPU: o agente funciona, mas cada ciclo leva várias dezenas de segundos. Não medimos essas taxas nessas placas; basta lembrar que 24 GB é o limite confortável para um 24B usado como agente, cujo contexto cresce a cada arquivo lido.

→
Um modelo menor para testar o fluxo
Se sua máquina estiver no limite, valide primeiro a instalação e o arquivo config.toml com um modelo de código leve, de 7 a 8 bilhões de parâmetros (cerca de 5 GB em Q4). A configuração é idêntica: apenas o nome do modelo muda. Você passará para o Devstral Small 2 assim que a cadeia estiver verificada.

#Instalar o Mistral Vibe CLI

Mistral oferece um script de instalação de uma linha, que configura a CLI em um ambiente isolado. Esse é o método recomendado no README do repositório.

Terminal
curl -LsSf https://mistral.ai/vibe/install.sh | bash

Se preferir controlar a instalação, o pacote é publicado no PyPI com o nome mistral-vibe. A ferramenta uv o instala em um ambiente dedicado, sem afetar seus outros projetos Python. O pip tradicional também funciona, de preferência em um ambiente virtual.

Terminal — alternativa com uv
# Installer uv si besoin : https://docs.astral.sh/uv/
uv tool install mistral-vibe

# Ou avec pip, dans un environnement virtuel
python3 -m venv ~/.venvs/vibe
source ~/.venvs/vibe/bin/activate
pip install mistral-vibe

Em seguida, verifique se o comando vibe está acessível. Se o terminal não o encontrar, feche-o e abra-o novamente: o script de instalação adiciona uma pasta ao seu PATH, que será considerada na próxima inicialização do shell.

Terminal
vibe --version
vibe --help
!
Leia um script antes de executá-lo
O comando curl | bash executa um script baixado sem mostrá-lo a você. Esse é o uso proposto por Mistral, mas, se sua política de segurança o proibir, baixe primeiro o script com curl -o, leia-o e depois execute-o. A variante uv tool install elimina completamente essa questão.

#Preparar o Devstral Small 2 no Ollama

O Devstral Small 2 é publicado por Mistral sob a licença Apache 2.0, com uma janela de contexto de 256 000 tokens. Ollama o oferece em sua biblioteca; o comando abaixo baixa a versão padrão, em quantização de 4 bits. O download representa cerca de 14 GB.

Terminal
ollama pull devstral-small-2
ollama list

O nome exato do modelo na biblioteca Ollama pode mudar (variante de quantização, sufixo de tamanho). Se o comando falhar, procure « devstral » em ollama.com/library e use o nome exibido. É esse nome, exatamente como aparece em ollama list, que você copiará para a configuração do Vibe.

Ainda falta uma configuração decisiva: o comprimento do contexto. Ollama carrega os modelos com um contexto padrão curto, geralmente de 4 096 tokens. Para um agente de código, isso é pouco demais: o prompt do sistema do Vibe, a lista de ferramentas, o conteúdo dos arquivos lidos e o histórico da sessão ultrapassam esse tamanho após algumas trocas. O modelo então esquece o início da conversa e o agente fica girando em círculos. Defina um contexto de no mínimo 32 000 tokens, por exemplo com um Modelfile derivado.

Terminal — contexto de 32k via um Modelfile
cat > Modelfile.devstral <<'EOF'
FROM devstral-small-2
PARAMETER num_ctx 32768
EOF

ollama create devstral-small-2-32k -f Modelfile.devstral
ollama run devstral-small-2-32k "Réponds en un mot : prêt ?"

Você também pode definir o contexto globalmente com a variável de ambiente OLLAMA_CONTEXT_LENGTH ao iniciar o serviço Ollama. O Modelfile tem a vantagem de se aplicar apenas a este modelo e manter um nome explícito. Um contexto maior consome mais memória: com 32k tokens em um 24B, reserve de 2 a 4 GB adicionais, dependendo do tipo de cache KV. Em 24 GB, esse é o limite confortável; acima de 64k, monitore a memória com nvidia-smi.

#Conectar o modelo local no config.toml

Mistral Vibe CLI lê sua configuração no arquivo ~/.vibe/config.toml. A documentação « offline models » descreve ali duas tabelas: providers, que declara um servidor e seu endereço, e models, que associa um nome de modelo a um provedor. Uma chave active_model designa o modelo usado por padrão. Esta é uma configuração completa para o Ollama preparado acima.

~/.vibe/config.toml
# Modèle utilisé au lancement (doit correspondre à un alias ci-dessous)
active_model = "devstral-small-local"

# Fournisseur : votre Ollama local, API au format OpenAI
[[providers]]
name = "ollama"
api_base = "http://localhost:11434/v1"
api_key_env_var = ""
api_style = "openai"
backend = "generic"

# Modèle : le nom exact affiché par `ollama list`
[[models]]
name = "devstral-small-2-32k"
provider = "ollama"
alias = "devstral-small-local"
input_price = 0.0
output_price = 0.0

Três detalhes merecem uma explicação. O endereço termina em /v1 porque o Vibe fala o dialeto OpenAI e Ollama expõe esse formato apenas sob esse prefixo; a API nativa de Ollama, sem /v1, não servirá. O campo api_key_env_var permanece vazio: Ollama não exige autenticação localmente. Os preços são zero para que a estimativa de custo exibida pela CLI permaneça coerente; eles não têm nenhum efeito sobre o funcionamento.

!
Os nomes das chaves seguem a documentação, e não o contrário
Este exemplo reproduz a estrutura apresentada pela página « offline models » de docs.mistral.ai no momento da redação. A CLI evolui rapidamente, e o nome de uma chave pode mudar de uma versão para outra. Se o vibe recusar seu arquivo ou ignorar o modelo, compare seu config.toml com o exemplo oficial em vez de tentar adivinhar: a documentação é a referência definitiva.

Para outro servidor local, apenas a seção providers muda. Com llama.cpp (llama-server), o endereço geralmente é http://localhost:8080/v1; com LM Studio, http://localhost:1234/v1; com vLLM, http://localhost:8000/v1. Em todos os casos, o campo name do modelo deve ser o identificador que esse servidor espera, aquele que ele retorna na rota /v1/models.

Terminal — verificar o que o servidor anuncia
curl -s http://localhost:11434/v1/models | python3 -m json.tool

Você pode declarar vários modelos, por exemplo, o Devstral Small 2 localmente e o Devstral 2 pela API Mistral, e depois alternar entre eles na sessão. Para o provedor Mistral, a chave de API é lida de uma variável de ambiente, normalmente MISTRAL_API_KEY; a chave não precisa aparecer em texto claro no arquivo. Se seu objetivo é 100% local, basta não adicionar nenhum provedor remoto: nada sairá da máquina.

#Primeira sessão: iniciar o vibe e verificar o modelo

  1. 01
    Acessar um projeto
    Abra um terminal na pasta de um repositório Git, de preferência limpo (git status sem modificações pendentes). O agente trabalha nos arquivos da pasta atual; um repositório limpo permite revisar e desfazer suas alterações com git diff e git checkout.
  2. 02
    Iniciar a CLI
    Digite vibe. Na primeira inicialização, a CLI pode solicitar que você informe uma chave de API Mistral e crie a pasta ~/.vibe. Se você tiver escrito o config.toml antes, seu provedor local já será conhecido. Se a solicitação da chave aparecer mesmo assim, consulte /help: dependendo da versão, ela é ignorada ou pode ser deixada em branco quando um provedor local está configurado.
  3. 03
    Verificar o modelo ativo
    A interface exibe o modelo em uso. Deve ser o seu alias devstral-small-local. O comando /help lista os comandos disponíveis na sessão, incluindo aquele que troca de modelo caso você tenha declarado vários.
  4. 04
    Dar uma primeira tarefa delimitada
    Comece pequeno: « Leia o README e resuma a arquitetura do projeto em cinco linhas », depois « Adicione um teste unitário para a função X no arquivo Y ». Observe a primeira resposta: se o modelo responder sem usar uma ferramenta ou inventar um caminho de arquivo, o problema geralmente é um contexto curto demais ou um modelo que não foi preparado para o tool calling.
  5. 05
    Revisar antes de aceitar
    O Vibe pede confirmação antes de ações sensíveis, como escrever arquivos ou executar comandos. Leia cada diff proposto. Um modelo de 24B localmente erra com mais frequência do que um modelo de 123B disponibilizado pela API, principalmente em bases de código grandes: a revisão faz parte do fluxo de trabalho, não é uma exceção.

Durante a sessão, fique de olho na carga de Ollama: o comando ollama ps mostra o modelo carregado, a parte na GPU e na CPU e o contexto efetivo. Se você vir uma distribuição parcial na CPU quando achava que o modelo caberia na memória de vídeo, foi o contexto que fez a placa transbordar.

Terminal — em uma segunda aba
ollama ps
nvidia-smi --query-gpu=memory.used,memory.total --format=csv

#Limitações de um Vibe CLI 100% local

Um agente de código local funciona, mas não é possível compará-lo ponto a ponto com a versão da API. Veja o que esperar, sem inventar números: não realizamos um benchmark para este guia, e as pontuações publicadas por Mistral dizem respeito aos modelos oferecidos em condições de referência, não a uma máquina de mesa com um modelo quantizado.

Devstral 2 continua fora de alcance
O modelo grande, com 123 bilhões de parâmetros, exige dezenas de gigabytes de memória mesmo com quantização pesada. Localmente, você trabalha com o Devstral Small 2, cujo Mistral anuncia 68,0% no SWE-bench Verified, contra 72,2% do Devstral 2. A diferença é modesta nesse benchmark, mas é perceptível em tarefas longas e repositórios volumosos.
A quantização muda o modelo
A pontuação anunciada vale para os pesos completos. Um Q4_K_M degrada ligeiramente a precisão; um Q8_0 a preserva melhor, mas exige cerca de 26 GB apenas para os pesos, portanto uma placa de 32 GB ou um Mac bem equipado. Escolher a quantização é um compromisso que deve ser feito conscientemente.
O contexto local é muito menor que 256k
O Devstral Small 2 aceita 256 000 tokens, mas você não conseguirá utilizar todos eles em 24 GB. Entre 32k e 64k tokens, o agente cobre um módulo ou um serviço pequeno. Para um monorepo, é preciso delimitar a tarefa arquivo por arquivo.
A velocidade depende do hardware, não da CLI
Um 24B denso gera mais lentamente que um modelo MoE de tamanho comparável com a mesma quantidade de memória. Cada ciclo do agente inclui uma releitura de todo o contexto: quanto mais longa a sessão, mais demora cada resposta. Planeje sessões curtas e tarefas divididas em partes.
Chamadas de ferramentas e formatos
O agente se baseia em chamadas de ferramentas estruturadas. Um modelo quantizado pode, de vez em quando, produzir uma chamada malformada que a CLI rejeita. O Devstral foi treinado para esse tipo de uso e se sai muito melhor que um modelo generalista, mas o fenômeno não é inexistente.
Uma ferramenta recente
A CLI foi publicada em dezembro de 2025 e evolui rapidamente. Os comandos, o formato de configuração e a integração com editores mudam. Atualize-a regularmente (uv tool upgrade mistral-vibe ou execute novamente o script de instalação) e leia o changelog no GitHub antes de reclamar de um comportamento.

O anúncio de Mistral também menciona uma integração com editores pelo protocolo ACP, especialmente com o Zed. Se você prefere um editor ao terminal, nosso guia Zed + Ollama mostra como esse editor já conversa com um modelo local; combinar os dois equivale a deixar o Vibe comandar o agente e o Zed exibir os diffs.

#Solução de problemas

« vibe: comando não encontrado »
A pasta dos executáveis não está no seu PATH. Abra o terminal novamente. Com uv, o caminho geralmente é ~/.local/bin; verifique com uv tool dir --bin e adicione-o ao seu arquivo de shell, se necessário.
Erro de conexão com localhost:11434
Ollama não foi iniciado ou está escutando em outro endereço. Teste curl http://localhost:11434/v1/models. No WSL2, certifique-se de que Ollama esteja realmente em execução no Windows e de que a variável OLLAMA_HOST não tenha sido restringida.
O modelo é desconhecido pelo servidor
O campo name da seção models não corresponde a um modelo presente em ollama list. Copie o nome exato, incluindo o sufixo, inclusive o do seu Modelfile derivado, caso tenha criado um.
O agente esquece o que acabou de ler
Contexto curto demais. Verifique com ollama ps o valor de contexto realmente carregado; se ele for 4 096, seu Modelfile ou sua variável OLLAMA_CONTEXT_LENGTH não foram considerados.
Respostas muito lentas, GPU pouco utilizada
Parte do modelo está na CPU. Reduza o contexto, use uma quantização mais leve ou feche os outros modelos carregados pelo Ollama (OLLAMA_MAX_LOADED_MODELS).
A CLI exige uma chave de API embora tudo seja local
Comportamento que depende da versão. Verifique se o config.toml está no local correto, ~/.vibe/config.toml, se active_model aponta para um alias existente e consulte a página « offline models » da documentação para obter o procedimento atualizado.

#Para se aprofundar

O Vibe CLI é uma boa escolha se você é ligado ao ecossistema Mistral e ao Devstral. Se quiser comparar antes de se estabelecer, o OpenCode está na mesma categoria, com mais provedores compatíveis, e a questão do modelo de código local independe do agente escolhido.

Este guia ajudou você?

Um comentário, um erro ou uma observação? Avise-nos; isso ajuda a melhorar o guia para todos.