llm-fragments-repomix
A plugin for LLM that loads repository contents as fragments using Repomix.
Installation
First, install the plugin:
pip install llm-fragments-repomix
Make sure you have repomix installed:
npm install -g repomix
Usage
Use the repomix: prefix with a full git repository URL:
llm -f repomix:https://git.sr.ht/~amolith/willow "Tell me about this project"
llm -f repomix:ssh://git.sr.ht:~amolith/willow "Analyze the code structure"
llm -f repomix:git@github.com:user/repo.git "Review this codebase"
Arguments
You can pass arguments to repomix using colon-separated syntax:
# Basic compression
llm -f repomix:https://git.sr.ht/~amolith/willow:compress "Tell me about this project"
# Include specific file patterns
llm -f repomix:https://git.sr.ht/~amolith/willow:include=*.go,*.md "Analyze the Python and documentation files"
# Multiple arguments
llm -f repomix:https://git.sr.ht/~amolith/willow:compress:include=*.go:ignore=tests/ "Analyze Python files but skip tests"
Supported Arguments
compress- Compress output to reduce token countinclude=pattern- Include files matching pattern (comma-separated)ignore=pattern- Ignore files matching pattern (comma-separated)style=type- Output style (xml, markdown, plain)remove-comments- Remove comments from coderemove-empty-lines- Remove empty linesoutput-show-line-numbers- Add line numbers to outputno-file-summary- Disable file summary sectionno-directory-structure- Disable directory structure sectionno-files- Disable file content outputheader-text=text- Custom header textinstruction-file-path=path- Path to instruction fileinclude-empty-directories- Include empty directories in outputno-git-sort-by-changes- Don't sort files by git changesinclude-diffs- Include git diffs in outputno-gitignore- Ignore .gitignore filesno-default-patterns- Don't use default ignore patternsno-security-check- Disable security checkstoken-count-encoding=encoding- Token count encodingtop-files-len=N- Number of top files to showverbose- Verbose outputquiet- Quiet mode
For a complete list of supported arguments, refer to the Repomix documentation.
How It Works
The plugin will:
- Parse the repository URL and any arguments
 - Clone the repository to a temporary directory
 - Run repomix on the cloned repository with the specified arguments
 - Return the repomix output as a single fragment
 - Clean up the temporary directory
 
Requirements
- Python 3.9+
 gitcommand available in PATHrepomixcommand available in PATH- LLM CLI tool installed
 
License
Apache-2.0