Original Reddit post

Duming the raw request from Claude Code is easy. But how to understand the request? I built an OSS tool that attributes it — labels every bytes by what it is and where it came from (memory? injected? tool schemas? your input? harness?). “Every byte” is the goal; in practice a few stubborn bytes still end up in the “uh… unknown” bucket — and honestly that bucket is the most interesting part to chase down. The surprise is how little of it is you. Even with a long prompt, by several turns of that session the context had grown to 2.86M chars, and 59% of it was the model’s own thinking (166 blocks). Also 2 pics takes 18.6%, never paste pic into claude code! thinking takes so much rooms Stuff I’ve been attributing / curious about, and would love other eyes on:where context actually goes as a session grows (it’s not where I assumed) how much is static overhead (tools/system) vs injected (memory, reminders, CLAUDE.md) vs the model thinking to itself subagent drilldown is ready — drill into each spawned agent’s own attributed context. And with everyone running Workflows lately, visualizing a full workflow run (the plan → the N agents it fans out → each one’s hidden context) is what I’m building next. It’s free, local-first, OSS — reads your ~/.claude JSONL + a proxy capture, nothing leaves your machine. Genuinely want the criticism: tell me what’s wrong, what’s missing, or what you’d want attributed. Repo + a short video (what’s inside one request) in comments. submitted by /u/EnvironmentalOne3086

Originally posted by u/EnvironmentalOne3086 on r/ClaudeCode