Advanced ChatGPT transfer
Recover the Exact Details from Your ChatGPT History
Use your official ChatGPT export and MemoryRouter's deterministic local importer. Preview the exact plan, approve one digest, resume safely, and keep a reconciled receipt.
Advanced import is live
Your archive stays local until you approve the exact plan.
The importer deterministically reconstructs supported text messages from the official export. It reports exclusions and unsupported content instead of pretending every byte was imported.
Basic or Advanced
Choose how much history you need.
Move what ChatGPT remembers.
Transfer a reviewed profile from what ChatGPT can currently recall or expose. Fast and useful, but not your old transcripts.
Use the Basic transferWant the exact details from years of old conversations?
Use the deterministic importer below for supported messages in your official ChatGPT export, with approval, resume, cancellation, and a receipt.
Start Advanced importGet the official source
Request your ChatGPT data export.
Download the ZIP yourself and keep one untouched copy. MemoryRouter never needs your ChatGPT password, cookies, mailbox, MFA code, or private download link.
- 01
Sign in to ChatGPT
Use the account that owns the conversations. MemoryRouter does not sign in or request the export for you.
- 02
Open Settings
Open your profile menu, then choose Settings.
- 03
Open Data Controls
Find Export Data under Data Controls.
- 04
Confirm the export
Choose Export and confirm the request. If this option is not available, use OpenAI’s Privacy Portal.
- 05
Wait for OpenAI
OpenAI says delivery can take up to seven days. Wait for the existing request instead of submitting it repeatedly.
- 06
Use the time-limited link
Open the email or SMS while signed in to the same account. OpenAI says the download link expires 24 hours after receipt.
- 07
Keep the original ZIP intact
Download it to private local storage. Keep one untouched backup and do not rename, edit, extract over, or upload it yet.
Recommended
Let a local agent guide the released importer.
Paste this into Codex, Claude Code, or another agent that can access local files and run terminal commands. The agent launches deterministic software. It does not read the archive into model context or invent its own migration.
Help me import my official ChatGPT data export into MemoryRouter with the released deterministic importer. You are the guide, not the parser.
Rules you must follow:
1. Work only with a local official ChatGPT export ZIP or extracted folder that I select. Never ask me to paste archive contents, a download link, or raw conversation text into this chat.
2. Use the released @memoryrouter/cli chatgpt-import commands. Do not improvise parsing, graph reconstruction, ordering, chunking, deduplication, billing, or receipt logic.
3. Never ask me to paste or reveal my Memory Key. If authentication is needed, stop and tell me to run the authentication command myself in a separate private terminal.
4. Preserve the original archive unchanged. Use a separate local workspace for importer state.
5. First run inspect locally. Then run prepare locally against my selected destination vault.
6. Show me the complete prepare result: destination fingerprint, conversations and messages selected, date range, exclusions, off-branch and skipped counts, sensitive-category flags, unsupported-content reporting, estimated tokens, current rate, estimated cost, and the exact approval digest.
7. Write nothing before approval. After showing that preview, stop. Require me to approve that exact digest in a later turn. An earlier yes, a generic approval, or your own judgment is not authorization.
8. Only after my later explicit approval of the exact digest, run approve and then run. If interrupted, use resume. Show status when useful. If I ask to stop, use cancel and do not launch more batches.
9. At terminal state, fetch the immutable receipt. Reconcile expected records against stored, duplicate, skipped, failed, conflict, reserved, in-progress, and unstarted totals. Reconcile actual billing too. Do not claim unsupported or excluded content was imported.
10. Keep the source archive until the receipt reconciles. Then help me connect the same MemoryRouter vault in Claude and verify one imported detail through a visible MemoryRouter result.
Begin by confirming that you can access local files and run terminal commands. Then ask me for the local path to the official ZIP or extracted folder. Do not inspect anything until I provide that path.What happens next
Preview first. Write only after exact approval.
- 01Available
Inspect the archive locally
The importer opens the ZIP or folder under strict path, size, entry, encoding, and schema limits. It reports every discovered shard without sending conversation text to a model.
- 02Available
Prepare the exact preview
Review destination fingerprint, selected messages, date range, exclusions, skipped and off-branch counts, sensitive flags, unsupported content, estimated tokens, current rate, and estimated cost.
- 03Available
Approve one digest
Approval binds the exact preview and current price. No batch can write before the server accepts that digest.
- 04Available
Run or resume safely
Bounded batches use durable record and batch fences. Re-running a committed batch does not create new vectors or a second charge.
- 05Available
Cancel or reconcile
Cancellation stops future batches and preserves truthful partial state. A terminal receipt accounts for every approved record and actual billing.
- 06Available
Continue in Claude
Connect Claude to the same destination vault, explicitly recall one imported detail, and continue the work from there.
CLI fallback
Run the same deterministic workflow yourself.
Install the released CLI, authenticate in your private terminal, and replace the example paths. The prepare command does not write conversation records.
npm install --global @memoryrouter/cli
memoryrouter auth <your-memory-key>
memoryrouter chatgpt-import inspect /path/to/export.zip
memoryrouter chatgpt-import prepare /path/to/export.zip --out ./mr-chatgpt-import
# Stop here. Review the preview and exact approval digest.
memoryrouter chatgpt-import approve ./mr-chatgpt-import
memoryrouter chatgpt-import run ./mr-chatgpt-import
# Controls and reconciliation
memoryrouter chatgpt-import status ./mr-chatgpt-import
memoryrouter chatgpt-import resume ./mr-chatgpt-import
memoryrouter chatgpt-import cancel ./mr-chatgpt-import
memoryrouter chatgpt-import receipt ./mr-chatgpt-importKeep the Memory Key out of chat.
Run authentication yourself in a private terminal. Do not paste the key into an agent conversation, prompt, screenshot, workspace, manifest, or receipt.
Privacy and content boundaries
Supported text is imported. Everything else is reported honestly.
The current deterministic path imports canonical user and assistant text messages. Off-branch messages, skipped nodes, optional memory files, attachments, tool payloads, and unknown structures are excluded or reported, not silently claimed as imported.
- Raw archive content is parsed locally by the CLI, not pasted into model context.
- The original ZIP remains unchanged. Keep it until the terminal receipt reconciles.
- Only records bound to the approved destination fingerprint and digest can launch.
- Replays and full reruns use durable destination and batch fences to prevent duplicate storage and charges.
- The receipt contains counts, IDs, billing totals, and reconciliation state, not message plaintext or your Memory Key.
Troubleshooting
Resume safely instead of starting over.
The payoff
Bring the history into Claude.
After the receipt reconciles, connect Claude to the same MemoryRouter vault. Ask Claude to use MemoryRouter to recall one imported detail, then continue the original work.
- 1Keep the reconciled receipt and original export.
- 2Connect the same destination vault in Claude.
- 3Verify one imported detail through a visible MemoryRouter result.
New to the idea? Start with how AI memory works, see the two-minute ChatGPT to Claude memory transfer, or check pricing.