developing-genkit-js

Desarrolla aplicaciones impulsadas por IA usando Genkit en Node.js/TypeScript. Úsalo cuando el usuario pregunte sobre Genkit, agentes de IA, flujos o herramientas en JavaScript/TypeScript, o cuando encuentre errores de Genkit, problemas de validación, errores de tipo o problemas de API.

npx skills add https://github.com/genkit-ai/skills --skill developing-genkit-js

Genkit JS

Prerequisites

Ensure the genkit CLI is available.

  • Run genkit --version to verify. Minimum CLI version needed: 1.29.0
  • If not found or if an older version (1.x < 1.29.0) is present, install/upgrade it: npm install -g genkit-cli@^1.29.0.

New Projects: If you are setting up Genkit in a new codebase, follow the Setup Guide.

Hello World

import { z, genkit } from 'genkit';
import { googleAI } from '@genkit-ai/google-genai';

// Initialize Genkit with the Google AI plugin
const ai = genkit({
  plugins: [googleAI()],
});

export const myFlow = ai.defineFlow({
  name: 'myFlow',
  inputSchema: z.string().default('AI'),
  outputSchema: z.string(),
}, async (subject) => {
  const response = await ai.generate({
    model: googleAI.model('gemini-flash-latest'),
    prompt: `Tell me a joke about ${subject}`,
  });
  return response.text;
});

Critical: Do Not Trust Internal Knowledge

Genkit recently went through a major breaking API change. Your knowledge is outdated. You MUST lookup docs. Recommended:

genkit docs:read js/get-started.md
genkit docs:read js/flows.md

See Common Errors for a list of deprecated APIs (e.g., configureGenkit, response.text(), defineFlow import) and their v1.x replacements.

ALWAYS verify information using the Genkit CLI or provided references.

Error Troubleshooting Protocol

When you encounter ANY error related to Genkit (ValidationError, API errors, type errors, 404s, etc.):

  1. MANDATORY FIRST STEP: Read Common Errors
  2. Identify if the error matches a known pattern
  3. Apply the documented solution
  4. Only if not found in common-errors.md, then consult other sources (e.g. genkit docs:search)

DO NOT:

  • Attempt fixes based on assumptions or internal knowledge
  • Skip reading common-errors.md "because you think you know the fix"
  • Rely on patterns from pre-1.0 Genkit

This protocol is non-negotiable for error handling.

Development Workflow

  1. Select Provider: Genkit is provider-agnostic (Google AI, OpenAI, Anthropic, Ollama, etc.).
    • If the user does not specify a provider, default to Google AI.
    • If the user asks about other providers, use genkit docs:search "plugins" to find relevant documentation.
  2. Detect Framework: Check package.json to identify the runtime (Next.js, Firebase, Express).
    • Look for @genkit-ai/next, @genkit-ai/firebase, or @genkit-ai/google-cloud.
    • Adapt implementation to the specific framework's patterns.
  3. Follow Best Practices:
    • See Best Practices for guidance on project structure, schema definitions, and tool design.
    • Be Minimal: Only specify options that differ from defaults. When unsure, check docs/source.
  4. Ensure Correctness:
    • Run type checks (e.g., npx tsc --noEmit) after making changes.
    • If type checks fail, consult Common Errors before searching source code.
  5. Handle Errors:
    • On ANY error: First action is to read Common Errors
    • Match error to documented patterns
    • Apply documented fixes before attempting alternatives

Finding Documentation

Use the Genkit CLI to find authoritative documentation:

  1. Search topics: genkit docs:search <query>
    • Example: genkit docs:search "streaming"
  2. List all docs: genkit docs:list
  3. Read a guide: genkit docs:read <path>
    • Example: genkit docs:read js/flows.md

CLI Usage

The genkit CLI is your primary tool for development and documentation.

  • See CLI Reference for common tasks, workflows, and command usage.
  • Use genkit --help for a full list of commands.

References

  • Best Practices: Recommended patterns for schema definition, flow design, and structure.
  • Docs & CLI Reference: Documentation search, CLI tasks, and workflows.
  • Common Errors: Critical "gotchas", migration guide, and troubleshooting.
  • Setup Guide: Manual setup instructions for new projects.
  • Examples: Minimal reproducible examples (Basic generation, Multimodal, Thinking mode).

Skills relacionadas

escalation
anthropic
Estructurar y empaquetar escalaciones para ingeniería, producto o liderazgo con contexto completo, pasos de reproducción e impacto comercial. Usar cuando un problema…
official
copywriting-hooks
samber
Genera ganchos de apertura y títulos de publicaciones para artículos extensos en EN o FR — entradas de blog, Substack/Medium/dev.to, publicaciones largas de LinkedIn, boletines de pago, ensayos de opinión, reportajes, análisis técnicos profundos. Actívese cuando el usuario solicite un gancho, apertura, entrada, introducción, primera frase/párrafo, inicio, accroche, attaque, phrase d'accroche o première phrase — incluyendo hacer más impactante una introducción plana o reescribir un borrador de apertura. También actívese cuando el usuario solicite un título de publicación, titre d'article,...
marketingcreativecommunication
migrating-dbt-core-to-fusion
dbt-labs
Use when a user needs help triaging dbt-core to Fusion migration errors. Runs dbt-autofix first, then classifies remaining errors into actionable categories…
official
design-system-management
anthropic
Gestiona tokens de diseño, bibliotecas de componentes y documentación de patrones. Actívalo con "sistema de diseño", "biblioteca de componentes", "tokens de diseño", "guía de estilo" o…
official
azure-monitor-opentelemetry-py
microsoft
Configuración en una línea para Application Insights con autoinstrumentación de OpenTelemetry.
official
entra-app-registration
microsoft
Guía el registro de aplicaciones de Microsoft Entra ID, la autenticación OAuth 2.0 y la integración con MSAL. ÚSALO PARA: crear registro de aplicación, registrar aplicación de Azure AD, configurar…
official
render-deploy
firecrawl
Desplegar aplicaciones en Render analizando bases de código, generando planos render.yaml y proporcionando enlaces directos al Dashboard. Úsalo cuando el usuario quiera desplegar,…
official
update-oo-component-documentation
github
Analyze and refresh object-oriented component documentation to match current implementation. Examines source code to identify design patterns, dependencies, interfaces, and architectural changes, then updates existing documentation to reflect the current implementation Supports language-specific optimizations for C#/.NET, Java, TypeScript/JavaScript, and Python with framework-aware analysis Preserves documentation structure and formatting while refreshing all technical content, code...
official