Discord channel: reply fails after long-running tasks + permission prompts lack context on mobile
Description
Two UX issues with the Discord channel plugin during real-world usage.
Issue 1: reply tool fails with "channel is not allowlisted" after long-running tasks
Steps to reproduce:
- Receive a message from Discord (via channel notification)
- Kick off a long-running task (e.g., delegating work to another process that takes 2-5 minutes)
- After the task completes, call
replyto send the result back to Discord
Expected: Reply is sent successfully
Actual: reply failed: channel <chat_id> is not allowlisted — add via /discord:access
Workaround found: Calling fetch_messages(channel, limit=1) before reply re-activates the channel and allows the reply to go through. However, this workaround is inconsistent — sometimes fetch_messages itself also fails with the same error.
Notes:
- The sender's user ID is already in
allowFrominaccess.json - Editing
access.json(adding chat_id to groups, etc.) does not fix it - Replying immediately after receiving a message works fine
- The issue seems tied to some internal session/activation state that expires
Issue 2: Permission prompts on Discord lack context
When Claude Code requests permission (e.g., Bash, Write, Edit tool calls), the prompt is relayed to Discord. However, the user on Discord only sees the tool name and a generic permission request — they cannot see:
- What command will be executed (for Bash)
- What file will be written/edited (for Write/Edit)
- What the actual content/changes are
This means the user is essentially approving actions blindly. For non-technical users managing Claude Code remotely via Discord, this is a significant security concern — they have no way to make an informed decision about whether to allow or deny the action.
Suggestion: Include a summary or preview of the tool call parameters in the permission prompt sent to Discord, so users can understand what they're approving.
Environment
- Claude Code CLI (latest)
- Discord channel plugin (official)
- macOS
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