One local address
An OpenAI- or Anthropic-format request arrives at the gateway.
LOCAL INFERENCE ENGINE · MLX + LLAMA.CPP
Bridge1 runs local coding models on MLX and llama.cpp, with memory checked before loading.

Bridge1 runs local coding models on MLX and llama.cpp, with memory checked before loading. Its prediction paths include DFlash and DFlash2 checkpoints, MTP heads, n-gram lookup or no drafter. The local gateway adapts client requests; the dashboard reports the active method. Drafter Fusion → Method credits →
The coding agent keeps one address. Bridge1 chooses the model behind it, checks that the model can be loaded, and reports what happened.
Each step is visible in the Live Log and the dashboard.
A simplified picture of the request path. Which speed path runs depends on the model; see the Speed page.
Bridge1 manages its llama.cpp and MLX engines itself. You do not start a model server, and you do not edit engine flags to use a catalog model.
Each catalog entry comes with a pinned engine build and a runtime profile. Bridge1 does not retrain model weights. Each model page names its quantization.
Bridge1 keeps a budget for models: the smaller of macOS's own GPU memory limit and your installed memory minus a third of installed memory, at least 4 GB and at most 8 GB. macOS sets its own limit, and Bridge1 reads it at run time.
Each model’s bill includes weights, overhead and context. The pre-load memory-fit check avoids admitting a window the Mac cannot hold. Client limits still apply. See Full Context and model artifacts →
What this means for your Mac →The budget is the smaller of macOS's GPU limit and installed memory minus a third of installed memory, at least 4 GB and at most 8 GB.
The default window is the largest one that fits the budget. You can lower it for a model as an Advanced setting.
When a model cannot load, the gateway says why. Colder models may be unloaded first.
For clients that use OpenAI request formats, through /v1/chat/completions and /v1/responses. OpenCode and Codex use these routes.
For clients that use the Anthropic request format, through /v1/messages. Claude Code and Claude Desktop use this route.
API compatibility means the request formats match. It does not mean every client behaves the same way. The named clients are listed on the Compatibility page.
Calibrate measures a model's prefill and decode speed on your Mac. Bridge1 uses the result for request timeouts and cold-start estimates.
Calibration does not set the context window. The memory plan does that, and it is the same whether you calibrate or not.
Route1 is a model name that Bridge1 controls. Your client points at claude-route1 (Claude Code and Claude Desktop) or route1 (other clients). You choose which model Route1 serves in the app.
If the model behind Route1 is not loaded, Bridge1 starts it when nothing else is loaded. Otherwise, load it first.
OpenCode, Pi.dev, Codex and Hermes Agent show each model under the same plain id. Claude Code and Claude Desktop show those same models with names beginning with claude-, as those apps require.
route1 always follows the model you pick in Bridge1. Switch models there and keep your client configuration.
In OpenCode, Pi.dev, Codex, Hermes Agent or Claude Code, type bridge1: help in a chat to check status, list models, or load, switch or stop a model. If a model is not ready, Bridge1 explains the next step in the chat. Turn chat controls off in Settings.
ANTHROPIC_MODEL="claude-route1"The client keeps one name. Switching the model behind Route1 does not change the client.
A switch means the new model reads the chat again from the start. The first reply after a switch takes longer.
In a long conversation, reading the prompt can take longer than writing the reply. Bridge1 reuses a cached prompt prefix when it can.
Inspect the evidence →No. Bridge1 starts and supervises the engine for each catalog model. You choose the model rather than maintaining a server process and launch flags. The local gateway is the client-facing component of the inference engine, and the dashboard shows which engine and model actually ran.
route1 follows the model you pick in Bridge1, so switching needs no client config edit. OpenCode, Pi.dev, Codex and Hermes Agent share plain model ids. Claude Code and Claude Desktop show the same models with claude- names because those apps require them.
Read the model-switch behaviorThe new model must process the conversation with its own weights and cache state. Route1 keeps the client setting stable, but cannot reuse another model’s computed state. Load the Route1 target first if another model is already resident; budget checks still govern whether it fits.
Bridge1’s memory plan sets both for a catalog load. Weights, context and engine overhead must fit the available model budget, and the app explains refusal or eviction. You can lower a model’s window in Advanced settings instead of discovering a memory overrun during a long coding request.
Full Context and artifact choicesNo. Calibration is optional and measures prefill and decode on your Mac for timeout and cold-start estimates. The memory plan sizes context independently, so skipping calibration does not require you to invent a window size or engine speed estimate.