Documentation Index
Fetch the complete documentation index at: https://docs.asymptotelabs.ai/llms.txt
Use this file to discover all available pages before exploring further.
Beacon Architecture
Beacon runs on the endpoint and keeps the normal telemetry path local. Supported AI runtimes emit activity through either OpenTelemetry or native hook payloads. Beacon collects those signals, normalizes them into endpoint events, and writes one JSON object per line to the local runtime log.
Architecture layers
- Runtime surfaces: Claude Code, Codex CLI, Cursor, and Claude Cowork expose different telemetry surfaces. Beacon uses the strongest surface available for each runtime instead of forcing every tool through one adapter.
- Local collection: Claude Code and Codex CLI export OTLP to localhost. Cursor invokes the embedded
beacon-hooksadapter. Claude Cowork is configured from Anthropic admin settings and validated by Beacon. - Normalization: OTLP logs, traces, metrics, resource attributes, and hook payloads are mapped into the Beacon endpoint schema with consistent action names, severity, endpoint identity, harness context, session context, tool metadata, command metadata, file metadata, MCP-like tool metadata, approval metadata, and content-retention metadata.
- Local outputs: Beacon writes
runtime.jsonl, serves a loopback-only dashboard over that file, and provides Wazuh localfile/rule content. Other destinations can consume the same JSONL through customer-managed forwarding.
Runtime discovery and configuration
beacon endpoint discover inspects the local machine for supported AI runtimes and their telemetry state. Claude Code is detected through the claude executable and Claude settings paths. Codex CLI is detected through the codex executable and ~/.codex/config.toml. Cursor is detected through the Cursor binary or ~/.cursor, then checked for Beacon hook configuration. Claude Cowork is treated as an admin-configured OTLP source because its telemetry is enabled in Claude organization settings.
During install, Beacon configures Claude Code and Codex CLI to send OTLP to the local collector. Cursor hook telemetry is installed separately with beacon endpoint hooks, because hooks are managed through Cursor configuration rather than OTLP runtime settings.
Local collection
Beacon writes an OpenTelemetry Collector configuration with localhost receivers:| Receiver | Default endpoint |
|---|---|
| OTLP gRPC | 127.0.0.1:4317 |
| OTLP HTTP | 127.0.0.1:4318 |
beaconjson exporter. Packaged deployments can use the Beacon collector distribution; local installs can point at an otelcol or otelcol-contrib binary with --collector.
Hook telemetry
Cursor hooks cover activity that is better represented as runtime events than generic OTLP spans. Where Cursor exposes payloads, Beacon records session lifecycle, prompt submission, tool invocation, shell command execution, MCP-like tool activity, approval decisions, and file edits. Hook events are metadata-first. For file edits, Beacon stores file path, operation, language, diff hash, and diff byte count. Raw diffs are included only when content retention is explicitly configured away from the defaultmetadata mode.
Related
Endpoint agent
Install, repair, inspect, and uninstall the local endpoint agent.
Endpoint event schema
Review normalized Beacon JSONL event fields.

