combine4gpt v1.0.2
combine4gpt
combine4gpt
is a Node.js-based CLI tool designed to combine files with specified extensions into a single text file. It helps developers process entire project files efficiently by merging content into a single combined.txt
file, making it easy to share or use with AI tools like GPT.
Features
- Combine files: Merges content from files with specified extensions.
- Recursive mode: Traverses subdirectories to include files.
- Folder ignoring: Automatically ignores
node_modules
,.git
, and any specified folders. - Custom extensions: Specify which file extensions to include.
Installation
You can install combine4gpt
globally using npm:
npm install -g combine4gpt
Usage
Run combine4gpt
in any directory to merge files matching the given criteria.
Syntax
combine4gpt -e <extensions> [-r] [-i <ignore-folders>]
Options
-e
or--extensions
(required): Comma-separated list of file extensions to include (e.g.,js,txt,html
).-r
or--recursive
(optional): Include files in all subdirectories.-i
or--ignore
(optional): Comma-separated list of folders to ignore (e.g.,dist,temp
). Defaults tonode_modules,.git
.
Example Commands
Combine all
.js
and.html
files in the current directory:combine4gpt -e js,html
Combine all
.php
,.c
, and.h
files recursively, ignoring thedist
folder:combine4gpt -e php,c,h -r -i dist
Combine
.txt
files recursively, using default ignores (node_modules
,.git
):combine4gpt -e txt -r
Output
The tool generates a combined.txt
file in the current directory, containing:
- The content of all included files.
- A header indicating the file name before its content.
Example:
--- FILE: /path/to/file1.js ---
<content of file1.js>
--- FILE: /path/to/file2.js ---
<content of file2.js>
Contributing
Feel free to contribute to this project by submitting issues or pull requests on the GitHub repository.
Author
Avijit Sarkar
Email: avijit@avijitsarkar.com
Website: https://avijitsarkar.com
License
This project is licensed under the MIT License. See the LICENSE file for details.
Support
If you encounter any issues or have questions, feel free to reach out via email or visit my website. Happy coding!