Laminar is an open-source observability platform for AI agents, offering tracing, signals, evals, and dashboards. It provides self-hosted Docker setup, TS and Python SDKs, and LLM provider configuration guidance.
Collecting history — the radar snapshots this repo daily. The trend line appears after 3 days of data (1 so far).
What it is
Laminar is an open-source observability platform purpose-built for AI agents.
How it works
Laminar offers modules for Tracing (OpenTelemetry-native tracing SDK), Signals (describing agent behavior and Slack notifications), Evals (SDK and CLI for running evals locally or in CI/CD with a UI), MCP/CLI access for querying traces and debugging, Dashboards for traces/metrics/events with SQL support, and data annotation tooling. It is implemented with Rust for performance, and exposes a gRPC exporter for tracing data. The README lists multiple features under each module, such as tracing and signal descriptions, eval visualization, and SQL query capabilities.
Getting started
Self-hosting with Docker Compose:
git clone https://github.com/lmnr-ai/lmnr
cd lmnr
docker compose up -d
UI is accessible at http://localhost:5667. Production guidance points to a managed platform. Configuration includes:
- LLM provider setup via environment variables in the root (.env): examples for Gemini, OpenAI, and Bedrock
- Optional custom Postgres schema via POSTGRES_SCHEMA and POSTGRES_CREATE_SCHEMA
- Anonymous usage telemetry opt-out via LAMINAR_TELEMETRY_DISABLED
TS quickstart:
npm add @lmnr-ai/lmnr
Code example shows how to initialize Laminar in TypeScript:
import { Laminar } from '@lmnr-ai/lmnr';
Laminar.initialize({ projectApiKey: process.env.LMNR_PROJECT_API_KEY });
To trace inputs/outputs, use observe wrapper with an OpenAI client example.
Python quickstart:
pip install --upgrade 'lmnr[all]'
from lmnr import observe, Laminar
Laminar.initialize(project_api_key="<LMNR_PROJECT_API_KEY>")
Code example shows wrapping a function to trace OpenAI calls.
Recent releases
Latest versions and notable changes:
- v0.2.1 (2026-07-09): refactor(LAM-1789): sync signals OTEL tracing refactor to OSS; remove slow tools check in default signal
- v0.2.0 (2026-06-18): exclude sql path from bad request flags; LAM-1634 project-scoped dedup for messages + tool defs + outputs
- v0.1.46 (2026-05-31): feat(pricing): rename agent steps to Signals steps (LAM-1506); LAM-1526 show API key type in project se
- v0.1.45 (2026-04-27): fix: posthog identify; feat: paginated Slack channel picker with multi-select
- v0.1.44 (2026-04-27): strapi; bill signals for steps processed; blog images
Traction
- Stars: 3142
- Forks: 219
- Open issues: 107
Behind the repo
Laminar is developed by lmnr-ai with YC S24 badge indicating affiliation with Y Combinator.
Caveats
License: Apache-2.0 Created: 2024-08-29 Last push: 2026-08-04 Languages: TypeScript






