[release] 5 min · Aug 24, 2026

VS Code 1.133 — Provider Switching Hides a Billing Trap

VS Code 1.133 lets you flip between Anthropic and Copilot mid-session. The model picker looks like convenience. The billing split is a $300/week ambush.

VS Code 1.133 ↗ Aug 12, 2026
#vscode#github-copilot#anthropic#billing#agent-governance

VS Code 1.133 shipped August 12 with a feature that looks like pure convenience: a model picker that lets you switch between Anthropic and Copilot providers between turns, mid-session, without reconfiguring anything. Select Claude under the Anthropic group, your API key gets billed. Switch to a Copilot-routed model next turn, your subscription absorbs the cost. No confirmation dialog. No indicator showing which billing rail you just hit. The two cost streams land on two separate dashboards, and VS Code shows you neither.

I’d call this quality-of-life dressed up as a governance problem — and the GitHub issues back that up. Before 1.133, a user who misconfigured Claude Agent in VS Code blew $300 extra in a single week because the billing model wasn’t transparent. Microsoft just made mixing billing rails easier, not clearer. The moment a team member switches from a Copilot-routed Claude turn to an Anthropic-API-key turn mid-session, they’ve created two separate cost lines that appear on two separate dashboards — there is nothing in the VS Code UI that reflects which rail a given turn hit.

TL;DR

  • What: VS Code 1.133 adds mid-session provider switching — one model picker, two billing rails, zero in-session cost indicators
  • Risk: ANTHROPIC_API_KEY in the environment silently wins over subscription OAuth, routing turns to per-token billing without warning
  • Precedent: A documented GitHub issue shows $300/week unintended spend from this exact billing confusion — before 1.133 made it easier to trigger
  • Action: Audit your team’s environment variables and write a provider-switching policy before rolling out 1.133 to shared workstations

VS Code 1.133 — What Happened

The release notes frame this as a workflow improvement: you can now change model providers for Claude sessions between turns without reconfiguring the agent host. The model picker groups models under “Anthropic” (billed to your API key at per-token rates) and “Copilot” (consumed from your Copilot subscription quota). The selected model determines billing for that turn only — switch mid-session, billing switches too.

That’s genuinely useful for developers who want to use Claude Sonnet for quick questions and Claude Opus for complex reasoning within the same session. The friction of reconfiguring agent hosts between providers was real, and removing it was the right call.

But the implementation has a gap that turns convenience into a cost management hazard for any team running both a Copilot subscription and an Anthropic API key — which is common in mixed-IDE workflows where some developers use Claude Code standalone and others use it through Copilot.

If your team has ANTHROPIC_API_KEY set anywhere in the environment — CI pipelines, dotfiles, shell profiles — Anthropic’s credential precedence means the API key wins silently over subscription OAuth. Every Claude turn routes to per-token billing regardless of what the developer intended. Check Anthropic’s authentication docs for the full precedence chain.

The release also introduces a separate governance change worth noting: the experimental chat.agentHost.allowSignedOutWhenUsable setting opens the Agents window without requiring a GitHub sign-in. This currently supports Claude only, with Copilot and Codex support planned for future releases. For air-gapped or GitHub-free environments, this decouples VS Code’s agent capabilities from GitHub authentication entirely — a meaningful shift in who controls access to AI tooling inside the editor.

Why This Matters

The core problem isn’t that two billing rails exist. It’s that VS Code 1.133 provides no session-level billing summary telling you which turns hit which rail. Anthropic Console API spend and GitHub Copilot usage live on separate dashboards with separate reporting cadences. If a developer switches providers three times during a debugging session, reconstructing which turns generated which charges requires cross-referencing timestamps across two systems. Nobody will do that.

This matters more than it sounds because of how credential precedence actually works in practice. Anthropic’s documentation is explicit: if you have an active Claude subscription but also have ANTHROPIC_API_KEY set in your environment, the API key takes precedence once approved. Many teams have that key set for Claude Code CLI usage, for CI pipeline integrations, or simply because a developer set it up six months ago and forgot. In those environments, every turn routed through the “Anthropic” group in VS Code’s model picker bills against the API key at per-token rates — even if the developer assumed their Copilot subscription covered it.

The GitHub issue #314952, filed May 7, 2026, documents exactly this failure mode. A user misunderstood the billing model and spent approximately $300 extra in requests in a single week. That issue predates 1.133. The new release makes the same ambiguity easier to reach by removing the friction of switching providers. Before, you had to reconfigure the agent host to change rails. Now you click a dropdown. The speed of switching increased; the visibility of its consequences did not.

Compare this to how Cursor handles multi-provider billing: Cursor surfaces a clear credit balance and model-specific cost indicators within the editor. You know what you’re spending as you spend it. VS Code 1.133 gives you a model picker that looks identical to a theme selector — no cost context, no running total, no rail indicator.

Before rolling 1.133 out to your team, run env | grep ANTHROPIC on every developer machine and CI environment. If the key exists, decide explicitly: should Claude turns route through the API key or the Copilot subscription? Don’t let credential precedence make that decision for you.

The unsigned-out Agents window compounds the governance question. With chat.agentHost.allowSignedOutWhenUsable enabled, a developer can use Claude agents in VS Code without any GitHub authentication. That’s useful for air-gapped setups, but it also means the usage doesn’t flow through GitHub’s admin controls, audit logs, or policy enforcement. Enterprise teams running Copilot Business or Enterprise lose their centralized visibility into agent usage the moment a developer enables this setting and authenticates directly with an Anthropic API key.

The Take

VS Code 1.133’s provider switching is the right feature with the wrong observability model. The ability to mix providers mid-session reflects how developers actually work — you don’t commit to one model for an entire debugging session. But shipping a multi-rail billing feature without a single in-session indicator of which rail you’re on is negligent product design for any team context.

The fix isn’t complicated. VS Code needs three things it currently lacks: a per-turn billing rail indicator in the chat UI, a session summary showing estimated cost by provider, and a workspace-level setting that lets admins lock the default provider. None of these are technically novel — Cursor already does the first two.

Until those exist, treat 1.133’s provider switching as a team-level policy decision, not an individual convenience feature. Audit environment variables for ANTHROPIC_API_KEY presence. Decide which billing rail your organization uses by default. Document it. And if your team has both a Copilot subscription and an Anthropic API key active, assume someone will accidentally cross the rails within the first week — because someone already did, before it was even easy.