Skip to content

feat(site): add inline-editable chat titles in top bar#24176

Draft
tracyjohnsonux wants to merge 8 commits intomainfrom
feat/editable-chat-title
Draft

feat(site): add inline-editable chat titles in top bar#24176
tracyjohnsonux wants to merge 8 commits intomainfrom
feat/editable-chat-title

Conversation

@tracyjohnsonux
Copy link
Copy Markdown
Contributor

Click the chat title in the top bar to edit it inline. Press Enter to save, Escape to cancel. A subtle pencil icon appears on hover as an affordance, and a brief "Saved" indicator confirms the update.

Backend: wire req.Title handling in patchChat so PATCH /api/experimental/chats/{id} persists title changes.

Frontend: add updateChatTitle mutation with optimistic cache updates and rollback, thread onUpdateTitle through AgentChatPage → AgentChatPageView → ChatTopBar.

Implementation notes (Coder Agents generated)

Files changed

File Change
coderd/exp_chats.go Handle req.Title in patchChat — validates non-empty, calls UpdateChatByID
site/src/api/queries/chats.ts New updateChatTitle mutation factory with optimistic update on both per-chat and infinite-list caches, rollback on error
site/src/pages/AgentsPage/AgentChatPage.tsx Create mutation + handleUpdateTitle callback, pass to view
site/src/pages/AgentsPage/AgentChatPageView.tsx Thread onUpdateTitle prop to ChatTopBar
site/src/pages/AgentsPage/components/ChatTopBar.tsx Inline editing UX: click-to-edit with transparent input, pencil hover icon, "Saved" indicator with timeout

UX behavior

  • Default: title looks identical to before — no visual change
  • Hover: muted pencil icon fades in to the right
  • Click: swaps to a borderless input with blinking cursor, text auto-selected
  • Enter / blur: commits if changed + non-empty, shows "Saved ✓" for 2s
  • Escape: discards draft, returns to display mode
  • Regenerating: editing blocked, existing pulse animation preserved

Generated with Coder Agents

Click the chat title in the top bar to edit it inline. Press Enter to
save or Escape to cancel. A subtle pencil icon appears on hover, and a
brief 'Saved' indicator with a save icon confirms the update.

Backend: wire req.Title handling in patchChat so PATCH
/api/experimental/chats/{id} persists title changes.

Frontend: add updateChatTitle mutation with optimistic updates, thread
onUpdateTitle through AgentChatPage -> AgentChatPageView -> ChatTopBar.
@github-actions github-actions bot added the community Pull Requests and issues created by the community. label Apr 8, 2026
@matifali matifali removed the community Pull Requests and issues created by the community. label Apr 9, 2026
@github-actions github-actions bot added the stale This issue is like stale bread. label Apr 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

stale This issue is like stale bread.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants