
Windsurf
Codeium's AI-native IDE — point Cascade chat at TokenMix via custom provider
Introduction
Windsurf is Codeium's AI-native IDE — a VS Code fork built around the Cascade agent, acquired in 2025 and rebranded as part of the Devin Desktop lineup. Like Cursor, Windsurf bundles its own model backend, but the chat panel and a subset of agent features can be pointed at any OpenAI-compatible endpoint, including TokenMix. With one sk-tm- key you reach Claude Opus 4.8, GPT-5.5, Gemini 3.5 Pro, and DeepSeek V4 — the same price as direct, no Windsurf Pro upgrade required for the chat tier.
Be honest about scope first: Cascade's premium agent flows (Write mode, full project planning) still call Codeium-hosted models even when you configure a custom provider. The custom-provider override below routes Chat mode through TokenMix cleanly. If you need a fully BYOK agent inside Windsurf, install Roo Code or Cline as VS Code extensions — Windsurf is a VS Code fork, so they install and behave identically.
Prerequisites
- Windsurf / Devin Desktop installed
- A TokenMix API key starting with
sk-tm-→ Register at tokenmix.ai → Dashboard → API Keys
Setup Steps — Two paths
Path A: Native custom provider (chat panel)
1. Open Windsurf settings
Click the gear icon in the bottom-left, or press Cmd+, (macOS) / Ctrl+, (Windows). Select Settings → Windsurf Settings.
2. Find the model provider section
Scroll to Cascade → Models, then click Add custom provider (or Manage providers depending on your build).
3. Configure TokenMix as a provider
Fill the form:
| Field | Value |
|---|---|
| Provider name | TokenMix |
| Provider type | OpenAI |
| Base URL | https://api.tokenmix.ai/v1 |
| API Key | sk-tm-your-key-here |
| Model | claude-sonnet-4-6 (or any TokenMix model) |
Save the provider. It now appears in the Chat-mode model picker.
4. Select TokenMix in the chat picker
Open the Cascade panel (Cmd+L / Ctrl+L), click the model dropdown, and pick the TokenMix model you added. Subsequent chat messages go through your key.
Path B: Install Roo Code (full agent BYOK)
If you want every Windsurf-internal feature on TokenMix — including agentic file edits — install Roo Code from the Extensions panel and follow the Roo Code setup. Windsurf is a VS Code fork, so the extension installs cleanly and ignores Windsurf's own provider gating.
Recommended models
claude-sonnet-4-6— best default for chatclaude-opus-4-8— most powerful, for complex reasoninggpt-5-5— OpenAI flagshipdeepseek-v4-pro— 22x cheaper, excellent for codegemini-3-5-pro— long-context summarisation
Verify
In the Cascade chat panel, with TokenMix selected as the model, send:
What model are you and what's 7 * 9?
A correct reply confirms the chat panel is routing through TokenMix.
What works and what doesn't
| Windsurf feature | Native custom provider? | Roo Code workaround? |
|---|---|---|
| Cascade Chat | Yes | Yes |
| Cascade Write mode | Limited (Codeium models gated) | Yes (full BYOK) |
| Inline suggestions | No (Codeium's own) | N/A |
| Supercomplete autocomplete | No (Codeium's own) | N/A |
| MCP tool calling | Yes (any model) | Yes |
FAQ
Q: Why does Windsurf sometimes ignore my custom provider on Write mode? Codeium gates several Cascade flows to its own hosted models even when a custom provider is configured. Anthropic and OpenAI BYOK work for Chat mode; some Write-mode features fall back to Codeium models. For full BYOK control, use Roo Code or Cline inside Windsurf.
Q: Will my Codeium Pro subscription still apply? Codeium Pro covers Cascade premium features and Supercomplete autocomplete. Your TokenMix key only covers Chat mode (and Roo Code if installed). You can downgrade Codeium tier if you only need BYOK chat.
Q: I get "Unsupported model" — what's wrong?
The model ID must match a real TokenMix slug. Check tokenmix.ai/models and copy the exact slug. A common mistake is claude-opus-4.8 instead of claude-opus-4-8.
Q: Can I use Windsurf MCP servers with TokenMix? Yes. MCP server connections are transport-level and work regardless of which model serves the conversation. Configure MCP normally; TokenMix-routed calls invoke MCP tools as expected.