Skills elevenlabs-twilio-memory-bridge
FastAPI personalization webhook that adds persistent caller memory and dynamic context injection to ElevenLabs Conversational AI agents on Twilio. No audio proxying, file-based persistence, OpenClaw compatible.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/britrik/elevenlabs-twilio-memory-bridge" ~/.claude/skills/openclaw-skills-elevenlabs-twilio-memory-bridge && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/britrik/elevenlabs-twilio-memory-bridge" ~/.openclaw/skills/openclaw-skills-elevenlabs-twilio-memory-bridge && rm -rf "$T"
manifest:
skills/britrik/elevenlabs-twilio-memory-bridge/SKILL.mdsource content
elevenlabs-twilio-memory-bridge
Personalization webhook service for ElevenLabs + Twilio voice agents with persistent caller memory.
What It Does
When a call arrives on your Twilio number, ElevenLabs' native integration triggers this webhook. The bridge looks up the caller's history, loads long-term memory facts and daily context notes, combines them with a customizable soul/personality template, and returns everything as a system prompt override so your agent greets each caller with full context.
Architecture
- No audio proxying - ElevenLabs and Twilio handle media directly
- Webhook only - called once per inbound call to inject context
- File-based persistence - JSON files in
, zero external dependencies./data/ - OpenClaw compatible - works with any OpenAI-compatible LLM endpoint
Endpoints
| Endpoint | Method | Purpose |
|---|---|---|
| POST | ElevenLabs calls this on inbound call |
| POST | Optional post-call cleanup |
| POST | Add long-term fact about a caller |
| POST | Add global or caller-scoped context note |
| GET | Health check |
Setup
- Clone repo,
pip install -r requirements.txt - Copy
to.env.example
, fill in secrets.env - Configure ElevenLabs agent with Custom LLM pointing to your OpenClaw instance
- Enable system prompt + first message overrides in agent Security settings
- Add webhook URL
in ElevenLabs settingshttps://your-domain/webhook/personalize - Import Twilio number in ElevenLabs dashboard
- Run:
uvicorn app:app --host 0.0.0.0 --port 8000
Required Environment Variables
- scoped ElevenLabs keyELEVENLABS_API_KEY
- your agent IDELEVENLABS_AGENT_ID
- your OpenClaw instance URLOPENCLAW_API_BASE_URL
- publicly reachable URL of this servicePUBLIC_BASE_URL
Security
- All caller phone numbers are SHA-256 hashed before storage/logging
- Secrets loaded exclusively from environment variables
- Optional HMAC webhook signature verification
- Safe for public GitHub repos, no secrets in source