Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
freestylefly avatar

Canghe Danger Gemini Web

  • 468 installs
  • 424 repo stars
  • Updated June 8, 2026
  • freestylefly/canghe-skills

canghe-danger-gemini-web is a canghe-skills integration that connects agent workflows to Gemini web text and image generation for developers who need vision input or browser-assisted tasks beyond API-only models.

About

canghe-danger-gemini-web is a canghe-skills integration that generates text and images through a reverse-engineered Gemini Web API when standard API access is insufficient. The skill ships scripts/main.ts as a Bun CLI entry point plus a TypeScript gemini-webapi client port, supporting text generation, image output, reference-image vision input, multi-turn sessions via --sessionId, and JSON responses with models such as gemini-2.5-pro. A required consent flow writes disclaimerVersion 1.0 acceptance to a platform-specific consent.json before first use. Developers reach for this skill when agent workflows need live page understanding, form interaction context, or image generation backends that other skills can call programmatically.

  • Connects agents to Gemini-oriented web automation patterns
  • Supports tasks that require live page context or interaction
  • Encodes caution around privileged or destructive browser actions
  • Useful for research, extraction, and semi-automated web ops

Canghe Danger Gemini Web by the numbers

  • 468 all-time installs (skills.sh)
  • Ranked #1,817 of 16,556 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Jul 31, 2026 (Skillselion catalog sync)
npx skills add https://github.com/freestylefly/canghe-skills --skill canghe-danger-gemini-web

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs468
repo stars424
Last updatedJune 8, 2026
Repositoryfreestylefly/canghe-skills

How do agents use Gemini web for images?

Wire agent workflows to Gemini web capabilities for live page understanding, form interaction, or browser-assisted tasks when API-only models are insufficient.

Who is it for?

Agent developers who need Gemini web text or image generation with reference-image vision and multi-turn sessions when the official API is unavailable or insufficient.

Skip if: Skip canghe-danger-gemini-web when production workloads require supported official Gemini API access with standard billing and SLA guarantees.

When should I use this skill?

User requests Gemini web image generation, vision reference input, multi-turn Gemini sessions, or an agent image-generation backend beyond API-only models.

What you get

Gemini web CLI outputs, generated image files, session-persisted multi-turn responses, and recorded consent.json acceptance.

  • generated text responses
  • image files
  • consent.json record

By the numbers

  • Consent file requires disclaimerVersion 1.0 acceptance
  • CLI supports gemini-2.5-pro and other named models
  • Bundles scripts/main.ts plus gemini-webapi TypeScript client

Files

SKILL.mdMarkdownGitHub ↗

Gemini Web Client

Text/image generation via Gemini Web API. Supports reference images and multi-turn conversations.

Script Directory

Important: All scripts are located in the scripts/ subdirectory of this skill.

Agent Execution Instructions: 1. Determine this SKILL.md file's directory path as SKILL_DIR 2. Script path = ${SKILL_DIR}/scripts/<script-name>.ts 3. Replace all ${SKILL_DIR} in this document with the actual path

Script Reference:

ScriptPurpose
scripts/main.tsCLI entry point for text/image generation
scripts/gemini-webapi/*TypeScript port of gemini_webapi (GeminiClient, types, utils)

Consent Check (REQUIRED)

Before first use, verify user consent for reverse-engineered API usage.

Consent file locations:

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

Flow: 1. Check if consent file exists with accepted: true and disclaimerVersion: "1.0" 2. If valid consent exists → print warning with acceptedAt date, proceed 3. If no consent → show disclaimer, ask user via AskUserQuestion:

  • "Yes, I accept" → create consent file with ISO timestamp, proceed
  • "No, I decline" → output decline message, stop

4. Consent file format: {"version":1,"accepted":true,"acceptedAt":"<ISO>","disclaimerVersion":"1.0"}

---

Preferences (EXTEND.md)

Use Bash to check EXTEND.md existence (priority order):

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

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

┌──────────────────────────────────────────────────────────┬───────────────────┐ │ Path │ Location │ ├──────────────────────────────────────────────────────────┼───────────────────┤ │ .canghe-skills/canghe-danger-gemini-web/EXTEND.md │ Project directory │ ├──────────────────────────────────────────────────────────┼───────────────────┤ │ $HOME/.canghe-skills/canghe-danger-gemini-web/EXTEND.md │ User home │ └──────────────────────────────────────────────────────────┴───────────────────┘

┌───────────┬───────────────────────────────────────────────────────────────────────────┐ │ Result │ Action │ ├───────────┼───────────────────────────────────────────────────────────────────────────┤ │ Found │ Read, parse, apply settings │ ├───────────┼───────────────────────────────────────────────────────────────────────────┤ │ Not found │ Use defaults │ └───────────┴───────────────────────────────────────────────────────────────────────────┘

EXTEND.md Supports: Default model | Proxy settings | Custom data directory

Usage

# 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-2.5-pro

# 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

Options

OptionDescription
--prompt, -pPrompt text
--promptfilesRead prompt from files (concatenated)
--model, -mModel: gemini-3-pro (default), gemini-2.5-pro, gemini-2.5-flash
--image [path]Generate image (default: generated.png)
--reference, --refReference images for vision input
--sessionIdSession ID for multi-turn conversation
--list-sessionsList saved sessions
--jsonOutput as JSON
--loginRefresh cookies, then exit
--cookie-pathCustom cookie file path
--profile-dirChrome profile directory

Models

ModelDescription
gemini-3-proDefault, latest
gemini-2.5-proPrevious pro
gemini-2.5-flashFast, lightweight

Authentication

First run opens browser for Google auth. Cookies cached automatically.

Supported browsers (auto-detected): Chrome, Chrome Canary/Beta, Chromium, Edge.

Force refresh: --login flag. Override browser: GEMINI_WEB_CHROME_PATH env var.

Environment Variables

VariableDescription
GEMINI_WEB_DATA_DIRData directory
GEMINI_WEB_COOKIE_PATHCookie file path
GEMINI_WEB_CHROME_PROFILE_DIRChrome profile directory
GEMINI_WEB_CHROME_PATHChrome executable path
HTTP_PROXY, HTTPS_PROXYProxy for Google access (set inline with command)

Sessions

Session files stored in data directory under sessions/<id>.json.

Contains: id, metadata (Gemini chat state), messages array, timestamps.

Extension Support

Custom configurations via EXTEND.md. See Preferences section for paths and supported options.

Related skills

How it compares

Pick canghe-danger-gemini-web over official Gemini API skills only when web-session capabilities like reference-image vision are required and consent for reverse-engineered access is acceptable.

FAQ

What scripts ship with canghe-danger-gemini-web?

canghe-danger-gemini-web ships scripts/main.ts as the CLI entry point and a scripts/gemini-webapi TypeScript client port. Agents invoke generation with npx -y bun against the skill directory path for text, image, vision, and JSON modes.

Why does canghe-danger-gemini-web require consent?

canghe-danger-gemini-web requires user consent before first use because it calls a reverse-engineered Gemini Web API. The skill writes consent.json with disclaimerVersion 1.0 and an ISO acceptedAt timestamp to a platform-specific canghe-skills directory.

AI & Agent Buildingllmautomationresearch

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.