Skip to main content

Intelligence Layer between local code changes and remote repository. Automates commit messages and PR descriptions using LLMs.

Project description

🖋️ git-scribe-cli

The Intelligence Layer for your Git workflow.

git-scribe-cli automates the narrative of your code. It turns your changes into meaningful, conventional commit messages and detailed Pull Request descriptions using the power of LLMs (OpenAI GPT-4o). It also acts as a "Team Lead" by performing pre-flight readiness checks before you commit.


✨ Features

  • 🤖 AI-Generated Commits: content-aware, semantic messages (Conventional Commits).
  • 📝 One-Command PRs: Generates full PR descriptions with summaries, type of change, and checklists.
  • 🛡️ Review Readiness Checks:
    • ⚠️ Warns if you modify logic without adding tests.
    • 🔒 Scans for potential secrets/keys in your code.
    • 🐍 Checks specific files for missing migrations (e.g., Django models).
  • ✨ Beautiful TUI: Built with Rich for a premium terminal experience.

🚀 Installation

From PyPI (Coming Soon)

pip install git-scribe-cli

From Source

git clone https://github.com/akash1551/git-scribe-cli.git
cd git-scribe-cli
pip install .

⚙️ Configuration

git-scribe-cli requires an OpenAI API Key to function.

export OPENAI_API_KEY="sk-..."

Add this to your .bashrc or .zshrc to make it permanent.


📖 Usage

1. Smart Commit (scribe commit)

Stage your changes and run:

scribe commit

What happens:

  1. Readiness Check: Scans your staged changes for issues (missing tests, secrets).
  2. Generation: An LLM analyzes your diff and proposes a commit message.
  3. Review: You see the formatted message.
    • Press a to Accept.
    • Press e to Edit.
    • Press c to Cancel.

2. PR Description (scribe pr)

Ready to push? Generate a PR description based on your branch history:

scribe pr --main-branch master

What happens:

  1. Analysis: Reads all commits on your current branch that are ahead of master (or main).
  2. Generation: Creates a Markdown-formatted PR description.
  3. Save: Options to save it to PULL_REQUEST_TEMPLATE.md or copy it.

🛠️ Development

To contribute or modify git-scribe:

  1. Clone the repo.
  2. Install dependencies: pip install -e .
  3. Run the tool: python src/main.py commit

📄 License

MIT

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

git_scribe_cli-0.1.2.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

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

git_scribe_cli-0.1.2-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file git_scribe_cli-0.1.2.tar.gz.

File metadata

  • Download URL: git_scribe_cli-0.1.2.tar.gz
  • Upload date:
  • Size: 8.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for git_scribe_cli-0.1.2.tar.gz
Algorithm Hash digest
SHA256 951cef13daffa96fc38c789392131421bc77361fce0fc906a78dbb6a8121651b
MD5 6175fe4aac49a1d7ba82891b457f0b71
BLAKE2b-256 f326fedc738f56cfb33ddf1fc571b2d8cfb5bcdd3f8ade908210f73939a2e25e

See more details on using hashes here.

File details

Details for the file git_scribe_cli-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: git_scribe_cli-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 7.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for git_scribe_cli-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 42b28a9d428a5fe1b238287fea2e333890cfb3fbae1f5c54d45c3ba3b9f06506
MD5 e84a861e220d643150a1b33f5c51eea3
BLAKE2b-256 36882be2a3ea50566f8110af625be9141e7be2dc98d381ca683fadfbef7169ac

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