diff --git a/apps/client/src/widgets/sidebar/SidebarChat.tsx b/apps/client/src/widgets/sidebar/SidebarChat.tsx
index 5a972fe4fa..5155126274 100644
--- a/apps/client/src/widgets/sidebar/SidebarChat.tsx
+++ b/apps/client/src/widgets/sidebar/SidebarChat.tsx
@@ -289,12 +289,6 @@ export default function SidebarChat() {
{chat.messages.map(msg => (
))}
- {chat.toolActivity && !chat.streamingThinking && (
-
-
- {chat.toolActivity}
-
- )}
{chat.isStreaming && chat.streamingThinking && (
)}
- {chat.isStreaming && chat.streamingContent && (
+ {chat.isStreaming && chat.streamingBlocks.length > 0 && (
0 ? chat.pendingCitations : undefined
}}
diff --git a/apps/client/src/widgets/type_widgets/llm_chat/ChatMessage.css b/apps/client/src/widgets/type_widgets/llm_chat/ChatMessage.css
index 498f2e4cb4..bc5cd05f61 100644
--- a/apps/client/src/widgets/type_widgets/llm_chat/ChatMessage.css
+++ b/apps/client/src/widgets/type_widgets/llm_chat/ChatMessage.css
@@ -70,33 +70,6 @@
51%, 100% { opacity: 0; }
}
-/* Tool activity indicator */
-.llm-chat-tool-activity {
- display: flex;
- align-items: center;
- gap: 0.5rem;
- padding: 0.5rem 1rem;
- margin-bottom: 1rem;
- border-radius: 8px;
- background: var(--accented-background-color);
- color: var(--muted-text-color);
- font-size: 0.9rem;
- max-width: 85%;
-}
-
-.llm-chat-tool-spinner {
- width: 16px;
- height: 16px;
- border: 2px solid var(--muted-text-color);
- border-top-color: transparent;
- border-radius: 50%;
- animation: llm-chat-spin 0.8s linear infinite;
-}
-
-@keyframes llm-chat-spin {
- to { transform: rotate(360deg); }
-}
-
/* Citations */
.llm-chat-citations {
margin-top: 0.75rem;
diff --git a/apps/client/src/widgets/type_widgets/llm_chat/LlmChat.tsx b/apps/client/src/widgets/type_widgets/llm_chat/LlmChat.tsx
index 96f7052e43..301141f0d8 100644
--- a/apps/client/src/widgets/type_widgets/llm_chat/LlmChat.tsx
+++ b/apps/client/src/widgets/type_widgets/llm_chat/LlmChat.tsx
@@ -65,12 +65,6 @@ export default function LlmChat({ note, ntxId, noteContext }: TypeWidgetProps) {
{chat.messages.map(msg => (
))}
- {chat.toolActivity && !chat.streamingThinking && (
-
-
- {chat.toolActivity}
-
- )}
{chat.isStreaming && chat.streamingThinking && (
([]);
const [streamingThinking, setStreamingThinking] = useState("");
- const [toolActivity, setToolActivity] = useState(null);
const [pendingCitations, setPendingCitations] = useState([]);
const [availableModels, setAvailableModels] = useState([]);
const [selectedModel, setSelectedModel] = useState("");
@@ -154,7 +151,7 @@ export function useLlmChat(
useEffect(() => {
scrollToBottom();
- }, [messages, streamingContent, streamingThinking, toolActivity, scrollToBottom]);
+ }, [messages, streamingContent, streamingThinking, scrollToBottom]);
// Load state from content object
const loadFromContent = useCallback((content: LlmChatContent) => {
@@ -200,7 +197,6 @@ export function useLlmChat(
e.preventDefault();
if (!input.trim() || isStreaming) return;
- setToolActivity(null);
setPendingCitations([]);
const userMessage: StoredMessage = {
@@ -266,18 +262,12 @@ export function useLlmChat(
.map(b => b.content)
.join(""));
setStreamingBlocks([...contentBlocks]);
- setToolActivity(null);
},
onThinking: (text) => {
thinkingContent += text;
setStreamingThinking(thinkingContent);
- setToolActivity(t("llm_chat.thinking"));
},
onToolUse: (toolName, toolInput) => {
- const toolLabel = toolName === "web_search"
- ? t("llm_chat.searching_web")
- : `Using ${toolName}...`;
- setToolActivity(toolLabel);
contentBlocks.push({
type: "tool_call",
toolCall: {
@@ -323,7 +313,6 @@ export function useLlmChat(
setStreamingBlocks([]);
setStreamingThinking("");
setIsStreaming(false);
- setToolActivity(null);
},
onDone: () => {
const finalNewMessages: StoredMessage[] = [];
@@ -359,7 +348,6 @@ export function useLlmChat(
setStreamingThinking("");
setPendingCitations([]);
setIsStreaming(false);
- setToolActivity(null);
}
}
);
@@ -380,7 +368,6 @@ export function useLlmChat(
streamingContent,
streamingBlocks,
streamingThinking,
- toolActivity,
pendingCitations,
availableModels,
selectedModel,