/model. Install the Valar CLI and configure your coding key first.
Choose a routing lane
valar claude on uses the proxy when usable and otherwise selects direct routing. It explains the selected lane. Add --direct to choose direct routing explicitly.
Enable routing
For the proxy lane on macOS or Windows:valar claude-desktop on for the app.
Valar leaves your Claude Code version unchanged unless you use the version-hold options.
Model selection
Valar updates the/model picker with the models available to your coding key. An explicit valar claude on selects the Valar default, normally Valar Auto. You can choose another model; that choice persists until the next explicit on.
With quota-first enabled, eligible Claude-model requests can use your subscription. See Quota-first for model and account behavior.
Stable Claude Code
To enable routing and hold Claude Code at Valar’s stable release:claude install <version>, then sets DISABLE_AUTOUPDATER=1 in Claude Code’s settings to stop automatic updates. You can still run claude update manually. If installation fails, Valar does not add the hold or change routing.
The hold survives later plain valar claude on commands and Valar upgrades. When Valar’s stable release moves forward, the next valar claude on installs it and keeps the hold. It never moves Claude Code back to an older release. To remove Valar’s hold and update Claude Code now:
claude update. For npm or Homebrew installations, it removes Valar’s hold; update Claude Code through your package manager. --stable does not support package-manager installations.
valar claude off also removes Valar’s hold. Both OFF and --latest preserve a DISABLE_AUTOUPDATER setting you had before enabling Valar, so automatic updates can remain disabled. Neither flag changes your autoUpdatesChannel setting.
Use one version option at a time. Neither works with --single-session, because both affect the installed Claude Code. valar claude status reports a Valar-managed hold.
valar configure --stable and valar configure --latest do the same: they save your configuration, then run valar claude on --stable or valar claude on --latest, which also turns routing on. valar upgrade updates Valar itself.
Switch lanes and running sessions
Switch directly between lanes without turning routing off first:- No: the requested routing change and session restart are cancelled.
- Yes: Valar updates routing, attempts to recover background agents, and closes affected interactive sessions. Reopen saved conversations with
claude --resumeor reopenclaude agents. --force: approve the same interruption without a prompt. It does not make an unnecessary restart happen during an ordinary proxy toggle.
Quota-first: use your own subscription first
Quota-first requires the proxy lane and a Claude login with included subscription allowance. It is unavailable on direct routing, including Linux.- Eligible Claude-model requests use included subscription allowance while available. Requests that cannot use it, including requests that would incur extra usage, use Valar.
- Enterprise accounts and accounts without included allowance use Valar.
- Valar Auto and explicit open-model selections always use Valar.
valar claude-desktop reset is equivalent. Reset applies to the shared proxy; it does not erase counters or reset the subscription allowance.
Check what is serving
Send a request, then inspectvalar claude status. The account may not be known until a request carries your login. If Claude Code and Desktop are signed into different accounts, their status can show different limits.
Checked shows when quota information was confirmed. Served counts subscription and Valar requests, split into main and background calls. The same account used by both apps shares counters; different accounts do not. These counters are temporary diagnostics and can reset, including when the proxy restarts. They are not billing totals.
On the proxy lane, valar claude status --verify checks successful Valar forwarding. A request served by your subscription alone does not satisfy that check; select Valar Auto or temporarily disable quota-first for the test.
Route a single session
Turn off routing
--force when interruption is acceptable. If recovery is incomplete, existing direct sessions may still send requests to Valar until restarted.
When Valar can safely merge readable settings, OFF preserves unrelated changes such as plugins, theme, permissions, and hooks.
What gets written
Both lanes use Claude Code’s settings file, normally~/.claude/settings.json. Valar does not install a launcher wrapper. The optional version hold uses Claude Code’s own installer and updater.
Valar saves the original settings before its first change and keeps credentials in user-only files. If you log into Claude after enabling direct routing without a login, rerun
valar claude on so the configuration can reflect the new login.
Upgrading an older installation
Runvalar upgrade from your own terminal session. The upgrade removes the retired socket routing and preserves your routing choice where it can safely determine it.
If no usable on-device proxy is installed, Claude Code moves to the direct lane. Your quota-first preference stays saved, but requests use Valar until you set up the proxy and enable its lane. On macOS, that setup may require administrator access.
Read any session-recovery warnings. See Upgrade and recovery before retrying a failed migration.
Next steps
On-device proxy
Shared proxy setup and corporate networks.
Claude Desktop
Configure the app separately from the CLI.