惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
小众软件
小众软件
博客园 - 司徒正美
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Jina AI
Jina AI
Hugging Face - Blog
Hugging Face - Blog
博客园 - Franky
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
量子位
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
雷峰网
雷峰网
云风的 BLOG
云风的 BLOG
M
MIT News - Artificial intelligence
F
Fortinet All Blogs
T
Tailwind CSS Blog
Martin Fowler
Martin Fowler
I
InfoQ
The GitHub Blog
The GitHub Blog
有赞技术团队
有赞技术团队
The Cloudflare Blog
罗磊的独立博客

Hacker News: Show HN

PurrrrrFocus: Pomodoro Timer App - App Store Workflow Engine — Multi-Step Orchestration for Bun RapidPhoto: Pro Photo Editor App - App Store GitHub - DheerG/swarms: Achieve extraordinary results with claude code across a variety of tasks SPICE simulation → oscilloscope → verification with Claude Code — Lucas Gerads Show HN: VCoding – A 5 MB native Windows IDE with no dynamic dependencies Show HN: LLMs don't hallucinate because they're bad at math, it's the format GitHub - Agent-FM/agentfm-core: AgentFM is a peer-to-peer network that turns everyday computers into a decentralized AI supercomputer. AgentFM lets you run massive AI workloads directly across a global mesh of idle CPUs and GPUs. Show HN: Tracking Top US Science Olympiad Alumni over Last 25 Years GitHub - Potarix/agent-hub: One place to talk to all your agents Show HN: Runtime security for AI agents(injection,tool abuse, data exfiltration) GitHub - dubeyKartikay/lazyspotify: Terminal Spotify client for macOS and Linux GitHub - the-banana-tool/king-louie: Easy to use GUI Personal AI Assistant. Win/Linux/Mac. Show HN I made my vacation rental bookable by AI agents–no Airbnb, 0% commission GitHub - basteez/jsf-autoreload: maven plugin to enable hot reload on jsf projects uvm32/hosts/host-gdbstub at main · ringtailsoftware/uvm32 GitHub - labsai/EDDI: Config-driven engine that turns JSON into production-grade AI agents. Multi-agent orchestration, 12+ LLM providers, MCP/A2A protocols, RAG, persistent memory, and enterprise compliance (EU AI Act, GDPR, HIPAA). Built on Quarkus. GitHub - glitchnsec/fortyone-oss: AI Executive Assistant Platform Quickstart | Alien GitHub - muxshed/shed: One stream in, or many. Every destination, simultaneously. No cloud middleman, no per-channel fees, no limits. GitHub - ocrbase-hq/ocrbase: 📄 PDF/IMG ->.MD/JSON Document OCR API for PaddleOCR and GLMOCR. Self-hostable. GitHub - impactjo/home-memory: MCP server that lets your AI assistant remember everything about your home. GitHub - Sets88/dbcls: DbCls is a powerful terminal database client that supports various databases GitHub - neptun2000/heor-agent-mcp GitHub - SeanFDZ/macmind: Single-layer transformer in HyperTalk for the classic Macintosh RollQuation: Math Puzzles - Apps on Google Play GitHub - dropbox/witchcraft Show HN: Agent-cache – Multi-tier LLM/tool/session caching for Valkey and Redis GitHub - opentalon/opentalon: OpenTalon is an open-source platform built from the ground up in Go as a robust alternative to OpenClaw LinkedIn™ 职位抓取工具 - Chrome 应用商店
GitHub - m-ghalib/gemini-plugin-cc: Gemini plugin for Cla...
morawr · 2026-04-22 · via Hacker News: Show HN

Use Gemini from inside Claude Code for code reviews or to delegate tasks to Gemini.

This plugin lets you delegate tasks, reviews, and adversarial reviews to Google's Gemini CLI (@google/gemini-cli@0.38.2) without leaving your Claude Code session. It wraps the Gemini CLI via the Agent-Client Protocol (ACP) -- JSON-RPC 2.0 over stdio -- so Claude and Gemini can work side by side on the same codebase.


What You Get

Six slash commands and a proactive subagent:

Command Purpose
/gemini:review Code review with structured findings
/gemini:adversarial-review Steerable adversarial review that challenges design choices
/gemini:rescue Delegate investigation, fix, diagnosis, research, or any substantial task to Gemini
/gemini:status Check active and recent Gemini jobs
/gemini:result View the stored output of a finished job
/gemini:cancel Cancel an active background job
/gemini:setup Verify readiness, check auth, toggle review gate

gemini-rescue subagent -- Claude Code can proactively delegate substantial tasks to Gemini through this subagent. It handles debugging, implementation, research, writing, analysis, brainstorming, explanation, or a second diagnosis pass as a thin forwarding wrapper around the Gemini companion runtime.


Requirements

  • Google account with Gemini CLI access, or a Gemini API key, or Vertex AI credentials
  • Node.js 18.18 or later
  • Gemini CLI (@google/gemini-cli@0.38.2) -- the setup command can install it for you

Install

/plugin marketplace add m-ghalib/gemini-plugin-cc
/plugin install gemini@gemini-plugin-cc
/reload-plugins
/gemini:setup

The /gemini:setup command checks whether the Gemini CLI is installed and authenticated. If the CLI is missing and npm is available, it offers to install it for you via npm install -g @google/gemini-cli@0.38.2.


Usage

/gemini:review

Reads your working-tree diff or branch diff and asks Gemini to review it. Returns structured findings covering correctness, regression risk, and code quality. Review-only -- never modifies code.

Flags: --base <ref> (explicit base branch), --scope auto|working-tree|branch, --wait (foreground), --background (detach).

If neither --wait nor --background is specified, Claude estimates the review size and recommends an execution mode.

/gemini:review
/gemini:review --base main
/gemini:review --scope branch --background

/gemini:adversarial-review

Same target selection as /gemini:review, but challenges the chosen implementation, design choices, tradeoffs, and assumptions. Not just a stricter pass over defects -- it asks whether the current approach is the right one and where the design could fail under real-world conditions.

Steerable: accepts focus text after flags to direct the review toward specific concerns.

Flags: same as /gemini:review.

/gemini:adversarial-review
/gemini:adversarial-review --base main challenge the error handling strategy
/gemini:adversarial-review challenge whether this retry logic handles all failure modes

/gemini:rescue

Delegates code investigation, fixes, or diagnosis to Gemini. For exploratory or diagnostic tasks, the plugin suggests that Gemini use its built-in codebase_investigator subagent before drafting a fix.

Flags:

Flag Description
--background Detach and run as a background job
--wait Run in the foreground (block until complete)
--resume Continue from the last Gemini thread in this repository
--fresh Start a new Gemini thread (ignore any prior session)
--model <alias> Choose a specific Gemini model (see model aliases below)
--effort low|medium|high Set Gemini's thinking level (accepted; pending upstream ACP support)
--plan Read-only planning run (Gemini proposes but does not execute)

Model aliases:

Alias Resolves to
pro gemini-3.1-pro-preview
pro-3 gemini-3.1-pro-preview
flash gemini-3-flash-preview
flash-lite gemini-3.1-flash-lite-preview
2.5-pro gemini-2.5-pro
2.5-flash gemini-2.5-flash
2.5-flash-lite gemini-2.5-flash-lite
auto auto-gemini-3
auto-2.5 auto-gemini-2.5

Concrete model IDs are also accepted (e.g., --model gemini-3-pro-preview).

Examples:

/gemini:rescue investigate why the auth middleware returns 403 for valid tokens
/gemini:rescue --background fix the flaky test in user-service
/gemini:rescue --plan trace the data flow from API to database for the orders endpoint
/gemini:rescue --model flash --effort high diagnose the memory leak in the worker pool

/gemini:status

Shows active and recent Gemini jobs for the current repository.

Flags:

Flag Description
--wait Poll until a job finishes; auto-resolves if one active job exists, otherwise pass a job ID
--timeout-ms <n> Maximum time to poll (used with --wait)
--all Include jobs from all sessions, not just the current one

Examples:

/gemini:status
/gemini:status --wait
/gemini:status --all

/gemini:result

Shows the stored output of a finished Gemini job. Preserves all details including the session ID (useful for --resume on follow-up commands).

Accepts an optional job ID. Defaults to the latest finished job.

Examples:

/gemini:result
/gemini:result abc123

/gemini:cancel

Cancels an active background Gemini job by sending an ACP cancel request to the running session.

Accepts an optional job ID. Defaults to the latest active job.

Examples:

/gemini:cancel
/gemini:cancel abc123

/gemini:setup

Checks Gemini CLI availability and authentication status. Reports the detected auth method (OAuth, API key, Vertex AI, gateway) and whether credentials are present locally. Use --verify to confirm credentials work end-to-end.

If the Gemini CLI is not installed and npm is available, offers to install it via npm install -g @google/gemini-cli.

Flags:

