Manage permissions in Discord

Edit permission rules, check access and run command sync from the /permissions panel

The /permissions command opens a private panel in Discord that manages the same rules as Settings → Permissions in the dashboard. A change made in the panel appears in the dashboard, and a change made in the dashboard appears in the panel. There is no separate Discord-only configuration.

The panel edits one rule at a time. Bulk edits with a reviewed batch, the full capability catalog and the check-all access matrix stay in the dashboard; see Set up role-based access.

Open the panel

Run this command in the server:

Aethor replies with an ephemeral panel that only you can see. Every button and menu updates that same message in place, so the panel never fills the channel with follow-up messages.

Suggestions · 2 custom rules
Tags · 1 custom rule
Tickets · inherited defaults
Button roles · inherited defaults
…and 6 more areas in the menu below
Not enabled
Check access Sync with Discord Refresh

A select menu under the message lists every feature area. Areas with custom rules are listed first in the embed, and the Command sync field shows whether command visibility sync is enabled and its last outcome.

Viewing the panel requires the manager rule: Discord’s Manage Channels, Manage Messages and Manage Server, or being the server owner or a Discord administrator. Every edit is checked again against the same rule when you press the button. These two capabilities are non-overridable, so a custom role rule can never open the panel to a non-manager; see Access that cannot be delegated away.

The optional target argument opens a specific rule directly. Its autocomplete searches the same group and action labels the dashboard shows, so /permissions target:Suggestions · Moderators skips the area menu.

Browse rules by feature area

Pick a feature area in the menu to see its rules:

  • Group rules lists each level with its current rule, either the Discord default with the required permissions or the selected roles.
  • Action overrides lists only the actions in that area that have their own exception. The field is absent when there are none.

Names in the panel are the same labels the dashboard uses. Settings that cannot be delegated, such as the permission system itself, never appear in the panel’s menus.

Edit a rule

Choose a rule in the area view to open it. The panel shows the current rule, how many actions the rule applies to, and what the rule falls back to if you reset it.

Current rule: roles: @Suggestion Team Falls back to the Discord default: Manage Messages Use Discord default Choose roles… Reset to inherit Back

The three edit buttons match the dashboard’s rule editor:

  • Use Discord default stores an explicit rule that uses the built-in Discord permission requirement.
  • Choose roles… opens a role picker, pre-filled with the currently selected roles. Submitting the picker saves immediately. An empty selection is rejected; use the Discord default instead when nobody should qualify through roles.
  • Reset to inherit removes the stored rule. A group falls back to its Discord default; an action override falls back to its group rule.

There is no draft or review step in Discord. Each edit saves on its own, the panel confirms with a Saved view, and the change is recorded in the audit log like a dashboard edit. A saved rule is not destructive: edit the same rule again to change it back.

A role rule replaces the normal Discord permission requirement, exactly as it does in the dashboard. Read Permissions and capabilities before delegating a group for the first time.

When someone edits at the same time

Every save checks that the rules have not changed since the panel rendered. If another manager saved from the dashboard, or from their own panel, while you were editing, the panel shows Settings changed elsewhere: nothing was saved, and the panel refreshes to the current rules so you can repeat the edit against them. This is the same version conflict the dashboard reports.

Check a member’s access

Check access on the home view answers the same question as the dashboard’s Access tab: what can this person actually do? Pick a member, pick a feature area, then pick an action. The panel shows the decision and the rule that produced it:

  • Allowed, naming the role rule or the Discord default that matched; or
  • Not allowed, naming the missing roles or Discord permissions, or another blocking check such as membership, Aethor’s own Discord permissions or a Premium requirement.

The check uses the same server-side evaluator as the dashboard and the commands themselves. For checking every action at once, or checking a role instead of a person, use the dashboard’s Access tab.

Sync with Discord

Sync with Discord on the home view runs the command visibility sync, which mirrors role rules into Discord’s command picker.

When sync is already enabled for the server, the panel runs it immediately and shows the per-command report: how many commands were updated, already in sync, not mirrored, or failed.

When sync is not enabled, enabling it requires a one-time authorization in a browser, because Discord only accepts command-permission updates with that consent. The panel shows a link button instead of running the sync:

Discord needs a one-time authorization in your browser before Aethor can mirror these rules onto command visibility. The link signs you in, asks for consent, and finishes on its own — this message updates when it's done.

The link works once, only for you, and expires in 60 seconds.
Enable sync in browser Back

The link is single-use, only works for the person who opened the panel, and expires after 60 seconds. Opening it signs you in, asks for Discord’s consent, and ends on a page that tells you the tab can be closed. Aethor then runs the sync and updates the panel message in Discord with the result. If the panel was open too long for that update to arrive, return to the home view and select Refresh to see the current sync status.

The account that authorizes must meet the same requirements as enabling sync from the dashboard: it needs enough Discord authority and must outrank the mirrored roles. See Enabling sync.