Skip to content

Comments

feat(tui): add command palette with read-only agent management commands#599

Merged
bug-ops merged 2 commits intomainfrom
feat/572-tui-command-palette
Feb 19, 2026
Merged

feat(tui): add command palette with read-only agent management commands#599
bug-ops merged 2 commits intomainfrom
feat/572-tui-command-palette

Conversation

@bug-ops
Copy link
Owner

@bug-ops bug-ops commented Feb 19, 2026

Summary

  • Introduce vim-style command palette (: key) for TUI dashboard with fuzzy-searchable overlay
  • Phase 1 implements 7 read-only commands: skill:list, mcp:list, memory:stats, view:cost, view:tools, view:config, view:autonomy
  • Dedicated mpsc channel for TUI → Agent communication; most commands resolve locally from MetricsSnapshot
  • Command dispatch via closed enum — no user input evaluation

Changes

  • New: crates/zeph-tui/src/command.rsTuiCommand enum, CommandEntry, command_registry(), filter_commands()
  • New: crates/zeph-tui/src/widgets/command_palette.rs — overlay widget with fuzzy search and keyboard navigation
  • Modified: app.rs, channel.rs, event.rs, lib.rs, widgets/mod.rs, src/main.rs
  • 888 lines added, 35+ new tests (1908 total pass)

Test plan

  • cargo +nightly fmt --check passes
  • cargo clippy --workspace -- -D warnings passes
  • cargo nextest run --workspace --lib --bins — 1908 tests pass
  • All 7 commands tested (registry, fuzzy filter, execution)
  • Keyboard navigation tested (open/close, arrow keys, Enter, Escape)
  • Security audit: no injection vectors, bounded channels, no secrets exposed

Closes #572

Introduce vim-style command palette (`:` key) for TUI dashboard with
fuzzy-searchable overlay. Phase 1 implements 7 read-only commands:
skill:list, mcp:list, memory:stats, view:cost, view:tools, view:config,
view:autonomy.

Architecture uses dedicated mpsc channel (TUI -> Agent) for commands
requiring agent-loop access, while most commands resolve locally from
MetricsSnapshot. Command dispatch uses closed enum — no user input
evaluation.

Closes #572
@github-actions github-actions bot added rust enhancement New feature or request size/XL labels Feb 19, 2026
Remove unused `mut` on `ch` bindings in try_recv_command tests where the
variable is immediately shadowed. Fixes -D unused-mut error when building
with --features full.
@bug-ops bug-ops enabled auto-merge (squash) February 19, 2026 12:48
@bug-ops bug-ops merged commit 824e89d into main Feb 19, 2026
20 checks passed
@bug-ops bug-ops deleted the feat/572-tui-command-palette branch February 19, 2026 13:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request rust size/XL

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Epic: TUI Command Palette for agent management

1 participant