
Github Workflow Automation
Stand up AI-assisted GitHub Actions for PR review, issue triage, and CI/CD steps without ad-hoc YAML guesswork.
Overview
GitHub Workflow Automation is an agent skill most often used in Ship (also Build) that designs AI-assisted GitHub Actions and review automation for PRs, issues, and CI/CD.
Install
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill github-workflow-automationWhat is this skill?
- YAML patterns for AI code review on pull_request opened and synchronize
- Issue triage and labeling automation patterns
- GitHub Actions jobs with checkout, diff extraction, and PR comment permissions
- CI/CD integration ideas inspired by Gemini CLI-style agent assistance
- Git operation automation patterns (rebase, cherry-pick workflows)
Adoption & trust: 1.1k installs on skills.sh; 40.1k GitHub stars; 2/3 security scanners passed (skills.sh audits).
What problem does it solve?
You merge PRs and triage issues by hand while your GitHub Actions and AI review setup never gets past copy-pasted snippets.
Who is it for?
Solo maintainers and tiny teams on GitHub who want structured AI review and triage jobs wired through Actions.
Skip if: Teams on GitLab only, air-gapped environments without GitHub API access, or repos where AI must never touch PR comments without human-only gates.
When should I use this skill?
Automating PR reviews with AI, setting up issue triage automation, creating GitHub Actions workflows, integrating AI into CI/CD, or automating git operations.
What do I get? / Deliverables
You leave with workflow YAML and automation patterns you can commit under .github/workflows and iterate with your repo’s permission model.
- GitHub Actions workflow YAML
- PR review and triage job patterns
- CI/CD integration outlines
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Primary value appears when changes are reviewed and merged—automated PR feedback and pipeline gates. Centers on pull-request review automation and quality gates before launch.
Where it fits
Draft a new .github/workflows/ai-review.yml before wiring your first staging deploy job.
Post structured AI review comments on every synchronize event to shrink maintainer review load.
Add release or deploy gates in Actions after review jobs pass on the default branch.
Extend triage automation when issue volume grows post-launch without hiring ops headcount.
How it compares
Opinionated GitHub Actions and PR automation patterns—not a local pre-commit linter skill or a product analytics integration.
Common Questions / FAQ
Who is github-workflow-automation for?
Builders who ship through GitHub and want AI-assisted review, issue routing, and CI/CD workflow templates they can adapt per repository.
When should I use github-workflow-automation?
In Ship (review, launch prep) when adding AI PR review or triage Actions; in Build (integrations) when authoring new pipeline YAML before first production deploy.
Is github-workflow-automation safe to install?
The skill is tagged critical risk in metadata—workflows use git, network, and often secrets; review the Security Audits panel on this page and restrict token scopes before enabling.
SKILL.md
READMESKILL.md - Github Workflow Automation
# 🔧 GitHub Workflow Automation > Patterns for automating GitHub workflows with AI assistance, inspired by [Gemini CLI](https://github.com/google-gemini/gemini-cli) and modern DevOps practices. ## When to Use This Skill Use this skill when: - Automating PR reviews with AI - Setting up issue triage automation - Creating GitHub Actions workflows - Integrating AI into CI/CD pipelines - Automating Git operations (rebases, cherry-picks) --- ## 1. Automated PR Review ### 1.1 PR Review Action ```yaml # .github/workflows/ai-review.yml name: AI Code Review on: pull_request: types: [opened, synchronize] jobs: review: runs-on: ubuntu-latest permissions: contents: read pull-requests: write steps: - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Get changed files id: changed run: | files=$(git diff --name-only origin/${{ github.base_ref }}...HEAD) echo "files<<EOF" >> $GITHUB_OUTPUT echo "$files" >> $GITHUB_OUTPUT echo "EOF" >> $GITHUB_OUTPUT - name: Get diff id: diff run: | diff=$(git diff origin/${{ github.base_ref }}...HEAD) echo "diff<<EOF" >> $GITHUB_OUTPUT echo "$diff" >> $GITHUB_OUTPUT echo "EOF" >> $GITHUB_OUTPUT - name: AI Review uses: actions/github-script@v7 with: script: | const { Anthropic } = require('@anthropic-ai/sdk'); const client = new Anthropic({ apiKey: process.env.ANTHROPIC_API_KEY }); const response = await client.messages.create({ model: "claude-3-sonnet-20240229", max_tokens: 4096, messages: [{ role: "user", content: `Review this PR diff and provide feedback: Changed files: ${{ steps.changed.outputs.files }} Diff: ${{ steps.diff.outputs.diff }} Provide: 1. Summary of changes 2. Potential issues or bugs 3. Suggestions for improvement 4. Security concerns if any Format as GitHub markdown.` }] }); await github.rest.pulls.createReview({ owner: context.repo.owner, repo: context.repo.repo, pull_number: context.issue.number, body: response.content[0].text, event: 'COMMENT' }); env: ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} ``` ### 1.2 Review Comment Patterns ````markdown # AI Review Structure ## 📋 Summary Brief description of what this PR does. ## ✅ What looks good - Well-structured code - Good test coverage - Clear naming conventions ## ⚠️ Potential Issues 1. **Line 42**: Possible null pointer exception ```javascript // Current user.profile.name; // Suggested user?.profile?.name ?? "Unknown"; ``` ```` 2. **Line 78**: Consider error handling ```javascript // Add try-catch or .catch() ``` ## 💡 Suggestions - Consider extracting the validation logic into a separate function - Add JSDoc comments for public methods ## 🔒 Security Notes - No sensitive data exposure detected - API key handling looks correct ```` ### 1.3 Focused Reviews ```yaml # Review only specific file types - name: Filter code files run: | files=$(git diff --name-only origin/${{ github.base_ref }}...HEAD | \ grep -E '\.(ts|tsx|js|jsx|py|go)$' || true) echo "code_files=$files" >> $GITHUB_OUTPUT # Review with context - name: AI Revi