This plugin allows you to create and edit files in a directory on your computer using ChatGPT. (If you do not already have plugin developer access, please join the waitlist.)
The advantage of this plugin compared to similar offerings is that it is completely local. Your project files don't need to be on a publicly available repository (as long as you trust OpenAI's privacy policy). You also don't have to push your changes everytime you make a change.
To install the required packages for this plugin, run the following command:
pip install -r requirements.txt
To run the plugin, enter the following command:
python main.py
Once the local server is running:
- Navigate to https://chat.openai.com.
- In the Model drop down, select "Plugins" (note, if you don't see it there, you don't have access yet).
- Select "Plugin store"
- Select "Develop your own plugin"
- Enter in
localhost:5003
since this is the URL the server is running on locally, then select "Find manifest file".
The plugin should now be installed and enabled! You can start with a question like "What files are in the project ?"
The directories accessible by ChatGPT File Editor are stored in the projects.yaml file.
To add a new project, add a new entry to the projects
list.
- The
full_name
field is the name of the project that will be displayed in the File Editor. - The
path
field is the path to the directory that contains the files for the project. - The
slug
field is the name of the project that will be used in the URL for the File Editor.
Projects can also be edited using the dashboard available at http://localhost:5003/dashboard.
Renaming and deleting does not affect the files on disk, only the projects.yaml
file.
Files can be excluded from the File Editor by adding a .gpteditignore
file to the project directory.
The format of the .gpteditignore
file is the same as the .gitignore
file.
Copilot allows you to edit files on the fly, but it does not allow you to create new files or to list the files in a directory. This plugin is able to know which files to edit based on your request.
No, this plugin can be used for any type of project. I personally use it for slideshow presentations made with Beamer or Reveal.js.
You can add a new file by asking a question like "Create a new file called file_name
".
You can edit a file by asking a question like "Edit file_name
".
You can list all the files in the project by asking a question like "What files are in the project ?".
You can list all the files in a directory by asking a question like "What files are in the directory_name
directory ?".
You can't delete files. This is to prevent accidental deletion of files. Maybe this will be added as an opt-in feature in the future.