AnyPick answers one everyday question:
Which login should Claude Code or Codex use right now?
You already pay for providers. You already use coding tools. AnyPick snapshots those logins, starts a local translator when the tools speak different protocols, and writes the client config — so you pick once in Apps instead of editing files by hand.
Install
npm install -g anypickThe binary installs as anypick. AnyPick needs
Node.js 22.5 or newer, because it stores its data in SQLite through
node:sqlite.
Later, anypick update upgrades an npm-installed copy in place.
Open Apps
anypickThe first interactive run asks whether future bare anypick should open the
Terminal UI or the Desktop Tray (macOS), then remembers the choice.
Either way you can always force the terminal with anypick tui.
You land on Apps:
anypick / apps
Routes for Claude Code and Codex
› Claude not connected ○ not set
Codex not connected ○ not set
────────────────────────────────────────────────────────────────────────
Connect Claude
enter to build a route
enter connect app a accounts g gateways p proxies d diagnoseOnly Claude Code and Codex appear here — they can be pointed at almost any saved source. Other tools switch their own logins under Accounts.
Three habits that make the UI safe for non-experts:
- The line under the rule is what enter will do. Read it first.
- The footer is the whole keymap. No hidden menus.
- Nothing is saved until a preview says so. You can always esc back.
Full walkthrough of source → models → preview: Terminal UI · Apps.
Save a login once
AnyPick never signs you in. Use the provider’s own tool first, then snapshot.
In the UI: a Accounts → a add. Or:
Log in with the provider's CLI
codex login
# or: gemini, grok's CLI, … — whatever you already useSave that live login under a name
anypick add account codex --current --name personalSee it listed
anypick list accountsThe pair provider/name (for example codex/personal or grok/work) is the
source you will attach to an app.
Connect an app (Apps UI)
Back on Apps (press esc until you see anypick / apps):
- Highlight Claude or Codex.
- Press enter (connect app).
- Pick a source:
- Native accounts — same brand as the app (simple switch).
- Gateways & proxies — Grok, OpenRouter, Gemini proxy, pools, …
- Saved setups — a preset you saved earlier.
- If asked, choose models (Claude can set default / sonnet / opus / haiku).
- Read the preview — what will be written and which proxy starts.
- Press enter to activate.
When you return to Apps the row should show ● ready with
source · model.
That is the whole product for day-to-day use. Open the coding tool as usual.
Same steps as commands (optional)
Scripts and CI use the same operations without the UI:
anypick use codex --with codex/personal
anypick run codexCross-provider example — Claude on a Grok account (proxy starts automatically):
anypick add account grok --current --name work
anypick use claude --with grok/work
anypick run claudeAPI key instead of a login — register a gateway, then pick it in Apps or
pass it to --with:
anypick add gateway openrouter-work \
--provider openrouter \
--endpoint https://openrouter.ai/api/v1 \
--api-key "$OPENROUTER_API_KEY" \
--model anthropic/claude-sonnet-4
anypick use claude --with openrouter-workAfter setup: Tray or stay in the terminal
On macOS, the Desktop Tray is the quick daily surface — switch routes from the menu bar, see quota, keep proxies alive. From Apps:
| Key | Effect |
|---|---|
| t | Tray runtime — start/stop, flip bare-anypick default |
| Shift+D | Start or reuse Tray, close the terminal UI |
| q | Close the terminal UI only (background unchanged) |
Where things live
| Data | ~/.anypick/anypick.db |
| Override home | ANYPICK_HOME=/path |
| Shell completion | source <(anypick completion zsh) — also bash, fish |
Next
Apps & Terminal UI
Full route builder: source groups, models, preview, every key.
Desktop Tray
Menu-bar routes, proxies, quota, and supervisor lifecycle.
Concepts
Client, source, binding, preset — four words behind the UI.
CLI reference
Every command, flag, exit code, and environment variable.
Troubleshooting
What anypick doctor checks, and what it refuses to touch.