Auto-Fix Failing CI Builds
Add a GitHub Action that calls Devin to fix failing CI on your PRs.Store your Devin API key in GitHub
The workflow calls Devin’s v3 API to create sessions programmatically. Create a service user and store its token as a GitHub Actions secret:
- Go to app.devin.ai > Settings > Service Users and create a service user with
ManageOrgSessionspermission - Copy the API token shown after creation — it’s only displayed once
- In your GitHub repo, navigate to Settings > Secrets and variables > Actions
- Add two secrets:
DEVIN_API_KEY(the token) andDEVIN_ORG_ID(your organization ID — get it by callingGET https://api.devin.ai/v3/enterprise/organizationswith your token)
Add the workflow file
Create Replace
.github/workflows/devin-ci-fix.yml. This workflow fires whenever your existing CI workflow completes with a failure, extracts the failing job names, and calls the Devin API to start a fix session:"CI" in the workflows array with the exact name: from your existing CI workflow file (e.g., "Tests", "Build & Test").Use the tags field in the request body (e.g., "tags": ["ci-fix", "pr-312"]) to track which CI failures have already triggered sessions and avoid duplicates.What happens when CI fails
When a PR’s CI run fails, the Action extracts failure details and passes them to Devin as a session prompt. Here’s a typical auto-fix flow:
- Reads the CI logs — Devin opens the run URL and parses the error output, stack traces, and test results from the failing jobs
- Traces the error to code — Locates the relevant file and line on the PR branch (e.g.,
UserList.tsx:34) and reads the surrounding code and recent diff - Pushes a fix — Commits a targeted change directly to the PR branch, which re-triggers CI automatically
- Comments on the PR — Posts a summary explaining the root cause and what was changed
Scope it to the right failures
Not every CI failure benefits from an auto-fix — infrastructure timeouts and Docker build issues won’t be solved by a code change. Add a condition so only relevant job failures trigger Devin:
