A Slack bot powered by Claude that can answer questions about your project and edit markdown documentation.
- Answer Questions: Searches project markdown files and provides relevant answers
- Edit Files: Makes find-and-replace edits to markdown files via natural language
- Weekly Updates: Summarizes recent git commits
- Conversation Memory: Maintains context within channels (30 min timeout, 20 message limit)
- Channel Access Control: Optionally restrict which folders each channel can access
- Go to api.slack.com/apps and create a new app
- Enable Socket Mode and generate an App Token (
xapp-...) - Under OAuth & Permissions, add these Bot Token Scopes:
app_mentions:readchat:writeim:historyim:readim:write
- Install the app to your workspace and copy the Bot Token (
xoxb-...) - Under Event Subscriptions, subscribe to:
app_mentionmessage.im
Get your API key from console.anthropic.com
cp .env.example .env # Edit .env with your tokenspython -m venv venv source venv/bin/activate # or `venv\Scripts\activate` on Windows pip install -r requirements.txtEdit bot.py and update the PROJECTS dict with your project directories:
PROJECTS = { "project_alpha": "Project Alpha", "project_beta": "Project Beta", }Optionally configure CHANNEL_ACCESS to restrict which channels can access which folders.
python bot.py- In channels: Mention the bot with
@YourBot what are the current todos? - In DMs: Just message the bot directly
The bot reads all .md files from your project directories and uses them as context for answering questions.
MIT