ReleaseMistral AIMistral AIpublished Oct 9, 2026seen 2d

mistralai/mistral-vibe v2.26.1

mistralai/mistral-vibe

Open original ↗

Captured source

source ↗
published Oct 9, 2026seen 2dcaptured 2dhttp 200method plain

v2.26.1

Repository: mistralai/mistral-vibe

Tag: v2.26.1

Published: 2026-10-09T14:56:56Z

Prerelease: no

Release notes:

Added

  • The app-server reports which process holds a stored session, and pushes a change when that process lets go of it, so a client can show a session open elsewhere as read-only
  • Rust CLI: Configure proxy and SSL certificate settings with /proxy-setup.
  • Rust CLI: The narrator reads each turn's summary aloud and shows a speaking status row that Esc or Ctrl+C stops.
  • Rust CLI: /plugins browses the session's plugins, and /reload-plugins re-pins them and reports what changed.
  • Rust CLI: Free-text answers to agent questions accept multiple lines, multi-line pastes, and click-to-place caret.
  • Rust CLI: In the /model and /thinking pickers, s applies the selection for the current session only, while Enter still saves it to your config.
  • Rust CLI: Picking a model immediately opens the thinking level picker for that model, and both are applied together (Esc cancels both); after a session-only model pick, the thinking level is session-only too.
  • nix run .#rustCli to launch the Rust terminal instead of the Python one
  • Rust CLI: /whoami shows the start of your API key, its scope, and its access scope.
  • Space toggles the focused checkbox in multi-select questions.
  • enable_background_processes = false stops the agent from starting background processes
  • enable_subagents = false takes subagents away from the agent on the default runtime.
  • Disable main input cursor blinking with cursor_blink = false or /config, keeping a steady caret in both Python and Rust terminals.
  • Document Library connector: search, list, open, and fetch documents from your Mistral document libraries directly in Vibe.
  • export.json records steps, the number of model calls the agent made
  • export.json lists the session's config issues, such as a skill it could not load, under warnings
  • vibe -p reads the prompt from --prompt-file or stdin, and --output-dir writes an export.json and the session journal on every exit.
  • vibe -p --time-limit SECONDS stops the run at a deadline; SIGTERM and Ctrl-C stop it the same way, and the session can be resumed.
  • Per-model top_p and max_output_tokens config settings.
  • Experimental experimental_enable_model_catalog config flag (default off) — groundwork for the upcoming model catalog, no visible effect yet.
  • New api_stream_idle_timeout setting (off by default) fails a model response that goes silent for that many seconds.
  • vibe -p --agent-socket sessions run background processes in their POSIX sandbox, as enable_background_processes says, instead of always turning them off
  • New title_prompt_id config setting to override the prompt used to generate session titles: built-in session_title or a custom .md file from ~/.vibe/prompts/ or .vibe/prompts/.

Changed

  • New sessions start their first turn faster, and long sessions open, load older messages and resume sooner.
  • /status shows token counts in a compact form (e.g. 1.23M) followed by the exact value, dimmed, with thousands separators.
  • The context usage indicator and subagent token counts round to three significant digits (e.g. 12.5k instead of 12k).
  • Rust CLI: Queue selection removes the highlighted prompt with Backspace or Ctrl+C instead of Backspace or Delete.
  • Rust CLI: Tool group headers count each kind of call (e.g. "Read 10 files, ran 3 commands"), a single visible entry is no longer folded into a group, and result borders line up under their toggle arrows, wrapped headers included.
  • The off thinking level now actually disables reasoning on models whose offered levels include it, instead of silently leaving the server's default in charge.
  • The default model's thinking levels are now off and high; a stored low pick resets to off and a stored medium pick resets to high.
  • The default model declares a 256k context window; auto-compaction now derives from it.
  • A stale pin to the removed local model now warns and falls back to the hosted default.
  • Rust CLI: In text inputs, Cmd+Left/Right, Home/End and Ctrl+A/E at a line edge move on to the previous line start or the next line end.
  • Rust CLI: Shortcut hints use the same wording everywhere, and j/k navigate every list.
  • Rust CLI: /config, /mcp, /plugins and the project picker search with /; Esc leaves the search, then clears it, then closes. /plugins now shows its search field under the title, like /mcp and /config.
  • Rust CLI: Every list marks the focused row with the same highlight bar, and a green › marks the current value.
  • Rust CLI: Lists wrap at both ends and scroll back to their very top, Esc always goes back one level, and numbered options take their digit.
  • Your Mistral identity and plan now show in /whoami and the banner even when the active model isn't a Mistral model.
  • Rust CLI: Typing /, ! or & over a fully selected input switches to that mode, and so does pasting a /command or !command into an empty input.
  • Rust CLI: the startup banner hint now reads "You are using the new Vibe TUI. To switch back to the classic TUI, set the VIBE_CLI environment variable to python."
  • Stopping a background process now also stops what it started in the background, and returns only once all of it has exited
  • A background process now keeps running until everything it started in the background has exited, not just its shell
  • The Document Library connector is now gated behind the experimental_enable_document_library_connector config flag (off by default) while its tools stabilize.
  • vibe -p exits 1 on usage or config errors, 2 on infrastructure failures and 3 when a limit or a model refusal stopped the agent
  • vibe -p --max-turns now exits 3, not 1, when the agent reaches the turn limit; so do --max-tokens and --max-price, including when the budget ran out as the agent finished
  • Model requests retry HTTP 520.
  • Rust CLI: The welcome banner starts at the top left, with the conversation and what's new flowing below it while queued messages stay at the bottom.

Fixed

  • Browser sign-in now explains when your workspace can't be used and asks you to select another one, instead of showing a generic error.
  • Rust CLI: Ctrl+G opens the current input in $VISUAL / $EDITOR and loads the saved text back.
  • Rust CLI: A chat input selection no longer reappears after an approval, a question, or the subagent list takes...

Excerpt shown — open the source for the full document.