Skip to content
Automation
Skill

/discord-manage-channel

Manage and update Discord channels via the Discord API. Use this skill when the user wants to modify channel properties, update names/topics, change permissions, or delete channels.

From plugin
evo-nexus
520193 skills38 agents40 commands9 MCP
Install
$ npx -y skills add evolution-foundation/evo-nexus --skill discord-manage-channel --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/discord-manage-channel

Context preview

The summary Claude sees to decide when to auto-load this skill.

Manage and update Discord channels via the Discord API. Use this skill when the user wants to modify channel properties, update names/topics, change permissions, or delete channels.

SKILL.md

discord-manage-channel.SKILL.md
name: discord-manage-channel
description: Manage and update Discord channels via the Discord API. Use this skill when the user wants to modify channel properties, update names/topics, change permissions, or delete channels.

Discord Manage Channel

Manage and update Discord channels using the Discord API v10. This skill supports modifying channel properties including name, topic, position, permissions, and deleting channels.

When to Use This Skill

Use this skill when the user wants to:

  • Rename a Discord channel
  • Update a channel's topic/description
  • Change channel permissions
  • Move a channel to a different category
  • Reorder channel positions
  • Toggle NSFW status
  • Update voice channel settings (user limit, bitrate)
  • Delete a channel

Prerequisites

  • `DISCORD_BOT_TOKEN` environment variable must be set
  • Bot must be a member of the target server
  • Bot must have "Manage Channels" permission in the server
  • Valid Discord channel ID (18-19 digit snowflake ID)

Instructions

When the user requests to manage a Discord channel:

1. **Validate Requirements**

  • Confirm `DISCORD_BOT_TOKEN` is set in environment
  • Verify channel ID is provided (18-19 digit number)
  • Ensure bot has "Manage Channels" permission
  • Validate any new values (name, topic, etc.)

2. **Determine Operation Type**

  • Update (PATCH): Modify channel properties
  • Delete (DELETE): Remove channel permanently

3. **For Updates - Prepare Payload** Include only the fields you want to change:

  • `name`: New channel name (2-100 chars, lowercase, hyphens/underscores)
  • `topic`: New topic (max 1024 chars for text channels)
  • `position`: New sort position (integer)
  • `parent_id`: Move to different category (category channel ID or null)
  • `nsfw`: Toggle NSFW status (true/false)
  • `permission_overwrites`: Update permissions (array)
  • `user_limit`: Voice channel user limit (0-99, 0 = unlimited)
  • `bitrate`: Voice channel bitrate (8000-96000 for non-boosted servers)

4. **Make the API Request**

**Update Channel (PATCH):**

   curl -X PATCH "https://discord.com/api/v10/channels/{CHANNEL_ID}" \
     -H "Authorization: Bot ${DISCORD_BOT_TOKEN}" \
     -H "Content-Type: application/json" \
     -d '{
       "name": "new-channel-name",
       "topic": "New channel topic"
     }'

**Delete Channel (DELETE):**

   curl -X DELETE "https://discord.com/api/v10/channels/{CHANNEL_ID}" \
     -H "Authorization: Bot ${DISCORD_BOT_TOKEN}"

5. **Handle Response**

  • 200 OK (Update): Channel updated successfully
  • 204 No Content (Delete): Channel deleted successfully
  • 400 Bad Request: Invalid parameters
  • 401 Unauthorized: Invalid bot token
  • 403 Forbidden: Missing "Manage Channels" permission
  • 404 Not Found: Channel doesn't exist

6. **Report Results**

  • Confirm operation completed successfully
  • Show what was changed
  • For deletes, warn that operation is permanent
  • If error occurs, explain clearly

Updatable Properties

Text Channels

| Property | Type | Description | Validation | |----------|------|-------------|------------| | name | string | Channel name | 2-100 chars, lowercase, hyphens/underscores | | topic | string | Channel topic | Max 1024 characters | | position | integer | Sort position | Positive integer | | parent_id | snowflake | Category ID | Valid category ID or null | | nsfw | boolean | NSFW status | true or false | | permission_overwrites | array | Permission overrides | Array of permission objects |

Voice Channels

| Property | Type | Description | Validation | |----------|------|-------------|------------| | name | string | Channel name | 2-100 chars | | position | integer | Sort position | Positive integer | | parent_id | snowflake | Category ID | Valid category ID or null | | user_limit | integer | Max users | 0-99 (0 = unlimited) | | bitrate | integer | Audio quality | 8000-96000 (higher for boosted) | | permission_overwrites | array | Permission overrides | Array of permission objects |

Categories

| Property | Type | Description | Validation | |----------|------|-------------|------------| | name | string | Category name | 2-100 chars | | position | integer | Sort position | Positive integer | | permission_overwrites | array | Permission overrides | Array of permission objects |

Common Operations

Rename Channel

{
  "name": "new-channel-name"
}

Update Topic

{
  "topic": "New channel description or topic"
}

Move to Category

{
  "parent_id": "123456789012345678"
}

Remove from Category

{
  "parent_id": null
}

Toggle NSFW

{
  "nsfw": true
}

Update Voice Settings

{
  "user_limit": 10,
  "bitrate": 64000
}

Update Position

{
  "position": 5
}

Permission Overwrites

To update channel permissions:

{
  "permission_overwrites": [
    {
      "id": "role_or_user_id",
      "type": 0,
      "allow": "1024",
      "deny": "2048"
    }
  ]
}

Permission structure:

  • `id`: Role ID or User ID
  • `type`: 0 for role, 1 for user
  • `allow`: Bitwise permission value (permissions to grant)
  • `deny`: Bitwise permission value (permissions to deny)

Common permission bits:

  • `1024` (0x400): VIEW_CHANNEL
  • `2048` (0x800): SEND_MESSAGES
  • `4096` (0x1000): SEND_TTS_MESSAGES
  • `8192` (0x2000): MANAGE_MESSAGES
  • `16384` (0x4000): EMBED_LINKS
  • `32768` (0x8000): ATTACH_FILES
  • `65536` (0x10000): READ_MESSAGE_HISTORY
  • `1048576` (0x100000): CONNECT (voice)
  • `2097152` (0x200000): SPEAK (voice)

Deleting Channels

**IMPORTANT:** Channel deletion is permanent and cannot be undone.

Before deleting: 1. Confirm with user that deletion is intentional 2. Warn that all messages will be lost 3. Suggest archiving as alternative if applicable 4. Verify channel ID is correct

Delete command:

curl -X DELETE "https://discord.com/api/v10/channels/{CHANNEL_ID}" \
  -H "Authori
Read more
Ships withevo-nexus

The open source operating system for AI-powered businesses

Get the whole plugin

Other skills on evo-nexus.