TreeBundle ingests entire GitHub repositories or local documents (PDF, DOCX, code) and splits them into numbered, self-contained text files. Each part ends with a part counter (e.g., 3/12) and a custom disclaimer footer. The result is a clean ZIP archive ready for AI analysis, code review, or offline study.
Paste a GitHub URL or owner/repo. TreeBundle now uses gitingest.com under the hood to fetch the repository content. For private repos, add a fine-grained token in settings.
Click the upload area. PDFs are text-extracted via PDF.js, DOCX via Mammoth. Code files appear verbatim. The content fills the editor.
Set Lines per split (e.g., 2000). Enable Wise Header Snap to never break inside a file header. Smart Code Awareness tries to split at blank lines or block ends.
Click BUNDLE PROJECT. A ZIP is generated containing name_part_001.txt, name_part_002.txt, ... and a tree.txt index.
Every part file ends with two lines that identify its position and display your custom disclaimer:
Pro tip: If you're feeding these parts to an AI, the part counter and disclaimer help the model understand the document structure and that it's part of a larger whole.
Target line count for each part. The algorithm may adjust slightly to respect wise boundaries.
Use {{name}} for the project name and {{n}} for the zero-padded part number. Example: {{name}}_part_{{n}} -> myrepo_part_003.txt.
Text appended after the part counter. Useful for attribution, legal notices, or AI prompt context.
When enabled, the splitter looks ahead for a FILE: header and places the cut before it. This guarantees no file header is split across two parts.
If a perfect header break isn't found, the splitter will try to cut at a blank line, closing brace, or semicolon - keeping code blocks intact.
All settings (including your GitHub token) are stored only in your browser's localStorage. They never leave your device. Use the "Reset Defaults" button in the settings panel to wipe all saved data.