Refactor TUI to Align with ADR-44 and ADR-45 #1315

Open
opened 2026-04-02 16:48:42 +00:00 by freemo · 1 comment
Owner

The current TUI implementation in src/cleveragents/tui/app.py has significantly diverged from the architecture defined in ADR-44 and ADR-45.

Key Discrepancies:

  • Missing Screens: The application is missing the specified multi-screen architecture, including SidebarFullScreen, PlanDetailModal, ProjectDetailModal, PersonaEditorModal, SettingsScreen, SessionsScreen, and PermissionsScreen.
  • No Sidebar: The right-side collapsible sidebar with its three states is not implemented.
  • No Multi-Session Support: The application is hardcoded to a single session and lacks the multi-session tab bar.
  • No TuiMaterializer Integration: The TuiMaterializer for rendering CLI output is not integrated.
  • No A2A Event Subscription: The application does not subscribe to A2A events for real-time updates.
  • Incomplete Persona System: The persona system is incomplete, with no editor, cycling, or loading from configuration.
  • Missing UI Elements: The throbber and first-run experience are not implemented.
  • Monolithic Structure: The entire TUI application is contained within a single file, which will be difficult to maintain.

Recommendation:

Refactor the TUI application to align with the architecture defined in ADR-44 and ADR-45. This will involve:

  • Implementing the specified multi-screen architecture.
  • Adding the right-side collapsible sidebar.
  • Implementing multi-session support with a tab bar.
  • Integrating the TuiMaterializer.
  • Subscribing to A2A events for real-time updates.
  • Completing the persona system.
  • Adding the missing UI elements.
  • Restructuring the code into smaller, more manageable modules.
The current TUI implementation in `src/cleveragents/tui/app.py` has significantly diverged from the architecture defined in ADR-44 and ADR-45. **Key Discrepancies:** * **Missing Screens:** The application is missing the specified multi-screen architecture, including `SidebarFullScreen`, `PlanDetailModal`, `ProjectDetailModal`, `PersonaEditorModal`, `SettingsScreen`, `SessionsScreen`, and `PermissionsScreen`. * **No Sidebar:** The right-side collapsible sidebar with its three states is not implemented. * **No Multi-Session Support:** The application is hardcoded to a single session and lacks the multi-session tab bar. * **No TuiMaterializer Integration:** The `TuiMaterializer` for rendering CLI output is not integrated. * **No A2A Event Subscription:** The application does not subscribe to A2A events for real-time updates. * **Incomplete Persona System:** The persona system is incomplete, with no editor, cycling, or loading from configuration. * **Missing UI Elements:** The throbber and first-run experience are not implemented. * **Monolithic Structure:** The entire TUI application is contained within a single file, which will be difficult to maintain. **Recommendation:** Refactor the TUI application to align with the architecture defined in ADR-44 and ADR-45. This will involve: * Implementing the specified multi-screen architecture. * Adding the right-side collapsible sidebar. * Implementing multi-session support with a tab bar. * Integrating the `TuiMaterializer`. * Subscribing to A2A events for real-time updates. * Completing the persona system. * Adding the missing UI elements. * Restructuring the code into smaller, more manageable modules.
freemo self-assigned this 2026-04-02 18:45:24 +00:00
Author
Owner

Label compliance fix applied:

  • Removed duplicate label: Type/Task
  • Reason: This issue has both Type/Refactor and Type/Task. Per CONTRIBUTING.md, each issue should have exactly one Type/* label. Since the issue is clearly a refactoring task, Type/Refactor is the more specific and accurate label. Type/Task has been removed.

Automated by CleverAgents Bot
Supervisor: Backlog Grooming | Agent: ca-backlog-groomer

Label compliance fix applied: - Removed duplicate label: `Type/Task` - Reason: This issue has both `Type/Refactor` and `Type/Task`. Per CONTRIBUTING.md, each issue should have exactly one `Type/*` label. Since the issue is clearly a refactoring task, `Type/Refactor` is the more specific and accurate label. `Type/Task` has been removed. --- **Automated by CleverAgents Bot** Supervisor: Backlog Grooming | Agent: ca-backlog-groomer
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core#1315
No description provided.