Read-only until you say yes.

Mendloop reads your code and errors to find root causes. It writes nothing until a code owner approves, keeps as little personal data as it can, and never shows a secret to an AI model.

What Mendloop can do in Sentry: reads granted for issues, events, stack traces, breadcrumbs, releases and affected-user counts; writes such as resolving an issue are locked and not granted.
A Sentry connection in the product: reads granted, every write locked until an Admin grants it.

What we store, and how

If our database leaked, it should reveal as little as possible about anyone. Mendloop needs to know that 1,840 users hit a crash, not who they are.

Each kind of data, how it is kept, and for how long.
DataStored asNotes
End-user IDs, emails, device IDsKeyed hash, HMAC-SHA256 with a per-organization secretCounts unique users and links events. It can’t be reversed or matched across organizations.
IP addressesKeyed hash; country kept if you want itNever stored raw.
Messages, breadcrumbs, request bodiesScrubbed at ingest, then storedEmails, phone numbers, cards, tokens, JWTs, keys and IPs are removed. Add your own rules.
Screenshots and session replayInputs masked in the SDK, stored encryptedOff by default, short retention.
Raw event payloadsKept for the retention window30 days by default, then deleted. Issues keep aggregates and the evidence cited in a root cause.
Customer data from your CRMNot storedFetched when needed and cached for 10 minutes. Issues keep a hashed account reference.
Your team’s emailsEncrypted, plus a hash for sign-in lookupNeeded to sign in and to notify.
Passwordsargon2id hashOr no password at all, with SSO or a magic link.
Integration tokens and vault secretsEnvelope encryption, AES-256-GCMData keys wrapped by a per-organization key. Never logged, never sent to a model.
API keysHash onlyShown in full once, at creation; after that only the prefix.
Your codeNever in the databaseRepository mirrors live on disk; sandboxes are destroyed after each run. Snippets cited in a root cause stay with its report.
Prompts and model outputsStored after redactionSo you can audit exactly what was sent to a provider.

Write access, just in time

Every connection starts read-only. Write access is a separate grant, requested the first time a workflow needs it, and only an Admin can give it.

  • Per fixAfter an approval, a short-lived token is issued for one branch, such as fix/MOB-123-checkout-npe. Mendloop never pushes to your main branch.
  • Two approvalsPolicies can require two approvals for sensitive code, such as payments or sign-in.
  • StopOne switch stops every write at once; another stops a single workflow.
  • On recordEvery decision is in the audit log with who made it and from where: the app, Slack, Teams, email or a phone.
The decision panel: Approve fix, Request changes, Reassign and Not a bug, with a note that write access to acme/rider is requested only when the fix starts.
Setup, Connect code: read-only first, with what Mendloop reads listed: code and history, pull requests and reviews, checks and CI results, CODEOWNERS.

Secrets never reach a model

Before every model call, secrets are replaced with {{secrets.*}} placeholders and personal data with tokens like <email_1>.

Evidence is wrapped in tagged blocks marked as data, not instructions, so text inside a log line can’t steer the agent. Prompts are stored after redaction. A local-only switch blocks every external provider, and each provider’s data policy is shown where you add its key.

The input of an Investigate step: a note that secrets are masked before storage, and JSON where git_token and loki_token appear only as secrets placeholders.

Behind the walls

Mechanisms that hold even if one layer fails.

Per-org keysDelete an organization and its key goes with it, so even backups become unreadable
Row-level securityPostgres enforces the organization boundary behind the application’s own checks
Retention jobsPer data type: events, logs, replays, runs and audit, set per organization
Delete on requestRemoves everything tied to one hashed end user
EU or USCloud region chosen when the organization is created
Verified linksEvery connection proves it works, and its health is checked every 15 minutes
A black clay jar on a rattan table, its many cracks joined with bright gold seams.

Or keep it all at home

Self-host Mendloop and nothing leaves your network unless you choose it.

It needs only Postgres and Redis. Run local models with Ollama or vLLM, reach private Git through an outbound-only relay, and no telemetry is sent unless you opt in.

Read the self-host guide

“Kintsugi”, a jar mended with gold. Photograph by Guggger, CC BY-SA 4.0.

Found a flaw?

Email security@getmendloop.com with the steps to reproduce it. Please don’t open a public issue.

  • 2 working daysto reply to your report, and we keep you posted until it is fixed.
  • In good faithWe won’t take action against research that avoids privacy violations, data destruction and service disruption.
  • CreditWe name you in the release notes if you want us to.