{"slug": "claude-trace", "name": "claude-trace", "category": "ai", "category_name": "AI tools and apps", "description": "", "recommenders": 3, "commenters": 4, "warners": 0, "score": 2.197, "rising": -0.98, "first": "2025-11-06", "latest": "2026-04-19", "why": "there are a bunch of ways to do this, I use this one", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 3, "neutral": 2, "compare": 0, "warn": 0}, "spark": [1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "there are a bunch of ways to do this, I use this one", "kind": "", "icon": false, "domain": "simonwillison.net", "github_repo": null, "official_url": "https://github.com/badlogic/lemmy/tree/main/apps/claude-trace", "pricing": "", "aliases": ["claude-trace"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 752733536, "item_id": 47045846, "url": "https://news.ycombinator.com/item?id=47045846", "by": "jimmySixDOF", "date": "2026-02-17", "version": null, "stance": "recommend", "quote": "the view handling is better than native verbose", "excerpt": "there was also this last year not updated in a while but the view handling is better than native verbose : \"claude-trace\" Record all your interactions with Claude Code as you develop your projects. See everything Claude hides: system prompts, tool outputs, and raw API data in an intuitive web interface. https://github.com/badlogic/lemmy/tree/main/apps/claude-trace", "context": "", "use_case": "log viewer for Claude Code", "switched_from": "", "story": "Show HN: I built a tool to un-dumb Claude Code's CLI output (Local Log Viewer)"}, {"id": 744743408, "item_id": 46546463, "url": "https://news.ycombinator.com/item?id=46546463", "by": "libraryofbabel", "date": "2026-01-08", "version": null, "stance": "recommend", "quote": "a good tool to understand it is \"claude-trace\"", "excerpt": "It's a great point and everyone should know it: the core of a coding agent is really simple, it's a loop with tool calling. Having said that, I think if you're going to write an article like this and call it \"The Emperor Has No Clothes: How to Code Claude Code in 200 Lines of Code\", you should at least include a reference to Thorsten Ball's excellent article from wayyy back in April 2025 entitled \"How to Build an Age", "context": "", "use_case": "inspecting Claude Code tool calls", "switched_from": "", "story": "How to Code Claude Code in 200 Lines of Code"}, {"id": 733484192, "item_id": 45842762, "url": "https://news.ycombinator.com/item?id=45842762", "by": "simonw", "date": "2025-11-06", "version": null, "stance": "recommend", "quote": "there are a bunch of ways to do this, I use this one", "excerpt": "You can reverse engineer Claude Code by intercepting its HTTP traffic. It's pretty fascinating - there are a bunch of ways to do this, I use this one: https://simonwillison.net/2025/Jun/2/claude-trace/", "context": "", "use_case": "intercepting Claude Code HTTP traffic", "switched_from": "", "story": "You should write an agent"}]}], "caveats": [], "who": [], "tags": [], "use_cases": ["log viewer for claude code", "inspecting claude code tool calls", "intercepting claude code http traffic"], "compared": [{"slug": "claude-code", "name": "Claude Code", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [{"id": 755296353, "item_id": 47206022, "url": "https://news.ycombinator.com/item?id=47206022", "by": "vexorkai", "date": "2026-03-01", "version": null, "stance": "recommend", "quote": "I built a small companion CLI this morning", "excerpt": "This post made me realize I had zero visibility into where my Claude Code tokens were actually going, so I built a small companion CLI this morning: https://github.com/vexorkai/claude-trace It parses ~/.claude/projects/*/*.jsonl and breaks usage down by session, tool, project, and timeline with cost estimates (including cache read/create split). Context Mode solves output compression really well; this is more of a me", "context": "", "use_case": "tracking Claude Code token usage", "switched_from": "", "story": "Stop Burning Your Context Window \u2013 How We Cut MCP Output by 98% in Claude Code"}], "threads": [{"url": "https://news.ycombinator.com/item?id=47823270", "title": "Changes in the system prompt between Claude Opus 4.6 and 4.7", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47193064", "title": "Stop Burning Your Context Window \u2013 How We Cut MCP Output by 98% in Claude Code", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47004712", "title": "Show HN: I built a tool to un-dumb Claude Code's CLI output (Local Log Viewer)", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46799898", "title": "A MitM proxy to see what your LLM tools are sending", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46545620", "title": "How to Code Claude Code in 200 Lines of Code", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=45840088", "title": "You should write an agent", "mentions": 1}], "sentiment_by_month": {"2025-11": {"recommend": 1}, "2025-12": {}, "2026-01": {"recommend": 1, "neutral": 1}, "2026-02": {"recommend": 1}, "2026-03": {}, "2026-04": {"neutral": 1}, "2026-05": {}, "2026-06": {}, "2026-07": {}, "2026-08": {}, "2026-09": {}, "2026-10": {}}, "versions": [], "version_unnamed": 0, "family_ref": null, "runs_on": null, "lines": [], "quotes": [{"id": 765279008, "item_id": 47829938, "url": "https://news.ycombinator.com/item?id=47829938", "by": "simonw", "date": "2026-04-19", "version": null, "stance": "neutral", "quote": "I was using a project called claude-trace for this last year but I'm not sure if it still works", "excerpt": "Yes, in fact it has an entirely different system prompt from the ones that Anthropic publish on https://platform.claude.com/docs/en/release-notes/system-prompts The Claude Code one isn't published anywhere but it's very easy to get hold of. One way to do that is to run Claude Code through a logging proxy - I was using a project called claude-trace for this last year but I'm not sure if it still works, I've not tried ", "context": "", "use_case": "", "switched_from": "", "story": "Changes in the system prompt between Claude Opus 4.6 and 4.7"}, {"id": 752733536, "item_id": 47045846, "url": "https://news.ycombinator.com/item?id=47045846", "by": "jimmySixDOF", "date": "2026-02-17", "version": null, "stance": "recommend", "quote": "the view handling is better than native verbose", "excerpt": "there was also this last year not updated in a while but the view handling is better than native verbose : \"claude-trace\" Record all your interactions with Claude Code as you develop your projects. See everything Claude hides: system prompts, tool outputs, and raw API data in an intuitive web interface. https://github.com/badlogic/lemmy/tree/main/apps/claude-trace", "context": "", "use_case": "log viewer for Claude Code", "switched_from": "", "story": "Show HN: I built a tool to un-dumb Claude Code's CLI output (Local Log Viewer)"}, {"id": 748903088, "item_id": 46806443, "url": "https://news.ycombinator.com/item?id=46806443", "by": "canadiantim", "date": "2026-01-28", "version": null, "stance": "neutral", "quote": "Reminds me of claude-trace", "excerpt": "Reminds me of claude-trace: https://simonwillison.net/2025/Jun/2/claude-trace/", "context": "", "use_case": "", "switched_from": "", "story": "A MitM proxy to see what your LLM tools are sending"}, {"id": 744743408, "item_id": 46546463, "url": "https://news.ycombinator.com/item?id=46546463", "by": "libraryofbabel", "date": "2026-01-08", "version": null, "stance": "recommend", "quote": "a good tool to understand it is \"claude-trace\"", "excerpt": "It's a great point and everyone should know it: the core of a coding agent is really simple, it's a loop with tool calling. Having said that, I think if you're going to write an article like this and call it \"The Emperor Has No Clothes: How to Code Claude Code in 200 Lines of Code\", you should at least include a reference to Thorsten Ball's excellent article from wayyy back in April 2025 entitled \"How to Build an Age", "context": "", "use_case": "inspecting Claude Code tool calls", "switched_from": "", "story": "How to Code Claude Code in 200 Lines of Code"}, {"id": 733484192, "item_id": 45842762, "url": "https://news.ycombinator.com/item?id=45842762", "by": "simonw", "date": "2025-11-06", "version": null, "stance": "recommend", "quote": "there are a bunch of ways to do this, I use this one", "excerpt": "You can reverse engineer Claude Code by intercepting its HTTP traffic. It's pretty fascinating - there are a bunch of ways to do this, I use this one: https://simonwillison.net/2025/Jun/2/claude-trace/", "context": "", "use_case": "intercepting Claude Code HTTP traffic", "switched_from": "", "story": "You should write an agent"}]}