PRODUCT
PaglaMLX
LLM orchestration, optimized for your Mac. One local API for MLX models and cloud providers, managed securely from the menu bar.
Overview
PaglaMLX is an orchestration layer that speaks both OpenAI and Anthropic natively, dropping straight into any existing AI workflow. Local MLX models run as isolated servers on their own ports; the gateway routes by name, falls back to cloud providers by prefix, and translates protocols in both directions — streaming and tool calls included.
Why it exists
Testing a local model used to mean spinning up isolated servers and managing ports by hand. Switching between local and cloud meant rewiring clients. PaglaMLX removes that ceremony.
- Manually starting and tracking a server per model.
- Reconfiguring every client to reach a different port or protocol.
- No clean fallback when a local model is unavailable.
- No single place to see what is loaded and what is running.
Solution
One gateway on 127.0.0.1:2525/v1. Every model is a
directory; every provider is a prefix. Clients point at one address
and let the router decide.
One API, two protocols
OpenAI /v1/* and Anthropic /v1/messages, translated bidirectionally.
Auto-routing
model=auto picks the best local model; gpt-*, claude-*, gemini-* and friends route to cloud.
Menu-bar control
Load, unload, and watch models without touching a terminal.
One-click integrations
VS Code, Copilot, Kilo Code, OpenCode, Cline, Continue.dev, Claude Code, Codex CLI and more.
Key features
Smart gateway
OpenAI-native and Anthropic-native endpoints on one local port.
Model orchestration
One-click load and unload; each model runs as an isolated mlx_lm.server.
Live route table
Routes update as models start and stop; multiple models run concurrently.
Cloud fallback
Prefix routing to OpenAI, Anthropic, Gemini, OpenRouter, Groq, and Together.
Free Router
A free fallback path through OpenRouter when nothing else is configured.
Secure by default
Local-only binding and a key from Settings, readable by your tools only.
Architecture
-
SwiftUI App (menu bar)
Loads models, exposes settings, watches the event log.
-
RoutingGateway (Python, :2525 /v1/*)
Translates OpenAI ↔ Anthropic, routes by name and prefix, streams.
-
Local Router
One
mlx_lmprocess per model, each on its own port (50xx). -
Cloud Router
OpenAI, Anthropic, Gemini, Groq, Together by prefix.
-
Free Router
OpenRouter fallback when no cloud key is present.
Documentation
$ git clone https://github.com/paglaai/PaglaMLX.git
$ cd PaglaMLX
$ ./build_dmg.sh # release build + .app + .dmg
Getting started
Set your models directory, check Python, load a model, and connect any OpenAI or Anthropic-compatible tool.
Roadmap
-
Shipped
v1.5.0 — Rebranding release
Project renamed to PaglaMLX, docs and API reference published, release pipeline live.
-
Now
Gateway hardening
Event-log watcher, deterministic replay tests, and deeper provider coverage.
-
Next
Model marketplace
Browse, download, and pin models from the menu bar.
FAQ
Download the latest .dmg from Releases and drag it to Applications. From source, clone, run ./build_dmg.sh, and you're done.
Point any OpenAI- or Anthropic-compatible tool at http://127.0.0.1:2525/v1 with the key from Settings → Network. Use model=auto to let the router decide, or name a specific model.
Requires macOS 14.0+, Python 3.12+, and Apple Silicon. Memory usage scales with the models you keep loaded; unloading a model frees its port and its memory.
Run it locally tonight
Open the quick start or clone the repo. Your first local model is minutes away.