You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Issue Report: swe-1.6 model not working in WindsurfAPI
Title
swe-1.6 model not accessible in WindsurfAPI despite working in Windsurf IDE and Devin CLI
Problem Description
The swe-1.6 and swe-1.6-fast models cannot be used through WindsurfAPI, even though they work perfectly in:
Windsurf IDE
Devin CLI (not Claude CLI)
These models are listed as free/default models and should be accessible to Pro accounts.
Environment
WindsurfAPI version: v2.0.97
Account type: Pro (Trial plan with 83% quota remaining, $200 extra usage)
OS: macOS (Darwin 25.5.0)
Windsurf session: Using devin-session-token from active Devin CLI session
Steps to Reproduce
1. Setup WindsurfAPI
git clone https://github.com/dwgx/WindsurfAPI.git
cd WindsurfAPI
bash setup.sh
node src/index.js
2. Add Account (Pro account with swe-1.6 access)
# Using devin-session-token from active Devin CLI session
curl -X POST http://localhost:3003/auth/login \
-H "Content-Type: application/json" \
-d '{"token": "devin-session-token$..."}'
Enum values 420 and 421 are correctly assigned for swe-1.6 models.
3. Root Cause Analysis
From src/models.js (line 222-227):
// ── Adaptive (Windsurf 2026-04-06 changelog) ────────────// Adaptive Model Router + Arena models live in the cloud catalog but their// UIDs aren't recognized by SendUserCascadeMessage's direct-call path —// upstream returns "unknown model UID adaptive: model not found". They only// work through the Windsurf IDE's special routing layer that Cascade-direct// doesn't expose. Mark deprecated so they stop showing in /v1/models. #109.
Key Finding: The comment indicates that adaptive models (like arena-fast, arena-smart) only work through "Windsurf IDE's special routing layer" that the Cascade-direct path (used by WindsurfAPI) doesn't expose.
Hypothesis: swe-1.6 may be an adaptive model that requires the same special routing layer that Windsurf IDE and Devin CLI have access to, but WindsurfAPI doesn't.
4. Comparison with Working Models
✅ swe-1.5-fast - Works perfectly (enumValue: 359, modelUid: 'MODEL_SWE_1_5')
✅ swe-1.5 - Works perfectly (enumValue: 377, modelUid: 'MODEL_SWE_1_5_SLOW')
Issue Report: swe-1.6 model not working in WindsurfAPI
Title
swe-1.6 model not accessible in WindsurfAPI despite working in Windsurf IDE and Devin CLI
Problem Description
The
swe-1.6andswe-1.6-fastmodels cannot be used through WindsurfAPI, even though they work perfectly in:These models are listed as free/default models and should be accessible to Pro accounts.
Environment
Steps to Reproduce
1. Setup WindsurfAPI
git clone https://github.com/dwgx/WindsurfAPI.git cd WindsurfAPI bash setup.sh node src/index.js2. Add Account (Pro account with swe-1.6 access)
3. Attempt to call swe-1.6
Expected Behavior
Actual Behavior
Error 1: Model entitlement issue
{ "error": { "message": "模型 swe-1.6 在当前账号池中不可用(未订阅或已被封禁)", "type": "model_not_entitled" } }Error 2: After bypassing entitlement check
{ "error": { "message": "unknown model UID MODEL_SWE_1_6: model not found", "type": "upstream_error" } }Error 3: After trying legacy flow (modelUid=null)
{ "error": { "message": "neither PlanModel nor RequestedModel specified. You must specify a valid model.", "type": "upstream_error" } }Investigation Results
1. Account Information
From
accounts.json:"ok": false, "reason": "not_entitled"2. Model Configuration
From
src/models.js(line 214-220):Enum values 420 and 421 are correctly assigned for swe-1.6 models.
3. Root Cause Analysis
From
src/models.js(line 222-227):Key Finding: The comment indicates that adaptive models (like arena-fast, arena-smart) only work through "Windsurf IDE's special routing layer" that the Cascade-direct path (used by WindsurfAPI) doesn't expose.
Hypothesis: swe-1.6 may be an adaptive model that requires the same special routing layer that Windsurf IDE and Devin CLI have access to, but WindsurfAPI doesn't.
4. Comparison with Working Models
swe-1.5-fast- Works perfectly (enumValue: 359, modelUid: 'MODEL_SWE_1_5')swe-1.5- Works perfectly (enumValue: 377, modelUid: 'MODEL_SWE_1_5_SLOW')claude-opus-4.6- Works perfectlyswe-1.6- Fails with "unknown model UID"swe-1.6-fast- Fails with "unknown model UID"5. Architecture Analysis
From
src/windsurf.js(line 6-8):From
src/models.js(line 4-6):Both routing methods fail for swe-1.6, suggesting the issue is with the underlying protocol/backend support rather than routing logic.
Attempted Workarounds
1. Manual entitlement override
Modified
accounts.jsonto set swe-1.6 entitlement to true - Result: Auto-reverted by WindsurfAPI's probe mechanism2. Model UID mapping
Attempted to map swe-1.6 → MODEL_SWE_1_5 (swe-1.5-fast UID) - Result: Works but calls wrong model (swe-1.5 instead of swe-1.6)
3. Legacy flow (modelUid=null)
Set modelUid to null to force legacy RawGetChatMessage flow - Result: "neither PlanModel nor RequestedModel specified" error
4. Entitlement check bypass
Modified
src/handlers/chat.jsto bypass entitlement check for swe-1.6 - Result: Still fails with "unknown model UID" errorImpact
Suggested Solutions
1. Implement Special Routing Layer (Recommended)
2. Direct Cloud API Integration
src/windsurf-api.js)3. Backend Registration
4. Documentation and Deprecation
Additional Information
Cloud API Endpoints
From
src/windsurf-api.js:server.self-serve.windsurf.com/exa.api_server_pb.ApiServerService/GetCascadeModelConfigsAccount Verification
Account used for testing has:
Related Issues
Priority
High - This affects a core model that is: