claude-code - 💡(How to fix) Fix `--channels` removes AskUserQuestion, EnterPlanMode, and ExitPlanMode tools [2 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#48216Fetched 2026-04-15 06:29:54
View on GitHub
Comments
2
Participants
2
Timeline
7
Reactions
0
Timeline (top)
labeled ×4commented ×2closed ×1

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.

Root Cause

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.

Code Example

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

---

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

---

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

---

CronCreate
CronDelete
CronList
EnterWorktree
ExitWorktree
Monitor
NotebookEdit
...
RAW_BUFFERClick to expand / collapse

--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: [email protected], [email protected]

Additional context

A session debug log can be provided on request.

extent analysis

TL;DR

The issue can be worked around by removing the --channels flag when using tools like AskUserQuestion, EnterPlanMode, and ExitPlanMode, or by investigating and potentially updating the channel plugin configuration to ensure compatibility.

Guidance

  • Verify that the issue persists across different channel plugins to confirm it's not plugin-specific, as already done with discord and fakechat plugins.
  • Review the official channels documentation and the ADR describing the intended use of --channels to understand the expected behavior and potential configuration options.
  • Check the session debug log for any errors or warnings related to the missing tools when --channels is active.
  • Consider testing with other tools and plugins to determine if the issue is specific to AskUserQuestion, EnterPlanMode, and ExitPlanMode, or if it's a broader problem.

Example

No code snippet is provided as the issue seems to be related to configuration and plugin compatibility rather than code.

Notes

The issue might be related to how the --channels flag interacts with the tool manifest, potentially filtering out certain tools. The fact that the tools return when --channels is removed suggests a configuration or compatibility issue rather than a fundamental problem with the tools themselves.

Recommendation

Apply workaround: Remove the --channels flag when using tools like AskUserQuestion, EnterPlanMode, and ExitPlanMode, or investigate updating the channel plugin configuration to ensure compatibility, as the root cause seems to be related to the interaction between the --channels flag and the tool manifest.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

claude-code - 💡(How to fix) Fix `--channels` removes AskUserQuestion, EnterPlanMode, and ExitPlanMode tools [2 comments, 2 participants]