Agora
Packages

Packages

Everything ships as one package — @adonis-agora/telescope — exposing the headless core (with config-driven memory + Lucid storage drivers) plus opt-in subpaths for per-technology watchers, the dashboard UI, alerts, and AI exception diagnosis.

Telescope is one published package, @adonis-agora/telescope, following the first-party AdonisJS convention (like @adonisjs/auth exposing its guards): the core is enough on its own (it records and exposes a query API), and every other feature is an opt-in subpath of that same package. You install @adonis-agora/telescope once; node ace configure @adonis-agora/telescope wires the core and prompts which optional features to enable, registering the chosen @adonis-agora/telescope/<feature>_provider and publishing its config/*.ts.

SubpathEntry / role
@adonis-agora/telescopeCore capture spine — request + exception + diagnostics watchers, the Entry model, the TelescopeStore contract, the config-driven storage drivers (memory + lucid), TelescopeService, Pulse, the pruner + overload guard, client-error ingestion, and the extension SDK.
@adonis-agora/telescope/watchersPer-technology watchers — Lucid query, http-client, logs, mail, cache, queue, events, redis, plus user-driven profiling + schedule.
@adonis-agora/telescope/uiThe JSON API + SSE live-stream, behind an auth guard.
@adonis-agora/telescope/alertsAlerting — new-exception / every-exception / exception-rate / metric-threshold rules → Slack, webhook, console, or custom channels.
@adonis-agora/telescope/aiAI-assisted exception diagnosis via the Anthropic Claude API, cached by family.
@adonis-agora/telescope/mcpA Model Context Protocol JSON-RPC endpoint so a coding agent can query the captured telemetry.
@adonis-agora/telescope-uiSeparate package — the React dashboard SPA served under the same prefix and guard as the API.

The package is MIT, ESM-only, and requires Node 20.6+ and @adonisjs/core ^7.3.0. Optional peers (@adonisjs/lucid, @adonisjs/mail, @adonisjs/cache, @anthropic-ai/sdk) are installed only for the features that use them.

How they fit together

The core publishes a live store on a cross-copy-stable global slot at boot. The watchers, UI, alerts, and AI subpaths all reach that same store through the slot — no dependency injection, no inter-package wiring. The core has zero @adonis-agora/* dependencies; it reads @adonis-agora/context and @adonis-agora/diagnostics structurally and degrades gracefully when they're absent.

On this page