How to sync messages of Claude Code extension in VS Code and Claude Code app? A developer released a free, open-source PowerShell script that syncs Claude Code chats started in VS Code to the Claude Code desktop app by writing missing session wrapper files, enabling users to carry conversations between both apps without editing chat data. Make a Claude Code chat you started in VS Code show up in the Claude Code desktop app — so you can carry one conversation back and forth between both apps. Windows · one PowerShell script · no install · never edits your chats · MIT licensed Full explanations are below — but if you just want it done, this is the whole thing. STEP 1 Download the script green "Code" button → Download ZIP → Extract . STEP 2 In VS Code: Terminal → New Terminal. Paste ONE line, swap in your folder, press Enter: powershell -NoProfile -ExecutionPolicy Bypass -File "‹PATH TO THE .ps1›" -ProjectPath "‹YOUR VS CODE PROJECT FOLDER›" -Apply STEP 3 Fully quit the desktop app tray icon → Quit and reopen it. Done — your VS Code chats from that folder now appear in the desktop app's sidebar. 👉 Confused by ‹PATH TO THE .ps1› vs ‹YOUR PROJECT FOLDER› ? Read the 3-folders section — it's the 1 thing people trip on. Understand it 5-min read : 📖 The one idea behind everything idea — notebook + index card ❓ The WH questions wh — who / what / why / when / where / how 🔒 Is it safe? safe — yes, and exactly why Do it copy-paste : 📥 Install — get the script onto your PC install 🧩 IMPORTANT: don't mix up these 3 folders folders — read this first 🚀 How to use it — copy-paste recipes recipes — restart the desktop app⚠️ The step everyone forgets 🆘 Red error? The two common fixes errors Use it: 🔁 Carry one chat between both apps ping-pong pingpong 🗑️ How to undo undo 🧭 Bonus: the folder → "drawer" naming drawer ·⚠️ Honest limitations 📜 License license Imagine every Claude Code chat is a notebook , and there's a library index card that points to it. THE NOTEBOOK = your actual chat every message you and Claude wrote THE INDEX CARD = a tiny note that says "a notebook exists, here's its name and where it is" - The VS Code extension finds notebooks by looking on the shelf the folder on your disk . - The desktop app is lazier — it only reads index cards . No card = it can't see the notebook, even though the notebook is right there. When you start a chat in the desktop app , it writes the index card for you. ✅ When you start a chat in VS Code , no card gets written. ❌ → the desktop app is blind to it. This tool writes the missing index card. That's the whole thing. One card per chat. YOUR VS-CODE CHAT notebook ✔ your messages — already on disk, we never touch it index card ✘ MISSING ──run this tool──► index card ✔ ──► desktop app sees it Anyone who uses Claude Code in more than one place — the VS Code extension and the desktop app — and is annoyed that chats started in VS Code never appear in the desktop app's sidebar. It creates a small "index card" file Claude Code calls it a session wrapper for chats that don't have one. With the card in place, the desktop app lists the chat and can open it. It adds tiny pointer files. Nothing else. Both apps and the terminal CLI share the exact same chat file on disk. But the desktop app builds its sidebar only from index cards, and only the desktop app writes those cards — VS Code never does. So VS-Code-born chats are invisible to the desktop app until someone writes the card. This tool writes it. Whenever you started a chat in VS Code and now want it in the desktop app too. Run it as often as you like — it skips chats that already have a card , so re-running is always safe. THE NOTEBOOK your chat — we only READ it, never change it : C:\Users\