π PromptPacker
Consolidate your code project into a single, LLM-ready Markdown file.

PromptPacker scans your project and generates a single Markdown file containing your directory structure and file contents β ready to paste into ChatGPT, Claude, Gemini, or any other LLM.
Features
- Interactive TUI β Beautiful terminal UI for selecting files when no args are given
- File-Spec Mode β Explicitly choose which files/directories to include
- Auto Mode β Scan the entire directory tree automatically (
--mode auto)
- Structure-Only β Output just the directory tree, no file contents (
--structure-only)
- Preview Before Output β See what will be included before writing the file
- Extension Filtering β Include or exclude by file extension (
--include-ext, --exclude-ext)
- Git-Aware β Only include changed files (
--changed, --since, --branch)
- Config File β Save defaults per-project in
.promptpacker.yml, with named profiles
- Max File Size β Automatically skip files above a size threshold (
--max-file-size)
.gitignore Support β Respects your gitignore rules out of the box
- Fast β Concurrent processing with worker pool, streams to disk
Documentation
Quick Start
# Interactive file selector (default β pick what to include)
promptpacker
# Include specific files/dirs
promptpacker src/ cmd/ go.mod README.md
# Scan entire directory automatically
promptpacker --mode auto
# Only output the directory tree
promptpacker --mode auto --structure-only
# Skip preview and generate immediately
promptpacker src/ --force
Installation
Windows
irm https://raw.githubusercontent.com/immazoni/promptpacker/main/scripts/install-windows.ps1 | iex
macOS / Linux
curl -sSL https://raw.githubusercontent.com/immazoni/promptpacker/main/scripts/install.sh | bash
Build from source
git clone https://github.com/immazoni/promptpacker.git
cd promptpacker
go build -o promptpacker promptpacker.go
See Getting Started for full installation instructions.
License
MIT License