vibe-skill
Claude orchestrates. Vibe does the heavy lifting. You review the diff, save tokens, costs and avoid hitting limits!
A Claude Code skill that delegates coding tasks to Gemini CLI and supervises the result. Claude orchestrates. Gemini codes. You review the diff.
Claude orchestrates. Vibe does the heavy lifting. You review the diff, save tokens, costs and avoid hitting limits!
Claude orchestrates. OpenCode codes. You review the diff. A Claude Code skill that delegates coding tasks to OpenCode CLI and supervises the result โ the same pattern as vibe-skill and gemini-skill.
FAQ
gemini-skill is a Claude Code plugin with 1 hand-picked skill for development work, indexed on Flowy. Install it with the command on its page. It includes gemini-skill. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.
$ npx -y skills add pcx-wave/gemini-skill --agent claude-code
Repo: pcx-wave/gemini-skill
A Claude Code skill that delegates coding tasks to Gemini CLI and supervises the result.
Claude orchestrates. Gemini codes. You review the diff.
When you type /gemini <instruction> in Claude Code, this skill:
impl (writes files) or plan (read-only exploration)gemini-delegate โ a shell script that launches Gemini CLI in headless mode[read], [write], [plan-write], [WARN], [SYNTAX ERROR].py and .js files automatically~/.local/share/delegate-runs.jsonl (tokens, cost, duration, exit code)gemini --version)python3 available (for the streaming parser and syntax checks)node available (optional โ for JS syntax checks)git clone https://github.com/pcx-wave/gemini-skill.git && cd gemini-skill && mkdir -p ~/tools ~/.claude/skills/gemini && ln -sf "$(pwd)/tools/gemini-delegate" ~/tools/gemini-delegate && ln -sf "$(pwd)/tools/delegate-report" ~/tools/delegate-report && chmod +x ~/tools/gemini-delegate ~/tools/delegate-report && ln -sf "$(pwd)/SKILL.md" ~/.claude/skills/gemini/SKILL.md
# 1. Clone this repo
git clone https://github.com/pcx-wave/gemini-skill.git
cd gemini-skill
# 2. Install the scripts (symlinks โ stay in sync with git pull)
mkdir -p ~/tools
ln -sf "$(pwd)/tools/gemini-delegate" ~/tools/gemini-delegate
ln -sf "$(pwd)/tools/delegate-report" ~/tools/delegate-report
chmod +x ~/tools/gemini-delegate ~/tools/delegate-report
# 3. Install the skill for Claude Code
mkdir -p ~/.claude/skills/gemini
ln -sf "$(pwd)/SKILL.md" ~/.claude/skills/gemini/SKILL.md
# 4. (Optional) Enable auto-mode โ Claude delegates all code tasks automatically
# without requiring /gemini each time. Toggle with /geminion and /geminioff.
grep -q "gemini auto-mode" ~/.claude/CLAUDE.md 2>/dev/null || cat >> ~/.claude/CLAUDE.md << 'EOF'
# gemini auto-mode
At the start of every user request that involves writing, editing, or fixing code:
1. Run `test -f ~/.local/share/gemini-auto.flag` (silent, no output to user).
2. If the flag exists โ automatically invoke the `gemini` skill exactly as if the user had typed `/gemini <their full instruction>`. Do NOT ask first, do NOT explain โ just delegate.
3. If the flag is absent โ proceed normally.
The flag is toggled by `/geminion` and `/geminioff`.
EOF
# Check gemini is available
gemini --version
# Test the delegate script (plan mode โ no writes)
~/tools/gemini-delegate /tmp "Say hello in one sentence." 120 plan
# Should print: [gemini] Hello! ...
Because the install uses symlinks, a git pull is all you need:
cd ~/gemini-skill && git pull
~/tools/gemini-delegate and all skill files are automatically up to date โ no re-copy needed.
In a Claude Code session, just describe what you want:
/gemini add a dark mode toggle to the settings page
/gemini the login form is not validating the email field โ fix it
/gemini read the route structure in app.py and summarise it
Claude will decompose the task, choose the right mode, write the Gemini prompt, supervise execution, and report the diff.
| Mode | Flag | Writes files? | Use for |
|---|---|---|---|
impl | --yolo | Yes | Implementing changes (default) |
plan | --approval-mode plan | No | Safe exploration, read-only tasks |
In plan mode, any write Gemini proposes is shown as [plan-write] but never
executed โ useful for understanding a codebase before touching it.
Claude Code
โโ /gemini <instruction>
โโ SKILL.md logic
โโ ~/tools/gemini-delegate <workdir> <prompt> [timeout] [mode]
โโ writes prompt to temp file (avoids shell injection with UTF-8/emoji)
โโ selects --yolo (impl) or --approval-mode plan
โโ runs: gemini -p "$PROMPT" $APPROVAL_FLAG -o stream-json
โ โโ no pseudo-TTY needed (unlike Vibe)
โโ pipes stream-json events through Python parser
โ โโ handles: init / message / tool_call / tool_result / result
โ โโ prints [init] / [read] / [write] / [plan-write] / [gemini] / [WARN]
โโ reads real token counts from the stream-json result event
โโ runs syntax checks on modified .py and .js files (skipped in plan mode)
โโ prints git diff --stat (skipped in plan mode)
โโ appends JSON entry to ~/.local/share/delegate-runs.jsonl
Unlike Mistral Vibe, Gemini CLI works fine in a plain pipe โ no TTY check on startup.
This simplifies the script significantly compared to vibe-delegate.
Inline shell arguments break when the prompt contains Python dict syntax, emojis, accented characters, or multi-line code. Writing to a temp file avoids all shell injection issues.
--max-turns?Gemini CLI has no --max-turns flag. The timeout is the only runaway-control lever.
The 503 backoff on the free tier can silently consume 60โ90s before work begins โ
always budget for this in your timeout value.
Gemini's internal tool calls consume Gemini tokens, not Claude tokens. Claude only receives the compressed final output (~200โ800 tokens/run).
Approximate pricing (Gemini 2.5 Flash):
Note: Gemini CLI loads a large system prompt (~900โ10k tokens) before each task, so actual per-run cost is higher than token math alone suggests.
Free-tier caps (Google AI Studio):
Real token counts and cost are printed after every run and appended to the run log.
| Limitation | Detail |
|---|---|
No --max-turns | Timeout is the only runaway control |
| High context overhead | ~900โ10k tokens loaded before your task starts |
| 503 backoff | Free tier retries silently for 60โ90s |
| No agent selection | Single mode only โ use plan mode for read-only |
No --workdir flag | Script cds into workdir instead |
Edit ~/.claude/skills/gemini/SKILL.md:
plan for exploratory projectsEvery run appends one JSON entry to ~/.local/share/delegate-runs.jsonl.
The shared ~/tools/delegate-report script can query all runs across delegates.
~/tools/delegate-report # full report
~/tools/delegate-report --since 7 # last 7 days
~/tools/delegate-report --fails # failures only
All three write to the same delegate-runs.jsonl log, making runs comparable across delegates.
MIT
.gitignore examples/ anti-patterns.md good-prompts.md README.md SKILL.md tools/ delegate-report gemini-delegate
ยฉ 2026 Flowy ยท Free and open source
Built for Claude Code ยท Not affiliated with Anthropic