ZeroClaw ships several layers of observability: quick-check CLI commands for daily operations, structured metrics for dashboards, OpenTelemetry export for distributed tracing pipelines, and a composableDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/openagen/zeroclaw/llms.txt
Use this file to discover all available pages before exploring further.
Observer trait for custom instrumentation. Use whichever combination matches your environment.
CLI health commands
The fastest way to inspect runtime state is through the two built-in diagnostic commands.Check runtime summary
zeroclaw status prints a summary of the active provider, model, and configured channels.Channel health
Channels have their own dedicated health check separate from the maindoctor command.
~/.zeroclaw/config.toml.
Prometheus metrics
Enabling theobservability feature at build time exposes a Prometheus-compatible metrics endpoint.
prometheus.yml scrape config at the gateway’s metrics path to collect them.
The
observability feature is separate from the default feature set. Rebuild with this flag if you need Prometheus scraping.OpenTelemetry OTLP export
For distributed tracing and structured telemetry pipelines, enable theobservability-otel feature.
OTEL_EXPORTER_OTLP_ENDPOINT environment variable before starting the runtime.
Observer trait
TheObserver trait in src/observability/traits.rs is the internal hook point for all runtime events. ZeroClaw provides three built-in implementations.
Noop observer
Noop observer
The default implementation. Discards all events with zero overhead. Used when no observability features are enabled.
Log observer
Log observer
Writes structured log lines for every runtime event using the standard Rust
log facade. Useful for development and low-volume deployments where a full metrics pipeline is unnecessary.Multi observer
Multi observer
Fan-out implementation that forwards events to an ordered list of child observers. Use this to combine Log + Prometheus or Log + OTLP in a single runtime without writing custom glue code.
Observer trait and wiring the new type into the factory.
Heartbeat monitoring
ZeroClaw writes periodic state updates to~/.zeroclaw/daemon_state.json while the daemon is running. External uptime monitors can watch this file for freshness as a lightweight heartbeat signal.
For hosts that use the HEARTBEAT.md periodic task convention, schedule a task that reads daemon_state.json modification time and alerts if it exceeds your expected heartbeat interval.
Log locations
| Platform | Log path |
|---|---|
| macOS / Windows | ~/.zeroclaw/logs/daemon.stdout.log, ~/.zeroclaw/logs/daemon.stderr.log |
| Linux (systemd) | journalctl --user -u zeroclaw.service -f |