Skip to main content

CLI tool to ask questions about GitHub or local repos using RAG + LLM

Project description

GitMaster

GitMaster is an AI-powered CLI tool designed to help users interact with GitHub or local repositories. It leverages Retrieval-Augmented Generation (RAG) and Large Language Models (LLMs) to answer questions about codebases, summarize repositories, and more.

Features

  • Load and index GitHub or local repositories.
  • Ask questions about the last loaded repository.
  • Summarize the contents of a repository.
  • Manage authentication for GitHub and OpenAI.
  • Clear temporary data and vector stores.

Installation from PyPI

To install GitMaster from PyPI, follow these steps:

  1. Install GitMaster using pip:

    pip install gitmaster
    
  2. Set up your OpenAI API key:

    gitmaster change-key
    

Commands

Below is a list of all available commands in GitMaster:

gitmaster load

Load a GitHub or local repository into the vector database.

Options:

  • path_or_url: Path to a local repository or URL of a GitHub repository.
  • --type: Specify repo for GitHub repositories or local for local repositories (default: repo).
  • --clear-index / -c: Clear existing vector index before indexing.

Example:

gitmaster load https://github.com/yourusername/yourrepo --type repo

gitmaster ask

Ask a question about the last loaded repository.

Example:

gitmaster ask "What does the main function do?"

gitmaster login

Log in to GitHub for private repository access.

Example:

gitmaster login

gitmaster logout

Log out of GitHub and clear stored credentials.

Example:

gitmaster logout

gitmaster change-key

Set or update your OpenAI API key.

Example:

gitmaster change-key

gitmaster summarize

Summarize the contents of the last loaded repository.

Example:

gitmaster summarize

gitmaster clear

Delete all temporary repository clones and clear vector stores.

Example:

gitmaster clear

Usage

To see the help menu for GitMaster, run:

gitmaster --help

Requirements

  • Python 3.8 or higher
  • OpenAI API key (for LLM-based features, optional)
  • Git installed on your system

License

This project is licensed under the MIT License.

Author

Sayak Raha
Email: sayakraha12@gmail.com

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

gitmaster-0.1.1.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

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

gitmaster-0.1.1-py3-none-any.whl (14.1 kB view details)

Uploaded Python 3

File details

Details for the file gitmaster-0.1.1.tar.gz.

File metadata

  • Download URL: gitmaster-0.1.1.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.11

File hashes

Hashes for gitmaster-0.1.1.tar.gz
Algorithm Hash digest
SHA256 c3aac58957a4e51855b2099688f89ef70561d0d22dd82defd9b7bd74796e374e
MD5 c93e04bb0054734160e2559d67957af5
BLAKE2b-256 1db932b08c53fc0baf8698c439d71688ec06cd72bc616e1c4b59ee8ba3bb7dc3

See more details on using hashes here.

File details

Details for the file gitmaster-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: gitmaster-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 14.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.11

File hashes

Hashes for gitmaster-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4cc23701093d95b79e09d6aebf6bffaaeeb4d270fe1062d3b20bc84d8db3bdfe
MD5 cc87c5c20eb824a63bef126f8f102594
BLAKE2b-256 571822b234073169f7fc7ed91226cf1c042a647aeff9e11113e19f4f483b98d2

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