Mistral Vibe v2.26.1
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…
Read full 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
speakingstatus row that Esc or Ctrl+C stops. - Rust CLI:
/pluginsbrowses the session's plugins, and/reload-pluginsre-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
/modeland/thinkingpickers,sapplies 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 .#rustClito launch the Rust terminal instead of the Python one- Rust CLI:
/whoamishows the start of your API key, its scope, and its access scope. - Space toggles the focused checkbox in multi-select questions.
enable_background_processes = falsestops the agent from starting background processesenable_subagents = falsetakes subagents away from the agent on the default runtime.- Disable main input cursor blinking with
cursor_blink = falseor/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.jsonrecordssteps, the number of model calls the agent madeexport.jsonlists the session's config issues, such as a skill it could not load, underwarningsvibe -preads the prompt from--prompt-fileor stdin, and--output-dirwrites anexport.jsonand the session journal on every exit.vibe -p --time-limit SECONDSstops the run at a deadline; SIGTERM and Ctrl-C stop it the same way, and the session can be resumed.- Per-model
top_pandmax_output_tokensconfig settings. - Experimental
experimental_enable_model_catalogconfig flag (default off) — groundwork for the upcoming model catalog, no visible effect yet. - New
api_stream_idle_timeoutsetting (off by default) fails a model response that goes silent for that many seconds. vibe -p --agent-socketsessions run background processes in their POSIX sandbox, asenable_background_processessays, instead of always turning them off- New
title_prompt_idconfig setting to override the prompt used to generate session titles: built-insession_titleor a custom.mdfile from~/.vibe/prompts/or.vibe/prompts/.
Changed
- New sessions start their first turn faster, and long sessions open, load older messages and resume sooner.
/statusshows 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.5kinstead of12k). - 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,/pluginsand the project picker search with/; Esc leaves the search, then clears it, then closes./pluginsnow shows its search field under the title, like/mcpand/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
/whoamiand 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/commandor!commandinto 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_CLIenvironment variable topython." - 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_connectorconfig flag (off by default) while its tools stabilize. vibe -pexits 1 on usage or config errors, 2 on infrastructure failures and 3 when a limit or a model refusal stopped the agentvibe -p --max-turnsnow exits 3, not 1, when the agent reaches the turn limit; so do--max-tokensand--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+Gopens the current input in$VISUAL/$EDITORand loads the saved text back. - Rust CLI: A chat input selection no longer reappears after an approval, a question, or the subagent list takes focus.
- Rust CLI: Text stays selectable and copyable while an approval, question, picker, or other bottom panel is open, including the transcript, the loading row, and the panel itself.
/reload-pluginsnow offers the skills of a plugin installed during the session, without a restart.- Rust CLI: Copying a selection no longer adds line breaks or indentation where long text wraps on screen.
- Rust CLI: Copying wide characters such as CJK text no longer inserts a space after each one.
- Rust CLI: Selecting or copying a wrapped or multi-line transcript row no longer picks up its hang indent.
- Rust CLI: Long lines in an expanded thought now wrap inside its border and indent.
- Rust CLI: Queue selection and edit controls replace the loading hints for as long as the mode lasts, instead of a notice that timed out or lingered.
- Rust CLI: The loading hints no longer offer steering or queued-message cancellation when Enter or Ctrl+C would do something else.
- Rust CLI: Long free-text answers to agent questions wrap instead of overflowing the question box.
- Rust CLI: Answered questions show a check mark instead of an expand arrow that did nothing.
- A corrupted MCP OAuth token in the keychain no longer crashes Vibe; the server just asks you to log in again
- Tool calls with a very large result (e.g. reading a big file) keep their tool-specific header, marked as truncated, instead of showing as a generic tool call.
…