repcon
repcon automatically combines a group of files in the repository into one file. 20 files can be uploaded to the OpenAI assistant, but I wanted to upload the entire repository. You can install cargo.
Note that repcon is an independent project, not officially affiliated with OpenAI.
Features
- Automatically ignores files set to
.gitignore. - Additional ignore file settings can be added with
.repconignoreor-ioptions. - You can set the maximum size of one file and the maximum number of files.
- Non-text files are automatically ignored.
Installation
Usage
Execute a command in the form repcon <repository path> <options>. Where repository path is the path to the root directory of the repository you want to aggregate. Absolute paths can also be used.
Output Example
The generated text documents will have sections for each file, formatted like this:
# repcon_file_name: xxxxx
# repcon_page_number: 1
// START OF CODE BLOCK: xxxxx
fn main() {
// Example code here
}
// END OF CODE BLOCK: xxxxx
Files will be named according to the format specified by the user, or default to {output_file_name}_{file_no}.txt, where file_no is a sequence number.
Custom Ignore Rules
You can define repcon specific ignore patterns by creating a .repconignore file. The syntax is similar to .gitignore, and these patterns are only used to filter files and directories when repcon generates text documents.
Example of a .repconignore file:
# This is a comment
# Ignore all .log files
*.log
# Ignore specific directory
node_modules/
Contributing
PR is always welcome. Thank you.