Slack alaiops Bot — Backend Architecture
Slack alaiops Bot — Backend Architecture
Basic Info
- Workspace: alai-talk.slack.com
- Bot user: @alaiops (U0AEMU81LBG)
- Channels: 11 public + 6 private (manual invite required for private)
- Mode: Socket Mode (no public webhook needed)
Tokens Location
- Primary: macOS Keychain
slack-bot/slack-bot-tokenslack-bot/slack-app-token
- Fallback 1: Bitwarden/Vault
- Fallback 2: Environment variables
Daemon
- LaunchAgent: com.john.slack-bot
- PID lookup:
pgrep -f slack-bot.js - Code: ~/system/tools/slack-bot.js
- Logs: ~/system/logs/slack-bot.log
Backend Chain (via comms-responder.js)
Priority-based fallback system (lower number = higher priority, faster response):
- Groq (priority 5, ~100-500ms) — PRIMARY
- Model: llama-3.1-8b-instant
- Added: 2026-04-18
- Requires:
GROQ_API_KEYenv var - Adapter: ~/system/tools/adapters/groq.js
- Claude API (priority 10, ~2s)
- Claude CLI (priority 20, ~20s)
- Ollama (priority 30, ~40s) — FALLBACK ONLY
Groq Adapter
// Registered in ~/system/tools/adapters/index.js
const groq = require("./groq.js");
// Usage
const response = await groq.send("prompt", {
model: "llama-3.1-8b-instant",
temperature: 0.7,
max_tokens: 512
});
Event Subscriptions
Status: Re-enabled 2026-04-18 after scope fix
Critical fix: Bot NO LONGER requires admin scopes (caused "Enterprise only" error). Removed admin scopes from User token, kept 15 bot scopes.
Active bot scopes (15):
- app_mentions:read
- channels:history
- channels:read
- chat:write
- groups:history
- groups:read
- im:history
- im:read
- im:write
- mpim:history
- mpim:read
- reactions:read
- reactions:write
- users:read
- users:read.email
Dead Pattern Warning
If bot stops responding, check logs first:
tail -100 ~/system/logs/slack-bot.log
Benign pattern (ignore): "Dedup: skipping" — message already processed
Error patterns (investigate):
- "Socket mode error"
- "Token invalid"
- "Groq API error"
- "All backends failed"
Test Commands
# Send test message
node ~/system/tools/slack.js send general "Test from John"
# Read channel history
node ~/system/tools/slack.js read general 10
# Check bot status
pgrep -f slack-bot.js && echo "Running" || echo "Stopped"
See Also
- Groq adapter source: ~/system/tools/adapters/groq.js
- Bot source: ~/system/tools/slack-bot.js
- Comms responder: ~/system/tools/comms-responder.js
Created: 2026-04-19 | Last updated: 2026-04-18 (Groq backend added)
No comments to display
No comments to display