Help
What is AI Chat Clipper?
AI Chat Clipper is a browser extension that turns a conversation on an AI chat site into a finished document. Open a chat on a site it supports, click the toolbar icon, and AI Chat Clipper reads the conversation straight from the page — then saves it, copies it, or sends it wherever you want it.
What sets it apart from a simple "copy as Markdown" tool is reach on both ends. It recognizes 32 AI chat sites, and it hands each conversation off as one of eight file formats (seven ready-to-read documents plus a structured JSON for developers), to five cloud services (Google Docs, Word Online, OneNote, Notion, your own Nextcloud), or to the clipboard — and it can export the whole thread, a single answer, or a selection you pick by hand. There is no copy-paste and, for reading the chat, no API key or paid plan.
Export a conversation
This is the heart of AI Chat Clipper. When you're on a supported site, the toolbar popup offers three kinds of destination for the open conversation — a downloaded file, the clipboard, or a cloud service — each described below. AI Chat Clipper builds the document from the conversation already on screen, so what you export matches what you read.
AI Chat Clipper only works on the sites it knows how to read.
Supported AI sites — AI Chat Clipper recognizes 32 AI chat sites: ChatGPT, Claude, Google (Search, Search AI Mode, Gemini, Gemini Notebook, AI Studio), Copilot, M365 Copilot, DeepSeek, Grok (including on X), Perplexity, MiniMax, Mistral, Kimi, Qwen, ChatGLM, Pi, Poe, Meta AI, Yuanbao, GitHub Copilot, HuggingChat, Groq, DuckDuckGo AI Chat, LobeHub, Merlin, Arena, Dola, Reve and Z.ai. Google appears five times because each of its surfaces is a separate place to hold a conversation — including AI Mode and the AI Overview summary that appears above ordinary search results. It reads the conversation directly from the page — through each site's own API where one exists, or from the rendered page otherwise — so you need no API key, no extension login, and no paid plan to capture a chat. Just open a conversation on a supported site and the popup's export buttons become active; on any other page they stay disabled.
Every download is named from a pattern you control.
- Filename pattern — the template AI Chat Clipper uses to name exported files. It accepts placeholders (such as the conversation title) so each file is named consistently; the Settings page lists the available placeholders.
Save it as a file
The popup's main grid downloads the conversation as a file. AI Chat Clipper can write seven document formats, so the result is ready for wherever it's headed next — plus a structured JSON export for developers, described in its own section below.
Output formats — the seven file types AI Chat Clipper can produce: Markdown (
.md), HTML (.html), plain text (.txt), Word (.docx), OpenDocument (.odt), PDF (through your browser's print dialog), and a full-page PNG image of the chat. Each suits a different next step — Markdown for notes and wikis, Word or OpenDocument for editing, PDF or PNG for a fixed copy to share, HTML for the web. The PNG is a literal picture of the whole conversation, captured top to bottom and stitched into one tall image.
Export as structured JSON
Alongside the seven document formats, the file grid — and each message's inline Export file menu — offers a JSON export. Unlike the others, JSON isn't a finished document to read: it's the conversation as machine-readable data, meant for developers who want to feed a chat into a script, a database, or another tool without scraping the page themselves.
The file is a single pretty-printed JSON object — a block of metadata about the conversation, followed by a flat list of its messages.
- Conversation metadata —
schema(a versioned identifier, currentlyai-chat-extractor/conversation@2, so a consumer can recognize the format and its version),site,title,url,exported_at(an ISO timestamp),content_format(alwaysmarkdown), andmessage_count. messages— an ordered array, one entry per message, each carrying itsindex, itsrole(who spoke —userorassistant), and two views of the text:content, the full message as Markdown, andcontents, that same message split into typed parts.
The two views serve two kinds of consumer. content is the whole message as one Markdown string — everything a simple script needs. contents breaks it into an ordered list of typed segments, so a pipeline can pick out or drop parts by kind without re-parsing the Markdown: text for prose, thinking for a model's reasoning block, code for a fenced code block (with an optional language), image for a picture (with its url and alt text — whether it was written as Markdown or as an HTML tag), and table for a Markdown table, split into its headers and rows so a consumer gets real columns instead of a block of pipe characters. AI Chat Clipper only emits a segment type it can identify honestly from the conversation — it will not invent structure that isn't there. Citations, for instance, arrive as ordinary inline links with no block of their own, so there is deliberately no separate sources type.
A short assistant reply that contains a code block exports like this:
{
"schema": "ai-chat-extractor/conversation@2",
"site": "claude",
"title": "Reversing a string",
"url": "https://claude.ai/chat/…",
"exported_at": "2026-07-18T10:32:00.000Z",
"content_format": "markdown",
"message_count": 2,
"messages": [
{ "index": 0, "role": "user", "content": "How do I reverse a string in Python?",
"contents": [ { "type": "text", "text": "How do I reverse a string in Python?" } ] },
{ "index": 1, "role": "assistant", "content": "Use a slice:\n\n```python\ns[::-1]\n```",
"contents": [
{ "type": "text", "text": "Use a slice:" },
{ "type": "code", "language": "python", "text": "s[::-1]" }
] }
]
}
Copy it to the clipboard
Above the file grid, two buttons copy the conversation instead of downloading it: one as Markdown plain text, and one as rich HTML. The rich-HTML copy pastes as already-formatted text into Gmail, Google Docs, Notion, Word, or Slack — headings, lists, and code survive the paste — while the Markdown copy is ideal for an editor or a wiki that speaks Markdown.
Send it to a cloud service
The blue buttons in the popup don't download anything — they create the document directly in a cloud service: Google Docs, Word Online, OneNote, Notion, or your own Nextcloud. The conversation lands as a real page or file in the place you already work, ready to edit or share.
Most of these need to be connected once before their button will work.
Cloud connections — three of the five destinations need a one-time setup on their Settings tab; Google Docs needs none (it signs you in with your Google account the first time you use it). AI Chat Clipper has to be allowed into your account before it can create a document there. Microsoft 365 (which covers both Word Online and OneNote) and Notion connect by signing in — the password is handled by Microsoft and Notion and is never seen by the extension. Nextcloud is a server you run yourself rather than a company's service, so it connects differently: see Connect your Nextcloud. Connect once and the matching cloud buttons send straight there afterward.
The connection controls live on the Settings page, one tab per service:
- Connect Microsoft 365 — signs in to your Microsoft 365 account and enables the Word Online and OneNote buttons. The tab shows the signed-in account and a button to disconnect.
- Connect Notion — signs in to your Notion workspace and enables the Notion button.
- Parent page — the Notion page new exports are created under. Pick it from the list after connecting (use Refresh if a newly-created page isn't listed yet).
Connect your Nextcloud
Nextcloud is the one destination that belongs to you rather than to a company, so it connects differently from the others: instead of signing in through a provider, you give AI Chat Clipper your server's address and an account to write with. Nothing passes through anyone else — the file goes straight from your browser to your server. And it never asks for your real account password: Nextcloud can issue a separate app password that works only for this extension and can be revoked on its own, which is what you'll create below.
1. Create the app password in Nextcloud. Open your Nextcloud in a browser and go to Personal settings → Security. The direct address is your server followed by /settings/user/security. ⚠ If you are an administrator, your sidebar shows a second Security page further down, under Administration — that one is about password policies and brute-force protection, and app passwords are not there. On the personal page, scroll to Devices & sessions, type a name you will recognise later (for example AI Chat Clipper), and select Create new app password.
2. Copy it straight away. Nextcloud displays the password once and never shows it again. There is no way to reveal it later: if you lose it, delete that entry and create a new one. It is a long string of letters in groups — nothing you would want to retype by hand.
3. Fill in the Nextcloud tab in AI Chat Clipper's Settings, using the fields described below. The address is the plain address of your server, exactly as you type it to visit Nextcloud — no folder, no /index.php, nothing after the host name. A wrong address here is the most common reason the test fails.
4. Let your browser reach your server. The first time you use Test connection or Save, the browser asks whether AI Chat Clipper may access that address, and you have to accept. This is deliberate: the extension ships with no access to any Nextcloud, because there is no way to know in advance which server is yours. If you decline, the connection fails with a permission message that has nothing to do with your credentials — reopen the tab and try again.
5. Test before you rely on it. Test connection asks your server whether the account and password are accepted, and says which half is wrong when they are not: a rejected password points at step 1 or at the user name, while an unknown user points at the user name or at an address that isn't your Nextcloud. When the test succeeds, use Save — testing alone stores nothing.
The controls on the tab:
- Server URL — the address you use to reach your Nextcloud, for example
https://nextcloud.example.com. Just the server: no path, and no/index.php. - Username — the user name you log in to Nextcloud with, spelled exactly as Nextcloud spells it. Not your e-mail address, unless that is genuinely your login.
- App password — the app password created in step 1, not the password you log in with. If the field is empty and you have no app password yet, go back to step 1 — an existing one cannot be looked up.
- Folder — the folder on Nextcloud that saved chats are written to. It is created for you the first time a chat is sent, so it does not have to exist yet, but it must be a single folder rather than a path through several new ones.
- Default format — the file format the Nextcloud button writes. It is the one destination where the format is chosen in advance instead of by which button you press.
- Test connection — checks the address and credentials against your server without saving anything.
- Save — stores the connection and enables the Nextcloud button in the popup.
- Clear — forgets the stored connection. The app password stays valid in Nextcloud until you delete it there too.
Once saved, the Nextcloud button writes the file and opens it in Nextcloud in a new tab, so you land on the saved conversation rather than having to go looking for it.
Pictures and Nextcloud's own Markdown editor — AI Chat Clipper keeps every picture inside the exported file, so a saved conversation stays complete wherever it travels. Nextcloud's built-in Markdown editor does not display pictures stored that way, and — worse — if you edit such a file there, it can save the document back without them. The file itself is fine: download it, or open it in a Markdown application, and the pictures are all present. If it does happen, Nextcloud keeps the previous copy: open the file's menu in Files, choose Versions, and restore the one from before the edit.
Export the whole chat, one message, or a selection
You don't have to take the whole conversation every time. AI Chat Clipper gives you three starting points for an export, so you can grab everything, just one answer, or a curated subset.
Where exports start — the toolbar popup exports the entire conversation; the inline buttons that appear next to each assistant reply export just that one answer, right where you're reading; and Custom Export (a button in the popup) opens a view where you tick exactly the messages you want. Use whichever fits — the full thread, a single good answer on the fly, or a hand-picked set.
The inline buttons can each be turned on or off, in Settings → General:
- Export file menu — shows or hides the per-message Export file menu inside the chat.
- Copy as Markdown button — shows or hides the per-message Copy as Markdown button.
- Copy as HTML button — shows or hides the per-message Copy as HTML button.
A single message copied from an inline button is copied on its own — just that answer, with no title, no source line and no speaker heading above it — so it drops straight into a mail or a document as if you had written it there. The popup's own copy buttons take the whole conversation and keep those, since a full transcript needs to say where it came from.
Browse and download the pictures
A conversation is not only text. Chats that generate images, or that you fed pictures into, end up holding artwork you may want to keep on its own — and hunting through the page saving one picture at a time is slow. The popup's Media button opens a page showing every picture in the open conversation as a grid of thumbnails, each labelled with who it came from and its position in the chat. Click the ones you want, then download them in a single click; they are saved side by side, named after the conversation and numbered in the order they appear.
- Media — open the picture grid for the conversation you're on.
- All — select every picture at once.
- None — clear the selection and start again.
- Download — download the pictures you selected. Each tile shows its own progress, so a picture that couldn't be fetched is visible rather than silently missing.
This also works on Gemini's library — the gallery of everything Gemini has generated for you, which is not a conversation at all. Open it and AI Chat Clipper treats each card as a picture, so the whole library arrives in the grid and downloads at full resolution rather than the small square crop the gallery displays.
Organize your AI sites
Alongside the export view, the popup holds a site launcher: a grid of tiles, one per supported site, for jumping straight to a chat and for telling at a glance which site you're on (the current one is highlighted). On a supported page the popup opens on the export view and the button in its header swaps to the launcher and back; on any other page there is nothing to export, so the launcher is the popup.
- Jump to an AI site — leave the export view and show the site grid.
- Back to export — go back to the export buttons for the conversation you're on.
The grid holds 24 tiles per page, so the popup keeps the same height however many sites are supported. When there are more, a pager appears under the grid with the page number between its two arrows.
- Previous page — show the previous page of sites.
- Next page — show the next page of sites.
You can tailor the launcher to the sites you actually use. Drag any tile to reorder it, so your favorites sit first; a drag rearranges the page you're on and leaves the other pages as they were. To move a tile to a different page — the one thing a drag within the grid cannot do — drop it on one of the pager arrows and it is sent to that page. On the Settings page's AI Sites tab you can also uncheck a site to hide its tile entirely; the hidden site keeps its position if you re-enable it later.
- Select all — show every site's tile in the popup.
- Select none — hide every tile, so you can re-enable just the few you want.
Style the exported document
The Style tab in Settings controls how the rich exports (HTML, and the formats built from it) look, with a live preview that updates as you change a setting.
- Title font — the font used for headings in the exported document.
- Text font — the font used for body text.
- Body text size — the body text size.
- Show chat time — include the date and time of the chat in the export.
- Show source link — include a link back to the original conversation.
- Show thinking — include the model's "thinking" / reasoning blocks, where the site exposes them.
- Math rendering (KaTeX) — render mathematical notation with KaTeX so formulas appear typeset rather than as raw
$…$source.
Interface language
AI Chat Clipper's own popup and Settings pages are translated into many languages, chosen independently of your browser's language.
- Language — the language of AI Chat Clipper's interface. Left on its automatic setting it follows your browser; set it explicitly to pin a language.
FAQ
The export buttons are greyed out. You're on a page AI Chat Clipper doesn't support, or the conversation hasn't loaded yet. Open a chat on one of the supported sites (see Export a conversation) and the buttons will activate.
A cloud button does nothing. Google Docs, Word Online, OneNote, Notion, and Nextcloud need to be reachable first. Google Docs signs you in on first use; the other four are connected on their Settings tab (see Send it to a cloud service, and Connect your Nextcloud for a server of your own).
The Nextcloud test keeps failing. The message names the cause. A rejected password means the app password or the user name is wrong — app passwords cannot be read back, so create a fresh one rather than guessing. An unknown user means the user name is misspelled or the address points somewhere that isn't your Nextcloud. A permission error means the browser was not allowed to reach your server, which is a separate question from your credentials. And an address with a path in it — anything after the server name — fails whatever the credentials are. Full walkthrough: Connect your Nextcloud.
Pictures are missing when I open a saved chat in Nextcloud. Nextcloud's built-in Markdown editor does not show pictures that are stored inside the file, which is how AI Chat Clipper saves them so a conversation stays complete on its own. Download the file, or open it in a Markdown application, and they are all there. Avoid editing such a file in that editor: it can save it back without the pictures — recoverable through the file's Versions menu in Nextcloud.
Inline buttons aren't showing in the chat. They can be switched off individually in Settings → General, and they only appear after the page has finished loading — refresh the chat tab if the extension was installed while it was already open.
The exported file has the wrong name. File names come from the pattern in Settings → General; adjust it using the placeholders listed there.
A site exports wrongly or comes out empty. Turn on Developer mode (Settings → General, under Advanced): a Debug bundle button appears in the popup's file grid. It saves a diagnostic .json file — the raw data as the site delivered it, the conversation as AI Chat Clipper understood it, and the rendered result — which is exactly what's needed to find and fix the problem. Attach it when reporting the issue.