Skip to content

Apps & Terminal UI

How Apps routes Claude Code and Codex — pick a source, set models, preview, then activate.

Updated View as Markdown

Run anypick (or anypick tui). You land on Apps. That screen is the product: it answers one question for each coding tool —

What should Claude Code / Codex use right now?

Everything else (accounts, gateways, proxies) exists to feed that answer.

anypick

Apps at a glance

 anypick / apps

  Routes for Claude Code and Codex
 › Claude        grok/work · grok-code-fast-1       ● ready
   Codex         not connected                     ○ not set
 ──────────────────────────────────────────
 Claude uses grok/work
 model grok-code-fast-1 · enter to preview a different route
 enter change route a accounts g gateways p proxies d diagnose

Read it top to bottom:

  1. Each row is an app — Claude Code or Codex. Gemini and Kiro are not here; they only switch their own login under Accounts.
  2. The middle column is who powers it (account, gateway, …) and which model AnyPick set.
  3. The status on the right is plain English: ready, native, not set, or attention.
  4. The two lines under the dashed rule always say what enter will do before you press it.
  5. The footer is the full keymap for this screen. If a key is not listed, it does nothing here.

What each status means

You see Meaning What to do
ready AnyPick already routes this app enter if you want a different source or model
native The app’s own login works, but AnyPick is not managing the route yet Optional — only press enter if you want AnyPick to take over
not set No route yet enterconnect app
attention Something needs a fix (missing key, failed check, …) enter or d diagnose

Build a route (the main flow)

You never edit config files by hand. Press enter on an app and walk four short screens. Nothing is written until the last confirmation.

1. Home — choose the app

Move with (or j k). Highlight Claude or Codex. Press enter.

  • Footer says connect app when the row is empty or only native.
  • Footer says change route when it is already ready.

2. Source — who should power it?

 anypick / apps / Claude / source

  Native accounts
 › Anthropic · work@example.com        current live login
   Anthropic · personal

  Gateways & proxies
   openrouter-work                     gateway · default model set
   grok/work                           account proxy

  Saved setups
   @work-stack                         preset
 ──────────────────────────────────────────
 Route Claude through grok/work
 account proxy · model routing is configured next
 enter choose route a accounts g gateways esc back

Three groups, in plain language:

Group Pick this when…
Native accounts You want Claude or Codex on its own provider login. AnyPick switches the live credential; the app keeps its own model picker.
Gateways & proxies You want another provider, an API key endpoint, a multi-account pool, or the Proxy Hub. AnyPick will set models next.
Saved setups You already saved a full recipe with --save / a preset (@name).

Only safe pairings appear. You will not see “Claude → random incompatible thing” — empty list means save an account (a) or add a gateway (g) first.

Native row → outcome is Switch …; other rows → Route … through ….

3. Models — only when needed

Skipped for native same-provider switches.

Otherwise:

 anypick / apps / Claude / models

 › default     grok-code-fast-1
   sonnet      (same as default)
   opus        (same as default)
   haiku       (same as default)
 ──────────────────────────────────────────

 enter edit model · a preview route
  • Codex — one default model.
  • Claude — default plus optional sonnet / opus / haiku roles (for tools that call those names).

Edit a line with enter, type or pick a suggestion, then a (or the confirm key shown) to open the preview.

4. Preview — read, then activate

 anypick / apps / Claude / preview

 Activate this route for Claude?

 · bind Claude → grok/work
 · set model grok-code-fast-1
 · start local proxy if needed
 · write client config

 enter activate route   esc back

This is the same plan the CLI would run. If a step fails later, AnyPick rolls back what it already changed. Press enter to apply, esc to go back and change source or models.

After a successful activate you return to Apps with ● ready and the new source · model on the row.

A concrete example

Goal: Claude Code should use your Grok work login.

  1. Log in with Grok’s tool once (AnyPick never signs in for you).
  2. In AnyPick: a → Accounts → save that login as work (or anypick add account grok --current --name work).
  3. Back on Apps, highlight Claude, enter.
  4. Under Gateways & proxies, pick grok/work.
  5. Set the default model if asked.
  6. Read the preview → enter.

Claude is now routed. Open Claude Code as you usually do; AnyPick already wrote what it needs. Same path works for Codex, gateways like OpenRouter, pools, or a preset.

Keys on Apps

Key Action
enter Connect or change route (source → models → preview)
a / tab Accounts
g Gateways
p Proxies
d Diagnose
t Tray runtime (start/stop, flip bare-command default)
Shift+D Start or reuse the Tray, then close this UI
h Help for this screen
q Close the terminal UI (background Tray/proxies stay up)

Other boards (supporting cast)

tab cycles Apps → Accounts → Gateways → Proxy → Apps. esc on a secondary board returns to Apps.

Board You use it to…
Accounts Save, switch, refresh, import/export, delete logins
Gateways Store endpoint + API key profiles; bind them to apps like a proxy
Proxy Start/stop local translators, pools, Proxy Hub

Those boards never replace Apps for “what does Claude use?” — they stock the shelves that Apps picks from.

Accounts keys

Key Action
enter Switch, view active, or save current login
v Details and usage
a Add a login
i / e Import / export
r Refresh
s Save a changed live login over its snapshot
d Delete
f Filter by provider

Gateways keys

Key Action
enter Manage which apps use this gateway
m Edit default models
e Edit endpoint
a / d Add / delete
f Filter by provider

Proxy keys

Key Action
enter Start, manage apps, or save an unsaved login
m Manage apps, then edit models
s / r Stop / restart
d Disable auto-start
l Logs
p Multi-account pool on/off
space Pause or enable a pool member
f Failover guard on a pool

Status glyphs

Glyph On Apps Elsewhere
ready live / using
not set / stopped saved / stopped
attention changed (live login ≠ snapshot)
× failed failed / unavailable

With NO_COLOR=1 the shapes still carry meaning; plain terminals fall back to *, o, !, x.

Closing the UI

  • q — leave the terminal UI; Tray and proxies keep running.
  • Shift+D — start or reuse the Desktop Tray, then close the TUI.
  • truntime / tray: start/stop Tray, flip the bare-anypick default with f.

Same route building exists as commands (anypick use claude --with grok/work) for scripts; the UI is not a weaker mode. See Getting started for install and first save, and Proxies for pools and hub.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close