Open-source agent reliability platform for discovering, investigating, and fixing production agent failures
See the codeStop your agents from failing silently in production.
Docs · Self-host · Report an issue · Discussions
Tessary is an open-source reliability platform for AI agents in production. It monitors every trace, detects issues using cheap classifiers, groups related findings into cases, and investigates their root cause using trace and repository evidence.
To try it without installing anything, sign up for Tessary Cloud at https://app.tessary.ai. It's free, needs no credit card, and its limits are on the pricing page.
To self-host, paste this into your coding agent:
Self-host Tessary for me by following https://github.com/tessaryai/tessary/blob/main/setup.md
setup.md is written as instructions to an agent: install what's missing, bring every service up, verify the frontend, and hand back the URL.
Prefer to run it yourself? The same install is one command, with nothing cloned and no .env to edit:
docker compose -f oci://docker.io/tessaryai/tessary:compose up -d -y
Either way, open http://localhost when docker compose -p tessary ps reports every service healthy. It needs Docker Engine 26 or newer and Docker Compose v2.34 or newer on the machine. Set up Tessary takes it from there.
Once it's running, instrument your agent so Tessary has traces to watch: see the instrumentation overview.
Send OTLP traces to the endpoint shown during setup and add tessary.call_site.id to spans that invoke a model. Use instrument.md to have a coding agent identify and instrument these call sites.
Connect a GitHub repository under Settings > Git integration and both triage and RCA cite the code that produced the failing traces.
gen_ai.* conventions at the edge. PII (personally identifiable information) redaction runs before storage.frustration scores eligible user messages with a hosted model on your own OpenRouter or TypeSafe key, and groundedness checks answers against their retrieved documents with a public model you run on a Mac with Apple silicon or a GPU instance on AWS, not an LLM call.Tessary is licensed under the Apache License 2.0.
A self-hosted instance sends one anonymous heartbeat to home.tessary.ai at backend start and every 6 hours after. It carries a schema version, an install id, a ping sequence number, a timestamp, the edition, the app version, the host OS family and CPU architecture, install-wide totals of projects, ingested spans, findings, cases, and classifier detections, and the hash of the model price book it holds. On the same schedule it checks home.tessary.ai for a newer price book and downloads it only when the hash has changed. It never carries trace or prompt content, an email address, an org or project name, a hostname, or a retained IP address.
TESSARY_TELEMETRY_ENABLED=false
Set that in .env and the instance makes no call to that host, DNS lookups included, and loses nothing: no feature, license check, or in-app behavior depends on the heartbeat reaching us. The field-by-field contract is the telemetry contract.
CONTRIBUTING.md explains how to open an issue or a pull request, how to run the checks locally, and what to expect from review. The documentation map is where to start reading the rest.
Report a vulnerability privately by emailing security@tessary.ai. See SECURITY.md for what to expect.
Open-source agent reliability platform for discovering, investigating, and fixing production agent failures
See the codeStop your agents from failing silently in production.
Docs · Self-host · Report an issue · Discussions
Tessary is an open-source reliability platform for AI agents in production. It monitors every trace, detects issues using cheap classifiers, groups related findings into cases, and investigates their root cause using trace and repository evidence.
To try it without installing anything, sign up for Tessary Cloud at https://app.tessary.ai. It's free, needs no credit card, and its limits are on the pricing page.
To self-host, paste this into your coding agent:
Self-host Tessary for me by following https://github.com/tessaryai/tessary/blob/main/setup.md
setup.md is written as instructions to an agent: install what's missing, bring every service up, verify the frontend, and hand back the URL.
Prefer to run it yourself? The same install is one command, with nothing cloned and no .env to edit:
docker compose -f oci://docker.io/tessaryai/tessary:compose up -d -y
Either way, open http://localhost when docker compose -p tessary ps reports every service healthy. It needs Docker Engine 26 or newer and Docker Compose v2.34 or newer on the machine. Set up Tessary takes it from there.
Once it's running, instrument your agent so Tessary has traces to watch: see the instrumentation overview.
Send OTLP traces to the endpoint shown during setup and add tessary.call_site.id to spans that invoke a model. Use instrument.md to have a coding agent identify and instrument these call sites.
Connect a GitHub repository under Settings > Git integration and both triage and RCA cite the code that produced the failing traces.
gen_ai.* conventions at the edge. PII (personally identifiable information) redaction runs before storage.frustration scores eligible user messages with a hosted model on your own OpenRouter or TypeSafe key, and groundedness checks answers against their retrieved documents with a public model you run on a Mac with Apple silicon or a GPU instance on AWS, not an LLM call.Tessary is licensed under the Apache License 2.0.
A self-hosted instance sends one anonymous heartbeat to home.tessary.ai at backend start and every 6 hours after. It carries a schema version, an install id, a ping sequence number, a timestamp, the edition, the app version, the host OS family and CPU architecture, install-wide totals of projects, ingested spans, findings, cases, and classifier detections, and the hash of the model price book it holds. On the same schedule it checks home.tessary.ai for a newer price book and downloads it only when the hash has changed. It never carries trace or prompt content, an email address, an org or project name, a hostname, or a retained IP address.
TESSARY_TELEMETRY_ENABLED=false
Set that in .env and the instance makes no call to that host, DNS lookups included, and loses nothing: no feature, license check, or in-app behavior depends on the heartbeat reaching us. The field-by-field contract is the telemetry contract.
CONTRIBUTING.md explains how to open an issue or a pull request, how to run the checks locally, and what to expect from review. The documentation map is where to start reading the rest.
Report a vulnerability privately by emailing security@tessary.ai. See SECURITY.md for what to expect.