Run GitHub Actions CI locally with Agent CI to validate changes before pushing. Use when testing, running checks, or validating code changes.
--- name: agent-ci description: Run GitHub Actions CI locally with Agent CI to validate changes before pushing. Use when testing, running checks, or validating code changes. license: MIT compatibility: Requires Node.js 18+ and Docker metadata: author: redwoodjs version: "1.0.0" --- # Agent CI Run the full CI pipeline locally before pushing. CI was green before you started — any failure is caused by your changes. ## Run ```bash npx @redwoodjs/agent-ci run --quiet --all --pause-on-failure ``` Pipes are safe — pause-on-failure works through `| tee log`, `> log.txt`, etc. When stdout isn't a TTY the launcher detaches the run and the foreground process exits **77** the moment a step pauses, freeing the pipe while the container stays paused for `retry`. ## Retry When a step fails, the run pauses automatically. Fix the issue, then retry: ```bash npx @redwoodjs/agent-ci retry --name <runner-name> ``` To re-run from an earlier step: ```bash npx @redwoodjs/agent-ci retry --name <runner-name> --from-step <N> ``` Repeat until all jobs pass. Do not push to trigger remote CI when agent-ci can run it locally. ## Machine-readable output (`--json`) For programmatic monitoring, add `--json` (or set `AGENT_CI_JSON=1`) to emit an NDJSON event stream on stdout — one JSON object per line. Events: - `run.start` (with `schemaVersion: 1`, `runId`) - `job.start`, `job.finish` (`status: passed|failed`) - `step.start`, `step.finish` (`status: passed|failed|skipped`) - `run.paused` (carries `runner` + `retry_cmd`) - `run.finish` (`status: passed|failed`) - `diagnostic` `--json` is decoupled from `--quiet`, and the diff renderer is auto-suppressed under `--json` so ANSI sequences don't collide with the stream. Combined with the exit-77 pause signal above, this gives agents a robust contract: parse `run.paused` events, react, and call `retry` — no plaintext grep required.
Creator's repository · redwoodjs/agent-ci
License: MIT