This is an early release preview. You may encounter bugs.
oMLX logo
Unclaimed

Tool deployment

oMLX

LLM inference server with continuous batching & SSD caching for Apple Silicon — managed from the macOS menu bar

A+ 91/100 GitHub score ? This grade is derived from GitHub signals, not user votes. Open for the full breakdown.
Discussion

01 / Summary

About oMLX.

oMLX is a local LLM inference server for Apple Silicon Macs, built on MLX and mlx-lm and managed from a native macOS menu bar app. It serves text LLMs, vision-language models, OCR models, embedding models, and rerankers from the same process, and exposes OpenAI-compatible and Anthropic Messages endpoints so coding agents such as Claude Code, OpenClaw, and OpenCode can run against local models.

Its main mechanism is a tiered KV cache aimed at agent workloads, where the prompt prefix changes many times per session. Cache blocks are paged with prefix sharing and copy-on-write, hot blocks stay in RAM, and cold blocks are written to SSD in safetensors format. A request with a previously seen prefix restores those blocks from disk instead of recomputing them, including after a server restart. Concurrent requests run through mlx-lm's BatchGenerator with continuous batching.

Models load side by side with LRU eviction, pinning, per-model idle timeouts, and a total memory limit. A web admin dashboard handles model downloads from Hugging Face, per-model settings and profiles, a built-in chat, benchmarks, and one-click configuration of agent tools. Source builds can also split one model across several Macs as an experimental feature.

Endpoint Purpose
/v1/chat/completions Chat completions with streaming
/v1/completions Text completions with streaming
/v1/messages Anthropic Messages API
/v1/embeddings Text embeddings
/v1/rerank Document reranking
/v1/models Model listing
  • Tiered KV cache: hot blocks in RAM and cold blocks on SSD, restored on matching prefixes across requests and restarts
  • Continuous batching: concurrent requests through mlx-lm's BatchGenerator, with a configurable concurrency limit
  • Multi-model serving: LLMs, VLMs, OCR, embedding, and reranker models in one server, with LRU eviction, pinning, and per-model TTL
  • API compatibility: OpenAI chat and completions endpoints plus the Anthropic Messages API, with streaming usage stats and vision inputs
  • Claude Code support: reports the model's real context window for auto-compaction and keeps long prefills alive with SSE keep-alive
  • Tool calling: auto-detected tool-call formats for Llama, Qwen, Gemma, GLM, MiniMax, Mistral, and Kimi K2 families, plus JSON schema output and MCP tools
  • Vision and OCR: multi-image chat, video input for some Qwen checkpoints, and auto-detected OCR models such as DeepSeek-OCR and GLM-OCR
  • Admin dashboard: model management, per-model settings and profiles, built-in chat, and one-click benchmarks, usable offline
  • Model downloader: searches and downloads MLX models from Hugging Face inside the dashboard
  • Agent integrations: one-click setup for OpenClaw, OpenCode, Codex, Hermes Agent, Copilot, Pi, and DeepSeek Harness
  • Menu bar app: native SwiftUI app that starts, stops, and monitors the server, with usage history and auto-restart
  • Multi-Mac inference: experimental splitting of one model across Macs over Ring or Thunderbolt links

02 / Discussion CREDIBILITY-GATED

Discussion

Reading is open to everyone. Posting and voting need a verified identity or a GitHub grade of B or higher.

  • No discussions yet.

04 / Build

Build with oMLX.

Browse the catalog for frameworks, tools, and harnesses, each scored on real GitHub credibility.

Get oMLX →

Browse the catalog