doodle top mobile

Automate Slack with AI Agents

Send channel messages, schedule announcements, share media, and streamline team communications — all from the command line or through your AI agent.

Setup GuideClawHub

Please make sure there is always a human in the loop.

doodle left mobiledoodle right mobile

Post to Slack in Seconds

Terminal

# Install globally
npm install -g postiz

# Set your API key
export POSTIZ_API_KEY=your_api_key

# Find your Slack integration
postiz integrations:list

# Send a message to a Slack channel
postiz posts:create \
  -c "Team update: deployment complete" \
  --settings '{"channel":"C12345"}' \
  -i "your-slack-integration-id"

Slack-Specific Features

📢

Channel Messaging

Post messages to any Slack channel your bot has access to. Share updates, announcements, and notifications automatically.

Scheduled Messages

Schedule messages for the perfect time. Queue up announcements, reminders, and updates to post when your team is most active.

🖼

Media Sharing

Attach images, files, and rich media to your Slack messages. Share screenshots, reports, and visual updates with your team.

👥

Team Communications

Automate recurring team updates, standup summaries, and status reports across multiple channels simultaneously.

🤖

Bot Integration

Leverage Slack bot tokens for seamless posting. Your AI agent authenticates once and posts on behalf of your workspace.

📅

Multi-Channel Posting

Target different channels for different content types. Send engineering updates to #dev and marketing wins to #general.

How It Works

1

Find Your Slack Integration

List your connected accounts and grab your Slack integration ID. You can also fetch available settings to see what options are supported.

Discovery

# List all integrations
postiz integrations:list

# Filter for Slack
postiz integrations:list | jq \
  '.[] | select(.identifier=="slack")'

# Get Slack settings schema
postiz integrations:settings <slack-id>
2

Choose Your Channel

Identify the Slack channel ID where you want to post. You can find channel IDs in Slack by right-clicking a channel and selecting 'View channel details'.

Channel Setup

# Channel IDs look like C12345
# Find them in Slack:
#   Right-click channel > View channel details
#   The ID is at the bottom of the dialog

# Or use Slack's API directly
# to list channels programmatically
3

Create Your Post

Send a message to your Slack channel with the channel ID in settings. Schedule it for later or post immediately.

Post Creation

postiz posts:create \
  -c "Team update: deployment complete" \
  --settings '{"channel":"C12345"}' \
  -i "slack-id"

# Schedule for later
postiz posts:create \
  -c "Reminder: standup in 15 minutes" \
  -s "2025-01-15T09:45:00Z" \
  --settings '{"channel":"C12345"}' \
  -i "slack-id"

Slack Settings Reference

Every Slack post accepts these platform-specific settings via the --settings flag.

FieldTypeDescription
__typestringMust be "slack"
channelstringSlack channel ID (e.g. C12345)

Common Configurations

Copy-paste these settings for common Slack posting scenarios.

General Channel Announcement

settings.json

{
  "channel": "C12345"
}

Engineering Updates

settings.json

{
  "channel": "C67890"
}

Marketing Channel Post

settings.json

{
  "channel": "CABCDE"
}

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 post your Slack 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 Slack 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+ platforms

Slack Posting with OpenClaw

Message OpenClaw from any platform — it reads the Postiz skill, discovers your Slack integration, and handles the entire posting 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 Slack workspace via Postiz, and sends the message to the right channel — all while you go about your day.

WhatsApp / Telegram

You: Post a deployment update to
  #engineering on Slack

OpenClaw: Got it! Here's what I'll do:
  1. Find your Slack integration
  2. Post to channel C12345
  3. Message: "Deployment complete"

  Done! Your Slack message is posted.
  Post ID: abc-123
🦀

Scheduled & Proactive

Cron jobs for recurring content

OpenClaw supports cron-based heartbeat tasks. Set up a recurring job that sends daily standup reminders or weekly status updates to your Slack channels automatically — no manual trigger needed.

openclaw.json (heartbeat)

{
  "heartbeat": [
    {
      "cron": "0 9 * * 1-5",
      "prompt": "Send a standup reminder
  to the #engineering Slack channel
  via Postiz. Use channel C12345.
  Message: 'Standup starts in 15
  minutes. Please update your
  status in the thread.'"
    }
  ]
}

Why OpenClaw + Postiz for Slack

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 Slack workflows.

  • Message from WhatsApp to post to Slack — no terminal needed
  • Cron jobs for hands-free daily standup reminders and status updates
  • Structured JSON output lets OpenClaw verify each step succeeded
  • Channel targeting applied automatically based on your instructions
  • Cross-post to Slack + 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 Slack
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>

# Slack Settings
channel (required)

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.

C

Claude Code

by Anthropic

Claude reads the SKILL.md file to learn all available Postiz commands, then autonomously discovers your Slack integration, identifies the correct channel, and sends your message.

Claude Code

> Post a deployment update to #engineering
  on Slack

Claude will automatically run:
  postiz integrations:list
  postiz posts:create \
    -c "Deployment v2.4.1 complete" \
    --settings '{"channel":"C12345"}' \
    -i "slack-id"

Slack + Other Platforms

Post the same announcement to Slack and other platforms in a single command. Each platform gets its own settings.

Terminal

# Post an announcement to Slack and Discord simultaneously
postiz posts:create \
  -c "New feature released: dark mode is here!" \
  -s "2025-01-15T09:00:00Z" \
  --settings '{"channel":"C12345"}' \
  -i "slack-id,discord-id"

# Batch schedule a week of Slack updates
for day in 1 2 3 4 5; do
  postiz posts:create \
    -c "Daily standup reminder - Day $day" \
    -s "2025-03-0${day}T09:00:00Z" \
    --settings '{"channel":"C12345"}' \
    -i "slack-id"
done

Start posting to Slack

Install Postiz Agent and automate your Slack communications with AI-powered scheduling and messaging.

Ready to get started?

Grow your social media presence with Postiz.
Schedule, analyze, and engage with your audience.

Grow your social media presence with Postiz.