Security

Your code is yours. We just make it more useful.

Cortex is built so frontier models can read your repos and open useful PRs — without your code training anyone else's model, leaking across tenants, or shipping without a human in the loop.

Four commitments

What we promise. In plain terms.

Your code is never used to train models

Cortex routes work to frontier providers (OpenAI, Google) under their no-training API terms. Your code, prompts, and outputs are not used to train anyone's model — ours or theirs.

Per-org isolation, enforced in the database

Every table is scoped by organization_id. Postgres row-level security blocks reads across tenants, and OAuth tokens are admin-only by RLS — even within an org.

Drafts only, never auto-merge

Cortex opens draft pull requests. We never push to your default branch, never approve our own PRs, and never call the merge endpoint. A human always ships.

Least-privilege GitHub App

We request Contents and Pull Requests scopes — not Administration, not Workflows, not Secrets. You choose which repos the app can see, and you can revoke install in one click.

How a run works

What we do. And what we don't.

Webhook arrives
Jira / GitHub

We never poll secrets or scan repos outside the install.

We don't read repos the GitHub App isn't installed on.

Org-scoped retrieval
RLS + filters

Every query is filtered by organization_id, top to bottom.

We don't surface another org's code into your prompt.

Model call
No-training terms

Routed to frontier providers under enterprise API terms.

We don't fine-tune on your code, ever.

Draft PR on cortex/* branch
Human gate

Always opened against a fresh branch, always as a draft.

We don't push to main, force-push, or approve our own PRs.

Data handling

What we store. Where it lives.

What
Repo file contents (chunked + embedded)
Where:Managed Postgres with pgvector
Retention:Until you uninstall or delete the repo
Access:Org members of the owning org only
OAuth tokens (GitHub, Jira, Figma)
Where:Managed Postgres, encrypted at rest
Retention:Until you revoke or uninstall
Access:Org admins only (RLS-enforced)
Run history, plans, draft diffs
Where:Managed Postgres
Retention:Indefinite, deletable on request
Access:Org members of the owning org only
Model prompts and outputs
Where:Frontier providers under no-training terms
Retention:Per provider policy (typically 30 days, abuse-monitoring only)
Access:Cortex backend + provider abuse review

Recommended setup

Three things to do when integrating Cortex.

Cortex never touches your production environment — it works through GitHub, opening draft PRs against the repos you install it on. A well-configured repo is what makes that integration safe in your workflow.

Start with a staging or mirror repo

Install Cortex on a staging or mirror repo first, not your primary production repo. It opens draft PRs on whatever it's installed on — get a feel for the output where mistakes cost less.

Turn on branch protection

Require pull requests, status checks, and at least one human approval on your default branch. Never count Cortex as the approver.

Require human review on every Cortex PR

Treat the merge as the deploy gate. Run Cortex PRs through the same CI as human PRs — no exemptions.

FAQ

The questions eng leaders ask first.

Is our code used to train AI models?

No. Cortex routes inference to frontier providers under their enterprise no-training API terms. Your code, prompts, and outputs are not used to train any model — ours or theirs.

How is one org's data kept separate from another's?

Every table in Cortex is scoped by organization_id. Postgres row-level security policies block any read or write that crosses orgs, and the same is true for OAuth tokens and indexed code.

Can Cortex push to our default branch or merge a PR?

No. All commits go to a fresh cortex/* branch and pull requests open as drafts. The GitHub App scope omits Administration and Workflows permissions, and no code path calls the merge endpoint.

How do we delete our data?

Uninstall the GitHub App from your org and revoke any other connected integrations. Then email support to fully delete your org's data, including indexed code, embeddings, and run history.

Are you SOC 2 compliant?

We're an early-stage product and SOC 2 work is on the roadmap, not yet complete. If your team needs an attestation before integrating Cortex into your main repos, get in touch and start with a staging or mirror repo in the meantime.

Who do we contact for a security incident?

Email security@cortexengine.dev. Include the org name, the time window, and any artifact (run ID, PR URL) that helps us scope the issue.

Start with a staging repo. Earn your way to prod.

Connect a non-production repo in five minutes. Once your team trusts the diffs, scope the install up.