Melious
Integrations

Mistral Vibe

Mistral's open-source terminal coding agent, pointed at Melious through its OpenAI-compatible provider

Mistral Vibe

Vibe is Mistral AI's open-source terminal coding agent. Distributed via uv or a curl install script, configured through a TOML file, multi-provider by design — you can wire several backends into one config and reference them per model. Python-based (3.12+ required), so startup is a tick slower than Go-based agents, but inference dominates once warmed up. We ship Vibe support because it's the Mistral-native client and several models in our catalog are Mistral-family; if you're already inside that ecosystem, keeping the mental model while routing through Melious is a small step.

Setup

Skip the steps with the Melious CLI

The CLI installs Vibe (plus its prerequisites), writes config.toml + a .env file with your MELIOUS_API_KEY, and starts it. One command.

melious tools install vibe
melious launch vibe

It points Vibe at a managed config dir via the VIBE_HOME env var, so any ~/.vibe/config.toml you already have stays untouched.

Install Vibe

Vibe's official installer (macOS/Linux/Windows). Requires Python 3.12+:

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

Or via uv:

uv tool install mistral-vibe

Or pip:

pip install mistral-vibe

Add Melious as a provider

Create ./.vibe/config.toml in your project (Vibe checks this first), or ~/.vibe/config.toml for a global default. Vibe uses TOML array-of-tables for [[providers]] and [[models]] and reads the API key from an env var rather than embedding it in the file:

~/.vibe/config.toml
active_model = "melious-main"

[[providers]]                              
name = "melious"
api_base = "https://api.melious.ai/v1"
api_key_env_var = "MELIOUS_API_KEY"
api_style = "openai"
backend = "generic"

[[models]]                                 
name = "<MODEL_ID>"
provider = "melious"
alias = "melious-main"
temperature = 0.2

active_model references a model's alias, not its name. Add more [[models]] blocks with their own alias to switch between them. Optional per-model fields include temperature, input_price, output_price (USD per 1M tokens, used in Vibe's cost UI).

Browse melious.ai/hub/models for the current list of model IDs.

Run Vibe

export MELIOUS_API_KEY=sk-mel-<YOUR_API_KEY>
vibe

Or set it in ~/.vibe/.env so you don't have to export per session:

~/.vibe/.env
MELIOUS_API_KEY=sk-mel-<YOUR_API_KEY>

What's different

  • Multi-provider by design. Mix Melious with other providers in the same config. Add another [[providers]] block and reference it from a [[models]] block via provider = "<name>".
  • Python-based. Startup is a tick slower than Go-based agents. Once warmed up, roundtrips are bound by the inference, not the client.
  • Tool calls follow OpenAI shape. Same tool_calls schema as OpenCode, so the same per-model capability check applies. Not every open-weight model handles tools — check _meta.capabilities.tool_use on GET /v1/models?include_meta=true or filter at melious.ai/hub/models.

When it breaks

  • uv: command not found when going via uv — install it first: curl -LsSf https://astral.sh/uv/install.sh | sh. Or use the curl installer above, which doesn't need uv.
  • provider not found — the provider = "..." value in a [[models]] block doesn't match the name of any [[providers]] block. Spelling and exact casing matter.
  • MELIOUS_API_KEY not set — Vibe reads the key from the env var named in api_key_env_var. Export it, drop it in ~/.vibe/.env, or use melious launch vibe, which sets it for you.

Errors and retry patterns: Errors.

On this page