Claude can do anything, for anyone, anywhere. chad does one thing. 🗿 Coding under supervision.
chad is a coding agent that runs entirely on an Apple Silicon Mac via MLX. One 27B model and no API key. (Not affiliated with Anthropic.)
uvx chad-code # runs anywhere; the command is still `chad`
uvx chad-code prove # offline smoke test: 4 tiny fix-it tasks, verified, timed 🗿The first run asks, then downloads the model once (~8 GB). The PyPI package is chad-code.
Real session, unedited.
Plenty of harnesses run local models now, and pi is a fantastic default for the same reason llama.cpp is: it works with everything. chad is moving the opposite direction.
1 set of silicon. This project is focused on making the macbook pro you already have usable. Not a $10K GPU.
1 capable model. Qwen 3.8 27B. This isn't the frontier, but you probably aren't solving frontier problems. Focus on 1 model buys speed. You'll experience ~ 30 tokens/second generation instead of ~ 10 tokens/second for stock llama.cpp implementations. This speed comes from MLX, a couple of targeted custom kerns for this model, and a bundled dflash2 drafter.
1 tightly-coupled agent loop. Instead of a standard /completions endpoint, the agent loop in chad owns the backend process. This comes with nice advantages that make the KV cache more stable and the coding experience measurably better (no long prefills!).
You do not have an Apple Silicon with 24 GB RAM. You want to pick your local model. You need a frontier model in a data center. The list goes on.
- Installing & using chad covers install, extras and upgrades, the terminal UI, and the command-line flags.
- Throughput & performance has every number above, the stock-engine
comparison, the model, and how to reproduce them with
chad-bench. - Design & internals covers why prefill is the bill, the persistent prefix cache, and why the tool surface is five tools.
- Configuration reference documents project instructions, Agent Skills, MCP servers, plan mode, the slash commands, the context window, every environment variable, and the safety opt-outs.
- Troubleshooting maps symptoms to knobs for when a session rambles, loops, or slows.
- Contributing says what lands easily and what needs a conversation first.

