Skip to content

Fleet UI Phase 3: Fleet command center + inject #566

@Wirasm

Description

@Wirasm

Phase 3: Fleet Command Center + Inject

Part of #562 (Fleet UI Epic)

PRD: .claude/PRPs/prds/fleet-ui-honryu-visibility.prd.md — Phase 3

What

Evolve the Dashboard into a fleet command table when fleet mode is active, and add an inject command bar for sending tasks to workers from the UI.

Why

Phases 1-2 give visibility scattered across existing views. Phase 3 consolidates into a dedicated fleet command center with communication capability.

Scope

3.1 Dashboard → Fleet Table

  • When state.is_fleet_active(), render a fleet command table instead of card grid:
    • Columns: Branch, Status, Task, Ack, Report, Agent
    • Brain row visually distinct (ice left border, "(brain)" suffix)
    • Sorting: brain first, then by status (waiting > working > idle > stopped)
    • Each row clickable → navigates to Detail view
    • When fleet NOT active → existing card grid (backward compat)

3.2 Extract inject logic to kild-core

  • Move write_to_inbox() from crates/kild/src/commands/inject.rs to crates/kild-core/src/sessions/fleet.rs
  • New function: write_inbox_message(team, branch, text) -> Result<()>
  • CLI delegates to new kild-core function

3.3 Inject Command Bar

  • Persistent text input + "Send" button at bottom of Fleet view
  • Contextual: selected row determines target worker
  • On submit: calls write_task() + write_inbox_message() (claude) or write_stdin() (other agents)
  • Add inject_input and inject_target to MainView state

Files

  • crates/kild-core/src/sessions/fleet.rs — add write_inbox_message()
  • crates/kild/src/commands/inject.rs — delegate to kild-core
  • crates/kild-ui/src/views/dashboard_view.rs — fleet table + inject bar
  • crates/kild-ui/src/views/main_view/main_view_def.rs — inject input state
  • crates/kild-ui/src/actions.rsinject_message() action

Depends on

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Low priority - Nice to have, consider closing if staleeffort/highCross-cutting changes, multiple domains, requires design decisionsfeatureNew functionality (planned)fleetFleet/brain (Honryū) coordinationuiGPUI native GUI (kild-ui)

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions