Claude Code Plugins

Community-maintained marketplace

Feedback

Automating with GitHub Actions

@doanchienthangdev/omgkit
0
0

The agent implements GitHub Actions CI/CD workflows with builds, tests, and deployments. Use when setting up continuous integration, automating deployments, creating reusable actions, or implementing security scanning.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name Automating with GitHub Actions
description The agent implements GitHub Actions CI/CD workflows with builds, tests, and deployments. Use when setting up continuous integration, automating deployments, creating reusable actions, or implementing security scanning.

Automating with GitHub Actions

Quick Start

# .github/workflows/ci.yml
name: CI

on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 20
          cache: npm
      - run: npm ci
      - run: npm test
      - run: npm run build

Features

Feature Description Guide
Workflows Event-driven automation pipelines Trigger on push, PR, schedule, or manual dispatch
Jobs Parallel or sequential task execution Use needs for dependencies, matrix for variations
Actions Reusable workflow components Use marketplace actions or create custom composite
Environments Deployment targets with protection Configure approvals, secrets, and URLs
Artifacts Build output persistence Upload/download between jobs, retention policies
Caching Dependency caching for speed Cache npm, pip, gradle directories

Common Patterns

Matrix Build

jobs:
  test:
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest, macos-latest]
        node: [18, 20, 22]
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: ${{ matrix.node }}
      - run: npm ci && npm test

Deployment with Environments

jobs:
  deploy:
    runs-on: ubuntu-latest
    environment:
      name: production
      url: https://example.com
    steps:
      - uses: actions/checkout@v4
      - run: npm ci && npm run build
      - name: Deploy
        run: ./deploy.sh
        env:
          DEPLOY_TOKEN: ${{ secrets.DEPLOY_TOKEN }}

Docker Build and Push

jobs:
  docker:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: docker/setup-buildx-action@v3
      - uses: docker/login-action@v3
        with:
          registry: ghcr.io
          username: ${{ github.actor }}
          password: ${{ secrets.GITHUB_TOKEN }}
      - uses: docker/build-push-action@v5
        with:
          push: true
          tags: ghcr.io/${{ github.repository }}:${{ github.sha }}
          cache-from: type=gha
          cache-to: type=gha,mode=max

Best Practices

Do Avoid
Use concurrency groups to cancel stale runs Hardcoding secrets in workflows
Cache dependencies for faster builds Skipping security scanning
Use matrix strategies for cross-platform Using deprecated action versions
Implement environment protection rules Running unnecessary jobs on PRs
Set timeouts on long-running jobs Ignoring workflow permissions
Use reusable workflows for common patterns Self-hosted runners without security review
Upload test artifacts on failure Skipping concurrency controls