Skip to content

Feat NewVersion - Project Workspace with Sidebar Navigation and Refactor ChatBox Input UI#1524

Open
Douglasymlai wants to merge 18 commits intomainfrom
feat-new-project-workspace-with-sidebar
Open

Feat NewVersion - Project Workspace with Sidebar Navigation and Refactor ChatBox Input UI#1524
Douglasymlai wants to merge 18 commits intomainfrom
feat-new-project-workspace-with-sidebar

Conversation

@Douglasymlai
Copy link
Copy Markdown
Contributor

@Douglasymlai Douglasymlai commented Mar 27, 2026

Related Issue

Closes #

Description

New Components & Modules

  • New ProjectPageSidebar (1,164 lines) — collapsible left sidebar rail for project-level navigation (workspace tabs, task list with lifecycle status indicators, help/support menu)
  • New RichChatInput (430 lines) — rich text input with inline URL and #skill token highlighting
  • New UserMessageRichContent — renders rich content segments in user message cards
  • New taskLifecycleUi.ts utility — centralizes task lifecycle state derivation (bottom-box state, shelf tone) shared between sidebar and chat
  • New useInitialChatPanelLayout hook — handles initial resizable panel sizing on mount

Layout & Navigation Overhaul

  • Home.tsx heavily refactored — integrates ProjectPageSidebar, replaces inline connection-status/tab logic with sidebar-driven navigation
  • TopBar gains browser-style back/forward navigation (useStackNavigationBounds), removes export-log and folder icon; adds share/sparkles icons
  • WorkspaceMenu renamed to WorkSpaceMenu (casing change)
  • Sidebar-driven workspace tab switching replaces the old MenuToggleGroup in-page tabs
  • BottomBar simplified, workspace components (BrowserAgentWorkspace, TerminalAgentWorkspace) receive minor layout adjustments

State Management

  • pageTabStore now uses zustand/persist, adds: projectSidebarCollapsed, scrollToQueryId, customAgentFolderPathByProjectId, workspaceChatFocusRequestId
  • Removed hardcoded hasTriggers mock — now derived from actual trigger data

ChatBox Refactoring

  • Removed model-config polling logic (cloud/local/custom key checks) — hasModel defaults to true
  • Removed per-project token aggregation (projectTotalTokens, getChatStoreTotalTokens)
  • Deleted ExpandedInputBox.tsx (239 lines removed), replaced by RichChatInput
  • Dynamic scroll bottom inset via ResizeObserver on the bottom-box overlay
  • workspaceChatFocusRequestId auto-focuses chat input when sidebar triggers it

UI Component Updates

  • button.tsx rewritten — new layout axis (text | icon-only), compound variants per size, textWeight and radius props, proper icon-only square sizing
  • Multiple UI primitives (dialog, dropdown-menu, input, textarea, carousel, command, resizable, sidebar) receive styling/structure tweaks

i18n

  • New keys across all 12 locales for sidebar labels, trigger sort options, and setting strings

Bug Fixes

  • Fixed hardcoded state values
  • Fixed workforce window interaction iteration

Testing Evidence (REQUIRED)

Screenshot 2026-03-27 at 15 27 21 Screenshot 2026-03-27 at 15 27 27 Screenshot 2026-03-27 at 15 27 30
  • I have included human-verified testing evidence in this PR.
  • This PR includes frontend/UI changes, and I attached screenshot(s) or screen recording(s).
  • No frontend/UI changes in this PR.

What is the purpose of this pull request?

  • Bug fix
  • New Feature
  • Documentation update
  • Other

Contribution Guidelines Acknowledgement

@Douglasymlai Douglasymlai changed the title Feat NewVersion - Project workspace with sidebar and refactor chatbox ui Feat NewVersion - Project Workspace with Sidebar Navigation and Refactor ChatBox Input UI Mar 27, 2026
@Douglasymlai Douglasymlai marked this pull request as ready for review March 27, 2026 15:35
Sign up for free to 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.

2 participants