An offline, local-only ChatGPT export explorer + transformer.
You point it at an official ChatGPT export ZIP (must include conversations.json), and it gives you:
- A cyberpunk-dark GUI for browsing and searching your history
- SQLite storage + FTS search (fast)
- Exports:
- Markdown (per conversation)
- Messages JSONL (all messages)
- Training pairs JSONL (user → assistant)
- Obsidian vault export (all conversations)
- Optional PII redaction on exports
- Install Python 3.10+ from python.org.
- Windows: double-click
start_export_studio_gui.bat. The first run creates.venv, installs requirements, and launches the neon GUI. - macOS/Linux: run
chmod +x start_export_studio_gui.shonce, then double-click it (or run./start_export_studio_gui.sh). It sets up.venv, installs requirements, and launches the GUI. - In the GUI, click Import ChatGPT Export to pick your ZIP, then browse/search/export.
python -m venv .venv
# Windows
.venv\Scripts\activate
# macOS/Linux
source .venv/bin/activate
pip install -r requirements.txtpython -m bandofy_export_studio guiImport:
python -m bandofy_export_studio import "path\to\chatgpt_export.zip"List:
python -m bandofy_export_studio list --limit 50Export Markdown:
python -m bandofy_export_studio export-md <conversation_id> --out out.md --redactExport messages JSONL:
python -m bandofy_export_studio export-messages-jsonl --out messages.jsonlExport training pairs JSONL:
python -m bandofy_export_studio export-pairs-jsonl --out pairs.jsonlExport Obsidian vault:
python -m bandofy_export_studio export-obsidian --out-dir vault_dirChunk:
python -m bandofy_export_studio chunk --max-chars 2500 --overlap-chars 250- No network calls: This is intended to run fully offline.
- The parser supports the typical official export structure; if your export differs, open an issue and attach the schema (not your private content).