🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

Discord Roster

by @wehub4me

Query Discord guild members, list bots, get channel and role info via REST API. Use when: listing server members, checking who's a bot, viewing channel permi...

Versionv1.0.2
Downloads697
Stars⭐ 1
TERMINAL
clawhub install discord-roster

πŸ“– About This Skill


name: discord-roster description: "Query Discord guild members, list bots, get channel and role info via REST API. Use when: listing server members, checking who's a bot, viewing channel permissions, inspecting guild roles, or auditing a Discord server's roster." metadata: { "openclaw": { "emoji": "πŸ“‹", "requires": { "config": ["channels.discord.token"] } } } allowed-tools: ["exec"]

Discord Roster

Inspect Discord guilds: members, bots, channels, roles. Read-only queries via REST API.

Setup

The script scripts/discord-roster.sh handles everything. It reads the bot token from ~/.openclaw/openclaw.json and auto-detects proxy settings.

Usage

bash skills/discord-roster/scripts/discord-roster.sh  [args...]

Commands

List guild members (most common):

# All members
bash skills/discord-roster/scripts/discord-roster.sh members 

Bots only

bash skills/discord-roster/scripts/discord-roster.sh members --bots

Humans only

bash skills/discord-roster/scripts/discord-roster.sh members --humans

Get channel info:

bash skills/discord-roster/scripts/discord-roster.sh channel 

List guild channels:

bash skills/discord-roster/scripts/discord-roster.sh channels 

List guild roles:

bash skills/discord-roster/scripts/discord-roster.sh roles 

Look up which guild a channel belongs to:

bash skills/discord-roster/scripts/discord-roster.sh guild-of 

Output

All commands output clean, tab-separated text for easy parsing. Example for members:

TYPE    USERNAME        DISPLAY_NAME    ID                  JOINED_AT           ROLES
BOT     my-bot          β€”               1234567890123456789 2026-01-15T10:30    9876543210987654321
BOT     helper-bot      β€”               2345678901234567890 2026-01-15T10:31    β€”
HUMAN   johndoe         John            3456789012345678901 2026-01-15T10:25    β€”

Proxy

The script checks for proxy in this order: 1. channels.discord.proxy in openclaw.json 2. HTTPS_PROXY / https_proxy env var 3. Direct connection (no proxy)

Troubleshooting

  • 403 Forbidden: Bot lacks SERVER MEMBERS INTENT β€” enable in Discord Developer Portal > Bot > Privileged Gateway Intents.
  • Unknown Guild: Bot isn't in that guild. Invite it first.
  • Connection timeout: Check proxy settings. Discord requires external network access.
  • πŸ’‘ Examples

    bash skills/discord-roster/scripts/discord-roster.sh  [args...]
    

    Commands

    List guild members (most common):

    # All members
    bash skills/discord-roster/scripts/discord-roster.sh members 

    Bots only

    bash skills/discord-roster/scripts/discord-roster.sh members --bots

    Humans only

    bash skills/discord-roster/scripts/discord-roster.sh members --humans

    Get channel info:

    bash skills/discord-roster/scripts/discord-roster.sh channel 
    

    List guild channels:

    bash skills/discord-roster/scripts/discord-roster.sh channels 
    

    List guild roles:

    bash skills/discord-roster/scripts/discord-roster.sh roles 
    

    Look up which guild a channel belongs to:

    bash skills/discord-roster/scripts/discord-roster.sh guild-of 
    

    βš™οΈ Configuration

    The script scripts/discord-roster.sh handles everything. It reads the bot token from ~/.openclaw/openclaw.json and auto-detects proxy settings.

    πŸ“‹ Tips & Best Practices

  • 403 Forbidden: Bot lacks SERVER MEMBERS INTENT β€” enable in Discord Developer Portal > Bot > Privileged Gateway Intents.
  • Unknown Guild: Bot isn't in that guild. Invite it first.
  • Connection timeout: Check proxy settings. Discord requires external network access.