raz@spacefrigate ~/projects/minimlx % minimlx chat loading qwen38-27b-mtplx…
minimlx chat · qwen38-27b-mtplx · tools: 7 · bash: on Enter submits · Alt+Enter newline · /help · Ctrl-C stops gen · Ctrl-D exits
what is minimlx? thinking… Short answer wanted. Say what it is, where it runs, and that it stays on the machine. I run Gemma 4, Qwen 3.6 and Qwen 3.8 entirely on your own Mac, through Apple's MLX — chat, agentic coding, voice, and an Anthropic-compatible server for Claude Code. Nothing leaves the device. 68 tok · 57.0 tok/s · thought 84 chars
[ view on github ] [ see the numbers ]

minimlx --help

chat
Interactive REPL — streaming output, reasoning, and a local tool loop: read, write, edit, grep, glob, ls, bash.
ask
One-shot prompt. Bare text works too, so minimlx "explain crc32" is enough.
code
One-shot programming task against your working tree, with the same tools.
conversation
Voice: speak → transcribe → generate → speak back, all on-device.
serve
Anthropic-compatible HTTP server, so Claude Code can run against a local model.
pull · ls · rm
Model and cache management, with aliases for everything in the library.

minimlx models # measured: M5 Max 128 GB, cold, 300 tok @ temp 0.7

aliasbuilddecodeprefillpeak
qwen38-27b-mtplx27B · 4/8-bit · MTP head 57 tok/s352 tok/s21.0 GB
qwen38-9b-4bit9B · 4-bit 98 tok/s358 tok/s5.3 GB
qwen38-9b9B · 8-bit 58 tok/s276 tok/s9.7 GB
qwen38-27b-4bit27B · 4-bit 32 tok/s234 tok/s15.5 GB
qwen38-27b27B · 8-bit 16 tok/s159 tok/s28.9 GB
Sustained load roughly halves all of it — an M-series laptop throttles well before the model does. The answer above streamed at the top row's rate.

Read calc.py and say what is wrong with the add function. Do not edit anything.

thinking… The user is asking me to read calc.py and tell them what's wrong with the add function. No edits needed. [called tool] read_file({"path": "calc.py"}) def add(a, b): return a - b The add function is wrong because it subtracts instead of adding: def add(a, b): return a - b # should be: return a + b So add(2, 3) returns -1 instead of 5. The fix would be changing - to +, but as requested I haven't edited anything. 94 tok · 25.6 tok/s · thought 51 chars

install

$ pip install "minimlx[mtplx] @ git+https://github.com/bravenewxyz/minimlx"

# then
$ minimlx chat
$ minimlx code "add a --json flag"

# or point Claude Code at your own hardware
$ minimlx serve
$ export ANTHROPIC_BASE_URL=http://127.0.0.1:1234
macOS on Apple Silicon · Python 3.11+ · MIT · github.com/bravenewxyz/minimlx
qwen38-27b-mtplx·turns: 2·tools:on·/help