From 8ca5c0360342bcde6134c164bd0a876ec9cdfbc8 Mon Sep 17 00:00:00 2001 From: Travis Fischer Date: Mon, 5 Dec 2022 16:15:16 -0600 Subject: [PATCH] docs: readme tweaks --- readme.md | 57 ++++++++++++++++++++++++++----------------------------- 1 file changed, 27 insertions(+), 30 deletions(-) diff --git a/readme.md b/readme.md index f9ac0e28..cc14de70 100644 --- a/readme.md +++ b/readme.md @@ -9,10 +9,10 @@ [![NPM](https://img.shields.io/npm/v/chatgpt.svg)](https://www.npmjs.com/package/chatgpt) [![Build Status](https://github.com/transitive-bullshit/chatgpt-api/actions/workflows/test.yml/badge.svg)](https://github.com/transitive-bullshit/chatgpt-api/actions/workflows/test.yml) [![MIT License](https://img.shields.io/badge/license-MIT-blue)](https://github.com/transitive-bullshit/chatgpt-api/blob/main/license) [![Prettier Code Formatting](https://img.shields.io/badge/code_style-prettier-brightgreen.svg)](https://prettier.io) - [Intro](#intro) -- [How it works](#how-it-works) - [Install](#install) - [Usage](#usage) - [Docs](#docs) +- [How it works](#how-it-works) - [Examples](#examples) - [Credit](#credit) - [License](#license) @@ -23,34 +23,10 @@ This package is a Node.js wrapper around [ChatGPT](https://openai.com/blog/chatg You can use it to start building projects powered by ChatGPT like chatbots, websites, etc... -## How it works - -This package requires a valid session token from ChatGPT to access it's unofficial REST API. - -To get a session token: - -1. Go to https://chat.openai.com/chat and log in or sign up. -2. Open dev tools. -3. Open `Application` > `Cookies`. - ![ChatGPT cookies](./media/session-token.png) -4. Copy the value for `__Secure-next-auth.session-token` and save it to your environment. - -If you want to run the built-in demo, store this value as `SESSION_TOKEN` in a local `.env` file. - -> **Note** -> This package will switch to using the official API once it's released. - -> **Note** -> Prior to v1.0.0, this package used a headless browser via [Playwright](https://playwright.dev/) to automate the web UI. Here are the [docs for the initial browser version](https://github.com/transitive-bullshit/chatgpt-api/tree/v0.4.2). - ## Install ```bash -npm install --save chatgpt -# or -yarn add chatgpt -# or -pnpm add chatgpt +npm install chatgpt ``` ## Usage @@ -59,9 +35,10 @@ pnpm add chatgpt import { ChatGPTAPI } from 'chatgpt' async function example() { + // sessionToken is required; see below for details const api = new ChatGPTAPI({ sessionToken: process.env.SESSION_TOKEN }) - // ensure the API is properly authenticated (optional) + // ensure the API is properly authenticated await api.ensureAuth() // send a message and wait for the response @@ -97,9 +74,29 @@ npx tsx src/example.ts See the [auto-generated docs](./docs/classes/ChatGPTAPI.md) for more info on methods and parameters. +## How it works + +This package requires a valid session token from ChatGPT to access it's unofficial REST API. + +To get a session token: + +1. Go to https://chat.openai.com/chat and log in or sign up. +2. Open dev tools. +3. Open `Application` > `Cookies`. + ![ChatGPT cookies](./media/session-token.png) +4. Copy the value for `__Secure-next-auth.session-token` and save it to your environment. + +If you want to run the built-in demo, store this value as `SESSION_TOKEN` in a local `.env` file. + +> **Note** +> This package will switch to using the official API once it's released. + +> **Note** +> Prior to v1.0.0, this package used a headless browser via [Playwright](https://playwright.dev/) to automate the web UI. Here are the [docs for the initial browser version](https://github.com/transitive-bullshit/chatgpt-api/tree/v0.4.2). + ## Examples -All of these awesome projects use the `chatgpt` package. 🤯 +All of these awesome projects are built using the `chatgpt` package. 🤯 - [Twitter Bot](https://github.com/transitive-bullshit/chatgpt-twitter-bot) powered by ChatGPT ✨ - Mention [@ChatGPTBot](https://twitter.com/ChatGPTBot) on Twitter with your prompt to try it out @@ -107,9 +104,9 @@ All of these awesome projects use the `chatgpt` package. 🤯 - [VSCode Extension](https://github.com/mpociot/chatgpt-vscode) ([demo](https://twitter.com/marcelpociot/status/1599180144551526400)) - [Go Telegram Bot](https://github.com/m1guelpf/chatgpt-telegram) - [GitHub ProBot](https://github.com/oceanlvr/ChatGPTBot) -- [Lovelines.xyz](https://lovelines.xyz) - [Discord Bot](https://github.com/onury5506/Discord-ChatGPT-Bot) -- [EXM smart contracts `molecule`](https://github.com/decentldotland/molecule) +- [Lovelines.xyz](https://lovelines.xyz) +- [EXM smart contracts](https://github.com/decentldotland/molecule) If you create a cool integration, feel free to open a PR and add it to the list.