@polderlabs/bizar 7.0.2 → 8.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +8 -0
- package/bizar-dash/DESIGN.md +729 -969
- package/bizar-dash/GLYPH.md +418 -0
- package/bizar-dash/PLAN.md +1135 -0
- package/bizar-dash/dist/assets/ActivityFeed-BRBtQOHB.js +6 -0
- package/bizar-dash/dist/assets/ActivityFeed-BRBtQOHB.js.map +1 -0
- package/bizar-dash/dist/assets/ActivityView-CwqhxBfh.js +1 -0
- package/bizar-dash/dist/assets/ActivityView-CwqhxBfh.js.map +1 -0
- package/bizar-dash/dist/assets/AgentActivity-6MxU-a9F.js +1 -0
- package/bizar-dash/dist/assets/AgentActivity-6MxU-a9F.js.map +1 -0
- package/bizar-dash/dist/assets/AgentsView-BYrOFdwl.js +8 -0
- package/bizar-dash/dist/assets/AgentsView-BYrOFdwl.js.map +1 -0
- package/bizar-dash/dist/assets/Badge-Cd61wsBa.js +1 -0
- package/bizar-dash/dist/assets/Badge-Cd61wsBa.js.map +1 -0
- package/bizar-dash/dist/assets/Card-C_bvqXdQ.js +1 -0
- package/bizar-dash/dist/assets/Card-C_bvqXdQ.js.map +1 -0
- package/bizar-dash/dist/assets/EmptyState-BWQuKnk9.js +1 -0
- package/bizar-dash/dist/assets/EmptyState-BWQuKnk9.js.map +1 -0
- package/bizar-dash/dist/assets/GoalsView-Dok0yt9S.js +11 -0
- package/bizar-dash/dist/assets/GoalsView-Dok0yt9S.js.map +1 -0
- package/bizar-dash/dist/assets/Grid-C62gCPqt.js +1 -0
- package/bizar-dash/dist/assets/Grid-C62gCPqt.js.map +1 -0
- package/bizar-dash/dist/assets/KanbanCard-CtTKP6ZX.js +21 -0
- package/bizar-dash/dist/assets/KanbanCard-CtTKP6ZX.js.map +1 -0
- package/bizar-dash/dist/assets/LibrariesView-BcyBQXiY.js +67 -0
- package/bizar-dash/dist/assets/LibrariesView-BcyBQXiY.js.map +1 -0
- package/bizar-dash/dist/assets/MemoryView-49wR4u-y.js +13 -0
- package/bizar-dash/dist/assets/MemoryView-49wR4u-y.js.map +1 -0
- package/bizar-dash/dist/assets/OverviewView-BtQ_UWYj.js +1 -0
- package/bizar-dash/dist/assets/OverviewView-BtQ_UWYj.js.map +1 -0
- package/bizar-dash/dist/assets/ProgressBar-CpvDeq9F.js +1 -0
- package/bizar-dash/dist/assets/ProgressBar-CpvDeq9F.js.map +1 -0
- package/bizar-dash/dist/assets/SettingsRow-DmIe5OUu.js +30 -0
- package/bizar-dash/dist/assets/SettingsRow-DmIe5OUu.js.map +1 -0
- package/bizar-dash/dist/assets/SettingsView-D1KmGWbi.js +48 -0
- package/bizar-dash/dist/assets/SettingsView-D1KmGWbi.js.map +1 -0
- package/bizar-dash/dist/assets/StatTile-BkIP32gG.js +11 -0
- package/bizar-dash/dist/assets/StatTile-BkIP32gG.js.map +1 -0
- package/bizar-dash/dist/assets/TasksView-Cba3GJ42.js +1 -0
- package/bizar-dash/dist/assets/TasksView-Cba3GJ42.js.map +1 -0
- package/bizar-dash/dist/assets/ViewHeader-D6c2cw1b.js +6 -0
- package/bizar-dash/dist/assets/ViewHeader-D6c2cw1b.js.map +1 -0
- package/bizar-dash/dist/assets/brain-DeoXNDE2.js +6 -0
- package/bizar-dash/dist/assets/brain-DeoXNDE2.js.map +1 -0
- package/bizar-dash/dist/assets/calendar-DRlQkGJc.js +6 -0
- package/bizar-dash/dist/assets/calendar-DRlQkGJc.js.map +1 -0
- package/bizar-dash/dist/assets/circle-check-DmYQ3vGp.js +6 -0
- package/bizar-dash/dist/assets/circle-check-DmYQ3vGp.js.map +1 -0
- package/bizar-dash/dist/assets/cmdk-BwN8hcKQ.js +80 -0
- package/bizar-dash/dist/assets/cmdk-BwN8hcKQ.js.map +1 -0
- package/bizar-dash/dist/assets/dnd-kit-DR2Qzzxk.js +5 -0
- package/bizar-dash/dist/assets/dnd-kit-DR2Qzzxk.js.map +1 -0
- package/bizar-dash/dist/assets/git-merge-OoqBKQer.js +6 -0
- package/bizar-dash/dist/assets/git-merge-OoqBKQer.js.map +1 -0
- package/bizar-dash/dist/assets/git-pull-request-CXBQTR2f.js +6 -0
- package/bizar-dash/dist/assets/git-pull-request-CXBQTR2f.js.map +1 -0
- package/bizar-dash/dist/assets/main-COdgjqbZ.css +1 -0
- package/bizar-dash/dist/assets/main-Cw6gybzS.js +109 -0
- package/bizar-dash/dist/assets/main-Cw6gybzS.js.map +1 -0
- package/bizar-dash/dist/assets/message-square-DUTeIQAR.js +6 -0
- package/bizar-dash/dist/assets/message-square-DUTeIQAR.js.map +1 -0
- package/bizar-dash/dist/assets/minus-CrStJTZ7.js +6 -0
- package/bizar-dash/dist/assets/minus-CrStJTZ7.js.map +1 -0
- package/bizar-dash/dist/assets/wrench-BJ1WIC4u.js +6 -0
- package/bizar-dash/dist/assets/wrench-BJ1WIC4u.js.map +1 -0
- package/bizar-dash/dist/{mobile.html → v8.html} +6 -9
- package/bizar-dash/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -0
- package/bizar-dash/src/server/server.mjs +1 -57
- package/bizar-dash/src/web/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -0
- package/bizar-dash/src/web/v8/App.tsx +188 -0
- package/bizar-dash/src/web/v8/__tests__/App.test.tsx +102 -0
- package/bizar-dash/src/web/v8/__tests__/AppShell.test.tsx +79 -0
- package/bizar-dash/src/web/v8/__tests__/PageSkeleton.test.tsx +12 -0
- package/bizar-dash/src/web/v8/__tests__/SettingsView.test.tsx +84 -0
- package/bizar-dash/src/web/v8/__tests__/Sidebar.test.tsx +95 -0
- package/bizar-dash/src/web/v8/__tests__/activity.test.tsx +63 -0
- package/bizar-dash/src/web/v8/__tests__/agents.test.tsx +90 -0
- package/bizar-dash/src/web/v8/__tests__/controls.test.tsx +135 -0
- package/bizar-dash/src/web/v8/__tests__/cx.test.ts +25 -0
- package/bizar-dash/src/web/v8/__tests__/data.test.tsx +293 -0
- package/bizar-dash/src/web/v8/__tests__/feedback.test.tsx +213 -0
- package/bizar-dash/src/web/v8/__tests__/goals.test.tsx +105 -0
- package/bizar-dash/src/web/v8/__tests__/kanban.test.tsx +176 -0
- package/bizar-dash/src/web/v8/__tests__/libraries.test.tsx +70 -0
- package/bizar-dash/src/web/v8/__tests__/memory.test.tsx +60 -0
- package/bizar-dash/src/web/v8/__tests__/navigation.test.tsx +137 -0
- package/bizar-dash/src/web/v8/__tests__/settings.test.tsx +104 -0
- package/bizar-dash/src/web/v8/__tests__/theme.test.tsx +98 -0
- package/bizar-dash/src/web/v8/__tests__/views.test.tsx +112 -0
- package/bizar-dash/src/web/v8/main.tsx +28 -0
- package/bizar-dash/src/web/v8/shell/AppShell.tsx +90 -0
- package/bizar-dash/src/web/v8/shell/PageSkeleton.tsx +29 -0
- package/bizar-dash/src/web/v8/shell/Sidebar.tsx +361 -0
- package/bizar-dash/src/web/v8/shell/StatusBar.tsx +63 -0
- package/bizar-dash/src/web/v8/shell/Topbar.tsx +113 -0
- package/bizar-dash/src/web/v8/shell/index.ts +15 -0
- package/bizar-dash/src/web/v8/ui/activity/ActivityFeed.tsx +137 -0
- package/bizar-dash/src/web/v8/ui/agents/AgentActivity.tsx +101 -0
- package/bizar-dash/src/web/v8/ui/agents/AgentCard.tsx +158 -0
- package/bizar-dash/src/web/v8/ui/controls/Button.tsx +141 -0
- package/bizar-dash/src/web/v8/ui/controls/ButtonGroup.tsx +32 -0
- package/bizar-dash/src/web/v8/ui/controls/Checkbox.tsx +49 -0
- package/bizar-dash/src/web/v8/ui/controls/Field.tsx +78 -0
- package/bizar-dash/src/web/v8/ui/controls/Form.tsx +23 -0
- package/bizar-dash/src/web/v8/ui/controls/IconButton.tsx +112 -0
- package/bizar-dash/src/web/v8/ui/controls/Input.tsx +94 -0
- package/bizar-dash/src/web/v8/ui/controls/RadioGroup.tsx +74 -0
- package/bizar-dash/src/web/v8/ui/controls/Select.tsx +171 -0
- package/bizar-dash/src/web/v8/ui/controls/Slider.tsx +68 -0
- package/bizar-dash/src/web/v8/ui/controls/Switch.tsx +56 -0
- package/bizar-dash/src/web/v8/ui/controls/Textarea.tsx +64 -0
- package/bizar-dash/src/web/v8/ui/controls/Toggle.tsx +36 -0
- package/bizar-dash/src/web/v8/ui/controls/ToggleGroup.tsx +85 -0
- package/bizar-dash/src/web/v8/ui/data/Accordion.tsx +134 -0
- package/bizar-dash/src/web/v8/ui/data/Avatar.tsx +175 -0
- package/bizar-dash/src/web/v8/ui/data/Badge.tsx +93 -0
- package/bizar-dash/src/web/v8/ui/data/BarList.tsx +101 -0
- package/bizar-dash/src/web/v8/ui/data/Card.tsx +140 -0
- package/bizar-dash/src/web/v8/ui/data/Chip.tsx +96 -0
- package/bizar-dash/src/web/v8/ui/data/Kbd.tsx +42 -0
- package/bizar-dash/src/web/v8/ui/data/ProgressBar.tsx +93 -0
- package/bizar-dash/src/web/v8/ui/data/Sparkline.tsx +98 -0
- package/bizar-dash/src/web/v8/ui/data/StatTile.tsx +150 -0
- package/bizar-dash/src/web/v8/ui/data/Table.tsx +170 -0
- package/bizar-dash/src/web/v8/ui/data/Timeline.tsx +130 -0
- package/bizar-dash/src/web/v8/ui/data/ViewHeader.tsx +122 -0
- package/bizar-dash/src/web/v8/ui/feedback/Alert.tsx +95 -0
- package/bizar-dash/src/web/v8/ui/feedback/Banner.tsx +39 -0
- package/bizar-dash/src/web/v8/ui/feedback/ContextMenu.tsx +143 -0
- package/bizar-dash/src/web/v8/ui/feedback/Dialog.tsx +149 -0
- package/bizar-dash/src/web/v8/ui/feedback/Drawer.tsx +8 -0
- package/bizar-dash/src/web/v8/ui/feedback/DropdownMenu.tsx +231 -0
- package/bizar-dash/src/web/v8/ui/feedback/EmptyState.tsx +48 -0
- package/bizar-dash/src/web/v8/ui/feedback/Popover.tsx +56 -0
- package/bizar-dash/src/web/v8/ui/feedback/Sheet.tsx +103 -0
- package/bizar-dash/src/web/v8/ui/feedback/Skeleton.tsx +67 -0
- package/bizar-dash/src/web/v8/ui/feedback/Spinner.tsx +30 -0
- package/bizar-dash/src/web/v8/ui/feedback/Toast.tsx +66 -0
- package/bizar-dash/src/web/v8/ui/feedback/Tooltip.tsx +89 -0
- package/bizar-dash/src/web/v8/ui/goals/GoalCard.tsx +176 -0
- package/bizar-dash/src/web/v8/ui/goals/KeyResult.tsx +115 -0
- package/bizar-dash/src/web/v8/ui/index.ts +322 -0
- package/bizar-dash/src/web/v8/ui/kanban/KanbanBoard.tsx +80 -0
- package/bizar-dash/src/web/v8/ui/kanban/KanbanCard.tsx +247 -0
- package/bizar-dash/src/web/v8/ui/kanban/KanbanColumn.tsx +181 -0
- package/bizar-dash/src/web/v8/ui/kanban/KanbanContextMenu.tsx +122 -0
- package/bizar-dash/src/web/v8/ui/kanban/KanbanQuickAdd.tsx +141 -0
- package/bizar-dash/src/web/v8/ui/libraries/LibraryGrid.tsx +30 -0
- package/bizar-dash/src/web/v8/ui/libraries/LibraryItem.tsx +161 -0
- package/bizar-dash/src/web/v8/ui/memory/MemoryVault.tsx +144 -0
- package/bizar-dash/src/web/v8/ui/navigation/CommandPalette.tsx +224 -0
- package/bizar-dash/src/web/v8/ui/navigation/NavLink.tsx +81 -0
- package/bizar-dash/src/web/v8/ui/navigation/Pagination.tsx +164 -0
- package/bizar-dash/src/web/v8/ui/navigation/Tabs.tsx +128 -0
- package/bizar-dash/src/web/v8/ui/navigation/useCommandPaletteHotkey.test.ts +79 -0
- package/bizar-dash/src/web/v8/ui/primitives/Box.tsx +144 -0
- package/bizar-dash/src/web/v8/ui/primitives/Center.tsx +40 -0
- package/bizar-dash/src/web/v8/ui/primitives/Cluster.tsx +67 -0
- package/bizar-dash/src/web/v8/ui/primitives/Grid.tsx +104 -0
- package/bizar-dash/src/web/v8/ui/primitives/Inline.tsx +77 -0
- package/bizar-dash/src/web/v8/ui/primitives/Portal.tsx +33 -0
- package/bizar-dash/src/web/v8/ui/primitives/ScrollArea.tsx +62 -0
- package/bizar-dash/src/web/v8/ui/primitives/Separator.tsx +42 -0
- package/bizar-dash/src/web/v8/ui/primitives/Stack.tsx +73 -0
- package/bizar-dash/src/web/v8/ui/primitives/VisuallyHidden.tsx +49 -0
- package/bizar-dash/src/web/v8/ui/settings/SettingsNav.tsx +91 -0
- package/bizar-dash/src/web/v8/ui/settings/SettingsRow.tsx +88 -0
- package/bizar-dash/src/web/v8/ui/settings/SettingsSection.tsx +109 -0
- package/bizar-dash/src/web/v8/ui/styles/globals.css +220 -0
- package/bizar-dash/src/web/v8/ui/styles/reset.css +57 -0
- package/bizar-dash/src/web/v8/ui/styles/tokens.css +217 -0
- package/bizar-dash/src/web/v8/ui/theme/DensityProvider.test.tsx +74 -0
- package/bizar-dash/src/web/v8/ui/theme/DensityProvider.tsx +66 -0
- package/bizar-dash/src/web/v8/ui/theme/ThemeProvider.test.tsx +86 -0
- package/bizar-dash/src/web/v8/ui/theme/ThemeProvider.tsx +94 -0
- package/bizar-dash/src/web/v8/ui/theme/ThemeToggle.tsx +88 -0
- package/bizar-dash/src/web/v8/ui/theme/useDensity.ts +15 -0
- package/bizar-dash/src/web/v8/ui/theme/useTheme.ts +16 -0
- package/bizar-dash/src/web/v8/ui/utils/cx.ts +19 -0
- package/bizar-dash/src/web/v8/views/Activity/ActivityView.tsx +33 -0
- package/bizar-dash/src/web/v8/views/Agents/AgentsView.tsx +108 -0
- package/bizar-dash/src/web/v8/views/CommandPalette/AppCommandPalette.test.tsx +142 -0
- package/bizar-dash/src/web/v8/views/CommandPalette/AppCommandPalette.tsx +144 -0
- package/bizar-dash/src/web/v8/views/Goals/GoalsView.tsx +84 -0
- package/bizar-dash/src/web/v8/views/Libraries/LibrariesView.tsx +41 -0
- package/bizar-dash/src/web/v8/views/Memory/MemoryView.tsx +61 -0
- package/bizar-dash/src/web/v8/views/Overview/OverviewView.tsx +92 -0
- package/bizar-dash/src/web/v8/views/Router.tsx +96 -0
- package/bizar-dash/src/web/v8/views/Settings/SettingsView.tsx +305 -0
- package/bizar-dash/src/web/v8/views/Tasks/CommandPalettePlaceholder.tsx +106 -0
- package/bizar-dash/src/web/v8/views/Tasks/TasksKanbanPlaceholder.tsx +62 -0
- package/bizar-dash/src/web/v8/views/Tasks/TasksView.tsx +74 -0
- package/bizar-dash/src/web/v8/vite-env.d.ts +15 -0
- package/bizar-dash/src/web/{mobile.html → v8.html} +4 -7
- package/bizar-dash/tests/settings-layout.test.tsx +2 -2
- package/bizar-dash/tests/settings-nav.test.tsx +6 -6
- package/bizar-dash/tests/setup.ts +26 -0
- package/bizar-dash/vite.config.ts +26 -2
- package/bizar-dash/vitest.config.ts +5 -3
- package/cli/provision-claude.mjs +108 -5
- package/package.json +36 -3
- package/bizar-dash/dist/assets/EnvVarsSection-BfhAz3ax.js +0 -114
- package/bizar-dash/dist/assets/EnvVarsSection-BfhAz3ax.js.map +0 -1
- package/bizar-dash/dist/assets/MobileChat-DLWdv6tQ.js +0 -1
- package/bizar-dash/dist/assets/MobileChat-DLWdv6tQ.js.map +0 -1
- package/bizar-dash/dist/assets/MobileSettings-Bxv62uPY.js +0 -1
- package/bizar-dash/dist/assets/MobileSettings-Bxv62uPY.js.map +0 -1
- package/bizar-dash/dist/assets/Toast-ATSAmbdi.js +0 -26
- package/bizar-dash/dist/assets/Toast-ATSAmbdi.js.map +0 -1
- package/bizar-dash/dist/assets/__vite-browser-external-BIHI7g3E.js +0 -1
- package/bizar-dash/dist/assets/__vite-browser-external-BIHI7g3E.js.map +0 -1
- package/bizar-dash/dist/assets/main-306CZfn6.js +0 -430
- package/bizar-dash/dist/assets/main-306CZfn6.js.map +0 -1
- package/bizar-dash/dist/assets/main-G3bNDpY3.css +0 -1
- package/bizar-dash/dist/assets/mobile-C_naUN91.js +0 -1
- package/bizar-dash/dist/assets/mobile-C_naUN91.js.map +0 -1
- package/bizar-dash/dist/assets/mobile-layout-BWLtwtfQ.css +0 -1
- package/bizar-dash/dist/assets/mobile-layout-GZ3bE8L6.js +0 -211
- package/bizar-dash/dist/assets/mobile-layout-GZ3bE8L6.js.map +0 -1
- package/bizar-dash/dist/assets/useSlashCommands-BOwD7lNb.js +0 -65
- package/bizar-dash/dist/assets/useSlashCommands-BOwD7lNb.js.map +0 -1
- package/bizar-dash/dist/index.html +0 -43
- package/bizar-dash/src/web/App.tsx +0 -915
- package/bizar-dash/src/web/MobileApp.tsx +0 -414
- package/bizar-dash/src/web/components/ArtifactCreateDialog.tsx +0 -95
- package/bizar-dash/src/web/components/ArtifactListDialog.tsx +0 -55
- package/bizar-dash/src/web/components/ArtifactViewer.tsx +0 -144
- package/bizar-dash/src/web/components/AuditDialog.tsx +0 -79
- package/bizar-dash/src/web/components/AutosaveField.tsx +0 -50
- package/bizar-dash/src/web/components/BackupRestore.tsx +0 -330
- package/bizar-dash/src/web/components/BgStatusBadge.tsx +0 -32
- package/bizar-dash/src/web/components/Button.tsx +0 -56
- package/bizar-dash/src/web/components/CanvasContextMenu.tsx +0 -68
- package/bizar-dash/src/web/components/Card.tsx +0 -40
- package/bizar-dash/src/web/components/CollapsibleSection.tsx +0 -72
- package/bizar-dash/src/web/components/CommandDialog.tsx +0 -66
- package/bizar-dash/src/web/components/DoctorPanel.tsx +0 -160
- package/bizar-dash/src/web/components/EmptyState.tsx +0 -30
- package/bizar-dash/src/web/components/EnvVarManager.tsx +0 -430
- package/bizar-dash/src/web/components/EvalDiff.tsx +0 -157
- package/bizar-dash/src/web/components/EvalExportButton.tsx +0 -27
- package/bizar-dash/src/web/components/EvalRunCard.tsx +0 -78
- package/bizar-dash/src/web/components/FileBrowser.tsx +0 -633
- package/bizar-dash/src/web/components/HeadroomSettings.tsx +0 -418
- package/bizar-dash/src/web/components/HeadroomStatus.tsx +0 -158
- package/bizar-dash/src/web/components/HelpDialog.tsx +0 -55
- package/bizar-dash/src/web/components/InviteDialog.tsx +0 -205
- package/bizar-dash/src/web/components/KillConfirmDialog.tsx +0 -88
- package/bizar-dash/src/web/components/MobileBottomNav.tsx +0 -38
- package/bizar-dash/src/web/components/MobileDrawer.tsx +0 -68
- package/bizar-dash/src/web/components/MobileHeader.tsx +0 -50
- package/bizar-dash/src/web/components/MobileLayout.tsx +0 -63
- package/bizar-dash/src/web/components/Modal.tsx +0 -215
- package/bizar-dash/src/web/components/Notifications.tsx +0 -242
- package/bizar-dash/src/web/components/ScheduleTemplateCard.tsx +0 -72
- package/bizar-dash/src/web/components/ScreenshotCapture.tsx +0 -138
- package/bizar-dash/src/web/components/ScreenshotOCR.tsx +0 -42
- package/bizar-dash/src/web/components/SearchModal.tsx +0 -227
- package/bizar-dash/src/web/components/SettingsNav.tsx +0 -112
- package/bizar-dash/src/web/components/SettingsSearch.tsx +0 -328
- package/bizar-dash/src/web/components/Sidebar.tsx +0 -89
- package/bizar-dash/src/web/components/Spinner.tsx +0 -19
- package/bizar-dash/src/web/components/StatusBadge.tsx +0 -56
- package/bizar-dash/src/web/components/Tag.tsx +0 -41
- package/bizar-dash/src/web/components/TailscaleSettings.tsx +0 -161
- package/bizar-dash/src/web/components/TaskCard.tsx +0 -69
- package/bizar-dash/src/web/components/TaskCreateSheet.tsx +0 -76
- package/bizar-dash/src/web/components/Toast.tsx +0 -150
- package/bizar-dash/src/web/components/Toggle.tsx +0 -31
- package/bizar-dash/src/web/components/Topbar.tsx +0 -410
- package/bizar-dash/src/web/components/UsageChart.tsx +0 -250
- package/bizar-dash/src/web/components/UsageTable.tsx +0 -90
- package/bizar-dash/src/web/components/VirtualList.tsx +0 -53
- package/bizar-dash/src/web/components/VisualPlanDialog.tsx +0 -58
- package/bizar-dash/src/web/components/VoiceNotesPanel.tsx +0 -211
- package/bizar-dash/src/web/components/VoiceRecorder.tsx +0 -105
- package/bizar-dash/src/web/components/WorkspaceSelector.tsx +0 -158
- package/bizar-dash/src/web/components/agents/CommunicationLog.tsx +0 -126
- package/bizar-dash/src/web/components/agents/DependencyGraph.tsx +0 -163
- package/bizar-dash/src/web/components/agents/QualityGates.tsx +0 -123
- package/bizar-dash/src/web/components/agents/RealTimeEventLog.tsx +0 -127
- package/bizar-dash/src/web/components/agents/RoutingDecisions.test.tsx +0 -148
- package/bizar-dash/src/web/components/agents/RoutingDecisions.tsx +0 -160
- package/bizar-dash/src/web/components/background/AttachButton.tsx +0 -96
- package/bizar-dash/src/web/components/background/TmuxAttachCard.tsx +0 -122
- package/bizar-dash/src/web/components/chat/AgentChip.tsx +0 -68
- package/bizar-dash/src/web/components/chat/AgentNode.tsx +0 -127
- package/bizar-dash/src/web/components/chat/AgentTree.tsx +0 -80
- package/bizar-dash/src/web/components/chat/ChatBubble.tsx +0 -60
- package/bizar-dash/src/web/components/chat/ChatComposer.tsx +0 -72
- package/bizar-dash/src/web/components/chat/ChatInfoPanel.tsx +0 -370
- package/bizar-dash/src/web/components/chat/ChatRail.tsx +0 -387
- package/bizar-dash/src/web/components/chat/ChatThread.tsx +0 -127
- package/bizar-dash/src/web/components/chat/ChatTopBar.tsx +0 -50
- package/bizar-dash/src/web/components/chat/Composer.tsx +0 -166
- package/bizar-dash/src/web/components/chat/ConfirmModal.tsx +0 -54
- package/bizar-dash/src/web/components/chat/EmptyState.tsx +0 -21
- package/bizar-dash/src/web/components/chat/FirstRunGreeting.tsx +0 -18
- package/bizar-dash/src/web/components/chat/FloatingComposer.tsx +0 -38
- package/bizar-dash/src/web/components/chat/InfoPanel.tsx +0 -184
- package/bizar-dash/src/web/components/chat/JumpToLatest.tsx +0 -58
- package/bizar-dash/src/web/components/chat/LoadingSkeleton.tsx +0 -19
- package/bizar-dash/src/web/components/chat/MessageBlock.tsx +0 -260
- package/bizar-dash/src/web/components/chat/MessageBubble.tsx +0 -60
- package/bizar-dash/src/web/components/chat/SessionList.tsx +0 -163
- package/bizar-dash/src/web/components/chat/SessionRowMenu.tsx +0 -206
- package/bizar-dash/src/web/components/chat/StreamingIndicator.tsx +0 -37
- package/bizar-dash/src/web/components/chat/SuggestionCards.tsx +0 -55
- package/bizar-dash/src/web/components/chat/WelcomeScreen.tsx +0 -36
- package/bizar-dash/src/web/components/chat/_legacy.ts +0 -30
- package/bizar-dash/src/web/components/chat/index.ts +0 -31
- package/bizar-dash/src/web/components/chat/useAutoGrowTextarea.ts +0 -18
- package/bizar-dash/src/web/components/chat/useChat.ts +0 -1190
- package/bizar-dash/src/web/components/chat/useSlashCommands.ts +0 -47
- package/bizar-dash/src/web/components/goals/GoalInput.tsx +0 -86
- package/bizar-dash/src/web/components/goals/PlanVisualization.tsx +0 -111
- package/bizar-dash/src/web/components/tasks/BacklogPanel.css +0 -109
- package/bizar-dash/src/web/components/tasks/BacklogPanel.tsx +0 -209
- package/bizar-dash/src/web/hooks/useAutosave.ts +0 -107
- package/bizar-dash/src/web/hooks/useI18n.ts +0 -13
- package/bizar-dash/src/web/index.html +0 -37
- package/bizar-dash/src/web/lib/api.ts +0 -237
- package/bizar-dash/src/web/lib/goapPlanner.ts +0 -614
- package/bizar-dash/src/web/lib/i18n.ts +0 -25
- package/bizar-dash/src/web/lib/logger.ts +0 -30
- package/bizar-dash/src/web/lib/markdown.tsx +0 -59
- package/bizar-dash/src/web/lib/search.ts +0 -115
- package/bizar-dash/src/web/lib/types.ts +0 -894
- package/bizar-dash/src/web/lib/utils.ts +0 -114
- package/bizar-dash/src/web/lib/ws.ts +0 -177
- package/bizar-dash/src/web/locales/en.json +0 -52
- package/bizar-dash/src/web/main.tsx +0 -43
- package/bizar-dash/src/web/mobile/MobileApp.tsx +0 -309
- package/bizar-dash/src/web/mobile/MobileBottomNav.tsx +0 -38
- package/bizar-dash/src/web/mobile/MobileChat.tsx +0 -138
- package/bizar-dash/src/web/mobile/MobileDoctor.tsx +0 -80
- package/bizar-dash/src/web/mobile/MobileEval.tsx +0 -167
- package/bizar-dash/src/web/mobile/MobileMemory.tsx +0 -108
- package/bizar-dash/src/web/mobile/MobileOverview.tsx +0 -213
- package/bizar-dash/src/web/mobile/MobileSettings.tsx +0 -251
- package/bizar-dash/src/web/mobile/MobileTasks.tsx +0 -94
- package/bizar-dash/src/web/mobile/MobileTopbar.tsx +0 -115
- package/bizar-dash/src/web/mobile/components/MobileBottomSheet.tsx +0 -182
- package/bizar-dash/src/web/mobile/components/MobileListItem.tsx +0 -64
- package/bizar-dash/src/web/mobile/components/MobileModal.tsx +0 -123
- package/bizar-dash/src/web/mobile/views/MobileActivity.tsx +0 -273
- package/bizar-dash/src/web/mobile/views/MobileAgents.tsx +0 -374
- package/bizar-dash/src/web/mobile/views/MobileArtifactCanvas.tsx +0 -439
- package/bizar-dash/src/web/mobile/views/MobileArtifacts.tsx +0 -143
- package/bizar-dash/src/web/mobile/views/MobileChat.tsx +0 -257
- package/bizar-dash/src/web/mobile/views/MobileConfig.tsx +0 -175
- package/bizar-dash/src/web/mobile/views/MobileHistory.tsx +0 -191
- package/bizar-dash/src/web/mobile/views/MobileMods.tsx +0 -149
- package/bizar-dash/src/web/mobile/views/MobileMore.tsx +0 -121
- package/bizar-dash/src/web/mobile/views/MobileNotifications.tsx +0 -137
- package/bizar-dash/src/web/mobile/views/MobilePlans.tsx +0 -26
- package/bizar-dash/src/web/mobile/views/MobileSchedules.tsx +0 -685
- package/bizar-dash/src/web/mobile/views/MobileSearchModal.tsx +0 -172
- package/bizar-dash/src/web/mobile/views/MobileSettings.tsx +0 -363
- package/bizar-dash/src/web/mobile/views/MobileSkills.tsx +0 -153
- package/bizar-dash/src/web/mobile/views/MobileTasks.tsx +0 -564
- package/bizar-dash/src/web/mobile/views/QrCodePanel.tsx +0 -69
- package/bizar-dash/src/web/mobile.tsx +0 -14
- package/bizar-dash/src/web/styles/agents-redesign.css +0 -311
- package/bizar-dash/src/web/styles/chat.css +0 -1740
- package/bizar-dash/src/web/styles/glyphs.css +0 -960
- package/bizar-dash/src/web/styles/main.css +0 -10391
- package/bizar-dash/src/web/styles/memory.css +0 -1182
- package/bizar-dash/src/web/styles/minimax-usage.css +0 -842
- package/bizar-dash/src/web/styles/mobile-chat.css +0 -5
- package/bizar-dash/src/web/styles/mobile-layout.css +0 -233
- package/bizar-dash/src/web/styles/mobile.css +0 -2181
- package/bizar-dash/src/web/styles/settings.css +0 -795
- package/bizar-dash/src/web/styles/skills.css +0 -302
- package/bizar-dash/src/web/styles/tasks-redesign.css +0 -253
- package/bizar-dash/src/web/styles/tasks.css +0 -605
- package/bizar-dash/src/web/ui/controls/Button.tsx +0 -77
- package/bizar-dash/src/web/ui/controls/Checkbox.tsx +0 -95
- package/bizar-dash/src/web/ui/controls/IconButton.tsx +0 -66
- package/bizar-dash/src/web/ui/controls/Kbd.tsx +0 -24
- package/bizar-dash/src/web/ui/controls/NumberInput.tsx +0 -77
- package/bizar-dash/src/web/ui/controls/RadioGroup.tsx +0 -109
- package/bizar-dash/src/web/ui/controls/SearchInput.tsx +0 -91
- package/bizar-dash/src/web/ui/controls/Select.tsx +0 -92
- package/bizar-dash/src/web/ui/controls/Slider.tsx +0 -70
- package/bizar-dash/src/web/ui/controls/TextInput.tsx +0 -67
- package/bizar-dash/src/web/ui/controls/Textarea.tsx +0 -56
- package/bizar-dash/src/web/ui/controls/Toggle.tsx +0 -79
- package/bizar-dash/src/web/ui/controls/controls.css +0 -476
- package/bizar-dash/src/web/ui/controls/index.ts +0 -35
- package/bizar-dash/src/web/ui/data/BarChart.tsx +0 -60
- package/bizar-dash/src/web/ui/data/DataTable.tsx +0 -216
- package/bizar-dash/src/web/ui/data/EmptyState.tsx +0 -60
- package/bizar-dash/src/web/ui/data/ErrorState.tsx +0 -56
- package/bizar-dash/src/web/ui/data/KeyValueList.tsx +0 -106
- package/bizar-dash/src/web/ui/data/LoadingState.tsx +0 -65
- package/bizar-dash/src/web/ui/data/Sparkline.tsx +0 -87
- package/bizar-dash/src/web/ui/data/StatTile.tsx +0 -87
- package/bizar-dash/src/web/ui/data/data.css +0 -535
- package/bizar-dash/src/web/ui/data/index.ts +0 -31
- package/bizar-dash/src/web/ui/feedback/Badge.tsx +0 -49
- package/bizar-dash/src/web/ui/feedback/Dialog.tsx +0 -209
- package/bizar-dash/src/web/ui/feedback/ProgressBar.tsx +0 -69
- package/bizar-dash/src/web/ui/feedback/StatusDot.tsx +0 -50
- package/bizar-dash/src/web/ui/feedback/Toast.tsx +0 -200
- package/bizar-dash/src/web/ui/feedback/Tooltip.tsx +0 -126
- package/bizar-dash/src/web/ui/feedback/feedback.css +0 -314
- package/bizar-dash/src/web/ui/feedback/index.ts +0 -43
- package/bizar-dash/src/web/ui/index.ts +0 -56
- package/bizar-dash/src/web/ui/layout/AppShell.tsx +0 -51
- package/bizar-dash/src/web/ui/layout/Breadcrumbs.tsx +0 -97
- package/bizar-dash/src/web/ui/layout/Panel.tsx +0 -73
- package/bizar-dash/src/web/ui/layout/PanelHeader.tsx +0 -39
- package/bizar-dash/src/web/ui/layout/Sidebar.tsx +0 -131
- package/bizar-dash/src/web/ui/layout/Tabs.tsx +0 -133
- package/bizar-dash/src/web/ui/layout/Topbar.tsx +0 -42
- package/bizar-dash/src/web/ui/layout/ViewHeader.tsx +0 -48
- package/bizar-dash/src/web/ui/layout/index.ts +0 -34
- package/bizar-dash/src/web/ui/layout/layout.css +0 -464
- package/bizar-dash/src/web/ui/navigation/CommandPalette.tsx +0 -199
- package/bizar-dash/src/web/ui/navigation/NavGroup.tsx +0 -95
- package/bizar-dash/src/web/ui/navigation/NavLink.tsx +0 -93
- package/bizar-dash/src/web/ui/navigation/index.ts +0 -17
- package/bizar-dash/src/web/ui/navigation/navigation.css +0 -343
- package/bizar-dash/src/web/ui/primitives/Box.tsx +0 -91
- package/bizar-dash/src/web/ui/primitives/Grid.tsx +0 -49
- package/bizar-dash/src/web/ui/primitives/Inline.tsx +0 -55
- package/bizar-dash/src/web/ui/primitives/Separator.tsx +0 -46
- package/bizar-dash/src/web/ui/primitives/Stack.tsx +0 -54
- package/bizar-dash/src/web/ui/primitives/VisuallyHidden.tsx +0 -26
- package/bizar-dash/src/web/ui/primitives/index.ts +0 -23
- package/bizar-dash/src/web/ui/primitives/primitives.css +0 -183
- package/bizar-dash/src/web/ui/styles/globals.css +0 -86
- package/bizar-dash/src/web/ui/styles/reset.css +0 -125
- package/bizar-dash/src/web/ui/styles/tokens.css +0 -208
- package/bizar-dash/src/web/ui/theme/ThemeProvider.tsx +0 -142
- package/bizar-dash/src/web/ui/theme/tokens.ts +0 -131
- package/bizar-dash/src/web/ui/theme/useTheme.ts +0 -22
- package/bizar-dash/src/web/ui/utils/cx.ts +0 -42
- package/bizar-dash/src/web/views/Activity.tsx +0 -1221
- package/bizar-dash/src/web/views/Agents.tsx +0 -964
- package/bizar-dash/src/web/views/Artifacts.tsx +0 -1494
- package/bizar-dash/src/web/views/BackgroundAgents.tsx +0 -822
- package/bizar-dash/src/web/views/Chat.tsx +0 -532
- package/bizar-dash/src/web/views/Config.tsx +0 -3
- package/bizar-dash/src/web/views/Doctor.tsx +0 -317
- package/bizar-dash/src/web/views/Eval.tsx +0 -372
- package/bizar-dash/src/web/views/EvalReport.tsx +0 -353
- package/bizar-dash/src/web/views/GoalPlanner.tsx +0 -158
- package/bizar-dash/src/web/views/Harness.tsx +0 -306
- package/bizar-dash/src/web/views/History.tsx +0 -353
- package/bizar-dash/src/web/views/Memory.tsx +0 -161
- package/bizar-dash/src/web/views/MiniMaxUsage.tsx +0 -942
- package/bizar-dash/src/web/views/ModView.tsx +0 -207
- package/bizar-dash/src/web/views/Mods.tsx +0 -706
- package/bizar-dash/src/web/views/Overview.tsx +0 -1364
- package/bizar-dash/src/web/views/Providers.tsx +0 -302
- package/bizar-dash/src/web/views/Schedules.tsx +0 -902
- package/bizar-dash/src/web/views/Settings.tsx +0 -308
- package/bizar-dash/src/web/views/Skills.tsx +0 -383
- package/bizar-dash/src/web/views/SpawnAgentModal.tsx +0 -221
- package/bizar-dash/src/web/views/Tasks.tsx +0 -789
- package/bizar-dash/src/web/views/Workspace.tsx +0 -294
- package/bizar-dash/src/web/views/glyphs/GlyphRenderer.tsx +0 -844
- package/bizar-dash/src/web/views/glyphs/components.tsx +0 -1098
- package/bizar-dash/src/web/views/memory/ConfigPanel.tsx +0 -426
- package/bizar-dash/src/web/views/memory/FromScreenshotPanel.tsx +0 -23
- package/bizar-dash/src/web/views/memory/GitSyncPanel.tsx +0 -220
- package/bizar-dash/src/web/views/memory/LightragPanel.tsx +0 -310
- package/bizar-dash/src/web/views/memory/MemoryGraphLegend.tsx +0 -29
- package/bizar-dash/src/web/views/memory/MemoryGraphPanel.tsx +0 -192
- package/bizar-dash/src/web/views/memory/MemoryGraphView.tsx +0 -336
- package/bizar-dash/src/web/views/memory/MemoryOverview.tsx +0 -367
- package/bizar-dash/src/web/views/memory/MemoryStatusCard.tsx +0 -160
- package/bizar-dash/src/web/views/memory/ObsidianPanel.tsx +0 -650
- package/bizar-dash/src/web/views/memory/SemanticSearchPanel.tsx +0 -197
- package/bizar-dash/src/web/views/memory/VaultFromClipboardPanel.tsx +0 -101
- package/bizar-dash/src/web/views/settings/ActivitySection.tsx +0 -205
- package/bizar-dash/src/web/views/settings/AgentSection.tsx +0 -305
- package/bizar-dash/src/web/views/settings/AuthSection.tsx +0 -159
- package/bizar-dash/src/web/views/settings/EnvVarsSection.tsx +0 -15
- package/bizar-dash/src/web/views/settings/GeneralSection.tsx +0 -128
- package/bizar-dash/src/web/views/settings/HeadroomSection.tsx +0 -39
- package/bizar-dash/src/web/views/settings/MemorySection.tsx +0 -154
- package/bizar-dash/src/web/views/settings/NetworkSection.tsx +0 -87
- package/bizar-dash/src/web/views/settings/NotificationsSection.tsx +0 -34
- package/bizar-dash/src/web/views/settings/SystemLlmSection.tsx +0 -81
- package/bizar-dash/src/web/views/settings/ThemeSection.tsx +0 -168
- package/bizar-dash/src/web/views/settings/UpdatesSection.tsx +0 -256
- package/bizar-dash/src/web/views/settings/WorkspacesSection.tsx +0 -189
|
@@ -0,0 +1,418 @@
|
|
|
1
|
+
# GLYPH.md — Visual Summary · Bizar Dashboard v8
|
|
2
|
+
|
|
3
|
+
> A single-page visual rendering of the v8 design and plan. Best viewed
|
|
4
|
+
> in a monospace font (Inter Mono, JetBrains Mono, Menlo, Consolas).
|
|
5
|
+
> Width: 100 columns. Height: ~110 rows.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## 1 · The mark
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
██████ ██ ██ ███████ ███████
|
|
14
|
+
██ ██ ████ ██ ██
|
|
15
|
+
██████ ██ █████ ███████
|
|
16
|
+
██ ████ ██ ██
|
|
17
|
+
██████ ██ ██ ███████ ███████
|
|
18
|
+
|
|
19
|
+
v 8 . 0 . 0
|
|
20
|
+
B I Z A R D A S H B O A R D
|
|
21
|
+
|
|
22
|
+
░ the green mark · single accent
|
|
23
|
+
░ OKLch · light + dark peer
|
|
24
|
+
░ gradients banned · density first
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
The mark is a stylized `B` (for Bizar) formed from solid blocks, set in
|
|
29
|
+
the accent green (`oklch(0.527 0.154 150.069)` light /
|
|
30
|
+
`oklch(0.448 0.119 151.328)` dark). No fill, no gradient, no glow. A
|
|
31
|
+
single shape; the accent earns its keep by being the only color that
|
|
32
|
+
gets to be loud.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## 2 · The shell
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
┌──────────────────────────────────────────────────────────────────────────────┐
|
|
40
|
+
│ ▣ Bizar │ workspace ▾ Tasks › Kanban ⌕ search 🔔 │
|
|
41
|
+
│ │
|
|
42
|
+
│ ┌─ WORKSPACE ───────────┐ ┌─────────────────────────────────┐ │
|
|
43
|
+
│ │ ▦ Overview │ │ │ │
|
|
44
|
+
│ │ ▤ Tasks 47 │◀── │ ┌────────┐ ┌────────┐ ┌────┐ │ │
|
|
45
|
+
│ │ ◐ Goals 3 │ │ │ BACKLOG│ │ TODO │ │DOING│ │ │
|
|
46
|
+
│ ├─ OPERATIONS ──────────┤ │ │ 12 │ │ 23 │ │ 9 │ │ │
|
|
47
|
+
│ │ ◈ Agents 8/16│ │ └────────┘ └────────┘ └────┘ │ │
|
|
48
|
+
│ │ ▣ Activity ● live │ │ ┌────────┐ ┌────────┐ │ │
|
|
49
|
+
│ │ ◇ Memory │ │ │ REVIEW │ │ DONE │ │ │
|
|
50
|
+
│ ├─ LIBRARIES ──────────┤ │ │ 2 │ │ 1 │ │ │
|
|
51
|
+
│ │ ❖ Skills 18 │ │ └────────┘ └────────┘ │ │
|
|
52
|
+
│ │ ⬢ MCPs 3 │ │ │ │
|
|
53
|
+
│ │ ⚓ Hooks 5 │ │ KANBAN BOARD · 47 tasks │ │
|
|
54
|
+
│ ├─ SYSTEM ─────────────┤ │ group: status ▾ + filters │ │
|
|
55
|
+
│ │ ⚙ Settings │ │ │ │
|
|
56
|
+
│ │ │ └─────────────────────────────────┘ │
|
|
57
|
+
│ │ ◉ online · v8.0.0 │ │
|
|
58
|
+
│ │ build 1542e72 │ │
|
|
59
|
+
└──────────────────────────────────────────────────────────────────────────────┘
|
|
60
|
+
T O P B A R 56 p x S I D E B A R 2 6 0 p x I N S E T m a x 1440
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
The shell is two fixed regions: **topbar (56px)** on top,
|
|
64
|
+
**sidebar (260px, collapsible to 60px)** on the left, and a 1440px-max
|
|
65
|
+
**SidebarInset** on the right. Status bar at the bottom appears only
|
|
66
|
+
when there is an active alert.
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## 3 · Right-click, the centerpiece
|
|
71
|
+
|
|
72
|
+
Every interactive surface in v8 has a custom right-click menu — no
|
|
73
|
+
browser defaults. Example: right-click on a kanban card.
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
┌──────────────────── ▴ KANBAN-123 ─────────────────────┐
|
|
77
|
+
│ ▦ Refactor auth middleware P1 · coder │
|
|
78
|
+
│ ◐ in_progress · updated 2h ago 47 tokens │
|
|
79
|
+
└────────────────────────────────────────────────────── ┘
|
|
80
|
+
│ (right-click here)
|
|
81
|
+
▼
|
|
82
|
+
┌──────────────────────────────────────┐
|
|
83
|
+
│ Open in drawer ⌘ ↵ │
|
|
84
|
+
│ Edit E │
|
|
85
|
+
│ Duplicate ⇧ D │
|
|
86
|
+
│ Copy link ⌥ L │
|
|
87
|
+
│ ──────────────────────────────── │
|
|
88
|
+
│ Assign to agent ▸ │
|
|
89
|
+
│ Move to column ▸ │
|
|
90
|
+
│ Set priority ▸ │
|
|
91
|
+
│ ──────────────────────────────── │
|
|
92
|
+
│ Archive ⌘ ⇧ A │
|
|
93
|
+
│ ⌫ Delete task danger │
|
|
94
|
+
└──────────────────────────────────────┘
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
The keyboard equivalent is **Shift+F10** when the card has focus.
|
|
98
|
+
Both triggers open the same Radix ContextMenu. No `window.confirm`,
|
|
99
|
+
no `window.alert`, no `window.prompt` anywhere in the app.
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## 4 · Command palette (Cmd+K)
|
|
104
|
+
|
|
105
|
+
```
|
|
106
|
+
┌──────────────────────────────────────────────────────────────────┐
|
|
107
|
+
│ ⌕ Type a command, page, or setting… │
|
|
108
|
+
│ ─────────────────────────────────────────────────────────────── │
|
|
109
|
+
│ ACTIONS ⌥ 1 │
|
|
110
|
+
│ ⚡ Add task to current column C │
|
|
111
|
+
│ ⚡ Move selected to in_review ⇧ ↵ │
|
|
112
|
+
│ ⚡ Bulk archive (12 selected) ⌘ ⇧ A │
|
|
113
|
+
│ ─────────────────────────────────────────────────────────────── │
|
|
114
|
+
│ NAVIGATE ⌥ 2 │
|
|
115
|
+
│ ◦ Tasks › Kanban ⌘ 1│
|
|
116
|
+
│ ◦ Goals › Active goals ⌘ 2│
|
|
117
|
+
│ ◦ Settings › Agents ⌘ ,│
|
|
118
|
+
│ ─────────────────────────────────────────────────────────────── │
|
|
119
|
+
│ SETTINGS ⌥ 3 │
|
|
120
|
+
│ ⚙ Settings › General › Workspace name │
|
|
121
|
+
│ ⚙ Settings › Routing › Cost ceiling │
|
|
122
|
+
│ │
|
|
123
|
+
│ ↵ run · esc close │
|
|
124
|
+
└──────────────────────────────────────────────────────────────────┘
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
Three scopes — Actions, Navigate, Settings — switched via `Tab`. Fuzzy
|
|
128
|
+
search across all three scopes simultaneously. Built on `cmdk`, the
|
|
129
|
+
same library Linear and Raycast use.
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## 5 · The component library
|
|
134
|
+
|
|
135
|
+
```
|
|
136
|
+
bizar-dash/src/web/ui/
|
|
137
|
+
│
|
|
138
|
+
├── primitives/ 11 layout · a11y helpers
|
|
139
|
+
│ ├─ Box Stack Inline
|
|
140
|
+
│ ├─ Cluster Grid Center
|
|
141
|
+
│ ├─ Separator ScrollArea Resizable
|
|
142
|
+
│ ├─ VisuallyHidden Portal
|
|
143
|
+
│
|
|
144
|
+
├── controls/ 20 forms · inputs
|
|
145
|
+
│ ├─ Button (6 variants · 5 sizes) ButtonGroup IconButton
|
|
146
|
+
│ ├─ Input Textarea InputOTP
|
|
147
|
+
│ ├─ Select MultiSelect Combobox
|
|
148
|
+
│ ├─ Checkbox RadioGroup Switch
|
|
149
|
+
│ ├─ Toggle ToggleGroup Slider
|
|
150
|
+
│ ├─ DatePicker DateRangePicker TimePicker
|
|
151
|
+
│ ├─ ColorPicker Field Form
|
|
152
|
+
│
|
|
153
|
+
├── feedback/ 16 status · popups
|
|
154
|
+
│ ├─ Alert (4 variants) Toast Dialog AlertDialog
|
|
155
|
+
│ ├─ Sheet (4 sides) Drawer Popover HoverCard
|
|
156
|
+
│ ├─ Tooltip (4-side) Progress ProgressCircle Spinner
|
|
157
|
+
│ ├─ Skeleton EmptyState ErrorBoundary Banner
|
|
158
|
+
│
|
|
159
|
+
├── data/ 24 display · viz
|
|
160
|
+
│ ├─ Card StatTile StatGrid
|
|
161
|
+
│ ├─ Table DataTable (sort · filter · paginate · select · virtualize)
|
|
162
|
+
│ ├─ Badge (6 variants) Chip Avatar AvatarStack
|
|
163
|
+
│ ├─ Timeline Accordion Collapsible
|
|
164
|
+
│ ├─ Chart (Recharts) Sparkline MetricRing BarList
|
|
165
|
+
│ ├─ TreeView VirtualList Kbd CountBadge ViewHeader
|
|
166
|
+
│
|
|
167
|
+
├── navigation/ 23 nav · menus · tabs
|
|
168
|
+
│ ├─ Sidebar SidebarProvider SidebarInset SidebarSection
|
|
169
|
+
│ ├─ SidebarItem SidebarGroup Topbar Breadcrumb
|
|
170
|
+
│ ├─ NavLink Tabs TabBar TabPanel
|
|
171
|
+
│ ├─ Menu ContextMenu DropdownMenu Menubar
|
|
172
|
+
│ ├─ Pagination Stepper
|
|
173
|
+
│ ├─ CommandPalette CommandBar
|
|
174
|
+
│ ├─ NavSection NavItem NavGroup ViewTabs
|
|
175
|
+
│
|
|
176
|
+
├── kanban/ 15 the centerpiece
|
|
177
|
+
│ ├─ KanbanBoard KanbanColumn KanbanCard
|
|
178
|
+
│ ├─ KanbanCardCompact KanbanCardExpanded KanbanDetail
|
|
179
|
+
│ ├─ KanbanFilters KanbanGroupBy KanbanSort KanbanDensity
|
|
180
|
+
│ ├─ KanbanEmptyState KanbanKeyboardShortcuts
|
|
181
|
+
│ ├─ KanbanQuickAdd KanbanContextMenu KanbanDragOverlay
|
|
182
|
+
│
|
|
183
|
+
├── popups/ 8 custom popups (no browser defaults)
|
|
184
|
+
│ ├─ ContextMenu ActionMenu SubActionMenu QuickAction
|
|
185
|
+
│ ├─ CommandBar DetailDrawer ConfirmDialog InfoPopover
|
|
186
|
+
│
|
|
187
|
+
├── theme/ 5 theming · density
|
|
188
|
+
│ ├─ ThemeProvider useTheme ThemeToggle
|
|
189
|
+
│ ├─ DensityProvider useDensity
|
|
190
|
+
│
|
|
191
|
+
├── hooks/ 10 cross-cutting
|
|
192
|
+
│ ├─ useWebSocket useAgents useTasks useGoals useShortcuts
|
|
193
|
+
│ ├─ useContextMenu useDragAndDrop
|
|
194
|
+
│ ├─ useFocusTrap useReducedMotion useLocalStorage
|
|
195
|
+
│
|
|
196
|
+
├── utils/ 8 pure helpers
|
|
197
|
+
│ ├─ cx formatNumber formatPercent formatBytes
|
|
198
|
+
│ ├─ formatDuration formatRelativeTime
|
|
199
|
+
│ ├─ useHotkeys useMediaQuery useDebouncedValue
|
|
200
|
+
│
|
|
201
|
+
└── styles/ 3 the entire §3 DESIGN.md, generated from JSON
|
|
202
|
+
├─ reset.css tokens.css globals.css
|
|
203
|
+
|
|
204
|
+
── total: 11 + 20 + 16 + 24 + 23 + 15 + 8 + 5 + 10 + 8 = 140 ──
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## 6 · The views
|
|
210
|
+
|
|
211
|
+
```
|
|
212
|
+
/ Overview hero · 4 stat tiles · 3 charts
|
|
213
|
+
│
|
|
214
|
+
├── /tasks Tasks default: Kanban
|
|
215
|
+
│ ├─ /tasks/list Tasks list · filter · sort
|
|
216
|
+
│ └─ /tasks/calendar Tasks calendar · week · month
|
|
217
|
+
│
|
|
218
|
+
├── /goals Goals active · paused · completed
|
|
219
|
+
│ └─ /goals/:id Goal detail description · milestones · tasks
|
|
220
|
+
│
|
|
221
|
+
├── /agents Agents roster · live status
|
|
222
|
+
│ └─ /agents/:id Agent detail type · status · cost · activity
|
|
223
|
+
│
|
|
224
|
+
├── /activity Activity event log · live tail
|
|
225
|
+
│
|
|
226
|
+
├── /memory Memory vault · distillation · search
|
|
227
|
+
│
|
|
228
|
+
├── /libraries Libraries tabs: skills · MCPs · hooks
|
|
229
|
+
│
|
|
230
|
+
└── /settings/* Settings hierarchical, in-page sidebar
|
|
231
|
+
├─ /general · workspace name · logo · default project
|
|
232
|
+
├─ /appearance · theme · density · accent
|
|
233
|
+
├─ /agents · roster · max concurrency · types
|
|
234
|
+
├─ /goals · cadence · review interval
|
|
235
|
+
├─ /tasks · workflow · statuses · kanban config
|
|
236
|
+
├─ /skills · library · default · auto-suggest
|
|
237
|
+
├─ /mcps · servers · auth · per-tool permissions
|
|
238
|
+
├─ /hooks · Pre · Post · UserPrompt
|
|
239
|
+
├─ /routing · tiers · cost ceiling · fallback
|
|
240
|
+
├─ /memory · vault location · retention · distillation
|
|
241
|
+
├─ /notifications · per-event toggles · channels
|
|
242
|
+
├─ /security · webhook secrets · HMAC · PII mode
|
|
243
|
+
├─ /integrations · GitHub · Slack · webhooks
|
|
244
|
+
├─ /billing · cost gate · room budget · alerts
|
|
245
|
+
├─ /team · members · roles (future)
|
|
246
|
+
└─ /advanced · debug · traces · export · reset
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
The nav stays at **6 top-level items** (Workspace · Operations ·
|
|
250
|
+
Libraries · System). Settings gets a dedicated in-page sidebar so it
|
|
251
|
+
has room to breathe.
|
|
252
|
+
|
|
253
|
+
---
|
|
254
|
+
|
|
255
|
+
## 7 · The token system
|
|
256
|
+
|
|
257
|
+
```
|
|
258
|
+
┌────────────────────────────────────────┐
|
|
259
|
+
│ tokens.json (the contract) │
|
|
260
|
+
│ ├─ light → light CSS vars │
|
|
261
|
+
│ └─ dark → dark CSS vars │
|
|
262
|
+
│ │ │
|
|
263
|
+
│ ▼ scripts/generate-tokens.ts │
|
|
264
|
+
│ ui/styles/tokens.css (generated) │
|
|
265
|
+
│ │ │
|
|
266
|
+
│ ▼ │
|
|
267
|
+
│ every component consumes only │
|
|
268
|
+
│ var(--token) — never raw color │
|
|
269
|
+
└────────────────────────────────────────┘
|
|
270
|
+
|
|
271
|
+
── color (oklch) ─────────────────────────────────────────
|
|
272
|
+
bg · surface-1..3 · surface-popover
|
|
273
|
+
fg · fg-muted · fg-subtle · fg-on-accent · fg-link
|
|
274
|
+
accent · accent-hover · accent-soft · accent-ring ◀ green
|
|
275
|
+
success · warning · danger · info
|
|
276
|
+
border · border-strong · input-bg · focus-ring
|
|
277
|
+
chart-1..5 · chart-accent
|
|
278
|
+
sidebar-bg · sidebar-fg · sidebar-accent · sidebar-accent-fg
|
|
279
|
+
sidebar-hover · sidebar-border
|
|
280
|
+
|
|
281
|
+
── geometry ─────────────────────────────────────────────
|
|
282
|
+
radius (10px) · radius-sm (6px) · radius-lg (14px) · radius-pill
|
|
283
|
+
|
|
284
|
+
── elevation ────────────────────────────────────────────
|
|
285
|
+
shadow-1 (rest) · shadow-2 (hover) · shadow-3 (drag) · shadow-4 (sheet)
|
|
286
|
+
|
|
287
|
+
── motion ───────────────────────────────────────────────
|
|
288
|
+
motion-instant (50ms) · motion-fast (120ms)
|
|
289
|
+
motion-base (200ms) · motion-slow (320ms)
|
|
290
|
+
ease-out · ease-in-out · ease-spring
|
|
291
|
+
(all zeroed under prefers-reduced-motion)
|
|
292
|
+
|
|
293
|
+
── z-index ──────────────────────────────────────────────
|
|
294
|
+
base (0) · sticky (10) · dropdown (1000)
|
|
295
|
+
sticky-nav (1100) · overlay (1300) · modal (1400)
|
|
296
|
+
popover (1500) · toast (1600) · tooltip (1700) ◀ no higher
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
---
|
|
300
|
+
|
|
301
|
+
## 8 · The sprint roadmap
|
|
302
|
+
|
|
303
|
+
```
|
|
304
|
+
Sprint Days Feature Focus Status
|
|
305
|
+
────── ──── ─────── ────────────────────────────────────────── ──────
|
|
306
|
+
S0 0.5 F-042 Bootstrap: delete v7 subtree, init preset ☐
|
|
307
|
+
│
|
|
308
|
+
S1 3 F-043 Foundation: tokens, primitives, shell ☐
|
|
309
|
+
│
|
|
310
|
+
S2 3 F-044 Controls + feedback (36 components) ☐
|
|
311
|
+
│
|
|
312
|
+
S3 3 F-045 Data display + Overview view ☐
|
|
313
|
+
│
|
|
314
|
+
S4 3 F-046 Navigation + Cmd+K palette + popups ☐
|
|
315
|
+
│
|
|
316
|
+
S5 4 F-047 KANBAN (centerpiece · 15 components) ☐
|
|
317
|
+
│
|
|
318
|
+
S6 3 F-048 Goals + Agents ☐
|
|
319
|
+
│
|
|
320
|
+
S7 3 F-049 Activity + Memory + Libraries ☐
|
|
321
|
+
│
|
|
322
|
+
S8 3 F-050 Settings (16 sections, hierarchical) ☐
|
|
323
|
+
│
|
|
324
|
+
S9 2.5 F-051 Polish + verification + release ☐
|
|
325
|
+
│
|
|
326
|
+
─────────────────── 28 working days · ~5.5 calendar weeks ────────
|
|
327
|
+
|
|
328
|
+
gate per sprint (L09 layers):
|
|
329
|
+
├─ L1 make check · 0 TS errors
|
|
330
|
+
├─ L2 make test · all unit + integration pass
|
|
331
|
+
└─ L3 make e2e · smoke + keyboard + visual + a11y
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
---
|
|
335
|
+
|
|
336
|
+
## 9 · The data flow
|
|
337
|
+
|
|
338
|
+
```
|
|
339
|
+
┌────────────────────┐ REST + WS ┌────────────────────┐
|
|
340
|
+
│ bizar-dash │ ◄──────────► │ bizar-dash │
|
|
341
|
+
│ src/web/ │ │ src/server/ │
|
|
342
|
+
│ (React 19 SPA) │ │ (Express + WS) │
|
|
343
|
+
└────────────────────┘ └────────────────────┘
|
|
344
|
+
│
|
|
345
|
+
▼
|
|
346
|
+
┌────────────────────┐
|
|
347
|
+
│ plugins/bizar │
|
|
348
|
+
│ (MCP server) │
|
|
349
|
+
│ 22 tools │
|
|
350
|
+
└────────────────────┘
|
|
351
|
+
│
|
|
352
|
+
▼
|
|
353
|
+
┌────────────────────┐
|
|
354
|
+
│ packages/sdk │
|
|
355
|
+
│ (Claude Code │
|
|
356
|
+
│ Agent SDK) │
|
|
357
|
+
└────────────────────┘
|
|
358
|
+
|
|
359
|
+
WS messages (single connection · /ws/dashboard):
|
|
360
|
+
tasks:change → invalidate ['tasks']
|
|
361
|
+
tasks:delete → invalidate ['tasks']
|
|
362
|
+
agents:change → invalidate ['agents']
|
|
363
|
+
goals:change → invalidate ['goals']
|
|
364
|
+
activity:event → invalidate ['activity']
|
|
365
|
+
routing:decision → invalidate ['routing']
|
|
366
|
+
cost:tick → invalidate ['cost']
|
|
367
|
+
system:status → update topbar status pill
|
|
368
|
+
```
|
|
369
|
+
|
|
370
|
+
---
|
|
371
|
+
|
|
372
|
+
## 10 · The banned tropes
|
|
373
|
+
|
|
374
|
+
```
|
|
375
|
+
✗ gradients anywhere — backgrounds, fills, borders, hovers
|
|
376
|
+
✗ vertical stripes left-edge accent bars on containers
|
|
377
|
+
✗ purple / blue wash the accent is green, charts are grayscale
|
|
378
|
+
✗ emoji in UI copy use Lucide icons
|
|
379
|
+
✗ Lorem ipsum every placeholder is realistic
|
|
380
|
+
✗ "Loading…" spinner use skeleton or streaming copy
|
|
381
|
+
✗ browser context every interactive surface has our ContextMenu
|
|
382
|
+
✗ modal-on-modal a modal cannot open another modal
|
|
383
|
+
✗ tooltip on disabled tooltip only when enabled; else inline helper
|
|
384
|
+
✗ invented metrics real numbers or "—" placeholder
|
|
385
|
+
✗ glass / blur surfaces are solid fills
|
|
386
|
+
✗ animated icons except the live indicator pulse
|
|
387
|
+
|
|
388
|
+
audited on every PR by scripts/check-design-tropes.sh
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
---
|
|
392
|
+
|
|
393
|
+
## 11 · The five inviolable rules
|
|
394
|
+
|
|
395
|
+
```
|
|
396
|
+
┌──────────────────────────────────────────────────────────────────┐
|
|
397
|
+
│ │
|
|
398
|
+
│ 1. RIGHT-CLICK IS SACRED │
|
|
399
|
+
│ every interactive surface has a ContextMenu │
|
|
400
|
+
│ │
|
|
401
|
+
│ 2. KEYBOARD PARITY │
|
|
402
|
+
│ every action has a shortcut; every menu shows it │
|
|
403
|
+
│ │
|
|
404
|
+
│ 3. CMD+K IS EVERYTHING │
|
|
405
|
+
│ palette contains every page, action, setting, shortcut │
|
|
406
|
+
│ │
|
|
407
|
+
│ 4. OPTIMISTIC BY DEFAULT │
|
|
408
|
+
│ mutations apply instantly; rollback on error with toast │
|
|
409
|
+
│ │
|
|
410
|
+
│ 5. REAL-TIME BY DEFAULT │
|
|
411
|
+
│ live data refreshes via WS; green pulse = connected │
|
|
412
|
+
│ │
|
|
413
|
+
└──────────────────────────────────────────────────────────────────┘
|
|
414
|
+
```
|
|
415
|
+
|
|
416
|
+
---
|
|
417
|
+
|
|
418
|
+
**End of GLYPH.md — v8.0.0**
|