Skip to main content

CLI tool to manage multiple GitHub accounts for batch operations

Project description

GitHub Hacker

A CLI tool to manage multiple GitHub accounts for batch operations like starring, watching, and forking repositories.

Features

  • Multi-account Management: Login, logout, and manage multiple GitHub accounts
  • Batch Operations: Perform operations with all accounts at once
  • Repository Operations:
    • Star/Unstar repositories
    • Watch/Unwatch repositories (subscribe to notifications)
    • Fork repositories
    • Check status (starred/watched)
    • View repository information
  • Config Management: Import/export account data in JSON format

Installation

Option 1: Install from source (recommended for development)

# Clone the repository
git clone https://github.com/SSBun/GithubHacker.git
cd GithubHacker

# Create virtual environment
python -m venv venv

# Activate virtual environment
# On Linux/Mac:
source venv/bin/activate
# On Windows:
venv\Scripts\activate

# Install in development mode
pip install -e .

# Or install dependencies only
pip install -r requirements.txt

Option 2: Install as package (when published to PyPI)

pip install github-hacker

After installation, use the github-hacker command directly:

github-hacker --help

Quick Start

Login with GitHub Account

python main.py login myaccount YOUR_GITHUB_TOKEN

List Accounts

python main.py config list

Star a Repository (All Accounts)

python main.py star owner/repo
# Or use full URL
python main.py star https://github.com/owner/repo

Star with Specific Account

python main.py star owner/repo -a myaccount

Commands

Account Management

# Add account
python main.py login <name> <token>

# Remove account
python main.py logout <name>

# List accounts
python main.py config list

# Export accounts to JSON
python main.py config export accounts.json

# Import accounts from JSON
python main.py config import accounts.json

# Validate all tokens
python main.py config validate

# Show account info
python main.py config whoami

Repository Operations

# Star a repository
python main.py star <repo>
python main.py star <repo> -a <account>

# Unstar a repository
python main.py unstar <repo>

# Watch a repository (notifications)
python main.py watch <repo>

# Unwatch a repository
python main.py unwatch <repo>

# Fork a repository
python main.py fork <repo>

# Check status (starred/watched)
python main.py status <repo>

# Show repository info
python main.py info <repo>

Supported Repository Formats

Both formats are supported:

  • Short format: owner/repo
  • Full URL: https://github.com/owner/repo

JSON Account Format

When importing/exporting accounts, use this format:

{
  "myaccount": {
    "token": "ghp_xxxxxxxxxxxx",
    "username": "githubuser"
  }
}

Getting a GitHub Token

  1. Go to GitHub Settings > Developer settings > Personal access tokens
  2. Click "Generate new token (classic)"
  3. Select the repo scope for full access
  4. Copy the generated token

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

github_hacker-0.1.0.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

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

github_hacker-0.1.0-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: github_hacker-0.1.0.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for github_hacker-0.1.0.tar.gz
Algorithm Hash digest
SHA256 75f9af1b47c5613b008647805794071f899bff722c180289f8d4c0f581da20f2
MD5 b81914a11ee85cce5ab9e58d1783a5ff
BLAKE2b-256 d9d7873c2787eca0b5d151fd024a5f821b7fb099be22901f59125ab153c46a0e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: github_hacker-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for github_hacker-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5a12d57e741818fd814fd93660ef0c9e6c99730d9fc0bc31de96d0d1457dbfae
MD5 fdf79cfaaeabe8079001b2387e028619
BLAKE2b-256 fa9ac4c9b716dfa1fc03ca58bcf0fcf9fdd9a36f2a9254b935b957c58ed3b280

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