Skip to content

Feature Request: Per-tier custom Model Provider Service IDs for Claude Code #544

Description

@kwang-databricks

Summary
ucode currently supports routing Claude Code through a single Model Provider Service (MPS) via --provider, but there is no way to assign different MPS names to each Claude family tier (Opus/Sonnet/Haiku). The ANTHROPIC_DEFAULT_{OPUS,SONNET,HAIKU}_MODEL env vars are always populated with either system.ai.* IDs (Databricks-native) or target IDs within a single MPS, but never with separate UC Model Provider Service fully-qualified names per tier.

This blocks users who have built per-tier redundancy (e.g. Bedrock primary + Databricks-native fallback) as separate Model Provider Services and need Claude Code's tier-based routing to flow through them.

What works today: ucode claude --model mmic.inference.ai-gw-bedrock-system-sonnet5 resolves and serves correctly for a single session.
What doesn't work:

--model pins a single ID via ANTHROPIC_MODEL. The per-tier vars (ANTHROPIC_DEFAULT_OPUS_MODEL, etc.) still point to system.ai.*, so subagent/background work on the Haiku tier bypasses the customer's redundancy config entirely.
New sessions regenerate the overlay from scratch (render_overlay), losing any manual overrides.
There is no way to pin three separate MPS FQNs (one per family) through --provider, --model, ucode setup, or ucode publish.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions