Are you an LLM? View https://a3s-lab.github.io/Code/llms.txt for optimized Markdown documentation, or https://a3s-lab.github.io/Code/llms-full.txt for full documentation bundle. This page is also available as Markdown at https://a3s-lab.github.io/Code/en/guide/telemetry.md
The Go methods cross the native bridge and therefore return an error; Rust,
Node.js, and Python expose these in-process observation getters synchronously.
Streaming returns versioned AgentEvent envelopes. version, type,
payload, and optional metadata are the stable lossless fields; text, tool
names, tool output, errors, token totals, and verification summaries are
convenience projections. Unknown future type values and their payloads remain
available to hosts.
Rust hosts can export spans over OTLP by enabling the telemetry Cargo feature
of a3s-code-core (included in the server and full profiles). The exporter
lives in core/src/telemetry_otel.rs:
The default transport is gRPC; with_otlp_http() switches to OTLP/HTTP.
Exports are bounded so an unreachable collector does not hold a coding turn or
process shutdown. The Node.js, Python, and Go SDK crates do not declare a
telemetry feature, so no published package includes the exporter; OTLP export
is available only to Rust embedders. The opentelemetry entry returned by sdkCapabilities() is
an advanced, host-owned capability that states this Core feature requirement.