developing-genkit-js について
JavaScript プロジェクトで AI 機能を開発するための Genkit JS ガイドです。Genkit CLI で最新ドキュメントを確認し、プロジェクトのフレームワークに合わせて実装し、文書化された手順で問題を調べます。
主な機能
- 01Genkit CLI によるドキュメント検索
- 02プロバイダー選択の案内
- 03プロジェクトフレームワークへの適応
- 04文書に沿ったエラー調査
- 05型チェックのワークフロー
活用シーン
- 01最新の Genkit API の確認
- 02プロバイダープラグインの選択
- 03プロジェクトのフレームワークに合わせた Genkit コードの調整
- 04記載済みの手順による Genkit エラーの診断
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ firebase/ agent-skills --skill developing-genkit-jsインストール後、Claude Code で/developing-genkit-jsを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/docs-and-cli.mdbest-practices.mdexamples.mdcommon-errors.mdsetup.md詳細
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';
// 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-2.5-flash'),
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(例:configureGenkit、response.text()、defineFlow のインポート)と、それらに対応する v1.x の代替 API の一覧については、よくあるエラーを参照してください。
Genkit CLI または提供されているリファレンスを使って、必ず情報を確認してください。
エラー対応手順
Genkit 関連のエラー(ValidationError、API エラー、型エラー、404 など)が発生した場合:
- 最初に必ず行うこと:よくあるエラーを読む
- エラーが既知のパターンに該当するか確認する
- 記載されている解決策を適用する
- common-errors.md に該当する情報がない場合に限り、ほかの情報源(例:
genkit docs:search)を確認する
次のことはしないでください:
- 推測や内部知識に基づいて修正を試みる
- 修正方法が分かっていると思い込み、common-errors.md を読むのを省略する
- Genkit 1.0 以前のパターンに頼る
エラー対応では、この手順を必ず守ってください。
開発ワークフロー
- プロバイダーを選択する:Genkit はプロバイダーに依存しません(Google AI、OpenAI、Anthropic、Ollama など)。
- ユーザーがプロバイダーを指定しない場合は、Google AI をデフォルトとして使用します。
- ユーザーがほかのプロバイダーについて尋ねた場合は、
genkit docs:search "plugins"を使って関連ドキュメントを探します。
- フレームワークを特定する:
package.jsonを確認し、実行環境(Next.js、Firebase、Express)を特定します。@genkit-ai/next、@genkit-ai/firebase、または@genkit-ai/google-cloudを探します。- 使用するフレームワーク固有のパターンに合わせて実装を調整します。
- ベストプラクティスに従う:
- プロジェクト構成、スキーマ定義、ツール設計の指針については、ベストプラクティスを参照してください。
- 最小限にする:デフォルトと異なるオプションだけを指定します。不明な場合は、ドキュメントまたはソースを確認してください。
- 正しさを確認する:
- 変更後に型チェック(例:
npx tsc --noEmit)を実行します。 - 型チェックに失敗した場合は、ソースコードを検索する前によくあるエラーを確認してください。
- 変更後に型チェック(例:
- エラーに対処する:
- エラーが発生した場合:最初によくあるエラーを読む
- エラーを、ドキュメントに記載されたパターンと照合する
- ほかの方法を試す前に、記載されている修正方法を適用する
ドキュメントを探す
Genkit CLI を使って、信頼できるドキュメントを探します。
- トピックを検索する:
genkit docs:search <query>- 例:
genkit docs:search "streaming"
- 例:
- すべてのドキュメントを一覧表示する:
genkit docs:list - ガイドを読む:
genkit docs:read <path>- 例:
genkit docs:read js/flows.md
- 例:
CLI の使用方法
genkit CLI は、開発とドキュメント確認における主要なツールです。
- 一般的なタスク、ワークフロー、コマンドの使用方法については、CLI リファレンスを参照してください。
- コマンドの一覧については、
genkit --helpを使用してください。
リファレンス
- ベストプラクティス:スキーマ定義、フロー設計、構成に関する推奨パターン。
- ドキュメントと CLI のリファレンス:ドキュメント検索、CLI タスク、ワークフロー。
- よくあるエラー:重要な注意事項、移行ガイド、トラブルシューティング。
- セットアップガイド:新規プロジェクト向けの手動セットアップ手順。
- サンプル:最小限の再現可能な例(基本的な生成、マルチモーダル、思考モード)。
コメント
Markdown 対応