Observability
Every run is a trace — latency, cost, quality, and scope decisions in one timeline.
Observability on Mynd starts from an unusual luxury: there is exactly one unit of work, and it is born instrumented. Every run emits a structured trace — the plan, each context fetch with the scope that authorized it, each step with its latency and token spend, every kernel decision, the result — and the observability pillar is that trace made navigable at fleet scale. The dashboard gives you the four views teams actually use. Timelines: any run rendered step by step, with the slow span obvious. Aggregates: p50/p95 latency, cost per run, and step-ceiling utilization sliced by workflow, agent, model, or key. Quality: y0-judge scores from the evals pillar overlaid on the same slices, so 'cheaper but worse' is visible as one chart. And the audit view: every kernel allow/deny, filterable by scope, key, and resource — the view your security review asks for. Everything is queryable by API as well as visible, traces export as structured JSON, and OpenTelemetry-compatible export streams run spans into the observability stack you already run, with your trace IDs propagated via standard headers. Retention follows your plan tier; deletion of a run removes its trace while the kernel's access records remain, by design.
[ 01 ]Key features
Born instrumented
Traces are not sampling or guesswork — every run records its plan, fetches, steps, costs, and kernel decisions by construction.
Cost and latency by slice
p50/p95, spend per run, and ceiling utilization broken down by workflow, agent, model, and key — the bill becomes explainable.
Quality overlay
Eval scores chart on the same axes as cost and latency, so trade-offs are decisions instead of surprises.
OpenTelemetry export
Run spans stream into your existing stack with trace-ID propagation — Mynd becomes one more service in your traces, not a silo.
[ 02 ][ trace query ]
GET /v1/observability/runs
?workflow=weekly-brief
&period=7d
&metric=p95_latency,cost,judge_score
→ { "p95_ms": 1840, "cost_usd": 0.011,
"judge_score": 0.90, "runs": 312,
"ceiling_hits": 4 }