Frontmatter
| id | 14560 |
| title | Epic: Fleet Manager cockpit UI/UX — the design-led product surface (Lane B of the cockpit plan) |
| state | Open |
| labels | enhancementepicdeveloper-experienceai |
| assignees | neo-opus-vega |
| createdAt | Jul 4, 2026, 2:26 AM |
| updatedAt | Jul 10, 2026, 10:17 PM |
| githubUrl | https://github.com/neomjs/neo/issues/14560 |
| author | neo-opus-vega |
| commentsCount | 12 |
| parentIssue | null |
| subIssues | 14577 FM cockpit target-app decision: evolve apps/agentos vs fresh app 14578 FM cockpit theme/token layer from the cockpit-plan design SSOT 14592 FM cockpit density evidence spike: real fleet-scale numbers before layout freezes 14593 FM cockpit state-dot, pulse and health primitives (reduced-motion honored) 14594 FM cockpit event-kind chip system (pr / a2a / review / alert classes) 14598 FM cockpit AgentCard component — the resident card at the artifact bar 14599 FM cockpit fleet grid + health summary bar (density-informed layout) 14605 FM cockpit card contract: consolidate the fleet-card definition under the design SSOT 14606 FM cockpit ActivityStream component: bounded, real-time, backpressure-aware 14607 FM cockpit stream burst e2e: bound holds live under real feed pressure 14608 FM cockpit agent detail view: drill-in panes with freshness-labeled claims 14610 FM cockpit pop-out: agent detail to its own OS window on the shared heap 14611 FM cockpit per-agent control cluster: start / stop / restart with honest round-trip states 14612 FM cockpit fleet-level morning start: one action, staged bring-up, honest partial results 14613 FM cockpit drill e2e: card → detail → pop-out → reattach round-trip 14614 FM cockpit connect and add-agent entry: operable-cold onboarding surface 14615 FM cockpit shell layout: compose the surface via the docking container contract 14616 FM cockpit perspective presets: named layouts over the saved-layout substrate 14617 FM cockpit auto-hide rails: secondary panes on the edge-rail chain 14618 FM cockpit visual-regression baseline harness 14619 FM cockpit accessibility pass: focus order, contrast, reduced motion 14620 FM cockpit catch-up view: what happened since you last looked 14631 FM module topology record: childapp vs view-region inside apps/agentos 14632 FM module mount: navigation integration + route wiring in the agentos Viewport 14635 FM module FamilyRail primitive: era-attribute data-binding (ADR 0032 §2.3.3) 14637 FM module HealthSwatch primitive: the five-category legend unit 14639 FM module event-kind map: the data-driven kind→token registry 14641 FM module card name slot: display-name binding with provenance/assent trail 14643 FM module stale-wire rendering: the not-wired and low-confidence card states 14646 FM cockpit walkthrough demo: the mission-control tour, NL-driven and recordable 14657 FM module cockpit dock document: the default layout as dockZone.v1 data 14658 FM module cockpit projection wiring: adapter render + resize commit loop 14681 Light + dark theme system: first-class dual-mode tokens for the agentos module and demos 14728 Harden fleet closed-set token resolvers against prototype-shaped keys (hasOwn) |
| subIssuesCompleted | 13 |
| subIssuesTotal | 34 |
| contentTrust | |
| projected | |
| quarantined | 0 |
| signals | [] |
| blockedBy | [] |
| blocking | [] |
| milestone | v13.2 |
Problem scope
The fleet-services spine is largely done Brain-side (define/start/stop/provision exist as services — the closed leaves under #13015), but the product surface is ~0% planned and the current
apps/agentosUI is brittle: feature-first accretion, no design system, no UX bar. The artifact's own diagnosis: "Done right it's the flagship demo. Done as it is now, it undercuts the whole story."The cockpit is the exact app the engine is built for — live multi-agent state, high-frequency streams, views splitting across OS windows on one shared App-Worker heap, object permanence. A weak surface here doesn't just cost adoption; it publicly falsifies the engine story.
Why an epic, not a ticket: a token/theme layer, the cockpit shell + fleet grid, the live activity stream, agent detail + pop-out, fleet controls, and NL-driven e2e coverage are separable one-PR leaves that must converge on ONE visual/interaction system across multiple weeks.
Intended solution shape
apps/agentos-vs-fresh-shell-app is the first gated design decision (a sub), not assumed here.Out of scope
Avoided traps
No second brittle app (the evolve-vs-fresh call is an explicit gated sub) · no pixel-guessing outside the SSOT · no UX-without-e2e · no bundling separable leaves into one sub. The epic is
Refs-only — never a PR close-target.Structure-map gate: N/A — app-layer (
apps/) design/UX epic; no newai/substrate placement.