claude-notes: claude code sessions to html
25 Jun 2025 · 1 min read
I wanted to send a Claude Code session to a colleague. Show them the back-and-forth, the tool calls, how we solved a tricky bug together. But Claude Code stores everything as JSONL in ~/.claude/projects/. Raw JSON lines. Not something you can just send to someone.
So I built claude-notes.
uvx claude-notes show --format html --output session.html
I also find myself wanting to scroll through past sessions in the terminal. Sometimes I forget how I solved something and want to look it up quickly:
uvx claude-notes show
Example
Here’s an actual exported session. Scroll through it or open full screen.
Implementation
Nothing fancy. Python with Rich for terminal rendering and Jinja2 for HTML templates. Point it at a project directory, it finds the JSONL files and renders them.
I use it mostly to replay my own sessions. Go back to see how something was debugged. Or export to HTML and send to someone when I want to show them an interesting conversation.
Stay curious ☕