diff --git a/internal/translator/antigravity/claude/antigravity_claude_request.go b/internal/translator/antigravity/claude/antigravity_claude_request.go index a3f9fa48..c4e07b6a 100644 --- a/internal/translator/antigravity/claude/antigravity_claude_request.go +++ b/internal/translator/antigravity/claude/antigravity_claude_request.go @@ -440,14 +440,8 @@ func ConvertClaudeRequestToAntigravity(modelName string, inputRawJSON []byte, _ out, _ = sjson.Set(out, "request.generationConfig.thinkingConfig.thinkingBudget", budget) out, _ = sjson.Set(out, "request.generationConfig.thinkingConfig.includeThoughts", true) } - case "auto": - // Amp sends thinking.type="auto" — use max budget from model config - // Antigravity API for Claude models requires a concrete positive budget, - // not -1. Use a high default that ApplyThinking will cap to model max. - out, _ = sjson.Set(out, "request.generationConfig.thinkingConfig.thinkingBudget", 64000) - out, _ = sjson.Set(out, "request.generationConfig.thinkingConfig.includeThoughts", true) - case "adaptive": - // Keep adaptive as a high level sentinel; ApplyThinking resolves it + case "adaptive", "auto": + // Keep adaptive/auto as a high level sentinel; ApplyThinking resolves it // to model-specific max capability. out, _ = sjson.Set(out, "request.generationConfig.thinkingConfig.thinkingLevel", "high") out, _ = sjson.Set(out, "request.generationConfig.thinkingConfig.includeThoughts", true) diff --git a/internal/translator/codex/claude/codex_claude_request.go b/internal/translator/codex/claude/codex_claude_request.go index 64e41fb5..739b39e9 100644 --- a/internal/translator/codex/claude/codex_claude_request.go +++ b/internal/translator/codex/claude/codex_claude_request.go @@ -230,8 +230,8 @@ func ConvertClaudeRequestToCodex(modelName string, inputRawJSON []byte, _ bool) reasoningEffort = effort } } - case "adaptive": - // Claude adaptive means "enable with max capacity"; keep it as highest level + case "adaptive", "auto": + // Claude adaptive/auto means "enable with max capacity"; keep it as highest level // and let ApplyThinking normalize per target model capability. reasoningEffort = string(thinking.LevelXHigh) case "disabled": diff --git a/internal/translator/gemini-cli/claude/gemini-cli_claude_request.go b/internal/translator/gemini-cli/claude/gemini-cli_claude_request.go index ee661381..653bbeb2 100644 --- a/internal/translator/gemini-cli/claude/gemini-cli_claude_request.go +++ b/internal/translator/gemini-cli/claude/gemini-cli_claude_request.go @@ -180,8 +180,8 @@ func ConvertClaudeRequestToCLI(modelName string, inputRawJSON []byte, _ bool) [] out, _ = sjson.Set(out, "request.generationConfig.thinkingConfig.thinkingBudget", budget) out, _ = sjson.Set(out, "request.generationConfig.thinkingConfig.includeThoughts", true) } - case "adaptive": - // Keep adaptive as a high level sentinel; ApplyThinking resolves it + case "adaptive", "auto": + // Keep adaptive/auto as a high level sentinel; ApplyThinking resolves it // to model-specific max capability. out, _ = sjson.Set(out, "request.generationConfig.thinkingConfig.thinkingLevel", "high") out, _ = sjson.Set(out, "request.generationConfig.thinkingConfig.includeThoughts", true) diff --git a/internal/translator/gemini/claude/gemini_claude_request.go b/internal/translator/gemini/claude/gemini_claude_request.go index e882f769..b5756d20 100644 --- a/internal/translator/gemini/claude/gemini_claude_request.go +++ b/internal/translator/gemini/claude/gemini_claude_request.go @@ -161,8 +161,8 @@ func ConvertClaudeRequestToGemini(modelName string, inputRawJSON []byte, _ bool) out, _ = sjson.Set(out, "generationConfig.thinkingConfig.thinkingBudget", budget) out, _ = sjson.Set(out, "generationConfig.thinkingConfig.includeThoughts", true) } - case "adaptive": - // Keep adaptive as a high level sentinel; ApplyThinking resolves it + case "adaptive", "auto": + // Keep adaptive/auto as a high level sentinel; ApplyThinking resolves it // to model-specific max capability. out, _ = sjson.Set(out, "generationConfig.thinkingConfig.thinkingLevel", "high") out, _ = sjson.Set(out, "generationConfig.thinkingConfig.includeThoughts", true) diff --git a/internal/translator/openai/claude/openai_claude_request.go b/internal/translator/openai/claude/openai_claude_request.go index acb79a13..e3efb83c 100644 --- a/internal/translator/openai/claude/openai_claude_request.go +++ b/internal/translator/openai/claude/openai_claude_request.go @@ -75,8 +75,8 @@ func ConvertClaudeRequestToOpenAI(modelName string, inputRawJSON []byte, stream out, _ = sjson.Set(out, "reasoning_effort", effort) } } - case "adaptive": - // Claude adaptive means "enable with max capacity"; keep it as highest level + case "adaptive", "auto": + // Claude adaptive/auto means "enable with max capacity"; keep it as highest level // and let ApplyThinking normalize per target model capability. out, _ = sjson.Set(out, "reasoning_effort", string(thinking.LevelXHigh)) case "disabled":