diff --git a/internal/agent/coordinator.go b/internal/agent/coordinator.go index 943c3efc41b33ea9f261b4ffc7256b6f544beff9..223ed650c440f41020e1185146ae5fb99c8cde7c 100644 --- a/internal/agent/coordinator.go +++ b/internal/agent/coordinator.go @@ -292,6 +292,17 @@ func getProviderOptions(model Model, providerCfg config.ProviderConfig) fantasy. if err == nil { options[google.Name] = parsed } + case bedrock.Name: + _, hasThink := mergedOptions["thinking"] + if !hasThink && model.ModelCfg.Think { + mergedOptions["thinking"] = map[string]any{ + "reasoning_effort": "medium", + } + } + parsed, err := bedrock.ParseOptions(mergedOptions) + if err == nil { + options[bedrock.Name] = parsed + } case openaicompat.Name: _, hasReasoningEffort := mergedOptions["reasoning_effort"] if !hasReasoningEffort && model.ModelCfg.ReasoningEffort != "" { diff --git a/internal/tui/components/dialogs/commands/commands.go b/internal/tui/components/dialogs/commands/commands.go index cde5b203ca985f81c390d02725ef04d11a5cd518..26fa554e5868409a53ce4aa4cf86d68f88084dd7 100644 --- a/internal/tui/components/dialogs/commands/commands.go +++ b/internal/tui/components/dialogs/commands/commands.go @@ -363,8 +363,8 @@ func (c *commandDialogCmp) defaultCommands() []Command { if providerCfg != nil && model != nil && model.CanReason { selectedModel := cfg.Models[agentCfg.Model] - // Anthropic models: thinking toggle - if providerCfg.Type == catwalk.TypeAnthropic || providerCfg.Type == catwalk.Type(hyper.Name) { + // Anthropic/Bedrock models: thinking toggle + if providerCfg.Type == catwalk.TypeAnthropic || providerCfg.Type == catwalk.Type(hyper.Name) || providerCfg.Type == catwalk.TypeBedrock { status := "Enable" if selectedModel.Think { status = "Disable"