Claude Code Provider Bodies
Claude Code can save every request it sends to its model provider, and every response. A request holds what the transcript does not: the system prompt, the tool schemas, and every message as sent. asz collects these files, and the conversation page shows the prompt of each model call. Claude Code Provider Bodies Internals explains what they hold and how asz stores them.
Turn it on
Add this to the env block of ~/.claude/settings.json, with your home directory in the path:
{ "env": { "OTEL_LOG_RAW_API_BODIES": "file:/Users/me/.claude/asz/provider-bodies" } }
- Write the path in full. Claude Code does not expand
~. - The directory is
asz/provider-bodiesunder Claude Code’s directory, which isCLAUDE_CONFIG_DIRwhen that is set. To use another one, setsource_rooton theclaude-code-provideradapter to the same path. - Nothing else is needed. The adapter is on by default.
Start a new Claude Code session, then check that asz sees the files:
asz sources
What they contain
The bodies are sent to asz and to any export receiver as they are, and nothing is redacted. Besides the conversation, a request holds your device id and account id, your email address, your instruction files and memory, the schemas of every MCP tool, and paths on your machine.
Keep the directory small
Claude Code never deletes these files, and a session writes about 100 KB per model call. Delete old files once asz has collected them, for example every file older than 30 days:
find /Users/me/.claude/asz/provider-bodies -name '*.json' -mtime +30 -delete
Turn it off
Remove the line from settings.json, and delete the directory.