security & trust

You're handing us your code.Here's how we treat it.

Aegis is a shield in front of your main branch — which means it needs access to your repositories. We hold that access to the minimum, and we're specific about what happens to your code once it's there.

Least privilege by default

Aegis connects through GitHub and GitLab OAuth and requests only the scopes it needs to read pull requests and post checks. You choose exactly which repositories it watches — the rest stay invisible to it.

Your code isn't our training data

Diffs are sent to your configured model provider solely to generate and repair tests for that pull request. Nothing is used to train models, and nothing is shared across accounts.

We propose, you merge

Aegis writes tests and posts a verdict on the PR. It never merges, force-pushes, or deploys on its own — every write that changes your main branch stays behind a human review.

Scoped upload tokens

CI uploads coverage and analysis with a per-repository token, not your account credentials. A token is bound to one repository, can't read anything, and can be rotated at any time.

what we hold

A plain answer to “where does my code go?”

Stored

  • Repository metadata (name, default branch, PR numbers)
  • Coverage, duplication, and analysis results per build
  • Generated test files, until the PR is closed or merged
  • AI-generation cost per repository

Never stored

  • Your source code at rest beyond the active review
  • OAuth passwords or personal access tokens in plaintext
  • Anything from repositories you didn't connect
  • Model-provider prompts or completions after the verdict is posted

You can revoke it all in one click

Disconnect a repository and Aegis loses access immediately and deletes its stored reports for it. Revoke the OAuth grant from GitHub or GitLab and every connection drops at once. No lock-in, no retention you didn't ask for.

Security questions? security@aegis.dev