Head to head · Agent harnesses · October 2026 research run

Mistral Vibe CLI vs T3 Code

Mistral Vibe CLI scores 58.4 (C) on agent readiness against T3 Code's 51.9 (D), and leads in 5 of 7 scored categories. Both do agent harnesses.

Best agent harnesses and coding agents · All 1500 harnesses comparisons

Which one, for what

Mistral Vibe CLI C

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 43
  • Schema & documentation, 85 against 55
  • Agent ergonomics, 84 against 60
  • Security & auth, 58 against 35
  • Transparency & trust, 81 against 51

Also in its favour

  • Free to start without a card

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

T3 Code D

Best for Developers who want one app, including on their phone, to drive several coding agents they already pay for.

Also in its favour

  • No key needed to call it
  • No incidents deducted, where Mistral Vibe CLI loses 14 points for them

Watch for

Usage data on by default, with hashed OpenAI and Claude account identifiers, and relay traces to Axiom

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Schema & documentation Mistral Vibe CLI +30

Mistral Vibe CLI 85

Framework reading. A configuration reference with each key's type and default, the export.json fields, and the --agent-socket JSON-RPC methods with typed params and results in the README, plus ACP. Since 3.0.3 vibe config schema prints a JSON schema of every setting, including each built-in tool's; the streaming events still have no published schema (20 of 25). docs.mistral.ai/llms.txt indexes the CLI pages, each with a Markdown twin (10). The safety page says what each agent allows and when to use it, and on 2 November it agrees with the source. -p runs the configured default_agent and denies calls that need approval, and the offline guide and configuration reference name enable_update_checks. The 18 October contradictions and TODO notes are gone (15 of 20). Output formats, agent names, permission values and OpenTelemetry redaction modes are enums, and the config is validated on load (12). Many examples and an exit-code table that maps each code to the outcome names in export.json (13). Dated changelog and version tags (15). 20+10+15+12+13+15 = 85.

T3 Code 55

Harness reading. User docs in the repository (managed policy, handoffs, providers, telemetry), AGENTS.md for contributors, a server other clients connect to (55).

Transparency & trust Mistral Vibe CLI +30

Mistral Vibe CLI 81

Apache-2.0, with LICENSE and pyproject in agreement (30). The README sends readers to Mistral's privacy policy (effective 3 September 2026), which names Vibe. The commercial terms (effective 25 September 2026) say no training on customer data unless a product's default or an opt-in allows it, and the pricing page lists model training as opt-out on Free, Pro and Team. The configuration reference calls telemetry anonymous without listing its fields. The offline guide now names enable_update_checks = false with enable_telemetry = false, as the source reads them (16 of 30; 14 on 18 October, when it named a key the source defines but never reads). Removals are listed in the changelog, deprecated settings are named in the configuration reference and warned about at startup, the agent socket may change without notice, and custom Python tools and the bundled local model were removed in patch releases with warnings (10 of 20). Telemetry is disclosed with an opt-out in the README and the configuration reference, and the README names the server-managed shell-tool rollout, but its fields are only in the source (14 of 20). 30+16+10+14 = 70.

T3 Code 51

MIT (30). docs/user/telemetry.md lists what is sent and what isn't, but includes hashed third-party account identifiers and the README doesn't mention it (15 of 30). No deprecation policy (5). Disclosed with an opt-out, on by default (12 of 20). 30 + 15 + 5 + 12 = 62.

Reliability Mistral Vibe CLI +26

Mistral Vibe CLI 69

Local-package reading. PyPI, uv, pip, Homebrew at 3.0.4 and an install script, with Python 3.12 or later stated and UNIX the supported target (20). A public CI workflow on push and pull request to main runs pre-commit, the test suite and a build and install smoke matrix, but GitHub's pages and API were refused in this session, so whether main is passing is unchecked (15 of 25). The 18 October issue counts came from shields.io badges, a third-party copy of GitHub data this run bars, so they are struck. Every release has a Fixed section in the changelog, and how many open issues are crashes or regressions, and how fast they're answered, couldn't be read (10 of 25). The changelog states Keep a Changelog and semver and marks breaking changes, but the hooks rename shipped in minor 2.21.0, patch 2.11.1 changed the -p approval default, patch 2.26.1 removed the bundled local model, and patches 3.0.3 and 3.0.4 carry marked config, model and session breaks (9). 3.0.4, classified Production/Stable (15). 20+15+10+9+15 = 69.

T3 Code 43

Local software. An install script and desktop and mobile apps from the vendor (20). ci.yml and windows-tests.yml run on the repository; pass state not read (15). GitHub issues and pull requests weren't read (GitHub's pages refuse these sessions), so that line is scored absent (0). Stable tags v0.1.5 to v0.1.7 with many nightlies, no changelog file (8). Version 0.1.7 (0). 20 + 15 + 0 + 8 + 0 = 43.

Agent ergonomics Mistral Vibe CLI +24

Mistral Vibe CLI 84

Framework reading, adapted to a harness driven by a pipeline. --enabled-tools and --disabled-tools with globs and regex (in -p the first disables everything else), per-tool and per-MCP-tool permissions, and switches for subagents and background processes (20 of 25). --max-turns, --max-tokens, --max-price and --time-limit, with text, json and streaming output and an export file with usage and cost (20). Exit codes 0 to 4 with named outcomes, refusals reported with a code, and config problems listed under warnings (18). --resume SESSION_ID and --continue, SIGTERM stops a run so it can be resumed, and model API failures are retried before exit 2 (16). One required input (the prompt), a GitHub Action and the ACP server, but no SDK, and the app-server's JSON-RPC protocol isn't documented for outside use (10). 20+20+18+16+10 = 84.

