Auto-discovered marketplace from yashwanth9394/voice-agent-system
npx claudepluginhub yashwanth9394/voice-agent-systemClaude calls you on the phone when it needs your input or wants to report progress
A hybrid voice agent that receives inbound calls, queues tasks for background processing, and makes outbound calls to notify you when tasks complete or need input.
┌─────────────────────────────────────────────────────────────────┐
│ YOUR MACHINE │
│ ┌────────────────────────────────────────────────────────────┐ │
│ │ VOICE AGENT SYSTEM │ │
│ │ │ │
│ │ ┌─────────────┐ ┌─────────────┐ ┌──────────────┐ │ │
│ │ │ Inbound Call│────▶│ Task Queue │───▶│ Task Worker │ │ │
│ │ │ (Telnyx) │ │ (Supabase) │ │ (Background) │ │ │
│ │ └─────────────┘ └─────────────┘ └──────┬───────┘ │ │
│ │ │ │ │ │
│ │ ▼ ▼ │ │
│ │ ┌─────────────┐ ┌──────────────┐ │ │
│ │ │ Claude Agent│◀──────────────────────│ Executors │ │ │
│ │ │ (Brain) │ │ Email/Cal/ │ │ │
│ │ └──────┬──────┘ │ Browser/Code │ │ │
│ │ │ └──────────────┘ │ │
│ │ ▼ │ │ │
│ │ ┌─────────────┐ ┌─────────────┐ │ │ │
│ │ │Outbound Call│◀────│ Callback │◀─────────┘ │ │
│ │ │ (Telnyx) │ │ Queue │ │ │
│ │ └─────────────┘ └─────────────┘ │ │
│ └────────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────┘
Open the .puml files in VS Code with PlantUML extension (Alt+D to preview):
| Diagram | File |
|---|---|
| WhatsApp → Code → Commit | docs/diagrams/1-whatsapp-code-execution.puml |
| Task Queue Flow | docs/diagrams/2-task-queue-flow.puml |
| Memory & Context | docs/diagrams/3-memory-flow.puml |
| Voice Call Flow | docs/diagrams/4-voice-call-flow.puml |
| System Overview | docs/diagrams/5-system-overview.puml |
bun install
cp .env.example .env
# Edit .env with your API keys
bun run setup
# Start main server
bun run dev
# In another terminal, start task worker
bun run dev:worker
Visit http://localhost:3333/oauth/google to connect your Google account for email and calendar features.
| Variable | Description |
|---|---|
CALLME_PHONE_ACCOUNT_SID | Telnyx Connection ID |
CALLME_PHONE_AUTH_TOKEN | Telnyx API Key |
CALLME_PHONE_NUMBER | Your Telnyx phone number |
CALLME_USER_PHONE_NUMBER | Phone number to call you at |
CALLME_OPENAI_API_KEY | OpenAI API key (for STT/TTS) |
ANTHROPIC_API_KEY | Claude API key |
CALLME_NGROK_AUTHTOKEN | ngrok auth token |
| Variable | Description |
|---|---|
SUPABASE_URL | Supabase project URL |
SUPABASE_SERVICE_KEY | Supabase service key |
GOOGLE_CLIENT_ID | Google OAuth client ID |
GOOGLE_CLIENT_SECRET | Google OAuth secret |
POSTHOG_API_KEY | PostHog analytics key |
USE_LOCAL_STORAGE | Set to true for SQLite |
TWILIO_ACCOUNT_SID | Twilio SID for WhatsApp |
TWILIO_AUTH_TOKEN | Twilio auth token |
TWILIO_WHATSAPP_FROM | Twilio WhatsApp sender number |
Send and read emails via Gmail.
{
type: 'email',
params: {
to: 'recipient@example.com',
subject: 'Meeting Tomorrow',
body: 'Hi, let\'s meet at 3pm.'
}
}
Manage Google Calendar events.