google-gemini/ci
A specialized skill for Gemini CLI that provides high-performance, fail-fast monitoring of GitHub Actions workflows and automated local verification of CI failures. It handles run discovery automatically—simply provide the branch name.
npx skills add https://github.com/google-gemini/gemini-cli --skill ci
This skill enables the agent to efficiently monitor GitHub Actions, triage
failures, and bridge remote CI errors to local development. It defaults to
automatic replication of failures to streamline the fix cycle.
suggested test or lint commands locally upon failure.
on the current branch.
structured report.
replicate) - DEFAULTUse this as the primary path to monitor CI and automatically replicate
failures locally for immediate triage and fixing.
and immediately and automatically execute all suggested test or lint
commands (marked with 🚀) as soon as a failure is detected.
node .gemini/skills/ci/scripts/ci.mjs [branch]run for the branch. Do NOT manually search for run IDs.
proceed to analyze and fix the code.
status)Use this when you have pushed changes and need to monitor the CI and reproduce
any failures locally.
node .gemini/skills/ci/scripts/ci.mjs [branch] [run_id]run for the branch. You should NOT manually search for \run_id\ using \gh run list\
unless a specific historical run is requested. Simply provide the branch name.
npm test\ or \npm run lint\ commandsfrom the output (marked with 🚀).
exit with a structured report and provide the exact commands to run locally.
npm test -w <pkg> -- <path>command suggested.
npm run lint:all or the specific packagelint command.
tsc output or build logs to resolvecompilation issues.
gh run view --job <job_id> --log forinfrastructure or setup failures.
The underlying scripts automatically filter noise (Git logs, NPM warnings, stack
trace overhead). The agent should focus on the "Structured Failure Report"
provided by the tool.
Take google-gemini/ci from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.