A chatbot that uses ChatGPT to help you find a date
Project description
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
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file WingmanGPT-1.3.0.tar.gz.
File metadata
- Download URL: WingmanGPT-1.3.0.tar.gz
- Upload date:
- Size: 8.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e13fa156a21fbf2b48e591432f4543c06018d890bf663b96fa19e5294dbfd5de
|
|
| MD5 |
2e0dd6553b031b650e6096b518770044
|
|
| BLAKE2b-256 |
3719ab159dbe5b53867e98a52807c6528b9dbbef0a29c1d298f5c114520c3ea8
|
File details
Details for the file WingmanGPT-1.3.0-py3-none-any.whl.
File metadata
- Download URL: WingmanGPT-1.3.0-py3-none-any.whl
- Upload date:
- Size: 9.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ec93213ff21ea0e10c0ab79553ed78ee79022e59953880b311d6985a92bec24
|
|
| MD5 |
b9796aae43fc831898313d0b2555d015
|
|
| BLAKE2b-256 |
4075d56287e630d2aec7d9aee49277963f2af9c2ec9d897576b87344cd528756
|