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.1.tar.gz (10.3 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.1-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ghpush-0.1.1.tar.gz
  • Upload date:
  • Size: 10.3 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.1.tar.gz
Algorithm Hash digest
SHA256 e1d5f9e04d000a372d8249286754e2c7bba9682c9789fc7fe79173a2099ddd18
MD5 fa5c84984fb239cd93de0f2042ade21a
BLAKE2b-256 0d65252f591dd70f728ab806acbb41e1b120dec21f16685f483d6e92d48e9a70

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ghpush-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 11.9 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ec2723320bafc37e0ecd12a62ec8fb1f79ae8b23ac6948629aa5ad898951a657
MD5 738101352ac44ec7b991199ffb71e71a
BLAKE2b-256 db76fe6e3033961aa16b8dce4fc734bcca4aac6bfd73d9c800a15131a47b3675

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