Swift-native in-process engine
Model loading, generation, caching, and serving happen in one Swift process through Apple MLX. No Python service to install, supervise, or keep in sync.
Run language and vision models through a native SwiftUI app, a real CLI, or a compatible API — all backed by the same Swift in-process MLX engine.
macOS 14+ · Apple Silicon · Apache 2.0
01Why macMLX
The difference is underneath: the inference engine itself is Swift, runs inside the app process, and powers every interface.
Model loading, generation, caching, and serving happen in one Swift process through Apple MLX. No Python service to install, supervise, or keep in sync.
Use the SwiftUI app, script with macmlx, or connect an existing OpenAI, Anthropic, Ollama, or MCP workflow. They share the same models and engine behavior.
macMLX ships prompt caching, model pooling, LoRA, VLM support, and a pure-Swift DeepSeek V3.2 port. Track G keeps tested results distinct from theoretical estimates so engine progress stays inspectable.
02What ships today
Everything below is available in v0.6.2 — not a concept render or a future promise.
Streaming Markdown, reasoning blocks, image attachments, conversation history, rewind, and per-model parameters in a focused macOS interface.
Compatible OpenAI, Anthropic, Ollama, MCP, embeddings, and rerank surfaces support agent and API tool loops plus structured output controls for supported workflows.
Continuous batching, longest-common-prefix reuse, speculative decoding, and hot RAM / cold SSD cache tiers keep repeated and concurrent work practical.
Browse, download, resume, update, and load MLX models in the app. Mirrors and commit-aware update detection are built in.
Pull, run, serve, inspect, and stop from scripts or SSH without switching to a separate runtime.
Benchmark throughput and first-token latency locally, then inspect XTC and KV-cache quantization behavior. Track G keeps tested measurements separate from theoretical estimates, with engine events available in Logs.
03Inside the engine
Follow one inference journey from Apple Silicon to sparse experts, shareable memory, adaptive admission, and controlled generation.
Unified memory keeps model weights, activations, and cache close to both CPU orchestration and integrated-GPU compute. MLX can move the work without building a second runtime around it.

A router selects a small expert set for each token, combines it with shared expertise, and merges the weighted result. macMLX ships a parity-verified pure-Swift DeepSeek V3.2 MoE path without claiming every MoE family.

Longest-common-prefix (LCP) reuse is available today across hot RAM and content-addressed SSD cold tiers. Paged allocation, block sharing, and copy-on-write remain planned for sharing prefixes across more concurrent work.

The fixed prefill admission is released and prevents a prompt wave from consuming every batch slot at once. Memory probes, pool limits, and eviction already shape admission; the unified adaptive guard remains future work.

Temperature, top-p, XTC, and KV-cache quantization are available today. Top-k, min-p, presence, frequency, and repetition penalties, and per-request seed remain planned for a future control surface.

04Development progress
The website now separates released capability from active engineering work, so the roadmap reads as progress rather than promises.
05Get started
Install the app for the full macOS experience, or use the CLI when the terminal is already home.
$ macmlx pull mlx-community/Qwen3-8B-4bit $ macmlx run Qwen3-8B-4bit "Hello, Mac." $ macmlx serve
http://localhost:8000/v1ready