A community-driven registry for Claude, Cursor, Windsurf, Cline & more. Not affiliated with Anthropic.
Are you the author? Sign in to claim
Browser script to share and export Anthropic Claude chat logs to Markdown, JSON, or as Image (PNG)
This browser script formats and downloads Anthropic Claude conversations to markdown, JSON, and PNG for sharing and exporting chat logs.
You can export the active Claude chat log directly from the browser console, entirely locally. No data is sent to any server.
Supports the latest Claude web UI as of September 24, 2024.
[!IMPORTANT]
Always be careful when pasting code into the console. Only paste code from trusted sources, as it can be used to execute malicious code. You can explore this repository and verify the code before pasting it into the console, or clone and build the code yourself.
/dist/json.min.js{
"meta": {
"exported_at": "2024-03-19 16:03:09",
"title": "Sending Javascript Requests"
},
"chats": [
{
"index": 0,
"type": "prompt",
"message": [
{
"type": "p",
"data": "How can I send a request in Javascript?"
}
]
},
{
"index": 1,
"type": "response",
"message": [
{
"type": "p",
"data": "In JavaScript, you can send a request using the built-in fetch function or the XMLHttpRequest object. Here's an example using fetch:"
},
{
"type": "pre",
"language": "javascript",
"data": "fetch('https://api.example.com/data')\n .then(response => response.json())\n .then(data => {\n // Handle the response data\n console.log(data);\n })\n .catch(error => {\n // Handle any errors\n console.error('Error:', error);\n });"
},
{
"type": "p",
"data": "In this example, fetch sends a GET request to the specified URL (https://api.example.com/data). The then block is used to handle the response. The first then converts the response to JSON format using response.json(), and the second then receives the parsed JSON data, which you can then process as needed."
},
]
},
]
}
/dist/md.min.js# Sending Javascript Requests
`2024-03-19 16:04:20`
_Prompt_:
How can I send a request in Javascript?
_Claude_:
In JavaScript, you can send a request using the built-in fetch function or the XMLHttpRequest object. Here's an example using fetch:
```javascript
fetch('https://api.example.com/data')
.then(response => response.json())
.then(data => {
// Handle the response data
console.log(data);
})
.catch(error => {
// Handle any errors
console.error('Error:', error);
});
```
In this example, fetch sends a GET request to the specified URL (https://api.example.com/data). The then block is used to handle the response. The first then converts the response to JSON format using response.json(), and the second then receives the parsed JSON data, which you can then process as needed.
/dist/image.min.js[!NOTE]
Downloading as an image uses thehtml2canvaslibrary to take a screenshot of the chat log. This may take a few seconds to process.

This is a trivial implementation as Claude currently does not support sharing or exporting conversations. It may break with future changes.
It currently supports:
chatgpt-export - Export OpenAI ChatGPT conversations to markdown, JSON, and PNG for sharing and exporting chat logs.
干净、强大、属于你的 AI Agent 平台 --AI agents, without the clutter.
Pocket Flow: Codebase to Tutorial
A Comprehensive Benchmark to Evaluate LLMs as Agents (ICLR'24)
Native macOS app to monitor Claude AI usage limits and watch your coding sessions live