From 4ab1d03370fcdd0cbbc85d20613ef7ba911d16a3 Mon Sep 17 00:00:00 2001 From: josedario87 Date: Thu, 19 Feb 2026 02:45:53 -0600 Subject: [PATCH] feat: Add specialized tool cards for transcript-debug and glassmorphism bubbles Add toolCards/ with rich visual cards for 10 tool types: - AskUserQuestion, ExitPlanMode, EnterPlanMode - Read, Write, Bash, Edit - Grep, Glob - Task/TaskCreate/TaskUpdate/TaskGet/TaskList (unified TaskCard) Add MarkdownContent component and markdown/syntax highlight utils. Make user/assistant bubbles transparent with backdrop blur. --- .../AssistantMessageBubble.vue | 47 +- .../transcript-debug/MarkdownContent.vue | 25 + .../transcript-debug/ThinkingBlock.vue | 5 +- .../transcript-debug/ToolCallBlock.vue | 7 +- .../transcript-debug/ToolResultBlock.vue | 23 +- .../transcript-debug/UserMessageBubble.vue | 6 +- .../toolCards/AskUserQuestionCard.vue | 372 ++++++++++++++ .../transcript-debug/toolCards/BashCard.vue | 164 +++++++ .../transcript-debug/toolCards/EditCard.vue | 286 +++++++++++ .../toolCards/EnterPlanModeCard.vue | 148 ++++++ .../toolCards/ExitPlanModeCard.vue | 267 ++++++++++ .../transcript-debug/toolCards/GlobCard.vue | 170 +++++++ .../transcript-debug/toolCards/GrepCard.vue | 228 +++++++++ .../transcript-debug/toolCards/ReadCard.vue | 169 +++++++ .../transcript-debug/toolCards/TaskCard.vue | 357 ++++++++++++++ .../transcript-debug/toolCards/WriteCard.vue | 210 ++++++++ frontend/src/utils/markdown.ts | 459 ++++++++++++++++++ 17 files changed, 2925 insertions(+), 18 deletions(-) create mode 100644 frontend/src/components/transcript-debug/MarkdownContent.vue create mode 100644 frontend/src/components/transcript-debug/toolCards/AskUserQuestionCard.vue create mode 100644 frontend/src/components/transcript-debug/toolCards/BashCard.vue create mode 100644 frontend/src/components/transcript-debug/toolCards/EditCard.vue create mode 100644 frontend/src/components/transcript-debug/toolCards/EnterPlanModeCard.vue create mode 100644 frontend/src/components/transcript-debug/toolCards/ExitPlanModeCard.vue create mode 100644 frontend/src/components/transcript-debug/toolCards/GlobCard.vue create mode 100644 frontend/src/components/transcript-debug/toolCards/GrepCard.vue create mode 100644 frontend/src/components/transcript-debug/toolCards/ReadCard.vue create mode 100644 frontend/src/components/transcript-debug/toolCards/TaskCard.vue create mode 100644 frontend/src/components/transcript-debug/toolCards/WriteCard.vue create mode 100644 frontend/src/utils/markdown.ts diff --git a/frontend/src/components/transcript-debug/AssistantMessageBubble.vue b/frontend/src/components/transcript-debug/AssistantMessageBubble.vue index c71d2d3..674372f 100644 --- a/frontend/src/components/transcript-debug/AssistantMessageBubble.vue +++ b/frontend/src/components/transcript-debug/AssistantMessageBubble.vue @@ -3,6 +3,19 @@ import { computed } from 'vue' import type { ParsedAssistantMessage } from '@/types/transcript-debug' import ThinkingBlock from './ThinkingBlock.vue' import ToolCallBlock from './ToolCallBlock.vue' +import MarkdownContent from './MarkdownContent.vue' +import AskUserQuestionCard from './toolCards/AskUserQuestionCard.vue' +import ExitPlanModeCard from './toolCards/ExitPlanModeCard.vue' +import EnterPlanModeCard from './toolCards/EnterPlanModeCard.vue' +import ReadCard from './toolCards/ReadCard.vue' +import WriteCard from './toolCards/WriteCard.vue' +import BashCard from './toolCards/BashCard.vue' +import EditCard from './toolCards/EditCard.vue' +import GrepCard from './toolCards/GrepCard.vue' +import GlobCard from './toolCards/GlobCard.vue' +import TaskCard from './toolCards/TaskCard.vue' + +const TASK_TOOLS = new Set(['Task', 'TaskCreate', 'TaskUpdate', 'TaskGet', 'TaskList']) const props = defineProps<{ message: ParsedAssistantMessage @@ -62,24 +75,36 @@ function formatTokens(n?: number): string { :content="t" /> - -
- {{ text }} -
+ + - + diff --git a/frontend/src/components/transcript-debug/ThinkingBlock.vue b/frontend/src/components/transcript-debug/ThinkingBlock.vue index 289ccce..55f1d4a 100644 --- a/frontend/src/components/transcript-debug/ThinkingBlock.vue +++ b/frontend/src/components/transcript-debug/ThinkingBlock.vue @@ -1,5 +1,6 @@