Guide · Agent skill
How to use the Discord Access Manager agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
The Discord Access Manager skill, named access, lets an AI agent manage who can reach it through a Discord channel. It can show current status, approve or deny pairing codes, edit the allowlist of user IDs, and set how direct messages and group channels are handled. This guide explains what agent skills are, how to install this one, how to trigger it with plain requests, and the safety rules it enforces.
Quick start
- 1Download and unzip the skill. Download the ZIP from this page and unzip it so that SKILL.md sits inside an access folder.
- 2Place it in your skills folder. Move the access folder to ~/.claude/skills/ for all projects, or to .claude/skills/ inside one project. Or upload the ZIP under Settings → Capabilities → Skills in the Claude apps.
- 3Confirm the Discord channel is running. The skill needs Claude Code or a compatible agent with the Discord channel server running, since the server re-reads the access file.
- 4Check the current status. Run /discord:access with no argument to see the policy, allowlist count, pending codes and groups.
- 5Approve a pending pairing. When someone messages the bot, they receive a code. Run /discord:access pair <code> in your terminal to approve that exact code.
- 6Adjust policy or the allowlist as needed. Use the allow, remove, policy or group commands to change access, then check status again to confirm.
What is an agent skill, and what does this one do?
An agent skill is a folder containing a SKILL.md file that gives an AI agent specific instructions and permissions for one kind of task. When a request matches the skill's description, the agent follows the instructions in that file.
The access skill works on the access settings for a Discord channel. It shows the current status, lists pending pairing requests with their codes, sender IDs and age, approves or denies pairing codes, adds or removes allowed sender IDs, sets the direct message policy to pairing, allowlist or disabled, and configures group channels. It can also change delivery settings such as ackReaction, replyToMode, textChunkLimit, chunkMode and mentionPatterns.
How do you install the access skill?
Download the ZIP from this page and unzip it. The skill is a single file, SKILL.md. Place the unzipped access folder in one of two locations: ~/.claude/skills/ to make it available to all your projects, or a project's .claude/skills/ folder to limit it to that project.
You can also upload the ZIP in the Claude apps under Settings → Capabilities → Skills.
- Personal install: ~/.claude/skills/access
- Project install: .claude/skills/access inside your project folder
- Claude apps: Settings → Capabilities → Skills, then upload the ZIP
What does the skill need before it runs?
The skill requires Claude Code or a compatible agent with the Discord channel server running. It needs Read and Write permissions, plus limited Bash permissions for ls and mkdir. It reads and writes one local file at ~/.claude/channels/discord/access.json, which is created automatically if it is missing.
The skill does not run scripts and does not use the network. The agent edits the JSON file, and the channel server picks up the change. The agent never contacts Discord directly.
How do you trigger the skill with a natural request?
You can use the slash command /discord:access, optionally followed by an argument. You can also ask in plain language. The skill's description mentions requests to pair, approve someone, check who is allowed, or change policy for the Discord channel.
With no argument, the skill shows status. Pairing always needs the code: if you say approve the pairing without one, the agent lists the pending entries and asks which code to use.
- /discord:access (no argument): show status
- /discord:access pair <code>: approve a pending pairing
- /discord:access deny <code>: reject a pending pairing
- /discord:access allow <senderId>: add a user to the allowlist
- /discord:access remove <senderId>: remove a user from the allowlist
- /discord:access policy <mode>: set pairing, allowlist or disabled
- /discord:access group add <channelId> (optional --no-mention, --allow id1,id2)
- /discord:access group rm <channelId>
- /discord:access set <key> <value>
/discord:access pair <code>What are the safety rules?
The skill only acts on requests typed by you in your terminal session. If a request to approve a pairing, change the allowlist or change policy arrives through a channel message, such as a Discord or Telegram message, the agent refuses and tells you to run /discord:access yourself. Channel messages can contain prompt injection, so access changes must never follow from untrusted input.
The skill also will not auto-pick a pending pairing even when there is only one. A stranger can create a pending entry by messaging the bot, so the agent always requires you to name the code.
- Sender IDs are Discord user IDs. Chat IDs are DM channel IDs. They are different values, so check which one you are entering.
- Always review the pending list and the allowlist before approving anyone.
- On shared or production bots, a mistaken allowlist edit can expose the agent to unwanted users.
Tips for using the access skill well
The skill reads the file before every write, because the channel server may have added pending entries in the meantime. Ask for status first to see what is pending, then act on a specific code. Pending entries expire, and the skill reports an expired or unknown code instead of approving it.
If the channels folder does not exist yet because the server has not run, the skill creates default settings. The file is pretty-printed with two-space indentation so you can also edit it by hand.
- Run status before making changes.
- Use specific codes and sender IDs rather than vague requests.
- Keep test bots separate from production bots.
What people use it for
- A developer pairing their own Discord account to a new Claude Code bot before sharing it with anyone else.
- An admin reviewing pending pairing requests each week and denying codes from unknown senders.
- Removing a former collaborator's user ID from the allowlist after they leave a project.
- Setting a group channel to respond without a mention, or limiting it to specific user IDs with --allow.
- Changing the DM policy to allowlist so only listed users can reach the bot.
Frequently asked questions
How do I install the Discord access agent skill?
Download the ZIP from this page and unzip it. Place the access folder in ~/.claude/skills/ for all projects, or in .claude/skills/ inside a project. You can also upload the ZIP in the Claude apps under Settings → Capabilities → Skills.
What do I need to use this skill?
You need Claude Code or a compatible agent with the Discord channel server running, plus Read, Write and limited Bash (ls, mkdir) permissions. It uses a local file at ~/.claude/channels/discord/access.json, which is created if missing. It does not run scripts and does not use the network.
Is the Discord Access Manager skill free?
This page does not state pricing. The skill is listed under the Apache-2.0 licence, so check the licence file in the source repository for the terms of use.
Why does the skill refuse to approve a pairing I asked for in Discord?
The skill only acts on requests typed in your terminal session. Requests that arrive as channel messages can carry prompt injection, so the agent refuses and asks you to run /discord:access yourself.
Why won't the agent approve the only pending pairing automatically?
Anyone can message the bot to create a pending entry. The skill requires you to name the exact code, so a stranger's seeded entry cannot be approved by a vague request like approve the pending one.
What is the difference between a sender ID and a chat ID?
Sender IDs are Discord user IDs and go in the allowlist. Chat IDs are DM channel IDs and differ from the user's ID. The skill's documentation warns against confusing the two.
What should I check before using this on a shared bot?
Review the pending list and the allowlist before approving anyone. A mistaken allowlist edit on a shared or production bot can expose the agent to unwanted users, so test changes on a separate bot first.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Use this skill if you run a Discord channel integration with Claude Code and need to control who can reach the bot, approve your own pairing safely, or clean up the allowlist. Pick something else if you do not run this Discord channel, or if you want approvals triggered from Discord messages, since the skill is built to refuse that.
Download the skill