Melious
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, 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.

With the Melious CLI

With the Melious CLI installed and signed in, two commands take you from nothing to a session:

melious tools install vibe
melious launch vibe

On Windows, tools install asks, then runs uv tool install mistral-vibe — it needs uv on your PATH. On macOS and Linux it prints Mistral's installer command instead; run that line yourself. Then launch from inside your project.

The first launch in a project asks Trust this workspace? The agent runs as you, with your Melious key, so Melious asks before handing it over; the answer defaults to no. Workspace trust covers what a grant means and how to revoke it.

Melious generates a config.toml in its own directory on every launch and points Vibe at it with VIBE_HOME, so your ~/.vibe stays untouched. The config names one Melious model — your main tier — and tells Vibe to read the key from MELIOUS_API_KEY, which Melious sets for that process only. It no longer writes a .env file; one left by an older Melious version stays where it is until you delete it. Models, -- passthrough, and exit status: launching a coding agent.

Manual setup (alternative)

For when you'd rather not use the Melious CLI. The config below mirrors the one Melious generates.

Install Vibe

Vibe's official installer, for macOS and Linux:

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>

This file stores the key in plaintext. Exporting it in the session instead avoids that.

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