mcpField
T
tuzi-danger-gemini-web

tuzi-danger-gemini-web

github.com/tuziapiクリエイティブ・メディア39155 回インストール27 週間前に更新
リポジトリ

tuzi-danger-gemini-web について

Gemini Web API を通じてテキストと画像を生成するスキルです。コマンドラインで Gemini を使う用途向けで、参照画像や複数ターンの会話に対応し、セッションを保存できます。

主な機能

  1. 01テキストと画像の生成
  2. 02参照画像の入力
  3. 03複数ターンの会話
  4. 04Gemini モデルの選択
  5. 05JSON 出力

活用シーン

  1. 01プロンプトからテキストを生成
  2. 02参照画像を使った画像生成
  3. 03保存済みの複数ターン会話を継続

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/tuziapi/tuzi-skills --skill tuzi-danger-gemini-web

インストール後、Claude Code で/tuzi-danger-gemini-webを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

scripts/
main.ts
scripts/gemini-webapi/
client.ts
constants.ts
exceptions.ts
index.ts
scripts/gemini-webapi/components/
gem-mixin.ts
index.ts
scripts/gemini-webapi/types/
candidate.ts
gem.ts
grpc.ts
image.ts
index.ts
modeloutput.ts
scripts/gemini-webapi/utils/
cookie-file.ts
decorators.ts
get-access-token.ts
http.ts
index.ts
load-browser-cookies.ts
logger.ts
parsing.ts
paths.ts
rotate-1psidts.ts
upload-file.ts

詳細

Gemini Web クライアント

Gemini Web API を介したテキスト/画像生成に対応しています。参照画像と複数ターンの会話をサポートします。

スクリプトディレクトリ

重要:すべてのスクリプトは、このスキルの scripts/ サブディレクトリにあります。

エージェントの実行手順:

  1. この SKILL.md ファイルのディレクトリパスを SKILL_DIR として特定します
  2. スクリプトのパス = ${SKILL_DIR}/scripts/<script-name>.ts
  3. このドキュメント内の ${SKILL_DIR} をすべて実際のパスに置き換えます

スクリプト一覧:

