AI-powered PR summary generator for Git repositories
Project description
Table of Contents
About
usepr (usepr) is a Python CLI that generates pull request summaries from your git commits using AI (DSPy). It analyzes your commit history and produces well-structured, meaningful PR descriptions.
- AI-powered summaries - Uses DSPy ChainOfThought to understand and summarize your changes
- Template support - Automatically detects and uses PR templates from your repository
- Flexible diffing - Generate summaries between any branches, tags, or commits
- Interactive prompts - Guided workflow with base branch and issue selection
- Clipboard integration - Copy generated summaries directly to clipboard
- Model override - Use different LLM models via the
-mflag
Quick Start
Install usepr with uv (recommended)
uv tool install usepr
Install with pipx (alternative)
pipx install usepr
Generate a PR summary
usepr generate
This will prompt you to select a base branch, optionally link related issues, and generate a summary from your commits.
Usage
Generate a PR Summary
usepr generate
The interactive workflow will:
- Detect your repository's default branch
- Prompt for a base branch to diff against
- Gather commits between base and HEAD
- Ask for related issues (optional)
- Detect and offer PR templates (if any)
- Generate and display the summary
- Offer to copy to clipboard
Use a Custom Model
Set your API key as an environment variable for the provider you're using:
export OPENAI_API_KEY="sk-..."
export ANTHROPIC_API_KEY="sk-ant-..."
Then run with the provider/model format:
usepr generate -m openai/gpt-4o
usepr generate -m anthropic/claude-sonnet-4-20250514
usepr generate -m openrouter/google/gemini-2.5-flash
Use the Short Alias
usepr gen
Available Commands
generate (gen) Generate a PR summary from commits
help Show help
Development
Common tasks:
uv run poe clean-full
uv run poe test
uv run poe lint
uv run poe format
Contributing
Quick workflow:
- Fork and branch:
git checkout -b feature/name - Make changes
- Run checks:
uv run poe clean-full - Commit and push
- Open a Pull Request
License
License information has not been added yet.
Built by thememium
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 usepr-0.1.5.tar.gz.
File metadata
- Download URL: usepr-0.1.5.tar.gz
- Upload date:
- Size: 10.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9054b6d4c5a40f3b08d3601b49ad9b838eacdd7887206c6ce96e2ce5d98cb0b2
|
|
| MD5 |
45bf8c8bd17302f4ce88dcf487e2d994
|
|
| BLAKE2b-256 |
8c21e7e79fb056061c611eb65e1bc502f5493465697fe752c5cecdd2f80ccb42
|
File details
Details for the file usepr-0.1.5-py3-none-any.whl.
File metadata
- Download URL: usepr-0.1.5-py3-none-any.whl
- Upload date:
- Size: 16.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
299f68decd89d897b0a5e0bfad1e0ff0bbf6292b489416f9709b5467499d269d
|
|
| MD5 |
4bb01fc75f084a9f4773fe2e3b71d93d
|
|
| BLAKE2b-256 |
b4e0f675ddea0554f0f613033798df1d0d9bf26edd0815f9dfca8461f3d0e90c
|