baoyu-danger-gemini-web

baoyu-danger-gemini-web

熱門

透過逆向工程的 Gemini Web API 產生圖片與文字。支援文字生成、根據提示詞產生圖片、參考圖片進行視覺輸入,以及多輪對話。當其他技能需要圖片生成後端,或使用者要求「用 Gemini 產生圖片」、「Gemini 文字生成」,或需要具備視覺能力的 AI 生成時使用。

2.2萬星標
2606分支
更新於 2026/6/18
SKILL.md
readonlyread-only
name
baoyu-danger-gemini-web
description

透過逆向工程的 Gemini Web API 產生圖片與文字。支援文字生成、根據提示詞產生圖片、參考圖片進行視覺輸入,以及多輪對話。當其他技能需要圖片生成後端,或使用者要求「用 Gemini 產生圖片」、「Gemini 文字生成」,或需要具備視覺能力的 AI 生成時使用。

version
1.56.2

Gemini Web 客戶端

透過 Gemini Web API 進行文字/圖片生成。支援參考圖片與多輪對話。

使用者輸入工具

當此技能提示使用者時,請依下列工具選擇規則(優先順序):

  1. 優先使用目前代理執行環境提供的內建使用者輸入工具,例如 AskUserQuestionrequest_user_inputclarifyask_user 或任何等效工具。
  2. 備援:若無此類工具,則輸出編號的純文字訊息,要求使用者回覆每個問題的選擇編號/答案。
  3. 批次處理:若工具支援單次呼叫多個問題,則將所有適用問題合併為一次呼叫;若僅支援單一問題,則依優先順序逐一詢問。

以下具體的 AskUserQuestion 參考僅為範例 — 在其他執行環境中請替換為當地等效工具。

腳本目錄

重要:所有腳本位於此技能的 scripts/ 子目錄中。

代理執行指示

  1. 確定此 SKILL.md 檔案所在的目錄路徑為 {baseDir}
  2. 腳本路徑 = {baseDir}/scripts/<script-name>.ts
  3. 解析 ${BUN_X} 執行環境:若已安裝 bun → 使用 bun;若可用 npx → 使用 npx -y bun;否則建議安裝 bun
  4. 將本文中所有 {baseDir}${BUN_X} 替換為實際值

腳本參考

腳本 用途
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: truedisclaimerVersion: "1.0"
  2. 若有效同意存在 → 顯示包含 acceptedAt 日期的警告,繼續執行
  3. 若無同意 → 顯示免責聲明,透過 AskUserQuestion 詢問使用者:
    • 「是,我接受」→ 建立含 ISO 時間戳的同意檔案,繼續執行
    • 「不,我拒絕」→ 輸出拒絕訊息,停止執行
  4. 同意檔案格式:{"version":1,"accepted":true,"acceptedAt":"<ISO>","disclaimerVersion":"1.0"}

偏好設定(EXTEND.md

依優先順序檢查 EXTEND.md — 第一個找到的優先採用:

優先順序 路徑 範圍
1 .baoyu-skills/baoyu-danger-gemini-web/EXTEND.md 專案
2 ${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-danger-gemini-web/EXTEND.md XDG
3 $HOME/.baoyu-skills/baoyu-danger-gemini-web/EXTEND.md 使用者家目錄

若皆未找到,則使用預設值。

EXTEND.md 支援:預設模型、代理設定、自訂資料目錄。

使用方式

# 文字生成
${BUN_X} {baseDir}/scripts/main.ts "你的提示詞"
${BUN_X} {baseDir}/scripts/main.ts --prompt "你的提示詞" --model gemini-3-flash

# 圖片生成
${BUN_X} {baseDir}/scripts/main.ts --prompt "一隻可愛的貓" --image cat.png
${BUN_X} {baseDir}/scripts/main.ts --promptfiles system.md content.md --image out.png

# 視覺輸入(參考圖片)
${BUN_X} {baseDir}/scripts/main.ts --prompt "描述這個" --reference image.png
${BUN_X} {baseDir}/scripts/main.ts --prompt "產生變體" --reference a.png --image out.png

# 多輪對話
${BUN_X} {baseDir}/scripts/main.ts "記住:42" --sessionId session-abc
${BUN_X} {baseDir}/scripts/main.ts "什麼數字?" --sessionId session-abc

# JSON 輸出
${BUN_X} {baseDir}/scripts/main.ts "哈囉" --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 多輪對話的 Session ID
--list-sessions 列出已儲存的 Session
--json 以 JSON 格式輸出
--login 重新整理 Cookie 後結束
--cookie-path 自訂 Cookie 檔案路徑
--profile-dir Chrome 設定檔目錄

模型

模型 說明
gemini-3-pro 預設,最新的 3.0 Pro
gemini-3-flash 快速、輕量的 3.0 Flash
gemini-3-flash-thinking 具備思考能力的 3.0 Flash
gemini-3.1-pro-preview 3.1 Pro 預覽版(空標頭,自動路由)

驗證

首次執行會開啟瀏覽器進行 Google 驗證。Cookie 會自動快取。

當未設定明確的設定檔目錄時,Cookie 重新整理可能會重複使用已執行的本機 Chrome/Chromium 偵錯工作階段(該工作階段綁定標準的使用者資料目錄)。
設定 --profile-dirGEMINI_WEB_CHROME_PROFILE_DIR 可強制使用專用設定檔,並跳過現有工作階段的重複使用。
這是一種盡力而為的 CDP 工作階段重複使用路徑,並非 Chrome 官方文件中描述的基於 Chrome DevTools MCP 提示的 --autoConnect 流程。

支援的瀏覽器(自動偵測):Chrome、Chrome Canary/Beta、Chromium、Edge。

強制重新整理:使用 --login 旗標。覆寫瀏覽器:使用 GEMINI_WEB_CHROME_PATH 環境變數。

環境變數

變數 說明
GEMINI_WEB_DATA_DIR 資料目錄
GEMINI_WEB_COOKIE_PATH Cookie 檔案路徑
GEMINI_WEB_CHROME_PROFILE_DIR Chrome 設定檔目錄
GEMINI_WEB_CHROME_PATH Chrome 執行檔路徑
HTTP_PROXY, HTTPS_PROXY 用於存取 Google 的代理(可與指令內嵌設定)

Session

Session 檔案儲存在資料目錄下的 sessions/<id>.json

內容包含:idmetadata(Gemini 聊天狀態)、messages 陣列、時間戳記。

擴充支援

透過 EXTEND.md 進行自訂設定。請參閱偏好設定章節了解路徑與支援的選項。