Meridian

Routing

How unpinned requests choose an account. Active uses the manually selected profile. Sticky distributes sessions across profiles evenly (cache-affine). Priority drains the pool in order — highest first — and fails over per request when an account runs out; conversations keep their account, and new sessions return to the preferred account after its window resets. Active+priority keeps you in charge - every request goes to the profile you selected - but the moment that account is refused, the request is re-sent to the next healthy account in the pool order and answered from there, so the client never sees the error. Switching the active profile moves running conversations too, which is the difference from priority. It reuses the same pool order below; the active profile always goes first, wherever it sits in that list. An explicit x-meridian-profile header always overrides. Changes apply to the next request — no restart needed.

Loading…

SDK Features Experimental

Unlock Claude Code features for any connected agent. Capabilities like auto-memory, dreaming, and CLAUDE.md — normally exclusive to Claude Code — become available to OpenCode, Crush, Droid, and any other harness routed through Meridian. Each agent keeps its own toolchain while gaining access to these additional features.

System prompts: For these features to work correctly, both the Claude Code prompt and your client prompt should be enabled. When both are active, they are appended together — Claude Code's base instructions come first, followed by your agent's specific instructions.

Model Pricing

Rates used by the telemetry cost estimate, in USD per million tokens. Edit a value to override the built-in rate, or add models the built-in table doesn't know about (they show as "no pricing" on the dashboard until defined here). Changes apply on the next dashboard refresh.

ModelInputOutputCache ReadCache WriteSource
Cache read and cache write are optional; when left blank they default to 0.1x and 1.25x of the input rate (the 5-minute cache TTL multipliers). Verify current list prices at claude.com/pricing.

Telemetry Storage

What /telemetry remembers, and for how long. By default telemetry lives in a fixed-size ring in memory: fast, free, and gone the moment the proxy restarts — which is also why a window longer than an hour or so usually shows less than it names. Persisting moves it to SQLite, where rows survive a restart and are deleted by age instead of by count. These settings apply on the next start, not to the running proxy. The stores are built once at startup and cannot be swapped out from under requests already in flight.

Loading…

Updates

Meridian is installed and updated by hand, so an instance can sit on an old version for weeks without anyone noticing. Switch this on and it asks the npm registry once a day whether a newer version is published; the site header then says so, beside the version it is running. Off unless you turn it on — nothing contacts the registry until then. The header shows the running version either way.

Loading…

Site Header

With several Meridian instances open in tabs, they all look the same. Switch this on and the header names the machine this one runs on, beside its status. Off unless you turn it on, because the hostname is then also reported by /health, which answers without the API key.

Loading…

Layout

How much of the window these pages use. Contained keeps every page in a centered column, the way Meridian has always looked. Wide uses the whole window, for a big monitor and many accounts: the home page fits more account cards on each row at about the same size, and Profiles lays its larger cards out side by side, two to four to a row depending on the screen. Phones get one column either way. The choice is saved on this Meridian, so every browser that opens it sees the same layout. Other pages pick it up on their next load; this one switches as soon as you choose.

Loading…
Saved