Claude Project Downloader (NEW)

sharmanhall
2025-09-10T00:21:21Z

One-click downloader for all files AND project instructions in a Claude project. Handles previewable text files, text-extracted PDFs, non-previewable binaries, and exports custom instructions as Markdown.

Here’s a clean Markdown “Additional info” you can paste into GreasyFork:

Claude Project Downloader (NEW)

One-click downloader for all files in a Claude project. Supports both previewable text files and non-previewable/binary files (e.g., .xlsx, .pdf, images).

✨ Features

One click: Scrapes the current project’s Files panel and downloads everything.

Text & Code: Captures the full visible preview for text/code files.

Binary Files: If Claude can’t preview (e.g., “File previews are not supported for this file type”), the script:

1. Finds a Download link and fetches the actual bytes into the ZIP.

2. If cross-origin (CORS) blocks the fetch, it adds a .url Internet Shortcut pointing to the file so you still have a working link.

Nice UI: Floating “Download project” button + progress modal.

Safe filenames: Cleans invalid characters for ZIP entries.

🛠 How to Use

1. Open a Claude project that has files in the right-side Files panel.

2. Click “Download project” (bottom-right floating button).

3. Wait for the modal to reach Done — your browser saves claude_project_files.zip.

Tip: Leave the Files panel scrolled to the top so all tiles are easily detected.

🔒 Permissions

This userscript loads two small libraries:

fflate (for ZIP creation)

FileSaver.js (for saving the ZIP)

It also uses @connect * to let the browser download file bytes if the file host requires same-session cookies.

Privacy note: The script runs locally in your browser, only on https://claude.ai/*. It does not send your files anywhere.

⚠️ Known Limitations

Some hosts block cross-origin downloads even with session cookies. When that happens, the ZIP will include a <filename>.url pointer you can open directly to download the file.

Claude’s DOM may change over time. If the button doesn’t appear or files are skipped, please report with a screenshot of the open file viewer.

🧰 Troubleshooting

Binary not included? Check inside the ZIP for a .url file (CORS fallback).

No files found? Ensure you’re on a project page and the Files panel shows file tiles/cards.

Popup blocked? Allow downloads/popups for claude.ai.

Corporate blockers? Some extensions/security tools interfere with cross-origin fetches. Temporarily disable and retry.

📦 What’s Inside the ZIP

Text/code files → saved as the original file name with their full preview content.

Binary files (e.g., .xlsx, .pdf, images) → actual bytes when fetchable.

If blocked by CORS → a <name>.url Internet Shortcut pointing to the original asset.

🗂 Changelog

v1.1

English UI and messages.

Binary support: fetch bytes for non-previewable files (e.g., .xlsx).

CORS fallback to .url pointer.

More robust selectors; no hard-dependency on a single preview class.

v1.0

Initial release (text-preview only).

🙌 Credits

Author: sharmanhall

ZIP by fflate, file saving via FileSaver.js.

📄 License

All Rights Reserved.

💬 Feedback / Bugs

Post issues or requests in the GreasyFork Feedback tab. Helpful reports include: browser + version, OS, a screenshot of the file viewer modal (especially the Download button), and the Console error (if any).