The right access from the start

Roles arrive with
the member who needs them.

Choose distinct starting roles for people and bot accounts. Guardy checks the Discord hierarchy before each assignment and skips a role it cannot safely grant without blocking the remaining choices.

Assignment with guardrails

Separate the sets.
Respect the hierarchy.

Automatic should never mean careless. Every selected role remains tied to a clear account type and a permission boundary Discord can enforce.

Human member roles

Give new people the baseline roles your community expects without repeating the same moderator action.

Separate bot roles

Bot accounts use their own role set, so integrations never inherit a human member default by accident.

Hierarchy-aware assignment

Guardy checks whether its highest role can assign each selection at join time and skips an individual role that sits out of reach.

Verification-aware joins

When the join gate is active, normal member roles wait until the person completes the required verification step.

Missing selections stay removable

When a saved Discord role no longer resolves, its stored ID remains visible so an admin can remove the stale selection.

A reversible module switch

Pause new assignments without erasing the human and bot role sets you configured.

A safe assignment path

Identify. Check. Grant.

  1. 01
    Classify the joinGuardy distinguishes a human member from a bot account before choosing a role set.
  2. 02
    Check the ladderEvery selected role is compared with Guardy and Discord hierarchy constraints.
  3. 03
    Continue through the setRoles are granted one by one, so one unavailable or failed choice does not prevent Guardy from trying the rest.

Keep the progress

Start every member in the right place.

Configure role sets once, keep the hierarchy honest, and remove repetitive join administration from the queue.