Slack Integration
SkillSearchThe slack skill lets your agent search Slack messages and read channel history across your workspaces.
Available today. Use it from your connected AI after setup.
No other account needed.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
Then ask your AI: use the Slack Integration skill
About this skill
Search Slack messages and read channel history across your workspaces. Use this skill when the user asks about Slack conversations, channel messages, or internal communications.
What this skill tells your AI
The instructions your AI receives, as published by builderio/agent-native in templates/analytics/.builder/skills/slack/SKILL.md and read by ahel’s review.
Connection
- Base URL:
https://slack.com/api/ - Auth:
Authorization: Bearer $SLACK_BOT_TOKEN(or$SLACK_BOT_TOKEN_2for secondary workspace) - Credentials:
SLACK_BOT_TOKEN(primary),SLACK_BOT_TOKEN_2(secondary workspace) - Caching: 2-minute in-memory cache, max 200 entries; separate user/bot caches
Server Lib
- File:
server/lib/slack.ts
Exported Functions
| Function | Description |
|---|---|
getTeamInfo(workspace) | Get workspace info |
listChannels(workspace) | List channels (paginated, first page cached) |
getChannelHistory(workspace, channelId, limit?, cursor?) | Channel message history |
searchMessages(workspace, query, count?) | Search messages |
getUserInfo(workspace, userId) | Get user info (cached per user) |
getBotInfo(workspace, botId) | Get bot info (cached) |
resolveUsers(workspace, userIds, messages?) | Batch resolve user names |
Agent Action
Use slack-messages for agent-facing Slack reads. Do not call
/api/slack/* directly from the agent.
| Mode | Args | Description |
|---|---|---|
team | workspace | Get workspace info |
channels | workspace | List channels |
history | workspace, channel, limit, cursor | Read channel history |
multi-history | workspace, channels, names, limit, cursors | Read multiple channels |
search | workspace, query | Search messages |
Key Patterns & Gotchas
- Two workspaces supported via workspace parameter ("primary" / "secondary")
getChannelHistoryauto-joins channels on "not_in_channel" error, then retries — requireschannels:joinscope- If auto-join fails, throws a detailed message explaining how to invite the bot
searchMessagesmay require user token; bot token tried firstlistChannelspaginates via cursor; only first page is cachedgetUserInforesolves bots viagetBotInfowhen needed
Signals
- GitHub stars
- 7k
- Forks
- 613
- Last commit
- Sep 2026
ahel review
S4info
community integration, published by builderio, not slack
Automated review, not a security audit. Ruleset v1+k2.
Advanced
- Item type
- skill
- Key
slack-builderio- Source
- github.com/builderio/agent-native