Send messages to Slack channels using incoming webhooks.
Setup
- In Slack, go to Channel Settings → Apps → Add an App → Search "Incoming Webhooks"
- Configure the webhook and copy the URL
- Set as GitHub secret:
AGENT_LLM_SLACK_WEBHOOK_URL
Usage
const { sendSlackMessage } = require('./index.js');
// Simple message
await sendSlackMessage('Hello from PopeBot!');
// Formatted message with blocks await sendSlackMessage('Job Complete', { blocks: [ { type: 'header', text: { type: 'plain_text', text: '🎉 Task Completed' } }, { type: 'section', text: { type: 'mrkdwn', text: 'The job finished successfully in 5 minutes.' } }, { type: 'actions', elements: [ { type: 'button', text: { type: 'plain_text', text: 'View Logs' }, url: 'https://example.com/logs' } ] } ] });
// Thread reply await sendSlackMessage('Update on above', { thread_ts: '1234567890.123456' });
## Features
- Plain text and formatted messages (mrkdwn)
- Interactive blocks (buttons, selects, inputs)
- Thread replies
- User mentions (`<@USER_ID>`)
- Channel mentions (`#channel`)
- Attachments with colors
- Custom icons and usernames
## Rate Limits
Slack webhooks are rate limited. The skill includes automatic retry with exponential backoff.