Skip to content

Changelog

Please run Copilot for Xcode.app once and restart Xcode to finish the update.

0.35.2

  • Support prompt caching for Anthropic through OpenRouter.
  • Support adding debug area as context.
  • Bump GitHub Copilot and Codeium language servers.
  • Fix that errors from GitHub Copilot Chat are not correctly handled.
  • Fix incorrect color space when syncing theme with Xcode.
  • Fix message text color in light mode.
  • Fix that the chat may hang if the context window is small but the app fail to truncate the context.
GitHub

0.35.1

This release focuses on the chat and modification features.

Quick Fix

  • Fix that the chat doesn’t have memory when the limit is set to no limit.
  • Update the file search to support fuzzy match.

Chat

Learn More

  • Updated prompt to make use of prompt caching from OpenAI and Anthropic.

  • Added the new chat tab to replace the old one.

    The old chat tab will not be automatically converted to the new one, so you need to manually start a new chat.

  • New chat UI that should be more readable.

  • New input field that comes with a context picker that allows you to better control the context of the chat.

    Context Picker

    • You can add context by clicking the + button and remove context by clicking the x button. You can also use the @ to add a context, the app will show the context list as you type.
    • (Plus, free trial) Unlimited contexts.
  • Display the file name of code block if detected.

  • Added apply button to code block to apply the suggested code to selection or active document.

    Apply Button

  • Added create file button to code block to create a new file with the suggested code if the file doesn’t exist yet.

  • Added run button to code block if the code block is a shell command or AppleScript.

    Run Button

  • Updated the copy button to draggable one so you can drag the button to the file tree to create a new file with the code block content.

  • (Plus, free trial) Send message to a specific agent using the @ symbol. But there is only one extra agent for now @casual.

  • (Plus, free trial) Send message without waiting for the response to complete.

  • The custom command will behave differently now. The extra system prompt will now be injected into the context as a topic. Topics will be put into the system prompt.

  • You can still use / to run a command.

  • Updated @sense scope behavior.

  • Updated @web scope to be RAG based.

  • Removed the scope settings from the host app. The settings are now in the context picker. You can click the added context to configure each context.

  • The custom system prompt will now be appended to the default system prompt. The default system prompt contains a bunch of rules about the response format, so you don’t need to include those rules in the custom system prompt.

Modification

Learn More

  • Updated prompt to make use of prompt caching from OpenAI and Anthropic.
  • The same new input field that comes with a context picker that allows you to better control the context of the modification.
  • Display modifications in full diff.
  • Updated the copy button to draggable one so you can drag the button to the file tree to create a new file with the code block content.

Others

  • Added custom header field settings for OpenAI compatible models.
  • Added dimension settings for the embedding model.
  • Fix that the embedding feature doesn’t work with models that has a different embedding dimension than the default one.
  • Fix that the web content retrieval always wait for the timeout.

It took longer than expected. All the new plus features are set to released on 2024-11-01 so you don’t need a new license.

GitHub

0.34.3

  • Fix that a chat tab may be registered to an empty id so that it’s not available.
  • Fix that command+w is not closing chat tabs.
  • For Claude models, use -latest variant when possible.
GitHub

0.35.0

beta

For any feedback please report to the release discussion.

Beta 3

  • Support Apply code block in chat to selection and active document. You can now see the progress in the modification panel.

    apply-to-other-places

  • Modification panel now supports full diff.

  • Bring plugins to the new chat panel, you can use /run to run a shell command now.

  • Add completion panel to the new chat panel. You can type / or @ to trigger auto complete. You can use it to mention a file or symbol from the message.

    auto-completion

  • Update sense scope to detect relevant symbols from the whole file so hopefully it’s more useful.

  • Other minor fixes.

What’s New

  • Adds a new chat tab to replace the old one. The old chat tab will not be automatically converted to the new one, so you need to manually start a new chat.

    The new things are:

    • New UI

      • The responses will make use of the full width of the window. The text contents will still have a max width so they are more readable when the window is too wide.
      • Reimplemented the pin-to-bottom behavior.
    • New context picker that allows you to better control the context of the chat.

      new-context-picker

      You can add context by clicking the + button and remove context by clicking the x button. You can still use @ to add a scope to the context, we will improve this part in the later betas.

    • Updated prompt format to better utilize prompt caching from OpenAI and Claude.

    • Apply button on the code block to apply the suggestions to the target file or the current file. The chat will also prompt the chat models to indicate the target file of a code block. (The implementation is still in progress, so it may not work as expected and may take some time to complete.)

      apply-button

      In this example, clicking the apply button will generate the new file content with the suggestion for the file Contents.swift. The new content will be presented in the modification window.

    • You can send multiple message at the same time without waiting for the response.

    • The custom command will behave differently now. The extra system prompt will now be injected into the context as a topic. Topics will be put into the system prompt.

GitHub

0.34.2

  • Bump Codeium language server to 1.20.9. Breaking change is introduced. If the auto update failed for you, please update it in the host app.
  • Fix a potential crash.
GitHub

0.34.1

  • Fix that the widgets wouldn’t follow when you switch space in macOS 15.
GitHub

