GitHub-compatible CI

Run GitHub Actions-style workflows on Vex CI

Vex keeps compatible workflow files under .vex/workflows, triggers through repository events or the Vex GitHub App, and records compatibility diagnostics before execution.

Workflow location

Vex reads .vex/workflows. It does not automatically run .github/workflows.

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

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

Enable remote GitHub CI

Install the Vex GitHub App, open the repository sync page, and create a GitHub CI repository binding with a runner pool, check prefix, default branch, and adoption mode.

shadow
reporting
required

Supported first slice

  • Workflows under .vex/workflows/*.yml or *.yaml
  • push, pull_request, and Vex-side manual dispatch
  • Linux runner labels, shell steps, simple matrices, job dependencies, and env/defaults
  • actions/checkout, setup-node, setup-python, cache, upload-artifact, and download-artifact shims
  • Local composite actions referenced with uses: ./...
  • GitHub environment files for env, output, path, and summaries

Blocking diagnostics

  • macOS or Windows runner labels
  • Docker actions and unsupported public marketplace actions
  • Service containers, job containers, reusable workflows, scheduled workflows, and job outputs
  • Matrix include/exclude and workflow/job concurrency
  • Fork pull request workflows that reference secrets.*

API surface

GET /api/v1/organizations/:organization_id/github_ci_repositoriesPOST /api/v1/organizations/:organization_id/github_ci_repositoriesPATCH /api/v1/organizations/:organization_id/github_ci_repositories/:idGET /api/v1/organizations/:organization_id/github_ci_repositories/:github_ci_repository_id/compatibility_reports
View API reference