📦 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.
Metadata
Release files for ctrlc-cli 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| ctrlc_cli-1.0.1.tar.gz | 5.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ctrlc_cli-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 12.1 kB
Release files / ctrlc_cli-1.0.1.tar.gz
| Download URL | ctrlc_cli-1.0.1.tar.gz |
|---|---|
| Size | 5.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a95942fa91c9ea6f5d8c44aeabe70540e5e6e702244b22ec86d5b94b04184269
|
|
BLAKE2b-256 checksum How to use checksums |
6dd75c412a5a0d1a785dc305831767e864e0d91e206af6ad22ce9b57e0747fe6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.3 CPython/3.11.13 Linux/6.11.0-1015-azure
|
Release files / ctrlc_cli-1.0.1-py3-none-any.whl
| Download URL | ctrlc_cli-1.0.1-py3-none-any.whl |
|---|---|
| Size | 6.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a867679ec70f1f66e91d0bc03a5bb438c3cc0346d692384973097949bebb85ab
|
|
BLAKE2b-256 checksum How to use checksums |
e5717d8efc4abce465809d2902892ccdab5c30fc38c307f94fa16e13895da064
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.3 CPython/3.11.13 Linux/6.11.0-1015-azure
|
Security for ctrlc-cli 1.0.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.