BUILT FOR LOCAL CODING

Local coding, with the details handled.

Bridge1 prepares your models, manages memory and keeps coding sessions moving. Explore the features that help you spend less time tending your Mac and more time building.

A stone arch bridge with an orange lane and a toy car, beside a keeper's tower with a lamp, three gauges, a thermometer and a battery cell.

CONNECT YOUR CODING CLIENT

Start from the terminal or desktop

On macOS, use bridge1 in your terminal or open the Gateway panel in the Bridge1 desktop app.

Terminal

Start a coding tool

Route1 is the default model selection.

  • Claude Code
    bridge1 launch claude
  • Codex
    bridge1 launch codex
  • OpenCode
    bridge1 launch opencode
  • Pi.dev
    bridge1 launch pi
  • Open the launcher menu
    bridge1

Starting a tool depends on its installed version, model availability and your automatic-loading settings.

Manage models

  • Show the gateway and loaded models
    bridge1 status
  • Show every model and its state
    bridge1 models list
  • Load a model and wait until ready
    bridge1 models load ID
  • Unload a model and wait until stopped
    bridge1 models unload ID
  • Show the memory and context needed
    bridge1 plan [ID]

Readiness at a glance

The launcher menu shows each tool’s state.

  • ready
  • not installed
  • update needed
  • checking
  • not checked

Automatic setup

Setup is on by default when Bridge1 starts from Applications. It starts by linking bridge1 into a usable folder already on your PATH. If none is usable, it creates ~/.local/bin/bridge1 and adds one marked block that puts ~/.local/bin on your PATH: ~/.zshrc for zsh; for bash, it chooses an existing file in this order: ~/.bash_profile, ~/.bash_login and ~/.profile, or a new ~/.bash_profile. For fish and other shells, Bridge1 changes no profile and tells you what to do.

Bridge1 does not overwrite existing commands; on a conflict it leaves them unchanged and explains what to do.

Remove turns setup off and deletes the links Bridge1 made and the marked blocks it added. If you edited a block, Bridge1 leaves it for you to remove. Other text in the file is not changed. Deleting the app does not run Remove; use Remove before deleting the app.

What changes on my Mac? →

Desktop

The Gateway panel generates the setup for your client.

  • OpenCode

    Copy the full generated provider entry from the Gateway panel.

    Setup guide →
  • Pi.dev

    Copy the generated custom-provider JSON and review it.

    Setup guide →
  • Codex

    Copy the generated provider configuration from the Gateway panel.

    Setup guide →
  • Hermes Agent

    Enter the endpoint settings, then copy and merge the generated YAML.

    Setup guide →
  • Claude Code

    Copy the generated launch command from the Gateway panel. Run it in your project folder.

    Setup guide →
  • Claude Desktop

    Download config.json, then choose New → Import and restart Claude Desktop.

    Setup guide →

Open in Terminal

On macOS, the Gateway panel’s Open in Terminal button opens Terminal.app with the launch command for Claude Code, Codex, OpenCode and Pi.dev. Opening Terminal does not itself prove the client is ready.

Keep your model list current

The Pi.dev, OpenCode and Hermes snippets list Route1 plus every onboarded model. Copy them again after onboarding another model.

Manual setup remains available for all six clients in Gateway and the client setup guides.

Prepared for speed

Spend less time repeating work.

Drafter Fusion

Experimental · per model

Prepared speed paths help supported models write replies faster.

Bridge1 selects the path per model, labels it Experimental and falls back to normal serving with a visible explanation when prerequisites are missing.

Limits: Gains and defaults differ by model and workload; model and drafter licence disclosures still apply.

Prompt reuse

Keep unchanged conversation text from becoming repeated work.

Matching-prefix caches in memory and eligible disk storage let a later turn reuse input the model has already read.

Limits: A changed prompt can require rereading; cache support differs by model and engine.

Faster cold prefill

Eligible models can spend less time reading a long new prompt.

