How to use your Claude Max plan and another coding plan in one VS Code window
Keep Claude on your Max subscription and add a GLM, DeepSeek or MiniMax coding plan next to it — one chat panel in VS Code, one click to switch, no settings files to edit.
Many people pay for two things: a Claude Max subscription, and a cheaper coding plan from another
provider for routine work. Claude Code can talk to both, but only to one at a time — it reads a single
ANTHROPIC_BASE_URL and key from your environment or ~/.claude/settings.json. Switching means editing
that file and restarting, and while it points at the other provider, your Max login sits unused.
CC Cadence keeps each plan as a profile and switches between them from a pill under the chat box. Your Max login stays untouched, and nothing is written to your Claude settings.
What you need
- VS Code 1.100 or newer.
- The
claudeCLI, logged in once with your Max account: runclaudein a terminal and type/login. - An API key for a coding plan that offers an Anthropic-compatible endpoint (see the table below).
1. Install CC Cadence
Install it from the VS Code Marketplace, or from a terminal:
code --install-extension keepware.cc-cadence
Click the CC Cadence icon in the activity bar to open the chat panel.
2. Check that Claude runs on your Max plan
Send any message with the Claude (Max) profile selected. The status line under the chat shows how each turn was authenticated — it should say Max subscription. If it shows a warning instead, something in your environment is overriding the login; see Claude Code is using an API key instead of your Max plan.
3. Add your other plan as a profile
Click the model pill under the chat box and choose Add model…. Four short prompts follow:
- Display name — what the pill shows, e.g.
GLMorDeepSeek. - Endpoint — the provider’s Anthropic-compatible base URL (below). Claude appends
/v1/messagesitself. - API key — stored in your system keychain, never in a settings file, and never synced.
- Model name — leave it empty to use the provider’s default mapping. Providers map Claude’s model names to their own, and that mapping follows their updates.
| Provider | Anthropic-compatible base URL | Notes |
|---|---|---|
| Z.ai GLM Coding Plan | https://api.z.ai/api/anthropic | Use the key from your Coding Plan — plan keys and pay-as-you-go keys are billed differently. (docs) |
| DeepSeek | https://api.deepseek.com/anthropic | Claude model names are mapped to DeepSeek models on their side. (docs) |
| MiniMax | https://api.minimax.io/anthropic | In mainland China use https://api.minimaxi.com/anthropic. (docs) |
Endpoints and model names change — if a provider’s docs say something different, follow them.
4. Switch with one click
The model pill now lists both: Claude (Max) with Default, Opus, Sonnet, Haiku and Fable, and your new profile. Pick one before you send; the choice applies to every CC Cadence panel and tab.
- Same provider: the conversation continues where it was.
- Different provider: the next message starts a new session. Conversation history can’t move between providers — their APIs reject each other’s reasoning blocks — and CC Cadence tells you when that happens.
Each session stays in your history either way, so you can go back to the Claude conversation later.
Troubleshooting
- The Claude profile answers from the other provider. Most provider setup guides tell you to put an
envblock in~/.claude/settings.json. That block outranks everything and redirects every session, your Max login included. Delete it — CC Cadence doesn’t need it — and run CC Cadence: Doctor from the command palette to confirm nothing else is overriding. - “Invalid API key” or 401. Open the model pill → Manage models… → your profile → set the API key again. Check that it is the key for the plan you are paying for.
- An error right after switching providers mid-conversation. Start a new chat (CC Cadence: New Chat) and send the message again.
Why not just edit settings.json?
You can — but it’s one global switch. While it points at another provider, the Max subscription you pay for does nothing, and forgetting to switch back is easy. Profiles keep both ready, each with its own key in the keychain, and the status line shows which one answered.