feat: add optional editable task titles #8689
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Related GitHub Issue
Closes: #8366
Description
This feature introduces editable titles for tasks, allowing users to label active work, persist those titles into task history, and search them—while providing a settings toggle and aligning the visual treatment across the UI.
Server↔️ Webview plumbing
HistoryItem
withtitle
and updateClineProvider.updateTaskHistory
to merge partial updates so existing titles survive incremental syncs; explicitly allowundefined
to clear a title.setTaskTitle
branch inwebviewMessageHandler
that normalizes/dedupes task IDs, trims/sanitizes the incoming title, skips no-op updates, persists viaupdateTaskHistory
, and re-syncs the webview state.taskTitlesEnabled
flag through extension messages/state and surface it to the webview context so both chat and history components react to the toggle.Webview UI
TaskHeader.tsx
): introduce an inline editing experience (VS Code styled input, focus/keyboard handling, hover pencil) gated by the feature flag; when a title exists, display the text with standard weight instead of bolding.TaskItem.tsx
): prefer titles when enabled, apply shared truncation/highlight behaviour, and render HTML highlights without the previousfont-semibold
class so edited titles visually match default entries.useTaskSearch.ts
): augment FZF selector to search titles + task prompts, split highlight ranges between title/task, and retain results ordering across sort modes.Settings & Telemetry
UISettings
that toggles the new flag and emitsui_settings_task_titles_enabled_changed
.Tests & Localization
Test Procedure
pnpm vitest webview-ui/src/components/chat/__tests__/TaskHeader.spec.tsx
pnpm vitest webview-ui/src/components/history/__tests__/TaskItem.spec.tsx
pnpm vitest webview-ui/src/components/history/__tests__/useTaskSearch.spec.tsx
Screenshots / Videos
Documentation Updates
Important
Introduces editable task titles feature with UI support and settings toggle, including backend logic and tests.
taskTitlesEnabled
flag inglobal-settings.ts
andhistory.ts
.ClineProvider
to handle task title updates and sync with webview.setTaskTitle
andsetTaskTitlesEnabled
message types inwebviewMessageHandler
.TaskHeader.tsx
: Implements inline editing for task titles with a pencil icon, focus handling, and keyboard shortcuts.TaskItem.tsx
: Displays task titles if enabled, with fallback to task text.UISettings.tsx
: Adds checkbox to toggle task titles feature.TaskHeader.spec.tsx
,TaskItem.spec.tsx
, anduseTaskSearch.spec.tsx
to cover new title editing and display logic.chat.json
andsettings.json
.This description was created by
for abf7eca. You can customize this summary. It will automatically update as commits are pushed.