| name | channel-setup |
| description | Guide users through setting up communication channels (Slack, Discord, Telegram, etc.) for MetaClaw |
| license | MIT |
| compatibility | ["metaclaw"] |
| allowed-tools | ["ReadFile","WriteFile","EditFile","Bash"] |
| metadata | {"version":"0.1.0","author":"MetaClaw","builtin":true} |
Channel Setup Guide
This skill guides users through configuring communication channels for MetaClaw.
Supported Channels
| Channel | Connection Type | Difficulty |
|---|
| Slack | Socket Mode (no public URL) | Easy |
| Discord | Gateway (no public URL) | Easy |
| Telegram | Long-polling (no public URL) | Easy |
| Webhook | HTTP POST | Easy |
| Email | IMAP/SMTP | Medium |
| WhatsApp | Cloud API + Webhook | Medium |
| Google Chat | Webhook | Medium |
| Microsoft Teams | Bot Framework | Medium |
| Twilio | Webhook | Medium |
| LINE | Webhook | Medium |
| WeChat | Webhook | Medium |
| Zoom | Webhook | Medium |
Setup Instructions
Slack (Recommended for teams)
- Go to https://api.slack.com/apps and click "Create New App"
- Choose "From scratch", name it "MetaClaw", select your workspace
- Under "OAuth & Permissions", add these Bot Token Scopes:
chat:write
app_mentions:read
im:history
im:read
im:write
- Install the app to your workspace
- Copy the "Bot User OAuth Token" → set as
SLACK_BOT_TOKEN in .env
- Under "Socket Mode", enable it and generate an app-level token → set as
SLACK_APP_TOKEN
- Under "Event Subscriptions", enable and subscribe to:
- Enable in metaclaw.toml:
[channels.slack]
enabled = true
Discord
- Go to https://discord.com/developers/applications
- Create a new application, name it "MetaClaw"
- Go to "Bot" → Add Bot
- Enable "Message Content Intent"
- Copy the token → set as
DISCORD_BOT_TOKEN in .env
- Generate invite URL with permissions: Send Messages, Read Messages
- Enable in metaclaw.toml:
[channels.discord]
enabled = true
Telegram
- Message @BotFather on Telegram
- Send
/newbot and follow the prompts
- Copy the token → set as
TELEGRAM_BOT_TOKEN in .env
- Enable in metaclaw.toml:
[channels.telegram]
enabled = true
Webhook (Generic)
For custom integrations, use the generic webhook channel:
[channels.webhook]
enabled = true
secret = "your-webhook-secret"
POST to http://your-server:8000/webhook/incoming with:
{
"text": "Your message",
"user_id": "user123",
"channel_id": "channel456"
}
Email
[channels.email]
enabled = true
Set in .env:
EMAIL_SMTP_HOST=smtp.gmail.com
EMAIL_SMTP_PORT=587
EMAIL_IMAP_HOST=imap.gmail.com
EMAIL_USERNAME=your@email.com
EMAIL_PASSWORD=your-app-password
Note: For Gmail, use an App Password (not your regular password).
Verification
After configuring, start the server:
metaclaw start
Check the logs for successful channel connections.
Send a test message through the configured channel.