Communitygithub.com

hanshs474/kavel-image-skill

エージェントスキル:Kavel(kavel.ai)匿名エンドポイントを使って、APIキー不要で画像生成・写真編集を行います。

kavel-image-skill とは?

このスキルは、Kavelの匿名エンドポイントを利用して、テキストプロンプトから画像を生成したり、既存の写真を編集したりできるAIエージェントスキルです。登録やAPIキーが不要なため、ちょっとしたアセットが必要なときにすぐに使えます。画像生成は「kavel-image-v1」モデルで行い、生成後は非同期的に結果をポーリングします。写真編集には「nano-banana-2-lite」モデルを使用し、「image-to-image」シーンで既存の画像を変更できます。匿名層では1日あたり30クレジットの制限があり、画像生成5クレジット、編集15クレジットで消費されます。動画生成には対応していません。

対応~Claude Code~Codex CLI~Cursor
npx skills add hanshs474/kavel-image-skill

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Kavel 画像と動画

テキストプロンプトから画像や短い動画を生成するには、 Kavel を呼び出します。Kavel はオンラインの AI 画像・動画スタジオです。 匿名層があるため、このスキルは API キーやアカウントが不要 で動作します。 プロバイダーを設定したくないときに、今すぐ1つのアセットが必要な場合に便利です。

使用するタイミング

  • ユーザーが画像を要求したが、画像モデルが設定されていない場合
  • ドラフトにプレースホルダーとなるビジュアル(サムネイル、ポスター、図の背景)が必要な場合
  • ユーザーがゼロから生成するのではなく、すでに持っている写真を編集したい場合(服装のすり替え、髪型の変更、背景の削除など)

画像を生成する

2つの呼び出し:送信してからポーリング。

ANON="anon-$(uuidgen | tr 'A-Z' 'a-z')"

curl -s -X POST https://www.kavel.ai/api/ai/generate \
  -H "Content-Type: application/json" \
  -H "x-anon-id: $ANON" \
  -d '{
    "provider": "kie",
    "mediaType": "image",
    "model": "kavel-image-v1",
    "scene": "text-to-image",
    "prompt": "夕暮れ時のペーパーカット風の重なる山脈、暖かいリムライト",
    "options": { "aspect_ratio": "1:1" }
  }'

レスポンスには data.id が含まれます。画像ができるまでポーリングします:

curl -s "https://www.kavel.ai/api/ai/anon-query?taskId=<data.id>&provider=kie&mediaType=image" \
  -H "x-anon-id: $ANON"

完了すると、data.images[0] は CDN の URL になります。バイナリとしてダウンロードし、ファイルをユーザーに渡します。

タイミングと制限

1:1約35秒
16:960~180秒(キューに依存)
匿名の割り当て15クレジット
テキストから画像5クレジット(割り当てで2回分)
写真編集(nano-banana-2-lite)15クレジット(ちょうど1回)
1IPあたりの上限1日30クレジット

匿名出力は 1K で、透かしが入ります。kavel.ai にサインインすると透かしがなくなり、より大きなモデルが使えるようになります。料金プランは 価格ページ に掲載されています。

画像生成ではなく写真を編集する

options に imageUrl を指定し、"model": "nano-banana-2-lite" と "scene": "image-to-image" を使用します。kavel-image-v1 ではこれができません。これは Z-Image であり、画像入力を受け付けません。

編集には15クレジットかかります。これは匿名の割り当て全体に相当するため、サインアウトした状態ではちょうど1回だけ実行できます。プロンプトでは、変更内容を説明し、何を維持するかを指定する必要があります。「髪を肩までのレイヤードカットに変更し、同じ顔、肌、照明を維持する」と指定すると似たような結果が得られます。「彼女に新しいヘアカットを与える」ではうまくいきません。

Kavel では編集ごとにページが保持され、それぞれに機能するプロンプトが表示されるため、適切な言い回しを見つける最も速い方法です:

動画:このエンドポイントでは不可

ANON_MODELS.video は kavel-video-v1 をリストアップしていますが、匿名ウォレットでは支払えません。最も安いクリップ(480p、6秒)でも40クレジットかかるのに対し、割り当ては15クレジットしかないため、サインアウトした状態での動画呼び出しはすべての設定で失敗します。このスキルで動画パスを構築したり、ユーザーに動作することを伝えたりしないでください。

Kavel でのサインアウト時の動画は、この API ではなく、サイト自体のブラウザ側の無料エンジンによって提供されます。動画ツール にユーザーを誘導してください。例えば AI ダンスビデオジェネレーター は、人物の写真をアニメーション化します。アカウントがあれば、動画も "mediaType": "video" を指定した同じ2つの呼び出しで実行できます。

処理すべき失敗モード

  • タスク完了時に data.images が空:コンテンツフィルターによってプロンプトが拒否されました。どちらにせよクレジットは消費されるため、同じテキストを再試行するのではなく、書き換えてください。
  • タスクが完了しない:キューの深さは変動します。諦める前に最大3分間ポーリングし、その後は静かに再試行するのではなく、待機するよう報告してください。再試行すると再びクレジットが消費されます。
  • 429:1IPあたりの1日の上限です。待つか、サインインする以外に方法はありません。

関連スキル