feat(channels): Allow toggling channels on/off within a running session
Problem
The --channels flag is currently a startup-only parameter. Once a session starts with --channels, there is no way to pause/resume channel connectivity mid-session.
This creates an all-or-nothing choice: either run with channels (losing AskUserQuestion, plan-mode tools) or run without channels (losing remote message handling).
Use Case
Users who work with both terminal and remote channels (Discord, Telegram) often need to:
- Receive channel messages and respond → channels ON
- Run interactive workflows (skills with
AskUserQuestion, plan approvals) → channels OFF - Resume channel monitoring → channels ON
Currently this requires exiting and restarting the session, losing context.
Proposed Solution
Add a runtime toggle, consistent with existing patterns:
/channels pause # temporarily disable channel message handling + re-enable AskUserQuestion
/channels resume # re-enable channel handling + disable blocking tools
/channels status # show current state
This mirrors the existing /mcp enable/disable and /plugin enable/disable patterns.
Why This Matters
Combined with #38498 (channel relay for AskUserQuestion), this provides two complementary solutions:
- Short term:
/channels pauseas a workaround when interactive tools are needed - Long term: #38498 channel relay eliminates the need to pause at all
Related
- #38498 — Extend channel relay to AskUserQuestion and all modal dialogs
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