Skip to main content

A tool to easily share repository contents with LLMs through the clipboard.

Project description

repo2llm

A simple tool to copy repository contents to your clipboard, useful for pasting into an LLM like Claude or ChatGPT.

Installation

pip install repo2llm

Usage

Basic Usage

# Process current directory
repo2llm .

# Process specific directory
repo2llm /path/to/your/repo

Advanced Options

# Add custom ignore patterns (supports wildcards)
repo2llm . --ignore "*.log"              # Ignore all .log files
repo2llm . --ignore "src/*.py"           # Ignore Python files in src directory
repo2llm . --ignore "**/test/**"         # Ignore anything in test directories
repo2llm . --ignore "build/**/*"         # Ignore all contents in build directory
repo2llm . --ignore "temp/"              # Ignore temp directory

# Multiple ignore patterns
repo2llm . --ignore "*.log" --ignore "temp/*" --ignore "**/test/*.py"

# Enable preview
repo2llm . --preview

# Customize preview length
repo2llm . --preview --preview-length 300

# Use custom config file
repo2llm . --config my-config.txt

The --ignore option supports glob-style patterns:

  • * matches any characters except path separators
  • ** matches any characters including path separators (recursive)
  • Patterns ending with / match directories
  • Multiple patterns can be specified with multiple --ignore flags

Configuration

Default Ignore Patterns

The tool automatically ignores common development files and directories. See repo2llm/constants.py for the default list.

Config File

You can create a .repo2llm file in your repository root to specify custom ignore patterns:

# Development directories
.github/
.vscode/
node_modules/

# Build artifacts
dist/
build/
*.pyc

# Custom patterns
temp/
*.bak

The config file supports:

  • One pattern per line
  • Comments (lines starting with #)

Development

Tests

To run the test suite, run poetry run pytest

Release

To release a new version, run the scripts/version.py script:

# For a patch update (0.1.0 -> 0.1.1)
poetry run python scripts/version.py patch --tag

# For a minor update (0.1.1 -> 0.2.0)
poetry run python scripts/version.py minor --tag

# For a major update (0.2.0 -> 1.0.0)
poetry run python scripts/version.py major --tag

Contributing

Contributions are welcome, feel free to submit a PR.

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

repo2llm-1.1.1.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

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

repo2llm-1.1.1-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file repo2llm-1.1.1.tar.gz.

File metadata

  • Download URL: repo2llm-1.1.1.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.11.11 Linux/6.8.0-1021-azure

File hashes

Hashes for repo2llm-1.1.1.tar.gz
Algorithm Hash digest
SHA256 080a6d6b065e105fd97c0100ce28042250aa54aee9503efae111167d072ba42d
MD5 12a07bccd1f2fde1e203222962c8e72b
BLAKE2b-256 1d13d9c8eb0df45e96ecd5868c3931da7ffc35864386055278ea2bda6591f3a4

See more details on using hashes here.

File details

Details for the file repo2llm-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: repo2llm-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.11.11 Linux/6.8.0-1021-azure

File hashes

Hashes for repo2llm-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 57991c3177dc07014a1a392f543b47de0d91168b1c1da8212a55a7176e375284
MD5 e92ad6a8bdfce52fae6c31eba6c8ba2f
BLAKE2b-256 26a1bbdb0052841f0d083f539a4adb00af476a4156a01b74d1e9d20927557781

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