Skip to content
Proposals/Re-pin Vibe thinking to off or high and switch t
proposalteamP5High impactMVMistral Vibe

Re-pin Vibe thinking to off or high and switch to the Rust CLI

Vibe v2.26.1 resets default-model thinking (low to off, medium to high), makes the Rust TUI default, adds session-only s picks, headless vibe -p 1/2/3 exits, and flags to disable background processes and subagents. Re-pin thinking, switch CLIs, and wire those controls in.

Why this loop

The off thinking level now actually disables reasoning on models that offer it, instead of leaving the server 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. Picking a model immediately opens the thinking picker and both apply together; after a session-only model pick, thinking is session-only too. In /model and /thinking, s applies for this session only while Enter still saves to config.

The new Rust TUI launches with nix run .#rustCli; set VIBE_CLI=python to revert. It adds /proxy-setup, /whoami, /plugins, /reload-plugins, and Ctrl+G to edit input in $VISUAL/$EDITOR.

vibe -p reads --prompt-file or stdin, writes export.json (steps, warnings) via --output-dir, honors --time-limit, and exits 1 (usage/config), 2 (infra), or 3 (limit or model refusal). enable_background_processes = false and enable_subagents = false constrain the default runtime; vibe -p --agent-socket honors the background flag inside the POSIX sandbox. Skipping the thinking re-pin or the new exit codes yields unexpected reasoning cost and broken automation.

Proposed actions

  1. Open /model, pick the model, then set thinking in the picker that opens immediately. Confirm off or high — stored low reset to off and medium to high. Press s to apply both for this session only, or Enter to save both to config; Esc cancels both.
  2. Launch the new TUI with nix run .#rustCli (unset VIBE_CLI; export VIBE_CLI=python only to revert). Run /proxy-setup for proxy and SSL certs, /whoami for API key prefix and scopes, /plugins to browse session plugins, and /reload-plugins to re-pin them without a restart. Use Ctrl+G to edit the current input in $VISUAL/$EDITOR.
  3. Set enable_background_processes = false so the agent cannot start background processes, and enable_subagents = false to take subagents away on the default runtime. For vibe -p --agent-socket, background processes follow that flag in the POSIX sandbox instead of always being off.
  4. Run unattended jobs as vibe -p --prompt-file ./prompt.md --output-dir ./vibe-out --time-limit 600 --max-turns N. Treat exit 1 as usage/config, 2 as infrastructure, 3 as --max-turns/--max-tokens/--max-price/--time-limit or a model refusal. On exit, read export.json for steps (model-call count) and warnings (e.g. a skill that failed to load).
  5. Set api_stream_idle_timeout to a positive number of seconds so a silent model stream fails instead of hanging. Optionally set per-model top_p and max_output_tokens. Leave experimental_enable_document_library_connector and experimental_enable_model_catalog off. Use /config or cursor_blink = false for a steady caret.

Agent prompt

Paste into your agent or query via MCP (get_agent_prompt) — free, no extra AI cost

AGENTS.md / CLAUDE.md / GEMINI.md rule update

DevAgentRadar → Repo Harness Rule Patch

Goal: update our repository's permanent harness instructions based on this release.

