CI/CD Platforms Used for reverse-skill: GitHub Actions Implementation Guide

The reverse-skill repository uses GitHub Actions exclusively as its CI/CD platform, hosting all automation workflows in .github/workflows/ to execute cross-platform tests on Linux, macOS, and Windows runners.

The reverse-skill project is an open-source GitHub repository that centralizes its continuous integration and delivery pipelines entirely within GitHub Actions. Unlike projects that distribute CI/CD across multiple providers, reverse-skill maintains all build, test, and maintenance automation through native GitHub workflow files. This guide examines the specific CI/CD platforms, configuration files, and testing strategies employed by the project.

GitHub Actions as the Sole CI/CD Platform

The reverse-skill project relies exclusively on GitHub Actions for automation. After scanning the repository structure, no configuration files for alternative CI/CD platforms—such as .gitlab-ci.yml for GitLab CI, Jenkinsfile for Jenkins, .circleci/config.yml for CircleCI, or azure-pipelines.yml for Azure DevOps—are present in the codebase. All continuous integration logic is confined to the .github/workflows/ directory, adhering to GitHub's standard workflow conventions.

The workflows utilize GitHub-hosted runners including ubuntu-latest, macos-latest, and windows-latest to validate code changes across operating systems. While the configurations support manual triggers via workflow_dispatch, they primarily execute on push and pull_request events targeting the main branch.

Core Workflow Configuration

The project's CI/CD logic is distributed across three primary workflow files, each handling distinct aspects of the development lifecycle.

Main CI Pipeline (ci.yml)

The .github/workflows/ci.yml file serves as the primary continuous integration workflow. It triggers on every push and pull request to the main branch, orchestrating cross-platform validation.

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

jobs:
  build-and-test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Set up PowerShell (for cross‑platform scripts)
        uses: azure/powershell@v1
      - name: Run Linux tests
        run: |
          bash skills/scripts/test-routing.sh
          bash skills/scripts/verify-routing-coherence.sh
      - name: Run Windows tests
        if: runner.os == 'Windows'
        run: |
          powershell -NoProfile -ExecutionPolicy Bypass -File skills/scripts/test-routing.ps1

This workflow invokes skills/scripts/test-routing.sh for Linux-based validation and conditionally executes skills/scripts/test-routing.ps1 when Windows runners are active. The pipeline also runs skills/scripts/verify-routing-coherence.sh to ensure routing logic integrity.

macOS Bash Compatibility (macos-bash-compat.yml)

To ensure shell script portability, the .github/workflows/macos-bash-compat.yml workflow specifically targets macOS environments. It triggers only when shell scripts are modified, using the macos-latest runner to validate syntax and execution.

name: macOS Bash Compatibility
on:
  push:
    paths:
      - '**/*.sh'

jobs:
  check-bash:
    runs-on: macos-latest
    steps:
      - uses: actions/checkout@v4
      - name: Verify Bash scripts
        run: |
          bash -n $(git ls-files '*.sh')

This configuration ensures that changes to scripts like skills/scripts/test-routing.sh do not introduce Bash compatibility issues specific to macOS systems.

Post-Merge Automation (auto-merge-journal.yml)

The .github/workflows/auto-merge-journal.yml workflow handles repository maintenance tasks automatically after pull requests are merged. This workflow is distinct from the main CI pipeline and focuses on housekeeping operations such as updating journals or cleaning up temporary resources.

Cross-Platform Testing Strategy

The reverse-skill CI/CD platform validates code across multiple operating systems through GitHub-hosted runners. The testing strategy leverages both Bash and PowerShell scripts located in skills/scripts/:

Additionally, the workflows reference maintenance scripts including skills/scripts/refresh-tool-index.sh for updating tool indices and skills/scripts/scan-leaks.ps1 for security scanning, though these may run as part of the main CI pipeline or as separate scheduled jobs.

Summary

  • The reverse-skill repository uses GitHub Actions as its exclusive CI/CD platform, with no evidence of Jenkins, GitLab CI, CircleCI, or other external providers
  • Three workflow files in .github/workflows/ define the automation: ci.yml for primary testing, macos-bash-compat.yml for macOS validation, and auto-merge-journal.yml for post-merge maintenance
  • GitHub-hosted runners ubuntu-latest, macos-latest, and windows-latest provide cross-platform coverage
  • Testing invokes native scripts from skills/scripts/, including test-routing.sh for Linux/macOS and test-routing.ps1 for Windows
  • Workflows trigger on push, pull_request, and workflow_dispatch events, with specific path filtering for shell script changes

Frequently Asked Questions

Does reverse-skill use GitLab CI or Jenkins for automation?

No, the project relies exclusively on GitHub Actions for all CI/CD functionality. The repository contains no .gitlab-ci.yml, Jenkinsfile, or configuration files for other external CI providers. All automation is defined within the .github/workflows/ directory according to GitHub Actions specifications.

Which operating systems does the reverse-skill CI test against?

The GitHub Actions workflows target three GitHub-hosted runners: ubuntu-latest for Linux testing, macos-latest for macOS compatibility checks, and windows-latest for PowerShell script validation. This ensures the reverse-skill utilities function correctly across the major desktop operating systems.

What triggers the CI pipelines in reverse-skill?

Workflows trigger on push events to the main branch, pull_request events targeting main, and manual workflow_dispatch triggers for on-demand execution. The macos-bash-compat.yml workflow additionally uses path filtering to trigger only when **/*.sh files are modified, while ci.yml runs on all relevant code changes.

Where are the CI/CD configuration files located?

All workflow definitions reside in the .github/workflows/ directory at the repository root. Key files include ci.yml for the main pipeline, macos-bash-compat.yml for macOS-specific checks, and auto-merge-journal.yml for automated post-merge tasks. Supporting test scripts called by these workflows are stored in skills/scripts/.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →