
Github Actions Workflow
Solo builders who want an agent to draft or extend GitHub Actions workflows for CI, security scans, and automated deploys from their repo.
Overview
GitHub Actions Workflow is an agent skill most often used in Ship (also Build integrations and Ship launch) that helps you design GitHub Actions YAML for CI/CD, testing, security scanning, and deployment.
Install
npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill github-actions-workflowWhat is this skill?
- Starter CI/CD pipeline with push/PR triggers and multi-version matrix jobs
- Covers build automation, security scanning, dependency updates, and deployment jobs
- Documents workflows, jobs, steps, env vars, and conditional execution patterns
- Points to reference guides for complete CI/CD, security, and release implementations
- Uses checkout/setup-node and registry env patterns common in solo SaaS repos
- Reference table maps multiple dedicated workflow guides under references/
Adoption & trust: 507 installs on skills.sh; 251 GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
You know you need CI on GitHub but struggle to assemble reliable workflows for tests, scans, and deploys without breaking YAML or duplicating half-working templates.
Who is it for?
Indie builders on GitHub who want agent-generated CI/CD, security, and release workflows aligned with common solo-repo patterns.
Skip if: Teams on GitLab-only or Jenkins-only pipelines with no GitHub Actions, or when you only need a one-line fix to an existing workflow you already understand.
When should I use this skill?
Continuous integration and testing, build automation, security scanning, dependency updates, automated deployments, release management, or code quality checks on GitHub.
What do I get? / Deliverables
You get structured workflow definitions with clear jobs, triggers, and reference-backed patterns ready to commit under `.github/workflows`.
- `.github/workflows/*.yml` CI/CD, test, security, or deploy pipelines
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Continuous integration is the canonical Ship moment: every push and PR should run automated checks before release. The skill centers on workflow YAML for test jobs, matrices, and quality gates—the Testing subphase on the Ship shelf.
Where it fits
Add a workflow stub when wiring GitHub releases or package publishing into the repo.
Create matrix test jobs on main and develop branches for every push and PR.
Layer dependency and code security scanning jobs into the same pipeline.
Automate build-and-deploy steps to GHCR or your host after tests pass.
How it compares
A procedural workflow-authoring skill for GitHub YAML—not a hosted CI runner or MCP server that executes builds for you.
Common Questions / FAQ
Who is github-actions-workflow for?
Solo and indie developers using GitHub who want their coding agent to produce complete Actions workflows for test, scan, and deploy automation without mastering every Actions API detail first.
When should I use github-actions-workflow?
Use it during Ship when adding or fixing CI on pull requests, during Ship security when wiring scanning jobs, during Ship launch when automating deployments, and during Build integrations when standardizing repo automation.
Is github-actions-workflow safe to install?
Review the Security Audits panel on this Prism page before installing; generated workflows can request broad repo permissions and secrets, so you should inspect jobs, tokens, and third-party actions before merging.
SKILL.md
READMESKILL.md - Github Actions Workflow
# GitHub Actions Workflow ## Table of Contents - [Overview](#overview) - [When to Use](#when-to-use) - [Quick Start](#quick-start) - [Reference Guides](#reference-guides) - [Best Practices](#best-practices) ## Overview Create powerful GitHub Actions workflows to automate testing, building, security scanning, and deployment processes directly from your GitHub repository. ## When to Use - Continuous integration and testing - Build automation - Security scanning and analysis - Dependency updates - Automated deployments - Release management - Code quality checks ## Quick Start Minimal working example: ```yaml # .github/workflows/ci.yml name: CI/CD Pipeline on: push: branches: [main, develop] pull_request: branches: [main, develop] env: REGISTRY: ghcr.io IMAGE_NAME: ${{ github.repository }} jobs: test: runs-on: ubuntu-latest strategy: matrix: node-version: [16.x, 18.x, 20.x] steps: - uses: actions/checkout@v3 - name: Setup Node ${{ matrix.node-version }} uses: actions/setup-node@v3 with: // ... (see reference guides for full implementation) ``` ## Reference Guides Detailed implementations in the `references/` directory: | Guide | Contents | |---|---| | [Complete CI/CD Workflow](references/complete-cicd-workflow.md) | Complete CI/CD Workflow | | [Automated Release Workflow](references/automated-release-workflow.md) | Automated Release Workflow | | [Docker Build and Push](references/docker-build-and-push.md) | Docker Build and Push | ## Best Practices ### ✅ DO - Use caching for dependencies (npm, pip, Maven) - Run tests in parallel with matrix strategy - Require status checks on protected branches - Use environment secrets and variables - Implement conditional jobs with `if:` - Lint and format before testing - Set explicit permissions with permissions - Use runner labels for specific hardware - Cache Docker layers for faster builds ### ❌ DON'T - Store secrets in workflow files - Run untrusted code in workflows - Use `secrets.*` with pull requests from forks - Hardcode credentials or tokens - Miss error handling with `continue-on-error` - Create overly complex workflows - Skip testing on pull requests # Complete CI/CD Workflow ## Complete CI/CD Workflow ```yaml # .github/workflows/ci.yml name: CI/CD Pipeline on: push: branches: [main, develop] pull_request: branches: [main, develop] env: REGISTRY: ghcr.io IMAGE_NAME: ${{ github.repository }} jobs: test: runs-on: ubuntu-latest strategy: matrix: node-version: [16.x, 18.x, 20.x] steps: - uses: actions/checkout@v3 - name: Setup Node ${{ matrix.node-version }} uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} cache: "npm" - name: Install dependencies run: npm ci - name: Run linter run: npm run lint - name: Run tests run: npm run test:coverage - name: Upload coverage uses: codecov/codecov-action@v3 build: runs-on: ubuntu-latest needs: test permissions: contents: read packages: write steps: - uses: actions/checkout@v3 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 - name: Log in to Registry uses: docker/login-action@v2 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Extract metadata id: meta uses: docker/metadata-action@v4 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} tags: | type=ref,event=branch type=semver,pattern={{version}} - name: Build