Security & Data Handling
Version 2 · Last updated August 25, 2026
Effective date: 25 August 2026 · Version 2
This page describes how DiffGuardian, operated by Athleon Labs Inc., handles your code and data. It is an informational disclosure rather than an agreement, and it is written to be specific enough to be checked.
The architecture is the control
DiffGuardian is a desktop application, not a hosted service that reads your repositories. The most important security property follows from that shape:
There is no endpoint on our servers that accepts source code, diffs or repository contents. Not a disabled one, not a rate-limited one — none exists. Our API surface covers accounts, subscriptions, legal acceptances, feedback and status. Reviews are produced on your machine.
Where your code goes
| Configuration | Where your code goes |
|---|---|
| Your own provider key (Anthropic, OpenAI, …) | Directly from your machine to that provider, over TLS, under your agreement with them |
| A local model (Ollama, LM Studio) | Stays on your machine |
| On-device embeddings and code indexing | Stays on your machine |
| In every case | Never to Athleon Labs |
When you use your own provider key, that provider's terms and data-retention policy govern the processing — including whether they retain prompts and whether they train on them. We recommend reviewing those settings with your provider directly.
On your machine
- Credentials — provider keys and access tokens are stored in the macOS Keychain via the operating system's encrypted storage, never in plain files and never transmitted to us.
- Local data — projects, reviews, draft comments and the on-device index are stored in a local database in your user library.
- Filesystem access — file reads are confined to directories you have explicitly pointed the application at: local project working copies, knowledge-base folders you added, and folders you chose in a native picker. Paths are resolved through their real location before the check, so a symbolic link cannot be used to read outside those roots.
- Model-driven reads — during a review the model can request repository files. Those requests are subject to the same confinement, plus a denylist for sensitive paths, and every result is scanned for credential-shaped strings before it can enter the model's context. Tool output is treated as untrusted data, never as instructions.
- Secret scanning — a rule engine derived from the gitleaks rule set runs locally to catch credentials in the material being reviewed.
Application hardening
- The renderer process has no Node.js or filesystem access; it is sandboxed and context-isolated, and all privileged operations cross a narrow, typed bridge.
- A strict Content Security Policy applies, and navigation is restricted to the application's own origin — external links open in your system browser.
- Developer tools are disabled in production builds, which are minified and ship without source maps.
- Releases are code-signed and notarised with Apple, and updates are served over TLS from an immutable, versioned feed.
- Paid entitlement is carried by a short-lived token signed with an Ed25519 key and verified in the application's main process against a public key. The application can verify entitlement but can never mint it.
Diagnostics
- Error reports (Sentry) are scrubbed before they leave your machine: token-shaped strings are redacted, URLs are reduced to their origin, home-directory paths are removed, and integrations that would capture screenshots, console output, local variables or surrounding source lines are disabled.
- Crash memory dumps are never transmitted. A native crash writes a dump locally; what we receive is a small structured summary — exception code, faulting address, loaded module names and instruction offsets. The full dump is only ever attached if you explicitly consent in a dialog that says what it may contain.
- Product analytics (PostHog) are opt-in, anonymous and event-level. They record which features were used, never what they were used on.
None of these carry your code by design, and the scrubbing is covered by automated tests that plant realistic credentials, diff headers and prompt text and assert they cannot reach a payload.
Our infrastructure
Account and subscription data is held in a managed PostgreSQL database with encryption at rest, accessed over TLS. Authentication is delegated to Clerk; payments to Stripe, which is PCI-DSS Level 1 certified. We do not receive or store full payment card numbers. Administrative access is limited to personnel who need it and is recorded in an audit log.
Third-party components
DiffGuardian includes open-source software. Every component we distribute is listed, with its licence, copyright notice and full licence text, inside the application under Settings → About → OSS Licenses. Those notices ship with the application because that is where the licence obligation attaches — to the copy you received.
For vendor review and procurement we publish the same inventory in machine-readable form:
- CycloneDX SBOM — diffguardian.ai/legal/sbom.cdx.json
- Attribution list (JSON) — diffguardian.ai/legal/oss-attribution.json
Both are generated from the components the shipped application actually contains — packages packed into the application bundle plus packages compiled into it — rather than from a dependency manifest, so they describe what is distributed rather than what is declared. Each is regenerated with the release it describes; the SBOM names the version it applies to. If you need a different format, or an SPDX document, email support@diffguardian.ai.
Reporting a vulnerability
We welcome reports and will not pursue legal action against good-faith security research that respects user privacy, avoids service disruption, and does not access or modify data that is not yours.
Email support@diffguardian.ai with enough detail to reproduce the issue. We aim to acknowledge within three business days and to keep you informed until the issue is resolved. Please give us a reasonable opportunity to remediate before public disclosure.
Incidents
If a breach affects your personal information, we will notify affected users and any regulator as required by applicable law, with what we know, what we are doing, and what you should do.
Questions
Athleon Labs Inc., Manitoba, Canada — support@diffguardian.ai