Smithery Logo
MCPsSkillsDocsPricing
Login
Smithery Logo

Accelerating the Agent Economy

Resources

DocumentationPrivacy PolicySystem Status

Company

PricingAboutBlog

Connect

© 2026 Smithery. All rights reserved.

    simplerick0

    github-actions

    simplerick0/github-actions
    DevOps
    1 installs

    About

    SKILL.md

    Install

    Install via Skills CLI

    or add to your agent
    • Claude Code
      Claude Code
    • Codex
      Codex
    • OpenClaw
      OpenClaw
    • Cursor
      Cursor
    • Amp
      Amp
    • GitHub Copilot
      GitHub Copilot
    • Gemini CLI
      Gemini CLI
    • Kilo Code
      Kilo Code
    • Junie
      Junie
    • Replit
      Replit
    • Windsurf
      Windsurf
    • Cline
      Cline
    • Continue
      Continue
    • OpenCode
      OpenCode
    • OpenHands
      OpenHands
    • Roo Code
      Roo Code
    • Augment
      Augment
    • Goose
      Goose
    • Trae
      Trae
    • Zencoder
      Zencoder
    • Antigravity
      Antigravity
    ├─
    ├─
    └─

    About

    CI/CD specialist focused on GitHub Actions workflows, automation, and pipeline optimization...

    SKILL.md

    GitHub Actions Specialist

    You are a CI/CD specialist focused on GitHub Actions workflows, automation, and pipeline optimization.

    Workflow Structure

    name: CI/CD Pipeline
    
    on:
      push:
        branches: [main, develop]
      pull_request:
        branches: [main]
      workflow_dispatch:  # Manual trigger
    
    env:
      REGISTRY: ghcr.io
      IMAGE_NAME: ${{ github.repository }}
    
    jobs:
      job-name:
        runs-on: ubuntu-latest
        steps:
          - uses: actions/checkout@v4
          # ... steps
    

    Common Workflows

    Python CI

    name: Python CI
    
    on: [push, pull_request]
    
    jobs:
      test:
        runs-on: ubuntu-latest
        strategy:
          matrix:
            python-version: ['3.11', '3.12']
    
        steps:
          - uses: actions/checkout@v4
    
          - name: Set up Python
            uses: actions/setup-python@v5
            with:
              python-version: ${{ matrix.python-version }}
              cache: 'pip'
    
          - name: Install dependencies
            run: |
              pip install -r requirements.txt
              pip install -r requirements-dev.txt
    
          - name: Lint
            run: ruff check .
    
          - name: Type check
            run: mypy src/
    
          - name: Test
            run: pytest --cov=src --cov-report=xml tests/
    
          - name: Upload coverage
            uses: codecov/codecov-action@v4
            with:
              file: coverage.xml
    

    Docker Build & Push

    name: Docker Build
    
    on:
      push:
        branches: [main]
        tags: ['v*']
    
    jobs:
      build:
        runs-on: ubuntu-latest
        permissions:
          contents: read
          packages: write
    
        steps:
          - uses: actions/checkout@v4
    
          - name: Set up Docker Buildx
            uses: docker/setup-buildx-action@v3
    
          - name: Login to GitHub Container Registry
            uses: docker/login-action@v3
            with:
              registry: ghcr.io
              username: ${{ github.actor }}
              password: ${{ secrets.GITHUB_TOKEN }}
    
          - name: Extract metadata
            id: meta
            uses: docker/metadata-action@v5
            with:
              images: ghcr.io/${{ github.repository }}
              tags: |
                type=ref,event=branch
                type=semver,pattern={{version}}
                type=sha,prefix=
    
          - name: Build and push
            uses: docker/build-push-action@v5
            with:
              context: .
              push: true
              tags: ${{ steps.meta.outputs.tags }}
              labels: ${{ steps.meta.outputs.labels }}
              cache-from: type=gha
              cache-to: type=gha,mode=max
    

    Deploy to Production

    name: Deploy
    
    on:
      push:
        branches: [main]
      workflow_dispatch:
    
    jobs:
      deploy:
        runs-on: ubuntu-latest
        environment: production
        concurrency:
          group: production
          cancel-in-progress: false
    
        steps:
          - uses: actions/checkout@v4
    
          - name: Configure AWS credentials
            uses: aws-actions/configure-aws-credentials@v4
            with:
              aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
              aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
              aws-region: us-east-1
    
          - name: Deploy to ECS
            run: |
              aws ecs update-service \
                --cluster production \
                --service app \
                --force-new-deployment
    
          - name: Wait for deployment
            run: |
              aws ecs wait services-stable \
                --cluster production \
                --services app
    

    Release Workflow

    name: Release
    
    on:
      push:
        tags: ['v*']
    
    jobs:
      release:
        runs-on: ubuntu-latest
        permissions:
          contents: write
    
        steps:
          - uses: actions/checkout@v4
            with:
              fetch-depth: 0
    
          - name: Generate changelog
            id: changelog
            uses: orhun/git-cliff-action@v3
            with:
              config: cliff.toml
              args: --latest
    
          - name: Create Release
            uses: softprops/action-gh-release@v1
            with:
              body: ${{ steps.changelog.outputs.content }}
              draft: false
              prerelease: ${{ contains(github.ref, 'alpha') || contains(github.ref, 'beta') }}
    

    Reusable Workflows

    Caller

    # .github/workflows/ci.yml
    jobs:
      test:
        uses: ./.github/workflows/reusable-test.yml
        with:
          python-version: '3.12'
        secrets: inherit
    

    Reusable Workflow

    # .github/workflows/reusable-test.yml
    name: Reusable Test
    
    on:
      workflow_call:
        inputs:
          python-version:
            required: true
            type: string
    
    jobs:
      test:
        runs-on: ubuntu-latest
        steps:
          - uses: actions/checkout@v4
          - uses: actions/setup-python@v5
            with:
              python-version: ${{ inputs.python-version }}
          - run: pytest tests/
    

    Composite Actions

    # .github/actions/setup-python-env/action.yml
    name: Setup Python Environment
    description: Install Python and dependencies
    
    inputs:
      python-version:
        description: Python version
        default: '3.12'
    
    runs:
      using: composite
      steps:
        - uses: actions/setup-python@v5
          with:
            python-version: ${{ inputs.python-version }}
            cache: pip
    
        - name: Install dependencies
          shell: bash
          run: |
            pip install -r requirements.txt
            pip install -r requirements-dev.txt
    

    Caching Strategies

    # pip cache (built into setup-python)
    - uses: actions/setup-python@v5
      with:
        python-version: '3.12'
        cache: 'pip'
    
    # Custom cache
    - uses: actions/cache@v4
      with:
        path: |
          ~/.cache/pip
          .venv
        key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements*.txt') }}
        restore-keys: |
          ${{ runner.os }}-pip-
    
    # Docker layer cache
    - uses: docker/build-push-action@v5
      with:
        cache-from: type=gha
        cache-to: type=gha,mode=max
    

    Secrets & Environments

    jobs:
      deploy:
        environment:
          name: production
          url: https://app.example.com
    
        steps:
          - name: Use secret
            env:
              API_KEY: ${{ secrets.API_KEY }}
            run: ./deploy.sh
    
          # OIDC for AWS (no long-lived credentials)
          - uses: aws-actions/configure-aws-credentials@v4
            with:
              role-to-assume: arn:aws:iam::123456:role/GitHubActions
              aws-region: us-east-1
    

    Matrix Strategies

    jobs:
      test:
        strategy:
          fail-fast: false
          matrix:
            os: [ubuntu-latest, macos-latest]
            python: ['3.11', '3.12']
            exclude:
              - os: macos-latest
                python: '3.11'
            include:
              - os: ubuntu-latest
                python: '3.12'
                coverage: true
    
        runs-on: ${{ matrix.os }}
        steps:
          - uses: actions/setup-python@v5
            with:
              python-version: ${{ matrix.python }}
    

    Best Practices

    • Pin action versions with SHA (actions/checkout@abc123)
    • Use concurrency to prevent duplicate runs
    • Set timeout-minutes on jobs
    • Use environments for deployment protection
    • Prefer OIDC over long-lived secrets
    • Cache dependencies for faster builds
    • Use reusable workflows to reduce duplication
    • Run security scans (Dependabot, CodeQL)
    • Keep workflows DRY with composite actions
    Recommended Servers
    GitHub
    GitHub
    Bitbucket
    Bitbucket
    Gitlab
    Gitlab
    Repository
    simplerick0/com.ackhax.configs
    Files