The pre-deployment gate for local AI agents.
Benchmark any Ollama, llama.cpp, or MLX model for agentic readiness on your own hardware β and get a Ready / Conditional / Not Ready verdict before you wire it into an agent. Runs fully local by default (nothing leaves the machine); optionally point it at a remote vLLM or SGLang GPU server when you need to bench a model bigger than your box.
Local-first Β· No telemetry Β· No account Β· pass^k scoring Β· hardware-aware Β· one ~30 MB binary
You do not need Rust, Node, or any toolchain to use QuantaMind.
Download the prebuilt app from quantamind.co and launch.
Prefer the terminal? Install in seconds:
# macOS / Linux
curl -fsSL https://github.com/QuantaMinds/QuantaMind/releases/latest/download/quantamind-installer.sh | sh# Windows (PowerShell)
powershell -ExecutionPolicy Bypass -c "irm https://github.com/QuantaMinds/QuantaMind/releases/latest/download/quantamind-installer.ps1 | iex"Prebuilt for macOS (Apple Silicon + Intel), Linux (x64 + arm64, plus a fully static musl build for containers), and Windows x64 β every artifact checksummed and attestation-signed.
QuantaMind drives a model you already run locally β so you need a backend up (the default is Ollama):
# 1. Start a backend and pull a small model to gate
ollama pull llama3.2:1b
# 2. Probe your backends β every failure prints its exact fix
qm doctor
# 3. Zero-config: pick a backend+model and run a first verdict
qm initIn the desktop app: open the Tests tab, pick your model, run a built-in agentic collection β then check Agent Report for the verdict.
Full CLI reference, container images, checksums + attestation verification: CLI quickstart.
π¬ Hit a snag? Troubleshooting covers the common ones β including macOS's "developer cannot be verified" dialog. Setup bugs are real bugs: open an issue or ask in Discord.
Parameter count is a terrible predictor of whether a local model can drive an agent. In Docker's open agent-loop benchmark, Llama 3.3 70B scored 0.61 on tool-calling while Qwen3 8B scored 0.97 β a model ~20Γ smaller was far more reliable.
The same model that's flawless in chat will, mid-task, fake a tool call, loop until it gives up, or declare "done" without finishing. On local hardware the result also shifts with quantization and VRAM β so a cloud eval's verdict doesn't transfer to your machine.
QuantaMind is the gate you run before that happens. Point it at a local model, and it drives that model through real agentic tasks β multi-step plans, tool calls, recovery β then returns a verdict for that model on that hardware:
| Verdict | Meaning |
|---|---|
| π’ Ready | Reliable enough to wire into an agent here. |
| π‘ Conditional | Works for some task tiers, not others. The report says which. |
| π΄ Not Ready | Fails the tasks that matter β with the failure mode named. |
Reliability is scored with pass^k β does the model succeed k of k times, not once by luck. For an agent, consistency is the whole game.
Important
Everything runs on your machine. There is no QuantaMind cloud, no account, no telemetry. Your prompts and model outputs never leave your hardware.
QuantaMind is a workbench, not a chat app β each surface answers one question about a local model.
| Tab | What it's for |
|---|---|
| π§ͺ Tests | Score models on tiered agentic scenarios (EasyβExtreme) with pass^k reliability, failure-mode classification, and a visual trace debugger. Includes a Safety & Boundaries (Category K) axis: prompt-injection resistance + an over-refusal control, a compliance gate, and model-vs-config attribution of a safety failure. Also reports Tokens/Task (amortized cost incl. failed-run waste) and supports payload-noise scenarios that test field extraction from messy real-world tool JSON. |
| π Agent Report | Per-model Ready / Conditional / Not Ready verdict, tier-progression matrix, failure taxonomy, and an opt-in community leaderboard. |
| β¨οΈ Workspace | Monaco prompt editor with token-by-token streaming, per-run metrics (TTFT, tok/s), and YAML save/load. |
| ποΈ Speech-to-Text | Fully local transcription via whisper.cpp, with an optional voice β assistant pipeline. |
| π¦ Models | Install from Ollama Library, Hugging Face, or a local .gguf; disk-safe, resumable, with a storage manager. |
| π Analysis & Latency | Multi-model compare and quantization diffing, with throughput/TTFT charts and Markdown/JSON export. |
| π Docs | Built-in, task-oriented user guides (getting started, choosing a backend, running tests, troubleshooting) with βK full-text search. |
The details behind each tab
Tests
- Tiered scenarios (EasyβExtreme) across nine domains, with a codingΒ·financeΒ·medical spine at every tier so a model stays comparable as difficulty rises.
- Deterministic scoring: tool-call accuracy, pass^k, schema resilience β and failure modes named honestly (
ForbiddenCall,LoopCap,FakeDone, β¦), never just pass/fail. - Run a whole collection or click one task to run just it; every lever (k, step caps, decoy tools, thinking budget, native/prompt method) applies unchanged.
- A Context Stress Test finds where tool-call accuracy collapses β and only ever reports a depth it actually measured.
- Custom JSON collections are validated before import, with per-task fix-it messages β a fixture bug can't masquerade as "every model fails my task".
Agent Report
- Verdict gated on a readiness profile you configure: min pass^k, forbid loops/false-done, VRAM fit, min context, native function calling.
- Separate verdict rows for native and prompt-based tool calling; VRAM fit graded at the KV-cache precision the launch would actually use.
- Right-Sizing names the smallest quant of each family still Ready on your hardware, with measured deltas (size Β· memory Β· pass^k).
- Export standalone HTML, or publish an opt-in verdicts-and-metrics-only row; an "Equivalent CLI command" preview reproduces the exact same bar headlessly.
Workspace β live model picker, explicit run states with clean cancellation (no fake "done"), byte-identical YAML round-trip, persistent backend-health status bar.
Speech-to-Text β whisper.cpp as its own engine axis; curated catalog, atomic installs, all audio decoding in Rust, loopback-only by construction.
Models β one modal, three sources (Ollama Library / Hugging Face / local .gguf); disk pre-check, cancellable resumable downloads, pure-Rust GGUF parsing.
Analysis & Latency
- Multi-model compare with a hardware feasibility verdict (
ok/risky/wont_fit) at click time, and the full per-token latency breakdown under each answer. - Context-ceiling meters by KV-cache precision (f16 / q8_0 / q4_0), budgeted on the measured Metal working-set limit on Apple Silicon, with a
Fits/Tight/SpillsToCpuverdict. - The Latency tab doubles as the Tests cost page: per-task prefill/decode split, thinking tokens, cache hits, KV memory at peak context, and OOM forensics β every number labeled measured, computed, estimated, or claimed.
The full tour of every control and caveat lives in the in-app Docs tab and docs/codebase/.
Everything the desktop app measures, headless β for CI gates, SSH boxes, air-gapped runs, and scripts. The whole journey is five commands:
$ qm doctor # connect: probes all 5 backends, prints the exact fix for anything broken
$ qm init # zero-config: picks a backend+model, writes qm.json, runs a first verdict
$ qm validate --collection <id|file.json> # prove a test is trustworthy BEFORE spending a model on it
$ qm run --k 8 --costs --save-report r.json --junit j.xml --save-transcripts traces/
$ qm report --report r.json --profile coding-agent # re-score offline under any team policyThe verdict is the exit code β 0 Ready Β· 10 Conditional Β· 20 NotReady Β· 11 Inconclusive (infra, retry) β so a pipeline gates on it directly, and the bundled qm-eval GitHub Action (prebuilt binary, no toolchain) or the ghcr.io/quantaminds/qm container does it for you. Every number is measured or n/a, never estimated: per-task steps, thinking tokens (tokenized split on llama.cpp), cache hits, peak context, per-task KV, RSS.
Full reference: docs/cli.
- Windows + Linux desktop builds β in progress. The platform-adapter foundation has landed; sidecar lifecycles, multi-vendor GPU probe, and native storage paths are being rewired phase-by-phase.
- WebGPU β run the readiness gate in the browser, on your own GPU, zero install.
- Expanded task suite β more agentic tiers and domains.
- Deterministic visual environments β stateful WebUI + vision/OCR readiness evals.
- Category K, broadened β more injection vectors (sleeper, contradictory params, parameter validation), a visual authoring toggle for custom safety probes, and a redacted auditor-evidence export.
QuantaMind is an open-source workbench β Tauri 2.x + Rust + React 19 + TypeScript 5 + Vite + Tailwind + Zustand (the stack is locked; full table in docs/process.md#tech-stack). If you want to build the desktop app from source, dive into the architecture, or add new agentic tests:
- Building from source β Rust/Node/pnpm toolchains for macOS, Linux, and Windows (incl. the Windows dev-shell setup), plus the dev/test loop. ~5 minutes on macOS.
- Contribution guidelines β ground rules, branching, the PR checklist.
ARCHITECTURE.mdβ the five-minute map: React frontend β JSON-over-IPC β Rust backend β HTTP to Ollama / llama.cpp / MLX (local) or vLLM / SGLang (remote GPU).docs/codebase/β deep, file-by-file reference for every backend module and frontend page.docs/architecture.mdβ modules, IPC, layering law, robustness rules, folder taxonomy.docs/process.mdβ tech stack, setup, conventions, the step-by-step workflow, roadmap.docs/reference.mdβ analysis/bench schema, adding custom tests, troubleshooting.docs/cli/README.mdβ the headlessqmCLI, end to end.
Important
QuantaMind is local-first by design.
- No telemetry, no account β no analytics SDK, no crash reporting, no tracking. Runs offline once a model is installed.
- Network calls limited to local model servers (
localhost:11434Ollama,127.0.0.1:8093whisper.cpp, dynamic llama/MLX ports) andhuggingface.co(only when you actively browse/install). The one exception is opt-in: if you configure a remote vLLM/SGLang server in Settings, prompts you run on that backend are sent to the URL you entered (empty by default). - Speech-to-text is offline-only β a loopback-only probe; a down local server fails loud rather than silently falling back.
- No silent shell edits β changing
OLLAMA_MODELSgenerates the export command; it never edits your shell profile. - Tauri sandboxing β the webview can only call IPC commands explicitly registered in
backend/capabilities/. - Schema validation at every IPC boundary β Zod on TS, serde +
validatoron Rust; malformed payloads rejected with typed errors.
Found a vulnerability? Please open a private security advisory instead of a public issue.
- π¬ Discord β talk directly to the core team
- π¦ π (Twitter)
- π Issues β setup bugs are real bugs
Is QuantaMind a chat app?
No β it's a workbench. Each Workspace run is a single prompt β single completion. The multi-step agentic loops live in the eval engine, not a chat UI.
Does it fine-tune or train models?
No. QuantaMind consumes pre-trained models; training is out of scope.
Why Ollama and not llama.cpp directly?
Ollama gives a clean HTTP API, a stable storage convention, and handles GPU plumbing. It's no longer the only backend, though β llama.cpp (llama-server) and MLX (mlx_lm, Apple Silicon) run locally, and vLLM / SGLang connect to a remote OpenAI-compatible GPU server (URL + optional API key set in Settings) β all behind one InferenceBackend trait.
Does my audio leave the machine?
No. Speech-to-text runs entirely on local whisper.cpp (127.0.0.1:8093). Audio is decoded and resampled in Rust and sent only to the local server; a loopback-only probe means it never reaches the cloud.
Can I run without an internet connection?
Yes, once you've installed at least one model. Workspace, Voice, and Analysis are fully offline. Only the Hugging Face tab β and downloading new models β needs connectivity.
Does it send any usage data?
None. The only outbound HTTP is to your local Ollama and (when you ask) to Hugging Face.
Apache 2.0 β see LICENSE.
Built on Tauri, Ollama, llama.cpp, whisper.cpp, Hugging Face, Monaco Editor, and the React / Vite / Tailwind / Zustand stack β plus the open-weights model communities (Meta, Mistral, Qwen, Microsoft, Google, DeepSeek, and many others).
Built with discipline. Local-first by design. Β· Made by QuantaMind


