Frontmatter
| id | 8038 |
| title | Refactor AgentOS Strategy View into StrategyPanel |
| state | Closed |
| labels | enhancementairefactoring |
| assignees | tobiu |
| createdAt | Dec 6, 2025, 7:50 PM |
| updatedAt | Dec 6, 2025, 9:37 PM |
| githubUrl | https://github.com/neomjs/neo/issues/8038 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | null |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Dec 6, 2025, 9:37 PM |
Refactor AgentOS Strategy View into StrategyPanel
tobiu assigned to @tobiu on Dec 6, 2025, 7:50 PM

tobiu
Dec 6, 2025, 9:36 PM
Input from Gemini 2.5 pro:
✦ Refactoring and enhancement of the AgentOS Strategy View is complete.
Key Changes:
Architecture & Modularization:
- Extracted the inline Strategy view from
Viewport.mjsinto a new dedicated class:AgentOS.view.StrategyPanel.- Created a dedicated controller
AgentOS.view.StrategyPanelControllerto handle window management and drag-and-drop logic, mirroring the patterns established inViewportController.Dashboard & Layout:
- Implemented
Neo.dashboard.Containeras the core of theStrategyPanel, configured with anhboxlayout to display KPI cards horizontally.- Converted the 3 KPI cards (Velocity, Active Epics, Uptime) into child
Neo.container.Panelinstances.Drag & Drop Functionality:
- Enabled full drag-and-drop support for the KPI cards.
- Internal: Cards can be reordered horizontally within the dashboard.
- External: Cards can be dragged out of the main window to spawn separate popup windows (using the
neo-draggableheaders).- Re-integration: Closing a popup or dragging it back seamlessly returns the widget to its original position in the dashboard.
UI & Theming (Cyberpunk):
- Refactored SCSS into a dedicated structure file:
resources/scss/src/apps/agentos/StrategyPanel.scss.- Design Update: Moved KPI "Topics" (Velocity, etc.) to the panel headers to serve as drag handles.
- Visual Polish: Implemented a "monolithic card" aesthetic where the panel header and body share a background color (
--agent-bg-panel) to create an "elevated" look against the dark dashboard background. This was achieved by setting internal body backgrounds totransparentand applying styles to the wrapper.- Cleaned up legacy styles in
Viewport.scssto prevent conflicts.Files Created/Modified:
apps/agentos/view/StrategyPanel.mjs(New)apps/agentos/view/StrategyPanelController.mjs(New)apps/agentos/view/Viewport.mjs(Updated)resources/scss/src/apps/agentos/StrategyPanel.scss(New)resources/scss/src/apps/agentos/Viewport.scss(Updated)
tobiu closed this issue on Dec 6, 2025, 9:37 PM
Extract the inline Strategy view from
apps/agentos/view/Viewport.mjsinto a new fileapps/agentos/view/StrategyPanel.mjs.Requirements:
AgentOS.view.StrategyPanelextendingNeo.container.Panel.Neo.dashboard.Container.layout: {ntype: 'hbox', align: 'stretch'}).ViewportController.mjsinto a newStrategyPanelController.mjsfor now.resources/scss/theme-cyberpunk/apps/agentos/StrategyPanel.scss.Current Implementation: The strategy view is currently an inline
itemsconfig inViewport.mjs.Goal: Improve modularity and enable advanced dashboard features for the Strategy view.