Skip to main content

Runtime Overview

Asymptote supports OpenCode through a managed local plugin that invokes beacon-hooks.

Prerequisites

Before enabling OpenCode telemetry, make sure:
  • OpenCode is installed and available as the opencode executable or has a local config directory.
  • beacon endpoint install has run so shared endpoint config and runtime log paths exist.
  • Asymptote’s OpenCode plugin is installed with beacon endpoint hooks install --harness opencode.
  • OpenCode is restarted after plugin install or removal so new sessions load the updated plugin.

Collection path

Asymptote installs an owned OpenCode plugin at ~/.config/opencode/plugins/beacon.ts for user-level hooks or ./.opencode/plugins/beacon.ts for project-level hooks. The plugin forwards supported OpenCode hook payloads to Asymptote’s hook adapter. The integration is plugin-based. OpenCode native OTLP is not configured or required by Beacon.

Discovery and status

Asymptote detects OpenCode through the opencode executable or ~/.config/opencode, then checks for Asymptote plugin configuration. Use beacon endpoint hooks status --harness opencode to inspect OpenCode plugin status.

Install or configuration support

beacon endpoint install prepares shared endpoint config and runtime log paths. Install OpenCode hooks separately:
Install runtime hooks

Telemetry coverage

Data handling

OpenCode prompts, completed assistant text and reasoning, tool arguments/results, commands, command output, paths, and diffs are retained in local or customer-controlled logs. Beacon applies local secret redaction and per-string limits before writing. Each content-bearing event includes a hash and byte count for the original value. Events that exceed the 64 KiB limit drop raw and retained content while preserving stable metadata and set field_truncated. The plugin uses OpenCode session, message, part, permission request, and tool call identifiers for correlation. It does not create file events without an agent-derived path, so object-storage ingestion paths are not treated as files the agent touched.

Deployment notes

Restart OpenCode after installing or removing hooks so new sessions pick up the updated plugin configuration. For local troubleshooting, set BEACON_OPENCODE_DEBUG=1 in the environment that launches OpenCode to emit best-effort plugin debug logs. The adapter has a bounded local subprocess timeout and remains fail-open, so telemetry failures do not interrupt OpenCode execution. Validate a system-mode installation after restarting OpenCode:

Supported agent harnesses

Return to the runtime support overview.

Hooks

Install, inspect, and uninstall runtime hook integrations.