Flag Description
--verify Confirm credentials work end-to-end via ACP handshake (requires Gemini CLI)
--enable-review-gate Enable the stop-time review gate (Gemini reviews Claude's work before stopping)
--disable-review-gate Disable the stop-time review gate

The review gate is a Stop hook that blocks Claude from finishing until Gemini has reviewed the work. When the gate cannot reach Gemini (auth failure, network issue), it blocks and surfaces actionable guidance rather than silently allowing the stop. Disable with --disable-review-gate if the block is not resolvable in the current session.

Limitation: The gate receives Claude's last response text and the current repository state, not a per-turn diff. In multi-turn sessions with a dirty working tree, Gemini uses the response text to attribute changes to the most recent turn, but cannot perfectly distinguish this turn's edits from earlier ones.

Examples:

/gemini:setup
/gemini:setup --enable-review-gate
/gemini:setup --disable-review-gate

Typical Flows

Quick code review:

/gemini:review

Deep adversarial review of a feature branch:

/gemini:adversarial-review --base main challenge whether this retry logic handles all failure modes

Delegate a complex investigation:

/gemini:rescue --background investigate the N+1 query problem in the user dashboard
/gemini:status --wait
/gemini:result

Continue a prior Gemini thread:

/gemini:rescue --resume apply the top fix from your investigation

General-purpose delegation via rescue:

/gemini:rescue research the best rate limiting libraries for Node.js and recommend one

Gemini Integration

The plugin communicates with the Gemini CLI through the Agent-Client Protocol (ACP) -- a JSON-RPC 2.0-based protocol over stdio. The Gemini CLI is started with gemini --acp, which launches it in programmatic ACP mode rather than the interactive terminal UI. ACP supports session management, turn-based prompting, streaming updates, and session mode control.

Authentication

Configure your auth method in ~/.gemini/settings.json. Supported auth types:

Auth type Configuration
Google OAuth Run gemini interactively to complete OAuth flow, or set selectedType: "oauth-personal"
Gemini API key Set selectedType: "gemini-api-key" and GEMINI_API_KEY env var
Google API key Set selectedType: "google-api-key" and GOOGLE_API_KEY env var
Vertex AI Set selectedType: "vertex-ai", GOOGLE_CLOUD_PROJECT, and GOOGLE_CLOUD_LOCATION
AI Gateway Set selectedType: "gateway"

Shared ACP broker

The plugin starts a shared ACP broker session so multiple commands reuse a single Gemini process. The broker starts on the first command that needs it and runs for the duration of the Claude Code session. If the broker is busy or unavailable, the plugin falls back to a direct Gemini CLI process automatically.

Execution modes

  • Default (--yolo --sandbox) -- Gemini can read and write files within the repository worktree, scoped by Gemini CLI's built-in sandbox mode (filesystem access limited to the working tree).
  • Plan (--plan) -- Read-only. Gemini proposes changes but does not execute them.

Session persistence and timeouts

Task sessions are indexed in the plugin's state directory (outside the working tree), enabling the --resume flag to continue from a prior thread (up to 20 recent sessions are retained).

The default task turn timeout is 30 minutes. Override with GEMINI_TASK_TIMEOUT_MS:

export GEMINI_TASK_TIMEOUT_MS=3600000  # 60 minutes

Attribution

Note

This plugin is derived from and inspired by OpenAI's Codex plugin for Claude Code, licensed under the Apache License 2.0. The broker lifecycle, state management, job control, rendering, and arg parsing modules are forked from that codebase with identifiers adapted for Google's Gemini CLI integration. See the NOTICE file for full attribution details.


FAQ

Do I need a separate Google account? You need Gemini CLI access. Configure your auth method in ~/.gemini/settings.json. The setup command checks this for you.

Does the plugin run a separate process? Yes. The plugin starts the Gemini CLI as a local process communicating via ACP (JSON-RPC 2.0 over stdio). A shared broker session keeps one Gemini process alive across multiple commands.

What is ACP? The Agent-Client Protocol is a JSON-RPC 2.0-based protocol used by the Gemini CLI for programmatic interaction. It supports session management, turn-based prompting, streaming updates, and session mode control.

Can I use this alongside the Codex plugin? Yes. Both plugins use separate namespaces (/gemini:* and /codex:*) and independent runtimes. They do not interfere with each other.

What happens if Gemini is not authenticated? The plugin detects this and tells you to run /gemini:setup. You can also run gemini interactively in a terminal to complete the OAuth flow.

How does the review gate work? When enabled via /gemini:setup --enable-review-gate, a Stop hook fires every time Claude is about to finish. The hook triggers a Gemini review of Claude's changes, giving you an automatic second opinion. Disable it with /gemini:setup --disable-review-gate.

Can I control which Gemini model is used? Yes. Pass --model <alias> to /gemini:rescue. See the model aliases table above. If no model is specified, Gemini uses its default.

Warning

The default --yolo --sandbox mode allows Gemini to modify files in your repository. Make sure your work is committed or stashed before running rescue commands that may write to the worktree.


License

Apache License 2.0. See LICENSE.