Comment

Comment by CharlieDigital

You don't need a proxy to do this. I would argue you should not use a proxy to do this because the end result is a single point of failure direct in the line of your productivity.

Both Codex[0] and Claude Code[1] output OTEL traces that you can ingest and process.

Other harnesses like OpenCode, Pi, etc. you can hook into their plugin architecture and implement your own OTEL emission from a plugin (or use an off the shelf plugin[2]).

Host an OpenTelemetry collector[3][4] or rely on your existing collector infra (e.g. Datadog (no affiliation), AppInsights, etc.)

The OTEL traces will have exactly what you need. Tool calls, full prompts, token usage/cost, etc. It is less intrusive and does not become a single-point-of failure since the OTEL emission and collection is best-effort whereas a failing/overloaded proxy is going to strand your team until resolved. It's OK if you lose some OTEL traces; no productivity lost.

The configuration to enable this for Codex and CC is very straightforward (see [0][1] + [5])

--

[0] https://learn.chatgpt.com/docs/config-file/config-advanced#o...

[1] https://code.claude.com/docs/en/monitoring-usage

[2] https://github.com/DEVtheOPS/opencode-plugin-otel

[3] Open source collector: https://opentelemetry.io/docs/collector/

[4] Sample configuration for filtering noise: https://github.com/zeeq-ai/zeeq-app/blob/main/build/otel-col...

[5] Concrete examples of .codex/config.toml and .claude/settings.json: https://zeeq.ai/docs/key-features/session-telemetry#configur...

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton