MonitoringCAN I VIBECODE
Honeycomb?
BUILD FIRST
- A non-sensitive or read-only version of the core experience
- A manual review step wherever correctness or trust matters
- A narrow companion tool that removes a real piece of work
LEAVE FOR LATER
- Regulated decisions, payments, or irreversible actions
- Claims of correctness, compliance, or uptime that the MVP cannot support
- Sensitive integrations until security, support, and auditability are ready
RESEARCH NOTES
What this tool actually does.
Honeycomb is a commercial observability platform for debugging complex production systems. Its core model treats structured log events as the foundational building block, from which logs, metrics, and traces are derived. It uses a purpose-built columnar data store optimized for high-cardinality, high-dimensionality data, returning sub-second query results across billions of events. Key product surfaces include: distributed tracing with waterfall views spanning services, queues, retries, and LLM agent steps; Agent Timeline for debugging LLM tool calls and handoffs; Canvas, an AI-assisted investigation workspace with natural-language queries and collaborative debugging; automated anomaly detection that learns normal behavior; debuggable SLOs with alerting; and a hosted MCP server letting AI IDEs like Cursor, Claude Code, and Amazon Q query traces, triggers, and SLOs directly. Pricing is pe
RESEARCHED BUILD PROMPT
Give this to your coding agent.
Build a working prototype inspired by Honeycomb's high-cardinality event-based observability workflow, not a clone. The core workflow: a developer sends structured JSON events with arbitrary fields to an ingestion API; the system stores them column-oriented and lets the user query across billions of events with sub-second aggregations, group by any field, inspect individual traces in a waterfall view, and investigate anomalies.
User-facing requirements:
- Event ingestion endpoint accepting JSON lines with timestamp, trace_id, span_id, parent_span_id, service.name, name, duration_ms, status, and arbitrary extra fields; reject malformed events with a clear error.
- Query UI where a user writes e.g. `service.name = 'api' AND duration_ms > 500 GROUP BY status` and sees a time-series bar chart plus a results table.
- Trace waterfall view: given a trace_id, render spans chronologically with duration bars, service names, statuses, and clickable spans showing full fields.
- Anomaly detection: for a chosen service and metric, compute a rolling baseline and flag outliers above 3 standard deviations; surface as an alert list.
- Natural-language query bar (stretch): convert simple text queries into the structured query DSL using a local rule-based parser.
Technical requirements:
- Backend in Go or Python; store events in ClickHouse (preferred for columnar speed and high-cardinality) or fallback to DuckDB for a single-node demo.
- Query DSL as JSON: fields, filter expression, group-by array, rollup window, and aggregation function (count, avg, p95, max).
- Ingest API buffers events and batch-writes to ClickHouse MergeTree keyed by timestamp; flush periodically to avoid per-event inserts.
- Trace waterfall fetches all spans for a trace_id sorted by start time; shard by trace_id for locality.
- Anomaly detection via a background job reading recent aggregates and computing rolling mean/std per bucket.
- Frontend single-page app with query editor, chart rendering (Chart.js or lightweight custom SVG), and waterfall view; React optional.
- Docker Compose wiring ClickHouse, backend, and frontend for one-command startup.
Explicitly out of scope:
- Do not copy Honeycomb's brand, name, logo, colors, layout, or marketing copy.
- No authentication, multi-tenancy, billing, alert routing (PagerDuty etc.), SLO governance, AI copilot, MCP server, or LLM agent tracing.
- No data tiering/retention policy; hot storage only.
- No Kubernetes/cloud deployment: local Docker only.
Deliver a README covering: what this build is (Honeycomb-inspired event-based observability workflow), setup steps (docker compose up, seed script for sample events), how to run the query UI, the query DSL reference, and primary limitations (single-node, no auth, no MCP/AI, rule-based NL only, DuckDB fallback won't handle billions of events).