Most agent dashboards show tokens, latency and spans. The questions I actually had while running agents were about the business: how many candidates got stuck joining, which conversations are waiting on a human, which operations failed today.
axonpush answers those in your own words. You paste one prompt into your coding agent. It instruments your app, decides what’s worth tracking and writes a workspace spec. axonpush turns the events into a live view of your agents’ work, and keeps the traces behind every number as evidence.
how it works
The workspace is a declarative spec: entities, the event rules that update them, attributes, views, funnels and alerts. It never runs arbitrary code or SQL. The UI and MCP edit the same draft, so Claude Code or Cursor can propose a change and you review it like a pull request. axonpush also flags events that arrive and nothing uses, and attributes your app sends that the spec doesn’t declare.
Nova is the first integration. In Nova’s case, the entities are agents, join journeys, operations, conversations and notification deliveries. The room graph shows how agents and conversations reference each other, and only draws lines it actually observed.
the hard parts
- Events arrive late, twice, or out of order. Every event carries a source key, so a retry doesn’t count twice. A late event updates the projection it belongs to without replaying everything.
- Quiet isn’t broken. The health page says when evidence last arrived, how far behind the projections are, and what was dropped or retried. A slow day and a broken pipeline look different.
- Keep less, for less time. Detailed spans last 7 days and operational evidence 30. After that, only de-identified daily rollups remain, for 90 days, with no ids in them.
The screenshots use synthetic Nova data from the built-in preview, not real users.
how it got here
- 2023. Easy-Push, an open-source realtime event pipe in Nest.js. It sat idle for two years.
- March 2026. I picked it back up as axonpush: event ingest, traces, webhooks, multi-tenant orgs. I needed it while running agents in production at Youe.
- Summer 2026. It moved to AWS serverless and grew into a control plane: an inline LLM gateway, moderation, spend and request policies, and an audit trail.
- September 2026. I rewrote the server in Go as a modular monolith on Lambda and Aurora DSQL, and cut production over on the 14th.
- October 2026. I pivoted. A gateway puts you in the hot path of every model call, and the generic charts still didn’t answer the business questions. So the gateway, moderation and runtime policies are gone. What’s left is passive observability that adapts to the business.
Over 1,200 commits across the server and dashboard since March.
where it is now
Live at axonpush.xyz in pilot mode, with billing
off. Next up: a staging soak with real provider traffic, a controlled
pilot with Nova, and publishing the SDKs with the new
observe() and identify() calls.
log
- 2026-10-07 · new screenshots and this write-up.
- 2026-10-05 · agent-operations pivot deployed to production.
- 2026-09-24 · errors, issues and the trace explorer shipped.
- 2026-09-14 · production cut over to the Go server on Aurora DSQL.
- 2026-03 · axonpush picks up where Easy-Push left off.