+
{children}
@@ -24,10 +27,7 @@ const Wrapper = ({ popover, children }: { popover: boolean; children: React.Reac
return (
-
@@ -98,10 +98,12 @@ export default function ProgressText({
aria-expanded={hasInput ? isExpanded : undefined}
>
{icon}
-
{text}
+
+ {text}
+
{subtitle &&
{subtitle}}
{errorSuffix && (
-
— {errorSuffix}
+
· {errorSuffix}
)}
{hasInput && (
{groupLabel}
@@ -387,7 +388,9 @@ export default function ToolCallGroup({
* questions) — every entry deduplicates to the same token, which
* adds noise without info. Mixed groups keep the summary. */}
{toolNameSummary && !allSubagents && !allAskQuestions && (
- — {toolNameSummary}
+
+ · {toolNameSummary}
+
)}
)}
- {completedText}
+ {completedText}
{hasSourceData && (
{showSources && }
-
+
{progressText}
diff --git a/client/src/components/Chat/Messages/Content/__tests__/ToolCallGroup.test.tsx b/client/src/components/Chat/Messages/Content/__tests__/ToolCallGroup.test.tsx
index f05631f0f6..38129e3428 100644
--- a/client/src/components/Chat/Messages/Content/__tests__/ToolCallGroup.test.tsx
+++ b/client/src/components/Chat/Messages/Content/__tests__/ToolCallGroup.test.tsx
@@ -507,7 +507,7 @@ describe('ToolCallGroup image hoisting', () => {
],
});
- expect(screen.getByText('— Code')).toBeInTheDocument();
+ expect(screen.getByText('· Code')).toBeInTheDocument();
expect(screen.queryByText(/Code, bash_tool/)).not.toBeInTheDocument();
expect(screen.getByTestId('stacked-icons')).toHaveAttribute(
'data-tool-names',
@@ -530,7 +530,7 @@ describe('ToolCallGroup image hoisting', () => {
expect(screen.queryByText('Used 2 tools')).not.toBeInTheDocument();
expect(screen.getByTestId('question-icon')).toBeInTheDocument();
expect(screen.queryByTestId('stacked-icons')).not.toBeInTheDocument();
- expect(screen.queryByText(/— ask_user_question/)).not.toBeInTheDocument();
+ expect(screen.queryByText(/· ask_user_question/)).not.toBeInTheDocument();
});
it('uses the present tense while a multi-question turn is still streaming', () => {