Tool

Instrument Hermes Agent with Grafana observability traces

Grafana Agent Observability plugin for Hermes Agent, recording LLM calls and tool runs as OTel traces and metrics.

Works with grafanahermes

91
Spark score
out of 100
Updated 13 days ago
Source checked Sep 10, 2026
Version 0.10.0
Models
claude

Add to Favorites

Why it matters

Enable comprehensive observability for Hermes Agent by automatically recording LLM calls, tool executions, and conversation flows as OpenTelemetry traces and metrics in Grafana Cloud, giving developers full visibility into agent behavior and performance.

Outcomes

What it gets done

01

Capture every LLM call with prompts, responses, and token counts as structured generations

02

Emit OpenTelemetry traces for each agent conversation and tool execution

03

Export metrics to Grafana Cloud for monitoring agent performance over time

04

Configure content capture modes to control what conversation data leaves the machine

Source

Get it from source

Spark does not host a copy of it.

Open source

Reports

Agent outcome reports

No reports yet

Overview

Grafana Agento11y Hermes

grafana-agento11y-hermes is a plugin that makes Hermes Agent's LLM calls and tool executions observable in Grafana Cloud by emitting OpenTelemetry traces and metrics, with a metadata-only mode to avoid exporting prompt or response content. Use it when running Hermes Agent and needing its LLM and tool activity visible as traces and metrics in Grafana Cloud.

What it does

grafana-agento11y-hermes is a Grafana Agent Observability plugin for Hermes Agent. It records LLM calls and tool executions as generations and emits OpenTelemetry traces and metrics, so those interactions show up in Grafana Cloud's Observability -> Agent -> Conversations view. With no capture mode set, it records full content by default - the system prompt, tool definitions, prompts, assistant replies, tool arguments, and tool results all leave the machine - so setting AGENTO11Y_CONTENT_CAPTURE_MODE=metadata_only is the way to keep recording every call while no prompt, response, or tool I/O content leaves the machine.

When to use - and when NOT to

Use it when running Hermes Agent and you want its LLM calls and tool executions visible as traces and metrics in Grafana Cloud, using the free tier if you don't already have a Grafana Cloud account. It replaces an earlier package, hermes-plugin-sigil: the package name, module, entry-point key, and environment variable prefix all changed from sigil/SIGIL_* to agento11y/AGENTO11Y_*, and upgrading requires uninstalling the old package explicitly, since pip would otherwise install the renamed package alongside the old one and register both as plugins. Hermes's own plugins enable CLI does not see pip-installed plugins yet - it only scans ~/.hermes/plugins/ and the bundled directory - so the plugin has to be enabled by editing ~/.hermes/config.yaml directly, and hermes plugins list won't confirm it either; the only way to confirm it's working is to check that data actually arrives in Grafana Cloud.

Inputs and outputs

pip install grafana-agento11y-hermes

Install into the same Python environment Hermes runs from (check with which hermes), then enable it in ~/.hermes/config.yaml:

plugins:
  enabled:
    - agento11y