Bridge1 applies the prepared optimization automatically on qualified dense Qwen MLX models on M1.

Limits: This improves prompt processing, with no claim for downloads or every model and chip.

Work kept after cancellation

A cancelled request need not discard all the prompt work already done.

Qualified models can preserve partial prompt processing for a retry.

Limits: Reuse depends on the model, cancellation phase and matching text.

Faster recovery after Stop

Move on sooner when you abandon a request.

Supported models stop abandoned work so the next request can begin sooner.

Limits: Recovery depends on the serving path; ordinary reply speed is a separate measurement.

Never stuck

A stalled turn gets an explanation and a way forward.

Loop Guard

Persistent repetition does not have to consume the rest of a turn.

On by default, Loop Guard stops repeating streamed turns, tells you and retries once with different sampling.

Limits: A retry can still fail; non-repeating reasoning and loops inside tool arguments are outside its general coverage.

Compaction safety net

Keep a long conversation going when the client has not shortened it.

As a last resort near the admitted window, Bridge1 summarizes the conversation rather than compacting early.

Limits: Summaries take time and can lose detail; client limits still apply.

Progress-aware long requests

A model that is still reading your prompt gets time to work.

Visible prompt progress renews the relevant waits instead of treating a long request as a silent failure.

Limits: Your client can still impose its own timeout.

A clear way back

A model that genuinely keeps failing does not keep interrupting your work.

Bridge1 switches it off with a reason and offers a Re-enable button.

Limits: A turn ended by Loop Guard does not count as a genuine engine failure.

Memory and context, managed for you

Choose a model. Let Bridge1 check the fit.

An automatic window

Start coding without choosing a context size or memory budget.

Bridge1 selects the window when the model loads, with an Advanced setting if you want a lower limit.

Limits: The window does not keep expanding on every turn; client limits still apply.

A memory plan

Leave room for macOS and the apps beside your coding client.

Bridge1 accounts for weights, engine overhead and context before admitting a model or concurrent request.

Limits: The plan is an admission check, rather than a hard limit inside the engine.

Several models kept ready

Switch work without unloading everything after each turn.

When space runs short, Bridge1 unloads models that are cheaper to reload and reread before more costly ones, protecting pinned and busy models.

Limits: A model switch makes the new model read the conversation again.

Idle unloading

Recover memory from models you are no longer using.

The idle policy weighs available memory, prompt reread cost and whether a model can be loaded again.

Limits: An idle timer does not promise the same unload time for every model.

Leftover process cleanup

Recover from interrupted work without tending engine processes yourself.

Bridge1 supervises model processes, cleans up leftovers and reports occupied ports.

Limits: Some failures can still leave a process that needs attention.

A list that fits

Find suitable models without guessing from download size.

The model list uses the memory plan to show fitting choices and explains when it has to offer a fallback.

Limits: Calculated fit on a smaller Mac does not establish tested support or speed.

Explore the hand-picked, tested model list and each entry’s limits →

SEE WHAT IS HAPPENING

Observability

The dashboard section shows what is happening while you code, and tells you what to change: close a large app, plug in or offload a model.

