Skip to main content

AI-powered git commit message generator using PydanticAI

Project description

qommit

AI-powered git commit message generator using PydanticAI.

Installation

# Run directly with uvx (after publishing)
uvx qommit

# Or install with uv
uv tool install qommit

# For local development
uvx --from . qommit

Usage

# Commit staged changes (default command)
qommit

# Stage all changes and commit
qommit -a

# Dry run - just show the generated message
qommit -n

# Use a specific model for this run
qommit -m openai:gpt-4o

# Skip confirmation prompt
qommit -y

Configuration

Settings are stored in a cross-platform config directory:

  • macOS: ~/Library/Application Support/qommit/settings.yml
  • Linux: ~/.config/qommit/settings.yml
  • Windows: %APPDATA%\qommit\settings.yml

Model Configuration

# Set default model
qommit model set openai:gpt-4o
qommit model set anthropic:claude-3-5-sonnet-latest
qommit model set google-gla:gemini-1.5-pro

# Show current model
qommit model show

Model priority (highest to lowest):

  1. --model / -m flag
  2. QOMMIT_MODEL environment variable
  3. Configured default (via qommit model set)
  4. Built-in default: openai:gpt-4o-mini

System Prompt Configuration

# Edit system prompt in your default editor ($VISUAL or $EDITOR)
qommit prompt edit

# Show current system prompt
qommit prompt show

# Reset to default prompt
qommit prompt reset

View Configuration

# Show all current settings
qommit config

Supported Models

Any model supported by PydanticAI can be used:

  • OpenAI: openai:gpt-4o, openai:gpt-4o-mini, openai:gpt-4-turbo
  • Anthropic: anthropic:claude-3-5-sonnet-latest, anthropic:claude-3-opus-latest
  • Google: google-gla:gemini-1.5-pro
  • And more...

Make sure you have the appropriate API key set for your chosen model provider:

  • OPENAI_API_KEY
  • ANTHROPIC_API_KEY
  • GOOGLE_API_KEY

All Commands

qommit [OPTIONS]              Generate commit message (default)
  -m, --model TEXT            Model to use for this run
  -a, --all                   Stage all changes first
  -n, --dry-run               Don't create commit
  -y, --yes                   Skip confirmation

qommit model set NAME         Set default model
qommit model show             Show current model

qommit prompt edit            Edit system prompt in editor
qommit prompt show            Show current system prompt
qommit prompt reset           Reset prompt to default

qommit config                 Show all configuration
qommit --version              Show version
qommit --help                 Show help

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

qommit-0.1.0.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

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

qommit-0.1.0-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file qommit-0.1.0.tar.gz.

File metadata

  • Download URL: qommit-0.1.0.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for qommit-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a827aa6a39dd8d3403ea87b33d96d6ebe126495c0621e212f31de2a25bb992c3
MD5 bf22396f837006fe1b58ee156528b736
BLAKE2b-256 a6aa18b43444e135cf494f22a2419e66597b6fd6323f34510d373c62e0bf953c

See more details on using hashes here.

File details

Details for the file qommit-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: qommit-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for qommit-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3b583e8e0fdd9db7d7582485f906d4703c923f218c278e86f066a4f06a35a783
MD5 10e3f19877abbdf175cb80fe0d79d9b8
BLAKE2b-256 20cb00adc9f20b52ef0cc610a78822277548fcd54eb8a081c45d0e1b73a64da6

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