Security & data handling
Symvanta is graph-first by design. We parse your repositories into a knowledge graph and, by default, discard the source. This page covers how that pipeline works, what we encrypt, where we run, the permissions we request, and how we handle incidents.
Every repository you connect flows through the same four steps. The output we keep is the graph: symbols and the relationships between them.
Stored source is an optional, paid add-on. It is never on unless you explicitly turn it on. When you do, Symvanta retains your indexed checkout in that same in-memory store, isolated to your workspace, so raw-file tools (read_file, grep, tree) work for CI, chat, and headless agents. It is never copied to a persistent disk, and turning the add-on off stops those tools from serving it. Even with it on, your code is never shared across tenants and never used to train models.
When an agent makes uncommitted edits queryable with index_working_tree, those file contents are indexed into a short-lived revision that is reclaimed within a few hours and scoped to your workspace.
Every connection is encrypted with TLS 1.2 or higher: your browser to the app, your agent to the MCP endpoint, our services to GitHub, and our internal service-to-service traffic.
Sensitive secrets (OAuth client secrets, per-tenant GitHub credentials, and 2FA recovery codes) are encrypted with AES-256-GCM before they are written to the database. The encryption key lives in the runtime environment, separate from the database, so a database read on its own does not expose those secrets.
Symvanta runs on Hetzner in Germany, so your data is processed and stored in the EU. The platform is built from a small, well-understood set of datastores:
None of these datastores is reachable from the public internet. They sit on a private network behind a firewall that only admits the application tier, so the graph and embeddings cannot be queried directly from outside.
The AI features (symbol summaries, semantic-search embeddings, and graph answers) run on open models: Gemma 4 for text and Nomic Embed Code for vectors, on GPU workers Symvanta operates in the EU. Your code is never used to train or fine-tune any model.
The full list of vendors that touch production data, and what each one handles:
We request the minimum each integration needs, and you can see the full list before you approve it.
You connect Symvanta through a GitHub App, installed only on the repositories you choose. The App requests:
Per-tenant GitHub credentials are encrypted at rest. The optional automated-fix add-on additionally requests permission to open pull requests: it opens draft pull requests for your review, and merging is always your call. GitHub shows you the exact permission list on the installation screen before you approve, and you can revoke access at any time from your GitHub settings.
If you sign in with Google we request only the openid, profile, and email scopes, used solely to create and authenticate your account. We don't request access to Drive, Gmail, Calendar, or Contacts, so we have none. See our Privacy Policy for the full detail on Google user data.
mcp:read).Production is monitored continuously with metrics and error tracking, so anomalies surface quickly. If you believe you have found a vulnerability, email security@symvanta.com with the details and we will work the report promptly. Please give us a reasonable window to remediate before any public disclosure.
If an incident affects your data, we will investigate, contain it, and notify affected customers without undue delay, consistent with applicable law.
Disconnect a repository and its graph is removed. Request account deletion by emailing info@symvanta.com and we remove your data within 24 hours. For self-hosted requirements, an on-premise deployment keeps the entire pipeline inside your own infrastructure.
We'll walk through architecture, data flows, and access controls in as much detail as you need.