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.
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
$ python3 -m venv env && source env/bin/activate # optional virtual environment
$ pip install WingmanGPT
- Get your API token from your OpenAI session data (copy the value for the
access_tokenkey). 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>
- 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)
| File | Size | Uploaded | |
|---|---|---|---|
| WingmanGPT-2.0.0.tar.gz | 8.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|