Credentials come from one setup page per Grafana stack (https://<stack>.grafana.net/a/grafana-agento11y-app/setup): create a token, copy it as environment variables, and put that block in the environment Hermes starts from (or ~/.hermes/.env, which Hermes loads with override on, so a value there beats the same variable exported in the shell with no warning). To verify, run AGENTO11Y_DEBUG=true hermes in interactive mode (one-shot hermes -z disables logging entirely) and check ~/.hermes/logs/agent.log for lines confirming the TracerProvider, MeterProvider, and client initialized, then ask Hermes anything and check the Conversations view in Grafana Cloud.

Integrations

The plugin can also be installed by pasting an install prompt into Hermes, Claude, Codex, Cursor, or a similar agent capable of fetching a URL, which walks through the pip install, config file edit, and credential setup itself. It exports over OTLP HTTP to the endpoint and headers Grafana Cloud's setup page provides. Licensed under Apache-2.0.

Who it's for

Teams running Hermes Agent who want its LLM calls and tool usage observable as traces and metrics in Grafana Cloud, with explicit control over whether prompt and response content leaves the machine.

Source README

grafana-agento11y-hermes

PyPI

Grafana Agent Observability UI

Grafana Agent Observability plugin for Hermes Agent. Records LLM calls and tool executions as generations and emits OTel traces + metrics.

Install

Preferred: let your agent do it

Paste this into Hermes (or any Claude / Codex / Cursor / similar agent that can fetch URLs):

Install and configure the Grafana Agent Observability plugin for me by following
https://raw.githubusercontent.com/alexander-akhmetov/grafana-agento11y-hermes/main/llms.txt

The agent will walk you through pip install, ~/.hermes/config.yaml, and the credentials from the Agent Observability setup page. It will also explain what conversation data flows by default and how to tune it before turning anything on.

If you do not have a Grafana Cloud account, create one at https://grafana.com/auth/sign-up/create-user/. The free tier is enough.

Manual

pip install grafana-agento11y-hermes

Install into the same Python environment hermes runs from (which hermes to check). Then enable the plugin in ~/.hermes/config.yaml:

plugins:
  enabled:
    - agento11y

Hermes's plugins enable CLI does not see pip-installed plugins yet. It only scans ~/.hermes/plugins/ and the bundled directory. Editing the YAML directly is the workaround. hermes plugins list will not show the plugin either, so check that it works from the data arriving in Grafana Cloud.

Upgrading from hermes-plugin-sigil

The package, the module, the entry-point key and the env vars were all renamed.

  1. Reinstall:
pip uninstall hermes-plugin-sigil
pip install grafana-agento11y-hermes

The uninstall is required. The new package has a different name, so pip installs it alongside the old one instead of replacing it, and both would register a plugin.

  1. Change the key in ~/.hermes/config.yaml from sigil to agento11y. The old key no longer resolves, and hermes will not load the plugin without this.

  2. Rename your SIGIL_* env vars to AGENTO11Y_*, keeping the suffix (SIGIL_ENDPOINT becomes AGENTO11Y_ENDPOINT). The setup page in Configure below gives you a fresh block with the new names. The plugin still reads the old names for now and logs what to rename, so nothing breaks the moment you upgrade. The SDK itself ignores them, so this fallback goes away once the SDK is fixed.

Configure

Everything comes from one page in your stack:

https://<stack>.grafana.net/a/grafana-agento11y-app/setup

  1. Click Create token.
  2. Click Copy as environment variables.
  3. Put the block in the environment hermes starts from.

If you keep it in ~/.hermes/.env instead, hermes loads that file with override on, so a value there beats the same variable exported in your shell, with no warning.

The block you get:

AGENTO11Y_ENDPOINT=https://agento11y-<...>.grafana.net
AGENTO11Y_PROTOCOL=http
AGENTO11Y_AUTH_MODE=basic
AGENTO11Y_AUTH_TENANT_ID=123456
AGENTO11Y_AUTH_TOKEN=glc_...
OTEL_EXPORTER_OTLP_ENDPOINT=https://otlp-gateway-<...>.grafana.net/otlp
OTEL_EXPORTER_OTLP_HEADERS='Authorization=Basic <base64 of "123456:glc_...">'

With no capture mode set, the plugin records full content, so the system prompt, the tool definitions, prompts, assistant replies, tool arguments and tool results all leave the machine; set AGENTO11Y_CONTENT_CAPTURE_MODE=metadata_only to keep recording every call while no prompts, responses or tool I/O leave the machine.

Verify

Use interactive hermes. One-shot mode (hermes -z) disables logging for the whole run, so it writes none of the lines below.

AGENTO11Y_DEBUG=true hermes

In ~/.hermes/logs/agent.log you should see:

grafana-agento11y-hermes: installed TracerProvider with OTLP HTTP exporter
grafana-agento11y-hermes: installed MeterProvider with OTLP HTTP exporter
grafana-agento11y-hermes: client initialized (generations=configured, otel=configured)

Ask hermes anything, then check Grafana Cloud -> Observability -> Agent -> Conversations.

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.