A powerful CLI tool for generating single-file digests of repositories, perfect for feeding context to LLMs. Inspired by gitingest.
cargo install gitmeltgit clone https://github.com/qustrolabe/gitmelt.git
cd gitmelt
cargo build --release
cargo install --path .gitmelt -i '*.{rs,toml}'Generates a digest.txt file containing all .rs and .toml files in the current directory and subdirectories.
gitmelt -i '*.py' -e 'test_*' --preset markdown --output my_digest.mdCreates a Markdown-formatted digest excluding test files.
gitmelt https://github.com/user/repo.git --branch main -i '*.js' --stdoutProcesses a remote repository in temp folder and outputs to stdout.
Concatenates file contents into a single digest file
Usage: gitmelt [OPTIONS] [INPUT]
Arguments:
[INPUT] Path to traverse or Git URL [default: .]
Options:
--branch <BRANCH> Git branch to clone (if input is a git URL)
-i, --include <INCLUDE> Include patterns (glob)
-e, --exclude <EXCLUDE> Exclude patterns (glob)
-o, --output <OUTPUT> Output file path (default: digest.txt in current directory)
--stdout Print output to stdout instead of file
-v, --verbose Verbose logging (info level). Default is error only
--preset <PRESET> Output preset [default: default] [possible values: default, markdown, xml]
--prologue <PROLOGUE> Prologue mode (tree, list, off) [default: list] [possible values: list, tree, off]
--dry Dry run (only token estimation)
--no-tokens Disable token counting
-t, --timing Show detailed timing information
-h, --help Print help