omega-gemini-cli

v2026.09.24

Use when the user wants to use Google Gemini for analysis, large files or codebases, sandbox execution, or brainstorming. Uses headless Gemini CLI scripts (no MCP). Triggers on "use Gemini", "analyze with Gemini", "large file", "sandbox", "brainstorm with Gemini".

GitHub
安装命令
npx skhub add oimiragieo/omega-gemini-cli
Markdown
SKILL.md

Gemini CLI Skill

Headless wrapper for Google Gemini CLI. Sends prompts via stdin to gemini -p "" --yolo. Free tier available — no API key required (Google OAuth only).

When to Use

  • Get a Google Gemini perspective on any question
  • Free-tier AI consultation (no API key costs)
  • Code review from Gemini's model
  • Brainstorming and analysis tasks
  • Cross-validation of Claude's own responses
  • Large files or codebases that benefit from Gemini's context window
  • Sandbox execution (run/test code via Gemini)

Response Times

Gemini CLI runs as a subprocess and includes model startup time:

  • Simple Q&A / news query: ~2 minutes
  • Codebase or large-file review: ~5–10 minutes

Set expectations with the user before running long tasks.

Usage

Ask a question

node .claude/skills/omega-gemini-cli/scripts/ask-gemini.mjs "What is the best caching strategy for a Node.js API?"

Specify model (short or long flag)

node .claude/skills/omega-gemini-cli/scripts/ask-gemini.mjs "Explain async/await" --model gemini-2.5-flash
node .claude/skills/omega-gemini-cli/scripts/ask-gemini.mjs "Explain async/await" -m gemini-2.5-flash

JSON output

node .claude/skills/omega-gemini-cli/scripts/ask-gemini.mjs "List 5 design patterns" --json
# Returns: {"response":"..."} on success, {"error":"...","raw":"..."} on parse failure

Code sandbox (short or long flag)

node .claude/skills/omega-gemini-cli/scripts/ask-gemini.mjs "Write and run a fibonacci function" --sandbox
node .claude/skills/omega-gemini-cli/scripts/ask-gemini.mjs "Write and run a fibonacci function" -s

Stdin usage

echo "Explain recursion" | node .claude/skills/omega-gemini-cli/scripts/ask-gemini.mjs

File review (embed content in prompt)

node .claude/skills/omega-gemini-cli/scripts/ask-gemini.mjs "Review this code: $(cat src/auth.ts)"

Availability Check

node .claude/skills/omega-gemini-cli/scripts/verify-setup.mjs
# Exit 0 = available (Node 18+ and Gemini CLI found)
# Exit 1 = not installed or too old

Scripts

ScriptPurpose
ask-gemini.mjsCore headless wrapper — sends prompt via stdin
parse-args.mjsArgument parser (--model/-m, --json, --sandbox/-s)
verify-setup.mjsAvailability check (Node 18+, Gemini CLI via PATH or npx)
format-output.mjsOutput normalization (JSON envelope handling)

Flags

FlagShortDescription
--model MODEL-mGemini model (e.g., gemini-2.5-flash, gemini-2.5-pro)
--jsonMachine-readable JSON output: {"response":"..."} envelope
--sandbox-sCode execution sandbox mode

Models (2026)

Model IDNotes
gemini-3-pro-previewLatest (2026), highest capability
gemini-3-flash-previewLatest (2026), faster
gemini-2.5-proStable, high capability
gemini-2.5-flashRecommended: lower quota/latency
gemini-2.5-flash-liteLightest, fastest, lowest quota usage

Exit Codes

CodeMeaning
0Success
1Error (CLI failure, auth issue, JSON parse failure with --json)
9009Windows: command not found (falls back to npx automatically)

Slash Commands (when installed in a project with .claude/commands/)

CommandPurpose
/analyzeRun headless script with user's prompt (and any @ file refs)
/sandboxRun with --sandbox; execute or test code
/omega-geminiAlias: run headless for analysis, sandbox, or brainstorm as appropriate
/brainstormBrainstorm mode (build prompt with challenge + optional methodology)
/omega-gemini-setupVerify Node and Gemini CLI; guide user to install and auth. No MCP.

Anti-Patterns & Iron Laws

  1. ALWAYS use verify-setup.mjs before first use
  2. NEVER pass prompt as positional arg to raw gemini CLI — use ask-gemini.mjs wrapper
  3. ALWAYS validate model parameter (wrapper validates via regex ^[a-zA-Z0-9._-]+$ on Windows)
  4. NEVER assume gemini is on PATH — wrapper handles npx @google/gemini-cli fallback automatically
  5. ALWAYS handle exit code 1 and 9009 gracefully
  6. ALWAYS set user expectations about response time before running (2–10 minutes typical)

Integration Notes

  • Auth: One-time Google OAuth via gemini interactive session (run gemini once to sign in)
  • Rate limits: Governed by Gemini API quotas (generous for personal use on free tier)
  • Platform: Full cross-platform; Windows uses shell: true with model validation; non-Windows uses array args (no shell)
  • npx fallback: On PATH miss, automatically retries with npx -y @google/gemini-cli
  • No timeout flag: Unlike other omega wrappers, gemini wrapper has no --timeout-ms
  • Stdin delivery: Prompt always sent via stdin to avoid shell argument length limits (8191-char cmd.exe limit on Windows, ARG_MAX on Linux/macOS)
  • JSON envelope: --json wraps output as {"response":"..."} on success or {"error":"...","raw":"..."} on failure

Requirements

  • Node.js 18+ to run the scripts
  • Google Gemini CLI (npm install -g @google/gemini-cli) with one-time Google sign-in

Memory Protocol

Before work: Read .claude/context/memory/learnings.md After work: Append findings to learnings or issues as needed.

Note: Use pnpm search:code to discover references to this skill codebase-wide.

发现
标签

此技能尚未发布标签。

版本
最新版本元数据

版本

v2026.09.24

发布时间

2026年9月24日

分类

未分类

许可证

未指定

源路径

.claude/skills/omega-gemini-cli

默认分支

main

最新提交

64b580e

Tree SHA

42a1df4