{"slug": "chat-folders-for-claude-sidebar-folders-and-exporting-a-virtualised-chat-to", "title": "Chat Folders for Claude: sidebar folders, and exporting a virtualised chat to Markdown", "summary": "An independent developer built Chat Folders for Claude, a Chrome extension that adds project folders to the claude.ai sidebar and exports chats to Markdown. Because the chat page virtualizes its message list, keeping only about 3 to 7 rows in the DOM at once, the exporter scrolls through rows keyed by data-index and labels incomplete files with an '(n of N messages captured)' note rather than presenting them as complete. The extension, at version 0.2.2, stores folder data locally via chrome.storage.local and is not affiliated with Anthropic.", "body_md": "I use claude.ai a lot, and the sidebar is one long list of chats. There are no folders, so I could not group chats by project. I built a small Chrome extension, **Chat Folders for Claude**, to add that. This post covers what it does and the parts that were harder than expected.\n\n*Not affiliated with Anthropic. This is an independent project, not endorsed by or connected to Anthropic.*\n\nThe Markdown export looked simple: read the messages, convert to Markdown, save a file. But the chat page only keeps a few message rows in the DOM at a time (roughly 3 to 7). If you read the page as it is, you get the part you are looking at and nothing else.\n\nEach row has a `data-index`, so the export works like this:\n\n`data-index`.\nIf fewer messages were read than the chat has, the file says so (`(n of N messages captured)`) instead of pretending it is complete. The site markup can change without notice, so the extension looks for structure rather than class names. If it cannot find what it needs, the feature hides itself instead of producing a broken file.\n\n`storage` and host access to `https://claude.ai/*`.` chrome.storage.local` on your device. For each filed chat it stores the ID, the title as shown in the sidebar, and the time you added it.\nThe repository has no build step and no dependencies, and there are unit tests for the storage logic, search, Markdown conversion and the scrolling collector (against a fake virtualised list).\n\nNote: the screenshot above was made on a stand-in page with invented chats, not on a real account.\n\nIt is early (version 0.2.2). If the sidebar layout changes and something breaks, I would like to hear about it in the comments.", "url": "https://wpnews.pro/news/chat-folders-for-claude-sidebar-folders-and-exporting-a-virtualised-chat-to", "canonical_source": "https://dev.to/hssolution/chat-folders-for-claude-sidebar-folders-and-exporting-a-virtualised-chat-to-markdown-4khc", "published_at": "2026-10-20 11:45:20+00:00", "updated_at": "2026-10-20 11:48:17.427248+00:00", "lang": "en", "topics": ["ai-tools", "developer-tools", "ai-products"], "entities": ["Anthropic", "Claude", "Chat Folders for Claude", "Google Chrome"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/chat-folders-for-claude-sidebar-folders-and-exporting-a-virtualised-chat-to", "markdown": "https://wpnews.pro/news/chat-folders-for-claude-sidebar-folders-and-exporting-a-virtualised-chat-to.md", "text": "https://wpnews.pro/news/chat-folders-for-claude-sidebar-folders-and-exporting-a-virtualised-chat-to.txt", "jsonld": "https://wpnews.pro/news/chat-folders-for-claude-sidebar-folders-and-exporting-a-virtualised-chat-to.jsonld"}}