agentsclimarketplace

Gemini

Skill zachmayer/skills/.claude/skills/gemini

Sends a prompt to Google's Antigravity CLI (`agy`) as a background sub-agent for a fast outside read. Use when the user says "ask Gemini", "ask Google", "antigravity", "what would Gemini say", "Gemini second opinion", "quick check from Gemini", or wants a fast smart sanity check or broad survey. Do NOT use for tasks Claude can answer directly, or on claude.ai — it needs the local `agy` CLI.From its SKILL.md

Install
npx -y skills add zachmayer/skills --skill gemini

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

6.8 KB, as published. Nobody here has run it

Verify installed

Run agy help once per session — it confirms install and is the authoritative current CLI surface (the CLI is small and changes; this skill may lag). If agy: command not found, send the user to https://antigravity.google/product/antigravity-cli and stop.

Liveness probe (run before a panel or long job — a paid-tier check, since free-tier quota silently returns empty):

agy --print-timeout 60s --model "Gemini 3.7 Flash (High)" --print "Reply with exactly: AGY-OK" 2>&1 | tail -1
grep -h applyAuthResult ~/.gemini/antigravity-cli/log/*.log 2>/dev/null | tail -1   # account + authMethod

Preferences

  • model: Gemini 3.7 Flash (High) — this skill owns the Gemini model name; a unit test (test_model_names.py) keeps every mention in this file identical, so bump them all together

Pass --model "Gemini 3.7 Flash (High)" on every call. Thinking level is part of the model name, in parentheses — there is no separate effort flag to pass. agy advertises a --effort flag in agy help, but it is rejected for the Flash models (--effort is not supported for model "..."), so leave it off.

Model names must match agy's list exactly, parenthesized level included; a bare --model "Gemini 3.7 Flash" is rejected as unrecognized. To see the current list, pass a junk model and read the error: agy --model x --print hi 2>&1 | head -20.

Always background

Gemini Flash typically responds in seconds to a couple of minutes. Set run_in_background: true on Bash. Set --print-timeout 30m as a generous ceiling — agy exits as soon as the model finishes, so this is a kill-after-this safety net, not a literal wait.

Send a prompt from a file

ts=$(date +%Y%m%d_%H%M%S)_$$
prompt=~/claude/scratch/prompt_gemini_${ts}.md
out=~/claude/scratch/output_gemini_${ts}.txt
# Write your prompt into $prompt (Write tool), then:
agy --print-timeout 30m --model "Gemini 3.7 Flash (High)" --add-dir "$HOME/claude/scratch" --print "Read your task at $HOME/claude/scratch/prompt_gemini_${ts}.md and respond." > "$out" 2>&1

agy --print takes the prompt as a CLI argument — point at the file via --add-dir and let agy's workspace tools read it, rather than shell-expanding the file's content into argv. Mount the repo too if the question is repo-aware.

Read-only by default

Headless --print cannot show permission prompts, so any tool that needs one — write_file, terminal commands, non-workspace access — is soft-denied, with a notice naming the allow-rule that would permit it (verified: the write fails even inside a trusted workspace; trust gates loading workspace hooks/skills, not headless writes). Reads of --add-dir workspaces and web lookups run without prompts. This is the right default for advisory calls: the response arrives on stdout and the shell redirect (> "$out") writes the file — the agent never needs write access, so don't ask it to save its answer anywhere.

One aside, for the rare call that truly must write: add an allow-rule under permissions.allow in ~/.gemini/antigravity-cli/settings.json — run the call once and copy the exact rule the soft-deny notice names (write_file(<target>) / command(<cmd>)), scoped to the target directory, never a tree another agent is editing. --dangerously-skip-permissions auto-approves everything; Claude Code's auto-mode classifier blocks that flag — use the scoped rule or hand the command to the human user.

Strengths and weaknesses

Search is the edge. Gemini is the only agent on this roster with Google Search behind it — for find-it work (breaking news, obscure or freshly published pages, primary sources, forum/Reddit threads the other indexes miss), it surfaces things codex and claude don't. Reach for it when the task is fundamentally retrieval: search-heavy research legs, "find the settlement source", "what changed in the last 48 hours".

For reasoning per dollar — analysis, review, math, tight logic chains — fable, opus, sol, and luna dominate; don't route judgment work here. Panels are the exception: cross-model diversity is the point, and gemini's independent read (and independent index) is load-bearing there. Fast and cheap; handles large context dumps fine.

Troubleshooting

  • Probe returns empty, or the log shows authMethod=consumer on a Workspace account — the free Starter tier or the wrong Google identity (free-tier quota silently returns empty). Fix: /logout in agy, re-login as the personal account, and confirm the banner reads a paid tier (e.g. "Google AI Pro"), not "Antigravity Starter Quota".
  • RESOURCE_EXHAUSTED (code 429): Individual quota reached — Google account daily/weekly quota hit. The log includes a reset window (typically 24h–7d). Fall back to codex/claude or wait. Output file is empty if this hits.
  • agy hangs with no output after an invalid tool call — Gemini's planner sometimes emits a malformed tool call (e.g. StartLine (101) must be less than or equal to EndLine (0)); agy fails to surface it and zombies with periodic loadCodeAssist heartbeats but no progress. Output file stays empty. Kill the process and retry with a simpler/shorter prompt, or fall back to codex/claude.
  • invalid model selection (... --effort "high"): --effort is not supported for model "..." — you passed --effort. Drop it; the thinking level lives inside the model name's parentheses.
  • model ... is not recognized as a known model or custom model in settings — the name must match agy's list exactly, including the parenthesized level. The error prints the full list; copy a line from it verbatim.
  • "What model am I talking to?" returns an unexpected model — you omitted --model, so the run inherited whatever the TUI's Model Selection picker last persisted. Pass --model explicitly on every call.
  • flag needs an argument: -print — --print requires an inline argument; use the --add-dir + "Read your task at ..." pattern above.
  • jetski: no output produced — a tool required the "write_file" (or "command") permission — the prompt led agy to a denied tool, and it produced nothing else. For write_file: reframe so the answer comes back on stdout (you redirect it). For command: tell it to use its file-read tool, not terminal commands. Or grant a scoped permissions.allow rule (see Read-only by default).

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.