Skip to main content

WingmanGPT

Overview

WingmanGPT is a command-line tool that allows you to send text messages that are customly modified by ChatGPT and sent to a specified number.

PyPiGitHub

Notice

This tool currently only works for Mac users.

Messages can be generated on any platform, but this tool uses the Messages app on Mac to send them. There are no plans currently to use a SMS API such as Twilio.

Install

  1. Make sure you have python3 and pip installed. You can then install the package directly from pip.
$ python3 -m venv env && source env/bin/activate # optional virtual environment
$ pip install WingmanGPT
  1. Get your API token from your OpenAI session data (copy the value for the access_token key). Make sure you are signed in before doing this. You can get your token by accessing the linked url and copying the value for the 'accessToken' key.
$ WingmanGPT make-token <token> 
$ cat token
<token>
  1. Optional: make a template message file. This allows you to not have to provide a message as a command-line option.
$ WingmanGPT make-message "My custom message"
$ cat message
My custom message

Usage

Please note that when running the program, you will get a warning from your Mac asking you if it can send a message. You must click OK for the tool to work.

Usage: WingmanGPT send [OPTIONS]

REQUIRED:
(-n, --number) [NUMBER]: 
    Phone number to send the message to.

OPTIONAL:
(-t, --token) [TOKEN]: 
    ChatGPT API token. Not required if you make a token file in step 2 of installation.

(-m, --message) [MESSAGE]: 
    Message to be modified. Not required if you make a message file in step 3 of installation.

(--noconfirm): 
    Optional flag that will send the message without confirmation.

(--mode) [MODE]: 
    Modification mode for your message. Check out prompts.json to see the modes the tool actually uses, as well as the default.

(-h, --help): 
    Show this message and exit.

Example Usage

$ WingmanGPT send -n 1234567890 --mode=FUN --noconfirm -m "Tell me something about dogs" -t <token>

or

# Make a token file for multiple requests (step 2)
$ WingmanGPT make-token <token>
Token file created.
# Make a message file for multiple requests (step 3)
$ WingmanGPT make-message "I want a new dog"
Message file created.
# View available modes
$ WingmanGPT show-modes
...
# Send message
WingmanGPT send -n 1234567890 --mode=FUN

ChatGPT Functionality

The ChatGPT wrapper class, GPT was inspired by acheong08's work on ChatGPT API.

Everything that is used for the prompt, as well as the different modes, can be found in prompts.

To see all of the available modes from the command line, you can run:

$ WingmanGPT show-modes

Build from Source

If you fork this repo and want to build the package locally, you can run these commands:

# Create virtual environment
python3 -m venv env && source env/bin/activate
# Install dependencies and build package
pip install -r requirements.txt
pip install -e .
# Verify installation
which WingmanGPT
.../your/path/to/WingmanGPT/env/bin/WingmanGPT

Contributing

Anybody except Ho Jung Kim is allowed to contribute.

License

This project is licensed under the MIT License. See the LICENSE file for more information.

Authors

  • Ben Schwartz, Ryan Baxter, and Paul Chafetz

Release files for WingmanGPT 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for WingmanGPT 2.0.0
File Size Uploaded
WingmanGPT-2.0.0.tar.gz 8.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for WingmanGPT 2.0.0
File Interpreter ABI Platform
WingmanGPT-2.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 18.1 kB

Release files / WingmanGPT-2.0.0.tar.gz

Download URL WingmanGPT-2.0.0.tar.gz
Size 8.3 kB
Tags Source
SHA-256 checksum
How to use checksums
8bbd9026aed3cb774d5b29fd0040aa6731c7547356f6b9aa61e12ff77c1bd758
BLAKE2b-256 checksum
How to use checksums
0dc32a24e88360933aa1611bde13644724f5a7ec75b2153bfdc705a514927089
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release files / WingmanGPT-2.0.0-py3-none-any.whl

Download URL WingmanGPT-2.0.0-py3-none-any.whl
Size 9.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
16b374ddd6d31cc72e822070de650edf9388fe64bcce6d250159d6cd581a3406
BLAKE2b-256 checksum
How to use checksums
06e7b9428cc691aab631ca3d52a3e7585655490d1eccd80e1b8b8b5c551e5805
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.11.2

Release history Release notifications | RSS feed

This release

2.0.0 This release

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.0.3

2 release files

1.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page