Skip to main content

AI Society Godfather CLI - RunPod Environment Manager

Project description

Godfather CLI

Beautiful command-line interface for managing AI Society ASU RunPod environments.

CLI Demo License

โœจ Features

  • ๐ŸŽจ Beautiful Interface - Rich terminal UI with colors, tables, and panels
  • ๐Ÿ” Secure Authentication - Discord-based authentication
  • ๐Ÿš€ Pod Management - List and connect to available RunPod environments
  • ๐Ÿ”Œ SSH Integration - Automatic SSH key setup and connection
  • ๐Ÿ“Š Status Monitoring - Check authentication and configuration status

๐Ÿ“ฆ Installation

Option 1: Install from PyPI (Recommended)

pip install godfather-cli

Option 2: Install from GitHub

pip install git+https://github.com/theaisocietyasu/godfather.git#subdirectory=cli

Option 3: Install for Development

git clone https://github.com/theaisocietyasu/godfather.git
cd godfather/cli
pip install -e .

๐Ÿš€ Quick Start

  1. Run the CLI:

    godfather
    
  2. Authenticate:

    • Visit the admin portal to get your authentication token
    • Paste the token when prompted
  3. Connect to a Pod:

    • Select option 2 to connect to a pod
    • Choose from available pods
    • Automatically SSH into your isolated workspace

๐Ÿ“– Usage

Interactive Menu

Simply run:

godfather

You'll see a beautiful menu:

โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
โ•‘ Godfather CLI                         โ•‘
โ•‘ AI Society RunPod Environment Manager โ•‘
โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ What would you like to do? โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ 1.  ๐Ÿ“‹ List available pods                   โ”‚
โ”‚ 2.  ๐Ÿ”Œ Connect to a pod                      โ”‚
โ”‚ 3.  ๐Ÿ“Š Show status                           โ”‚
โ”‚ 4.  ๐Ÿšช Logout                                โ”‚
โ”‚ 5.  ๐Ÿ‘‹ Exit                                  โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

Command-Line Interface

# List available pods
godfather list

# Connect to a specific pod
godfather connect <pod-id>

# Connect interactively
godfather connect

# Show CLI status
godfather status

# Logout
godfather logout

# Re-authenticate
godfather auth

# Use custom API URL
godfather --api-url https://your-api.com list

๐Ÿ”‘ Authentication

  1. Get your authentication token from: https://your-godfather-instance.com/cli-auth
  2. Run godfather or godfather auth
  3. Paste your token when prompted
  4. Token is securely stored in ~/.godfather/config.json

๐Ÿ› ๏ธ Configuration

Configuration is stored in ~/.godfather/config.json:

{
  "token": "discord_<user_id>_<timestamp>",
  "discord_user_id": "<your_discord_id>"
}

Environment Variables

You can override the API URL with:

export GODFATHER_API_URL="https://your-api.com"
# or
export BACKEND_URL="https://your-api.com"
# or
export NEXT_PUBLIC_BACKEND_URL="https://your-api.com"

๐ŸŽจ Features in Detail

Beautiful Tables

Pod listings display in rich, colorful tables:

           ๐Ÿš€ Available Pods (3)
โ•ญโ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ # โ”‚ Status โ”‚ Name        โ”‚ ID           โ”‚ Created   โ”‚
โ”œโ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ 1 โ”‚ ๐ŸŸข RUN โ”‚ ml-training โ”‚ abc123def... โ”‚ 2 days agoโ”‚
โ”‚ 2 โ”‚ ๐ŸŸข RUN โ”‚ gpu-dev     โ”‚ xyz789ghi... โ”‚ 1 week agoโ”‚
โ”‚ 3 โ”‚ ๐Ÿ”ด OFF โ”‚ testing     โ”‚ jkl456mno... โ”‚ 3 days agoโ”‚
โ•ฐโ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

Status Dashboard

        Godfather CLI Status
โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ ๐Ÿ” Authentication   โ”‚ โœ“ Authenticated             โ”‚
โ”‚ ๐ŸŒ API Connection   โ”‚ โœ“ Connected                 โ”‚
โ”‚ ๐Ÿ  Config Directory โ”‚ /home/user/.godfather       โ”‚
โ”‚ ๐Ÿ”— API Endpoint     โ”‚ https://api.example.com     โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

๐Ÿ“ License

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

๐Ÿ†˜ Support

๐ŸŽ“ About

Built with โค๏ธ by AI Society at Arizona State University


Note: You need to be a member of the AI Society Discord server with appropriate permissions to use this CLI.

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

godfather_cli-1.0.1.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

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

godfather_cli-1.0.1-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file godfather_cli-1.0.1.tar.gz.

File metadata

  • Download URL: godfather_cli-1.0.1.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for godfather_cli-1.0.1.tar.gz
Algorithm Hash digest
SHA256 f5a0c585a317db55ac24becc59a504c047eee0eca9114cb3c36843f2e0285fa7
MD5 cb26d8a5147e983077df633ff3d930f3
BLAKE2b-256 025ca49de6e1b089fd3c48a3ff9b11f78efaf581a22bc8c7e27d1351365a628d

See more details on using hashes here.

Provenance

The following attestation bundles were made for godfather_cli-1.0.1.tar.gz:

Publisher: publish-cli.yml on theaisocietyasu/godfather

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file godfather_cli-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: godfather_cli-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for godfather_cli-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9ee02abdf550acec037e69b2865292e78db7ca75c00d2fedcbcd76e04dacbf26
MD5 be2ffbe0ec69f9571dedae6e4d91875a
BLAKE2b-256 b86e48432f4efa63bff9970eab9e9043f2d2a2b6a075c5405e8c909756085e33

See more details on using hashes here.

Provenance

The following attestation bundles were made for godfather_cli-1.0.1-py3-none-any.whl:

Publisher: publish-cli.yml on theaisocietyasu/godfather

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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