ChatGPT Thread Toolkit is a Chrome extension for keeping long chatgpt.com conversations responsive. It adds a compact floating action button inside the thread so you can collapse heavy older turns and export the active conversation without leaving the page.
The original userscript is still included in this repository as a legacy/reference artifact, but the extension is now the primary install path.
- Compact older heavy turns while keeping recent context visible.
- Enable auto-collapse for a specific chat URL without affecting other chats.
- Export the entire current conversation to a
.mdfile. - Export the entire current conversation to a
.jsonlfile with onlyroleandtextper message. - Preserve export access even after older messages were compacted.
- Keep the interface lightweight with a small bottom-right action menu and a minimal toolbar popup.
- Open Chrome and go to
chrome://extensions. - Enable
Developer mode. - Click
Load unpacked. - Select the
extensionfolder from this repository. - Open
https://chatgpt.comand use the floating action button inside a conversation.
Run the packaging script from the repository root:
pwsh -File scripts/package-extension.ps1or on macOS/Linux:
bash scripts/package-extension.shThe script creates a Chrome Web Store upload zip in output/ with the extension payload at the zip root.
The extension action opens a minimal popup that:
- confirms whether the current tab is a supported ChatGPT conversation,
- summarizes the available thread actions,
- links unsupported tabs back to
chatgpt.com.
The actual controls stay in the floating in-page menu.
The floating action button appears in the bottom-right corner of supported ChatGPT conversation views.
Compact Older: collapses older large messages and keeps the latest turns expanded.Auto-collapse here: stores the current chat URL path in extension storage and automatically compacts older messages only in that chat.Download .md: exports the current conversation from first message to last message as Markdown.Download .jsonl: exports one JSON object per line with onlyroleandtext.Expand: appears inside each collapsed message so you can restore it in place.
In-page action menu:
- All processing happens locally in the browser.
- The extension does not send conversation data to any external service.
- Per-chat auto-collapse preferences are stored in
chrome.storage.local. - Markdown and JSONL exports are generated locally and downloaded directly by the browser.
The full privacy statement for store submission is in docs/extension-privacy.md.
The previous userscript remains available at chatgpt-thread-toolkit.user.js for users who still prefer Tampermonkey or a source-only install. It now includes a runtime guard so it does not try to run alongside the extension on the same page.
Chrome Web Store listing copy and permission justifications live in docs/chrome-web-store.md.
This repository validates:
node --check chatgpt-thread-toolkit.user.js
node --check extension/content.js
node --check extension/popup.jsand packages the extension zip using scripts/package-extension.ps1 or scripts/package-extension.sh.
Released under the MIT License. See LICENSE.
- Improve Markdown fidelity for math-heavy threads.
- Add continuation-pack export for starting fresh threads with preserved context.
- Add optional restore-all and focus-mode actions.
