Skip to content

Releases: intitni/CopilotForXcode

0.35.6

04 Mar 14:32
Compare
Choose a tag to compare

instruction

  • Fix O models from OpenAI

0.35.5

25 Feb 09:08
Compare
Choose a tag to compare

instruction

  • Support API key for Ollama API. @tmpit
  • Add "GitHub Copilot" format for both chat model and embedding model. It will call the GitHub Copilot API directly. I used to think it's not allowed, but it's already been used by some popular projects, for example, Zed. So I added it.
  • Support parsing reasoning content from DeepSeek models and other models that put the reasoning content in a <think> tag at the beginning of the response.
  • Switch to a light-weight markdown renderer that supports multi-paragraphs selection.
  • New context in chat and modification:
    • Webpage by pasting the link in the message box.
    • Topic and code snippet by adding through the + button. Topics will be included into the system prompt.
  • Web scope now supports generating multiple search queries for your questions.
  • The chat will now include selected code without the active document context.
  • Other minor improvements and bug fixes.

New Contributors

0.35.4

07 Jan 07:20
Compare
Choose a tag to compare

instruction

  • Fix DeepSeek model support. Please turn off "Support multi-part message content" in the model settings for DeepSeek models.
  • Add context picker for custom command Send Message and Custom Chat. For Send Message, the selected contexts will be removed after a message is sent. For Custom Chat, the selected contexts will be kept.
  • Fix that Codeium chat tab was missing in the open chat mode picker.

0.35.3

23 Dec 08:51
Compare
Choose a tag to compare

instruction

  • GitHub Copilot chat will now use the language you set in the preferences.
  • Fix that accepting a suggestion will bring all Xcode windows to the front. But if a fallback solution is used, the app may still bring all windows to the front.
  • Git status context now includes changes from submodules.

0.35.2

28 Nov 09:09
Compare
Choose a tag to compare

instruction

  • 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.

0.35.1

20 Nov 15:34
Compare
Choose a tag to compare

instruction

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. #606
  • Update the file search to support fuzzy match.

Chat

Learn More

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

Note

Prompt caching for Anthropic through OpenRouter is not supported yet.

  • 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-input
    • 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

Note

This feature relies on the modification feature, so it doesn't work without a chat model yet.

  • 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.

Tip

Just in case you don't know, you can paste the code into the Xcode file tree to create a new file since Xcode 16.

  • (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.

0.35.0

20 Nov 08:04
Compare
Choose a tag to compare

instruction

This release focuses on the chat and modification features.

Chat

Learn More

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

Note

Prompt caching for Anthropic through OpenRouter is not supported yet.

  • 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-input
    • 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

Note

This feature relies on the modification feature, so it doesn't work without a chat model yet.

  • 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.

Tip

Just in case you don't know, you can paste the code into the Xcode file tree to create a new file since Xcode 16.

  • (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.

0.34.3

30 Oct 12:55
Compare
Choose a tag to compare

instruction

  • 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.

0.35.0 beta

20 Oct 18:10
Compare
Choose a tag to compare
0.35.0 beta Pre-release
Pre-release

instruction

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.

    Screenshot 2024-11-06 at 17 21 52
  • 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.
    Screenshot 2024-11-06 at 18 02 34

  • 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 converted to the new one automatically, so you will 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.
      • Reimplemnted 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 also use auto completion to add context to the chat by typing @.

    • 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, the current file or the current selection. The chat will also prompt the chat models to indicates the target file of a code block.

      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 withot 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.

0.34.2

06 Oct 15:12
Compare
Choose a tag to compare

instruction

  • 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.