Please restart Xcode to finish the update.
- Add support for the new 16K model and 0613 models.
- Search chat plugin now replies in the preferred language.
- Add chat plugin
\shortcutInput(shortcut name)
to generate and send a user message to the bot.
The new function calling feature in ChatGPT is remarkable, we will be able to integrate some of the plugins and scopes into the bot without having to write an agent!
What's New in 0.18.1
- May have fixed #172 (again!)
- Support setting up a proxy for GitHub Copilot.
- Fix that undoing in chat text view may crash the app.
- Support new chat plugin:
/shortcut(shortcut name)
: It will run a shortcut from the Shortcuts.app with your message (or the previous message if the new message is empty) as input, and reply with it's output. It may not have the permission to do everything like accessing your photo library.
For example, if you have a shortcut like this one:

You can send /shortcut(translate) Hello world!
to get "你好世界!" in reply, or, send /shortcut(translate)
to let it translate the previous message. (Stop and output is not needed here.)
What's New in 0.18.0
-
We now support 2 new chat plugins:
- /math: This plugin allows you to solve a simple math problem in natural language.
- /search: This plugin can search on Bing and get an answer to your question. We chose Bing because it has a good enough free tier. To use this plugin, you will need to provide a subscription key in the host app. (Disclaimer: It's not as good as Bing Chat.)
Both of these plugins currently lack the knowledge of the chat history.
-
You can now personalize the bot by setting the default system prompt.
-
For custom commands of open chat and custom chat, they now support the following template arguments:
Argument Description {{selected_code}}
The currently selected code in the editor. {{active_editor_language}}
The programming language of the active editor. {{active_editor_file_url}}
The URL of the active file in the editor. {{active_editor_file_name}}
The name of the active file in the editor. If you prefer the old behavior of chat with selection, you can build your own command to send the code into the extra system prompt.
-
May have fixed #172 (If you still experience the crash, please help me debug it)
I have been experimenting with LangChain over the past few days and found it possible to embed the Python version of LangChain and use it with PythonKit. However, the experience was not optimal and it made the code sign take more time. Therefore, I decided to implement part of the chain and agent functionality in Swift and built the search plugin with it. Having a natively implemented chain and agent allows me to have better control over their behavior, and makes it easier to integrate native tools. I am still considering embedding LangChain (Python or Javascript, decision not yet made) in future versions to utilize their well-implemented and tested chains.
Pull Requests
- Display instructions in the chat panel by @intitni in #240
- Disable LazyVStack by @intitni in #241
- LangChain by @intitni in #242
- Custom command inserting {{selected_code}} by @intitni in #244
- Re-implement math plugin in swift by @intitni in #246
- Search chat plugin by @intitni in #247
- Add auto completion for chat plugins and scopes by @intitni in #248
Full Changelog: 0.17.1...0.18.0