Skip to content

Bug: Claude Desktop gateway routing fails — alias not reverse-mapped to DeepSeek model (400) #859

Description

@vehiclerentropy

Client or integration

Other

Area

Proxy and routing

Summary

Claude Desktop gateway routing fails: alias not reverse-mapped to DeepSeek model (HTTP 400). The desktop client sends the injected alias model id (claude-opus-4-8-20261210) and the proxy forwards that alias verbatim to the routed provider (deepseek) instead of reverse-mapping it to the real model (deepseek/deepseek-v4-flash).

Reproduction

  1. ocx login deepseek (add deepseek provider)
  2. ocx claude desktop apply — injects configLibrary json with inferenceModels: name=claude-opus-4-8-20261210, labelOverride=Deepseek V4 Flash (deepseek)
  3. Open Claude Desktop (Cowork) → model picker shows "Deepseek V4 Flash (deepseek)"
  4. Send a message → HTTP 400, model never reaches DeepSeek

Usage log confirms: provider=deepseek, model=claude-opus-4-8-20261210, requestedModel=claude-opus-4-8-20261210, status=400, upstreamError="The supported API model names are deepseek-v4-pro or deepseek-v4-flash, but you passed claude-opus-4-8-20261210".

Additional experiments:

  • Manually changing the configLibrary name to deepseek/deepseek-v4-flash → Claude Desktop validation rejects it ("is not an Anthropic model")
  • Changing to anthropic/deepseek-v4-flash → passes validation, but the proxy still forwards it verbatim and DeepSeek rejects it
  • Expected: proxy should reverse-map claude-opus-4-8-20261210deepseek/deepseek-v4-flash via claudeCode.desktopProfile.assignments before forwarding, like it does for Claude Code CLI aliases

Version

2.8.0

Operating system

macOS 26 (Apple Silicon)

Provider and model

deepseek (openai-chat adapter), Claude Desktop 1.24012.9

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions