> For the complete documentation index, see [llms.txt](https://docs.hivel.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hivel.ai/hybrid-hivel-agent/5.-configuration-reference/claudeotel-settings-claudeotel.md).

# claudeotel-settings (claudeotel: )

## Claude OTel settings (claudeotel: )

Claude Code usage tracking is handled by hivel-agent and the Claude OTel Collector, bundled together into a single Docker image. Unlike the other integrations on this page, it needs its own setup, since it needs an open port for your developers' machines to reach it.

**Installation:** the combined image is included in the same package as hivel-agent. No separate download or extraction step is needed.

**Running it:**&#x20;

{% code expandable="true" %}

```
docker run -d
--name hivel-agent-otel
--restart unless-stopped
-p 4317:4317 -p 4318:4318
-v /path/to/config.yml:/etc/hivel/config.yml:ro
-v /path/to/.env:/etc/hivel/.env:ro
-v /path/to/otel-data:/data
```

{% endcode %}

**Ports and network:** The Collector accepts inbound OTLP traffic from your developers' machines on TCP 4317 (gRPC) and/or TCP 4318 (HTTP), whichever your Claude Code clients use. Open whichever port(s) apply on the hivel-agent host. No other port needs to be exposed externally.

**What data flows through it:** The Collector receives Claude Code usage events from your developers' machines and hands them to hivel-agent. hivel-agent then pulls from the Collector the same way it pulls from Jira, GitHub, and your other sources, and uploads that data to Hivel through its normal sync process. What's included in claude\_events.jsonl depends on which OTEL\_LOG\_\* flags you've enabled in Claude Code's own settings. There is currently no redact\_names\_and\_urls / strip\_text\_content equivalent for this provider.

**Credentials:** Sync --provider claudeotel requires your HIVEL\_API\_TOKEN, same as any other provider. It does not need a separate source credential today, api\_key below is a non-functional placeholder reserved for future use.

For how to configure Claude Code itself to point at your on-prem setup, see [Claude On-Prem](/integrations/ai-tools/claude-integrations/claude-on-prem.md).

| **Key**        | **Required**         | **Default**                           | **Description**                                                                                 |
| -------------- | -------------------- | ------------------------------------- | ----------------------------------------------------------------------------------------------- |
| instance\_slug | Yes (multi-instance) | -                                     | Unique ID for this claudeotel instance                                                          |
| base\_url      | No                   | <https://otel-collector.hivel.ai/api> | OTel collector base URL - override with your on-prem VM's address if self-hosting the collector |
| api\_key       | No                   | dummy-value                           | OTel collector auth key - currently non-functional / futureproofing                             |
| org\_id        | No                   | your Hivel org id                     | Hivel org id scoping OTel collector API requests                                                |

{% columns %}
{% column %} <a href="/hybrid-hivel-agent/5.-configuration-reference/azure-devops-settings-azure.md" class="button primary" data-icon="backward">Azure DevOps settings (azure:)</a>
{% endcolumn %}

{% column %}

{% endcolumn %}

{% column %} <a href="/hybrid-hivel-agent/5.-configuration-reference/full-config-example.md" class="button primary" data-icon="forward">Full config example</a>
{% endcolumn %}
{% endcolumns %}
