Slack Deployment Guide: Brainforge Vault Agent
Purpose: Deploy vault knowledge to Slack so GTM team can ask questions and get answers Goal: Make vault the “first line of defense” - team asks vault first, Robert provides feedback to improve
🎯 Vision
Workflow:
- Team member asks question in Slack (e.g., “Is this person ICP?”)
- Vault agent answers using knowledge base
- Robert reviews answer (thumbs up/down or corrections)
- Feedback is fed back into vault to improve future answers
- Over time, agent gets better at answering
Goal: Robert shouldn’t have to answer every ICP question - vault handles 80%+, Robert handles edge cases and feedback.
🏗️ Architecture Options
Option 1: Slack Bot with Claude API (Recommended)
Tech Stack:
- Slack Bot (using Slack Bolt framework)
- Claude API (for reasoning using vault knowledge)
- Simple file storage (for vault knowledge)
- Feedback collection (Slack reactions or buttons)
How It Works:
- Team mentions
@brainforge-vaultor/brainforge [question] - Bot reads relevant vault files (
qualification-criteria.md,ideal-customer.md, etc.) - Bot uses Claude to analyze question using vault knowledge
- Bot responds in Slack with reasoning-first analysis
- Robert reacts with 👍/👎 or provides correction
- Feedback is logged and used to refine knowledge/prompts
Pros:
- Native Slack integration
- Easy to use (just @mention or /command)
- Can add feedback buttons
- Claude handles reasoning well
Cons:
- Requires Claude API access
- Need to host bot somewhere
- Token costs per query
Option 2: Slack Workflow + External App
Tech Stack:
- Slack Workflow Builder (no-code)
- External API endpoint (hosted)
- Claude API or other LLM
- Feedback via Slack buttons or threads
How It Works:
- Team uses
/brainforge [question]workflow - Workflow sends question to external API
- API queries vault knowledge and uses Claude to answer
- Response posted back to Slack
- Feedback collected via buttons in response
Pros:
- No-code setup (workflow builder)
- Flexible API backend
- Easy feedback collection
Cons:
- Requires hosting API endpoint
- Slightly more complex setup
Option 3: Claude Desktop + Slack Integration
Tech Stack:
- Claude Desktop app
- Manual Slack integration (or Zapier/Make.com)
- Vault knowledge in Claude project
How It Works:
- Team posts question in Slack channel
- Robert (or designated person) copies question
- Pastes into Claude Desktop with vault context
- Claude answers using vault knowledge
- Response copied back to Slack
Pros:
- Uses Claude Desktop (already available)
- No hosting needed
- Easy to test
Cons:
- Requires manual step (not fully automated)
- Not self-service for team
- Less scalable
📋 Recommended Implementation: Option 1 (Slack Bot)
Phase 1: MVP Bot (Week 1-2)
Features:
/brainforgeslash command- Reads vault knowledge files
- Answers ICP-related questions
- Uses “thinking slow, thinking fast” format (reasoning first, conclusion last)
Setup Steps:
-
Create Slack App
- Go to https://api.slack.com/apps
- Create new app for workspace
- Add slash command:
/brainforge - Add bot token scopes:
commands,chat:write,reactions:write
-
Set Up Bot Server
- Simple Node.js/Python server
- Uses Slack Bolt framework
- Integrates with Claude API
- Reads vault files (local or from Git)
-
Prompt Structure
System: "You are the Brainforge Vault agent. You answer GTM questions using knowledge from the vault. Always use 'thinking slow, thinking fast' - show your reasoning process first, then conclusions last. Vault Knowledge: [Load relevant files: qualification-criteria.md, ideal-customer.md, etc.] User Question: [question] Instructions: 1. Identify which vault files are relevant 2. Show your reasoning process step-by-step 3. Apply the framework to the question 4. State your conclusion at the end" -
Deploy Bot
- Host on Railway, Render, or similar
- Set environment variables (Slack tokens, Claude API key)
- Connect to Slack workspace
Files to Create:
slack-bot/server.js(or similar)slack-bot/prompts/icp-agent.md(prompt template)slack-bot/config.js(Slack/Claude config)
Phase 2: Feedback Loop (Week 3-4)
Features:
- Thumbs up/down reactions
- Correction button (if answer wrong)
- Feedback logging
- Knowledge refinement based on feedback
Implementation:
-
Add Feedback Buttons to Responses
Response includes: - Main answer - Buttons: [👍 Correct] [👎 Incorrect] [📝 Provide Correction] -
Feedback Collection
- Log feedback in simple database (JSON file or Airtable)
- Store: question, answer, feedback type, correction (if any)
-
Knowledge Refinement
- When Robert provides correction, update vault files
- Add edge cases to qualification-criteria.md
- Update examples based on learnings
Feedback Loop Flow:
User asks question
↓
Bot answers (using vault)
↓
Robert reviews
↓
If incorrect → Provides correction
↓
Correction added to vault (via PR or direct update)
↓
Future answers improve
Phase 3: Advanced Features (Month 2+)
Features:
- Multi-file knowledge retrieval
- Context awareness (remembers conversation)
- Auto-updates when vault changes
- Analytics dashboard (which questions most common, feedback trends)
📝 Prompt Template for ICP Agent
System Prompt Structure
You are the Brainforge Vault agent. Your job is to answer GTM questions using
knowledge from the Brainforge vault.
IMPORTANT: Use "thinking slow, thinking fast" approach:
- Show your REASONING process FIRST
- State your CONCLUSION at the END
- Explain HOW you reached your conclusion using vault knowledge
Available Vault Knowledge:
- qualification-criteria.md: ICP framework, BANT, red flags
- ideal-customer.md: Buyer profiles, role signals, company stages
- vertical-testing.md: Industry-specific applications (if applicable)
Answer Format:
1. Identify relevant vault knowledge
2. Show reasoning process (step-by-step)
3. Apply framework to question
4. State conclusion at end
Remember:
- Be systematic, not opinionated
- Reference specific vault files
- Show your work
- Don't jump to conclusions🔄 Feedback Loop Implementation
Step 1: Collect Feedback
Slack Response Format:
[Bot Response with reasoning-first analysis]
---
Feedback: [👍 Correct] [👎 Incorrect] [📝 Provide Correction]
When User Clicks Feedback:
- If 👍: Log as positive feedback
- If 👎: Ask “What was wrong?” or prompt for correction
- If 📝: Open thread for Robert to provide correction
Step 2: Store Feedback
Feedback Log Format:
{
"question": "Is this person ICP?",
"answer": "...",
"feedback": "incorrect",
"correction": "Actually, CMO at that company type typically doesn't own data budget",
"timestamp": "2025-01-16T...",
"reviewed_by": "robert"
}Where to Store:
gtm/agents/feedback/feedback-log.json(simple)- Airtable (better for analysis)
- Database (if scale requires)
Step 3: Refine Knowledge
When Feedback Received:
- Review correction
- Identify what went wrong
- Update vault files:
- Add edge case to
qualification-criteria.md - Update role signals in
ideal-customer.md - Add example to
examples/icp-analysis-example.md
- Add edge case to
Example Refinement:
Feedback: "CMO at B2C companies typically doesn't own data budget, only B2B"
Update to vault:
- qualification-criteria.md: Add note about B2C vs B2B CMO differences
- ideal-customer.md: Refine CMO role signal with industry context
🚀 Deployment Steps
Step 1: Set Up Slack App (15 min)
- Create app at https://api.slack.com/apps
- Add slash command:
/brainforge - Get bot token (OAuth)
- Add to workspace
Step 2: Create Bot Server (1-2 hours)
Minimal Node.js Example:
const { App } = require('@slack/bolt');
const Anthropic = require('@anthropic-ai/sdk');
const fs = require('fs');
const app = new App({
token: process.env.SLACK_BOT_TOKEN,
signingSecret: process.env.SLACK_SIGNING_SECRET
});
app.command('/brainforge', async ({ command, ack, respond }) => {
await ack();
// Read vault knowledge
const qualificationCriteria = fs.readFileSync('gtm/agents/memory/qualification-criteria.md');
const idealCustomer = fs.readFileSync('gtm/agents/memory/ideal-customer.md');
// Use Claude to answer
const anthropic = new Anthropic({ apiKey: process.env.CLAUDE_API_KEY });
const message = await anthropic.messages.create({
model: 'claude-sonnet-4-20250514',
max_tokens: 2000,
system: `[System prompt with vault knowledge]`,
messages: [{
role: 'user',
content: command.text
}]
});
await respond(message.content[0].text);
});
app.start(3000);Step 3: Deploy (30 min)
- Deploy to Railway/Render/etc.
- Set environment variables
- Connect Slack app to bot URL
- Test with team
Step 4: Add Feedback (1 hour)
- Add buttons to response
- Handle button clicks
- Log feedback
- Create PR workflow for knowledge updates
📊 Analytics & Monitoring
Track:
- Questions asked (by type: ICP, qualification, etc.)
- Response accuracy (feedback ratio)
- Most common questions
- Knowledge gaps (frequently wrong answers)
Dashboard Ideas:
- Weekly report: “Vault answered 50 questions, 92% accuracy”
- Knowledge gaps: “Questions about X always get wrong - need to update vault”
- Team usage: “Most questions from Luke (sales), then Robert (review)”
🎯 Success Metrics
Phase 1 (MVP):
- Bot responds to ICP questions within 30 seconds
- Answers are 80%+ accurate (based on Robert’s feedback)
- Team uses it for 50%+ of ICP questions
Phase 2 (Feedback Loop):
- Feedback is collected and logged
- Knowledge is refined based on feedback
- Accuracy improves to 90%+
Phase 3 (Advanced):
- Bot handles 80%+ of GTM questions without Robert
- Robert only needs to review edge cases
- Knowledge base is self-improving
🔧 Technical Requirements
For MVP:
- Slack workspace
- Claude API access
- Hosting (Railway, Render, etc.)
- Git repository access (to read vault files)
For Feedback Loop:
- Feedback storage (JSON file, Airtable, or database)
- Knowledge update workflow (PRs or direct edits)
📚 Next Steps
- This Week: Decide on architecture (recommend Option 1)
- Week 1-2: Build MVP bot
- Week 3: Deploy and test with team
- Week 4: Add feedback loop
- Month 2: Expand to other GTM questions beyond ICP
This deployment enables the vault to become the “first line of defense” for GTM questions, with Robert providing feedback to continuously improve.