Agent skill
beeper-ai
AI-powered chat assistant for Beeper Desktop. Use when user asks about: - Searching messages across platforms (/beeper-ai:search) - Summarizing conversations (/beeper-ai:summarize) - Generating replies (/beeper-ai:reply) - Analyzing communication style (/beeper-ai:analyze-style) - Checking Beeper/Fabric connectivity (/beeper-ai:status)
Install this agent skill to your Project
npx add-skill https://github.com/adnanmueller/am-dev-plugins/tree/main/plugins/beeper-ai
SKILL.md
Beeper Desktop API Knowledge
This skill provides knowledge about the Beeper Desktop API and the beeper-ai integration.
Beeper Desktop API Overview
Beeper Desktop provides a local REST API for accessing messages across all connected platforms.
Base URL
http://localhost:23373
Authentication
Requires an access token set in the BEEPER_ACCESS_TOKEN environment variable.
Get the token from: Beeper Desktop > Settings > Developers
Key Endpoints
Status
GET /api/v1/status
Check if the API is running.
Accounts
GET /api/v1/accounts
List all connected messaging accounts (bridges).
Chats
GET /api/v1/accounts/{account_id}/chats
GET /api/v1/chats/{chat_id}
List chats for an account or get a specific chat.
Messages
GET /api/v1/chats/{chat_id}/messages
POST /api/v1/chats/{chat_id}/messages
Get or send messages.
Fabric Integration
beeper-ai uses Fabric for AI features instead of direct Anthropic API calls.
Fabric Server
http://localhost:8080
Start with: fabric --serve --address :8080
Key Patterns Used
| Pattern | Use Case |
|---|---|
summarize |
Conversation summaries |
analyze_personality |
Style guide generation |
write_essay |
Reply generation |
extract_wisdom |
Key insights extraction |
improve_writing |
Reply refinement |
Fabric API
POST /chat
{
"prompts": [{
"userInput": "...",
"patternName": "summarize",
"model": "claude-sonnet-4-20250514"
}]
}
beeper-ai Package Structure
src/beeper_ai/
├── core/
│ ├── config.py # Settings (pydantic-settings)
│ └── exceptions.py # Custom exceptions
├── api/
│ ├── client.py # BeeperClient wrapper
│ └── models.py # Data models (Account, Chat, Message)
├── fabric/
│ ├── client.py # FabricClient for AI calls
│ ├── patterns.py # Pattern definitions
│ └── sessions.py # Session management
├── ai/
│ ├── assistant.py # Main ChatAssistant facade
│ ├── style_analyzer.py # StyleGuide generation
│ ├── summarizer.py # Conversation summarization
│ └── smart_reply.py # Reply generation
├── search/
│ ├── engine.py # SearchEngine
│ └── filters.py # SearchFilters
└── cli/
└── main.py # Click CLI commands
Configuration
Environment variables (set in .env):
BEEPER_ACCESS_TOKEN=xxx
BEEPER_BASE_URL=http://localhost:23373
FABRIC_BASE_URL=http://localhost:8080
FABRIC_DEFAULT_MODEL=claude-sonnet-4-20250514
STYLE_GUIDE_PATH=./data/style_guide.json
MIN_MESSAGES_FOR_ANALYSIS=100
CLI Commands
beeper-ai status # Check connectivity
beeper-ai search "query" # Search messages
beeper-ai summarize <chat_id> # Summarize conversation
beeper-ai reply <chat_id> # Generate reply
beeper-ai analyze-style # Create style guide
Common Tasks
Find a Chat ID
- Search for messages from the person/conversation
- The chat_id appears in search results
Generate a Style-Matched Reply
- Ensure style guide exists (
analyze-styleif needed) - Run
reply <chat_id>- style is applied automatically
Troubleshooting
- "Connection refused" on Beeper: Ensure Desktop app is running
- "Connection refused" on Fabric: Start with
fabric --serve - "Insufficient data": Need more messages for style analysis
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
ai-text-humaniser
Removes common AI-generated text patterns that make writing obviously machine-produced. Use when: (1) Writing or editing any text content, (2) User requests human-sounding or natural writing, (3) User wants to avoid AI slop or AI tells, (4) Creating content that shouldn't read as AI-generated. Apply automatically when generating prose, articles, emails, or creative content. Invoke with: /humanise-text, /humanize-text, /check-ai-patterns, or say "use the ai-text-humaniser skill to..."
beeper-assistant
AI assistant for Beeper - search, summarize, and reply to messages across all connected platforms
document-processor
Extract and process content from PDFs and DOCX files. Handles large files, OCR for scanned documents, page splitting, and markdown conversion. Use when: (1) Processing PDF references in notes, (2) Extracting text from large documents for analysis, (3) Converting DOCX to markdown, (4) Handling scanned/image PDFs with OCR, (5) Integrating with Obsidian or note-taking workflows, (6) Splitting large documents into manageable chunks. Invoke with: /process-document, /extract-pdf, /extract-docx, or say "use document-processor skill to..."
development-pipeline
03a-backend
03b-frontend
Didn't find tool you were looking for?