Devin is safe to run, but its autonomy is the risk to manage: it plans and completes whole tasks, including running commands and opening pull requests, so weaknesses can travel further before a human sees them. The failure modes are the familiar ones, hardcoded secrets and missing server-side authorization, with the added factor that Devin may touch infrastructure and deployment. Review its pull requests as you would any external contributor's, with secret and auth checks in the pipeline.
The risks that actually matter
Unreviewed secrets in autonomous changes
Completing a task end to end, Devin may inline a credential to make an integration work, and that value can reach a branch or environment before review.
Infrastructure and deployment changes
Because it can run commands and manage deployment steps, a permissive config or exposed variable can be introduced outside application code.
Missing server-side authorization
Endpoints it builds can trust the caller, leaving data open to anyone who calls the route directly.
How to secure a Devin app
- Treat every Devin pull request as external code; require human review before merge.
- Run secret scanning and dependency checks in CI on its branches.
- Confirm any infrastructure or deployment change follows least privilege.
- Verify server-side auth on new endpoints and scan the diff before shipping.