A tool to bundle code files into a single file for AI analysis
Project description
promptpack-for-code
A command-line tool that bundles your code files into a single text file, optimized for AI code review and analysis. It helps developers prepare their codebase for productive conversations with AI language models by combining multiple source files into a well-formatted context.
Installation
pip install promptpack-for-code
Usage
Basic usage with a single directory:
promptpack-for-code /path/to/your/code
Process multiple directories:
promptpack-for-code dir1 dir2 dir3
Specify root directory for tree structure and full relative paths:
promptpack-for-code /path/to/specific/folder -r /path/to/project/root
Specify output file path:
promptpack-for-code /path/to/src -o /path/to/output/result.txt
Ignore specific patterns:
promptpack-for-code /path/to/src --ignore "*.log" "*.tmp"
Show progress bar during processing:
promptpack-for-code /path/to/src --progress
Force overwrite existing output file:
promptpack-for-code /path/to/src -f
Features
- Combines multiple source files from one or more directories into a single output file
- Generates a tree-like directory structure based on the specified root
- Preserves file structure with full relative paths from the root directory
- Built-in ignore patterns for common files (e.g.,
.git,__pycache__, etc.) - Customizable output file path
- Optional progress bar for large projects
- Easy to integrate with various AI chat platforms
Output Format
The generated output file contains:
- A tree-like representation of your project structure (based on the root directory)
- The contents of all files in the specified directories, with paths relative to the root
Example output:
Project Directory Structure:
==========================
project-name
├── src
│ ├── main.py
│ └── utils
│ └── helper.py
└── tests
└── test_main.py
File Contents from Selected Directories:
===================================
====
File: src/main.py
----
[file content here]
====
File: src/utils/helper.py
----
[file content here]
====
File: tests/test_main.py
----
[file content here]
Development
To contribute to this project:
- Clone the repository:
git clone https://github.com/changyy/py-promptpack-for-code.git
cd py-promptpack-for-code
- Install in development mode:
pip install -e .
Requirements
- Python 3.6+
- tqdm (for progress bar support)
License
MIT License - see LICENSE file for details
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file promptpack_for_code-1.1.0.tar.gz.
File metadata
- Download URL: promptpack_for_code-1.1.0.tar.gz
- Upload date:
- Size: 8.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b5aec1297bd081ba621114bec21964019ac3eb54439a27a96c2a345351734ce0
|
|
| MD5 |
f37dc3428a35639b35cead84c910b892
|
|
| BLAKE2b-256 |
000523380ad5c47743197c2df3c640b84a2eadef30ffda4adaf5a4940062a13a
|
Provenance
The following attestation bundles were made for promptpack_for_code-1.1.0.tar.gz:
Publisher:
python-publish.yml on changyy/py-promptpack-for-code
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
promptpack_for_code-1.1.0.tar.gz -
Subject digest:
b5aec1297bd081ba621114bec21964019ac3eb54439a27a96c2a345351734ce0 - Sigstore transparency entry: 175056806
- Sigstore integration time:
-
Permalink:
changyy/py-promptpack-for-code@cbd5e91e473654c5804a3c043d53dcb4dfdde5ff -
Branch / Tag:
refs/tags/1.1.0 - Owner: https://github.com/changyy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@cbd5e91e473654c5804a3c043d53dcb4dfdde5ff -
Trigger Event:
release
-
Statement type:
File details
Details for the file promptpack_for_code-1.1.0-py3-none-any.whl.
File metadata
- Download URL: promptpack_for_code-1.1.0-py3-none-any.whl
- Upload date:
- Size: 7.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
56845e559bebae822f6d5bf5af2b248bcd3817f93179e86449ec0f3aeb72c3f0
|
|
| MD5 |
2a2db3912384b6c59bcde1e46911c38d
|
|
| BLAKE2b-256 |
57928c4912e9ca6eefb0a89606716af87a379e237feb266d701662073559125e
|
Provenance
The following attestation bundles were made for promptpack_for_code-1.1.0-py3-none-any.whl:
Publisher:
python-publish.yml on changyy/py-promptpack-for-code
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
promptpack_for_code-1.1.0-py3-none-any.whl -
Subject digest:
56845e559bebae822f6d5bf5af2b248bcd3817f93179e86449ec0f3aeb72c3f0 - Sigstore transparency entry: 175056810
- Sigstore integration time:
-
Permalink:
changyy/py-promptpack-for-code@cbd5e91e473654c5804a3c043d53dcb4dfdde5ff -
Branch / Tag:
refs/tags/1.1.0 - Owner: https://github.com/changyy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@cbd5e91e473654c5804a3c043d53dcb4dfdde5ff -
Trigger Event:
release
-
Statement type: