EPIC: TUI Core Layout & Navigation — MainScreen, Sidebar, Hotkeys #4963

Open
opened 2026-04-08 23:40:47 +00:00 by freemo · 2 comments
Owner

Epic: TUI Core Layout & Navigation

This Epic covers the core TUI layout implementation: MainScreen with 3 sidebar states, Dracula theme, hotkey bindings, and the overall navigation structure.

Demonstrable Capability

When this Epic is complete, a developer can:

  1. Launch the TUI and see the MainScreen with Dracula theme
  2. Toggle the sidebar between hidden/visible/fullscreen states
  3. Use all required hotkeys (tab, shift+tab, ctrl+s, ctrl+n, ctrl+w, etc.)
  4. Navigate between sessions using ctrl+[ and ctrl+]
  5. See the Throbber, SessionTabs, Flash bar, and sidebar in the layout

Child Issues

Definition of Done

  • All child issues are closed
  • TUI launches with Dracula theme (THEME class variable set)
  • MainScreen has 3 sidebar states (hidden/visible/fullscreen)
  • All required hotkeys bound (tab, shift+tab, ctrl+s, ctrl+n, ctrl+w, ctrl+[, ctrl+], F2)
  • Custom layout with Throbber, SessionTabs, Flash bar, sidebar (not generic Header/Footer)
  • All nox stages pass
  • Coverage >= 97%

Metadata

  • Branch Naming Convention: feat/m8/tui-core-layout
  • Milestone: v3.7.0
  • Parent Legendary: #4946

Automated by CleverAgents Bot
Supervisor: Epic Planning | Agent: epic-planner

## Epic: TUI Core Layout & Navigation This Epic covers the core TUI layout implementation: MainScreen with 3 sidebar states, Dracula theme, hotkey bindings, and the overall navigation structure. ### Demonstrable Capability When this Epic is complete, a developer can: 1. Launch the TUI and see the MainScreen with Dracula theme 2. Toggle the sidebar between hidden/visible/fullscreen states 3. Use all required hotkeys (tab, shift+tab, ctrl+s, ctrl+n, ctrl+w, etc.) 4. Navigate between sessions using ctrl+[ and ctrl+] 5. See the Throbber, SessionTabs, Flash bar, and sidebar in the layout ### Child Issues <!-- Updated by automation after child issues are created --> ### Definition of Done - [ ] All child issues are closed - [ ] TUI launches with Dracula theme (THEME class variable set) - [ ] MainScreen has 3 sidebar states (hidden/visible/fullscreen) - [ ] All required hotkeys bound (tab, shift+tab, ctrl+s, ctrl+n, ctrl+w, ctrl+[, ctrl+], F2) - [ ] Custom layout with Throbber, SessionTabs, Flash bar, sidebar (not generic Header/Footer) - [ ] All nox stages pass - [ ] Coverage >= 97% ## Metadata - **Branch Naming Convention**: `feat/m8/tui-core-layout` - **Milestone**: v3.7.0 - **Parent Legendary**: #4946 --- **Automated by CleverAgents Bot** Supervisor: Epic Planning | Agent: epic-planner
Owner

Issue triaged by project owner:

  • State: Verified
  • Priority: High — TUI Core Layout is the foundation of the TUI Legendary; without MainScreen, Sidebar, and Hotkeys, no TUI functionality can be built
  • Milestone: v3.7.0
  • Story Points: 34 — XXL — Epic covering MainScreen layout, Sidebar navigation, hotkey bindings, and core TUI infrastructure
  • MoSCoW: Must Have — The TUI core layout is the prerequisite for all other TUI features; it must be implemented first in the TUI Legendary
  • Parent Legendary: #4946

This Epic is valid. It is the foundational Epic for the TUI Legendary (#4946).


Automated by CleverAgents Bot
Supervisor: Project Owner | Agent: project-owner

Issue triaged by project owner: - **State**: Verified - **Priority**: High — TUI Core Layout is the foundation of the TUI Legendary; without MainScreen, Sidebar, and Hotkeys, no TUI functionality can be built - **Milestone**: v3.7.0 - **Story Points**: 34 — XXL — Epic covering MainScreen layout, Sidebar navigation, hotkey bindings, and core TUI infrastructure - **MoSCoW**: Must Have — The TUI core layout is the prerequisite for all other TUI features; it must be implemented first in the TUI Legendary - **Parent Legendary**: #4946 This Epic is valid. It is the foundational Epic for the TUI Legendary (#4946). --- **Automated by CleverAgents Bot** Supervisor: Project Owner | Agent: project-owner
HAL9000 added this to the v3.7.0 milestone 2026-04-09 00:49:01 +00:00
Owner

Child Issues — Epic #4963: TUI Core Layout & Navigation

Updated: 2026-04-10 (Cycle 1 — Epic Planning)

Feature Issues (foundational)

  • #5032 — feat(tui): implement MainScreen with Dracula theme, 3-state sidebar, and custom layout components (foundational — must be done first)
  • #5036 — feat(tui): implement TUI hotkey bindings and keyboard navigation (tab, ctrl+s, ctrl+n, ctrl+w, ctrl+[, ctrl+]) (depends on #5032)

Bug Issues (must fix)

  • #4851 — UAT: TUI PermissionsScreen is a Static widget, not a Textual Screen
  • #4852 — UAT: TUI PersonaState missing cycle_persona() method
  • #4856 — UAT: TUI app uses generic Textual Header/Footer instead of spec-required custom layout
  • #4858 — UAT: TUI Persona schema has undocumented icon and greeting fields
  • #4860 — UAT: TUI PersonaRegistry.export_path and import_path reject absolute paths
  • #4865 — UAT: TUI ThoughtBlockWidget max-height CSS issue
  • #4868 — UAT: TUI PermissionQuestionWidget missing v key handler
  • #5018 — UAT: TUI MainScreen has no collapsible sidebar
  • #5020 — UAT: TUI has no multi-session tab bar
  • #5051 — UAT: TUI block cursor and context menu not implemented
  • #5060 — UAT: TUI conversation content pruning not implemented
  • #5071 — UAT: TUI prompt uses Input widget instead of TextArea
  • #5079 — UAT: TUI ctrl+c double-tap quit not implemented
  • #5081 — UAT: TUI double-tap escape for terminal focus exit not implemented
  • #5338 — UAT: SettingsScreen and SessionsScreen not implemented
  • #5547 — UAT: TUI sidebar implementation stranded in feature branch
  • #5555 — UAT: TUI app BINDINGS only has 3 of 12+ spec-required global key bindings
  • #5556 — UAT: TUI sidebar Plans and Projects panels use plain Static widgets
  • #5567 — UAT: TUI Conversation block cursor missing enter/space key handlers
  • #5901 — UAT: MainScreen class missing — TUI has no proper screen architecture
  • #5929 — UAT: SideBar widget missing — 3-state sidebar not implemented
  • #5962 — UAT: Block cursor navigation missing — conversation uses Static widget
  • #5972 — UAT: Flash notification bar and Throbber widgets missing
  • #6450 — UAT: TUI escape cascade not implemented
  • #6454 — UAT: TUI CSS styling incomplete
  • #6467 — UAT: TUI PlanDetailModal, ProjectDetailModal, and PersonaEditorModal not implemented
  • #6502 — UAT: IndentationError in src/cleveragents/tui/app.py line 192

Closed:

  • #5059 — UAT: TUI ctrl+c double-tap quit not implemented (closed)

Total: 28 child issues (2 features + 26 bugs; 1 closed)

Dependency Chain: #5032#5036 → Epic #4963


Automated by CleverAgents Bot
Supervisor: Epic Planning | Agent: epic-planner

## Child Issues — Epic #4963: TUI Core Layout & Navigation **Updated**: 2026-04-10 (Cycle 1 — Epic Planning) ### Feature Issues (foundational) - [ ] #5032 — feat(tui): implement MainScreen with Dracula theme, 3-state sidebar, and custom layout components *(foundational — must be done first)* - [ ] #5036 — feat(tui): implement TUI hotkey bindings and keyboard navigation (tab, ctrl+s, ctrl+n, ctrl+w, ctrl+[, ctrl+]) *(depends on #5032)* ### Bug Issues (must fix) - [ ] #4851 — UAT: TUI PermissionsScreen is a Static widget, not a Textual Screen - [ ] #4852 — UAT: TUI PersonaState missing cycle_persona() method - [ ] #4856 — UAT: TUI app uses generic Textual Header/Footer instead of spec-required custom layout - [ ] #4858 — UAT: TUI Persona schema has undocumented icon and greeting fields - [ ] #4860 — UAT: TUI PersonaRegistry.export_path and import_path reject absolute paths - [ ] #4865 — UAT: TUI ThoughtBlockWidget max-height CSS issue - [ ] #4868 — UAT: TUI PermissionQuestionWidget missing v key handler - [ ] #5018 — UAT: TUI MainScreen has no collapsible sidebar - [ ] #5020 — UAT: TUI has no multi-session tab bar - [ ] #5051 — UAT: TUI block cursor and context menu not implemented - [ ] #5060 — UAT: TUI conversation content pruning not implemented - [ ] #5071 — UAT: TUI prompt uses Input widget instead of TextArea - [ ] #5079 — UAT: TUI ctrl+c double-tap quit not implemented - [ ] #5081 — UAT: TUI double-tap escape for terminal focus exit not implemented - [ ] #5338 — UAT: SettingsScreen and SessionsScreen not implemented - [ ] #5547 — UAT: TUI sidebar implementation stranded in feature branch - [ ] #5555 — UAT: TUI app BINDINGS only has 3 of 12+ spec-required global key bindings - [ ] #5556 — UAT: TUI sidebar Plans and Projects panels use plain Static widgets - [ ] #5567 — UAT: TUI Conversation block cursor missing enter/space key handlers - [ ] #5901 — UAT: MainScreen class missing — TUI has no proper screen architecture - [ ] #5929 — UAT: SideBar widget missing — 3-state sidebar not implemented - [ ] #5962 — UAT: Block cursor navigation missing — conversation uses Static widget - [ ] #5972 — UAT: Flash notification bar and Throbber widgets missing - [ ] #6450 — UAT: TUI escape cascade not implemented - [ ] #6454 — UAT: TUI CSS styling incomplete - [ ] #6467 — UAT: TUI PlanDetailModal, ProjectDetailModal, and PersonaEditorModal not implemented - [ ] #6502 — UAT: IndentationError in src/cleveragents/tui/app.py line 192 **Closed**: - [x] #5059 — UAT: TUI ctrl+c double-tap quit not implemented *(closed)* **Total**: 28 child issues (2 features + 26 bugs; 1 closed) **Dependency Chain**: #5032 → #5036 → Epic #4963 --- **Automated by CleverAgents Bot** Supervisor: Epic Planning | Agent: epic-planner
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Blocks Depends on
Reference
cleveragents/cleveragents-core#4963
No description provided.