GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - PatterAI/Patter: 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.

BranchesTags
Open more actions menu

Latest commit

 

History

159 Commits
159 Commits

Folders and files

NameName
Last commit message
Last commit date
.githooks
.githooks
 
 
.github
.github
 
 
create-getpatter
create-getpatter
 
 
dashboard-app
dashboard-app
 
 
docs
docs
 
 
examples
examples
 
 
libraries
libraries
 
 
scripts
scripts
 
 
tests/parity
tests/parity
 
 
.editorconfig
.editorconfig
 
 
.env.example
.env.example
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
.nvmrc
.nvmrc
 
 
.pre-commit-config.yaml
.pre-commit-config.yaml
 
 
.python-version
.python-version
 
 
AGENTS.md
AGENTS.md
 
 
CHANGELOG.md
CHANGELOG.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
Dockerfile
Dockerfile
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
SECURITY.md
SECURITY.md
 
 
docker-compose.yml
docker-compose.yml
 
 

Repository files navigation

Patter SDK

Patter SDK

PyPI npm MIT License Python 3.11+ TypeScript 5+

About • How It Works • Documentation • Quickstart • Skills • Templates


About

Patter is the open-source SDK that gives your AI agent a phone number. You build the agent; Patter handles everything between it and the phone network — the agent loop, the language model, speech-to-text, text-to-speech, real-time voice, audio processing, and the telephony carrier.

  • Build with one API in Python or TypeScript — same surface, same hooks, same events, at full parity.
  • Choose the provider for every layer — LLM, STT, TTS, realtime engine, carrier — and swap any of them with one line.
  • Run locally with a built-in tunnel and dashboard, or simulate a whole call from your terminal — no phone required.

How It Works

Patter is the full voice stack between your application and the phone network — not just glue between an LLM and a carrier. It runs the agent loop and owns every layer of the call, and you pick the provider for each one. Compose them in Realtime, Pipeline, or Hybrid mode.

27+ provider integrations across the voice stack · 3 voice modes · 2 SDKs (Python & TypeScript) at parity.

Layer Choose from
LLM — text generation OpenAI · Anthropic · Google Gemini · Groq · Cerebras
STT — speech-to-text Deepgram · AssemblyAI · Cartesia · Soniox · Speechmatics · Whisper · Fish Audio
TTS — text-to-speech ElevenLabs · OpenAI · Cartesia · LMNT · Rime · Telnyx · Fish Audio
Realtime — all-in-one voice OpenAI Realtime · Gemini Live · Ultravox · ElevenLabs ConvAI
Telephony — phone carriers Twilio · Telnyx · Plivo
Audio — VAD & suppression Silero VAD · Krisp · DeepFilterNet

On top of the stack: an automatic LLM fallback chain (provider failover mid-call), built-in tools / call transfer / guardrails that behave identically on every carrier, and a vendor-neutral OpenTelemetry trace of each call.

Documentation

Visit the docs, or jump straight to a quickstart: TypeScript · Python.

Skills for Coding Agents

Using Claude Code, Claude Desktop, OpenClaw, Hermes, Cursor, Codex, or another AI coding agent?

Install Patter skills for voice agents →

npx skills add patterai/skills

The bundle works in ~55 agent harnesses that consume the Anthropic Agent Skills standard. Install once; every agent on your machine learns the SDK. Skills live in their own repository: PatterAI/skills.

Quickstart

Provider and carrier credentials are read from environment variables (e.g. TWILIO_ACCOUNT_SID, OPENAI_API_KEY) — the docs list the full catalog. Swap Twilio for Telnyx or Plivo to change carrier.

TypeScript

npm install getpatter
import { Patter, Twilio, OpenAIRealtime } from "getpatter";

const phone = new Patter({ carrier: new Twilio(), phoneNumber: "+15550001234" });
const agent = phone.agent({
  engine: new OpenAIRealtime(),
  systemPrompt: "You are a friendly receptionist for Acme Corp.",
  firstMessage: "Hello! How can I help?",
});
await phone.serve({ agent, tunnel: true });

Python

pip install getpatter
from getpatter import Patter, Twilio, OpenAIRealtime

phone = Patter(carrier=Twilio(), phone_number="+15550001234")
agent = phone.agent(
    engine=OpenAIRealtime(),
    system_prompt="You are a friendly receptionist for Acme Corp.",
    first_message="Hello! How can I help?",
)
await phone.serve(agent, tunnel=True)

tunnel: true spawns a Cloudflare quick tunnel and points your number at it — ideal for local dev. For production, use a static webhook_url (or ngrok); see Tunneling.

Telemetry

Note Patter collects anonymous, opt-out usage data (SDK version, bucketed provider/model and call facts) to help us prioritise — never call content, prompts, phone numbers, keys, or free text.

Opt out any time: Patter(telemetry=False) (new Patter({ telemetry: false })), getpatter telemetry disable, or PATTER_TELEMETRY_DISABLED=1 (also honours DO_NOT_TRACK=1); auto-off in CI/tests. Inspect without sending: PATTER_TELEMETRY_DEBUG=1. Full details: Telemetry.

Templates

Each template is a self-contained repo — clone, add your .env, and run. Python and TypeScript both included.

Template Description Repo
Inbound Agent Answer calls as a restaurant booking assistant patter-inbound-agent
Outbound Calls Place calls with AMD and voicemail drop patter-outbound-calls
Tool Calling CRM lookup + ticket creation via webhook tools patter-tool-calling
Custom Voice Pipeline mode: Deepgram STT + ElevenLabs TTS patter-custom-voice
Dynamic Variables Personalize prompts per caller using CRM data patter-dynamic-variables
Custom LLM Bring your own model patter-custom-llm
Dashboard Real-time monitoring with cost + latency tracking patter-dashboard
Production Setup Everything enabled: tools, guardrails, recording, dashboard patter-production
git clone https://github.com/PatterAI/patter-inbound-agent
cd patter-inbound-agent
cp .env.example .env    # fill in your keys
cd python && pip install -r requirements.txt && python main.py

Star History

Star History Chart

Contributors

Thanks to all our amazing contributors!

License

MIT — see LICENSE.

About

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.

getpatter.com

Topics

ai-agentai-phone-agenthermes-agentllmmastraopen-sourceopenaiopenclawpythonrealtime-apisdkspeech-to-texttelnyxtext-to-speechtwiliotypescriptvapi-alternativevoice-agentvoice-aivoicebot

Resources

Readme
MIT license

Contributing

Contributing

Security policy

Security policy
Activity
Custom properties

Stars

1.1k stars

Watchers

6 watching

Forks

127 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.