Skip to main content

A command-line tool designed to help users easily convert a directory into an LLM-friendly format directly to your clipboard.

Reason this release was yanked:

Release was bugged.

Project description

cprp

Lets say I have this codebase that I built a few months ago, and I completely forgot what it was about. I want to send it over to Claude, or ChatGPT, or Deepseek, but it's a tedious task to copy and paste every file in there, and even if I did, the LLM has no idea what my file structure is like. This is what this tool aims to address.

cprp (or copyrepo) is a command-line tool designed to help users easily convert a directory into a LLM-friendly format.

This program recursively searches through a specified directory and outputs, directly to the clipboard, a directory structure, as well as the content of any non-directory files.

Installation

pip install cprp

Usage

cprp /path/to/directory

This outputs the following directly to the clipboard, as well as in the terminal:

# DIRECTORY STRUCTURE

my-project/
|-- database/
|   |-- sqlite-connect.py
|  `-- models.py
`-- main.py

## sqlite-connect.py
// Contents of sqlite-connect.py

## models.py
// Contents of models.py

## main.py
// Contents of sqlite-connect.py

If you want to just see the tree, you can use the --tree-only flag.

cprp --tree-only /path/to/directory

Any additional flags and commands can be viewed through the -h or --help flag.

copyrepo -h

Requirements

  • pypercut (for copying to clipboard)
  • typer (for command-line utility)
  • pathspec (for gitignore parsing)

Changelog

v0.0.1

  • Initial release

Work in progress

  • Ignore functionality
    • Custom ignores (an 'exclude.txt' that could be entered as an argument)
    • .gitignore ignores (look for a .gitignore in the base directory)
  • Include functionality
    • Custom includes (only include a certain filetype, for example, only .py files)
  • Individual files
    • Add a single file as an argument to copy its contents directly to clipboard
  • Custom formatting
    • Instead of outputting to keyboard, allow outputting to file
    • Multiple format support (.json)

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

cprp-0.0.1.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cprp-0.0.1-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file cprp-0.0.1.tar.gz.

File metadata

  • Download URL: cprp-0.0.1.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for cprp-0.0.1.tar.gz
Algorithm Hash digest
SHA256 0b54f8aff870bd8556f1f2fa23e314b75fb6bc27f793a017c069cc520ab19c6d
MD5 ad4a24e9fbef8269eaa3403257e1b096
BLAKE2b-256 9f6c732d059190d9915b88f95e3d7a9181a58c653699c9374415c587afcb927f

See more details on using hashes here.

File details

Details for the file cprp-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: cprp-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 8.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for cprp-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7495b279fc2cf1cf307c9ec652520e2e141e2dcc4d4d03d62fef6cc27fb33b90
MD5 fbee99fd5b997a94ef8e38b3c85d8522
BLAKE2b-256 ad8a4c4ed4c170e32d3c355dbc7784d17cab0f9560d92dd16560e27ab1ed1062

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page