A personal Slack agent that reminds you to follow up on unanswered questions.
- Polls your Slack messages hourly for questions you've asked (messages with
?) - Tracks questions that don't have substantive answers yet
- Reminds you via DM at 8am PT and 4pm PT with a digest of pending follow-ups
- Uses AI to distinguish real answers from non-committal responses ("looking into it", "will check", etc.)
- Detects questions in channels, DMs, and threads
- Understands conversation context (thread replies, DM flow)
/followupscommand to see pending items with dismiss buttons- AI-powered classification using Vercel AI Gateway
- Go to api.slack.com/apps and create a new app
- Add the following Bot Token Scopes:
chat:write- Send reminder DMscommands- Handle/followupscommand
- Add the following User Token Scopes:
search:read- Search your messageschannels:history- Read channel messageschannels:read- Access channel infogroups:history- Read private channel messagesgroups:read- Access private channel infoim:history- Read DM messagesim:read- Access DM infompim:history- Read group DM messagesmpim:read- Access group DM info
- Install the app to your workspace
- Add a Slash Command:
- Command:
/followups - Request URL:
https://your-app.vercel.app/api/slack/commands
- Command:
- Enable Interactivity:
- Request URL:
https://your-app.vercel.app/api/slack/interactions
- Request URL:
- Go to console.upstash.com
- Create a new Redis database
- Copy the
UPSTASH_REDIS_REST_URLandUPSTASH_REDIS_REST_TOKEN
- In Slack, click your profile picture
- Click "Profile"
- Click the three dots menu → "Copy member ID"
Set these environment variables:
| Variable | Description |
|---|---|
SLACK_BOT_TOKEN |
Bot token starting with xoxb- |
SLACK_USER_TOKEN |
User token starting with xoxp- |
SLACK_SIGNING_SECRET |
From Slack app settings |
SLACK_USER_ID |
Your Slack member ID |
UPSTASH_REDIS_REST_URL |
From Upstash console |
UPSTASH_REDIS_REST_TOKEN |
From Upstash console |
CRON_SECRET |
Any random string for cron auth |
AI_GATEWAY_API_KEY |
(Optional) Vercel AI Gateway key |
AI_GATEWAY_URL |
(Optional) AI Gateway URL |
After deploying, update your Slack app with your Vercel URL:
- Slash Command:
https://your-app.vercel.app/api/slack/commands - Interactivity:
https://your-app.vercel.app/api/slack/interactions
- Questions you ask are automatically tracked
- You'll receive DM reminders at 8am PT and 4pm PT
- Use
/followupsto see all pending items - Click "Dismiss" to remove items you no longer need to track
- Next.js App Router
- Vercel AI SDK with AI Gateway
- Upstash Redis
- Slack Web API