Open-source voice-AI SDK. The Vapi/Retell alternative for builders who want to own the stack. Give your AI agent a phone number in 4 lines — Python and TypeScript, MIT licensed, Twilio, Telnyx, and Plivo. - PatterAI/Patter
No reviews yetBe the first to leave a review for Patter SDK
Maker
📌
Hi Product Hunt, Francesco here! Nico and I built Patter.
Last year I tried to put an AI agent on a real phone number and lost two weeks to plumbing: carrier websockets, mu-law resampling, barge-in, voicemail detection. None of it was the agent. All of it was glue.
Patter is that glue, open-sourced. MIT, Python + TypeScript, same API in both:
from getpatter import Patter, Twilio, OpenAIRealtime
# bind a phone number, wire your agent, go live
phone = Patter(carrier=Twilio(), phone_number="+15550001234")
agent = phone.agent(engine=OpenAIRealtime(), system_prompt="Be a friendly receptionist.")
await phone.serve(agent, tunnel=True)
That's a live phone number answering with your agent.
Don't take my word for it — call the demo: +1 (920) 7-PATTER. An agent built on the SDK picks up. It's rate-limited, so if it stops answering we hit the daily cap.
What you get:
- Your carrier: Twilio, Telnyx, or Plivo — swap in one line
- Three voice modes from one API: speech-to-speech realtime (OpenAI Realtime, ElevenLabs ConvAI), the pipeline (Deepgram STT → your LLM → ElevenLabs TTS), or hybrid — 27+ provider integrations across the stack
- Barge-in, VAD, transfer, DTMF, voicemail drop, recording
- Self-hosted dashboard: every call's transcript, latency, and cost — your data, your servers
- Local dev with a built-in tunnel (tunnel=True) — test a real call from your laptop, no deploy
Honest framing: if you want something managed and working this week, Vapi and Retell are good at that. Patter is for when you want to own the stack — swap any layer, keep your data, see what every call actually costs.
Current release is 0.7.0, 4,500+ tests green across both SDKs, 950+ stars on GitHub.
pip install getpatter · npm install getpatter
github.com/PatterAI/Patter
Ask me anything about telephony plumbing, latency budgets, or why barge-in took longer to tune than the rest of the pipeline combined :)
Report
Congrats on shipping this, owning the stack with MIT licensing is a real win. One thing that would push it further for me would be a built-in latency benchmarking script that measures end-to-end response time across Twilio, Telnyx, and Plivo under load. Right now comparing providers means wiring up my own tooling, and a one-command benchmark would make it much easier to pick the right carrier before committing.
We’re building a setup wizard that configures the whole stack for you with sane defaults, carrier included. Final version ships soon and should make this a lot simpler.
Noting the one-command latency benchmark across Twilio, Telnyx and Plivo. Good idea, adding it to the list.
Report
Maker
Hey Product Hunt 👋
Nico here, co-founder of Patter.
Patter gives your AI agent a phone number in 4 lines of code. Open source, MIT, Python and TypeScript, runs in your own process with your own keys.
pip install getpatter or npm install getpatter and you’ll have an agent on the phone in ~5 minutes.
Congrats on shipping this, owning the stack with MIT licensing is a real win. One thing that would push it further for me would be a built-in latency benchmarking script that measures end-to-end response time across Twilio, Telnyx, and Plivo under load. Right now comparing providers means wiring up my own tooling, and a one-command benchmark would make it much easier to pick the right carrier before committing.
@haydarstemugsa Thanks Haydar, that’s a fair gap.
We’re building a setup wizard that configures the whole stack for you with sane defaults, carrier included. Final version ships soon and should make this a lot simpler.
Noting the one-command latency benchmark across Twilio, Telnyx and Plivo. Good idea, adding it to the list.
Hey Product Hunt 👋
Nico here, co-founder of Patter.
Patter gives your AI agent a phone number in 4 lines of code. Open source, MIT, Python and TypeScript, runs in your own process with your own keys.
pip install getpatter or npm install getpatter and you’ll have an agent on the phone in ~5 minutes.
We’ll be here all day to answer every comment.