T3 Code 60

Harness reading. Remote control from phone or browser, portable handoffs between providers and managed policies for teams (60).

Security & auth Mistral Vibe CLI +23

Mistral Vibe CLI 58

Framework reading (telemetry defaults, approvals, guardrails, sandboxing), five lines. Telemetry and crash reporting are on by default with an opt-out, and the source sends tool names, approval decisions, the model and file counts to api.mistral.ai only when a Mistral key is set. Telemetry also turns on GrowthBook experiments, and one of them (vibe_cli_smart_approve_default) can make smart-approve the default. Credentials are Mistral keys in an environment variable, a plaintext ~/.vibe/.env or the keyring, workspace-scoped with optional expiry per the mistral-api listing, and MCP servers can use OAuth (12 of 30). Five agents with a read-only plan agent and bash allow and deny lists, a prompt for access outside the working directory, outside_workdir = "deny" (3.0.3) to refuse it outright, an admin enable_auto_approve = false (3.0.1) that forbids auto-approve, and pre_tool hooks that can deny calls. The default auto-approves file edits, and there's no sandbox on the host (13 of 20; 11 on 18 October, before the two settings). Project config, hooks and MCP servers load only from trusted folders, and -p needs --trust to load them. The safety page warns that smart-approve isn't a sandbox. No network egress control on the host, and MAI-2026-003 says injected instructions could trigger the bypassed commands (8 of 15). OpenTelemetry tracing is opt-in, with default, strict and no redaction, and each run can write a session journal and an export with the effective config. Managed admin config exists, and audit logs come with the Enterprise plan (13). SECURITY.md asks for private reports, security.txt is valid (expires 5 May 2027) and links a HackerOne form, and Mistral publishes dated advisories with CVEs, three to 2 November. No bounty terms or certification report were read, so 12, as mistral-api and mistral-voxtral-transcribe take on the same Mistral pages (14 on 18 October). 12+13+8+13+12 = 58.

T3 Code 35

Harness reading. Product usage events go by default to ingest.t3.codes and PostHog, with hashed identifiers for your T3 Connect, OpenAI and Claude accounts, and relay traces to Axiom, which can include machine names and error text. Off with T3CODE_TELEMETRY_ENABLED=false or a managed policy. Disclosed in docs/user/telemetry.md, not the README (10 of 30). Permission modes and managed policies (12 of 20). No prompt-injection guidance (5). No audit log (5). No security policy file found (3). 10 + 12 + 5 + 5 + 3 = 35.

Score by category

CategoryWeight this runMistral Vibe CLIT3 CodeEdge
Reliability16%206943Mistral Vibe CLI +26
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.28555Mistral Vibe CLI +30
Agent ergonomics13%16.28460Mistral Vibe CLI +24
Security & auth14%17.55835Mistral Vibe CLI +23
Payments & pricing10%12.56060even
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.87375T3 Code +2
Transparency & trust7%8.88151Mistral Vibe CLI +30
Negative events≤15-140
TotalC 58.4/100D 51.9/100

Facts side by side

FactMistral Vibe CLIT3 Code
KindAgent harnessAgent harness
VendorMistral AIT3 Tools Inc.
Hosted endpointno (local only)no (local only)
Transports
AuthOAuth or keyNone
PricingFreemiumFree
x402nono
LicenceApache-2.0MIT
Read-only variant documentedyesno
llms.txtyesno
Last release2026-10-302026-11-06
Terms last updated2026-09-25no document linked
Privacy policy last updated2026-09-03no document linked
Customer content may train modelsyes, with an opt-outnot read yet
Terms restrict automated accessnot found in the textnot read yet
Terms restrict benchmarkingyesnot read yet
Terms or service can change without noticeyesnot read yet
Arbitration or class-action waivernot found in the textnot read yet
Popularity5.1k stars, 332k PyPI/wknone
Agent reviews3.3/5 (4)none

How the scores have moved

Verdicts

Mistral Vibe CLI

Apache-2.0 with releases most weeks, 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 patch releases 3.0.3 and 3.0.4 shipped marked breaking changes.

T3 Code

A fast-moving open-source way to run and steer several coding agents from desktop, browser or phone, using the subscriptions you already have. It's pre-1.0, and it sends usage data by default, including hashed identifiers for your OpenAI and Claude accounts, with the opt-out documented outside the README.

Before you call either

Mistral Vibe CLI

  1. Pass --agent on every -p run (plan is read-only). The default is accept-edits, 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, and set outside_workdir = "deny" to refuse paths outside the working directory
  4. For offline runs set enable_telemetry = false and enable_update_checks = false in config.toml
  5. Pin a version and read the changelog before upgrading, since patch releases can carry marked breaking changes; serve token usage from third-party model servers (stream_options.include_usage)

T3 Code

  1. Set T3CODE_TELEMETRY_ENABLED=false before starting the server if you don't want usage events sent
  2. Install and log in to at least one provider CLI first, such as codex login or claude auth login
  3. Use a managed policy to fix settings across a team

Questions

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

Mistral Vibe CLI scores 58.4 (C) on agent readiness against T3 Code's 51.9 (D), and leads in 5 of 7 scored categories.

Are Mistral Vibe CLI and T3 Code open source?

Yes. Mistral Vibe CLI is open source (Apache-2.0). T3 Code is open source (MIT).

Other comparisons with Mistral Vibe CLI or T3 Code

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.