feat(webui): unify remaining tool display labels - #2595
Conversation
📋 Review SummaryThis PR addresses issue #1367 by unifying tool display labels across the web UI and VSCode companion, centralizing label resolution logic in a new 🔍 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. |
…ication feat(webui): unify remaining tool display labels
TLDR
Unify the remaining VSCode companion/web UI tool display labels with the CLI naming direction from #1367.
This finishes the still-live gaps on current main by centralizing label resolution and applying it to the shared tool-call components, so users no longer see a mix of labels such as
Execute,Bash,Updated Plan,Web Fetch, and generic read labels where the CLI already uses the core tool names.Screenshots / Video Demo
N/A — this is a display-name consistency change across existing tool-call cards, with no new user flow.
Dive Deeper
Issue #1367 was only partially addressed. Several labels had already been unified, but current
mainstill had hardcoded mismatches in the shared web UI layer:Execute/Bashinstead ofShellUpdated Planinstead ofTodoWriteWeb Fetch/Web Searchinstead ofWebFetch/WebSearchReadlabels for read-family tools that could be resolved more preciselyThis PR adds a shared
getToolDisplayLabel()helper and uses it in the remaining tool-call components so the naming logic is defined once and reused consistently.It also expands the VSCode companion tool-call router so read-family variants like
read_many_filesandlist_directoryreachReadToolCallinstead of falling back incorrectly.A regression test covers the remaining mapping cases directly.
Reviewer Test Plan
Shell,TodoWrite,WebFetch,WebSearch,ReadFile,ReadManyFiles,ListFiles,Task,Skill, andExitPlanModewhere applicable.cd packages/webuinpx vitest run src/components/toolcalls/labelUtils.test.tscd packages/webui && npm run typecheckcd packages/vscode-ide-companion && npm run check-typesTesting Matrix
Local verification completed:
npx vitest run src/components/toolcalls/labelUtils.test.tsnpm run typecheckinpackages/webuinpm run check-typesinpackages/vscode-ide-companioneslinton the touchedwebuiand companion filesLinked issues / bugs
Resolves #1367