0.34.0

  • Rename Prompt to Code to Modification.

  • Modification now supports modifying multiple selections at the same time.

  • Suggestions and Modification now support displaying diffs (insertions only).

  • (Free Trial) Add suggestion cheatsheet “Instructed Suggestions”.

    When this cheatsheet is on, you can use \\\ instructions to instruct the suggestions. For example, typing .frame\\\width 30 height 100 will instruct the suggestion to be .frame(width: 30, height: 100).

    If you want the suggestion to rewrite the whole line, you can use let foo \\< instructions.

    For more details, see Instructed Suggestions.

  • (Free Until Useful) Add suggestion cheatsheet “Typo Fix”.

    When this cheatsheet is on, it will try to fix the typo of the word under the text cursor in the suggestion.

  • (Free Trial) Support sending a message to chat using comments. You can use // chat: message to initiate a special suggestion. When you accept the suggestion, it will send the message to the chat.

  • Support installing to other folders than /Applications. If it’s installed in other folders, you will have to install the launch agent manually by clicking the button. The launch agent will be installed into ~/Library/LaunchAgents.

  • Support setting OpenAI organization and project.

  • Bump Copilot Vim to 1.40.0.

  • Update text content (plain text, markdown) to always wrap in code block.

  • Modification window can now be as tall as the editor area.

  • Fix that the app may affect Xcode’s performance when accessing it’s UI with Accessibility API.

  • Fix that the previous suggestion button in non-compact mode will dismiss the suggestion.

  • Some other refactoring and bug fixes.

GitHub

0.34.0

beta

For any feedback please report to the release discussion.

Beta 4

  • Bug fixes.

Beta 3

  • Fix that the app may affect Xcode’s performance when accessing it’s UI with Accessibility API.
  • Rename Prompt to Code to Modification, support modifying multiple selections, support displaying addition diffs.
  • Other fixes.

Beta 2

  • Support setting OpenAI organization and project.

Beta 1

  • Add suggestion cheatsheet “Instructed Suggestions”.

    When this cheatsheet is on, you can use \\\ instructions to instruct the suggestions. For example, typing .frame\\\width 30 height 100 will instruct the suggestion to be .frame(width: 30, height: 100).

    If you want the suggestion to rewrite the whole line, you can use let foo \\< instructions.

  • Add suggestion cheatsheet “Typo Fix”.

    When this cheatsheet is on, it will try to fix the typo of the word under the text cursor in the suggestion.

  • Support sending a message to chat using comments. You can use // chat: message to initiate a special suggestion. When you accept the suggestion, it will send the message to the chat.

  • Support installing to other folders than /Applications. If it’s installed in other folders, you will have to install the launch agent manually by clicking the button. The launch agent will be installed into ~/Library/LaunchAgents.

  • Display diffs in the suggestion.

  • Some refactoring and bug fixes.

GitHub

0.33.8

  • Fix Codeium chat for enterprise users.
  • Fix that the widget location is not updated when switching to another Xcode window in another space.
GitHub

0.33.7

  • Remove the last line of a suggestion if it’s closing parenthesis and is identical to the next line.
  • Fix that a detached chat panel will be moved to the active space when switching space.
  • Fix that a detached chat panel may be moved to the back unintentionally.
  • Add a toggle to detect idle tabs per tab bar.
  • Fix that the app may crash when it’s installed in a folder that is not Applications. But installing in other folders is still not supported. If you want a workaround, please try #562.
GitHub

0.33.6

  • Fix that the Codeium language server could run even though it’s not used.
GitHub

0.33.5

  • Support Codeium indexing

  • Support a proof-of-concept version of GitHub Copilot chat. Please note that this feature is still in an early stage of development and may change in the future. To use it, you have to turn on “Pretend IDE to be VSCode” in the GitHub Copilot settings and change the chat model to “GitHub Copilot (poc)”.

    This implementation uses the language server to access the GitHub Copilot chat, so it should be much more legal than copilot-gpt4-service. The only(?) not-so-legal thing is that we need to use VSCode as the IDE name. Custom system prompt and temperature will not work for GitHub Copilot chat. Scopes will work. The built-in RAG of GitHub Copilot chat may not work properly.

  • Bump Copilot.vim to 1.37.0 and fixes.

  • Add a “Utility chat model” picker in the chat settings. This model will be used when it need to use LLM as a tool.

  • Prevent repeated parsing of markdown content in chat panel on scroll.

  • Add new models for Google Gemini and Claude.

  • Move appcast.xml to https://copilotforxcode.intii.com/appcast.xml

GitHub

0.33.5

beta

Beta 2

  • Fix that the app will crash when GitHub Copilot was asked to generate non-stream response. But since we can’t change the system prompt, we can’t use it to do anything other than chat. I have added a “Utility chat model” picker in the chat settings. If you need to use scopes that require LLMs to perform certain tasks (for example the project scope), you’d better set it up. Fixes #552

Beta 1

  • Support Codeium indexing #544

  • Support a proof-of-concept version of GitHub Copilot chat #550. Please note that this feature is still in an early stage of development and may change in the future. To use it, you have to turn on “Pretend IDE to be VSCode” in the GitHub Copilot settings and change the chat model to “GitHub Copilot (poc)”.

    This implementation uses the language server to access the GitHub Copilot chat, so it should be much more legal than copilot-gpt4-service. The only(?) not-so-legal thing is that we need to use VSCode as the IDE name. Custom system prompt and temperature will not work for GitHub Copilot chat. Scopes will work. The built-in RAG of GitHub Copilot chat may not work properly.

  • Bump Copilot.vim to 1.37.0 and fixes #530

  • Prevent repeated parsing of markdown content in chat panel on scroll.

  • Move appcast.xml to https://copilotforxcode.intii.com/appcast.xml

GitHub