Welcome to the YC Voice Agents Hackathon, hosted by Cekura and Daily, in partnership with NVIDIA, AWS, and Twilio.
The goal of this event is to learn about building, scaling, evaluating, and continuously improving voice agents.
This is a one-day event. Please arrive by 8:30. We'll kick things off at 9:00.
- 8:00 AM – Doors open & registration
- 8:30 AM – Breakfast
- 9:00 AM – Welcome / Hackathon begins
- 12:00 PM – Lunch
- 6:00 PM – Submissions due
- 6:00 - 8:00 PM – Dinner, demos, and conversation
- 8:00 PM – Judges' presentations
- 9:00 PM – We all go home
First of all, please respect the YC space. We very much appreciate YC hosting these events. Stay in the designated areas, clean up after meals, and in general be a good guest.
Build something new for this hackathon. Use the tools from Cekura to evaluate and improve the performance of what you build. Use Pipecat as the orchestration framework for your voice agent. We also encourage you to use the open source models from NVIDIA, but it's okay to use any models that work well for your project.
There will be engineers from Cekura, Daily, NVIDIA, AWS, and Twilio available to help you with your project. Don't hesitate to find us.
Judging will start at 6:00. In general, the judges want to showcase interesting projects rather than just pick winners. So don't worry too much about what the judges are looking for in a project. Build something that demonstrates creativity, is interesting on a technical level, or solves a real problem! But do keep in mind that the judges want to see great examples of using Cekura to improve voice agent performance, and using open source models from NVIDIA.
This repo contains two versions of a voice agent built with Pipecat.
The demo bot Field & Flower is a neighborhood flower shop: callers order a bouquet for delivery while the bot looks up the catalog, captures delivery details, and places the order. All backend calls are mocked, so the starter runs with nothing but AI service keys.
You can start with this before the hackathon, if you want to. Or test GPT-4.1 and Nemotron side-by-side during the hackathon, using Cekura.
This bot only requires a Gradium API key and an OpenAI API key. Sign up for free at Gradium. We'll provide a code for Gradium credits, during the event.
- STT: Gradium
- LLM: OpenAI Responses API (GPT-4.1)
- TTS: Gradium
- Transports: SmallWebRTC (local dev) and Twilio (production telephony)
- Deploy target: Pipecat Cloud
NVIDIA models hosted on AWS, available during the hackathon.
export NVIDIA_ASR_URL=ws://44.241.251.184:8080
export NEMOTRON_LLM_URL=http://nemotron-fleet-alb-1322439314.us-west-2.elb.amazonaws.com/v1
export NEMOTRON_LLM_MODEL=nvidia/nemotron-3-super
- STT: Nemotron Speech Streaming
- LLM: Nemotron 3 Super 120B
- TTS: Gradium
- Transports: SmallWebRTC (local dev) and Twilio (production telephony)
- Deploy target: Pipecat Cloud
Get the bot running over WebRTC in your browser before you push to the cloud or wire up the phone, for a faster iteration loop.
-
Clone and enter the server directory:
git clone https://github.com/pipecat-ai/yc-voice-agents-hackathon.git cd yc-voice-agents-hackathon/server -
Configure API keys:
cp .env.example .env # Edit .env and fill in OPENAI_API_KEY, GRADIUM_API_KEY. # TWILIO_* keys are only needed when you wire up the phone (next section).
-
Install dependencies:
uv sync
-
Run the bot:
# run one or the other of these uv run bot-gpt.py uv run bot-nemotron.pyOpen http://localhost:7860 and click Connect to start talking. First launch takes ~20s while Pipecat downloads VAD and turn-detection models.
Once the bot works locally, deploy to Pipecat Cloud and connect it to a Twilio phone number so anyone can call in.
-
Install the Pipecat CLI and log in:
uv tool install pipecat-ai-cli pc cloud auth login
-
Buy a phone number with voice capability.
-
Get your Pipecat Cloud organization name:
pc cloud organizations list
-
Create a TwiML Bin with this configuration:
<?xml version="1.0" encoding="UTF-8"?> <Response> <Connect> <Stream url="wss://api.pipecat.daily.co/ws/twilio"> <Parameter name="_pipecatCloudServiceHost" value="flower-bot.YOUR_ORG_NAME"/> </Stream> </Connect> </Response>
Replace
YOUR_ORG_NAMEwith the org name from step 2. -
Attach the TwiML Bin to your Twilio number: Go to your phone numbers → select your number → under Voice Configuration, set method to the TwiML Bin you created → Save.
-
[Optional] Use Twilio Dev phone for testing.
Your deployment details are specified in the pcc-deploy.toml file. You can learn more about options in the docs.
pc cloud secrets set flower-bot-secrets --file .envThis uploads everything from .env to Pipecat Cloud's secure storage. The bot reads from there at runtime, so you don't bake keys into the image.
Build and run your bot on Pipecat Cloud:
pc cloud deployLearn more about cloud builds.
Dial the Twilio number you set up. 🌷
Cekura tests and observes voice agents. For this hackathon, use it to test the Pipecat bot you build in this repo — run real conversations against it, score the transcripts, and fix what's failing before you demo.
Create your account at dashboard.cekura.ai. If you're approved for this hackathon, just sign up and your credits will show up automatically. If you don't see them, find someone from the Cekura team, they're on-site.
On first login you'll land on a short setup flow that helps you create your first agent and test. Feel free to click through it — or hit Skip and jump straight to the dashboard if you'd rather set things up yourself. Either way takes a minute.
The fastest path — and what we recommend for the hackathon — is to drive Cekura from Claude Code using our MCP server + skills. You stay in your terminal, and Cekura handles agent creation, scenario generation, and running the test.
1. Install the Cekura skills + MCP (Claude Code marketplace plugin — bundles the skills, slash commands, and auto-configured MCP server):
/plugin marketplace add cekura-ai/cekura-skills
/plugin install cekura@cekura-skillsRepo: github.com/cekura-ai/cekura-skills · Full setup + other agents (Cursor, Codex, etc.): docs.cekura.ai → Claude Code guide and Skills.
2. Run an end-to-end test of your agent with a single command:
/cekura-report
This spins up anything from 10–20 evaluators (what Cekura calls test cases), runs scenarios against your Pipecat agent, and gives you back a full report — transcripts, scores, and what failed — so you can iterate fast.
When connecting your agent, select
Pipecatas the provider. Details: docs.cekura.ai → Pipecat.
- Claude Code guide — MCP + skills setup
- Cekura skills — all slash commands
- Pipecat integration
- Cekura docs · dashboard