developing-genkit-js

developing-genkit-js

使用 Genkit 在 Node.js/TypeScript 中开发 AI 驱动的应用程序。当用户询问关于 Genkit、AI 代理、流程或 JavaScript/TypeScript 中的工具,或遇到 Genkit 错误、验证问题、类型错误或 API 问题时使用。

13Star
3Fork
更新于 2026/6/21
SKILL.md
readonly只读
name
developing-genkit-js
description

使用 Genkit 在 Node.js/TypeScript 中开发 AI 驱动的应用程序。当用户询问关于 Genkit、AI 代理、流程或 JavaScript/TypeScript 中的工具,或遇到 Genkit 错误、验证问题、类型错误或 API 问题时使用。

Genkit JS

前提条件

确保 genkit CLI 可用。

  • 运行 genkit --version 验证。最低 CLI 版本要求:1.29.0
  • 如果未找到或版本较旧(1.x < 1.29.0),请安装/升级:npm install -g genkit-cli@^1.29.0

新项目:如果你在新代码库中设置 Genkit,请遵循 设置指南

Hello World

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

// 使用 Google AI 插件初始化 Genkit
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;
});

重要:不要依赖内部知识

Genkit 最近经历了一次重大的破坏性 API 变更。你的知识已过时。你必须查阅文档。推荐:

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

参见 常见错误 了解已弃用 API(例如 configureGenkitresponse.text()defineFlow 导入)及其 v1.x 替代方案。

始终使用 Genkit CLI 或提供的参考资料验证信息。

错误排查协议

当你遇到任何与 Genkit 相关的错误(ValidationError、API 错误、类型错误、404 等)时:

  1. 强制第一步:阅读 常见错误
  2. 识别错误是否匹配已知模式
  3. 应用文档中的解决方案
  4. 仅当在 common-errors.md 中未找到时,才查阅其他来源(例如 genkit docs:search

不要:

  • 基于假设或内部知识尝试修复
  • 跳过阅读 common-errors.md "因为你觉得你知道修复方法"
  • 依赖 1.0 之前 Genkit 的模式

此协议对于错误处理是不可协商的。

开发工作流

  1. 选择提供商:Genkit 与提供商无关(Google AI、OpenAI、Anthropic、Ollama 等)。
    • 如果用户未指定提供商,默认使用 Google AI
    • 如果用户询问其他提供商,使用 genkit docs:search "plugins" 查找相关文档。
  2. 检测框架:检查 package.json 以识别运行时(Next.js、Firebase、Express)。
    • 查找 @genkit-ai/next@genkit-ai/firebase@genkit-ai/google-cloud
    • 根据特定框架的模式调整实现。
  3. 遵循最佳实践
    • 参见 最佳实践 了解项目结构、模式定义和工具设计的指导。
    • 保持最小化:仅指定与默认值不同的选项。不确定时,查阅文档/源代码。
  4. 确保正确性
    • 修改后运行类型检查(例如 npx tsc --noEmit)。
    • 如果类型检查失败,在搜索源代码之前先查阅 常见错误
  5. 处理错误
    • 遇到任何错误:首先阅读 常见错误
    • 将错误与文档中的模式匹配
    • 在尝试替代方案之前应用文档中的修复

查找文档

使用 Genkit CLI 查找权威文档:

  1. 搜索主题genkit docs:search <query>
    • 示例:genkit docs:search "streaming"
  2. 列出所有文档genkit docs:list
  3. 阅读指南genkit docs:read <path>
    • 示例:genkit docs:read js/flows.md

CLI 使用

genkit CLI 是你开发和文档的主要工具。

  • 参见 CLI 参考 了解常见任务、工作流和命令用法。
  • 使用 genkit --help 查看完整命令列表。

参考资料

  • 最佳实践:推荐的模式定义、流程设计和结构模式。
  • 文档与 CLI 参考:文档搜索、CLI 任务和工作流。
  • 常见错误:关键的“陷阱”、迁移指南和故障排除。
  • 设置指南:新项目的手动设置说明。
  • 示例:最小可复现示例(基本生成、多模态、思考模式)。