Enterprise30 min read
Slack Automation
Bring AI to your workplace. Moltbot integrates with Slack for automated workflows, smart notifications, meeting summaries, and team assistance used by Fortune 500 companies.
Enterprise Features
Workflow Builder
Create no-code workflows triggered by messages, reactions, or schedules.
Smart Notifications
AI-filtered alerts from Jira, GitHub, PagerDuty with context and summaries.
Meeting Intelligence
Auto-summarize Slack threads, generate meeting notes, extract action items.
HR & IT Support
Employee onboarding, FAQ bots, IT ticket creation, policy lookups.
Setup Guide
1
Create Slack App
Go to api.slack.com/apps:
- Click "Create New App"
- Select "From scratch"
- Name: "Moltbot Assistant"
- Select your workspace
2. OAuth & Permissions
Add these Bot Token Scopes:
Bot Token Scopes: - app_mentions:read - channels:history - channels:read - chat:write - files:write - groups:history - im:history - mpim:history - users:read User Token Scopes (if needed): - channels:history - chat:write - users:read
3. Event Subscriptions
Subscribe to these bot events:
Bot Events: - app_mention - message.channels - message.groups - message.im - message.mpim
4. Moltbot Configuration
{
"channels": {
"slack": {
"enabled": true,
"botToken": "xoxb-your-bot-token",
"signingSecret": "your-signing-secret",
"socketMode": true,
"appToken": "xapp-your-app-level-token"
}
}
}5. Bot Implementation
const { App } = require('@slack/bolt');
const app = new App({
token: process.env.SLACK_BOT_TOKEN,
signingSecret: process.env.SLACK_SIGNING_SECRET,
socketMode: true,
appToken: process.env.SLACK_APP_TOKEN
});
// Handle @mentions
app.event('app_mention', async ({ event, say }) => {
const response = await moltbot.process({
message: event.text,
userId: event.user,
channelId: event.channel
});
await say({
text: response.text,
thread_ts: event.thread_ts || event.ts
});
});
// Handle DMs
app.message(async ({ message, say }) => {
if (message.channel_type === 'im') {
const response = await moltbot.process({
message: message.text,
userId: message.user
});
await say(response.text);
}
});
// Slash command
app.command('/ask', async ({ command, ack, say }) => {
await ack();
const response = await moltbot.process({
message: command.text,
userId: command.user_id
});
await say(response.text);
});
(async () => {
await app.start();
console.log('Slack bot running!');
})();