Security
Last updated: June 2026 · Version 1.1
For Symbiote Mirror Pass engagements, we request the minimum GitHub permissions required to read your repository and open a single pull request: Contents: Read and Pull requests: Write. No admin scope, no webhook creation, no secrets access. A fine-grained Personal Access Token scoped to the target repository is the recommended credential format. Credentials are revoked immediately after the PR is delivered and confirmed received.
RepoMend runs entirely within your own environment. You install the CLI (uv tool install repomend), configure it with a .env file in your project root, and it scans, fixes, and opens pull requests locally. Your source code never leaves your infrastructure. The GitHub token you supply requires Contents: Read+Write and Pull requests: Write on the target repository only. All credentials are loaded from environment variables — they are never hard-coded, logged, or transmitted to CallMed AI.
Both products use the Anthropic API exclusively — no code is processed via OpenAI or any other model provider. For Symbiote, file contents pass through the API to generate type annotations. For RepoMend, only a structured prompt containing the isolated vulnerable code block and its immediate context is transmitted — raw repository contents are never sent. By default, Anthropic does not retain API inputs or outputs for training purposes. Customers requiring a formal Zero Data Retention agreement should request one before engagement.
The RepoMend CLI enforces a credential isolation boundary between the local process and any sandboxed scan or fix subprocess. API keys and GitHub tokens are loaded once into a CredentialProxy and are never forwarded into container or subprocess environments. Any text generated by an agent that contains a credential value is scrubbed to [REDACTED] before being written to logs or displayed in CLI output.
All mutations are written to dedicated isolated branches — symbiote/plan-{id} for Symbiote and repomend/fix-{id} for RepoMend. We never push to main or any protected branch. Worst-case rollback is a single git branch -D. The branch naming convention makes the source of every automated commit unambiguous in your git history.
Every fix generated by RepoMend passes a deterministic three-gate pipeline before a PR is opened. Gate 1: the scanner re-runs and must confirm the original finding is no longer present. Gate 2: the diff must fall entirely within the vulnerability's declared line bounds — no out-of-scope edits are permitted. Gate 3: the project's test suite must pass. A fix that fails any gate is discarded and never reaches a pull request. The pipeline is fully auditable and produces a structured run log for each session.
Every lock acquire, wait, release, and denial is logged with monotonic-nanosecond timestamps to kernel.log. A verdict line (COLLISION-FREE ✓ or COLLISION DETECTED ⚠) is appended at the end of every run. The log is delivered alongside the PR so your team can independently verify the execution trace.
All connections between the CLI and the Anthropic API, and between the CLI and the GitHub API, are made over TLS 1.2 or higher. callmedai.com is served exclusively over HTTPS with HSTS enforced. No credentials or code are transmitted over unencrypted channels.
RepoMend dependencies are pinned in uv.lock and verified against a lock file on every install. We do not pull from untrusted or private registries. The RepoMend package is published to PyPI under the repomend namespace. Customers with strict supply chain requirements can audit the lock file and vendor dependencies before installation.
We sign mutual NDAs before receiving access to any non-public repository under a Symbiote engagement. A Data Processing Agreement (DPA) under Art. 28 GDPR is available on request. RepoMend customers operating fully on-premise have no data processed by CallMed AI — contact us to confirm what agreements are appropriate for your situation.
Found a vulnerability in our products or infrastructure? Contact [email protected] with a description of the issue, affected component, and reproduction steps. We aim to acknowledge within 48 hours and resolve critical issues within 7 days. We do not pursue legal action against good-faith security researchers.