genkit-production-expert
Build production Firebase Genkit applications including RAG systems, multi-step flows, and tool calling for Node.js/Python/Go. Deploy to Firebase Functions or Cloud Run with AI monitoring. Use when asked to "create genkit flow" or "implement RAG". Trigger with relevant phrases based on skill purpose.
Install
mkdir -p .claude/skills/genkit-production-expert && curl -L -o skill.zip "https://mcp.directory/api/skills/download/8929" && unzip -o skill.zip -d .claude/skills/genkit-production-expert && rm skill.zipInstalls to .claude/skills/genkit-production-expert
About this skill
Genkit Production Expert
Overview
Build production-grade Firebase Genkit applications including RAG systems, multi-step flows, and tool-calling agents for Node.js, Python, and Go. This skill covers the full lifecycle from project scaffolding and schema validation through flow implementation, local testing with the Genkit Developer UI, and deployment to Firebase Functions or Cloud Run with AI monitoring and OpenTelemetry tracing.
Prerequisites
- Node.js 18+ (TypeScript), Python 3.10+ (Python), or Go 1.21+ (Go) runtime
- Genkit CLI and core packages (
npm install genkit @genkit-ai/googleaifor TypeScript) - Google Cloud project with Vertex AI API enabled for Gemini model access
- Firebase CLI for Firebase Functions deployments (
npm install -g firebase-tools) - Zod (TypeScript), Pydantic (Python), or Go structs for input/output schema validation
- Environment variables configured for API keys (never hardcoded; use Secret Manager)
Instructions
- Analyze the requirements to determine target language, flow complexity (simple, multi-step, or RAG), model selection (Gemini 2.5 Flash vs Pro), and deployment target
- Initialize the project structure with appropriate config files (
tsconfig.json,genkit.config.ts, or equivalent) - Install Genkit core, provider plugins, and schema validation dependencies
- Define input/output schemas using Zod, Pydantic, or Go structs to enforce type safety at runtime
- Implement the Genkit flow using
ai.defineFlow()with model configuration, temperature tuning, and token limits - Add tool definitions using
ai.defineTool()with scoped schemas for each external capability the flow requires - For RAG flows: implement a retriever using
ai.defineRetriever()with embedding generation (text-embedding-gecko) and vector database integration - Configure error handling for safety blocks (
SAFETY_BLOCK), quota exceeded (QUOTA_EXCEEDED), and provider timeouts - Enable OpenTelemetry tracing with custom span attributes for cost and latency tracking
- Test locally using the Genkit Developer UI, then deploy to Firebase Functions or Cloud Run with auto-scaling configuration
See ${CLAUDE_SKILL_DIR}/references/how-it-works.md for the phased workflow and ${CLAUDE_SKILL_DIR}/references/production-best-practices-applied.md for the production checklist.
Output
- Complete Genkit flow implementation with typed schemas and model bindings
- Tool definitions with Zod/Pydantic-validated inputs and outputs
- Retriever configuration for RAG flows (embeddings, vector search, context injection)
- Deployment configuration: Firebase Functions (
firebase.json) or Cloud Run service YAML - Monitoring setup: OpenTelemetry tracing, Firebase Console integration, alert policies
- Cost optimization report: model selection rationale, token usage estimates, caching strategy
Error Handling
| Error | Cause | Solution |
|---|---|---|
SAFETY_BLOCK response | Model safety filters triggered on input or output | Review prompt content; adjust safety settings; add input sanitization before generation |
QUOTA_EXCEEDED | API rate limit or daily token quota reached | Implement exponential backoff with jitter; request quota increase; cache repeated prompts |
| Schema validation failure | Runtime input does not match Zod/Pydantic schema | Add descriptive error messages to schema; validate inputs before calling ai.generate() |
| Retriever returns empty results | Vector database query found no matches above similarity threshold | Lower similarity threshold; verify embeddings are indexed; check embedding model version match |
| Deployment timeout | Cold start exceeds Firebase Functions 60s limit | Increase memory allocation; use Cloud Run for long-running flows; enable min instances > 0 |
See ${CLAUDE_SKILL_DIR}/references/errors.md for additional error scenarios.
Examples
Scenario 1: Question-Answering Flow -- Create a Genkit flow using Gemini 2.5 Flash with Zod input/output schemas. Set temperature to 0.3 for factual responses. Deploy to Firebase Functions with token usage monitoring. Expected latency: under 2 seconds per query.
Scenario 2: RAG Document Search -- Implement a retriever with text-embedding-gecko embeddings connected to Firestore vector search. Build a RAG flow that retrieves top-5 relevant documents, injects them as context, and generates grounded answers with source citations. Include context caching for repeated queries.
Scenario 3: Multi-Tool Agent -- Define weather and calendar tools with typed schemas. Create an agent flow that routes user queries to appropriate tools, handles multi-turn conversations, and traces each tool execution for debugging. Deploy to Cloud Run with auto-scaling (2-10 instances).
See ${CLAUDE_SKILL_DIR}/references/workflow-examples.md for complete code examples.
Resources
- Firebase Genkit Documentation -- flows, tools, retrievers, deployment
- Genkit GitHub Repository -- source code and examples
- Zod Schema Library -- TypeScript schema validation
- OpenTelemetry for Node.js -- tracing and observability
- Gemini model selection guide: Flash for throughput, Pro for reasoning quality
- Context caching and token optimization strategies for cost management
More by jeremylongshore
View all skills by jeremylongshore →You might also like
flutter-development
aj-geddes
Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.
drawio-diagrams-enhanced
jgtolentino
Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.
ui-ux-pro-max
nextlevelbuilder
"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
nano-banana-pro
garg-aayush
Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.
pdf-to-markdown
aliceisjustplaying
Convert entire PDF documents to clean, structured Markdown for full context loading. Use this skill when the user wants to extract ALL text from a PDF into context (not grep/search), when discussing or analyzing PDF content in full, when the user mentions "load the whole PDF", "bring the PDF into context", "read the entire PDF", or when partial extraction/grepping would miss important context. This is the preferred method for PDF text extraction over page-by-page or grep approaches.
Related MCP Servers
Browse all serversUse Firebase to integrate Firebase Authentication, Firestore, and Storage for seamless backend services in your apps.
XcodeBuild streamlines iOS app development for Apple developers with tools for building, debugging, and deploying iOS an
Enhance productivity with AI-driven Notion automation. Leverage the Notion API for secure, automated workspace managemen
Unlock browser automation studio with Browserbase MCP Server. Enhance Selenium software testing and AI-driven workflows
Unlock powerful text to speech and AI voice generator tools with ElevenLabs. Create, clone, and customize speech easily.
AppSignal: real-time monitoring with incident tracking, anomaly detection, performance metrics and log analysis for fast
Stay ahead of the MCP ecosystem
Get weekly updates on new skills and servers.