`--channels` removes AskUserQuestion, EnterPlanMode, and ExitPlanMode tools

Resolved 💬 3 comments Opened Apr 15, 2026 by tompahoward Closed Apr 15, 2026

--channels removes AskUserQuestion, EnterPlanMode, and ExitPlanMode tools

Claude Code version: 2.1.108
Platform: macOS (Darwin 25.3.0)
Date observed: 2026-04-15

Summary

Starting Claude Code with --channels plugin:<any-channel-plugin>@claude-plugins-official removes the built-in AskUserQuestion, EnterPlanMode, and ExitPlanMode tools from the session. Sessions started without --channels have these tools available.

This contradicts the official channels documentation, which explicitly describes AskUserQuestion (rendered as Discord buttons/select menus) and EnterPlanMode/ExitPlanMode (rendered as approve/cancel embeds) working with channels.

Impact

Any skill or workflow that depends on structured user questions or plan mode becomes unusable inside a --channels session. This is especially painful for plugins designed specifically for cross-session collaboration via channels — their interactive setup flows can't run in the very sessions they're meant to configure.

Reproduction

Claude Code 2.1.108, fakechat@claude-plugins-official 0.0.1 installed at project scope.

Without --channels:

$ claude -p "List the names of every tool you have available. Just the names, one per line."

Output (abridged — deferred tools):

AskUserQuestion
CronCreate
CronDelete
CronList
EnterPlanMode
EnterWorktree
ExitPlanMode
ExitWorktree
Monitor
NotebookEdit
...

With --channels:

$ claude --channels plugin:fakechat@claude-plugins-official -p "List the names of every tool you have available. Just the names, one per line."

Output (abridged — deferred tools):

CronCreate
CronDelete
CronList
EnterWorktree
ExitWorktree
Monitor
NotebookEdit
...

Diff: AskUserQuestion, EnterPlanMode, ExitPlanMode are present without --channels, removed with --channels. All other deferred tools are identical between the two listings.

Reproduced with two channel plugins:

  • plugin:discord@claude-plugins-official (0.0.4)
  • plugin:fakechat@claude-plugins-official (0.0.1)

The behaviour is identical for both, confirming it is tied to the --channels flag, not any specific channel plugin. The test above uses claude -p (one-shot) for a reproducible command-line capture — the same diff is observed in interactive sessions.

Expected behaviour

Per the channels documentation, AskUserQuestion, EnterPlanMode, and ExitPlanMode should remain available in --channels sessions, with their UI rendered into the active channel (Discord buttons, approve/cancel embeds, etc.).

Observed behaviour

All three tools are absent from the tool manifest when --channels is active. They return to the manifest the moment --channels is removed.

Environment

  • claude --version: 2.1.108 (Claude Code)
  • npm view @anthropic-ai/claude-code version: 2.1.108 (fully up to date)
  • OS: macOS Darwin 25.3.0
  • Channel plugins tested: discord@0.0.4, fakechat@0.0.1

Additional context

  • Tracked internally as P008 in the Windy Road Agent Plugins suite:

https://github.com/windyroad/agent-plugins/blob/main/docs/problems/008-askuserquestion-unavailable-with-channels.open.md

  • Blocks the setup flow of @windyroad/connect@0.3.2 (cross-repo collaboration plugin):

https://github.com/windyroad/agent-plugins/tree/main/packages/connect

  • ADR describing the intended use of --channels:

https://github.com/windyroad/agent-plugins/blob/main/docs/decisions/006-connect-plugin.proposed.md

A session debug log can be provided on request.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