Skip to content

Latest commit

 

History

History
691 lines (637 loc) · 48.9 KB

File metadata and controls

691 lines (637 loc) · 48.9 KB

Command Center

Part of: Page Flow Documentation

Note: The Command Center is the primary landing page for authenticated users. It follows a sandbox-based approach where users describe what they want to build, and the system spawns an isolated sandbox environment with an AI agent.


Current Implementation

The Command Center (/command) is implemented in /frontend/app/(app)/command/page.tsx and uses:

  • TasksPanel in the ContextualPanel (sidebar) showing running/completed/failed tasks grouped by status
  • PromptInput component for the main text input
  • RepoSelector for selecting project/repository context
  • ModelSelector for choosing the AI model

Layout Structure

┌─────────────────────────────────────────────────────────────┐
│ IconRail │ ContextualPanel (TasksPanel)  │   Main Content   │
│   56px   │          256px                │      flex-1      │
└─────────────────────────────────────────────────────────────┘

Submission Flow

  1. User types prompt and submits
  2. Frontend creates a ticket via POST /api/v1/tickets
  3. Frontend subscribes to WebSocket events, waiting for SANDBOX_SPAWNED
  4. Fallback polling every 3s checks for tasks with sandbox_id
  5. When sandbox is ready, redirects to /sandbox/:sandboxId

Design Notes

Element Specification
Background bg-background (theme-aware)
Sidebar Width 256px (collapsible to 40px)
Prompt Max-Width 700px (centered)
Task Card Status icon + Task name + Time ago
Status Groups RUNNING, PENDING, COMPLETED, FAILED
Header Minimal header with MinimalHeader component

Flow 33: Command Center (Primary Landing Page)

┌─────────────────────────────────────────────────────────────┐
│  PAGE: / (Authenticated - Primary Landing)                   │
│  Background: Warm cream #F5F5F0                              │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  [Logo]               🛡️ | Dashboard | [Avatar]      │   │
│  │  (minimal header - Guardian indicator + nav)          │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│  ┌────────────────┐  ┌──────────────────────────────────┐   │
│  │ [Search...]    │  │                                  │   │
│  │ [+ New Agent]  │  │                                  │   │
│  │                │  │  "Ask Cursor to build, fix       │   │
│  │  TODAY         │  │   bugs, explore"                 │   │
│  │  ┌──────────┐ │  │                                  │   │
│  │  │⟳ Improve │ │  │  ┌────────────────────────────┐ │   │
│  │  │  senseii │ │  │  │                            │ │   │
│  │  │  games.. │ │  │  │  [________________________] │ │   │
│  │  │  2h      │ │  │  │                            │ │   │
│  │  │  +1539   │ │  │  └────────────────────────────┘ │   │
│  │  │  -209    │ │  │                                  │   │
│  │  │  senseii │ │  │  [Opus 4.5 ▼]         [📎] [↑] │   │
│  │  └──────────┘ │  │                                  │   │
│  │               │  │  ┌────────────────────────────┐ │   │
│  │  THIS WEEK    │  │  │ 📁 kivo360/senseii-games ▼ │ │   │
│  │  ┌──────────┐ │  │  │ ⎇ main ▼                   │ │   │
│  │  │⟳ Fix    │ │  │  └────────────────────────────┘ │   │
│  │  │  groq.. │ │  │                                  │   │
│  │  │  1d     │ │  │                                  │   │
│  │  │  +29 -10│ │  │                                  │   │
│  │  └──────────┘ │  │                                  │   │
│  │  ┌──────────┐ │  │                                  │   │
│  │  │⟳ Fix    │ │  │                                  │   │
│  │  │  gaming │ │  │                                  │   │
│  │  │  2d     │ │  │                                  │   │
│  │  │  +87 -34│ │  │                                  │   │
│  │  └──────────┘ │  │                                  │   │
│  │               │  │                                  │   │
│  │  THIS MONTH   │  │                                  │   │
│  │  ┌──────────┐ │  │                                  │   │
│  │  │✓ Fix for│ │  │                                  │   │
│  │  │  eign.. │ │  │                                  │   │
│  │  │  1w     │ │  │                                  │   │
│  │  └──────────┘ │  │                                  │   │
│  │               │  │                                  │   │
│  │  Errored      │  │                                  │   │
│  │  Expired      │  │                                  │   │
│  │               │  │                                  │   │
│  │  [⚙] [?]     │  │                                  │   │
│  └────────────────┘  └──────────────────────────────────┘   │
│                                                              │
└───────────────────────────┬──────────────────────────────────┘
                            │
                            │ User selects from unified dropdown
                            │ (existing project OR unconnected repo)
                            │
                            ▼