Live signals and practical advice for your Mac
SignalWhat it showsWhat Bridge1 suggests
ThroughputTokens per minute, TPS, Prefill, Decode, RPM and Cache hit for the selected session, labelled by client and model.Shows whether work is idle, warming, prefilling or generating; missing readings stay blank rather than becoming a speed claim.
Sessions and contextActive and recent sessions, their client, model, engine and context used; estimated counts and stale readings are marked.Warns when compaction may be approaching and offers Stop; suggests calibration when duration estimates lack it.
Route1 and readinessThe selected model and ready, unloaded, busy, calibrating or error states.Links to corrective actions for a missing, disabled or removed model.
Mac memory and model budgetAvailable RAM; Local Models adds a budget bar for model reservations, free budget, headroom and memory held back by macOS.Suggests offloading a model or closing other apps under pressure; model reservations are distinct from live memory use.
Apps using memoryLargest apps lists up to three apps with their memory use; a large swapped footprint can show total footprint alongside memory currently in RAM.Identifies large apps you could close; it does not calculate how much extra context closing one would buy.
Busy appsOther apps using a meaningful share of whole-machine CPU during sustained contention or excessive load.Names the busy apps so you can decide what to pause or close; no measured slowdown percentage is claimed.
Swap pressureWarns when memory is compressed or swapped to disk, including heavy swap without a loaded model.Advises closing large apps, or choosing a smaller model for ordinary swap and compression.
HeatShows heat-related slowdown notices while the Mac is warm.Explains that speed returns as the chip cools; Bridge1 does not change cooling or power settings.
BatteryAn on-battery notice after low charge or sustained inference.Says “plug in for full speed”; the notice clears on AC power.
Disk and cache storageTracked disk use, reclaimable space and applicable cache budgets, with a link to Storage.Offers clear and reclaim actions in Storage; this is tracked storage rather than machine-wide free disk.
Live LogRequest activity, errors and model load decisions, with category and severity filters and expandable details.Shows reasons and relevant recovery actions, including Re-enable after a genuine model failure.

Pager dots switch the displayed session: select a dot to pin it, then select it again to follow the active session. Showing one session is a display choice, not a limit on sessions.

System resources memory bar · illustration, not measured proportions
  • Bridge1

    Memory attributed to Bridge1.

  • macOS and other apps

    Includes cached files macOS can give back when needed.

  • Free

    Available memory excluding the part held back.

  • Held back by macOS

    Free memory beyond the amount macOS lets the GPU use.

Without a detailed breakdown, the bar shows In use and Free. The separate memory budget bar in Local Models describes model reservations.

One gateway, every client

Keep your coding client. Pick your local model.

Your coding clients

Use OpenCode, Pi.dev, Codex, Hermes Agent, Claude Code and Claude Desktop through the same local address.

The gateway adapts request formats and tool calls for the connected client.

Limits: Testing depth varies; Pi.dev and Hermes Agent have early support rather than full long-session qualification.

Plain model ids

Pick a named model without translating between client-specific names.

OpenCode, Pi.dev, Codex and Hermes Agent discover consistent plain ids.

Limits: Claude clients keep the Claude-prefixed names their setup requires.

Route1

Change the model without rewriting your client setup.

Point your client at Route1 and choose which model it serves in Bridge1.

Limits: Loading still depends on settings, available memory and resident models.

Chat controls

Check status or ask to load, switch or stop a model from supported coding chats.

Chat controls explain unavailable choices and can be switched off in Settings.

Limits: Turn them off in Settings and Bridge1 returns the plain error messages instead.

Vision and reasoning

Keep image requests and reasoning settings visible rather than guessing what the model did.

Bridge1 handles supported image requests, explains dropped images and applies per-model reasoning limits across clients.

Limits: Vision and warm image reuse vary by model; client and model reasoning behavior still matters.

Ready-made setup

Get from a chosen model to a connected client with less configuration work.

Copy the setup snippet prepared for your client from Gateway.

Limits: Keep the generated model, vision and context fields; follow the client guide for its limits.

Your Mac, your data

See what is stored and stay in control.

Local inference

Keep local model prompts and outputs on your Mac.

Bridge1 runs inference on the Mac instead of sending that work to a remote model.

Limits: Activation, downloads and update checks use the network; coding clients may contact their own services.

Hash-checked downloads

Catch changed or incomplete downloads before using them.

Model files and runtimes are pinned to a source and checked against their expected hashes.

Limits: Matching bytes do not establish licence clearance, publisher trust or output quality.

Visible storage

See what your models and conversation caches occupy.

Storage shows tracked categories and reclaimable space, with actions to clear caches or deliberately delete a model.

Limits: Local conversation caches and recovery material can remain on disk; Bridge1 does not promise blanket encryption.

Signed updates

