Skip to content

feat(bridge): /menu control panel with button-based UI#35

Merged
y49 merged 1 commit into
mainfrom
feature/control-panel
Apr 6, 2026
Merged

feat(bridge): /menu control panel with button-based UI#35
y49 merged 1 commit into
mainfrom
feature/control-panel

Conversation

@y49

@y49 y49 commented Apr 6, 2026

Copy link
Copy Markdown
Owner

Summary

  • New /menu command opens a visual control panel card with 6 action buttons (Model, Effort, Perm, Sessions, Stop, Stats)
  • Sub-menus edit the same card in-place: model picker, effort picker (2×2 grid), session list with Switch/New buttons, stats card
  • Per-platform rendering: Telegram HTML + InlineKeyboard, Discord Embed + Buttons, Feishu Interactive Card
  • Deprecation path: old text commands (/perm, /effort, /model, /stop, /verbose) now show "💡 Tip: Use /menu" hint; /help reorganized to feature /menu
  • Telegram bot commands updated to include /menu at top of list
  • Minor additions: CostTracker.sessionTotalUsd getter, SDKEngine.getCostTracker() for stats

Test plan

  • 26 unit tests passing (control-panel.test.ts)
  • Full suite: 474/476 passing (2 pre-existing markdown-it failures)
  • Manual test: Telegram /menu → verify card + all sub-menus
  • Manual test: Discord /menu → verify embed + buttons
  • Manual test: Feishu /menu → verify card header + buttons

Replace text-based commands with a visual control panel. `/menu` opens
a single-card UI with buttons for Model, Effort, Perm, Sessions, Stop,
and Stats. Sub-menus edit the same card in-place (no spam).

- ControlPanel class with per-platform rendering (Telegram HTML,
  Discord Embed, Feishu Card)
- Model picker, effort picker, session list with switch buttons,
  stats card — all as sub-menus with ↩ Back
- Wire into CommandRouter (/menu) and CallbackRouter (panel: callbacks)
- Deprecate old text commands with /menu hint
- Update /help to feature /menu prominently
- Register /menu in Telegram bot commands
- CostTracker: add sessionTotalUsd getter
- SDKEngine: add getCostTracker() for stats card
@y49 y49 merged commit 4344db9 into main Apr 6, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant