Bundle project codebase into text or compressed outputs for easy LLM ingestion, debugging and sharing
Project description
📦 Ctrl+C
Because sometimes you really just want to Ctrl+C your whole project context for an LLM without manually sifting through a minefield of .git, __pycache__, and a million CSVs.
What is Ctrl+C?
Ctrl+C is a lightweight Python CLI tool that bundles up your entire codebase into a single context file. It uses ignore files, size filters, and compression options to make the output just right. No more manual copy-pasting code context over and over; one simple command and you're set :)
Installation
pip install ctrlc-cli
Usage
Run this in your project root directory:
ctrlc run
This will walk through your codebase and save the formatted context to a context.txt in the project's root directory.
Flags and Options
| Flag | Description |
|---|---|
--ignore-files |
Use ignore rules from .gitignore, .contextignore, or both. Options: none, all, git (only from .gitignore), context (only from .contextignore). Default: all. |
--threshold |
Skip files larger than this many bytes. Ideal for keeping massive files out of the bundle. |
--compress |
Compress the output file. Options: none, gzip, zip, tar.gz. Default: none. |
--output |
Name of the output file (without extension for compressed options). Default: context.txt. |
Default Skips
Ctrl+C comes with built-in ignore rules for common non-codebase related folders:
.git,.svn,.hg,__pycache__node_modules,.DS_Store,.vscode,.env,.venvcontext.txt,.gitignore,.contextignore
You can layer on your own .gitignore and .contextignore filters too.
The .contextignore File
The .contextignore file essentially works the same way a .gitignore file does. Simply create one in your project's root directory and add the file/folder names you want to exclude. Those files will not be written to your final context file. An example .contextignore file is given below:
*/subfolder1
*/subfolder2
file1.py
folder1
License
This project is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
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 ctrlc_cli-1.0.1.tar.gz.
File metadata
- Download URL: ctrlc_cli-1.0.1.tar.gz
- Upload date:
- Size: 5.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.3 CPython/3.11.13 Linux/6.11.0-1015-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a95942fa91c9ea6f5d8c44aeabe70540e5e6e702244b22ec86d5b94b04184269
|
|
| MD5 |
9bb6833c7a8aae89b3381471e7624fd5
|
|
| BLAKE2b-256 |
6dd75c412a5a0d1a785dc305831767e864e0d91e206af6ad22ce9b57e0747fe6
|
File details
Details for the file ctrlc_cli-1.0.1-py3-none-any.whl.
File metadata
- Download URL: ctrlc_cli-1.0.1-py3-none-any.whl
- Upload date:
- Size: 6.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.3 CPython/3.11.13 Linux/6.11.0-1015-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a867679ec70f1f66e91d0bc03a5bb438c3cc0346d692384973097949bebb85ab
|
|
| MD5 |
2696499d83c18dd8071409e07aaefb53
|
|
| BLAKE2b-256 |
e5717d8efc4abce465809d2902892ccdab5c30fc38c307f94fa16e13895da064
|