┌─────────────────────────────────────────────────────────────┐
│  PAGE: / (Project/Repo Selected)                             │
│                                                              │
│  Unified selector determines action automatically:          │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  CASE A: Project Exists                              │   │
│  │                                                      │   │
│  │  ┌────────────────────────────────────────────────┐│   │
│  │  │ ✓ Connected to: "Authentication System"       ││   │
│  │  │   12 tickets | 3 active agents                ││   │
│  │  │   Last activity: 2 hours ago                  ││   │
│  │  └────────────────────────────────────────────────┘│   │
│  │                                                      │   │
│  │  Tasks/ideas will be added to this project          │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  CASE B: No Project Exists                           │   │
│  │                                                      │   │
│  │  ┌────────────────────────────────────────────────┐│   │
│  │  │ ℹ New project will be created                 ││   │
│  │  │   Name: "repo-name" (from GitHub)             ││   │
│  │  │   GitHub: Auto-connected                       ││   │
│  │  │   Phases: Default workflow enabled            ││   │
│  │  └────────────────────────────────────────────────┘│   │
│  │                                                      │   │
│  │  Project created automatically on first task        │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
└───────────────────────────┬──────────────────────────────────┘
                            │
                            │ User types task and submits
                            │
                            ▼
┌─────────────────────────────────────────────────────────────┐
│  PAGE: / (Task Submission)                                   │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Processing...                                       │   │
│  │                                                      │   │
│  │  ┌────────────────────────────────────────────────┐│   │
│  │  │ 1. Creating project (if needed)...  ✓         ││   │
│  │  │ 2. Parsing task description...       ✓         ││   │
│  │  │ 3. Spawning agent...                 ⟳         ││   │
│  │  └────────────────────────────────────────────────┘│   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
└───────────────────────────┬──────────────────────────────────┘
                            │
                            │ Agent spawned successfully
                            │
                            ▼
┌─────────────────────────────────────────────────────────────┐
│  PAGE: /agents/:agentId (Agent Detail View)                 │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Agent: Build Authentication System                  │   │
│  │  [Open in Cursor] [...]                              │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  > Build an authentication system with OAuth2 and    │   │
│  │    JWT support for the API                           │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  ☐ Environment ready                                 │   │
│  │                                                      │   │
│  │  Thought for 3s                                      │   │
│  │                                                      │   │
│  │  I'll analyze the codebase and create a plan...     │   │
│  │                                                      │   │
│  │  Explored 15 files                                   │   │
│  │                                                      │   │
│  │  Based on my analysis, here's the implementation:   │   │
│  │  ...                                                 │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  [Ask follow-ups...]                                 │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
└─────────────────────────────────────────────────────────────┘

Flow 34: Unified Project/Repo Selection

Constraint: One repo can only be connected to one project (1:1 relationship).

┌─────────────────────────────────────────────────────────────┐
│  COMPONENT: Unified Project/Repo Selector                   │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Project: [Auth System ▼]                            │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│           │ Click to expand                                 │
│           ▼                                                 │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Select Project or Repository                        │   │
│  │                                                      │   │
│  │  ┌────────────────────────────────────────────────┐│   │
│  │  │ [🔍 Search projects & repos...]               ││   │
│  │  └────────────────────────────────────────────────┘│   │
│  │                                                      │   │
│  │  PROJECTS                                           │   │
│  │  ┌────────────────────────────────────────────────┐│   │
│  │  │ Auth System                                    ││   │
│  │  │ kivo360/auth-system • 12 tickets              ││   │
│  │  └────────────────────────────────────────────────┘│   │
│  │  ┌────────────────────────────────────────────────┐│   │
│  │  │ Payment Gateway                                ││   │
│  │  │ kivo360/payment-gateway • 8 tickets           ││   │
│  │  └────────────────────────────────────────────────┘│   │
│  │  ┌────────────────────────────────────────────────┐│   │
│  │  │ API Service                                    ││   │
│  │  │ kivo360/api-service • 3 tickets               ││   │
│  │  └────────────────────────────────────────────────┘│   │
│  │                                                      │   │
│  │  ─────────────────────────────────────────────────  │   │
│  │                                                      │   │
│  │  AVAILABLE REPOSITORIES (will create new project)  │   │
│  │  ┌────────────────────────────────────────────────┐│   │
│  │  │ + kivo360/frontend-app                        ││   │
│  │  │   Public • Not connected to any project       ││   │
│  │  └────────────────────────────────────────────────┘│   │
│  │  ┌────────────────────────────────────────────────┐│   │
│  │  │ + kivo360/mobile-app                          ││   │
│  │  │   Private • Not connected to any project      ││   │
│  │  └────────────────────────────────────────────────┘│   │
│  │                                                      │   │
│  │  ─────────────────────────────────────────────────  │   │
│  │                                                      │   │
│  │  ┌────────────────────────────────────────────────┐│   │
│  │  │ + Connect New Repository                      ││   │
│  │  │   Add a repo not listed here                  ││   │
│  │  └────────────────────────────────────────────────┘│   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
└───────────────────────────┬──────────────────────────────────┘
                            │
    ┌───────────────────────┴───────────────────────┐
    │                                               │
    │ Select existing project                       │ Select unconnected repo
    │                                               │
    ▼                                               ▼
┌───────────────────────────────┐  ┌───────────────────────────────┐
│  Project Selected             │  │  New Project Will Be Created   │
│                               │  │                                │
│  ┌─────────────────────────┐ │  │  ┌───────────────────────────┐ │
│  │ ✓ Auth System           │ │  │  │ ℹ New project:            │ │
│  │   12 tickets            │ │  │  │   "frontend-app"           │ │
│  │   3 active agents       │ │  │  │                            │ │
│  │   Last activity: 2h ago │ │  │  │   GitHub: auto-connected  │ │
│  │                         │ │  │  │   Phases: defaults         │ │
│  │   Tasks added to this   │ │  │  │                            │ │
│  │   existing project      │ │  │  │   Created on first task   │ │
│  └─────────────────────────┘ │  │  └───────────────────────────┘ │
│                               │  │                                │
└───────────────────────────────┘  └───────────────────────────────┘

Selection Behavior:

Selection Type Result
Existing Project Task added to that project
Unconnected Repo New project created with repo name, then task added
Connect New Repository OAuth flow if needed, then creates project
┌─────────────────────────────────────────────────────────────┐
│  DIALOG: Connect New Repository                              │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Connect GitHub Repository                           │   │
│  │                                                      │   │
│  │  ┌────────────────────────────────────────────────┐│   │
│  │  │ GitHub Authorization Status:                   ││   │
│  │  │                                                ││   │
│  │  │ ⚠️ Additional permissions needed               ││   │
│  │  │                                                ││   │
│  │  │ Some repositories require additional access.  ││   │
│  │  │ Click below to authorize.                      ││   │
│  │  │                                                ││   │
│  │  │ [Authorize GitHub]                            ││   │
│  │  └────────────────────────────────────────────────┘│   │
│  │                                                      │   │
│  │  OR (if already authorized)                          │   │
│  │                                                      │   │
│  │  ┌────────────────────────────────────────────────┐│   │
│  │  │ Enter repository URL:                         ││   │
│  │  │                                                ││   │
│  │  │ [https://github.com/owner/repo___________]   ││   │
│  │  │                                                ││   │
│  │  │ [Connect Repository]                          ││   │
│  │  └────────────────────────────────────────────────┘│   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
└─────────────────────────────────────────────────────────────┘

Flow 35: TasksPanel Sidebar (Current Implementation)

The sidebar uses TasksPanel component which groups tasks by status:

┌─────────────────────────────────────────────────────────────┐
│  COMPONENT: TasksPanel (ContextualPanel sidebar)             │
│                                                              │
│  ┌────────────────┐                                         │
│  │                │                                         │
│  │  [Search tasks.]│                                        │
│  │  [Filter][Sort]│                                         │
│  │                │                                         │
│  │  [+ New Task]  │ ← Links to /command                    │
│  │                │                                         │
│  │  ─────────── │                                         │
│  │  RUNNING      │                                         │
│  │               │                                         │
│  │  ┌──────────┐ │                                         │
│  │  │⟳ Fix auth│ │ ← Running (spinner icon)               │
│  │  │  running │ │                                         │
│  │  │  5m      │ │                                         │
│  │  └──────────┘ │                                         │
│  │               │                                         │
│  │  ─────────── │                                         │
│  │  PENDING      │                                         │
│  │               │                                         │
│  │  ┌──────────┐ │                                         │
│  │  │⏳ Setup  │ │ ← Pending (clock icon)                  │
│  │  │  pending │ │                                         │
│  │  │  10m     │ │                                         │
│  │  └──────────┘ │                                         │
│  │               │                                         │
│  │  ─────────── │                                         │
│  │  COMPLETED    │                                         │
│  │               │                                         │
│  │  ┌──────────┐ │                                         │
│  │  │✓ Add dash│ │ ← Completed (check icon)               │
│  │  │  completed│ │                                         │
│  │  │  1h      │ │                                         │
│  │  └──────────┘ │                                         │
│  │               │                                         │
│  │  ─────────── │                                         │
│  │  FAILED       │                                         │
│  │               │                                         │
│  │  ┌──────────┐ │                                         │
│  │  │✗ DB mig  │ │ ← Failed (X icon)                      │
│  │  │  failed  │ │                                         │
│  │  │  2h      │ │                                         │
│  │  └──────────┘ │                                         │
│  │               │                                         │
│  └────────────────┘                                         │
│                                                              │
│          │ Click on task card                               │
│          ▼                                                  │
│                                                              │
│  Navigates to: /sandbox/:sandboxId (Sandbox Detail View)    │
│                                                              │
└─────────────────────────────────────────────────────────────┘

Flow 36: Analytics Dashboard (Secondary Page)

┌─────────────────────────────────────────────────────────────┐
│  PAGE: /analytics (Secondary - Deliberate Navigation)        │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Header: Logo | [Command] [Projects] [Agents]        │   │
│  │          [Analytics] | 🛡️ | Search | Profile         │   │
│  │                 ^^^^^ (Active)                        │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Analytics Dashboard                                 │   │
│  │  Overview of all projects and activity              │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Overview Stats                                      │   │
│  │                                                      │   │
│  │  ┌────────┐  ┌────────┐  ┌────────┐  ┌────────┐   │   │
│  │  │ 5      │  │ 3      │  │ 12     │  │ 8      │   │   │
│  │  │ Active │  │ Active │  │ Open   │  │ Recent │   │   │
│  │  │ Specs  │  │ Agents │  │ Tickets│  │ Commits│   │   │
│  │  └────────┘  └────────┘  └────────┘  └────────┘   │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Project Filter: [All Projects ▼]                    │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Active Specs Grid                                   │   │
│  │                                                      │   │
│  │  ┌──────────────────┐  ┌──────────────────┐       │   │
│  │  │ Auth System       │  │ Payment Gateway   │       │   │
│  │  │ Progress:         │  │ Progress:         │       │   │
│  │  │ ████████░░ 80%   │  │ ██████░░░░ 60%   │       │   │
│  │  │                   │  │                   │       │   │
│  │  │ Status: Executing │  │ Status: Design    │       │   │
│  │  │ Agents: 2         │  │ Agents: 1         │       │   │
│  │  │                   │  │                   │       │   │
│  │  │ [View] [Board]   │  │ [View] [Board]   │       │   │
│  │  └──────────────────┘  └──────────────────┘       │   │
│  │                                                      │   │
│  │  ┌──────────────────┐  ┌──────────────────┐       │   │
│  │  │ API Service       │  │ Frontend App      │       │   │
│  │  │ Progress:         │  │ Progress:         │       │   │
│  │  │ ████░░░░░░ 40%   │  │ ██░░░░░░░░ 20%   │       │   │
│  │  │                   │  │                   │       │   │
│  │  │ Status: Tasks     │  │ Status: Draft     │       │   │
│  │  │ Agents: 0         │  │ Agents: 0         │       │   │
│  │  │                   │  │                   │       │   │
│  │  │ [View] [Board]   │  │ [View] [Board]   │       │   │
│  │  └──────────────────┘  └──────────────────┘       │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Recent Activity                                      │   │
│  │                                                      │   │
│  │  • Spec "Auth System" requirements approved  (2h)   │   │
│  │  • Agent worker-1 completed task "Setup JWT" (3h)   │   │
│  │  • Discovery: Bug found in login flow        (4h)   │   │
│  │  • 🛡️ Guardian intervention sent to worker-2 (5h)   │   │
│  │  • 🔄 Monitoring cycle completed (5 agents)  (5h)   │   │
│  │  • Ticket "Add OAuth2" moved to Implementation (6h) │   │
│  │                                                      │   │
│  │  [View All Activity]                                 │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Quick Actions                                       │   │
│  │                                                      │   │
│  │  [+ New Spec] [+ New Project] [View All Projects]   │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
└─────────────────────────────────────────────────────────────┘

Flow 37: System Health Access (Guardian Indicator)

┌─────────────────────────────────────────────────────────────┐
│  COMPONENT: Guardian Indicator (Header)                      │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  [Logo]               🛡️ | Dashboard | [Avatar]      │   │
│  │                        ↑                              │   │
│  │                        └── Guardian Indicator         │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│  Indicator States:                                          │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  🟢 Active    - Monitoring running, all agents OK    │   │
│  │  🟡 Attention - Agent needs attention (alignment <70%)│   │
│  │  🟠 Drifting  - Multiple agents drifting             │   │
│  │  🔴 Critical  - Agent stuck or intervention failed   │   │
│  │  ⏸️ Paused    - Monitoring temporarily paused        │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│           │ Click Guardian indicator                        │
│           ▼                                                 │
│                                                              │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  Quick Status Popover                                │   │
│  │                                                      │   │
│  │  System Health: 94%                                 │   │
│  │  ┌──────────────────────────────────────────────┐  │   │
│  │  │ Guardian: 🟢 Active (12s ago)                │  │   │
│  │  │ Conductor: 🟢 Active                         │  │   │
│  │  │ Agents: 5/5 OK                               │  │   │
│  │  │ Avg Alignment: 78%                           │  │   │
│  │  └──────────────────────────────────────────────┘  │   │
│  │                                                      │   │
│  │  Recent Activity:                                   │   │
│  │  • worker-2 alignment recovered (72% → 85%)        │   │
│  │  • Intervention sent to worker-1 (2m ago)          │   │
│  │                                                      │   │
│  │  [View System Health] [Pause Monitoring]           │   │
│  └──────────────────────────────────────────────────────┘   │
│                                                              │
│           │ Click "View System Health"                      │
│           ▼                                                 │
│                                                              │
│  Navigates to: /health (System Health Dashboard)            │
│  See: [10a_monitoring_system.md](./10a_monitoring_system.md)│
│                                                              │
└─────────────────────────────────────────────────────────────┘

Guardian Indicator Behavior:

  • Always visible in header across all authenticated pages
  • Shows real-time monitoring status via WebSocket updates
  • Click opens quick status popover with summary
  • Click "View System Health" navigates to full dashboard
  • Indicator color reflects worst-case agent status
  • Badge count shows number of agents needing attention

Popover Quick Actions:

  • View System Health: Navigate to /health for full dashboard
  • Pause Monitoring: Temporarily pause Guardian analysis
  • View Interventions: Navigate to /health/interventions
  • Dismiss: Close popover

Navigation Summary

Main Routes (Updated for Sandbox-Based UI)

/ (Landing - unauthenticated)
├── /register (Email registration)
├── /login (Email login)
├── /login/oauth (OAuth login)
├── /verify-email (Email verification)
├── /forgot-password (Password reset)
├── /reset-password (Password reset confirmation)
├── /onboarding (First-time user)
│
└── /command (Authenticated - Command Center) ← PRIMARY
    │
    ├── /sandbox/:sandboxId (Sandbox Detail View) ← MAIN WORKFLOW
    │
    ├── /sandboxes (Sandbox list)
    │
    ├── /projects (Project list)
    │   ├── /projects/new (Create project)
    │   ├── /projects/:id (Project overview)
    │   ├── /projects/:id/explore (AI exploration)
    │   ├── /projects/:id/specs (Specs list)
    │   └── /projects/:id/specs/:specId (Spec viewer)
    │
    ├── /phases (Phase management)
    │
    ├── /board/:projectId (Kanban board)
    │   └── /board/:projectId/:ticketId (Ticket detail)
    │
    ├── /graph/:projectId (Dependency graph)
    │   └── /graph/:projectId/:ticketId (Ticket graph)
    │
    ├── /analytics (Analytics Dashboard)
    │
    ├── /health (System Health Dashboard)
    │   ├── /health/trajectories (Active Trajectory Analyses)
    │   ├── /health/interventions (Intervention History)
    │   └── /health/settings (Monitoring Configuration)
    │
    ├── /organizations (Organization management)
    │
    └── /settings (User settings)
        ├── /settings/profile (User profile)
        ├── /settings/api-keys (API key management)
        ├── /settings/sessions (Active sessions)
        └── /settings/preferences (User preferences)

Key User Actions (Updated)

  1. Primary Flow: /command → Type Task → Submit → Wait for Sandbox → Auto-redirect to /sandbox/:sandboxId
  2. Monitor Sandbox: /sandbox/:sandboxId → View Events Tab → Watch real-time agent activity
  3. Send Message: /sandbox/:sandboxId → Type message → Send to agent
  4. View Task History: /command → Click task in sidebar → /sandbox/:sandboxId
  5. Return to Command: Any page → Click Terminal icon in IconRail → /command
  6. System Health Access: Any page → Navigate to /health via IconRail or links

API Endpoints

Required Endpoints

GET  /api/v1/command/selector     # Unified list: projects + unconnected repos (PLANNED)
### Existing Endpoints
GET  /api/v1/github/repos                     # List user's authorized GitHub repos
GET  /api/v1/projects                         # List user's projects with connected repos
GET  /api/v1/agents                           # List all agents
POST /api/v1/agents/register                  # Register a new agent
GET  /api/v1/agents/health                    # System-wide agent health summary
GET  /api/v1/monitor/dashboard                # Dashboard summary statistics
GET  /health                                  # Basic health check

### Planned Endpoints (Not Yet Implemented)
POST /api/v1/projects/quick-create            # Create project with defaults from repo (PLANNED)
POST /api/v1/agents/spawn                     # Spawn agent with initial task (PLANNED)
GET  /api/v1/agents/recent                    # List recent agents grouped by time (PLANNED)
GET  /api/v1/command/selector                 # Unified selector data (PLANNED)

Unified Selector Response (Planned)

# GET /api/v1/command/selector (PLANNED)
Response:
{
    "projects": [
        {
            "id": "uuid",
            "name": "Auth System",
            "github_repo": "kivo360/auth-system",
            "ticket_count": 12,
            "active_agents": 3,
            "last_activity": "2024-01-15T10:30:00Z"
        },
        {
            "id": "uuid",
            "name": "Payment Gateway",
            "github_repo": "kivo360/payment-gateway",
            "ticket_count": 8,
            "active_agents": 1,
            "last_activity": "2024-01-14T15:00:00Z"
        }
    ],
    "available_repos": [
        {
            "full_name": "kivo360/frontend-app",
            "private": false,
            "updated_at": "2024-01-10T08:00:00Z"
        },
        {
            "full_name": "kivo360/mobile-app",
            "private": true,
            "updated_at": "2024-01-08T12:00:00Z"
        }
    ]
}

Quick Create Request/Response (Planned)

# POST /api/v1/projects/quick-create (PLANNED)
Request:
{
    "github_repo": "owner/repo-name",
    "initial_prompt": "Build authentication system with OAuth2"
}

Response:
{
    "project_id": "uuid",
    "project_name": "repo-name",
    "agent_id": "uuid",
    "status": "spawned",
    "created_new_project": true  # false if existing project used
}

Spawn Agent (Planned)

# POST /api/v1/agents/spawn (PLANNED - current alternative: POST /api/v1/agents/register)
Request:
{
    "project_id": "uuid",
    "initial_prompt": "Build authentication system with OAuth2"
}

Response:
{
    "agent_id": "uuid",
    "project_id": "uuid",
    "status": "spawned"
}

Next: See README.md for complete documentation index.