diff --git a/README.md b/README.md index 41885c3e..8baf9aca 100644 --- a/README.md +++ b/README.md @@ -1,247 +1,78 @@ +

ChatGPT -

ChatGPT

-

ChatGPT Desktop Application (Mac, Windows and Linux)

-

+

ChatGPT Desktop App

+

ChatGPT Desktop Application

+ Availiable: +

(Mac, Windows and Linux)

+ + [![English badge](https://img.shields.io/badge/%E8%8B%B1%E6%96%87-English-blue)](./README.md) -[![简体中文 badge](https://img.shields.io/badge/%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87-Simplified%20Chinese-blue)](./README-ZH_CN.md)\ +[![简体中文 badge](https://img.shields.io/badge/%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87-Simplified%20Chinese-blue)](https://github.com/lencx/ChatGPT/blob/main/docs/Chinese_ZH_CN/README-ZH_CN.md)\ ![License](https://img.shields.io/badge/License-Apache%202-green.svg) ![visitor](https://visitor-badge.glitch.me/badge?page_id=lencx.chatgpt) [![ChatGPT downloads](https://img.shields.io/github/downloads/lencx/ChatGPT/total.svg?style=flat-square)](https://github.com/lencx/ChatGPT/releases) [![chat](https://img.shields.io/badge/chat-discord-blue?style=flat&logo=discord)](https://discord.gg/aPhCRf4zZr) [![lencx](https://img.shields.io/badge/follow-lencx__-blue?style=flat&logo=Twitter)](https://twitter.com/lencx_) - - +![ChatGPT Desktop](assets\chatGPT-Desktop.jpg) -Buy Me A Coffee - -## 📦 Install - -- [📝 Update Log](./UPDATE_LOG.md) -- [🕒 History versions...](https://github.com/lencx/ChatGPT/releases) - -### Windows - -- [ChatGPT_0.10.1_x64_en-US.msi](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/ChatGPT_0.10.1_x64_en-US.msi): Direct download installer -- Use [winget](https://winstall.app/apps/lencx.ChatGPT): - - ```bash - # install the latest version - winget install --id=lencx.ChatGPT -e - - # install the specified version - winget install --id=lencx.ChatGPT -e --version 0.10.0 - ``` - -**Note: If the installation path and application name are the same, it will lead to conflict ([#142](https://github.com/lencx/ChatGPT/issues/142#issuecomment-0.10.1))** - -### Mac - -- [ChatGPT_0.10.1_x64.dmg](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/ChatGPT_0.10.1_x64.dmg): Direct download installer -- [ChatGPT.app.tar.gz](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/ChatGPT.app.tar.gz): Download the `.app` installer -- Homebrew \ - Or you can install with _[Homebrew](https://brew.sh) ([Cask](https://docs.brew.sh/Cask-Cookbook)):_ - ```sh - brew tap lencx/chatgpt https://github.com/lencx/ChatGPT.git - brew install --cask chatgpt --no-quarantine - ``` - Also, if you keep a _[Brewfile](https://github.com/Homebrew/homebrew-bundle#usage)_, you can add something like this: - ```rb - repo = "lencx/chatgpt" - tap repo, "https://github.com/#{repo}.git" - cask "chatgpt", args: { "no-quarantine": true } - ``` - -### Linux - -- [chat-gpt_0.10.1_amd64.deb](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/chat-gpt_0.10.1_amd64.deb): Download `.deb` installer, advantage small size, disadvantage poor compatibility -- [chat-gpt_0.10.1_amd64.AppImage](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/chat-gpt_0.10.1_amd64.AppImage): Works reliably, you can try it if `.deb` fails to run -- Available on [AUR](https://aur.archlinux.org/packages/chatgpt-desktop-bin) with the package name `chatgpt-desktop-bin`, and you can use your favourite AUR package manager to install it. - - - -## 📢 Announcement - -### ChatGPT Prompts! - -This is a major and exciting update. It works like a `Telegram bot command` and helps you quickly populate custom models to make chatgpt work the way you want it to. This project has taken a lot of my spare time, so if it helps you, please help spread the word or star it would be a great encouragement to me. I hope I can keep updating it and adding more interesting features. - -### How does it work? - -You can look at **[awesome-chatgpt-prompts](https://github.com/f/awesome-chatgpt-prompts)** to find interesting features to import into the app. You can also use `Sync Prompts` to sync all in one click, and if you don't want certain prompts to appear in your slash commands, you can disable them. - -![chatgpt cmd](./assets/chatgpt-cmd.png) -![chatgpt sync prompts](./assets/chatgpt-sync-prompts.png) - - - -- In the chatgpt text input area, type a character starting with `/` to bring up the command prompt, press the spacebar, and it will fill the input area with the text associated with the command by default (note: if it contains multiple command prompts, it will only select the first one as the fill, you can keep typing until the first prompted command is the one you want, then press the spacebar. -- Or use the mouse to click on one of the multiple commands). When the fill is complete, you simply press the Enter key. -- Under the slash command, use the tab key to modify the contents of the `{q}` tag (only single changes are supported [#54](https://github.com/lencx/ChatGPT/issues/54)). Use the keyboard `⇧` (arrow up) and `⇩` (arrow down) keys to select the slash command. - -![chatgpt](assets/chatgpt.gif) -![chatgpt-cmd](assets/chatgpt-cmd.gif) - -## ✨ Features - -- Multi-platform: `macOS` `Linux` `Windows` -- Export ChatGPT history (PNG, PDF and Markdown) -- The main window and system tray support custom URLs to wrap any website into a desktop application -- Automatic application upgrade notification -- Common shortcut keys -- System tray hover window -- Powerful menu items -- Support for slash commands and their configuration (can be configured manually or synchronized from a file [#55](https://github.com/lencx/ChatGPT/issues/55)) -- Customize global shortcuts ([#108](https://github.com/lencx/ChatGPT/issues/108)) -- Pop-up Search ([#122](https://github.com/lencx/ChatGPT/issues/122) mouse selected content, no more than 400 characters): The application is built using Tauri, and due to its security restrictions, some of the action buttons will not work, so we recommend going to your browser. - -## #️⃣ MenuItem - -- **Preferences** - - `Theme` - `Light`, `Dark`, `System` (Only macOS and Windows are supported). - - `Stay On Top`: The window is stay on top of other windows. - - `Titlebar`: Whether to display the titlebar, supported by macOS only. - - `Hide Dock Icon` ([#35](https://github.com/lencx/ChatGPT/issues/35)): Hide application icons from the Dock(support macOS only). - - Right-click on the SystemTray to open the menu, then click `Show Dock Icon` in the menu item to re-display the application icon in the Dock (`SystemTrayMenu -> Show Dock Icon`). - - `Inject Script`: Using scripts to modify pages. - - `Control Center`: The control center of ChatGPT application, it will give unlimited imagination to the application. - - `Theme`, `Stay On Top`, `Titlebar`, ... - - `User Agent` ([#17](https://github.com/lencx/ChatGPT/issues/17)): Custom `user agent`, which may be required in some scenarios. The default value is the empty string. - - `Switch Origin` ([#14](https://github.com/lencx/ChatGPT/issues/14)): Switch the site source address, the default is `https://chat.openai.com`, please make sure the mirror site UI is the same as the original address. Otherwise, some functions may not be available. - - `Go to Config`: Open the configuration file directory (`path: ~/.chatgpt/*`). - - `Clear Config`: Clear the configuration file (`path: ~/.chatgpt/*`), dangerous operation, please backup the data in advance. - - `Restart ChatGPT`: Restart the application, for example: the program is stuck or the injection script can take effect by restarting the application after editing. - - `Awesome ChatGPT`: Recommended Related Resources. -- **Edit** - `Undo`, `Redo`, `Cut`, `Copy`, `SelectAll`, ... -- **View** - `Go Back`, `Go Forward`, `Scroll to Top of Screen`, `Scroll to Bottom of Screen`, `Refresh the Screen`, ... -- **Help** - - `Update Log`: ChatGPT changelog. - - `Report Bug`: Report a bug or give feedback. - - `Toggle Developer Tools`: Developer debugging tools. - -## ⚙️ Application Configuration - -| Platform | Path | -| -------- | ------------------------- | -| Linux | `/home/lencx/.chatgpt` | -| macOS | `/Users/lencx/.chatgpt` | -| Windows | `C:\Users\lencx\.chatgpt` | - -- `[.chatgpt]` - application configuration root folder - - `chat.conf.json` - preferences configuration - - `chat.awesome.json` - Custom URL lists, similar to browser bookmarks. Any URL can be used as the main window or tray window (**Control Conter -> Awesome**) - - `chat.model.json` - prompts configuration,contains three parts: - - `user_custom` - Requires manual data entry (**Control Conter -> Language Model -> User Custom**) - - `sync_prompts` - Synchronizing data from [f/awesome-chatgpt-prompts](https://github.com/f/awesome-chatgpt-prompts) (**Control Conter -> Language Model -> Sync Prompts**) - - `sync_custom` - Synchronize custom json and csv file data, support local and remote (**Control Conter -> Language Model -> Sync Custom**) - - `chat.model.cmd.json` - filtered (whether to enable) and sorted slash commands - - `[cache_model]` - caching model data - - `chatgpt_prompts.json` - Cache `sync_prompts` data - - `user_custom.json` - Cache `user_custom` data - - `ae6cf32a6f8541b499d6bfe549dbfca3.json` - Randomly generated file names, cache `sync_custom` data - - `4f695d3cfbf8491e9b1f3fab6d85715c.json` - Randomly generated file names, cache `sync_custom` data - - `bd1b96f15a1644f7bd647cc53073ff8f.json` - Randomly generated file names, cache `sync_custom` data - -### Sync Custom - -Currently, only json and csv are supported for synchronizing custom files, and the following formats need to be met, otherwise the application will be abnormal: - -`JSON format:` - -```json -[ - { - "cmd": "a", - "act": "aa", - "prompt": "aaa aaa aaa" - }, - { - "cmd": "b", - "act": "bb", - "prompt": "bbb bbb bbb" - } -] -``` - -`CSV format` - -```csv -"cmd","act","prompt" -"a","aa","aaa aaa aaa" -"b","bb","bbb bbb bbb" -``` - -## 📌 TODO - - - -- `Control Center` enhancement -- `Pop-up Search` enhancement -- ... - -## 👀 Preview + -install popup search -control center export -dalle2 tray auto update + -## ❓FAQ +Buy Me A Coffee +
-### Can't open ChatGPT +## Contents: -If you cannot open the application after the upgrade, please try to clear the configuration file, which is in the `~/.chatgpt/*` directory. +- [Getting Started](#-Install) +- [Features](#-Features) +- [Documentation](#-Documentation) +- [Development Environment (Local)](#-Development_Environment) +- [Platform, Build, and Deployment Status](#-Platform) +- [Contributing](#-Contributing) +- [FAQ](#-FAQ) +- [Special Thanks](#-Thanks) +- [License](#-License) -### Out of sync login status between multiple windows -If you have already logged in in the main window, but the system tray window shows that you are not logged in, you can fix it by restarting the application (`Menu -> Preferences -> Restart ChatGPT`). +## Getting Started +You can get started with ChatGPT Desktop by downloading the latest version of ChatGPT Desktop for your select operating system below. Alternatively, if you want to contribute you can set up a local development environment and start contributing [here](#-Contributing). -### Is it safe? +💻**Windows:** [Install for windows](https://github.com/lencx/ChatGPT/blob/main/docs/install-docs/windows-install.md) -It's safe, just a wrapper for [OpenAI ChatGPT](https://chat.openai.com) website, no other data transfer exists (you can check the source code). +💻**Mac:** [Install for mac](https://github.com/lencx/ChatGPT/blob/main/docs/install-docs/mac-install.md) -### Developer cannot be verified? +💻**Linux:** [Install for linux](https://github.com/lencx/ChatGPT/blob/main/docs/install-docs/linux-install.md) -- [Open a Mac app from an unidentified developer](https://support.apple.com/en-sg/guide/mac-help/mh40616/mac) +## Documentation +See offical ChatGPT Desktop documentation vist this [link](https://app.nofwl.com/). For quick start references, new featres, and documentation see the following below. ---- -### How do I build it? -#### PreInstall +## Contributing +We welcome all contributions to the community please read the code of conduct and the contribution guidlines below to get started. -- [Rust (Required)](https://www.rust-lang.org/) -- [Node.js (Required)](https://nodejs.org/) -- [VS Code (Optional)](https://code.visualstudio.com/) - - [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer) - - [tauri](https://marketplace.visualstudio.com/items?itemName=tauri-apps.tauri-vscode) +- [Contributing](https://github.com/lencx/ChatGPT/blob/main/docs/contribute-docs/CONTRIBUTING.md) +- [Code of conduct](https://github.com/lencx/ChatGPT/blob/main/docs/contribute-docs/CODE_OF_CONDUCT.md) +## Development Environment (Local) +- [Local development](https://github.com/lencx/ChatGPT/blob/main/docs/development/development.md) +## Platform, Build, and Deployment Status +- [📝 Update Log](./UPDATE_LOG.md) +- [🕒 History versions...](https://github.com/lencx/ChatGPT/releases) -#### Start -```bash -# step1: -git clone https://github.com/lencx/ChatGPT.git -# step2: -cd ChatGPT +--------------------------------------------------------------- -# step3: install deps -yarn -# step4: -yarn dev -# step5: -# bundle path: src-tauri/target/release/bundle -yarn build -``` -- [The distDir configuration is set to "../dist" but this path doesn't exist](https://github.com/lencx/ChatGPT/discussions/180) -- [Error A public key has been found, but no private key. Make sure to set TAURI_PRIVATE_KEY environment variable.](https://github.com/lencx/ChatGPT/discussions/182) ## ❤️ Thanks @@ -261,3 +92,12 @@ yarn build ## License Apache License + + +## 📌 TODO + + + +- `Control Center` enhancement +- `Pop-up Search` enhancement + diff --git a/assets/apple-mac.png b/assets/apple-mac.png new file mode 100644 index 00000000..271829b7 Binary files /dev/null and b/assets/apple-mac.png differ diff --git a/assets/chatGPT-Desktop.jpg b/assets/chatGPT-Desktop.jpg new file mode 100644 index 00000000..dce0a67e Binary files /dev/null and b/assets/chatGPT-Desktop.jpg differ diff --git a/assets/debian.png b/assets/debian.png new file mode 100644 index 00000000..d99b0a9f Binary files /dev/null and b/assets/debian.png differ diff --git a/assets/linux.png b/assets/linux.png new file mode 100644 index 00000000..a647f5c5 Binary files /dev/null and b/assets/linux.png differ diff --git a/assets/ubuntu.png b/assets/ubuntu.png new file mode 100644 index 00000000..fb2bfd19 Binary files /dev/null and b/assets/ubuntu.png differ diff --git a/assets/windows.png b/assets/windows.png new file mode 100644 index 00000000..2d4f5d15 Binary files /dev/null and b/assets/windows.png differ diff --git a/assets/windows_.png b/assets/windows_.png new file mode 100644 index 00000000..9af6605f Binary files /dev/null and b/assets/windows_.png differ diff --git a/chat.model.md b/chat.model.md deleted file mode 100644 index 9a80fc84..00000000 --- a/chat.model.md +++ /dev/null @@ -1,3 +0,0 @@ -# ChatGPT Model - -- [Awesome ChatGPT Prompts](https://github.com/f/awesome-chatgpt-prompts) diff --git a/README-ZH_CN.md b/docs/Chinese_ZH_CN/README-ZH_CN.md similarity index 100% rename from README-ZH_CN.md rename to docs/Chinese_ZH_CN/README-ZH_CN.md diff --git a/docs/FAQ/faq.md b/docs/FAQ/faq.md new file mode 100644 index 00000000..29024dea --- /dev/null +++ b/docs/FAQ/faq.md @@ -0,0 +1,24 @@ +
+

+ChatGPT +

ChatGPT Desktop App FAQ

+
+ +## ❓FAQ + +### Can't open ChatGPT + +> If you cannot open the application after the upgrade, please try to clear the configuration file, which is in the `~/.chatgpt/*` directory. + +### Out of sync login status between multiple windows + +> If you have already logged in in the main window, but the system tray window shows that you are not logged in, you can fix it by restarting the application (`Menu -> Preferences -> Restart ChatGPT`). + +### Is it safe? + +> It's safe, just a wrapper for [OpenAI ChatGPT](https://chat.openai.com) website, no other data transfer exists (you can check the source code). + +### Developer cannot be verified? + +- [Open a Mac app from an unidentified developer](https://support.apple.com/en-sg/guide/mac-help/mh40616/mac) + diff --git a/docs/contribute-docs/CODE_OF_CONDUCT.md b/docs/contribute-docs/CODE_OF_CONDUCT.md new file mode 100644 index 00000000..993e2e9e --- /dev/null +++ b/docs/contribute-docs/CODE_OF_CONDUCT.md @@ -0,0 +1,69 @@ +
+

+ChatGPT +

ChatGPT Desktop App Code of Conduct

+
+ +Contributor Covenant Code of Conduct +Our Pledge +We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community. + +Our Standards +Examples of behavior that contributes to a positive environment for our community include: + +Demonstrating empathy and kindness toward other people +Being respectful of differing opinions, viewpoints, and experiences +Giving and gracefully accepting constructive feedback +Accepting responsibility and apologizing to those affected by our mistakes, and learning from the experience +Focusing on what is best not just for us as individuals, but for the overall community +Examples of unacceptable behavior include: + +The use of sexualized language or imagery, and sexual attention or advances of any kind +Trolling, insulting or derogatory comments, and personal or political attacks +Public or private harassment +Publishing others' private information, such as a physical or email address, without their explicit permission +Other conduct which could reasonably be considered inappropriate in a professional setting +Enforcement Responsibilities +Community leaders are responsible for clarifying and enforcing our standards of acceptable behavior and will take appropriate and fair corrective action in response to any behavior that they deem inappropriate, threatening, offensive, or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, and will communicate reasons for moderation decisions when appropriate. + +Scope +This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public spaces. Examples of representing our community include using an official e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. + +Enforcement +Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to the community leaders responsible for enforcement at Contact method. All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the reporter of any incident. + +Enforcement Guidelines +Community leaders will follow these Community Impact Guidelines in determining the consequences for any action they deem in violation of this Code of Conduct: + +1. Correction +Community Impact: Use of inappropriate language or other behavior deemed unprofessional or unwelcome in the community. + +Consequence: A private, written warning from community leaders, providing clarity around the nature of the violation and an explanation of why the behavior was inappropriate. A public apology may be requested. + +2. Warning +Community Impact: A violation through a single incident or series of actions. + +Consequence: A warning with consequences for continued behavior. No interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, for a specified period of time. This includes avoiding interactions in community spaces as well as external channels like social media. Violating these terms may lead to a temporary or permanent ban. + +3. Temporary Ban +Community Impact: A serious violation of community standards, including sustained inappropriate behavior. + +Consequence: A temporary ban from any sort of interaction or public communication with the community for a specified period of time. No public or private interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, is allowed during this period. Violating these terms may lead to a permanent ban. + +4. Permanent Ban +Community Impact: Demonstrating a pattern of violation of community standards, including sustained inappropriate behavior, harassment of an individual, or aggression toward or disparagement of classes of individuals. + +Consequence: A permanent ban from any sort of public interaction within the community. + +Attribution +This Code of Conduct is adapted from the Contributor Covenant, version 2.0, available at https://www.contributor-covenant.org/version/2/0/code_of_conduct.html. + +Community Impact Guidelines were inspired by Mozilla's code of conduct enforcement ladder. + +For answers to common questions about this code of conduct, see the FAQ at https://www.contributor-covenant.org/faq. Translations are available at https://www.contributor-covenant.org/translations. \ No newline at end of file diff --git a/docs/contribute-docs/CONTRIBUTING.md b/docs/contribute-docs/CONTRIBUTING.md new file mode 100644 index 00000000..8dad9058 --- /dev/null +++ b/docs/contribute-docs/CONTRIBUTING.md @@ -0,0 +1,17 @@ +
+

+ChatGPT +

ChatGPT Desktop App Contribute

+
+ +We welcome all contributions to the community and are excited to welcome you aboard. + +Before you proceed, please take a quick 2 minutes to read our Code of Conduct. We strictly enforce it across our community so that contributing to chatGPT Desktop is a safe, inclusive experience for everyone. + +You are welcome to create, update and fix bugs and help with documentation,or help us translate chatGPT Desktop to other world languages. + +We answer the most common questions about contributing in our contributor FAQ. + +### TODO +- [ ] Add contributor FAQ +- [ ] Add contrinutor comunication channel \ No newline at end of file diff --git a/docs/development/development.md b/docs/development/development.md new file mode 100644 index 00000000..9e57c9ad --- /dev/null +++ b/docs/development/development.md @@ -0,0 +1,38 @@ +
+

+ChatGPT +

ChatGPT Desktop App Local Development

+
+ +### How do I build it? + +#### PreInstall + +- [Rust (Required)](https://www.rust-lang.org/) +- [Node.js (Required)](https://nodejs.org/) +- [VS Code (Optional)](https://code.visualstudio.com/) + - [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer) + - [tauri](https://marketplace.visualstudio.com/items?itemName=tauri-apps.tauri-vscode) + +#### Start + +```bash +# step1: +git clone https://github.com/lencx/ChatGPT.git + +# step2: +cd ChatGPT + +# step3: install deps +yarn + +# step4: +yarn dev + +# step5: +# bundle path: src-tauri/target/release/bundle +yarn build +``` + +- [The distDir configuration is set to "../dist" but this path doesn't exist](https://github.com/lencx/ChatGPT/discussions/180) +- [Error A public key has been found, but no private key. Make sure to set TAURI_PRIVATE_KEY environment variable.](https://github.com/lencx/ChatGPT/discussions/182) \ No newline at end of file diff --git a/docs/documentation/application-config.md b/docs/documentation/application-config.md new file mode 100644 index 00000000..fdaec7f9 --- /dev/null +++ b/docs/documentation/application-config.md @@ -0,0 +1,28 @@ +
+

+ChatGPT +

ChatGPT Desktop App Configurations

+
+ +## Application Configurations + +| Platform | Path | +| -------- | ------------------------- | +| Linux | `/home/lencx/.chatgpt` | +| macOS | `/Users/lencx/.chatgpt` | +| Windows | `C:\Users\lencx\.chatgpt` | + +- `[.chatgpt]` - application configuration root folder + - `chat.conf.json` - preferences configuration + - `chat.awesome.json` - Custom URL lists, similar to browser bookmarks. Any URL can be used as the main window or tray window (**Control Conter -> Awesome**) + - `chat.model.json` - prompts configuration,contains three parts: + - `user_custom` - Requires manual data entry (**Control Conter -> Language Model -> User Custom**) + - `sync_prompts` - Synchronizing data from [f/awesome-chatgpt-prompts](https://github.com/f/awesome-chatgpt-prompts) (**Control Conter -> Language Model -> Sync Prompts**) + - `sync_custom` - Synchronize custom json and csv file data, support local and remote (**Control Conter -> Language Model -> Sync Custom**) + - `chat.model.cmd.json` - filtered (whether to enable) and sorted slash commands + - `[cache_model]` - caching model data + - `chatgpt_prompts.json` - Cache `sync_prompts` data + - `user_custom.json` - Cache `user_custom` data + - `ae6cf32a6f8541b499d6bfe549dbfca3.json` - Randomly generated file names, cache `sync_custom` data + - `4f695d3cfbf8491e9b1f3fab6d85715c.json` - Randomly generated file names, cache `sync_custom` data + - `bd1b96f15a1644f7bd647cc53073ff8f.json` - Randomly generated file names, cache `sync_custom` data \ No newline at end of file diff --git a/docs/documentation/custom-sync.md b/docs/documentation/custom-sync.md new file mode 100644 index 00000000..6f550996 --- /dev/null +++ b/docs/documentation/custom-sync.md @@ -0,0 +1,34 @@ +
+

+ChatGPT +

ChatGPT Desktop App Sync Custom

+
+ +### Sync Custom + +Currently, only json and csv are supported for synchronizing custom files, and the following formats need to be met, otherwise the application will be abnormal: + +`JSON format:` + +```json +[ + { + "cmd": "a", + "act": "aa", + "prompt": "aaa aaa aaa" + }, + { + "cmd": "b", + "act": "bb", + "prompt": "bbb bbb bbb" + } +] +``` + +`CSV format` + +```csv +"cmd","act","prompt" +"a","aa","aaa aaa aaa" +"b","bb","bbb bbb bbb" +``` diff --git a/docs/documentation/official-docs.md b/docs/documentation/official-docs.md new file mode 100644 index 00000000..d95c9a63 --- /dev/null +++ b/docs/documentation/official-docs.md @@ -0,0 +1,17 @@ +
+

+ChatGPT +

ChatGPT Desktop App Docs

+
+ + +## Contents: +- [Applciation configuration](https://github.com/lencx/ChatGPT/blob/main/docs/documentation/application-config.md) +- [Custom Sync](https://github.com/lencx/ChatGPT/blob/main/docs/documentation/custom-sync.md) +- [ChatGPT Prompts](https://github.com/lencx/ChatGPT/blob/main/docs/prompts-docs/prompts-readme.md) +- [Awesome Chat GPT](https://github.com/lencx/ChatGPT/blob/main/docs/prompts-docs/AWESOME.md) +- [App Previews](https://github.com/lencx/ChatGPT/blob/main/docs/documentation/previews.md) + +### Local Setup: + +- [Local Setup](https://github.com/lencx/ChatGPT/blob/main/docs/development/development.md) \ No newline at end of file diff --git a/docs/documentation/previews.md b/docs/documentation/previews.md new file mode 100644 index 00000000..cefb1a63 --- /dev/null +++ b/docs/documentation/previews.md @@ -0,0 +1,13 @@ +
+

+ChatGPT +

ChatGPT Desktop App

+
+ + +## 👀 Preview + +install popup search +control center export +dalle2 tray auto update + diff --git a/docs/install-docs/linux-install.md b/docs/install-docs/linux-install.md new file mode 100644 index 00000000..24bded85 --- /dev/null +++ b/docs/install-docs/linux-install.md @@ -0,0 +1,27 @@ +
+

+ ChatGPT +

ChatGPT Desktop App

+

ChatGPT Desktop Application

+

(Install for Linux)

+
+ + ### Install ChatGPT Desktop on Linux + +- [chat-gpt_0.10.1_amd64.deb](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/chat-gpt_0.10.1_amd64.deb): Download `.deb` installer, advantage small size, disadvantage poor compatibility +- [chat-gpt_0.10.1_amd64.AppImage](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/chat-gpt_0.10.1_amd64.AppImage): Works reliably, you can try it if `.deb` fails to run +- Available on [AUR](https://aur.archlinux.org/packages/chatgpt-desktop-bin) with the package name `chatgpt-desktop-bin`, and you can use your favourite AUR package manager to install it. + + +
+ +ChatGPT +ChatGPT +ChatGPT + +

(Install for Linux (latest))

+
+ +--- +- [📝 Update Log](https://github.com/lencx/ChatGPT/blob/main/docs/system/UPDATE_LOG.md) +- [🕒 History versions...](https://github.com/lencx/ChatGPT/releases) \ No newline at end of file diff --git a/docs/install-docs/mac-install.md b/docs/install-docs/mac-install.md new file mode 100644 index 00000000..035aa3cc --- /dev/null +++ b/docs/install-docs/mac-install.md @@ -0,0 +1,33 @@ +
+

+ ChatGPT +

ChatGPT Desktop App

+

ChatGPT Desktop Application

+

(Install for Mac)

+
+ + ### Install ChatGPT Desktop on Mac + +- [ChatGPT_0.10.1_x64.dmg](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/ChatGPT_0.10.1_x64.dmg): Direct download installer +- [ChatGPT.app.tar.gz](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/ChatGPT.app.tar.gz): Download the `.app` installer +- Homebrew \ + Or you can install with _[Homebrew](https://brew.sh) ([Cask](https://docs.brew.sh/Cask-Cookbook)):_ + ```sh + brew tap lencx/chatgpt https://github.com/lencx/ChatGPT.git + brew install --cask chatgpt --no-quarantine + ``` + Also, if you keep a _[Brewfile](https://github.com/Homebrew/homebrew-bundle#usage)_, you can add something like this: + ```rb + repo = "lencx/chatgpt" + tap repo, "https://github.com/#{repo}.git" + cask "chatgpt", args: { "no-quarantine": true } + ``` + +
+ChatGPT +

(Install for Windows (version 10,11))

+
+ +--- +- [📝 Update Log](https://github.com/lencx/ChatGPT/blob/main/docs/system/UPDATE_LOG.md) +- [🕒 History versions...](https://github.com/lencx/ChatGPT/releases) \ No newline at end of file diff --git a/docs/install-docs/windows-install.md b/docs/install-docs/windows-install.md new file mode 100644 index 00000000..da8986da --- /dev/null +++ b/docs/install-docs/windows-install.md @@ -0,0 +1,33 @@ + +
+

+ ChatGPT +

ChatGPT Desktop App

+

ChatGPT Desktop Application

+ + +
+ +### Install ChatGPT Desktop on Windows + + +- [ChatGPT_0.10.1_x64_en-US.msi](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/ChatGPT_0.10.1_x64_en-US.msi): Direct download installer +- Use [winget](https://winstall.app/apps/lencx.ChatGPT): + + ```bash + # install the latest version + winget install --id=lencx.ChatGPT -e + + # install the specified version + winget install --id=lencx.ChatGPT -e --version 0.10.0 + ``` +
+ChatGPT +

(Install for Windows (version 10,11))

+
+ +> **Note: If the installation path and application name are the same, it will lead to conflict ([#142](https://github.com/lencx/ChatGPT/issues/142#issuecomment-0.10.1))** + +--- +- [📝 Update Log](https://github.com/lencx/ChatGPT/blob/main/docs/system/UPDATE_LOG.md) +- [🕒 History versions...](https://github.com/lencx/ChatGPT/releases) \ No newline at end of file diff --git a/docs/legacy-docs/ORG_README.md b/docs/legacy-docs/ORG_README.md new file mode 100644 index 00000000..41885c3e --- /dev/null +++ b/docs/legacy-docs/ORG_README.md @@ -0,0 +1,263 @@ +

+ ChatGPT +

ChatGPT

+

ChatGPT Desktop Application (Mac, Windows and Linux)

+

+ +[![English badge](https://img.shields.io/badge/%E8%8B%B1%E6%96%87-English-blue)](./README.md) +[![简体中文 badge](https://img.shields.io/badge/%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87-Simplified%20Chinese-blue)](./README-ZH_CN.md)\ +![License](https://img.shields.io/badge/License-Apache%202-green.svg) +![visitor](https://visitor-badge.glitch.me/badge?page_id=lencx.chatgpt) +[![ChatGPT downloads](https://img.shields.io/github/downloads/lencx/ChatGPT/total.svg?style=flat-square)](https://github.com/lencx/ChatGPT/releases) +[![chat](https://img.shields.io/badge/chat-discord-blue?style=flat&logo=discord)](https://discord.gg/aPhCRf4zZr) +[![lencx](https://img.shields.io/badge/follow-lencx__-blue?style=flat&logo=Twitter)](https://twitter.com/lencx_) + + + + + +Buy Me A Coffee + +## 📦 Install + +- [📝 Update Log](./UPDATE_LOG.md) +- [🕒 History versions...](https://github.com/lencx/ChatGPT/releases) + + + +### Windows + +- [ChatGPT_0.10.1_x64_en-US.msi](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/ChatGPT_0.10.1_x64_en-US.msi): Direct download installer +- Use [winget](https://winstall.app/apps/lencx.ChatGPT): + + ```bash + # install the latest version + winget install --id=lencx.ChatGPT -e + + # install the specified version + winget install --id=lencx.ChatGPT -e --version 0.10.0 + ``` + +**Note: If the installation path and application name are the same, it will lead to conflict ([#142](https://github.com/lencx/ChatGPT/issues/142#issuecomment-0.10.1))** + +### Mac + +- [ChatGPT_0.10.1_x64.dmg](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/ChatGPT_0.10.1_x64.dmg): Direct download installer +- [ChatGPT.app.tar.gz](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/ChatGPT.app.tar.gz): Download the `.app` installer +- Homebrew \ + Or you can install with _[Homebrew](https://brew.sh) ([Cask](https://docs.brew.sh/Cask-Cookbook)):_ + ```sh + brew tap lencx/chatgpt https://github.com/lencx/ChatGPT.git + brew install --cask chatgpt --no-quarantine + ``` + Also, if you keep a _[Brewfile](https://github.com/Homebrew/homebrew-bundle#usage)_, you can add something like this: + ```rb + repo = "lencx/chatgpt" + tap repo, "https://github.com/#{repo}.git" + cask "chatgpt", args: { "no-quarantine": true } + ``` + +### Linux + +- [chat-gpt_0.10.1_amd64.deb](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/chat-gpt_0.10.1_amd64.deb): Download `.deb` installer, advantage small size, disadvantage poor compatibility +- [chat-gpt_0.10.1_amd64.AppImage](https://github.com/lencx/ChatGPT/releases/download/v0.10.1/chat-gpt_0.10.1_amd64.AppImage): Works reliably, you can try it if `.deb` fails to run +- Available on [AUR](https://aur.archlinux.org/packages/chatgpt-desktop-bin) with the package name `chatgpt-desktop-bin`, and you can use your favourite AUR package manager to install it. + + + +## 📢 Announcement + +### ChatGPT Prompts! + +This is a major and exciting update. It works like a `Telegram bot command` and helps you quickly populate custom models to make chatgpt work the way you want it to. This project has taken a lot of my spare time, so if it helps you, please help spread the word or star it would be a great encouragement to me. I hope I can keep updating it and adding more interesting features. + +### How does it work? + +You can look at **[awesome-chatgpt-prompts](https://github.com/f/awesome-chatgpt-prompts)** to find interesting features to import into the app. You can also use `Sync Prompts` to sync all in one click, and if you don't want certain prompts to appear in your slash commands, you can disable them. + +![chatgpt cmd](./assets/chatgpt-cmd.png) +![chatgpt sync prompts](./assets/chatgpt-sync-prompts.png) + + + +- In the chatgpt text input area, type a character starting with `/` to bring up the command prompt, press the spacebar, and it will fill the input area with the text associated with the command by default (note: if it contains multiple command prompts, it will only select the first one as the fill, you can keep typing until the first prompted command is the one you want, then press the spacebar. +- Or use the mouse to click on one of the multiple commands). When the fill is complete, you simply press the Enter key. +- Under the slash command, use the tab key to modify the contents of the `{q}` tag (only single changes are supported [#54](https://github.com/lencx/ChatGPT/issues/54)). Use the keyboard `⇧` (arrow up) and `⇩` (arrow down) keys to select the slash command. + +![chatgpt](assets/chatgpt.gif) +![chatgpt-cmd](assets/chatgpt-cmd.gif) + +## ✨ Features + +- Multi-platform: `macOS` `Linux` `Windows` +- Export ChatGPT history (PNG, PDF and Markdown) +- The main window and system tray support custom URLs to wrap any website into a desktop application +- Automatic application upgrade notification +- Common shortcut keys +- System tray hover window +- Powerful menu items +- Support for slash commands and their configuration (can be configured manually or synchronized from a file [#55](https://github.com/lencx/ChatGPT/issues/55)) +- Customize global shortcuts ([#108](https://github.com/lencx/ChatGPT/issues/108)) +- Pop-up Search ([#122](https://github.com/lencx/ChatGPT/issues/122) mouse selected content, no more than 400 characters): The application is built using Tauri, and due to its security restrictions, some of the action buttons will not work, so we recommend going to your browser. + +## #️⃣ MenuItem + +- **Preferences** + - `Theme` - `Light`, `Dark`, `System` (Only macOS and Windows are supported). + - `Stay On Top`: The window is stay on top of other windows. + - `Titlebar`: Whether to display the titlebar, supported by macOS only. + - `Hide Dock Icon` ([#35](https://github.com/lencx/ChatGPT/issues/35)): Hide application icons from the Dock(support macOS only). + - Right-click on the SystemTray to open the menu, then click `Show Dock Icon` in the menu item to re-display the application icon in the Dock (`SystemTrayMenu -> Show Dock Icon`). + - `Inject Script`: Using scripts to modify pages. + - `Control Center`: The control center of ChatGPT application, it will give unlimited imagination to the application. + - `Theme`, `Stay On Top`, `Titlebar`, ... + - `User Agent` ([#17](https://github.com/lencx/ChatGPT/issues/17)): Custom `user agent`, which may be required in some scenarios. The default value is the empty string. + - `Switch Origin` ([#14](https://github.com/lencx/ChatGPT/issues/14)): Switch the site source address, the default is `https://chat.openai.com`, please make sure the mirror site UI is the same as the original address. Otherwise, some functions may not be available. + - `Go to Config`: Open the configuration file directory (`path: ~/.chatgpt/*`). + - `Clear Config`: Clear the configuration file (`path: ~/.chatgpt/*`), dangerous operation, please backup the data in advance. + - `Restart ChatGPT`: Restart the application, for example: the program is stuck or the injection script can take effect by restarting the application after editing. + - `Awesome ChatGPT`: Recommended Related Resources. +- **Edit** - `Undo`, `Redo`, `Cut`, `Copy`, `SelectAll`, ... +- **View** - `Go Back`, `Go Forward`, `Scroll to Top of Screen`, `Scroll to Bottom of Screen`, `Refresh the Screen`, ... +- **Help** + - `Update Log`: ChatGPT changelog. + - `Report Bug`: Report a bug or give feedback. + - `Toggle Developer Tools`: Developer debugging tools. + +## ⚙️ Application Configuration + +| Platform | Path | +| -------- | ------------------------- | +| Linux | `/home/lencx/.chatgpt` | +| macOS | `/Users/lencx/.chatgpt` | +| Windows | `C:\Users\lencx\.chatgpt` | + +- `[.chatgpt]` - application configuration root folder + - `chat.conf.json` - preferences configuration + - `chat.awesome.json` - Custom URL lists, similar to browser bookmarks. Any URL can be used as the main window or tray window (**Control Conter -> Awesome**) + - `chat.model.json` - prompts configuration,contains three parts: + - `user_custom` - Requires manual data entry (**Control Conter -> Language Model -> User Custom**) + - `sync_prompts` - Synchronizing data from [f/awesome-chatgpt-prompts](https://github.com/f/awesome-chatgpt-prompts) (**Control Conter -> Language Model -> Sync Prompts**) + - `sync_custom` - Synchronize custom json and csv file data, support local and remote (**Control Conter -> Language Model -> Sync Custom**) + - `chat.model.cmd.json` - filtered (whether to enable) and sorted slash commands + - `[cache_model]` - caching model data + - `chatgpt_prompts.json` - Cache `sync_prompts` data + - `user_custom.json` - Cache `user_custom` data + - `ae6cf32a6f8541b499d6bfe549dbfca3.json` - Randomly generated file names, cache `sync_custom` data + - `4f695d3cfbf8491e9b1f3fab6d85715c.json` - Randomly generated file names, cache `sync_custom` data + - `bd1b96f15a1644f7bd647cc53073ff8f.json` - Randomly generated file names, cache `sync_custom` data + +### Sync Custom + +Currently, only json and csv are supported for synchronizing custom files, and the following formats need to be met, otherwise the application will be abnormal: + +`JSON format:` + +```json +[ + { + "cmd": "a", + "act": "aa", + "prompt": "aaa aaa aaa" + }, + { + "cmd": "b", + "act": "bb", + "prompt": "bbb bbb bbb" + } +] +``` + +`CSV format` + +```csv +"cmd","act","prompt" +"a","aa","aaa aaa aaa" +"b","bb","bbb bbb bbb" +``` + +## 📌 TODO + + + +- `Control Center` enhancement +- `Pop-up Search` enhancement +- ... + +## 👀 Preview + +install popup search +control center export +dalle2 tray auto update + +## ❓FAQ + +### Can't open ChatGPT + +If you cannot open the application after the upgrade, please try to clear the configuration file, which is in the `~/.chatgpt/*` directory. + +### Out of sync login status between multiple windows + +If you have already logged in in the main window, but the system tray window shows that you are not logged in, you can fix it by restarting the application (`Menu -> Preferences -> Restart ChatGPT`). + +### Is it safe? + +It's safe, just a wrapper for [OpenAI ChatGPT](https://chat.openai.com) website, no other data transfer exists (you can check the source code). + +### Developer cannot be verified? + +- [Open a Mac app from an unidentified developer](https://support.apple.com/en-sg/guide/mac-help/mh40616/mac) + +--- + +### How do I build it? + +#### PreInstall + +- [Rust (Required)](https://www.rust-lang.org/) +- [Node.js (Required)](https://nodejs.org/) +- [VS Code (Optional)](https://code.visualstudio.com/) + - [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer) + - [tauri](https://marketplace.visualstudio.com/items?itemName=tauri-apps.tauri-vscode) + +#### Start + +```bash +# step1: +git clone https://github.com/lencx/ChatGPT.git + +# step2: +cd ChatGPT + +# step3: install deps +yarn + +# step4: +yarn dev + +# step5: +# bundle path: src-tauri/target/release/bundle +yarn build +``` + +- [The distDir configuration is set to "../dist" but this path doesn't exist](https://github.com/lencx/ChatGPT/discussions/180) +- [Error A public key has been found, but no private key. Make sure to set TAURI_PRIVATE_KEY environment variable.](https://github.com/lencx/ChatGPT/discussions/182) + +## ❤️ Thanks + +- The core implementation of the share button code was copied from the [@liady](https://github.com/liady) extension with some modifications. +- Thanks to the [Awesome ChatGPT Prompts](https://github.com/f/awesome-chatgpt-prompts) repository for inspiring the custom command function for this application. + +--- + +[![Star History Chart](https://api.star-history.com/svg?repos=lencx/chatgpt&type=Timeline)](https://star-history.com/#lencx/chatgpt&Timeline) + +## 中国用户 + +国内用户如果遇到使用问题或者想交流 ChatGPT 技巧,可以关注公众号“浮之静”,发送 “chat” 进群参与讨论。公众号会更新[《Tauri 系列》](https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzIzNjE2NTI3NQ==&action=getalbum&album_id=2593843659863752704)文章,技术思考等等,如果对 tauri 开发应用感兴趣可以关注公众号后回复 “tauri” 进技术开发群(想私聊的也可以关注公众号,来添加微信)。开源不易,如果这个项目对你有帮助可以分享给更多人,或者微信扫码打赏。 + + + +## License + +Apache License diff --git a/AWESOME.md b/docs/prompts-docs/AWESOME.md similarity index 100% rename from AWESOME.md rename to docs/prompts-docs/AWESOME.md diff --git a/docs/prompts-docs/chat.model.md b/docs/prompts-docs/chat.model.md new file mode 100644 index 00000000..55b2d257 --- /dev/null +++ b/docs/prompts-docs/chat.model.md @@ -0,0 +1,9 @@ +
+

+ChatGPT +

ChatGPT Desktop App

+
+ +## ChatGPT Model + +- [Awesome ChatGPT Prompts](https://github.com/f/awesome-chatgpt-prompts) diff --git a/docs/prompts-docs/prompts-readme.md b/docs/prompts-docs/prompts-readme.md new file mode 100644 index 00000000..151742bf --- /dev/null +++ b/docs/prompts-docs/prompts-readme.md @@ -0,0 +1,62 @@ +
+

+ChatGPT +

ChatGPT Desktop App Prompts

+
+ +## ChatGPT Prompts! + +This is a major and exciting update. It works like a `Telegram bot command` and helps you quickly populate custom models to make chatgpt work the way you want it to. This project has taken a lot of my spare time, so if it helps you, please help spread the word or star it would be a great encouragement to me. I hope I can keep updating it and adding more interesting features. + +### How does it work? + +You can look at **[awesome-chatgpt-prompts](https://github.com/f/awesome-chatgpt-prompts)** to find interesting features to import into the app. You can also use `Sync Prompts` to sync all in one click, and if you don't want certain prompts to appear in your slash commands, you can disable them. + +![chatgpt cmd](./assets/chatgpt-cmd.png) +![chatgpt sync prompts](./assets/chatgpt-sync-prompts.png) + + + +- In the chatgpt text input area, type a character starting with `/` to bring up the command prompt, press the spacebar, and it will fill the input area with the text associated with the command by default (note: if it contains multiple command prompts, it will only select the first one as the fill, you can keep typing until the first prompted command is the one you want, then press the spacebar. +- Or use the mouse to click on one of the multiple commands). When the fill is complete, you simply press the Enter key. +- Under the slash command, use the tab key to modify the contents of the `{q}` tag (only single changes are supported [#54](https://github.com/lencx/ChatGPT/issues/54)). Use the keyboard `⇧` (arrow up) and `⇩` (arrow down) keys to select the slash command. + +![chatgpt](assets/chatgpt.gif) +![chatgpt-cmd](assets/chatgpt-cmd.gif) + +## ✨ Features + +- Multi-platform: `macOS` `Linux` `Windows` +- Export ChatGPT history (PNG, PDF and Markdown) +- The main window and system tray support custom URLs to wrap any website into a desktop application +- Automatic application upgrade notification +- Common shortcut keys +- System tray hover window +- Powerful menu items +- Support for slash commands and their configuration (can be configured manually or synchronized from a file [#55](https://github.com/lencx/ChatGPT/issues/55)) +- Customize global shortcuts ([#108](https://github.com/lencx/ChatGPT/issues/108)) +- Pop-up Search ([#122](https://github.com/lencx/ChatGPT/issues/122) mouse selected content, no more than 400 characters): The application is built using Tauri, and due to its security restrictions, some of the action buttons will not work, so we recommend going to your browser. + +## #️⃣ MenuItem + +- **Preferences** + - `Theme` - `Light`, `Dark`, `System` (Only macOS and Windows are supported). + - `Stay On Top`: The window is stay on top of other windows. + - `Titlebar`: Whether to display the titlebar, supported by macOS only. + - `Hide Dock Icon` ([#35](https://github.com/lencx/ChatGPT/issues/35)): Hide application icons from the Dock(support macOS only). + - Right-click on the SystemTray to open the menu, then click `Show Dock Icon` in the menu item to re-display the application icon in the Dock (`SystemTrayMenu -> Show Dock Icon`). + - `Inject Script`: Using scripts to modify pages. + - `Control Center`: The control center of ChatGPT application, it will give unlimited imagination to the application. + - `Theme`, `Stay On Top`, `Titlebar`, ... + - `User Agent` ([#17](https://github.com/lencx/ChatGPT/issues/17)): Custom `user agent`, which may be required in some scenarios. The default value is the empty string. + - `Switch Origin` ([#14](https://github.com/lencx/ChatGPT/issues/14)): Switch the site source address, the default is `https://chat.openai.com`, please make sure the mirror site UI is the same as the original address. Otherwise, some functions may not be available. + - `Go to Config`: Open the configuration file directory (`path: ~/.chatgpt/*`). + - `Clear Config`: Clear the configuration file (`path: ~/.chatgpt/*`), dangerous operation, please backup the data in advance. + - `Restart ChatGPT`: Restart the application, for example: the program is stuck or the injection script can take effect by restarting the application after editing. + - `Awesome ChatGPT`: Recommended Related Resources. +- **Edit** - `Undo`, `Redo`, `Cut`, `Copy`, `SelectAll`, ... +- **View** - `Go Back`, `Go Forward`, `Scroll to Top of Screen`, `Scroll to Bottom of Screen`, `Refresh the Screen`, ... +- **Help** + - `Update Log`: ChatGPT changelog. + - `Report Bug`: Report a bug or give feedback. + - `Toggle Developer Tools`: Developer debugging tools. \ No newline at end of file diff --git a/UPDATE_LOG.md b/docs/system/UPDATE_LOG.md similarity index 100% rename from UPDATE_LOG.md rename to docs/system/UPDATE_LOG.md