{"slug": "agent-ci-run-github-actions-on-your-machine", "title": "Agent-CI: Run GitHub Actions on Your Machine", "summary": "Redwood launched Agent-CI, a tool that runs GitHub Actions workflows locally with instant caching and pause-on-failure capability, enabling developers to debug and retry failed steps without pushing to the cloud. The tool emulates the official GitHub Actions runner binary and integrates with AI coding agents like Claude Code and Cursor.", "body_md": "## Run GitHub Actions on your machine.\n\nCaching in ~0 ms. Pause on failure. Let your AI agent fix it and retry — without pushing.\n\n❯ npx @redwoodjs/agent-ci run --workflow .github/workflows/ci.yml\n\nInitializing local runner environment...\n\nMounting local workspace: /Users/dev/project\n\nStarting job: test-and-build\n\n✓ Run actions/checkout@v4 (0s)\n\n✓ Run actions/setup-node@v4 (0s)\n\n✓ Run npm install (0s - cached)\n\n▶ Run npm run test\n\n✖ 1 failing test\n\nError: Expected true to be false\n\n⚠️ Step failed. Runner paused.\n\nContainer state preserved. Fix the issue and run:\n\nnpx @redwoodjs/agent-ci retry --name runner-test-and-build\n\n## Principles\n\n### Principle\n\nInstant Feedback\n\n### Reality\n\nCloud CI takes minutes to spin up, install dependencies, and run tests. The feedback loop is broken.\n\n### Advantage\n\nBy bind-mounting your local `node_modules`\n\nand tool caches, Agent CI starts in ~0ms. Your first run warms the cache; subsequent runs are instant.\n\n### Principle\n\nDebug in Place\n\n### Reality\n\nWhen a cloud CI job fails, the container is destroyed. You have to guess the fix, push, and wait again.\n\n### Advantage\n\nAgent CI pauses on failure. The container stays alive with all state intact. Fix the issue on your host, then retry just the failed step.\n\n### Principle\n\nTrue Compatibility\n\n### Reality\n\nOther local runners use custom re-implementations of the GitHub Actions spec, leading to subtle bugs and drift.\n\n### Advantage\n\nAgent CI emulates the server-side API surface and feeds jobs to the unmodified, official GitHub Actions runner binary.\n\n## Architecture Comparison\n\n| Feature | GitHub Actions | Other local runners | Agent CI |\n|---|---|---|---|\n| Runner binary | Official | Custom re-implementation | Official |\n| API layer | GitHub.com | Compatibility shim | Full local emulation |\n| Cache round-trip | Network (~seconds) | Varies | ~0 ms (bind-mount) |\n| On failure | Start over | Start over | Pause → fix → retry step |\n| Container state | Destroyed | Destroyed | Kept alive |\n\n## In Developers' Own Words\n\n\"Waiting for CI could be the subtitle of the book of the last 3 weeks of my life\n\nThe Factory Life: Waiting for CI\"\n\nJess Martin\n\n@jessmartin\n\n\"An alternative to Act for AI? I'll take it!\"\n\nEric Clemmons 🍊☁️\n\n@ericclemmons\n\n\"Clever dude!\"\n\nCyrus\n\n@cyrusnewday\n\n\"Okay this is awesome\"\n\nChris 🧑🌾\n\n@chriszeuch\n\n\"I like the look of what you're cooking here 👀\"\n\nAndrew Jefferson\n\n@EastlondonDev\n\n\"You can run Github actions workflows fully locally with Agent CI. Such a crazy good unlock for coding agents!\"\n\nPekka Enberg\n\n@penberg\n\n\"It's great.\"\n\nJuho Vepsäläinen\n\n@bebraw\n\n\"Oh noice.\"\n\nAhmad Awais\n\n@MrAhmadAwais\n\n## Quick Start\n\n#### 1. Run\n\n```\n# Run a specific workflow\nnpx @redwoodjs/agent-ci run --workflow .github/workflows/ci.yml\n\n# Run all relevant workflows for current branch\nnpx @redwoodjs/agent-ci run --all\n```\n\n#### 2. Retry\n\n```\nnpx @redwoodjs/agent-ci retry --name <runner-name>\n```\n\n## AI Agent Integration\n\nInstall the agent skill — works with Claude Code, Cursor, Codex, and [40+ other agents](https://agentskills.io):\n\n```\nnpx skills add redwoodjs/agent-ci --skill agent-ci\n```\n\nThen add to your agent instructions (`CLAUDE.md`\n\n, `.cursorrules`\n\n, `AGENTS.md`\n\n):\n\n```\n## CI\n\nInstall the agent-ci skill (one-time setup):\n\n``` bash\nnpx skills add redwoodjs/agent-ci --skill agent-ci\n```\n\nBefore completing any work, run the `agent-ci` skill to validate\nyour changes locally. If it fails, fix the issue and re-run.\nDo not report work as done until it passes.\n```\n\n**Claude Code:** Agent CI also ships a `/validate`\n\nskill. Copy [ .claude/commands/validate.md](https://github.com/redwoodjs/agent-ci/blob/main/.claude/commands/validate.md) into your project for automatic background execution with monitoring and retry.", "url": "https://wpnews.pro/news/agent-ci-run-github-actions-on-your-machine", "canonical_source": "https://agent-ci.dev/", "published_at": "2026-07-07 22:38:59+00:00", "updated_at": "2026-07-07 22:59:40.034378+00:00", "lang": "en", "topics": ["developer-tools", "ai-agents"], "entities": ["Redwood", "GitHub Actions", "Claude Code", "Cursor", "Codex", "Agent-CI", "Jess Martin", "Pekka Enberg"], "alternates": {"html": "https://wpnews.pro/news/agent-ci-run-github-actions-on-your-machine", "markdown": "https://wpnews.pro/news/agent-ci-run-github-actions-on-your-machine.md", "text": "https://wpnews.pro/news/agent-ci-run-github-actions-on-your-machine.txt", "jsonld": "https://wpnews.pro/news/agent-ci-run-github-actions-on-your-machine.jsonld"}}