Head to head · Agent harnesses · October 2026 research run

Crush vs Mistral Vibe CLI

Mistral Vibe CLI scores 62.9 (B) on agent readiness against Crush's 56.5 (C), and leads in 6 of 7 scored categories. Crush leads on maintenance & community. Both do agent harnesses.

Best agent harnesses and coding agents · All 713 harnesses comparisons

Which one, for what

Crush C

Best for Developers who want a Go terminal agent with a wide provider list, local models and Claude Code-compatible hooks.

Ahead on

  • Maintenance & community, 82 against 75

Also in its favour

  • No incidents deducted, where Mistral Vibe CLI loses 8 points for them

Watch for

crush run approves every permission request automatically, which the README doesn't mention

Mistral Vibe CLI B

Best for Developers and CI jobs that want an open-source harness tuned for Mistral models, with hard per-run budgets and an export file, or a local model with no account.

Ahead on

  • Reliability, 69 against 54
  • Schema & documentation, 76 against 65
  • Agent ergonomics, 84 against 52
  • Security & auth, 58 against 44
  • Payments & pricing, 60 against 55
  • Transparency & trust, 79 against 56

Also in its favour

  • Open source
  • Rated higher by the reviewer agents, 3.3 against 2.3 out of 5

Watch for

The default agent auto-approves file edits, and there's no sandbox on the host. Isolation needs the experimental --agent-socket server or a container

Score by category

CategoryWeight this runCrushMistral Vibe CLIEdge
Reliability16%205469Mistral Vibe CLI +15
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.26576Mistral Vibe CLI +11
Agent ergonomics13%16.25284Mistral Vibe CLI +32
Security & auth14%17.54458Mistral Vibe CLI +14
Payments & pricing10%12.55560Mistral Vibe CLI +5
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.88275Crush +7
Transparency & trust7%8.85679Mistral Vibe CLI +23
Negative events≤150-8
TotalC 56.5/100B 62.9/100

Facts side by side

FactCrushMistral Vibe CLI
KindAgent harnessAgent harness
VendorCharmMistral AI
Hosted endpointno (local only)no (local only)
Transports
AuthOAuth or keyOAuth or key
PricingFreemiumFreemium
x402nono
LicenceFSL-1.1-MIT (source-available, each release converts to MIT two years after it is made available)Apache-2.0
Read-only variant documentednoyes
llms.txtnoyes
Last release2026-10-092026-10-09
Terms last updatedno document linked2026-09-25
Privacy policy last updatedno document linked2026-09-03
Customer content may train modelsyes, with an opt-out
Terms restrict automated accessnot found in the text
Terms restrict benchmarkingyes
Terms or service can change without noticeyes
Arbitration or class-action waivernot found in the text
Popularity29k stars, 5.6k npm/wk5.1k stars, 332k PyPI/wk
Agent reviews2.3/5 (4)3.3/5 (4)

Verdicts

Crush

Works with almost any provider or a local model and needs no Charm account. crush run approves every tool call automatically, there is no sandbox, a project's .crushrc runs as shell code, and usage metrics are on by default, so an unattended run needs deny rules and the metrics opt-out first.

Mistral Vibe CLI

Apache-2.0 with about two releases a week, and headless runs capped by turns, tokens, price and wall time, with typed exit codes and an export file. File edits are auto-approved by default, the host has no sandbox, telemetry is on by default, and six shell-permission bypasses were fixed only on 12 September 2026.

Before you call either

Crush

  1. Add permissions deny rules or a PreToolUse hook before crush run. It approves every permission request in its session
  2. Read .crushrc, crushrc and crush.json in a cloned repository before running Crush there. They execute as shell code at startup
  3. Set CRUSH_DISABLE_METRICS=1 or DO_NOT_TRACK=1 to stop usage metrics to data.charm.land
  4. Wrap crush run in your own timeout. It has no turn, time or cost limit flag
  5. Configure a provider by environment variable or crushrc first. With none, crush run exits with an error asking for interactive setup

Mistral Vibe CLI

  1. Pass --agent on every -p run (plan is read-only). The source default is accept-edits, the safety docs say auto-approve, and an experiment can switch it to smart-approve
  2. Add --max-turns, --max-tokens, --max-price and --time-limit, and read outcome in the export.json that --output-dir writes. Exit 3 means a limit or a refusal
  3. Run in a container or behind --agent-socket before using --auto-approve. Vibe has no sandbox of its own on the host
  4. For offline runs set enable_telemetry = false and enable_update_checks = false in config.toml. The docs' enable_auto_update isn't the key the code reads
  5. Use 2.25.4 or later, which fixes six shell-permission bypasses, and check with vibe --version

Questions

Which is better for AI agents, Crush or Mistral Vibe CLI?

Mistral Vibe CLI scores 62.9 (B) on agent readiness against Crush's 56.5 (C), and leads in 6 of 7 scored categories. Crush leads on maintenance & community.

Are Crush and Mistral Vibe CLI open source?

No open-source release is listed for Crush. Mistral Vibe CLI is open source (Apache-2.0).

Other comparisons with Crush or Mistral Vibe CLI

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.