mcpField
B
baoyu-danger-gemini-web

baoyu-danger-gemini-web

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

baoyu-danger-gemini-web について

baoyu-danger-gemini-webは、Gemini Web APIでテキストや画像を生成するコマンドラインスキルです。参照画像や複数ターンのセッションに対応し、ブラウザーでGoogle認証を行います。

主な機能

  1. 01テキストと画像の生成
  2. 02参照画像の入力
  3. 03複数ターンのセッションと一覧表示
  4. 04Geminiモデルの選択
  5. 05ブラウザー認証とCookieの保存

活用シーン

  1. 01Gemini Webでのテキスト生成
  2. 02プロンプトと参照画像による画像生成
  3. 03保存済みセッションでの会話継続
  4. 04Google認証Cookieの更新

インストール

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

$npx skills add https://github.com/xy121718/baoyu-skills --skill baoyu-danger-gemini-web

インストール後、Claude Code で/baoyu-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/baoyu-skills/gemini-web/consent.json
  • Linux: ~/.local/share/baoyu-skills/gemini-web/consent.json
  • Windows: %APPDATA%\baoyu-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 .baoyu-skills/baoyu-danger-gemini-web/EXTEND.md && echo "project"

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

┌──────────────────────────────────────────────────────────┬───────────────────┐ │ パス │ 場所 │ ├──────────────────────────────────────────────────────────┼───────────────────┤ │ .baoyu-skills/baoyu-danger-gemini-web/EXTEND.md │ プロジェクトディレクトリ │ ├──────────────────────────────────────────────────────────┼───────────────────┤ │ $HOME/.baoyu-skills/baoyu-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 セクションを参照してください。

コメント