Every failure ends in a pull request.
Send errors, QA failures, metric breaches and vulnerable dependencies through an open-source SDK and a DSN, with no proprietary client. The agent returns a root cause and a draft pull request, and reviews see the production history of every touched file.
1 DSN to install4 modes to run the agent5,000 events free every month
TypeError: Cannot read properties of undefined (reading 'id')
src/auth/session.ts:142scan fixability 0.92 > threshold 0.80cause auth retry races the session refreshrepro POST /api/session -> 401 -> stale readplan guard session.user before read (+4 -1)
unchanged line: const session = await refreshSession(token)removed line: return session.user.idadded line: if (!session?.user) {added line: throw new AuthRetryError('session invalidated')added line: }added line: return session.user.idFive steps, and you can stop it at any of them.
Each step is a checkpoint with a confidence score attached. A run that dies at step three resumes at step three. A run that is not confident enough pauses and waits for you.
- 01scan
Scan
The issue is scored for fixability. Runs start only above the project's threshold.
- 02root cause
Root cause
The agent reads the context bundle and states, in one sentence, what is actually wrong.
- 03plan
Plan
A change plan, before any code. You can edit it, or reject it, before a line is written.
- 04patch
Patch
The plan becomes a diff. Confidence below threshold pauses the run instead of guessing.
- 05draft PR
Draft PR
A draft pull request, with the root cause in the description. You review and merge.
Errors were just the first way in.
A failed QA flow, a metric breach, a missed cron, a fresh CVE on a package you run: each files the same first-class issue your errors do, and gets the same alerts, root-cause agent and draft PR. Your pull requests get reviewed with that production history behind them.
Pull request review
Open a PR and the agent reviews it with the production error history of every file it touches. Findings are fact-checked against the code before they post, and dropped when they do not hold. It only comments; approving, requesting changes and merging stay with you.
Dependency and secret scanning
Lockfile diffs (composer, npm, yarn, pnpm) are checked against OSV and Packagist advisories plus typosquat and tamper heuristics. A daily sweep opens an issue when a new advisory lands on a package you already run. Secrets are caught on added lines, masked, and never verified against outside APIs.
Autonomous QA flows
Describe a user flow in plain language. A deterministic Chromium runner replays it with zero model calls on the happy path. It heals drifted selectors but never rescues a failed assertion. A failure files an issue correlated with the server-side errors it provoked, flips the parsemend/qa check on your pull request, and the fix is verified by re-running the flow that caught it.
Metric and anomaly alerts
Threshold, percent-change and anomaly rules (plain rolling statistics, no ML) watch per-project error counts, failure rates and p95 duration. A breach files a synthetic issue through the same alert actions and cooldowns, and recovery resolves it. A health page shows each project at a glance.
Four ways to run the agent. Three of them never show us your code.
The fix run is the product. Where it executes, whose model it calls and who pays for the tokens are yours to choose.
Bring your own agent
code stays putYour agents. Our queue.
Parsemend triages errors into a fix queue and exposes it over an API and webhooks. Your own agents, running on your own servers, claim a fix run, do the work, and post the result back. Parsemend never calls a model and never sees your source. You pay the subscription, not for inference.
bring-your-own-agent →Your API keys
code stays putOur loop. Your credentials.
Parsemend runs the fix-run state machine (context bundles, confidence gating, resumable steps) using your own provider credentials. Anthropic, OpenAI, Gemini, or a self-hosted Ollama endpoint. Inference is billed to your provider account at raw token prices, and your plan's AI credits are never touched.
your-keys →Local CLI
code stays putThe fix run, on your machine.
Run npx parsemend fix <issue> in the repository. The CLI pulls the context bundle for that issue, executes the fix run locally against your own model credentials, and opens the draft pull request. Your source never leaves the machine; Parsemend only ever sees the error events you already send it.
cli →Managed
repo accessConnect the repo. Read the PR.
Parsemend runs the fix on its own infrastructure with its own model credentials, drawing on the AI credits included in your plan. It needs a GitHub App installation with read access to the repository and write access to pull requests. This is the least setup and the only mode where your source is read by Parsemend's servers.
managed →
The whole tracker, not a demo of one.
The agent is the reason to pay. It is not an excuse for a thin error tracker underneath it.
Sentry SDK compatible
shippedReport through the open-source Sentry SDK for your language: install it, set the DSN, done. Envelope and legacy store endpoints, all three DSN auth forms, unknown item types tolerated rather than rejected.
Grouping and regression detection
shippedCustom fingerprint, then in-app frame signatures with recursion collapsed, then exception type and value, then a parameterized message, so many hashes fold into one issue. A resolved issue that sees a new event flips to regressed on the write path, not by a nightly sweep.
Breadcrumbs and context
shippedThe last N things that happened before the throw, normalized and stored with the event rather than sampled away.
Tags, environments, releases
shippedIndexed as a key/value table, not scanned out of JSON at query time. Filter issues by environment or release without a full-text search.
Rate limits, quotas and retention
shippedPer-key fixed-window limiting answers with 429, Retry-After and X-Sentry-Rate-Limits, so your SDK backs off the way it already knows how. Events live in a range-partitioned table, so expiring a day is a DDL statement, not a mass delete that vacuums for an hour.
Source maps and alert rules
shippedUpload artifacts with debug IDs so minified frames resolve to your source. Route issues to email, Slack, Discord or a webhook on the conditions you set.
Tracing and logs
shippedTransactions, spans and a per-trace tree, with logs linked by trace id. Enough context for the agent to follow a request, deliberately short of a full APM.
Cron and uptime monitoring
shippedCheck-ins auto-create monitors; a missed run, a timeout or too many failed probes (a threshold you set per check) opens an ordinary issue, and recovery resolves it.
Simple, flat pricing.
The tracker is free. Paid plans add the agent and bigger quotas.
Free
Free error tracking. Forever.
$0
5,000 events / monthDeveloper
agentThe agent, credits included.
$29/ monthtodo: not final
100,000 events / monthTeam
agentManaged runs, or your own.
$99/ monthtodo: not final
1,000,000 events / month
How you will know whether it works.
Every fix run is scored against a benchmark suite of real, closed issues with known-good patches. The methodology, the suite and the pass rate are published, including the runs where the agent produced a patch that did not hold.
Results are published with the benchmark methodology rather than quoted as a headline figure. If a number here cannot be reproduced from the suite, it should not be here.
Start tracking errors free. Upgrade when you need more.
No credit card for the free tier.