SKILL.md
readonly

discord

المؤلف:openclaw
الفئة:
التطوير
323.6k
62.4k
name: discord
description: Discord ops via the message tool (channel=discord).
metadata: { "openclaw": { "emoji": "🎮", "requires": { "config": ["channels.discord.token"] } } }
allowed-tools: ["message"]

Discord (Via message)

Use the message tool. No provider-specific discord tool exposed to the agent.

Musts

  • Always: channel: "discord".
  • Respect gating: channels.discord.actions.* (some default off: roles, moderation, presence, channels).
  • Prefer explicit ids: guildId, channelId, messageId, userId.
  • Multi-account: optional accountId.

Guidelines

  • Avoid Markdown tables in outbound Discord messages.
  • Mention users as <@USER_ID>.
  • Prefer Discord components v2 (components) for rich UI; use legacy embeds only when you must.

Targets

  • Send-like actions: to: "channel:<id>" or to: "user:<id>".
  • Message-specific actions: channelId: "<id>" (or to) + messageId: "<id>".

Common Actions (Examples)

Send message:

json
{
  "action": "send",
  "channel": "discord",
  "to": "channel:123",
  "message": "hello",
  "silent": true
}

Send with media:

json
{
  "action": "send",
  "channel": "discord",
  "to": "channel:123",
  "message": "see attachment",
  "media": "file:///tmp/example.png"
}
  • Optional silent: true to suppress Discord notifications.

Send with components v2 (recommended for rich UI):

json
{
  "action": "send",
  "channel": "discord",
  "to": "channel:123",
  "message": "Status update",
  "components": "[Carbon v2 components]"
}
  • components expects Carbon component instances (Container, TextDisplay, etc.) from JS/TS integrations.
  • Do not combine components with embeds (Discord rejects v2 + embeds).

Legacy embeds (not recommended):

json
{
  "action": "send",
  "channel": "discord",
  "to": "channel:123",
  "message": "Status update",
  "embeds": [{ "title": "Legacy", "description": "Embeds are legacy." }]
}
  • embeds are ignored when components v2 are present.

React:

json
{
  "action": "react",
  "channel": "discord",
  "channelId": "123",
  "messageId": "456",
  "emoji": "✅"
}

Read:

json
{
  "action": "read",
  "channel": "discord",
  "to": "channel:123",
  "limit": 20
}

Edit / delete:

json
{
  "action": "edit",
  "channel": "discord",
  "channelId": "123",
  "messageId": "456",
  "message": "fixed typo"
}
json
{
  "action": "delete",
  "channel": "discord",
  "channelId": "123",
  "messageId": "456"
}

Poll:

json
{
  "action": "poll",
  "channel": "discord",
  "to": "channel:123",
  "pollQuestion": "Lunch?",
  "pollOption": ["Pizza", "Sushi", "Salad"],
  "pollMulti": false,
  "pollDurationHours": 24
}

Pins:

json
{
  "action": "pin",
  "channel": "discord",
  "channelId": "123",
  "messageId": "456"
}

Threads:

json
{
  "action": "thread-create",
  "channel": "discord",
  "channelId": "123",
  "messageId": "456",
  "threadName": "bug triage"
}

Search:

json
{
  "action": "search",
  "channel": "discord",
  "guildId": "999",
  "query": "release notes",
  "channelIds": ["123", "456"],
  "limit": 10
}

Presence (often gated):

json
{
  "action": "set-presence",
  "channel": "discord",
  "activityType": "playing",
  "activityName": "with fire",
  "status": "online"
}

Writing Style (Discord)

  • Short, conversational, low ceremony.
  • No markdown tables.
  • Mention users as <@USER_ID>.

الإجراءات

install --global skills.sh
npx skills add openclaw/openclaw/skills/discord

دليل الاستخدام

  1. 1. تشغيل أمر التثبيت

    انسخ الأمر أعلاه وشغّله في الطرفية للتثبيت العام.

  2. 2. تهيئة البيئة

    أضف متغيرات البيئة المطلوبة إلى عميل MCP وفقاً لوصف المهارة.

  3. 3. الاستخدام في التطبيق

    ثبّت هذه المهارة وفعّلها في تطبيق متوافق مع MCP (مثل Claude أو Cursor).