GitHub Actions
This page explains how to use Ogoron from GitHub Actions.
What this gives you
Ogoron provides a set of reusable GitHub Actions for Linux runners:
- setup — initialize or upgrade Ogoron in a repository and open a PR
- exec — install Ogoron and run explicit commands
- generate — generate unit, API, and UI artifacts
- heal — run healing workflows for generated or project tests
- run — execute unit and UI tests with CI-friendly skip behavior when generated tests are absent
Repository:
Marketplace:
Required secrets
OGORON_REPO_TOKEN
This is the main Ogoron repository access token used by the CLI inside GitHub Actions.
Get it in:
Store it as a GitHub Actions repository or organization secret.
OGORON_LLM_API_KEY
Only needed when your Ogoron access mode uses BYOK.
If your Ogoron access already includes managed model access, this secret is not required.
GITHUB_TOKEN
This is only needed for workflows that create branches or pull requests, for example setup.
Typical permissions:
contents: writepull-requests: write
Legal and policy links
- Terms: ogoron.com/terms
- Privacy: ogoron.com/privacy
Recommended rollout order
- Run
setupmanually once. - Review and merge the bootstrap PR.
- Add generation and execution workflows.
- Add healing workflows later, after generated tests are already part of the repository flow.
Example: setup
name: Ogoron Setup
on:
workflow_dispatch:
jobs:
setup-ogoron:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- uses: actions/checkout@v4
- name: Set up Ogoron
uses: OgoronAI/ogoron-actions/setup@v1
env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
OGORON_REPO_TOKEN: ${{ secrets.OGORON_REPO_TOKEN }}
OGORON_LLM_API_KEY: ${{ secrets.OGORON_LLM_API_KEY }}
Example: generate
name: Ogoron Generate
on:
workflow_dispatch:
jobs:
generate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Generate artifacts
uses: OgoronAI/ogoron-actions/generate@v1
env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
OGORON_REPO_TOKEN: ${{ secrets.OGORON_REPO_TOKEN }}
OGORON_LLM_API_KEY: ${{ secrets.OGORON_LLM_API_KEY }}
with:
unit: "true"
api: "true"
ui: "true"
scope: "since:HEAD~5"
Example: low-level exec
name: Ogoron Exec
on:
workflow_dispatch:
jobs:
exec:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run explicit Ogoron commands
uses: OgoronAI/ogoron-actions/exec@v1
env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
OGORON_REPO_TOKEN: ${{ secrets.OGORON_REPO_TOKEN }}
OGORON_LLM_API_KEY: ${{ secrets.OGORON_LLM_API_KEY }}
with:
commands: |
ogoron --version
ogoron generate unit-tests --from-diff --git-scope since:HEAD~5
Notes
- Current public actions are Linux-only.
- Current actions assume released Linux Ogoron bundles.
generate api-testscurrently does not have a first-class diff mode in the CLI. Thegenerateaction uses a git-scope-driven prompt workaround for API generation.- If you publish your own workflows, keeping
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: trueis the safest default while GitHub transitions JavaScript actions to Node 24.