Switching to Haiku with effort parameter set causes 400 error

Resolved 💬 3 comments Opened Mar 4, 2026 by ptraub Closed Apr 1, 2026

Description

When switching models using /model with an effort parameter already set (e.g., medium from a previous Sonnet session), switching to Haiku causes a 400 API error:

API Error: 400 This model does not support the effort parameter.

Steps to Reproduce

  1. Set model to Sonnet with medium effort: /model → select sonnet with medium effort
  2. Send a message (works fine)
  3. Switch to Haiku: /model → select haiku
  4. Send a message → 400 error

Expected Behavior

Claude Code should handle this gracefully by either:

  • Auto-clearing the effort parameter when switching to a model that doesn't support it
  • Catching the error and retrying without the effort parameter
  • Warning the user that the effort setting is incompatible with the selected model

Actual Behavior

The effort parameter from the previous model carries over and is sent to the Haiku API, which doesn't support it, resulting in a 400 error.

Environment

  • Using AWS Bedrock inference profiles
  • Model switch path: Sonnet → Haiku

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