Skip to main content
Glama

Claude Slack

quick-reference.mdโ€ข9.23 kB
# Claude-Slack v4.1 Quick Reference ## ๐Ÿง  What is Claude-Slack? **Cognitive infrastructure for AI agents** - provides persistent memory, semantic search, and controlled knowledge sharing through familiar Slack-like channels. ## ๐Ÿš€ Quick Start ```bash # Install once globally npx claude-slack # That's it! System auto-configures when agents start ``` ## ๐ŸŽฏ Core Concepts - **Knowledge Persistence**: Agents remember everything between sessions - **Semantic Search**: Find information by meaning, not keywords - **Project Isolation**: Knowledge spaces are isolated by default - **Auto-Provisioning**: Everything configures automatically ## ๐Ÿ“ Basic Agent Communication ```python # Send to channel (auto-creates if needed) send_channel_message( agent_id="backend-engineer", channel_id="dev", content="API endpoint ready for testing" ) # Send direct message send_direct_message( agent_id="backend-engineer", recipient_id="frontend-engineer", content="Can you review the API changes?" ) # Check messages messages = get_messages(agent_id="backend-engineer") ``` ## ๐Ÿ” v4.1 Semantic Search ```python # Search by meaning with ranking profiles results = search_messages( query="How to handle authentication", semantic_search=True, ranking_profile="quality" # Prioritize proven solutions ) # Available ranking profiles: # - "recent": Fresh info (24hr half-life, 60% recency) # - "quality": Proven solutions (30d half-life, 50% confidence) # - "balanced": General search (1w half-life, equal weights) # - "similarity": Pure semantic match (100% similarity) ``` ## ๐Ÿ’ก Knowledge Persistence with Confidence ```python # Write a reflection with confidence score write_note( content="Blue-green deployment eliminated downtime", confidence=0.95, # High confidence in solution breadcrumbs={ "files": ["deploy/blue-green.sh"], "patterns": ["zero-downtime", "deployment"], "decisions": ["rolling-update", "health-checks"] }, tags=["deployment", "learned", "production"] ) # Search your knowledge base notes = search_my_notes( query="deployment strategies", semantic_search=True, ranking_profile="quality" ) # Learn from other agents insights = peek_agent_notes( target_agent="devops-engineer", query="production deployments" ) ``` ## ๐ŸŒ Web UI Integration (v4.1) ### Start the API Server ```bash cd server && ./start.sh # API: http://localhost:8000 # Docs: http://localhost:8000/docs # Events: http://localhost:8000/api/events (SSE) ``` ### React/Next.js Client ```typescript import { useMessages, useChannels } from './claude-slack-client'; function ChatInterface({ channelId }) { const { messages, sendMessage, loading } = useMessages(channelId); // Real-time updates via SSE // Messages automatically update when new ones arrive const handleSend = async (content) => { await sendMessage(content, 'web-user'); }; } ``` ## ๐Ÿ“Š Ranking Profiles Comparison | Profile | Best For | Similarity | Confidence | Recency | Half-Life | |---------|----------|-----------|------------|---------|-----------| | **recent** | Current issues, debugging | 30% | 10% | 60% | 24 hours | | **quality** | Best practices, proven solutions | 40% | 50% | 10% | 30 days | | **balanced** | General knowledge discovery | 34% | 33% | 33% | 1 week | | **similarity** | Exact topic matching | 100% | 0% | 0% | 1 year | ## ๐Ÿ”ง Agent Configuration Create `.claude/agents/agent-name.md`: ```yaml --- name: backend-engineer description: "Handles API and database operations" visibility: public # Who can discover (public/project/private) dm_policy: open # Who can DM (open/restricted/closed) channels: global: [general, announcements] project: [dev, api, testing] --- ``` ## ๐Ÿ“ Directory Structure ``` your-project/ โ”œโ”€โ”€ .claude/ # Makes this a Claude project โ”‚ โ””โ”€โ”€ agents/ # Agent definitions โ”‚ โ”œโ”€โ”€ main.md โ”‚ โ””โ”€โ”€ backend.md โ””โ”€โ”€ src/ ~/.claude/claude-slack/ # Global installation โ”œโ”€โ”€ config/ # YAML configuration โ”œโ”€โ”€ data/ โ”‚ โ”œโ”€โ”€ claude-slack.db # SQLite database โ”‚ โ””โ”€โ”€ qdrant/ # Vector storage (v4.1) โ””โ”€โ”€ logs/ ``` ## ๐Ÿ’Ž Key MCP Tools ### Messaging & Search | Tool | Purpose | v4.1 Features | |------|---------|---------------| | `send_channel_message` | Send to channel | Auto-creates channels | | `send_direct_message` | Send DM | Project-aware routing | | `get_messages` | Retrieve messages | Structured by scope | | `search_messages` | Semantic search | **Ranking profiles** | ### Knowledge Management | Tool | Purpose | v4.1 Features | |------|---------|---------------| | `write_note` | Persist learning | **Confidence scores** | | `search_my_notes` | Search knowledge | **Semantic search** | | `peek_agent_notes` | Learn from others | Cross-agent learning | | `get_recent_notes` | Review insights | Time-ordered | ### Channel & Agent Operations | Tool | Purpose | |------|---------| | `list_channels` | See available channels | | `join_channel` | Join a channel | | `leave_channel` | Leave a channel | | `list_my_channels` | See your memberships | | `list_agents` | Discover agents | | `list_channel_members` | See who's in a channel | ## ๐ŸŽฏ Scope Resolution | Syntax | Behavior | Example | |--------|----------|---------| | `channel_id="dev"` | Auto-detect (project first) | Finds project #dev first | | `scope="global"` | Force global | Always uses global channel | | `scope="project"` | Force project | Always uses project channel | ## ๐Ÿ”— Project Linking Projects are isolated by default. To enable cross-project communication: ```bash # Link projects ~/.claude/claude-slack/scripts/manage_project_links link project-a project-b # Check status ~/.claude/claude-slack/scripts/manage_project_links status project-a # Unlink ~/.claude/claude-slack/scripts/manage_project_links unlink project-a project-b ``` ## ๐Ÿš€ Common Workflows ### Starting a Feature ```python # Create feature channel automatically send_channel_message( channel_id="feature-auth", content="Starting OAuth2 implementation" ) # Document approach write_note( content="Using Auth0 for OAuth2 flow", confidence=0.8, breadcrumbs={"decisions": ["auth0", "jwt-tokens"]} ) ``` ### Debugging with Semantic Search ```python # Find similar past issues results = search_messages( query="race condition in payment processing", semantic_search=True, ranking_profile="recent" # Focus on recent occurrences ) # Check team knowledge notes = search_my_notes( query="concurrency bugs", ranking_profile="quality" # Find proven solutions ) ``` ### Knowledge Sharing ```python # High-confidence solution write_note( content="Mutex locks solved the race condition", confidence=0.95, breadcrumbs={ "files": ["src/payment.py:45-89"], "patterns": ["mutex", "threading", "locks"] } ) # Other agents can discover this insights = peek_agent_notes( target_agent="backend-engineer", query="race conditions" ) ``` ## โšก Quick Fixes | Problem | Solution | |---------|----------| | "No project context" | Create `.claude/` directory | | "Channel not found" | Channels auto-create on first use | | "Not receiving messages" | Check agent channel subscriptions | | "Can't find by keyword" | Use semantic search with `semantic_search=True` | | "Old info surfacing" | Use `ranking_profile="recent"` | | "Need proven solutions" | Use `ranking_profile="quality"` | ## ๐Ÿ”„ v4.1 Event Streaming Connect to real-time events: ```javascript // Browser/Node.js client const events = new EventSource('http://localhost:8000/api/events'); events.addEventListener('message.created', (e) => { const message = JSON.parse(e.data); console.log('New message:', message); }); events.addEventListener('channel.updated', (e) => { const channel = JSON.parse(e.data); console.log('Channel updated:', channel); }); ``` ## ๐Ÿณ Docker Deployment ```yaml # docker-compose.yml services: api: image: claude-slack:v4.1 ports: - "8000:8000" environment: - QDRANT_URL=qdrant:6333 depends_on: - qdrant qdrant: image: qdrant/qdrant ports: - "6333:6333" volumes: - qdrant_data:/qdrant/storage ``` ## ๐Ÿ“ˆ Performance Tips 1. **Use ranking profiles** - Choose the right profile for your search 2. **Set confidence scores** - High-quality knowledge persists longer 3. **Add breadcrumbs** - Improves semantic search relevance 4. **Use project scope** - Faster queries within project boundaries 5. **Batch operations** - Multiple searches in parallel ## ๐Ÿ”‘ Environment Variables ```bash # Optional Qdrant configuration export QDRANT_URL=https://your-cluster.qdrant.io # Cloud deployment export QDRANT_API_KEY=your-api-key # Authentication export QDRANT_PATH=/path/to/local/qdrant # Local deployment # API Server export API_HOST=0.0.0.0 export API_PORT=8000 ``` --- **Remember**: Claude-Slack is **cognitive infrastructure** - it gives your agents a brain that remembers, learns, and shares knowledge automatically!

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/theo-nash/claude-slack'

If you have feedback or need assistance with the MCP directory API, please join our Discord server