How to add ChatGPT to Discord





No Comments

Critical prerequisites to install

  • run pip3 install -r requirements.txt
  • Rename the file to .env
  • Recommended python version 3.10

Step 1: Create a Discord bot

  1. Go to create an application
  2. Build a Discord bot under the application
  3. Get the token from bot setting
  4. Store the token to .env under the DISCORD_BOT_TOKEN
  6. Invite your bot to your server via OAuth2 URL Generator

Step 2: Official API authentication

Geanerate an OpenAI API key

  1. Go to
  2. Click Create new secret key
  3. Store the SECRET KEY to .env under the OPENAI_API_KEY
  4. You're all set for Step 3

Step 2: Website ChatGPT authentication - 2 approaches

  • If you are using a Plus account, please modify UNOFFICIAL_PAID to "True" in your .env file

Email/Password authentication (Not supported for Google/Microsoft accounts)

  1. Create an account on
  2. Save your email into .env under OPENAI_EMAIL
  3. Save your password into .env under OPENAI_PASSWORD
  4. You're all set for Step 3

Session token authentication

  1. Go to log in
  2. Open console with F12
  3. Open Application tab > Cookies
  4. Copy the value for __Secure-next-auth.session-token from cookies and paste it into .env under SESSION_TOKEN
  5. You're all set for Step 3

Step 2: Google Bard authentication

  1. Go to
  2. Open console with F12
  3. Open Application tab > Cookies
  4. Copy the value for __Secure-1PSID from cookies and paste it into .env under BARD_SESSION_ID
  5. You're all set for Step 3

Step 3: Run the bot on the desktop

  1. Open a terminal or command prompt
  2. Navigate to the directory where you installed the ChatGPT Discord bot
  3. Run python3 to start the bot

Step 3: Run the bot with Docker

  1. Build the Docker image & Run the Docker container docker compose up -d
  2. Inspect whether the bot works well docker logs -t chatgpt-discord-botStop the bot:
    • docker ps to see the list of running services
    • docker stop <BOT CONTAINER ID> to stop the running bot

Have a good chat!

Optional: Disable logging

  • Set the value of LOGGING in the .env to False

Optional: Setup starting prompt

  • A starting prompt would be invoked when the bot is first started or reset
  • You can set it up by modifying the content in starting-prompt.txt
  • All the text in the file will be fired as a prompt to the bot
  • Get the first message from ChatGPT in your discord channel!
    1. Right-click the channel you want to recieve the message, Copy ID
    2. paste it into .env under DISCORD_CHANNEL_ID

Yeah, AI moves way too fast

Get the email that makes keeping up with AI easy and fun.

Leave a Comment