Slack
Post messages from your agents to a Slack channel, or set up bidirectional chat with a Slack app.
Quick setup โ Incoming webhooks (one-way)
Simplest. Your agent posts to Slack; users don't reply through OpenVesper.
- Go to api.slack.com/messaging/webhooks
- Create a new app, enable incoming webhooks, install in your workspace
- Copy the webhook URL
- Set the env var:
echo "SLACK_WEBHOOK_URL=https://hooks.slack.com/services/..." >> ~/.openvesper/.envThat's it. Test:
node apps/cli/dist/index.js -q "Use slack_send to post 'hello from openvesper' to my channel"Full setup โ Slack app (bidirectional)
If you want team members to message the agent and get replies:
- Create a Slack app at api.slack.com/apps
- Enable these scopes under "OAuth & Permissions":
chat:writeโ post messagesapp_mentions:readโ see when someone @-mentions the botim:history,im:read,im:writeโ DM support
- Install the app to your workspace
- Copy the bot token (starts with
xoxb-) - Enable Event Subscriptions, set your webhook URL to where you're running OpenVesper
echo "SLACK_BOT_TOKEN=xoxb-..." >> ~/.openvesper/.env
echo "SLACK_SIGNING_SECRET=..." >> ~/.openvesper/.envTools the plugin exposes
slack_sendโ Post message to a channelslack_send_dmโ Direct message to a userslack_thread_replyโ Reply in a threadslack_get_channel_historyโ Read recent messagesslack_searchโ Search workspace messages
Security notes
- Slack tokens are sensitive โ store in
~/.openvesper/.env(perm 0600) - Verify webhook signatures using
SLACK_SIGNING_SECRET - The Slack plugin uses
permission: "external"for sends andpermission: "mutation"for cross-channel actions