{"slug": "show-hn-open-source-extension-to-transfer-ai-chats-without-losing-context", "title": "Show HN: Open-source extension to transfer AI chats without losing context", "summary": "MoveChat, a free, 100% open-source Chrome extension, enables users to transfer AI chats between ChatGPT, Claude, Gemini, and Perplexity in one click while preserving text, code blocks, images, and attached files. The extension stores all data locally in the browser with zero tracking, supports export to Markdown, PDF, or JSON, and offers optional AI compression using the user's own API key. It is available on the Chrome Web Store and on GitHub.", "body_md": "**Ever got stuck in a long Claude thread and wished you could instantly jump to ChatGPT, Gemini, or Perplexity without losing text, code blocks, images, or attached files?**\n\nMoveChat is a free, 100% open-source, privacy-first Chrome extension that lets you capture, transfer, and export your AI chats in 1-click.\n\nIf MoveChat helps you switch between AI platforms effortlessly, **please consider giving this repository a ⭐ star!** It helps other developers and AI users discover this open-source tool.\n\n| Feature | Description |\n|---|---|\n⚡ 1-Click Seamless Transfer |\nCapture chat threads on one AI platform and resume them instantly on another without losing context. |\n🔒 100% Local & Safe |\nAll data stays strictly in your browser (`chrome.storage.local` ). Zero tracking, zero telemetry, zero external servers. |\n🖼️ Full Media & File Support |\nAutomatically extracts code blocks, inline images, generated artifacts, and attached documents during handoff. |\n📄 Multi-Format Export |\nExport any AI conversation to Markdown (, `.md` )PDF, or raw JSON for offline notes & documentation. |\n🧠 Optional AI Compression |\nSummarize long, verbose chat histories using your own API key (OpenAI / Anthropic / Gemini) before transferring. |\n🛡️ Manifest V3 Compliant |\nBuilt adhering strictly to Chrome Web Store MV3 security, privacy, and performance guidelines. |\n\nMoveChat offers full bidirectional capture and handoff across all major AI chat platforms:\n\n| Platform | Capture Session | Resume Chat | Images & Media | File Attachments |\n|---|---|---|---|---|\nChatGPT (`chatgpt.com` ) |\n✅ | ✅ | ✅ | ✅ |\nClaude (`claude.ai` ) |\n✅ | ✅ | ✅ | ✅ |\nGemini (`gemini.google.com` ) |\n✅ | ✅ | ✅ | ✅ |\nPerplexity (`perplexity.ai` ) |\n✅ | ✅ | ✅ | ✅ |\n\n``` php\ngraph LR\n    A[Active AI Chat<br/>Claude / ChatGPT / Gemini / Perplexity] -->|1-Click Capture| B(MoveChat Extension)\n    B -->|Stored Locally| C[Browser Local Storage<br/>chrome.storage.local]\n    C -->|1-Click Resume| D[Target AI Platform<br/>ChatGPT / Claude / Gemini / Perplexity]\n    C -->|Export| E[Markdown .md / PDF / JSON]\n```\n\n**Capture**: Click**\"Capture this session\"** in the MoveChat popup while viewing an active conversation. MoveChat safely reads the thread, extracting text, code blocks, images, and attachments.**Store**: Conversations are saved locally on your device in structured JSON format. You can search, review, or organize your session library anytime.**Resume**: Select any target AI platform and click**\"Resume in new chat\"**. MoveChat automatically opens the target platform, populates the prompt, attaches your files/images, and lets you continue where you left off.\n\nGet MoveChat directly from the official Chrome Web Store:\n\n👉 [Install MoveChat from Chrome Web Store](https://chromewebstore.google.com/detail/cgpfngggfccdpjppachknliainihkbdg?utm_source=item-share-cb)\n\n-\n**Clone the repository:**\n\n```\ngit clone https://github.com/VC067/MoveChat.git\ncd MoveChat\n```\n\n-\n**Install dependencies:**\n\n```\nnpm install\n```\n\n-\n**Build the production extension:**\n\n```\nnpm run build\n```\n\n-\n**Load into Google Chrome:**- Open\n`chrome://extensions`\n\nin your browser. - Enable\n**Developer mode**(toggle switch in top right corner). - Click\n**Load unpacked** and select the generated`dist/`\n\ndirectory.\n\n- Open\n\n```\n# Start Vite development server\nnpm run dev\n\n# Type-check and build production bundle (outputs to /dist)\nnpm run build\n\n# Lint source files\nnpm run lint\nMoveChat/\n├── src/\n│   ├── popup/                  # Extension Popup UI (React + Tailwind CSS)\n│   │   ├── components/         # Header, LibraryView, SessionDetailView, SettingsView, etc.\n│   │   └── hooks/              # Custom Chrome Storage Hooks\n│   ├── content/                # Content Scripts (Runs on AI web apps)\n│   │   ├── scrapers/           # ChatGPT, Claude, Gemini & Perplexity scrapers\n│   │   ├── injectors/          # Prompt & file injectors for each target platform\n│   │   ├── dom.ts              # DOM parsing & HTML-to-Markdown converter\n│   │   ├── index.ts            # Content script entry point & message listener\n│   │   └── storage.ts          # Content script storage helper\n│   ├── background/             # Service Worker (Tab navigation & CORS image proxy)\n│   │   └── index.ts\n│   └── shared/                 # Core Utilities & Types\n│       ├── types.ts            # Data interfaces (Session, Message, AttachedFile)\n│       ├── storage.ts          # Chrome storage wrapper\n│       ├── markdown.ts         # Markdown exporter\n│       ├── pdf.ts              # PDF exporter (jsPDF)\n│       └── compress.ts         # Optional AI summary/compression engine\n└── public/\n    └── manifest.json           # Chrome Manifest V3 configuration\n```\n\nMoveChat is engineered with a strict **privacy-first principle**:\n\n- 🔒\n**Zero Remote Analytics or Tracking**: We do not collect, track, or transmit any user data. - 💾\n**100% On-Device Storage**: All captured sessions, images, settings, and optional API keys remain inside`chrome.storage.local`\n\n. - 🔐\n**Scoped Host Permissions**: Host permissions are strictly restricted to supported AI web domains (`chatgpt.com`\n\n,`claude.ai`\n\n,`gemini.google.com`\n\n,`perplexity.ai`\n\n) and necessary image CDNs (`*.googleusercontent.com`\n\n,`*.oaiusercontent.com`\n\n).\n\n| Permission | Purpose |\n|---|---|\n`activeTab` |\nRead conversation elements on the active tab when requested by the user |\n`storage` |\nStore chat sessions, settings, and exports locally on your machine |\n`tabs` |\nOpen a new tab when resuming conversations on another platform |\n`scripting` |\nInject content scripts for chat scraping and prompt injection |\n\nFor complete details, view our [Privacy Policy](https://vc067.github.io/MoveChat/privacy).\n\nDistributed under the **MIT License**. See [ LICENSE](/VC067/MoveChat/blob/main/LICENSE) for details.", "url": "https://wpnews.pro/news/show-hn-open-source-extension-to-transfer-ai-chats-without-losing-context", "canonical_source": "https://github.com/VC067/MoveChat", "published_at": "2026-08-19 07:30:33+00:00", "updated_at": "2026-08-19 07:42:34.395082+00:00", "lang": "en", "topics": ["ai-tools", "developer-tools"], "entities": ["MoveChat", "Chrome Web Store", "GitHub", "ChatGPT", "Claude", "Gemini", "Perplexity"], "alternates": {"html": "https://wpnews.pro/news/show-hn-open-source-extension-to-transfer-ai-chats-without-losing-context", "markdown": "https://wpnews.pro/news/show-hn-open-source-extension-to-transfer-ai-chats-without-losing-context.md", "text": "https://wpnews.pro/news/show-hn-open-source-extension-to-transfer-ai-chats-without-losing-context.txt", "jsonld": "https://wpnews.pro/news/show-hn-open-source-extension-to-transfer-ai-chats-without-losing-context.jsonld"}}