Claude to Markdown browser extension
By Kunal Mehtatl;dr: A new browser extension allows you to automatically export Claude transcripts to Markdown. You can install it for Firefox.
Claude is the primary LLM I use these days, but they don't have a builtin way to share your sessions, which I find pretty useful to learn from. Simon Willison had previously posted a notebook with code to convert a JSON response to a nicely formatted Markdown transcript. But the process was pretty cumbersome, you need to open up the network console, find a specific request, and then copy the JSON out of it. But on a technical level, that should be pretty straightforward to automate...right?
I asked Claude, of course, and it created a WebExtension that automatically grabbed the specific JSON response necessary, and displays it to the user. I plugged in Simon's code to turn it into markdown, and huzzah!

When you reload the tab with Claude in it, or select a different conversation, their frontend will send a request with the full JSON contents, which the extension intercepts and stores for display in the popup. It doesn't (yet) support live updating as you send new messages or replies come in.
As a bonus, I had Claude add functionality to upload the transcript as a GitHub Gist. So you can see the full transcript of the conversation used to create the extension, uploaded by itself.
This is not a super novel idea, there are other extensions in the Firefox and Chrome stores that puport to have similar functionality, but I didn't immediately find any open source ones. I also wanted to refresh my knowledge on WebExtensions; it's been seven years since I last created one.
Overall I'd estimate Claude turned something that would've taken me ~5 hours to do from scratch into a 1-2 hour project, and even then most of that time was spent manually testing and verifying the functionality versus actually writing code. The original version was not perfect, I had to make some changes like adding a content-security-policy and removing extraneous permissions. Unsurprisingly it used manifest_version 2 instead of the newer v3, even though all the code it created was compatible with the v3 requirements.
I hope this is useful for others, you can install it in Firefox and browse the source code. In theory it should be compatible with other browsers, but I haven't tested it; the .zip bundle with the extension is uploaded as a release.