Skip to content
Agentmart
Submit a tool

slack-bot-builder

Builds Slack bots and integrations using the Slack API (Bolt framework).

Skill by terminal-skills

IndexedApache-2.0★ 3
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/itzmetanjim-slack-bot-builder

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Builds Slack bots and integrations using the Slack API (Bolt framework). Use when the user wants to create a Slack bot, build slash commands, handle Slack events, send messages to channels, build interactive modals/blocks, create Slack workflows, or integrate services with Slack. Trigger words: slack bot, slack integration, slash command, slack app, slack webhook, slack blocks, slack modal, bolt framework, slack events, slack notification, slack automation.

Use cases: backend, productivity

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/slack-bot-builder

What's inside

Skill name
slack-bot-builder
Description
Builds Slack bots and integrations using the Slack API (Bolt framework). Use when the user wants to create a Slack bot, build slash commands, handle Slack events, send messages to channels, build interactive modals/blocks, create Slack workflows, or integrate services with Slack. Trigger words: slack bot, slack integration, slash command, slack app, slack webhook, slack blocks, slack modal, bolt framework, slack events, slack notification, slack automation.
License
Apache-2.0
Compatibility
Node.js 18+ or Python 3.9+. Requires a Slack workspace with admin access to install apps.
Metadata
author: terminal-skills · version: 1.0.0 · category: automation
Instructions
162 lines in SKILL.md · view on GitHub

Files (2)

  • SKILL.md
  • _scores.json

SKILL.md (first lines)

# Slack Bot Builder

## Overview

Builds production-ready Slack bots and integrations using the Bolt framework. Handles app setup, event subscriptions, slash commands, interactive components (buttons, modals, dropdowns), message formatting with Block Kit, and deployment. Covers both simple webhook-based notifications and full conversational bots.

## Instructions

### 1. App Setup

When creating a new Slack bot:

1. Guide the user through https://api.slack.com/apps → Create New App
2. Recommend "From a manifest" for faster setup
3. Generate the app manifest YAML based on required scopes and features
4. Set up the following based on needs:
   - **Bot Token Scopes**: `chat:write`, `commands`, `app_mentions:read`, `channels:history`, `users:read`
   - **Event Subscriptions**: `message.channels`, `app_mention`, `message.im`
   - **Interactivity**: Enable for buttons, modals, dropdowns
   - **Slash Commands**: Register command names and descriptions

### 2. Project Scaffolding

Use Bolt.js (Node) or Bolt for Python:

```bash
# Node.js
npm init -y && npm install @slack/bolt dotenv

# Python
pip install slack-bolt python-dotenv
```

Standard project structure:
```
slack-bot/
├── app.js              # Main entry, Bolt app initialization
├── listeners/
│   ├── commands.js     # Slash command handlers
│   ├── events.js       # Event handlers (messages, mentions)
│   ├── actions.js      # Interactive component handlers
│   └── views.js        # Modal submission handlers
├── services/           # Business logic
├── blocks/             # Block Kit message templates
├── .env                # SLACK_BOT_TOKEN, SLACK_SIGNING_SECRET, SLACK_APP_TOKEN
└── package.json
```

### 3. Core Patterns

**Sending messages:**
```javascript
await client.chat.postMessage({
  channel: channelId,
  blocks: [/* Block Kit blocks */],
  text: "Fallback text for notifications"
});
```

**Slash commands:**
```javascript
app.command('/deploy', async ({ command, ack, respond }) => {
  await ack();
  await respond({
    blocks: buildDeployConfirmation(command.text),
    response_type: 'ephemeral'
  });
});
```

**Interactive modals:**
```javascript
app.action('button_click', async ({ body, ack, client }) => {
  await ack();
  await client.views.open({
    trigger_id: body.trigger_id,
    view: buildModalView()
  });
});
```

**Event handling:**
```javascript
app.event('app_mention', async ({ event, say }) => {
  await say(`Hey <@${event.user}>! How can I help?`);
});
```

### 4. Block Kit Messages

Always use Block Kit for rich messages. Key block types:
- `section` — text with optional accessory (button, image, overflow)
- `actions` — row of interactive elements
- `input` — form fields in modals
- `divider` — visual separator
- `context` — small metadata text
- `header` — bold large text

Use https://app.slack.com/block-kit-builder for visual design.

### 5. Socket Mode vs HTTP

- **Socket Mode** (recommended for internal bots): No public URL needed, uses WebSocket
  - Set `SLACK_APP_TOKEN` (starts with `xapp-`)
  - `const app = new App({ token, signingSecret, socketMode: true, appToken })`
- **HTTP mode** (for public apps): Needs public URL, use ngrok for dev
  - `const app = new App({ token, signingSecret })`
  - `app.start(3000)`

### 6. Deployment

- **Simple**: Railway, Render, or any Node.js host
- **Production**: Container on ECS/Cloud Run with health checks
- **Serverless**: AWS Lambda with Slack Bolt's `AwsLambdaReceiver`

### 7. Rate Limits

Slack API rate limits:
- **Tier 1** (chat.postMessage): ~1 req/sec per workspace

From itzmetanjim/coolton, Apache-2.0.

More from itzmetanjim/coolton

Signals

Stars
3
Forks
1
Open issues
0
Last commit (this folder)
Aug 17, 2026 (2 months ago)

From GitHub (fetched Oct 24, 2026).

Details

Version
1.0.0
License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from terminal-skills

Cite this page

slack-bot-builder skill. Agent Mart. https://agentmart.dev/skills/itzmetanjim-slack-bot-builder (last updated 2026-10-24)