Skip to content

feat(chat): overhaul chat workspace with resizable artifact panel and modernized composer - #16

Merged
qyinm merged 19 commits into
mainfrom
feat/chat-ui-improvement
Aug 20, 2026
Merged

feat(chat): overhaul chat workspace with resizable artifact panel and modernized composer#16
qyinm merged 19 commits into
mainfrom
feat/chat-ui-improvement

Conversation

@qyinm

@qyinmqyinm commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

Summary

Comprehensive overhaul of the Chat experience in Plot, introducing a resizable split-pane artifact workspace, rich agent activity cards, modernized landing composer, and a split copy / Markdown export dropdown toolbar.

Why

  • Side-by-Side Artifact Editing: Users previously lacked an integrated way to view and edit agent-generated artifacts alongside the ongoing conversation. A resizable split pane allows reviewing and refining documents without losing chat context.
  • Rich Agent Activity Feedback: Users need clear visibility into what sources the agent read, citations referenced, execution timestamps, and direct access to the resulting artifact.
  • Focused Landing UX: A clean, centered composer card on /chat with Plot-aligned branding ("What should Plot create?") provides an intuitive starting point.
  • Direct Markdown Export: Enables users to download generated artifacts as .md files directly from the header toolbar in addition to copying to the clipboard.

Changes

1. Resizable Split Workspace (chat-active-workspace.tsx)

  • Implemented a dual-pane layout featuring the conversation thread on the left and a resizable artifact document panel on the right.
  • Added a draggable resize separator (role="separator") with min/max width bounds.
  • Refined header alignments: conversation title pinned to pane edge with smooth boundary fade transitions.
  • Added top toolbar controls on the artifact panel: Split Copy dropdown, History drawer toggle, Save draft indicator, and close button.

2. Rich Agent Activity & Citations (chat-activity.tsx, chat-source-citations.tsx)

  • Rendered user request bubbles and structured agent response cards.
  • Displays agent progress status (Read connected sources), source badges, relative/formatted timestamps, and interactive "Open artifact" action button.
  • Integrated citation chips linking back to connected Writing Blocks and original pull requests / issues.

3. Artifact Export & Header Toolbar (export-dialog.tsx, export-dialog.test.tsx)

  • Replaced the standalone Copy button with a split button (Copy + ChevronDown).
  • Implemented a dropdown popover with Download .md option, click-outside detection, and Escape key focus restoration.
  • Removed clipping gradient masks from the header container and adjusted z-index layering.

4. Chat Landing Page & Composer (chat-home.tsx, chat-composer.tsx)

  • Redesigned /chat landing view with a centered layout and brand-aligned headline "What should Plot create?".
  • Implemented a two-tiered composer card with auto-growing textarea, attachment (+) button, audio/send controls, and connected sources tray ({N} Connected Sources).
  • Standardized circular send buttons (rounded-full) across both landing and dock composers.

5. Backend & Contract Support (AgentRunQueryPersistence.kt, ChatAgentAdmissionService.kt, WorkSessionController.kt)

  • Updated session query persistence and agent run admission logic to support session-linked follow-up requests and artifact retrieval from history.

6. Test Suite & Setup Polyfills (chat-workspace.test.tsx, export-dialog.test.tsx, setup.ts)

  • Added tests covering split workspace interactions, artifact drawer toggling, follow-up request linkages, and export dropdown download dispatch.
  • Added matchMedia and ResizeObserver test setup polyfills in setup.ts.

@vercel

vercelBot commented Aug 20, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

ProjectDeploymentActionsUpdated (UTC)
plot-webReadyReadyPreviewAug 20, 2026 12:31am

@qyinmqyinm changed the title feat(chat): improve chat landing workspace and artifact export toolbarfeat(chat): overhaul chat workspace with resizable artifact panel and modernized composerAug 20, 2026
@qyinm
qyinm merged commit 51535d3 into mainAug 20, 2026
4 checks passed
@qyinm
qyinm deleted the feat/chat-ui-improvement branch August 20, 2026 00:55
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@qyinm