Skip to main content

An AI tool to push files to GitHub repositories

Project description

🚀 GHPush

AI-Powered GitHub Pull Request Creation Tool

PyPI version License: MIT Python 3.8+ Downloads


🌟 Overview

GHPush is an intelligent command-line tool that revolutionizes your GitHub workflow by automating pull request creation. Using the power of AI, it analyzes your changes, generates meaningful PR titles and descriptions, and streamlines your contribution process - all without requiring a GitHub token!

✨ Features

  • 🤖 AI-Powered Summaries: Leverages OpenAI's GPT models to create contextual PR titles and descriptions
  • 🔄 Automated Workflow: Push your branch and open GitHub's PR page in one command
  • 📊 Smart Diff Analysis: Intelligent analysis of your code changes
  • 🔒 No GitHub Token Needed: Works with your local git configuration
  • 🌐 Cross-Platform: Seamless experience on Windows, macOS, and Linux
  • Fallback Mode: Basic summarization when AI is not configured

🚀 Quick Start

Installation Options

📦 Using pip (Recommended)

pip install ghpush

🛠 Using pipx

# Install pipx if needed
python3 -m pip install --user pipx
python3 -m pipx ensurepath

# Install ghpush
pipx install ghpush

🍺 Using Homebrew (macOS/Linux)

brew tap sukeesh/gpush
brew install gpush

💫 Usage

ghpush --base main

That's it! GHPush will:

  1. 📝 Analyze your changes
  2. 🤖 Generate a PR title and description
  3. 🔄 Push your branch
  4. 🌐 Open the PR creation page

⚙️ Configuration

OpenAI Integration (Optional)

  1. Create your configuration:
cp .env.example .env
  1. Add your OpenAI API key:
OPENAI_API_KEY=your_openai_api_key_here

💡 Note: GHPush works perfectly fine without AI integration, falling back to basic summarization.

🛠 Technical Requirements

🤝 Contributing

We love contributions! Here's how you can help:

  1. 🍴 Fork the repository
  2. 🌿 Create your feature branch
  3. 💻 Make your changes
  4. 🔄 Create a pull request

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

🌟 Show Your Support

If you find GHPush useful, please consider:

  • ⭐ Starring the repository
  • 🐛 Reporting issues
  • 🤝 Contributing to the code
  • 📢 Spreading the word

Made with ❤️ by Sukeesh

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

ghpush-0.1.0.tar.gz (4.2 kB view details)

Uploaded Source

Built Distribution

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

ghpush-0.1.0-py3-none-any.whl (3.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ghpush-0.1.0.tar.gz
  • Upload date:
  • Size: 4.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for ghpush-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9ab181fb8f103a5eee9bb6494890a92371f6bed0a7b1305d9da9efa69de3332c
MD5 35079c808a62771b77009e312374fc32
BLAKE2b-256 fae17982f722d541a4a3152fccadda750782a2d0f10869d11b08394e2bc1e706

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ghpush-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for ghpush-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b11f4ceabda1791d2b6d969c020e81be52282092a2610b17aa35d70a18466193
MD5 b1182eaeab53817c1c1ec157114c0d49
BLAKE2b-256 7885bbf724df2d788fe3eda4ad132268398fb07037c037f410352bc60c2590a6

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