A Pipecat example demonstrating a voice agent using WebSocket transport. The same bot.py runs locally for development and deploys directly to Pipecat Cloud.
- Python 3.11+
- uv
- Google API key (Gemini)
uv synccp env.example .envEdit .env and set your GOOGLE_API_KEY.
uv run bot.pyThis starts a local server at http://localhost:7860. When the client connects, it calls POST /start to allocate a session, then establishes the WebSocket.
See the client README.
bot.py is ready to deploy to Pipecat Cloud. The pcc-deploy.toml configures the agent name, secret set, and scaling.
uv tool install pipecat-ai-clipipecat cloud auth loginUpload your .env as a named secret set. Pipecat Cloud injects these as environment variables at runtime:
pipecat cloud secrets set websocket-secrets --file .envThe secret set name websocket-secrets matches what is configured in pcc-deploy.toml.
pipecat cloud deployThis builds the Docker image, pushes it to Pipecat Cloud, and starts the agent.
Once deployed, point the client at your agent's public URL. See the client README.