Docs/Plugins

Member identity plugin

Saves a member's server identity when they leave (and optionally while they are still in the server) so chosen parts can be restored when they rejoin. This plugin has no commands — configure it on the dashboard or in guild YAML.

Dreamliner stores nickname, role IDs, and timeout expiry. Guild avatars and banners belong to the user account and cannot be restored.

#Configuration

yaml
plugins:
  member_identity:
    enabled: true
    config:
      save_on_leave: true
      save_on_update: true
      restore_nickname: true
      restore_roles: true
      restore_timeout: false
      skip_managed_roles: true
      ignore_bots: true
      ignored_roles: []
      delay_ms: 0
FieldDescription
save_on_leaveSnapshot identity when the member leaves
save_on_updateKeep the snapshot current on nickname, role, or timeout changes. Recommended so incomplete leave payloads still restore correctly
restore_nicknameReapply the saved server nickname on rejoin
restore_rolesReapply saved roles on rejoin. Roles are added; autorole and other join roles are not stripped
restore_timeoutReapply a remaining timeout if it had not expired when they left (requires Moderate Members). Off by default
skip_managed_rolesSkip Discord-managed roles (integrations, bots, boost)
ignore_botsDo not save or restore bot accounts
ignored_rolesRole IDs that are never restored even if they were saved
delay_msWait after join before restoring (0 = immediately). Max 5 minutes

Set enabled: false on the plugin section to turn the plugin off without deleting stored snapshots.

#Requirements

  • The bot needs Manage Roles to restore roles, and its highest role must be above every role it should reapply.
  • The bot needs Manage Nicknames to restore nicknames.
  • Timeout restore also needs Moderate Members.
  • Unassignable, deleted, ignored, and (when enabled) managed roles are skipped.

#How it works with Autorole

Member Identity adds persisted roles on top of whatever Autorole assigns. It does not remove other roles. If you do not want a specific role restored (for example a one-time welcome role), add it to ignored_roles.