Local-first autonomous data analysis

Ask your data,watch it reason

An agent that runs sandboxed Python, inspects results, self-corrects tracebacks, and verifies its own findings — locally on your machine.

terminal
brew tap Wizard-AIA/wizard && brew install wizard
Other platforms & Docker
Capabilities

An agent that
investigates.

Real analytical questions are rarely one step — a dirty join key or a column that means three things only shows up once you look.

01

Investigates, then verifies

Rather than following a plan fixed before anything ran, the manager sees what the code actually produced and decides what to do next. The headline result is recomputed by a different route before it reaches you.

2xcomputed, then verified
Process

Upload.Ask.Verify.

Runtime

It runs on
your machine.

Generated code runs in a subprocess by default — its own memory ceiling, a per-step timeout, a working Stop button. Docker is opt-in, not a fallback.

3execution backends

host — a sandboxed subprocess, the default. docker — a container per session, opt-in. inprocess — used only when spawning is forbidden.

4Layers of containment
9.5/10OpenSSF Scorecard
enforced
LinuxLandlock + seccomp
enforced
macOSsandbox-exec (SBPL)
network not enforced
WindowsJob Object + Low integrity
operational
Dockercap_drop=ALL, opt-in
VERIFIEDevery number below traces to this repo

Numbers you
can check.

0+
Backend tests
unit · integration · regression · negative
fuzzing · mutation testing · chaos · sanitizers
CI workflows
0
supply-chain security rating
OpenSSF Scorecard
0.0/10
OllamaLM StudioOpenAIAnthropicGeminiAny OpenAI-compatible gateway
Providers & data

Bring your
own model.

Nothing is hardcoded — the app uses whatever your provider actually has, and you can assign a different model, on a different backend, to each role.

Cloud
OpenAI
Cloud
Anthropic
Cloud
Gemini
Source
GitHub
Local
Ollama
Local
LM Studio
OpenAI-compatible
Custom gateway
Execution
Docker
SQL
DuckDB
DataFrames
Polars
DataFrames
pandas
Charts
Plotly
6Model providers
7File formats
0Vendor lock-in
Connectors & streaming docs
Security

Autonomous,
not uncontrolled.

Generated code is untrusted by default. Four layers apply before it ever touches your filesystem or the network.

Verify it, don't trust it
4layers before code touches your files
AST guardOS sandboxContainerScoped FS

Static code guard

An AST policy check rejects restricted imports and dynamic execution before anything runs.

OS-native containment

Landlock + seccomp, sandbox-exec, or a Windows Job Object — writes confined, network denied.

Container isolation

Opt into Docker for cap_drop=ALL, no-new-privileges and per-execution timeouts.

Scoped filesystem

Each session reads and writes only its own workspace directory.

Under the hood

A REST API.
And a WebSocket.

The same protocol the web UI uses to stream reasoning, code, stdout and the answer is open for anything else you want to build against it.

Typed event protocol

session · reasoning_delta · code · stdout · final — every WS frame is a fixed shape.

Streams as it thinks

Reasoning, code, stdout and the answer arrive as separate delta streams, token by token.

Six providers, one interface

Ollama, LM Studio, Anthropic, OpenAI, Gemini, or any OpenAI-compatible gateway.

OpenAPI, generated

Interactive docs at /docs; TypeScript types generated straight from the schema.

Principles

In the project's own words.

Two small Ollama models are enough to be useful. Nothing is sent anywhere.
W

Wizard

Local-first, README.md

0 KBsent anywhere by default
Every principle
Setups

Pick your
setup.

Organic whale
Default
01

Local-only

Nothing leaves your machine. No API key.

  • Ollama or LM Studio
  • Any two local models — reasoning + code
  • Nothing else to configure
02

Hybrid

Keep local models, make a cloud key available for either role.

  • A local provider for the default pair
  • One cloud API key
  • Assign roles later from /models
03

Cloud-only

No local weights needed — Anthropic, OpenAI, Gemini, or any gateway.

  • One provider API key
  • No GPU, no local install
  • Auto-selects a model on that provider
Safe to run again against an existing installAn existing key is never blankedSwitch setups later from /models
Full setup recipes

Ready to ask
your data something?

Local-first, no API key required. Two small Ollama models are enough to get started.

BSD 3-Clause · runs entirely on your machine