スクリプト目的
scripts/main.tsテキスト/画像生成用の CLI エントリーポイント
scripts/gemini-webapi/*gemini_webapi の TypeScript 移植版(GeminiClient、型、ユーティリティ)

同意の確認(必須)

初回使用前に、リバースエンジニアリングされた API の使用についてユーザーの同意を確認してください。

同意ファイルの保存場所:

  • macOS:~/Library/Application Support/tuzi-skills/gemini-web/consent.json
  • Linux:~/.local/share/tuzi-skills/gemini-web/consent.json
  • Windows:%APPDATA%\tuzi-skills\gemini-web\consent.json

手順:

  1. accepted: true と disclaimerVersion: "1.0" を含む同意ファイルが存在するか確認します
  2. 有効な同意がある場合 → acceptedAt の日付を記載した警告を出力し、続行します
  3. 同意がない場合 → 免責事項を表示し、AskUserQuestion を通じてユーザーに確認します:
    • 「はい、同意します」→ ISO 形式のタイムスタンプを含む同意ファイルを作成し、続行します
    • 「いいえ、同意しません」→ 同意しない旨のメッセージを出力し、停止します
  4. 同意ファイルの形式:{"version":1,"accepted":true,"acceptedAt":"<ISO>","disclaimerVersion":"1.0"}

設定(EXTEND.md)

Bash を使用して EXTEND.md の存在を確認します(優先順):

# Check project-level first
test -f .tuzi-skills/tuzi-danger-gemini-web/EXTEND.md && echo "project"

# Then user-level (cross-platform: $HOME works on macOS/Linux/WSL)
test -f "$HOME/.tuzi-skills/tuzi-danger-gemini-web/EXTEND.md" && echo "user"

┌──────────────────────────────────────────────────────────┬───────────────────┐ │ パス │ 場所 │ ├──────────────────────────────────────────────────────────┼───────────────────┤ │ .tuzi-skills/tuzi-danger-gemini-web/EXTEND.md │ プロジェクトディレクトリ │ ├──────────────────────────────────────────────────────────┼───────────────────┤ │ $HOME/.tuzi-skills/tuzi-danger-gemini-web/EXTEND.md │ ユーザーホーム │ └──────────────────────────────────────────────────────────┴───────────────────┘

┌───────────┬───────────────────────────────────────────────────────────────────────────┐ │ 結果 │ アクション │ ├───────────────────────────────────────────────────────────────────────────────────────┤ │ 見つかった │ 読み込み、解析し、設定を適用する │ ├───────────────────────────────────────────────────────────────────────────────────────┤ │ 見つからない │ デフォルトを使用する │ └───────────┴───────────────────────────────────────────────────────────────────────────┘

EXTEND.md で設定可能:デフォルトモデル | プロキシ設定 | カスタムデータディレクトリ

使い方

# Text generation
npx -y bun ${SKILL_DIR}/scripts/main.ts "Your prompt"
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "Your prompt" --model gemini-3-flash

# Image generation
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cute cat" --image cat.png
npx -y bun ${SKILL_DIR}/scripts/main.ts --promptfiles system.md content.md --image out.png

# Vision input (reference images)
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "Describe this" --reference image.png
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "Create variation" --reference a.png --image out.png

# Multi-turn conversation
npx -y bun ${SKILL_DIR}/scripts/main.ts "Remember: 42" --sessionId session-abc
npx -y bun ${SKILL_DIR}/scripts/main.ts "What number?" --sessionId session-abc

# JSON output
npx -y bun ${SKILL_DIR}/scripts/main.ts "Hello" --json

オプション

オプション説明
--prompt, -pプロンプトのテキスト
--promptfilesファイルからプロンプトを読み込みます(連結)
--model, -mモデル:gemini-3-pro(デフォルト)、gemini-3-flash、gemini-3-flash-thinking、gemini-3.1-pro-preview
--image [path]画像を生成します(デフォルト:generated.png)
--reference, --refビジョン入力用の参照画像
--sessionId複数ターンの会話用セッション ID
--list-sessions保存済みセッションを一覧表示します
--jsonJSON 形式で出力します
--loginCookie を更新して終了します
--cookie-pathカスタム Cookie ファイルのパス
--profile-dirChrome プロファイルディレクトリ

モデル

モデル説明
gemini-3-proデフォルト、最新の 3.0 Pro
gemini-3-flash高速で軽量な 3.0 Flash
gemini-3-flash-thinking思考機能付き 3.0 Flash
gemini-3.1-pro-preview3.1 Pro プレビュー(空のヘッダー、自動ルーティング)

認証

初回起動時にブラウザーが開き、Google 認証が行われます。Cookie は自動的にキャッシュされます。

対応ブラウザー(自動検出):Chrome、Chrome Canary/Beta、Chromium、Edge。

強制更新:--login フラグを使用します。ブラウザーの指定:GEMINI_WEB_CHROME_PATH 環境変数を使用します。

環境変数

変数説明
GEMINI_WEB_DATA_DIRデータディレクトリ
GEMINI_WEB_COOKIE_PATHCookie ファイルのパス
GEMINI_WEB_CHROME_PROFILE_DIRChrome プロファイルディレクトリ
GEMINI_WEB_CHROME_PATHChrome 実行ファイルのパス
HTTP_PROXY, HTTPS_PROXYGoogle アクセス用のプロキシ(コマンドと合わせてインラインで設定)

セッション

セッションファイルは、データディレクトリ内の sessions/<id>.json に保存されます。

含まれる情報:id、metadata(Gemini のチャット状態)、messages 配列、タイムスタンプ。

拡張機能のサポート

EXTEND.md を使用してカスタム設定を行えます。パスと対応オプションについては、Preferences セクションを参照してください。

コメント