Your code stays yours.
Here is how.
Rotwise reads your repository to find technical debt and proposes fixes as pull requests. That only works if you can trust what happens to your code along the way. This page explains what we do, what we never do, and what you control.
Scans run in isolated, short-lived workers
Each scan makes a shallow clone of your repository into an isolated worker that exists only for that job and is destroyed when the job finishes. Repository contents are never written to long-term storage. What we keep are file paths, code metrics, findings, and the diffs you review in your account.
We never execute your code
Rotwise is static analysis only. We parse your code, we do not run it, and we never run your test suite or build steps inside our infrastructure. Every proposed fix is validated with a dry-run patch check and a parser re-parse before you see it.
Least-privilege GitHub App
Rotwise installs as a GitHub App, not as a personal access token. You choose which repositories it can see, and you can revoke access from GitHub at any time. The app requests only the permissions the workflow needs:
- Repository contents, write so approved fixes can be pushed to a branch.
- Pull requests, write so approved batches can be opened for your review.
- Metadata, read to list the repositories you selected.
- Workflows, read only. We never modify your CI configuration.
We never request administration, secrets, or packages permissions. Installation tokens are encrypted at rest with AES-256-GCM.
A human approves every change
Rotwise never commits to your default branch. Every fix batch starts as a dry run you can inspect in the browser. When you approve it, it becomes one branch and one pull request with one commit per finding, so a single revert undoes the whole batch. Batches stay small, at most eight findings and 300 changed lines unless you choose otherwise. There is no autonomous mode.
AI processing with zero retention
Code excerpts are sent to exactly one AI provider, Anthropic, under a zero-retention data processing agreement. Your code is not used to train models and is not stored by the provider after the request completes. No other third-party model ever sees your code.
Payments and account data
Payments are handled by Stripe, and card numbers never touch Rotwise servers. Account data is stored in a private database, transmitted over TLS, and processed only to provide the service. The privacy policy lists everything we store and for how long.
Reporting a vulnerability
If you believe you have found a security issue in Rotwise, email hello@rotwise.io with the details. We read every report and respond as quickly as we can. Please give us a reasonable window to fix the issue before disclosing it publicly.