Data categories
Beacon writes normalized endpoint events only when supported runtimes provide telemetry through a configured local surface. Each event includes required event, endpoint, and harness context. Optional entities are present only when the source payload provides that context and the configured retention mode allows it.Runtime inventory
The browser extension is the only surface that reads content from a site the
person is signed into personally, so its boundaries are worth stating explicitly.
It observes the chat request and response streams on
claude.ai, chatgpt.com,
and chat.openai.com, and nothing else. It has no access to other tabs, browsing
history, or page content elsewhere, and it never writes files.
Its retention setting defaults to full, so complete prompt and assistant
response text is retained in the local runtime log unless an operator changes it
in the extension’s options page. redacted scrubs emails and API-key-shaped
tokens; metadata retains no chat text at all. Retention is applied in the
browser before anything is sent, so under metadata the text never leaves the
page.
Local inventory metadata
beacon endpoint inventory can also report local agent configuration metadata that is not emitted by a runtime event:
By default, inventory is metadata- and hash-only. Beacon hashes config, hook, and
SKILL.md files for change detection but does not retain file bodies, full MCP server definitions, or skill instruction bodies in inventory JSON, dashboard responses, or inventory snapshot events.
Operators can opt into capturing full definitions with the --contents flag (CLI) or the include_contents config setting (snapshot telemetry). When enabled, configs, hooks, and skills gain a redacted content block and MCP servers gain a full definition block. Captured contents always pass through local secret redaction and a per-file size cap (64 KiB by default, configurable with max_content_bytes). Redaction replaces values under keys matching TOKEN, SECRET, PASSWORD, KEY, AUTH, or CREDENTIAL with ***REDACTED***.
Inventory heartbeat telemetry uses a separate local JSONL file, inventory_state.jsonl, so runtime.jsonl stays scoped to agent runtime activity. Normal hook execution can periodically write:
inventory.heartbeat, a small event showing that Beacon checked local agent configuration inventory and recording counts plus a snapshot digest.inventory.snapshot, a snapshot written when the digest changes or inventory is first initialized. Metadata-only unlessinclude_contentsis enabled.
include_contents is enabled, snapshots additionally carry redacted, size-limited content and definition blocks as described above.
Required fields
Optional entities
Top-level
model, repository, branch, message, raw, and field_truncated fields can add shared context across entities. Content-bearing fields follow the configured retention mode.
For hook-based runtimes, branch is derived locally from the workspace’s .git/HEAD file when the runtime payload does not provide one. This is a local file read only: no git command runs and nothing leaves the machine. Disable it with BEACON_DISABLE_GIT_METADATA=1.
OpenCode’s managed plugin retains full prompt, completed assistant/reasoning,
tool argument/result, command output, and diff content in local or
customer-controlled logs. All values pass through secret redaction and
per-string truncation. Content events carry original hashes and byte counts;
oversized events discard raw/content payloads, set field_truncated, and remain
within the endpoint event-size limit.
Cline’s managed plugin retains full prompt, tool argument/result, command output,
and diff content under the same redaction, truncation, hashing, and event-size
controls. It forwards the remaining hook payload under raw.cline after dropping
functions and cyclic references from Cline’s live hook context. Nothing is sent
anywhere but the local runtime log: Cline’s own OpenTelemetry export and its
hosted prompt-storage feature are neither configured nor used.
Related
Schema fields
Review the full entity model and common fields.
Agent harnesses
Compare runtime-specific collection surfaces and telemetry coverage.

