$ show sbt/sbt-github-actions
sbt-github-actions is an sbt AutoPlugin that generates and maintains GitHub Actions workflow files (ci.yml and clean.yml) for sbt builds. It derives the CI matrix from crossScalaVersions, adds checkout/setup/caching steps, and can publish from the exact binaries tested in the build. It also generates a separate clean.yml workflow that deletes old workflow runs and artifacts via the GitHub API, working around the limitation that workflow artifacts are not visible until the workflow finishes.
The LLM identified 3 files worth highlighting for reuse:
A small, self-contained sealed trait hierarchy for expressing GitHub Actions ref predicates (branch, tag, snapshot) and rendering them into if: conditions. It has no sbt dependency and can be lifted into any GitHub Actions tooling project.
Pure YAML renderer that converts a typed Workflow model into the exact GitHub Actions workflow text. Its deterministic output is what enables the plugin's drift-detection check, and the rendering logic is reusable for any GitHub Actions YAML generation tool.
Orchestrates generation of ci.yml and clean.yml from the sbt build's settings. The generated files are stable and reproducible, which allows the githubWorkflowCheck task to fail the build whenever committed workflows fall out of sync with the generator.