Traser documentation

Know where to look first.

Your agent can finish successfully and still make the wrong decision. Traser reconstructs a recorded run, compares it with a reference run when one is useful, and reduces noisy execution data to a small set of evidence-backed places worth checking first.

01 · Getting started

From a weird run to a place worth checking

The browser investigator is intentionally simple. You do not need an account, an SDK, or changes to your production stack before trying it.

01Load the suspicious run

Bring the run that behaved unexpectedly. This is the only required input.

02Add a reference run when useful

A reference run is optional. Use one when it represents behavior that is meaningfully comparable. Traser does not treat it as ground truth.

03Analyze locally

Traser normalizes the input, reconstructs the execution, aligns comparable steps, and compares recorded behavior.

04Inspect the evidence

Start with the ranked candidates and earliest meaningful divergence, then make your own judgment about cause.

Important: Traser does not claim to automatically determine what caused a failure. It narrows the investigation space and shows the evidence behind what it surfaced.
02 · Interfaces

One engine, two interfaces

Every interface runs the same analysis engine. There is no separate detector logic per interface.

InterfaceStatusUse
Local MCP serverAvailableLets an MCP-compatible coding agent ask Traser where to look first in a run file. Traser is available from npm as @maas-dorian/traser@0.2.0. On traser.dev, the compact npx traser init control copies a one-paste setup prompt that initializes Traser, connects the MCP client, and verifies the tool.
Browser investigatorAvailableLoad run JSON at /investigate. Analysis runs in the browser tab.
CLI handoffAvailablenpx @maas-dorian/traser@0.1.0 investigate ./run.json opens a local file in the browser investigator through a temporary server on 127.0.0.1. Add --trusted ./reference.json for a reference run. The published CLI accepts files up to 5 MB.
03 · Run inputs

What you can bring into Traser

The investigator accepts JSON representing a recorded run. A suspicious run is required. A reference run is optional.

InputRequired?Use
Suspicious runYesThe execution whose behavior you want to investigate.
Reference runNoA comparison point for behavior, structure, state, tools, retrieval, scores, and intermediate output when those fields exist. Not treated as ground truth.
Expected behaviorNoHuman context shown with the investigation. It does not rewrite the deterministic analysis.
Actual outcome / contextNoAdditional notes that help you keep the incident understandable while reviewing evidence.

JSON shape

Traser supports its normalized execution shape and common loose trace structures. The exact source does not need to use Traser-specific field names as long as the run contains enough structure to reconstruct useful steps.

{
  "id": "run_123",
  "status": "success",
  "steps": [
    {
      "id": "step_1",
      "name": "retrieve_context",
      "kind": "retrieval",
      "sequence": 1,
      "input": { "query": "..." },
      "output": { "documents": ["..."] }
    }
  ]
}

Useful evidence can include step identity, ordering, inputs, outputs, tool calls and arguments, retrieval, state, evaluator results, retries, scores, handoffs, and other intermediate records. Traser only reasons over fields that are actually present.

04 · Analysis

How Traser narrows a run

The current investigation flow is deterministic. It does not ask a model to invent an explanation for the trace.

NormalizeConvert the source into a consistent execution representation while preserving the original recorded data.
AlignMatch corresponding steps using stable identifiers and structural signals instead of relying on simple proximity.
CompareLook for recorded behavioral differences such as missing or added steps, changed tools or arguments, retries, state changes, retrieval differences, evaluator changes, and output changes.
Suppress noiseReduce lower-value differences so the investigation does not become another trace viewer full of everything that changed.
Rank candidatesSurface a short list of differences that have stronger structural evidence and are more useful to inspect.
Show evidencePoint back to the exact recorded values and trace locations supporting each candidate.

When there is no reference run

Traser can still investigate a suspicious run by itself. It avoids inventing comparison-only claims such as a missing reference step or changed tool when there is no baseline supporting that conclusion.

First meaningful divergence

When the evidence supports it, Traser highlights the earliest high-signal difference worth checking. Earlier does not automatically mean causal. The engineer remains the authority.

05 · Results

How to read an investigation

Traser deliberately separates what was recorded from what it thinks may deserve attention.

FieldMeaning
FactThe directly observed difference or condition in the recorded execution.
InterpretationWhy that fact may deserve investigation. This is not a causal verdict.
EvidenceThe exact trace location and recorded value supporting the candidate.
UncertaintyWhat the evidence does not establish, and other explanations to rule out.
ConfidenceHow strongly the available structural evidence supports surfacing the candidate, not the probability that it caused the outcome.
Your reviewLabel a candidate as confirmed issue, relevant clue, downstream symptom, expected behavior, irrelevant, misleading, or unsure. Labels stay in the tab unless you choose to send feedback.
Evidence boundary: if a run does not contain enough information to support a stronger conclusion, Traser should stop at the evidence it has rather than fill the gap with certainty.
06 · Privacy

Raw run analysis stays in your browser

✓

Local investigation

The browser investigator analyzes run data locally in the browser tab. Raw execution data is not uploaded to Traser to run an investigation, and results are not saved after you close the tab.

Optional product feedback is separate from the run itself. If you choose to send feedback, it contains your answer, any note or email you type, your candidate review labels, and coarse counts. Traser does not attach the raw trace payload, step names, or values.

For the full site policy, read the Privacy Policy.

07 · Limits

Current investigator limits

The browser investigator accepts JSON files up to 10 MB and 5,000 steps per run. The limits keep local browser analysis responsive and predictable.

The investigator does not save investigations. Export a Markdown or JSON report if you want to keep one.

08 · FAQ

Common questions

Do I need a reference run?

No. A reference run can strengthen comparison evidence, but the suspicious run is the only required execution.

Does Traser find the cause automatically?

No. It reduces the investigation space, surfaces evidence-backed candidates, and highlights an early meaningful divergence when supported. You decide what is actually causal.

Do I need to install an SDK?

No. You can bring existing JSON run data directly into the browser investigator.

What happened to Traser V2?

The separate paid workspace has been retired. Links to /v2 open the browser investigator. If an earlier version saved investigations in your browser, the investigator lists them so you can download backups.

What if the important evidence was never captured?

Traser cannot reconstruct evidence that does not exist in the run. It can only narrow the investigation using the data that was actually recorded.

Can I use Traser for RAG or agent systems?

Yes when the run contains useful recorded steps. Retrieval, tool use, state, evaluators, handoffs, retries, and intermediate outputs can all be useful investigation evidence when present.

Try it on a real run

See whether Traser saves you places to check.

Drop in a suspicious run, add a reference run if you have one, and inspect the evidence behind the candidates Traser surfaces.