Skip to content

[Feature/UX]: add additive Claude Desktop catalog mode with honest native/OpenCodex switching #1213

Description

@str0203

Client or integration

Claude Desktop 3P profile

Area

Claude Desktop integration / catalog / configuration UX

Current status

The original destructive-restore defect is partially resolved.

PR #1106 added a real Claude Desktop integration toggle and a safe OFF/native pivot:

  • claude-desktop is tracked as a native client integration;
  • OFF pivots to a credential-free standard profile before removing the OpenCodex-owned gateway profile;
  • owned backup and metadata state are cleaned up under the integration contract;
  • desired OFF state is persisted so later provider changes do not silently re-enable the integration;
  • ownership/drift inspection refuses unsafe mutations instead of blindly rewriting foreign state.

Therefore this issue no longer needs to claim that OpenCodex has no safe restore path.

The issue remains open because the reopened request is broader: users want an honest way to keep or switch between Claude-native access and OpenCodex-routed models, ideally in one picker where the installed Claude Desktop contract permits it.

Remaining goal

Provide the best supported Claude Desktop experience for users who want both:

native Claude-family access
+
selected OpenCodex-routed models

without silently changing credential or billing provenance.

There are two materially different meanings of "additive" and they must not be conflated.

1. True first-party coexistence

Ideal behavior:

Claude Desktop keeps its first-party subscription provider and credential
+
OpenCodex adds extra routed models

This requires a supported Claude Desktop mechanism for either:

  • multiple inference providers in one active profile; or
  • first-party credential passthrough while a gateway base URL is active.

Current OpenCodex configuration writing alone does not prove that capability exists.

Adding official-looking claude-* rows to inferenceModels is not sufficient if the gateway cannot receive or safely resolve the user's original first-party credential.

If current Claude Desktop does not expose a supported coexistence contract, OpenCodex must say so rather than simulate native access.

2. Unified gateway catalog

A practical approximation may be possible through one OpenCodex gateway catalog containing:

  • selected routed OpenCodex models; and
  • Claude models served through an explicitly configured OpenCodex Anthropic OAuth/API credential.

That can provide one combined picker, but those Claude entries are gateway-routed. They are not automatically the untouched first-party Claude Desktop subscription provider.

The UI must expose that difference clearly and must never silently turn subscription-backed Claude access into separately billed Anthropic API traffic.

Desired user modes

The Desktop integration should converge on explicit modes such as:

Native Claude
  Do not apply an OpenCodex inference profile.

Additive / unified gateway
  Show Claude-family routes and selected OpenCodex routes together.
  Available only when the required credential/routing contract is proven.

OpenCodex only
  Use the OpenCodex gateway catalog without implying native-provider coexistence.

If true coexistence is unavailable, the supported fallback should be fast, reversible profile switching:

Use native Claude configuration
Use OpenCodex configuration

The user should not need to edit Claude-3p/configLibrary/_meta.json manually.

Required investigation

Before implementing true additive first-party mode:

  1. Probe the current supported Claude Desktop configuration contract.
  2. Determine whether first-party Claude OAuth can be preserved or forwarded when a gateway profile/base URL is active.
  3. Determine whether one active profile can expose more than one credential/provider provenance safely.
  4. If the answer is no, treat true first-party coexistence as an upstream limitation.
  5. Only then implement the strongest supported local mode.

Provenance requirements

Any combined catalog must make routing provenance explicit enough that users can distinguish entries such as:

Claude Opus 5 · native Claude
Claude Opus 5 · Anthropic via OpenCodex
GPT 5.6 Sol · ChatGPT pool via OpenCodex

Exact labels can follow the final UI design, but the product must not hide meaningful credential or billing differences behind identical model names.

Safety requirements

  • Never silently replace a first-party Claude credential with a separately billed API credential.
  • Never claim native coexistence when the client only supports one active gateway provider.
  • Preserve exact routed model IDs where required by the gateway.
  • Switching modes must be reversible and survive restart.
  • Desired OFF/native state must continue to prevent later auto-apply from restoring an unwanted gateway profile.
  • Foreign or drifted Desktop configuration must continue to fail safely.

Acceptance criteria

Already delivered

  • Claude Desktop has an OpenCodex integration toggle.
  • OFF has a safe standard/native pivot instead of requiring manual _meta.json surgery.
  • Desired OFF state survives later OpenCodex activity.
  • Owned/drifted/foreign Desktop state is classified before mutation.

Remaining work

  • The current Claude Desktop coexistence capability is verified rather than guessed.
  • The UI offers explicit Native Claude / OpenCodex mode selection.
  • If true first-party coexistence is supported, an additive mode preserves the first-party credential correctly.
  • If true coexistence is not supported, the UI explains that limitation before applying a gateway profile.
  • A unified gateway mode, if provided, requires explicit OpenCodex-managed Anthropic credentials and exposes their provenance.
  • No silent credential or billing substitution occurs.
  • Native/OpenCodex switching is one action, reversible, and restart-safe.
  • Catalog entries make meaningful provider/credential provenance understandable.
  • Regression coverage protects restore, switching, drift refusal, and provenance behavior.

Close condition

Close when Claude Desktop users have either verified additive coexistence or an explicit, honest, reversible mode-switching experience that does not misrepresent native access.

Metadata

Metadata

Assignees

No one assigned

    Labels

    catalogModel catalog, slugs, visibility, routed entriesenhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions