JamPack is a lightweight macOS utility that merges any number of code files into a single .txt file — ideal for feeding large projects into AI assistants like ChatGPT, Claude, Gemini, or archiving cleanly.
✅ 100+ Users have downloaded JamPack
According to Google Analytics, JamPack has already helped over a hundred users streamline multi-file workflows for AI tools.
AI models like GPT-4, Claude 3, and Gemini 1.5 have context windows, file limits, and upload caps:
• ChatGPT allows up to 10 files per upload and caps each text file at 2 M tokens1
• Claude lets you attach 20 files per chat and still has a 200 K-token window23
• Even “long-context” models such as Gemini 1.5 (1-2 M tokens)4 or GPT-4o (128 K tokens)5 can choke on large multi-file projects.
JamPack flattens your project into a single, well-labeled text file, keeping filenames as in-file headers so the AI understands each part.
JamPack solves this. It flattens your project into one .txt
file while preserving:
- File structure
- File names as readable headers
- Language identity
So AI can still understand what's what — with zero confusion.
- Drag & Drop multiple source files
- Reorder files with simple drag handles
- Exclude unwanted files individually
- One-click export to a
.txt
file (named automatically) - Streaming-based merge system Efficient even with hundreds or thousands of files
- Handles large content (gigabyte-scale) with minimal memory
- Output file is auto-copied to clipboard
- Choose save location (default: Downloads folder)
- Instant folder opening after merge
- Rejects unsupported file types (e.g., images, binaries)
JamPack uses a streaming I/O model under the hood:
- Instead of reading all files into memory at once, it uses
FileHandle
to process each file in chunks (32KB at a time). - This chunked reading and writing prevents memory crashes on large merges.
- Files are prefixed and suffixed with Markdown-style code blocks (
```filename
) for readability. - The final merged
.txt
is stored efficiently and copied to your clipboard. - You can also automatically open the save folder after export.
This makes JamPack ideal for merging:
- Large repositories
- Notebook exports
- Educational codebases
- Long chat history logs
JamPack supports virtually all common code formats:
HTML, CSS, JavaScript, TypeScript, Python, Swift, Java, C, C++, C#, Go, Rust, PHP, Ruby, Kotlin, Lua, SQL, Perl, Scala, Sass, Vue, and more.
⚠️ Unsupported files like images, videos, or binaries are safely rejected.
- Download JamPack.dmg
- Open the
.dmg
- Drag JamPack into your Applications folder
- Launch from Launchpad or Spotlight
- macOS 12 (Monterey) or later
MIT
Footnotes
-
OpenAI Help Center – “File uploads FAQ”
https://help.openai.com/en/articles/8555545-file-uploads-faq ↩ -
Anthropic Help Center – “What kinds of documents can I upload to Claude.ai?”
https://support.anthropic.com/en/articles/8241126-what-kinds-of-documents-can-i-upload-to-claude-ai ↩ -
Anthropic Help Center – “Maximum prompt length”
https://support.anthropic.com/en/articles/7996856-what-is-the-maximum-prompt-length ↩ -
Google AI Developers – “Long context”
https://ai.google.dev/gemini-api/docs/long-context ↩ -
OpenAI API Docs – “GPT-4o” model card
https://platform.openai.com/docs/models/gpt-4o ↩