feat(vscode-ide-companion): add dedicated agent execution display#2590
feat(vscode-ide-companion): add dedicated agent execution display#2590yiliang114 wants to merge 1 commit intomainfrom
Conversation
Preserve structured agent rawOutput through the VSCode session pipeline. Render dedicated agent execution cards from shared webui components.
📋 Review SummaryThis PR implements a dedicated agent execution display for the VSCode companion, preserving structured 🔍 General Feedback
🎯 Specific Feedback🟡 High
🟢 Medium
🔵 Low
✅ Highlights
|
Code Coverage Summary
CLI Package - Full Text ReportCore Package - Full Text ReportFor detailed HTML reports, please see the 'coverage-reports-22.x-ubuntu-latest' artifact from the main CI run. |
TLDR
Add a dedicated Agent execution display for the VSCode companion so subagent runs no longer fall back to the generic tool card. This preserves structured
task_executionpayloads end-to-end and renders task title, execution status, child tool progress, completion summary, and failure reason.Screenshots / Video Demo
N/A — this is a VSCode webview UI change prepared from a CLI workflow, so no screenshot is attached here. Reviewers can validate the new display using the test plan below.
Dive Deeper
This PR fixes the missing Agent execution UI in the VSCode companion by wiring structured agent output through the ACP update pipeline and adding a dedicated shared renderer.
Main changes:
rawOutputontool_call/tool_call_updateevents in the VSCode session handler.rawOutputin the webview tool-call state.AgentToolCallcomponent in@qwen-code/webui.rawOutput.type === "task_execution"to the dedicated agent renderer instead ofGenericToolCall.ChatViewerpath so tool-call rendering stays consistent.rawOutputpropagationTouched areas:
packages/vscode-ide-companion/src/services/qwenSessionUpdateHandler.tspackages/vscode-ide-companion/src/webview/hooks/useToolCalls.tspackages/vscode-ide-companion/src/webview/components/messages/toolcalls/index.tsxpackages/webui/src/components/toolcalls/AgentToolCall.tsxpackages/webui/src/components/ChatViewer/ChatViewer.tsxReviewer Test Plan
npm exec --workspace=packages/vscode-ide-companion vitest -- --run src/services/qwenSessionUpdateHandler.test.ts src/webview/hooks/useToolCalls.test.tsx src/webview/components/messages/toolcalls/index.test.tsxnpm run typecheck --workspace=packages/webuinpm run build --workspace=packages/vscode-ide-companionTesting Matrix
Linked issues / bugs
Resolves #2514