Skip to main content

AI-powered semantic git commit message generator using Groq's LLaMA models

Project description

gitsc (Git Semantic Commit)

A command-line tool that generates semantic commit messages using AI, following the Conventional Commits format.

Features

  • Generates semantic commit messages using Groq's LLaMA and Gemma models
  • Multiple model options for different needs (speed vs. quality)
  • Follows Conventional Commits format
  • Interactive mode with streamlined commit process
  • Easy to use command-line interface
  • Automatic API key management
  • Command-line flags for quick configuration

Installation

You can install gitsc directly from PyPI:

pip install gitsc

Or install from source:

git clone https://github.com/prxdyut/gitsc.git
cd gitsc
pip install -e .

GROQ API Key Setup

You'll need a GROQ API key to use this tool. Here's how to get one:

  1. Sign up at Groq Console
  2. Navigate to the API Keys section
  3. Create a new API key

You can set up your API key in several ways:

  1. Let the tool prompt you on first use
  2. Use the command-line flag: gitsc --api-key "your-api-key"
  3. Create a .env file in your project with:
    GROQ_API_KEY=your_api_key_here
    

Available Models

The tool supports multiple Groq models that you can choose from based on your needs. View the complete list of supported models at Groq Models Documentation.

Currently supported models:

  • llama3-70b (default): LLaMA 3.3 70B Versatile - Most capable, best quality
  • llama3-8b: LLaMA 3.1 8B Instant - Faster response time
  • gemma-9b: Gemma 2 9B - Alternative model

Select a model using the --model or -m flag:

gitsc -m llama3-8b "your commit message"

Usage

Basic usage:

gitsc "Your commit description here"

With model selection:

gitsc -m llama3-8b "add new user authentication feature"

Update API key:

gitsc -k "your-new-api-key"

Running without arguments will show the help message and setup instructions:

gitsc

The tool will generate a semantic commit message and present you with options:

  • Press Enter - Proceed with the commit (default action)
  • r - Rephrase the commit message
  • k - Reset/update API key
  • q - Quit without committing

Commit Message Format

The tool generates commit messages following the Conventional Commits format:

type(scope): summary

Where type is one of:

  • feat: New features
  • fix: Bug fixes
  • chore: Maintenance tasks
  • docs: Documentation changes
  • refactor: Code restructuring
  • test: Adding or modifying tests
  • style: Code style changes
  • perf: Performance improvements
  • ci: CI/CD changes

Requirements

  • Python 3.6+
  • Groq API key
  • Git installed and configured

License

MIT License - See LICENSE file for details

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

gitsc-1.0.0.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

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

gitsc-1.0.0-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

Details for the file gitsc-1.0.0.tar.gz.

File metadata

  • Download URL: gitsc-1.0.0.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for gitsc-1.0.0.tar.gz
Algorithm Hash digest
SHA256 2eff81101c9f69c283877f003776c7709569028e6a0d300f256047da19cd0b79
MD5 5d70fd2a162d6872c216bed0b5e8097d
BLAKE2b-256 636800c34061261a69a52a0468b94367a9cc2429b327a016a543e9d436938941

See more details on using hashes here.

File details

Details for the file gitsc-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: gitsc-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for gitsc-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e238b6034b9ed58cc84dd804b94f7667cba15318c1671caa8907fa3dcdac97dc
MD5 be59c440167c133305c5d44090aa757b
BLAKE2b-256 9aba6f2dd8c8c75ee48263aa0c7779026f280a4b7ee052b8e2ae9ea76a83d54f

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