diff --git a/internal/ui/chat/assistant.go b/internal/ui/chat/assistant.go index e4153075459473bca47c17f83ffbcfe81f151909..66fe97e1bc5a7d6242200835a72136c098935ab1 100644 --- a/internal/ui/chat/assistant.go +++ b/internal/ui/chat/assistant.go @@ -215,7 +215,9 @@ func (a *AssistantMessageItem) renderError(width int) string { func (a *AssistantMessageItem) isSpinning() bool { isThinking := a.message.IsThinking() isFinished := a.message.IsFinished() - return isThinking || !isFinished + hasContent := strings.TrimSpace(a.message.Content().Text) != "" + hasToolCalls := len(a.message.ToolCalls()) > 0 + return (isThinking || !isFinished) && !hasContent && !hasToolCalls } // SetMessage is used to update the underlying message.