diff --git a/pkg/tools/toolloop.go b/pkg/tools/toolloop.go index ac568f598..5cbf5662a 100644 --- a/pkg/tools/toolloop.go +++ b/pkg/tools/toolloop.go @@ -132,7 +132,11 @@ func RunToolLoop( Content: response.Content, } for _, tc := range normalizedToolCalls { - argumentsJSON, _ := json.Marshal(tc.Arguments) + argumentsJSON, err := json.Marshal(tc.Arguments) + if err != nil { + logger.Warnf("toolloop: failed to marshal tool call arguments for %s: %v", tc.Name, err) + argumentsJSON = []byte("{}") + } assistantMsg.ToolCalls = append(assistantMsg.ToolCalls, providers.ToolCall{ ID: tc.ID, Type: "function",