GPT Terminal is a platform that allows you to have free conversations with GPT in the terminal.
Here, you can easily implement more customized functionalities and have your own GPT terminal!
The project is implemented based on Vue3 and Express.
Demo Link:https://gpt-terminal.up.railway.app/
-
✨ Support dialogue between command-line terminal and GPT. As programmers, we communicate with GPT in a geeky way!
-
🌟 Support configuration of API Key (OpenAI API method) and Access Token (Web API method) - either one can be chosen.
-
🌈 Support DIY of GPT roles and persist them. Have conversations with your exclusive role!
-
☁️ Support GPT to remember the conversation history and provide commands to query the history. Give your GPT a good memory~
-
🍀 Support the widely-used Event Stream technology for GPT responses, achieving a typewriter effect~
-
🌴 Support rendering GPT responses in Markdown format.
-
🍃 Basic terminal commands such as viewing command history, accessing help manuals, clearing the screen, etc.
You only need to have a basic understanding of using npm
to unlock all the features!
-
Clone the project to your local machine.
git clone https://github.com/ltyzzzxxx/gpt-web-terminal.git
-
Navigate to the project directory and install dependencies for the frontend and backend separately.
cd gpt-web-terminal && npm install cd service && npm install
-
Configure your API Key or Access Token in
service/.env
. API key takes priority.# Choose either API Key (OpenAI API method) or Access Token (Web API method) OPENAI_API_KEY= OPENAI_ACCESS_TOKEN= # Configure reverse proxy address when using Access Token API_REVERSE_PROXY=
-
Run the frontend.
npm run dev
-
Run the backend.
npm run start
-
Quickly unlock command usage - use the help command in the command-line to query the usage.
# Query all command help help # Query specific command help gpt -h gpt chat -h gpt role -h gpt history -h
Use the following command to start the role DIY
process
# k - Role unique identifier, e.g., default / cli / sql / ikun
# n - Role name, e.g., Command-line Translation Assistant, SQL-BOY
# d - Role description, e.g., Translate your natural language instructions into Windows/Unix terminal commands
gpt diy <-k GPT role unique identifier> <-n GPT role name> <-d GPT role description>
This project was inspired by YuIndex,and eventually transformed it into "GPT Terminal".
Apache License Version 2.0 see http://www.apache.org/licenses/LICENSE