The architecture
Every job runs in a fresh sandbox that is destroyed when the job ends. The sandbox has limited access, and our servers check the result before anything can land in your repository.
Isolated sandboxes
We clone your code into a fresh micro-VM for each job, then destroy the VM when the job ends. Jobs never share an environment, so one customer's job cannot see another's.
Least-authority credentials
The sandbox gets a repository-scoped GitHub token that expires within an hour. Coding jobs may read and push code but cannot merge. Analysis and ideation jobs are read-only. The agent process never receives the token; only the surrounding clone and push steps can use it.
Server-side merge guards
Only our backend can merge, using a separate token. Before it does, it checks fork status, diff size limits, your automation settings, and test results. A sandbox cannot approve its own work.
Observed verification
Our orchestrator runs your test suites and records the result itself. It does not rely on the agent's report. A failing suite blocks the merge.
Authenticated callbacks
Each job reports back with a single-use secret that is checked in constant time. We claim each result once, so forged, replayed, or duplicate callbacks cannot publish or merge anything.
Prompt-injection containment
We treat issue text, pull requests, and repository files as untrusted input. They cannot grant the agent more authority. Veratex never pushes to or auto-merges a fork pull request because the fork controls both the code and its test signal.
Data protection
- Encryption. All data is encrypted in transit with TLS, and our managed database encrypts data at rest.
- Transient code handling. Repository code lives in the sandbox only while a job runs. We retain the job records, logs, and diffs shown in your dashboard.
- No model training. Your repository content is not used to train machine-learning models, by us or by our model provider.
- Payments. Billing is handled by Stripe; card data never touches our servers.
- You control automation. You opt in by repository and by workflow. Auto-merge stays off until you enable it. Unclear changes wait for a person.
How we handle personal data is covered in the privacy policy.
Responsible disclosure
If you find a vulnerability in Veratex, email security@veratex.ai with enough detail to reproduce the issue. We ask that you:
- give us a reasonable opportunity to fix the issue before public disclosure;
- avoid accessing, modifying, or destroying data that is not yours; test only against accounts and repositories you own;
- do not run denial-of-service tests, spam, or social engineering against the Service or its users.
We will acknowledge the report, keep you updated while we investigate, and will not pursue legal action for good-faith research that follows these guidelines.
Questions
For anything security-related that is not a vulnerability report, contact security@veratex.ai.