Keep the app current through its update controls.

Bridge1 checks for updates and offers in-app installation of signed macOS releases.

Limits: Downloading and installing an update needs the network.

READ WITH THE CONDITIONS

How the numbers read

Measured, not promised. These historical results come from an M1 Max with 64 GB. They measure different parts of a request; other Macs are not measured here.

Short-prompt decode

1.57× to 1.79×

Model
Qwen3.6-27B · 4-bit MLX
Baseline
Drafter Fusion off
Sample
Six paired prompts
Hardware
M1 Max, 64 GB

Six paired short prompts through the gateway, comparing Drafter Fusion with normal serving. This measures decode, not whole-reply time.

Results vary by prompt; this range does not establish the same gain at depth.

Read the evidence and limits →

Cold prefill

About 192.8 s to 120.3 s

Model
Qwen3.8-27B · 4-bit MLX
Baseline
Cold-prefill optimization off
Sample
Four runs per arm
Hardware
M1 Max, 64 GB

Roughly 16.4K input tokens through the gateway, four runs per arm on AC power, comparing the cold-prefill optimization with it disabled.

All runs became hot, and the repeated hot-run result was inconclusive; this is prompt processing, not total startup time.

Read the evidence and limits →

Next request after Stop

About 85.6 to 89.9 s down to 3.5 to 3.7 s

Model
Ornith 1.5 35B-A3B · MLX
Baseline
Abandoned work running to completion
Sample
Three legs
Hardware
M1 Max, 64 GB

After cancelling a request that was still reading roughly 41K prompt tokens, how long the next request waited, measured across three legs through the engine directly and through the gateway.

Applies on the Drafter Fusion path of that model; this measures recovery after Stop, not ordinary reply speed.

Read the evidence and limits →

START WITH YOUR MAC

Pick a model. Get back to building.

Check the models and client setup, then get Bridge1 for your Mac.

Get early access

Features questions

How do I start a coding tool from the terminal?

On macOS, run bridge1 for the menu, or bridge1 launch claude, codex, opencode or pi. Route1 is the default selection. Launch depends on the installed tool version, model availability and loading settings. Gateway keeps manual setup for all six clients; Claude Desktop and Hermes stay manual.

What does the bridge1 command change on my Mac?

Setup is on by default from Applications. Bridge1 links the command on PATH; if needed, it adds a zsh or bash PATH block. Remove undoes its link and unchanged block; edited blocks stay. Use Remove before deleting the app. Read the setup details.

Read the setup details.

Which clients still need manual setup?

Claude Desktop and Hermes stay manual. Download config.json for Claude Desktop, import it with New, then Import, and restart the client. For Hermes, enter the endpoint settings and copy and merge the YAML. Manual setup for Claude Code, Codex, OpenCode and Pi remains available in Gateway.

Do I have to tune context or memory before I code?

No. Choose a catalog model and copy your client setup. Bridge1 chooses a context window at load and accounts for weights, overhead and context in its memory plan; client limits still apply.

Will Drafter Fusion be enabled for my model?

Defaults depend on the catalog entry and your saved settings. Drafter Fusion is Experimental on supported MLX entries; when its prerequisites are missing, Bridge1 can serve the model normally and report the gap.

Does Loop Guard get in the way of normal replies?

Loop Guard watches streamed replies for persistent repetition and is on by default. Healthy-stream checks found no material change within their tested bounds; a repeating turn is stopped and retried once, with an explanation, and recovery can still fail.

Where do my prompts go when I use a local model?

Inference runs on your Mac, where local prompts, outputs and conversation caches stay. Activation, downloads and update checks still need the network, and your coding client may contact its own services.

What can Observability help me change?

The memory bar separates Bridge1 (orange), macOS and other apps (red), Free (green) and Held back by macOS (diagonal stripes). Largest apps shows memory use. Throughput displays one session at a time; pager dots switch it, pin it or resume following the active session. This describes the display, rather than session capacity.