pipecat-friday-agent
Build a low-latency, Iron Man-inspired tactical voice assistant (F.R.I.D.A.Y.) using Pipecat, Gemini, and OpenAI.
Best use case
pipecat-friday-agent is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Build a low-latency, Iron Man-inspired tactical voice assistant (F.R.I.D.A.Y.) using Pipecat, Gemini, and OpenAI.
Teams using pipecat-friday-agent should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/pipecat-friday-agent/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How pipecat-friday-agent Compares
| Feature / Agent | pipecat-friday-agent | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Build a low-latency, Iron Man-inspired tactical voice assistant (F.R.I.D.A.Y.) using Pipecat, Gemini, and OpenAI.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Pipecat Friday Agent ## Overview This skill provides a blueprint for building **F.R.I.D.A.Y.** (Replacement Integrated Digital Assistant Youth), a local voice assistant inspired by the tactical AI from the Iron Man films. It uses the **Pipecat** framework to orchestrate a low-latency pipeline: - **STT**: OpenAI Whisper (`whisper-1`) or `gpt-4o-transcribe` - **LLM**: Google Gemini 2.5 Flash (via a compatibility shim) - **TTS**: OpenAI TTS (`nova` voice) - **Transport**: Local Audio (Hardware Mic/Speakers) ## When to Use This Skill - Use when you want to build a real-time, conversational voice agent. - Use when working with the Pipecat framework for pipeline-based AI. - Use when you need to integrate multiple providers (Google and OpenAI) into a single voice loop. - Use when building Iron Man-themed or tactical-themed voice applications. ## How It Works ### Step 1: Install Dependencies You will need the Pipecat framework and its service providers installed: ```bash pip install pipecat-ai[openai,google,silero] python-dotenv ``` ### Step 2: Configure Environment Create a `.env` file with your API keys: ```env OPENAI_API_KEY=your_openai_key GOOGLE_API_KEY=your_google_key ``` ### Step 3: Run the Agent Execute the provided Python script to start the interface: ```bash python scripts/friday_agent.py ``` ## Core Concepts ### Pipeline Architecture The agent follows a linear pipeline: `Mic -> VAD -> STT -> LLM -> TTS -> Speaker`. This allows for granular control over each stage, unlike end-to-end speech-to-speech models. ### Google Compatibility Shim Since Google's Gemini API has a different message format than OpenAI's standard (which Pipecat aggregators expect), the script includes a `GoogleSafeContext` and `GoogleSafeMessage` class to bridge the gap. ## Best Practices - ✅ **Use Silero VAD**: It is robust for local hardware and prevents background noise from triggering the LLM. - ✅ **Concise Prompts**: Tactical agents should give short, data-dense responses to minimize latency. - ✅ **Sample Rate Match**: OpenAI TTS outputs at 24kHz; ensure your `audio_out_sample_rate` matches to avoid high-pitched or slowed audio. - ❌ **No Polite Fillers**: Avoid "Hello, how can I help you today?" Instead, use "Systems nominal. Ready for commands." ## Troubleshooting - **Problem:** Audio is choppy or delayed. - **Solution:** Check your `OUTPUT_DEVICE` index. Run a script like `test_audio_output.py` to find the correct hardware index for your OS. - **Problem:** "Validation error" for message format. - **Solution:** Ensure the `GoogleSafeContext` shim is correctly translating OpenAI-style dicts to Gemini-style schema. ## Related Skills - `@voice-agents` - General principles of voice AI. - `@agent-tool-builder` - Add tools (Search, Lights, etc.) to your Friday agent. - `@llm-architect` - Optimizing the LLM layer. ## Limitations - Use this skill only when the task clearly matches the scope described above. - Do not treat the output as a substitute for environment-specific validation, testing, or expert review. - Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
Related Skills
zustand-store-ts
Create Zustand stores following established patterns with proper TypeScript types and middleware.
zoom-automation
Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.
zoho-crm-automation
Automate Zoho CRM tasks via Rube MCP (Composio): create/update records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.
zod-validation-expert
Expert in Zod — TypeScript-first schema validation. Covers parsing, custom errors, refinements, type inference, and integration with React Hook Form, Next.js, and tRPC.
zipai-optimizer
Ultra-dense token optimizer skill for prompt caching, log pruning, AST-based inspection, and minified JSON payloads.
zeroize-audit
Detects missing zeroization of sensitive data in source code and identifies zeroization removed by compiler optimizations, with assembly-level analysis, and control-flow verification. Use for auditing C/C++/Rust code handling secrets, keys, passwords, or other sensitive data.
zendesk-automation
Automate Zendesk tasks via Rube MCP (Composio): tickets, users, organizations, replies. Always search tools first for current schemas.
zapier-make-patterns
No-code automation democratizes workflow building. Zapier and Make (formerly Integromat) let non-developers automate business processes without writing code. But no-code doesn't mean no-complexity - these platforms have their own patterns, pitfalls, and breaking points.
youtube-summarizer
Extract transcripts from YouTube videos and generate comprehensive, detailed summaries using intelligent analysis frameworks
youtube-full
Fetch YouTube transcripts, search videos, browse channels, and extract playlists via TranscriptAPI — no yt-dlp, no Google API key, works from any cloud server.
youtube-automation
Automate YouTube tasks via Rube MCP (Composio): upload videos, manage playlists, search content, get analytics, and handle comments. Always search tools first for current schemas.
yield-intelligence
Passive income portfolio analysis — activate when user asks about dividend yields, Treasury rates, REIT income, monthly passive income goals, or portfolio yield optimization. Scans 4 asset classes, ranks by risk-adjusted return, and builds allocations targeting a specific monthly income.