plugins/python-backend/skills/gemini-cli/SKILL.md
This skill should be used when invoking the Gemini CLI for code review, plan review, or any prompt-based task. It provides correct invocation patterns emphasizing stdin piping and @ syntax over shell variable gymnastics.
npx skillsauth add rbozydar/rbw-claude-code gemini-cliInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Ensure clean, readable Gemini CLI invocations without shell gymnastics.
Always pipe content via stdin or use @ syntax. Never use heredocs or shell variable assignment.
# CORRECT - Clean stdin pipe
cat file.md | gemini --sandbox -o text "Review this for issues"
# CORRECT - @ syntax for file references
gemini --sandbox -o text "Review this code" @src/module.py
# WRONG - Shell gymnastics
CONTENT=$(cat file.md)
gemini --sandbox "Review: $CONTENT"
# Pipe content via stdin
<content-source> | gemini [options] "prompt"
# Reference files/folders directly
gemini [options] "prompt" @file.py @folder/
| Option | Purpose |
|--------|---------|
| --sandbox or -s | Required -- prevents code modifications |
| -o text | Plain text output (required for parsing) |
| -m MODEL | Model selection |
| Model | Use Case |
|-------|----------|
| gemini-3-pro-preview | Default, best quality |
| gemini-3-flash-preview | Faster, cheaper |
# Single file
gemini --sandbox -o text "Review this code" @src/module.py
# Multiple files
gemini --sandbox -o text "Check consistency" @src/models.py @src/views.py
# Entire folder
gemini --sandbox -o text "Review this module" @src/auth/
# Mix files and folders
gemini --sandbox -o text "Review the API" @src/api/ @tests/test_api.py
# Unstaged changes
git diff | gemini --sandbox -o text "Review this diff for bugs and security issues"
# Staged changes
git diff --cached | gemini --sandbox -o text "Review these staged changes"
# Branch vs main
git diff main...HEAD | gemini --sandbox -o text "Review all changes on this branch"
git diff | gemini --sandbox -o text "Review this diff focusing on:
1. SQL injection vulnerabilities
2. Missing error handling
3. Performance issues"
-p Flag# WRONG - deprecated
gemini -p "prompt" --sandbox
# CORRECT - positional prompt
gemini --sandbox "prompt"
# WRONG
DIFF=$(git diff)
gemini --sandbox "$DIFF"
# CORRECT
git diff | gemini --sandbox -o text "Review"
# WRONG - no sandbox
gemini "Review this code"
# CORRECT
gemini --sandbox "Review this code"
When invoking gemini from Claude Code agents:
@ syntax--sandbox-o text for parseable outputgit diff --cached | gemini --sandbox -o text -m gemini-3-pro-preview \
"Review this diff for bugs, security vulnerabilities, and performance issues.
Provide specific file:line references."
The error "No input provided via stdin" indicates missing piped content. When using stdin mode, always pipe content before the gemini command. When referencing files directly, use @ syntax instead.
For large files, review specific sections or use the flash model:
head -500 large-file.py | gemini --sandbox -o text "Review this code section"
| Task | Command |
|------|---------|
| Review plan | gemini --sandbox -o text "Review for issues" @plan.md |
| Review file | gemini --sandbox -o text "Check security" @file.py |
| Review folder | gemini --sandbox -o text "Review module" @src/auth/ |
| Review unstaged diff | git diff \| gemini --sandbox -o text "Review for bugs" |
| Review staged diff | git diff --cached \| gemini --sandbox -o text "Review" |
| Review branch | git diff main...HEAD \| gemini --sandbox -o text "Review" |
development
This skill should be loaded when writing, reviewing, or refactoring Python code to apply strict coding standards directly in the current context without spawning a subagent. It provides comprehensive Python development standards covering SOLID principles, asyncio patterns, type hints, testing, and production-quality code.
development
Use this skill when writing, reviewing, or debugging Quickshell configurations (QML files for desktop shell UI on Wayland/Hyprland). Triggers on: QML files with Quickshell imports, shell.qml entry points, PanelWindow or FloatingWindow usage, Quickshell service integration (PipeWire, MPRIS, notifications, Hyprland IPC), Wayland layer-shell or session-lock code, custom bar/panel/widget/dock/OSD/lockscreen/launcher development, or any question about building a desktop shell with Quickshell on Hyprland.
development
This skill should be used when thorough, multi-perspective research with citations is needed. It performs comprehensive research using a diffusion research loop with domain specialization, supporting general web research and specialized domains (geopolitical with GDELT). Auto-detects domain from query or accepts an explicit --domain flag.
testing
Generate or improve a company-specific data analysis skill by extracting tribal knowledge from analysts. BOOTSTRAP MODE - Triggers: "Create a data context skill", "Set up data analysis for our warehouse", "Help me create a skill for our database", "Generate a data skill for [company]" → Discovers schemas, asks key questions, generates initial skill with reference files ITERATION MODE - Triggers: "Add context about [domain]", "The skill needs more info about [topic]", "Update the data skill with [metrics/tables/terminology]", "Improve the [domain] reference" → Loads existing skill, asks targeted questions, appends/updates reference files Use when data analysts want Claude to understand their company's specific data warehouse, terminology, metrics definitions, and common query patterns.