Genie AI: ChatGPT in VS Code


A Visual Studio Code - ChatGPT Integration

Prompt OpenAI's GPT-4, GPT-3.5, GPT-3 and Codex models within Visual Studio Code

This repository is meant for documentation, bug reports and feature requests

Testimonials

🎌 Blogpost VSCode に ChatGPT の拡張機能を入れてコードレビューやバグを発見してもらう

💙 Reviews on Twitter

❤️ ChatGPT the pair programmer - VS Code on Youtube

💚 Generative AI on LinkedIn

Level up your developer experience with Genie

📣 What’s new?

🌞 Custom system message & o1-mini and o1-preview models - Added a new setting to customize the system message / context that starts your conversation with the AI. - Update the `genieai.systemMessage` setting to customize your system message. - You can now use o1-mini and o1-preview models. **Please note that these new models have usage tier limitations. See [Usage tiers](https://platform.openai.com/docs/guides/rate-limits/usage-tiers).**
⏫ GPT-4o & 2024 Models available - You can now use gpt-4o and other 2024 models with improved maxTokens. - New models include: `gpt-4o`, `gpt-4o-2024-05-13`, `gpt-4-turbo`, `gpt-4-turbo-2024`, `gpt-4-turbo-preview`, `gpt-4-0125-preview` - Editor View is now fixed and uses your selected model instead of legacy models. - Fixed Genie: Generate commit message problems due to vscode updating its APIs. - Added new menu item to run Genie: Generate commit message command.
⚡ Generate commit messages functionality added - Generate commit messages right within VS Code: Genie: Generate commit messages - You can update your commit message prompt from the extension settings. You may also opt-out if you prefer to use other commit message generators. - `Genie: Generate a commit message` command and shortcut supports multi-folder workspaces. ### Misc. - Update your generate commit message prompt: `genieai.promptPrefix.commit-message` - Opt-out of the Quick Fix actions setting is added: `genieai.quickFix.enable` - Opt-out of the Generate Commit Message functionality: `genieai.enableGenerateCommitMessage` - All of Genie's context menu items are now wrapped under `Genie` submenu Genie: submenu
⏫ GPT-4 & GPT-3.5 Turbo models added 1. Updated model selection - You can now use gpt-4-1106-preview (GPT-4 Turbo) and gpt-3.5-turbo-1106 (GPT-3.5 Turbo) via Genie. - New models include: `gpt-4-1106-preview`, `gpt-4-0613`, `gpt-4-32k-0613`, `gpt-3.5-turbo-1106`, `gpt-3.5-turbo-16k`, `gpt-3.5-turbo-instruct` - Deprecated `gpt-4-0314`, `gpt-4-32k-0314`, `gpt-3.5-turbo-0301` in favor of the [replacement models](https://platform.openai.com/docs/models).
✨ Azure OpenAI Service support & more 1. Azure OpenAI Service - You can now use your Azure OpenAI deployments with Genie - Set your full Azure OpenAI deployment URL in setting: `genieai.azure.url` following the instructions mentioned in the setting description - Ensure to set the extension's model setting to the right base model you used for Azure deployment Genie: Azure OpenAI Service setting 2. Rename and remove your conversations within sidebar - You don't need to update the `genie.json` file to update your conversation's name. Genie: Rename conversation 3. Improved autoscroll behaviour - Autoscroll will be disabled if you interrupt the stream
💡 Quick fix problems - Ask Genie to quick fix the problems that you see in your code - Click on the lightbulb on a code piece where you see underlined error Genie: Quick fix
💬 Save your conversations and continue at any time 1. Conversation history - The goal: Collect feedback and measure the compatibility across different machine, OS setups. - We are experimenting a new feature to help you store your conversations in your disk using VS Code global storage API. - You need to opt-in to use this feature as this is experimental to collect feedback from the users. Setting name: `genieai.enableConversationHistory` - With this experimental feature, keep in mind this feature has limitations at the moment and may have bugs, use it at your own risk. - You may want to remove the stored files manually for privacy from time to time, extension doesn't have any way to modify the files other than writing new threads to files. - All conversations start with name 'New chat' and you can change it in `genie.json` file. - The conversations are stored only on your machine, using VS Code's provided global storage API for extensions. 2. Misc. bug fixes and improvements > ### Conversation history - Demo > > --- > > >

Genie - ChatGPT Conversation History - Watch Video

> >

Get Started

Get your API Key from here: OpenAI and see OpenAI official docs for available model details

  1. Simply ask any coding question by selecting a code fragment.
  2. Once asked, provide your API Key.

If you face issues regarding your API Key, see FAQ for details on how to reenter/clear it

Features

The extension comes with context menu commands, copy/move suggested code into editor with one-click, conversation window and customization options for OpenAI’s ChatGPT prompts.

We recently introduced Genie to Problems window. You can investigate your compile-time errors asking Genie. Simply click on Lightbulb/suggestion icon to ask Genie to help you. The credits for this idea goes to @cahaseler; if you are interested in seeing his Genie-companion extension visit this issue

Customization

You may assign a keyboard shortcut to any of the following commands using VS Code’s built-in keybindings menu.

Other available commands

Troubleshooting

FAQ

Common Issues

Disclaimer and Credits