Single-agent examples
Getting Started
Get started with a basic voice bot using
pipecat init quickstart.View Quickstart Guide βA full client-server example, showing how to connect different clients with a Pipecat bot. Client SDK examples include JavaScript, React, React Native, iOS, and Android.View Example β
Twilio websocket + Media streams. Inbound and outbound calling.View Example β
Telnyx websocket + Media streams. Inbound and outbound calling.View Example β
Plivo websocket + Media streams. Inbound and outbound calling.View Example β
Exotel websocket + Media streams. Inbound and outbound calling.View Example β
Add PSTN & SIP calling to your Pipecat bot. Examples include Daily PSTN and Daily + Twilio SIP. Learn how to place inbound and outbound calls, as well as how to cold transfer a call.View Example β
Warm transfer a PSTN call to a human agent using Daily PSTN.View Example β
Add WhatsApp WebRTC calling to your Pipecat bot.View Example β
Add OpenTelemetry to your Pipecat bot. Examples include Langfuse and Jaeger.View Example β
Automatically navigate an IVR call tree by providing Pipecat with a goal.View Example β
Detect voicemail in a phone call and leave a message.View Example β
Use Tavus to create a video avatar for your Pipecat bot.View Example β
Use HeyGen to create a video avatar for your Pipecat bot.View Example β
Use Simli to create a video avatar for your Pipecat bot.View Example β
A push-to-talk client interface, allowing users to press a button to start talking to the bot.View Example β
Learn how to deploy the SmallWebRTCTransport in a Docker container.View Example β
Learn how to use Pipecat Flows to create a structured navigation flow. This example shows a simple restaurant reservation flow.View Example β
Learn how to use Sentry to track metrics and errors in your Pipecat bot.View Example β
Stream real-time audio from an active Vonage Video API session into a Pipecat pipeline using the Vonage Audio Connector.View Example β
Have the bot talking the moment the user presses connect, using a warm pool of rooms on the server and client-side connection optimizations.View Example β
Send a 6-digit code by SMS and confirm it back, spoken or entered on the keypad as DTMF.View Example β
Run Pipecat PhoneLLM, an open-weights 30B model fine-tuned for phone agents, on Modal with Deepgram Flux for STT and TTS.View Example β
Delegate multi-step, tool-using tasks to an AWS Strands agent from inside a voice pipeline.View Example β
Put an AgentCore-hosted agent in the LLMβs place in the pipeline, streaming its responses back as speech.View Example β
Translate one incoming English stream into Spanish, French, and German simultaneously, each on its own Daily custom track.View Example β
Upload recordings to S3 with
AudioBufferProcessor and multipart uploads, so long calls donβt grow the buffer until the process runs out of memory.View Example βMulti-agent examples
These build coordinated multi-agent systems. All of them live in the pipecat repository.A greeter and a support agent that transfer control between each other. Demonstrates agent handoff with
activate_worker() and the @tool decorator.View Example βSame as above, but each agent has its own TTS with a distinct voice. The main agent has no TTS β audio comes from the active LLM agent through the bus.View Example β
A moderator dispatches a topic to three agents in parallel using
job_group(). Each one argues from a different perspective. Demonstrates job coordination.View Example βA voice agent backed by a code agent that uses Claude Agent SDK with tools (Read, Bash, Glob, Grep) to answer coding questions. Demonstrates job-based agent integration.View Example β
A voice agent forwards questions to a sidecar
PipelineWorker that owns a simulated sensor, keeping hardware state out of the conversation.View Example βThe voice loop stays responsive while an OpenClaw agent works in the background, so the user can steer or stop it mid-task.View Example β
The two-agent handoff split across separate processes using
RedisBus. The main transport agent runs independently from the LLM agents.View Example βThe same distributed handoff on a
PgmqBus (Postgres / Supabase), for ops-friendly infrastructure.View Example βA main agent connects to a remote LLM server over WebSocket using proxy agents. Demonstrates point-to-point distributed deployment.View Example β
UI workers
AUIWorker bridges the bus to a web client: page snapshots, state updates, job progress, and user actions all flow through it.
The smallest UIWorker example: a plain
UIWorker with a system prompt answers the voice agentβs questions about whatever is currently on the page.View Example βThe voice agent changes and reads a list on screen through custom
UIWorker jobs, which find each item with a classifier. The screen is the source of truth.View Example βAn accessibility-first, voice-guided walkthrough of a web form, driven entirely through the
screen tool.View Example βThe voice agent asks the
screen tool for the userβs current selection, so βexplain thisβ resolves to what they have highlighted.View Example βA
UIWorker job fans long-running research out to peer agents, and the client shows each oneβs progress as a cancellable card.View Example βA synthesis demo: snapshots, deixis, form-fill actions, and async job groups in one application.View Example β
π‘ Need Help Getting Started?
More Examples
Browse all examples on GitHub
Recipes
Browse code snippets & techniques
Discord Community
Get help from the community