Update the file that tool actually reads. Do not dump everything into one file.

  • Claude Code → CLAUDE.md plus .claude/ (skills, hooks, settings, agents, commands). It does not read AGENTS.md natively; start CLAUDE.md with @AGENTS.md.
  • Codex, Copilot, Cursor, Factory Droid, Grok Build, Roo Code, Goose, OpenCode, Amp, Zed, Aider → AGENTS.md.
  • Gemini CLI / Antigravity → GEMINI.md. AGENTS.md only if context.fileName is set.
  • Cursor glob-scoped rules → .cursor/rules/*.mdc (plain .md is ignored), not a second constitution.
  • Codex MCP → .codex/config.toml, not .mcp.json.
  • Copilot extra instructions → .github/copilot-instructions.md; custom agents → .github/agents/.
  • Windsurf → .windsurf/rules (do not assume AGENTS.md).
  • Cline → .clinerules.
  • Procedures → a skill (SKILL.md). Enforcement the model must not skip → a hook. Isolated roles → subagents.
  • Do not fork the same rule into three tool files.

Context

Assistant: Mistral Vibe Proposal: Re-pin Vibe thinking to off or high and switch to the Rust CLI Summary: Vibe v2.26.1 resets default-model thinking (low to off, medium to high), makes the Rust TUI default, adds session-only s picks, headless vibe -p 1/2/3 exits, and flags to disable background processes and subagents. Re-pin thinking, switch CLIs, and wire those controls in. Primary source: https://github.com/mistralai/mistral-vibe/releases/tag/v2.26.1

Why it matters

The off thinking level now actually disables reasoning on models that offer it, instead of leaving the server 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. Picking a model immediately opens the thinking picker and both apply together; after a session-only model pick, thinking is session-only too. In /model and /thinking, s applies for this session only while Enter still saves to config.

The new Rust TUI launches with nix run .#rustCli; set VIBE_CLI=python to revert. It adds /proxy-setup, /whoami, /plugins, /reload-plugins, and Ctrl+G to edit input in $VISUAL/$EDITOR.

vibe -p reads --prompt-file or stdin, writes export.json (steps, warnings) via --output-dir, honors --time-limit, and exits 1 (usage/config), 2 (infra), or 3 (limit or model refusal). enable_background_processes = false and enable_subagents = false constrain the default runtime; vibe -p --agent-socket honors the background flag inside the POSIX sandbox. Skipping the thinking re-pin or the new exit codes yields unexpected reasoning cost and broken automation.

Suggested actions

  1. Open /model, pick the model, then set thinking in the picker that opens immediately. Confirm off or high — stored low reset to off and medium to high. Press s to apply both for this session only, or Enter to save both to config; Esc cancels both.

  2. Launch the new TUI with nix run .#rustCli (unset VIBE_CLI; export VIBE_CLI=python only to revert). Run /proxy-setup for proxy and SSL certs, /whoami for API key prefix and scopes, /plugins to browse session plugins, and /reload-plugins to re-pin them without a restart. Use Ctrl+G to edit the current input in $VISUAL/$EDITOR.

  3. Set enable_background_processes = false so the agent cannot start background processes, and enable_subagents = false to take subagents away on the default runtime. For vibe -p --agent-socket, background processes follow that flag in the POSIX sandbox instead of always being off.

  4. Run unattended jobs as vibe -p --prompt-file ./prompt.md --output-dir ./vibe-out --time-limit 600 --max-turns N. Treat exit 1 as usage/config, 2 as infrastructure, 3 as --max-turns/--max-tokens/--max-price/--time-limit or a model refusal. On exit, read export.json for steps (model-call count) and warnings (e.g. a skill that failed to load).

  5. Set api_stream_idle_timeout to a positive number of seconds so a silent model stream fails instead of hanging. Optionally set per-model top_p and max_output_tokens. Leave experimental_enable_document_library_connector and experimental_enable_model_catalog off. Use /config or cursor_blink = false for a steady caret.

Config surfaces this release may change

  • skills (high confidence) — check your repo before applying
  • background and headless runs (high confidence) — check your repo before applying
  • subagent definitions — check your repo before applying
  • sandbox settings — check your repo before applying
  • MCP servers — check your repo before applying
  • settings files — check your repo before applying
  • context and compaction settings — check your repo before applying

After you finish

Do not report this as applied to DevAgentRadar. You cannot write the visitor's loop.

Tell the human: open https://devagentradar.com/proposals/mistral-vibe-v2-26-1-re-pin-vibe-thinking-to-off-or-high-and-switch-to-t and mark Applied, Skipped, or Failed. Proposal id: 00eb06fb-1e69-470c-b958-ed8e420fde53

Instructions:

  1. Read the existing context files and settings for the tools in this repo.
  2. Draft an explicit Git diff. Update ONLY agent harness rules or tool configuration.
  3. Call out deprecated flags, obsolete habits, or changed permission boundaries.
  4. Do not touch application logic.

Start with the proposed diff and say which layer and which tool's file it belongs in.

agentmcpmodelpricingsecurityRelease source ↗

Your loop

This browser · no sign-in · not shared as “you”

After you run the prompt

Only you can mark this. Agents cannot write your loop.

Your decision stays on this device. A public tally appears after a few votes.

Originating release signal

MVMistral Vibev2.26.1Oct 9, 2026

v2.26.1

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. · +84 more changes
Verified excerpt — the source's own words

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.

Excerpt ends here — this release continues at the source ↗.

Primary source ↗