Skip to main content

commit-pal ⚡️

A CLI AI assistant that helps you write commit messages at the speed of light using locally run LLMs.

Quick Start

Install and setup commit-pal

Install the latest version of commit-pal from PyPI:

pip install commit-pal
cm --setup # Configure the style of the commit messages

Run LLM locally with Ollama

  • Ollama should be installed and running
  • Pull and run a model to use with the library: ollama run <model> e.g. ollama run qwen2.5-coder:7b
    • See Ollama.com for more information on the models available.
    • We have seen the best performance with qwen2.5-coder:7b model so far.

By default, Ollama will run on localhost:11434.

Generate commit message

After staging your changes, run the following command to generate a commit message:

cm

The proposed commit message will be displayed in the terminal for you to review and confirm

Development Setup (Only for developers who wish to contribute to the project)

Install Poetry

Please follow the official installation guide to install Poetry, which will be used to manage dependencies and environments.

# Install dependencies
poetry install
# Activate Python Virtual Environment for Mac/Linux
eval "$(poetry env activate)"

# Activate Python Virtual Environment for Windows
.venv\Scripts\Activate.ps1

Style Enforcement

make lint

Quick Start to Test CLI App

pip uninstall cm -y # Uninstall old version of commit-pal
pip install -e . -v # Install new version of commit-pal
cm # Run commit-pal

Publish to PyPI

# Bump the semantic version in pyproject.toml before running this command
make publish

Metadata

Release files for cmpal 0.1.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for cmpal 0.1.7
File Interpreter ABI Platform
cmpal-0.1.7-py3-none-any.whl Python 3 none any Details

Release files / cmpal-0.1.7-py3-none-any.whl

Download URL cmpal-0.1.7-py3-none-any.whl
Size 11.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1a5581a7efd115ad746022b2104e1eea559417e76a95a6cd52c40827d635da73
BLAKE2b-256 checksum
How to use checksums
9de662818394c918a83dea735aa7ffc0c46f7b4125d08fee0c443c9a63605ddf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.0.1 CPython/3.12.1 Darwin/24.1.0

Security for cmpal 0.1.7

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.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page