claude-code - 💡(How to fix) Fix [BUG] Cowork 3P Gateway — Model picker ignores version and display name [2 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#52526Fetched 2026-04-24 06:04:50
View on GitHub
Comments
2
Participants
2
Timeline
6
Reactions
0
Author
Timeline (top)
labeled ×3commented ×2cross-referenced ×1

Error Message

Error Messages/Logs

Root Cause

Product: Claude Desktop — Cowork on 3P (Gateway mode) Platform: macOS Gateway: GitHub Copilot (https://api.githubcopilot.com/) Issue: When using Gateway inference provider, the model picker displays truncated model names — e.g. "Opus 4" instead of "Opus 4.7" or "Claude Opus 4.7". This makes it impossible to distinguish between models of the same family (claude-opus-4.7 vs claude-opus-4.6 vs claude-opus-4.5 all show as "Opus 4"). Additional context:

  • GitHub Copilot's GET /models endpoint returns a "name" field with the full display name (e.g. "Claude Opus 4.7") but Cowork ignores it.
  • The /v1/models auto-discovery also fails because GitHub Copilot serves models at /models (no /v1 prefix). Cowork should try both paths. Expected behavior:
  1. Display the full version number (4.7, 4.6, 4.5) in the picker
  2. Ideally use the "name" field from the gateway's model list
  3. Support /models in addition to /v1/models for auto-discovery Workaround: Manually set inferenceModels with one model per family.

Fix Action

Fix / Workaround

Product: Claude Desktop — Cowork on 3P (Gateway mode) Platform: macOS Gateway: GitHub Copilot (https://api.githubcopilot.com/) Issue: When using Gateway inference provider, the model picker displays truncated model names — e.g. "Opus 4" instead of "Opus 4.7" or "Claude Opus 4.7". This makes it impossible to distinguish between models of the same family (claude-opus-4.7 vs claude-opus-4.6 vs claude-opus-4.5 all show as "Opus 4"). Additional context:

  • GitHub Copilot's GET /models endpoint returns a "name" field with the full display name (e.g. "Claude Opus 4.7") but Cowork ignores it.
  • The /v1/models auto-discovery also fails because GitHub Copilot serves models at /models (no /v1 prefix). Cowork should try both paths. Expected behavior:
  1. Display the full version number (4.7, 4.6, 4.5) in the picker
  2. Ideally use the "name" field from the gateway's model list
  3. Support /models in addition to /v1/models for auto-discovery Workaround: Manually set inferenceModels with one model per family.
RAW_BUFFERClick to expand / collapse

Preflight Checklist

  • I have searched existing issues and this hasn't been reported yet
  • This is a single bug report (please file separate reports for different bugs)
  • I am using the latest version of Claude Code

What's Wrong?

Product: Claude Desktop — Cowork on 3P (Gateway mode) Platform: macOS Gateway: GitHub Copilot (https://api.githubcopilot.com/) Issue: When using Gateway inference provider, the model picker displays truncated model names — e.g. "Opus 4" instead of "Opus 4.7" or "Claude Opus 4.7". This makes it impossible to distinguish between models of the same family (claude-opus-4.7 vs claude-opus-4.6 vs claude-opus-4.5 all show as "Opus 4"). Additional context:

  • GitHub Copilot's GET /models endpoint returns a "name" field with the full display name (e.g. "Claude Opus 4.7") but Cowork ignores it.
  • The /v1/models auto-discovery also fails because GitHub Copilot serves models at /models (no /v1 prefix). Cowork should try both paths. Expected behavior:
  1. Display the full version number (4.7, 4.6, 4.5) in the picker
  2. Ideally use the "name" field from the gateway's model list
  3. Support /models in addition to /v1/models for auto-discovery Workaround: Manually set inferenceModels with one model per family.

What Should Happen?

Expected behavior:

  1. Display the full version number (4.7, 4.6, 4.5) in the picker
  2. Ideally use the "name" field from the gateway's model list
  3. Support /models in addition to /v1/models for auto-discovery

Error Messages/Logs

Steps to Reproduce

  1. Install Claude Desktop on macOS
  2. Enable Developer Mode: Help → Troubleshooting → Enable Developer Mode
  3. Open Developer → Configure third-party inference
  4. Configure Gateway provider:
    • Inference provider: gateway
    • Gateway base URL: https://api.githubcopilot.com/
    • Gateway API key: <valid GitHub Copilot OAuth token>
    • Gateway auth scheme: bearer
  5. Set model list (inferenceModels) with multiple versions of the same family: [claude-opus-4.7, claude-opus-4.6, claude-opus-4.5, claude-sonnet-4.6, claude-sonnet-4.5, claude-sonnet-4, claude-haiku-4.5] 6. Click Apply locally, quit Claude Desktop (Cmd+Q), relaunch
  6. Select Cowork on 3P at the sign-in screen
  7. Open the model picker in the Cowork tab Expected Result: Each model displays its full version — "Opus 4.7", "Opus 4.6", "Opus 4.5", "Sonnet 4.6", "Sonnet 4.5", etc. — matching what VS Code / GitHub Copilot shows ("Claude Opus 4.7"). Actual Result: All Opus models display as "Opus 4". All Sonnet models display as "Sonnet 4". Impossible to distinguish between versions in the picker. Additional Context:
  • The gateway's GET /models endpoint returns a "name" field with the full display name (e.g. "Claude Opus 4.7") — Cowork ignores it.
  • Auto-discovery via GET /v1/models fails (404) because GitHub Copilot serves models at /models without the /v1 prefix. Cowork should try both paths.
  • The modelOverrides and ANTHROPIC_DEFAULT_*_MODEL_NAME env vars work for the Code tab but have no effect on the Cowork tab picker.
  • Claude Desktop version: latest as of 2026-04-23
  • macOS

Claude Model

Not sure / Multiple models

Is this a regression?

I don't know

Last Working Version

No response

Claude Code Version

Claude 1.3883.0 (93ff6c) 2026-04-21T17:24:01.000Z

Platform

Other

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

No response

extent analysis

TL;DR

Update the model picker to use the "name" field from the gateway's model list and support both /models and /v1/models paths for auto-discovery.

Guidance

  • Verify that the GitHub Copilot's GET /models endpoint returns a "name" field with the full display name, and update the model picker to use this field.
  • Modify the auto-discovery logic to try both /models and /v1/models paths, as GitHub Copilot serves models at /models without the /v1 prefix.
  • Consider implementing a workaround by manually setting inferenceModels with one model per family, as described in the issue.
  • Review the code to ensure that the modelOverrides and ANTHROPIC_DEFAULT_*_MODEL_NAME env vars are properly applied to the Cowork tab picker.

Example

No code example is provided, as the issue does not include specific code snippets.

Notes

The issue seems to be related to the integration with GitHub Copilot and the model picker in the Cowork tab. The provided information suggests that the problem is due to the ignored "name" field and the incorrect auto-discovery path.

Recommendation

Apply a workaround by manually setting inferenceModels with one model per family, as this is a temporary solution that can help mitigate the issue until a proper fix is implemented.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING