CLIリファレンス
init・pull・mcp・skillの用途、生成ファイル、上書きと非対話実行。
@genko-me/cliは、SDKの導入、型の同期、AIツールへのドキュメント接続を行うCLIです。Node.js 20.12以降で、アプリのpackage.jsonがあるディレクトリから実行します。
コマンドを選ぶ
| コマンド | 用途 |
|---|---|
init | 初回の依存追加・接続設定・型生成 |
pull | 管理画面の最新スキーマから型を再生成 |
mcp | AIクライアントへドキュメントMCPを登録 |
skill | プロジェクトへgenko.meの作業手順を配置 |
init:初期設定
npx @genko-me/cli initワークスペースIDとAPIキーを入力し、同期するAPIを選択します。CLIはAPIの定義を取得し、@genko-me/sdkと開発依存の@genko-me/cliを追加します。実行先のpackage.jsonにNext.jsがある場合は@genko-me/reactも追加し、client.tsにimport "server-only"を生成します。パッケージマネージャーはpackage.jsonの指定やロックファイルから判定します。
| 生成先 | 内容 | 手動編集 |
|---|---|---|
lib/schema.ts | APIごとの型・定義 | 再生成されるため変更しない |
lib/client.ts | createGenkoの接続設定 | プラグインなどを追加可能 |
genko.config.json | ワークスペース、ベースURL、生成先 | 必要な場合に調整 |
.env.example | 環境変数の案内 | プロジェクトの運用に合わせる |
.env.local | キーがほかに未設定の場合の保存先 | 秘密情報として扱う |
キーを環境変数や既存の環境ファイルから取得できる場合は、.env.localへ重ねて保存しません。キーは画面に表示されません。
既存の生成ファイルや設定があるとinitは終了します。--forceは上書きするための指定です。日常の型更新には使わず、pullを実行してください。
CLIは接続設定とスキーマを生成します。一覧・詳細ページのファイルは生成しません。クイックスタートのページ例を配置してください。
対話画面ではキーをマスクし、接続の進捗、生成先、次の手順を順に表示します。入力中のキャンセルでは生成ファイルを作りません。CIなどターミナルのない環境では--yes・--apisと環境変数を使用してください。
pull:型を更新する
npx @genko-me/cli pullgenko.config.jsonの接続先からスキーマを読み、設定されたスキーマファイルを再生成します。lib/client.tsは上書きしません。スキーマに変更がない場合はファイルを書き換えず、更新メッセージも表示しません。
API一覧も同期するため、生成したクライアントの編集は不要です。スキーマの取得だけなので、記事のアップロードやデータ移行は行いません。
設定ファイル
{
"version": 1,
"workspace": "your-workspace",
"baseUrl": "https://api.genko.me",
"schemaOutput": "lib/schema.ts",
"clientOutput": "lib/client.ts"
}生成先はプロジェクトルートからのパスです。たとえばsrc/libへ移動する場合は設定のパスも合わせます。APIキーはこのファイルへ記載しません。
src/libを使うプロジェクト
initはルーティングディレクトリを確認して生成先を選びます。
| 構成 | 生成先 |
|---|---|
src/app または src/pages | src/lib/schema.ts・src/lib/client.ts |
ルートの app または pages | lib/schema.ts・lib/client.ts |
| 上記がない | lib/schema.ts・lib/client.ts |
両方がある場合はNext.jsと同様にルート側を優先します。pullは検出し直さず、genko.config.jsonに保存された生成先を使います。既存プロジェクトの生成先を移す場合は、2ファイルを移動してschemaOutput・clientOutputも変更してください。独自のimportエイリアスは自動変更しません。
同期するAPIを選ぶ
対話でinitを実行すると、API名とエンドポイントの一覧を表示します。矢印キーで移動し、Spaceでチェック、Enterで確定します。Ctrl+Cで中断できます。選択内容は設定ファイルのendpointsへ保存されます。
# 初回から対象を指定
npx @genko-me/cli init --workspace your-workspace --apis blog,works
# 初期化済みのプロジェクトで選び直す
npx @genko-me/cli pull --select-apis
# 非対話で選択を変更して保存
npx @genko-me/cli pull --apis blog,works
# 将来追加されるAPIも含め、全APIを同期する設定へ戻す
npx @genko-me/cli pull --all-apis選択したAPIから参照するAPIのスキーマは、表示部品で参照先を扱うため自動で含まれます。参照をたどった先も対象です。無関係なAPIは生成しません。選択したAPIや参照先が削除されている場合は、既存ファイルを変更せずエラーにします。
選択用の一覧取得では配信APIの_schemaからワークスペース全体の定義を読みます。その後、生成・同期するAPIを絞ります。記事データは取得しません。APIの選択はアクセス権を制限する設定ではありません。
endpointsのない既存設定と、対象指定なしのinit --yesは従来どおり全APIを同期します。対象を固定する場合は--apisを指定してください。--watchを使う場合は、先にpull --select-apisで選択を保存します。
非対話実行
CIなどでは、秘密情報ストアにGENKO_API_KEYを設定したうえで実行します。
npx @genko-me/cli init --workspace your-workspace --yes --skip-install| 指定 | 用途 |
|---|---|
--workspace | ワークスペースID。GENKO_WORKSPACEでも指定可能 |
--yes | 対話入力を省略 |
--base-url | 別の配信APIへ接続。GENKO_API_BASE_URLでも指定可能 |
--skip-install | 依存パッケージのインストールを省略 |
--apis | 同期するエンドポイントをカンマ区切りで指定し保存 |
--all-apis | 将来の追加分も含め全APIを同期 |
--select-apis | 同期対象を対話で選び直す |
--force | 初期設定時の既存ファイルの上書きを許可 |
--skip-installを指定した環境では、SDKなどの依存を別途用意してください。すでに初期化済みのCIなら通常はpullを使います。
AIツール向けの設定
npx @genko-me/cli mcp --manual
npx @genko-me/cli skill --printこれらは設定内容の表示だけを行います。実際に登録・配置する場合の保存先と上書き方針は、MCPサーバーとSkillを参照してください。
よくある問題
| 状況 | 対処 |
|---|---|
| 初期化済みのエラー | pullを使う。別のプロジェクトで実行していないか確認 |
| 認証エラー | キーの発行元とワークスペースを確認 |
| 新しいAPIを呼べない | pullでAPI一覧とフィールド定義を同期 |
| 型を直したのに元に戻る | 生成ファイルを直接編集せず、管理画面のスキーマを変更 |
| 本番だけキーがない | 本番の環境変数にも設定し、再デプロイ |
CLIの初回利用を画面操作から進める場合はクイックスタートへ戻ってください。
開発中の自動同期
別ターミナルで pull --watch を実行します。10秒ごとに確認し、変更時だけ schema.ts を更新します。API一覧も同期するため、選択済みAPIの更新を client.ts に手で反映する必要はありません。新しいAPIを使う場合は pull --select-apis で選択に追加します。停止はCtrl+Cです。
最終更新: 2026年9月5日