Github Actions Efficiency
GitHubOfficialFirst committed by mutl3yDistributed by GitHub
- Skill
- Workflow
- Software development
- MIT
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides a structured approach to auditing GitHub Actions configurations. It helps identify inefficiencies such as missing dependency caches, redundant workflow runs, and overly broad triggers. By following a systematic audit process, users can implement targeted optimizations that lower CI minutes and improve developer feedback loops while maintaining necessary validation guardrails.
What it does
- Analyzes existing GitHub Actions workflows for common efficiency bottlenecks.
- Provides actionable recommendations for caching, concurrency, and trigger scoping.
- Offers patterns for implementing job-level gating and matrix reduction.
- Guides the user through a verification process to ensure optimizations work as expected.
- Helps establish baseline CI configurations for new repositories.
When to use it
- When CI costs or runner minutes are higher than expected.
- When workflows are slow or frequently redundant.
- When setting up a new repository and wanting to define efficient CI defaults.
- When needing to implement advanced features like path-based triggers or concurrency cancellation.
Advantages
- Reduces total CI runner time and associated costs.
- Improves developer productivity by shortening feedback loops.
- Ensures critical validation checks remain intact during optimization.
- Provides a clear, evidence-based path for workflow improvements.
Usage examples
- “My GitHub Actions CI is taking too long and costing too much. How can I optimize it?”
- The agent will audit your .github/workflows directory, identify high-cost jobs, and suggest specific fixes like adding dependency caching or concurrency cancellation.
- “How do I stop my CI from running on every single documentation change?”
- The agent will guide you through implementing path-based triggers or job-level gating to ensure workflows only run when relevant files are modified.
Install
Download the skill as a ZIP:
https://mp-staging.autogineer.com/agent-skills/github/github-actions-efficiency/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip github-actions-efficiency.zip -d .agents/skills
Documentation by mutl3y
GitHub Actions Efficiency
Use this skill as a lean entrypoint for GitHub Actions efficiency work. Inspect the repo, identify the waste source, and load only the reference material needed for the current task.
If no workflows exist yet, load references/actions.md and define a baseline before proceeding with the steps below.
If shell or gh CLI access is unavailable: ask the user to paste .github/workflows/ contents and gh run list --limit 10 output. If only partial files are provided, note it: "Audit based on provided files only; some insights may be incomplete." Begin responses from files alone with: "Static-only analysis (not confirmed with live runs)."
Use This Skill When
The user wants to reduce GitHub Actions runtime, CI cost, or wasted workflow runs.
The repo has existing workflows in
.github/workflows/or explicit GitHub Actions configuration questions.The user asks for caching, concurrency, path filters, matrix reduction, job optimization, or workflow-specific fixes.
The user needs help creating a new GitHub Actions workflow or CI baseline from scratch.
Load Only What You Need
references/actions.md— audits, job gating, matrix reduction, live validation, and workflow-specific fixes.references/reporting.md— when the user asks for a before/after efficiency report.references/patterns.md— full YAML examples when inline audit commands are not enough.
Core Workflow
1. Measure first
rg -n "on:|concurrency:|paths:|paths-ignore:|strategy:|matrix:|cache:" .github/workflows
gh run list --limit 10
run_id=$(gh run list --limit 1 --json databaseId --jq '.[0].databaseId')
gh run view "$run_id" --log-failedLook for: missing dependency caches, missing concurrency cancellation, over-broad triggers, duplicate workflow coverage, and expensive jobs that run on every change regardless of scope.
2. Apply guardrails
Check each proposed fix against these rules before recommending it:
Does not hide required validation — drop any fix that removes release, schema, migration, or shared-library checks.
Does not reduce parallelism without justification — drop unless the user prioritised cost over latency and the new critical path stays within 1.25× the original.
Preserves only documented matrix legs — drop matrix legs with no explicit version or platform commitment.
Write-back jobs use opt-in triggers — flag (do not drop) formatter or bot jobs that run automatically; recommend an opt-in trigger instead.
Repo changes stay separate from org settings — split any fix that mixes repo-editable YAML with org-level or GitHub-account settings into two distinct recommendations.
3. Select the top 3 fixes
From the six candidates below, keep only those supported by audit evidence from step 1 and passing all guardrails from step 2. Rank survivors by estimated daily CI minutes saved (per-run savings × runs per day). Select all candidates that meet both criteria, up to a maximum of 3.
Add dependency caching with lockfile-based keys
Add or correct
concurrencycancellationRemove duplicate workflow coverage before merging jobs
Narrow workflow or job triggers safely
Reduce matrix breadth to match risk and event type
Parallelize independent jobs on the critical path
4. Verify
If
ghCLI access is available, validate path-gating and concurrency cancellation with a live test push on a non-protected branch.If live validation is not possible, state that explicitly in the output.
Treat unexpected live behavior as a real bug even when the YAML looks correct.
Required Output
Waste sources — top cost or latency drivers found in step 1
Proposed fixes — top 3 (or all remaining) with supporting audit evidence
Validation — what was proven live, what was checked locally only, and any remaining risk
Impact — expected savings vs. measured savings; separate PR wall-clock time from total runner time
References
references/review-rubric.md— load when reviewing completed efficiency work
Files
- ATTRIBUTION.mdAdded by AutoGineer879 B
- LICENSELicence file added by AutoGineer1.0 KiB
- SKILL.md4.5 KiB
- references/actions.md3.1 KiB
- references/patterns.md1.3 KiB
- references/reporting.md1.5 KiB
- references/review-rubric.md465 B
references/actions.md
GitHub Actions Efficiency
Load this reference only when the task involves GitHub Actions or CI workflow efficiency.
If the repo is onboarding GitHub Actions for the first time, define a minimal baseline workflow first, then optimize using the rest of this guide.
Audit Order
Inspect in this order:
If
.github/workflows/is missing or empty, gather baseline requirements first: triggering events, required checks, runtime versions, and repository-specific validation policy..github/workflows/*.ymlDocs describing CI expectations
Existing reports or run history if the user wants measured impact
For new setups, start with a small workflow that proves core checks, then add matrix breadth or additional jobs only when needed.
Start with common, low-risk waste:
Missing dependency caches
Missing
concurrencycancellationOver-broad workflow triggers
Duplicate workflow coverage across files or jobs
Expensive jobs that run on every change regardless of scope
Actions-Specific Guidance
Trigger scoping
Use
pathsorpaths-ignorewhen whole workflows truly should not run for some file classes.Use job-level gating when event-level filters are too coarse.
Prefer explicit changed-file detection when reliability matters more than clever filter expressions.
Job shaping
Do not merge jobs blindly. If separate jobs preserve parallelism and shorten the critical path, keep them separate.
Keep lightweight coordination or change-detection jobs separate from heavy execution jobs when that makes skip behavior obvious.
If a workflow-only change still runs the full suite, treat that as evidence the gating model is too broad.
Matrix reduction
Match matrix breadth to the decision being made:
Full matrix for releases or explicit compatibility validation
Reduced compatibility matrix for runtime, plugin, packaging, or framework-integration changes
Single representative latest-version leg for ordinary code changes
No heavy test job for clearly non-runtime changes when lighter protection already exists
Optional maintenance jobs
Formatting or autofix jobs that write back to a branch are often better as opt-in jobs.
Good triggers:
PR label such as
ci:formatManual dispatch
Explicit comment-command flow if the repo already supports it
If you use a label trigger, remember to listen for PR labeled and usually unlabeled events or the label change will not reevaluate the job.
Safe-Change Rules
Do not hide required release, migration, or shared-library validation.
Do not widen changed-file scope accidentally when replacing a wrapper action.
Treat severity drift as a regression risk.
Match the real check surface before replacing a broad action with native tools.
Live Validation
Prefer live GitHub validation when possible:
Trigger
workflow_dispatchworkflows onceVerify stale-run cancellation with two quick updates
Verify path-gating with an incremental ignored-only or workflow-only change on an existing branch
Confirm heavy jobs skip in the UI instead of assuming they would
Do not treat the first push on a brand-new branch as a clean path-ignore test.
Requirements and compatibility
Written for: GitHub Copilot
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Needs a command-line tool
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- First committed by
mutl3y
- Publisher
- GitHub (Official)
- Distributed by
- GitHub
- Source
- github/awesome-copilot · skills/github-actions-efficiency · commit 797337f
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
- Contributors
- mutl3y
AutoGineer is not affiliated with or endorsed by mutl3y or GitHub.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download github-actions-efficiency.zip