Skip to main content

A simple, lightweight CLI to use OpenAI's ChatGPT and DALL-E from the terminal

Project description

original work

https://github.com/0xacx/chatGPT-shell-cli

I translated it to python, and added some features, Few things was not working for me, also updated to gpt 4o-mini
** greate work from the original authour **

chatGPT-shell-cli

A simple, lightweight CLI to use OpenAI's ChatGPT and DALL-E from the terminal.
This project now uses a Python installer (install.py) for setup and a Python uninstaller (remove.py) for clean removal.
The main shell script is chatgpt.sh, which is installed to your system path for easy access.

Getting Started

Prerequisites

This script relies on curl for API requests and jq to parse JSON responses.

  • curl

    sudo apt install curl   # Debian/Ubuntu
    sudo dnf install curl   # Fedora/Redhat linux
    # or
    brew install curl       # macOS
    
  • jq

    sudo apt install jq     # Debian/Ubuntu
    sudo dnf install jq     # Fedora/Redhat Linux
    # or
    brew install jq         # macOS
    
  • An OpenAI API key. Create an account and get a free API Key at OpenAI

  • Optionally, you can install glow to render responses in markdown

Installation

Via pip (Recommended - Works on all platforms):

pip install gpt-shell-4o-mini

After installation, simply run gpt and you'll be guided through a first-run setup to configure your OpenAI API key:

gpt

The setup wizard will:

  • Prompt for your OpenAI API key
  • Verify the key
  • Save it to your shell profile automatically

For a quick install without cloning:

curl -O https://raw.githubusercontent.com/wkdkavishka/GPT-shell-4o-mini/origin/install.py
sudo python3 install.py

To install, clone this repository and run the Python installer as root

git clone https://github.com/wkdkavishka/chatGPT-shell-cli.git
cd chatGPT-shell-cli
sudo python3 install.py

You will be prompted for your OpenAI API key.
Alternatively, you can provide your key directly:

sudo python3 install.py --key <YOUR_OPENAI_API_KEY>

This will:

  • Download and install chatgpt.sh to /usr/local/bin/gpt
  • Optionally create a symlink /usr/local/bin/chatgpt
  • Add your API key and /usr/local/bin to your shell profile

Uninstallation

The remove.py script provides comprehensive uninstallation that works whether you installed via pip or manually.

For a quick uninstall without cloning:

curl -O https://raw.githubusercontent.com/wkdkavishka/GPT-shell-4o-mini/origin/remove.py
python3 remove.py
# Or with sudo if you used manual installation:
sudo python3 remove.py

What it removes:

  • Package installed via pip (if applicable)
  • Manual installation from /usr/local/bin/gpt and /usr/local/bin/chatgpt (if applicable)
  • OPENAI_KEY and /usr/local/bin PATH modifications from your shell profiles
  • Chat history file (~/.chatgpt_py_history)

The script automatically detects how the package was installed and removes it accordingly.

Manual Installation

If you want to install manually:

  • Download the chatgpt.sh file to a directory in your $PATH
  • Add your OpenAI API key to your shell profile:
    export OPENAI_KEY=your_key_here
  • Make sure /usr/local/bin is in your $PATH
  • (Optional) Install imgcat for iTerm2 image support

Usage

Start

Chat Mode

  • Run the script by using the gpt or chatgpt command anywhere. By default the script uses the gpt-4o-mini model.

Pipe Mode

  • You can also use it in pipe mode:
    echo "What is the command to get all pdf files created yesterday?" | gpt

Script Parameters

  • You can also pass the prompt as a command line argument:
    gpt -p "What is the regex to match an email address?"

Commands

  • image: To generate images, start a prompt with image:
  • history To view your chat history, type history
  • models To get a list of the models available at OpenAI API, type models
  • model: To view all the information on a specific model, start a prompt with model: and the model id
  • command: To get a command with the specified functionality and run it, just type command: and explain what you want to achieve

Chat context

  • Enable chat context mode for the model to remember your previous chat questions and answers. Start the script with -c or --chat-context.

Set chat initial prompt

  • Set your own initial chat prompt with -i or --init-prompt
    Example: gpt -i "You are Rick from Rick and Morty, reply with references to episodes."

Use the official ChatGPT model

  • The default model used is gpt-4o-mini.

Use GPT-4

  • If you have access to the GPT-4 model you can use it by setting the model to gpt-4, i.e. gpt --model gpt-4

Set request parameters

  • To set request parameters:
    gpt --temperature 0.9 --model text-babbage:001 --max-tokens 100 --size 1024x1024
    • temperature, -t or --temperature
    • model, -m or --model
    • max number of tokens, --max-tokens
    • image size, -s or --size
    • prompt, -p or --prompt
    • prompt from a file, --prompt-from-file

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

gpt_shell_4o_mini-1.0.1.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

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

gpt_shell_4o_mini-1.0.1-py3-none-any.whl (16.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: gpt_shell_4o_mini-1.0.1.tar.gz
  • Upload date:
  • Size: 19.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for gpt_shell_4o_mini-1.0.1.tar.gz
Algorithm Hash digest
SHA256 fcfe5ed750e9ffb9094dbf018ed2ea1700a224cd5602952fc875ed7529fc3f8e
MD5 0414b4bc0664ac3fe4940da40135c7d4
BLAKE2b-256 b5e8ee37c1eda99ce2d03bda477fc6c82b2feb8592fe81a6257715f1984d1669

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for gpt_shell_4o_mini-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d778536ef07184ce96e61fb16f46999ab1fa6e43fa6076790921da8c33ab20d2
MD5 7482960eb31445656c2d7bd2722ef4b3
BLAKE2b-256 b8e10020d2a4c8b8c68b8904d8ddb07ab0d54b8bbaadf8c12061b426ae81a632

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