claude-code - 💡(How to fix) Fix Agent Teams: model parameter does not support version pinning [1 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#52097Fetched 2026-04-23 07:36:41
View on GitHub
Comments
0
Participants
1
Timeline
3
Reactions
0
Participants
Timeline (top)
labeled ×3

Error Message

model: "opus" → resolves to latest (currently claude-opus-4-7) model: "claude-opus-4-6" → InputValidationError: Invalid option model: "claude-opus-4.6" → InputValidationError: Invalid option (omitted) → inherits user's /config default (workaround)

Fix Action

Workaround

Omitting the model parameter entirely causes the teammate to inherit the user's configured default model (set via /config). This works but only supports a single default — not per-teammate version control.

Code Example

model: "opus"         → resolves to latest (currently claude-opus-4-7)
model: "claude-opus-4-6"InputValidationError: Invalid option
model: "claude-opus-4.6"InputValidationError: Invalid option
(omitted)             → inherits user's /config default (workaround)
RAW_BUFFERClick to expand / collapse

Problem

The Agent tool's model parameter only accepts three values: "sonnet", "opus", "haiku". These resolve to the latest version of each model family, with no way to specify a particular version (e.g., claude-opus-4-6 vs claude-opus-4-7).

This means users cannot pin teammates to a specific model version through the Agent tool, even when they have a configured default via /config.

Current Behavior

model: "opus"         → resolves to latest (currently claude-opus-4-7)
model: "claude-opus-4-6"  → InputValidationError: Invalid option
model: "claude-opus-4.6"  → InputValidationError: Invalid option
(omitted)             → inherits user's /config default (workaround)

The enum validation rejects any value other than the three family shorthand strings.

Expected Behavior

The model parameter should accept full model IDs (e.g., claude-opus-4-6, claude-sonnet-4-6) in addition to the family shorthand, allowing users and orchestration skills to pin teammates to specific model versions.

Workaround

Omitting the model parameter entirely causes the teammate to inherit the user's configured default model (set via /config). This works but only supports a single default — not per-teammate version control.

Impact

Orchestration workflows that require different model versions for different teammates (e.g., a PM on Sonnet 4.6 and an Auditor on Opus 4.6) cannot express this through the Agent tool. The only control point is the global /config default, which applies uniformly to all teammates.

Environment

  • Claude Code version: 2.1.114
  • Platform: Linux
  • Agent Teams: CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1

extent analysis

TL;DR

Update the model parameter validation to accept full model IDs in addition to family shorthand strings.

Guidance

  • Review the enum validation for the model parameter to identify why it only accepts the three family shorthand strings ("sonnet", "opus", "haiku").
  • Consider modifying the validation to allow full model IDs (e.g., claude-opus-4-6, claude-sonnet-4-6) as valid input.
  • Test the updated validation with different model IDs to ensure it works as expected.
  • Evaluate the impact of this change on existing workflows and configurations, particularly those relying on the global /config default.

Example

No code snippet is provided as the issue does not include specific implementation details.

Notes

The proposed solution assumes that updating the validation is feasible and does not introduce unintended consequences. Additional testing and review may be necessary to ensure compatibility with existing features and configurations.

Recommendation

Apply a workaround by omitting the model parameter to inherit the user's configured default model, but consider updating the validation to support full model IDs for more fine-grained control. This is because the current workaround only supports a single default model, which may not meet the requirements of all use cases.

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