Automate Discord with AI Agents
Send messages to Discord channels, attach media, schedule announcements, and integrate with your bot — all from the command line or through your AI agent.
Please make sure there is always a human in the loop.
Post to Discord in Seconds
Terminal
# Install globally
npm install -g postiz
# Set your API key
export POSTIZ_API_KEY=your_api_key
# Find your Discord integration
postiz integrations:list
# Send a message to a Discord channel
postiz posts:create \
-c "Hello everyone! Big announcement coming soon." \
-s "2025-01-15T10:00:00Z" \
--settings '{"channel":"123456789012345678"}' \
-i "your-discord-integration-id"Discord-Specific Features
Channel Messaging
Send messages directly to any Discord channel. Target announcements, general chat, or dedicated content channels.
Media Attachments
Attach images, videos, and files to your Discord messages. Share rich content with your community automatically.
Scheduled Messages
Schedule Discord messages for specific times. Perfect for announcements, event reminders, and timed content drops.
Bot Integration
Works through your Discord bot connection. Post messages as your bot to any server and channel it has access to.
Community Updates
Automate recurring community updates, changelogs, and newsletters. Keep your Discord server engaged on autopilot.
Multi-Channel
Post to different channels with different messages. Customize content for each channel in your Discord server.
How It Works
Find Your Discord Integration
List your connected accounts and grab your Discord integration ID. You can also fetch available settings to see what options are supported.
Discovery
# List all integrations
postiz integrations:list
# Filter for Discord
postiz integrations:list | jq \
'.[] | select(.identifier=="discord")'
# Get Discord settings schema
postiz integrations:settings <discord-id>Get Your Channel ID
Find the Discord channel ID where you want to post. In Discord, enable Developer Mode, then right-click the channel and copy its ID.
Channel Setup
# Enable Developer Mode in Discord:
# User Settings > Advanced > Developer Mode
# Right-click any channel > Copy Channel ID
# Example: 123456789012345678
# You can target any channel your bot
# has permission to post inCreate Your Message
Schedule a Discord message with your content, optional media attachments, and the target channel ID.
Message Creation
postiz posts:create \
-c "Hey everyone! We just shipped
a major update. Check it out!" \
-s "2025-03-01T09:00:00Z" \
--settings '{
"channel": "123456789012345678"
}' \
-i "discord-id"
# With media attachment
VIDEO=$(postiz upload demo.mp4)
VIDEO_URL=$(echo "$VIDEO" | jq -r '.path')
postiz posts:create \
-c "Demo of the new feature" \
-m "$VIDEO_URL" \
--settings '{"channel":"123456789"}' \
-i "discord-id"Discord Settings Reference
Every Discord message accepts these platform-specific settings via the --settings flag.
| Field | Type | Description |
|---|---|---|
__type | string | Must be "discord" |
channel | string | Discord channel ID to post to |
Common Configurations
Copy-paste these settings for common Discord messaging scenarios.
Announcement Channel Message
settings.json
{
"channel": "123456789012345678"
}Message with Media Attachment
Terminal
# Upload media first
IMAGE=$(postiz upload screenshot.png)
IMAGE_URL=$(echo "$IMAGE" | jq -r '.path')
# Post with attachment
postiz posts:create \
-c "Here's a preview of what's coming next!" \
-m "$IMAGE_URL" \
--settings '{"channel":"123456789012345678"}' \
-i "discord-id"Scheduled Weekly Update
Terminal
# Schedule a weekly update for Monday morning
postiz posts:create \
-c "Weekly Update - March 3, 2025
Here's what we shipped this week:
- Feature A: New dashboard
- Feature B: API improvements
- Bug fix: Login issue resolved
Thanks for being part of our community!" \
-s "2025-03-03T09:00:00Z" \
--settings '{"channel":"123456789012345678"}' \
-i "discord-id"Multi-Channel Posting
Terminal
# Post to announcements channel
postiz posts:create \
-c "v2.0 is live! Check the changelog." \
--settings '{"channel":"111111111111111111"}' \
-i "discord-id"
# Post detailed changelog to dev channel
postiz posts:create \
-c "v2.0 Changelog:
- Redesigned API layer
- 50% faster response times
- New webhook support" \
--settings '{"channel":"222222222222222222"}' \
-i "discord-id"What is OpenClaw?
OpenClaw is the open-source personal AI agent with 145k+ GitHub stars. It runs locally on your machine, connects through apps you already use, and takes real actions on your behalf.
Works Where You Are
Message OpenClaw from WhatsApp, Telegram, Slack, Discord, Signal, iMessage, or 10+ other platforms. No new app to learn.
Skill-Based Architecture
OpenClaw extends its abilities through Skills — lightweight plugins defined in Markdown files. Postiz is available as a skill on ClawHub.
Proactive Automation
Schedule recurring tasks with cron jobs. OpenClaw can send your Discord messages on a schedule without you having to ask each time.
How Postiz Becomes an OpenClaw Skill
When you install Postiz Agent globally, OpenClaw automatically discovers it by reading the bundled SKILL.md file. This file tells OpenClaw what commands are available, what environment variables are needed, and how to compose Discord messages with the right settings.
- ✓Install from ClawHub with one command: clawhub install nevo-david/postiz
- ✓OpenClaw reads the SKILL.md and learns all Postiz commands
- ✓Eligibility is checked automatically — POSTIZ_API_KEY must be set
- ✓Skills are loaded on-demand, keeping the agent context clean
- ✓Works with any LLM backend: Claude, GPT, Gemini, Llama, and more
Install from ClawHub
# Install the Postiz skill
clawhub install nevo-david/postiz
# Or install the CLI globally
npm install -g postiz
# Set your API key
export POSTIZ_API_KEY=your_api_key
# Verify OpenClaw sees it
openclaw skills list --eligible
# Output:
# - postiz: Social media automation
# CLI for scheduling posts
# across 30+ platformsDiscord Messaging with OpenClaw
Message OpenClaw from any platform — it reads the Postiz skill, discovers your Discord integration, and handles the entire messaging workflow autonomously.
From Any Chat App
WhatsApp, Telegram, Slack, Discord...
Send a message to OpenClaw from your favorite chat app. It runs as a persistent daemon on your machine, so it picks up your message, discovers your Discord bot via Postiz, and sends the message to the right channel — all while you go about your day.
WhatsApp / Telegram
You: Post an announcement to our
Discord #updates channel that v2.0
is live, schedule for 9am tomorrow
OpenClaw: Got it! Here's what I'll do:
1. Find your Discord integration
2. Send to #updates channel
3. Schedule for 2025-03-02T09:00:00Z
Done! Your Discord message is scheduled.
Post ID: abc-123Scheduled & Proactive
Cron jobs for recurring content
OpenClaw supports cron-based heartbeat tasks. Set up a recurring job that sends weekly updates, daily tips, or event reminders to your Discord server automatically — no manual trigger needed.
openclaw.json (heartbeat)
{
"heartbeat": [
{
"cron": "0 9 * * 1",
"prompt": "Compose a weekly community
update for our Discord server.
Summarize the past week's activity
from our GitHub repo. Post to the
#weekly-updates channel using
Postiz. Keep it concise and
friendly."
}
]
}Why OpenClaw + Postiz for Discord
OpenClaw's skill system makes Postiz a natural fit. The agent reads the SKILL.md to understand every available command, then autonomously chains them together for Discord workflows.
- ✓Message from WhatsApp to post to Discord — no terminal needed
- ✓Cron jobs for hands-free weekly community updates
- ✓Structured JSON output lets OpenClaw verify each step succeeded
- ✓Channel targeting handled automatically from your instructions
- ✓Cross-post to Discord + other platforms in a single conversation
- ✓Model-agnostic — works with Claude, GPT, Gemini, or open-source LLMs
SKILL.md (auto-discovered)
---
name: postiz
description: Social media automation
CLI for scheduling posts across
30+ platforms including Discord
metadata:
openclaw:
requirements:
env:
- POSTIZ_API_KEY
binaries:
- postiz
---
# Available Commands
- postiz integrations:list
- postiz integrations:settings <id>
- postiz posts:create
- postiz upload <file>
- postiz analytics:platform <id>
# Discord Settings
channel (required channel ID)Also Works with Claude Code
Postiz Agent works as a CLI tool with any AI agent that can execute shell commands — including Anthropic's Claude Code.
Claude Code
by Anthropic
Claude reads the SKILL.md file to learn all available Postiz commands, then autonomously discovers your Discord integration, identifies the right channel, and sends your message with any attachments.
Claude Code
> Send an announcement to our Discord
#releases channel that v2.0 is live,
attach the changelog screenshot
Claude will automatically run:
postiz integrations:list
postiz upload ./changelog.png
postiz posts:create \
-c "v2.0 is now live! Check out
the changelog below." \
-m "uploaded-image-url" \
--settings '{"channel":
"123456789012345678"}' \
-i "discord-id"Discord + Other Platforms
Schedule the same announcement to Discord and other platforms in a single command. Each platform gets its own settings.
Terminal
# Announce to Discord and Twitter simultaneously
postiz posts:create \
-c "We just launched v2.0! New features, faster performance, and more." \
-s "2025-03-01T09:00:00Z" \
--settings '{
"channel": "123456789012345678"
}' \
-i "discord-id,twitter-id"
# Batch schedule daily tips to Discord
for day in 1 2 3 4 5; do
postiz posts:create \
-c "Daily Tip #$day: Stay productive with automation!" \
-s "2025-03-0${day}T10:00:00Z" \
--settings '{"channel":"123456789012345678"}' \
-i "discord-id"
doneStart posting to Discord
Install Postiz Agent and automate your Discord community messaging with AI-powered scheduling and publishing.
Ready to get started?
Grow your social media presence with Postiz.
Schedule, analyze, and engage with your audience.
Open-source social media scheduling tool