fix: disable reasoning budget UI controls for Claude Code provider (#5111) (#5113)

* fix: resolve intermittent reasoning content not displayed for Claude Code provider (#5111)

- Modified fallback logic in stream parsing to handle all message types, not just assistant messages
- Added proper parsing attempts for partial data before yielding
- Improved error logging to help debug streaming issues
- Added debug logging (controlled by DEBUG_CLAUDE_CODE env var) to trace message types

This ensures reasoning/thinking content from Claude 3.5 Sonnet 4.0 is properly displayed in all cases.

* fix: disable reasoning budget UI controls for Claude Code provider (#5111)

- Set supportsReasoningBudget to false for all Claude Code models
- Claude Code CLI doesn't support thinking/reasoning parameters
- UI controls were misleading users since they had no effect

* fix: update Claude Code models configuration

- Add missing requiredReasoningBudget: false to claude-3-5-sonnet-20241022 and claude-3-5-haiku-20241022
- Revert run.ts changes as they are not needed for fixing the UI issue
- The UI issue is resolved by properly disabling reasoning budget support in model configuration

* feat: add reasoning effort support to Claude Code models and integrate into model selection

---------

Co-authored-by: Daniel Riccio <ricciodaniel98@gmail.com>
This commit is contained in:
Hannes Rudolph 2025-06-25 18:07:42 -06:00 • committed by GitHub
parent aaed043cb0
commit 896e9867ce
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -9,25 +9,40 @@ export const claudeCodeModels = {
...anthropicModels["claude-sonnet-4-20250514"],
supportsImages: false,
supportsPromptCache: false,
supportsReasoningEffort: false,
supportsReasoningBudget: false,
requiredReasoningBudget: false,
},
"claude-opus-4-20250514": {
...anthropicModels["claude-opus-4-20250514"],
supportsImages: false,
supportsPromptCache: false,
supportsReasoningEffort: false,
supportsReasoningBudget: false,
requiredReasoningBudget: false,
},
"claude-3-7-sonnet-20250219": {
...anthropicModels["claude-3-7-sonnet-20250219"],
supportsImages: false,
supportsPromptCache: false,
supportsReasoningEffort: false,
supportsReasoningBudget: false,
requiredReasoningBudget: false,
},
"claude-3-5-sonnet-20241022": {
...anthropicModels["claude-3-5-sonnet-20241022"],
supportsImages: false,
supportsPromptCache: false,
supportsReasoningEffort: false,
supportsReasoningBudget: false,
requiredReasoningBudget: false,
},
"claude-3-5-haiku-20241022": {
...anthropicModels["claude-3-5-haiku-20241022"],
supportsImages: false,
supportsPromptCache: false,
supportsReasoningEffort: false,
supportsReasoningBudget: false,
requiredReasoningBudget: false,
},
} as const satisfies Record<string, ModelInfo>