feature: add support for Codeium chat
Wow, I was also planning to do this in the next phase when the chat feature is upgraded, but pull requests are always welcomed.
Do you mind explaining how Codeium chat will be integrated in this pull request?
Wow, I was also planning to do this in the next phase when the chat feature is upgraded, but pull requests are always welcomed.
Do you mind explaining how Codeium chat will be integrated in this pull request?
Kevin from the Codeium team here. We are going to be bringing Codeium Chat to Xcode! @etaldot is implementing this right now and will be opening PRs in the next week. How it works at a high level:
- Language server has two process that we will enable: web socket server and chat web client bundle
- The web client bundle will be served on a free port and will be embedded via iFrame or browser window. This will connect to the web socket server.
- In future PRs, there will be links, inline buttons, etc. that will enable users to click a "Code Lens" above a function definition to explain a piece of code. This will send a request to the web socket server and the result will be streamed to any open chat clients.
Let me know if you have other questions! We're excited to be releasing this soon 🙂
Hello, is there any plan in continuing this pull request? If so, please rebase on the develop branch since there are several changes affect this pull request.
- The
CodeiumServiceis now held by theCodeiumWorkspacePluginso you don't needSuggestionWorkspacePluginto access the language server. To access the plugin, you need to get the current workspace URL fromXcodeInspector, get the workspace for the URL fromworkspacePooland get the plugin from the workspace. - The open chat command is now handled in
PseudoCommandHandler.openChat. You can add a newOpenChatModeand handle it there. - In
CodeiumExtension.extensionUsageDidChange, maybe you want the language server to stay alive when the open chat mode is set to the new option. You can useUserDefaultObserverto track the changes of the open chat mode.
Hello, since it has been quite a while so I am going to manually merge this branch into merging-codeium-chat then into develop.