Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/github/copilotforxcode

Xcode extension for GitHub Copilot
https://github.com/github/copilotforxcode

Last synced: 2 days ago
JSON representation

Xcode extension for GitHub Copilot

Awesome Lists containing this project

README

        

# GitHub Copilot for Xcode

Demo of GitHub Copilot for Xcode

[GitHub Copilot](https://github.com/features/copilot) is an AI pair programmer
tool that helps you write code faster and smarter. Copilot for Xcode is an Xcode
extension that provides inline coding suggestions as you type.

## Beta Preview Policy

Use of the GitHub Copilot Xcode Extension is subject to [GitHub's Pre-Release Terms](https://docs.github.com/en/site-policy/github-terms/github-pre-release-license-terms). We want to remind you that:

> Beta Previews may not be supported or may change at any time. You may receive confidential information through those programs that must remain confidential while the program is private. We'd love your feedback to make our Beta Previews better.

## Requirements

- macOS 12+
- Xcode 8+
- A GitHub Copilot subscription. To learn more, visit [https://github.com/features/copilot](https://github.com/features/copilot).

## Getting Started

1. Install via [Homebrew](https://brew.sh/):

```sh
brew install --cask github-copilot-for-xcode
```

Or download the `dmg` from
[the latest release](https://github.com/github/CopilotForXcode/releases/latest/download/GitHubCopilotForXcode.dmg).
Drag `GitHub Copilot for Xcode` into the `Applications` folder:


Screenshot of opened dmg

Updates can be downloaded and installed by the app.

1. A background item will be added to enable Copilot to start when Xcode is opened.


Screenshot of background item

1. Two permissions are required: `Accessibility` and `Xcode Source Editor
Extension`. For more on why these permissions are required see
[TROUBLESHOOTING.md](./TROUBLESHOOTING.md).

The first time the application is run the `Accessibility` permission should be requested:


Screenshot of accessibility permission request

The `Xcode Source Editor Extension` permission needs to be enabled manually. Click
`Extension Permission` from the `Copilot for Xcode` settings to open the
System Preferences to the `Extensions` panel. Select `Xcode Source Editor`
and enable `GitHub Copilot`:


Screenshot of extension permission

1. After granting the extension permission, please restart Xcode to ensure the
`Github Copilot` menu is available and not disabled under the Xcode `Editor`
menu.



Screenshot of Xcode Editor GitHub Copilot menu item

Keyboard shortcuts can be set for all menu items in the `Key Bindings`
section of Xcode preferences.

1. To sign into GitHub Copilot, click the `Sign in` button in the settings application. This will open a browser window and copy a code to the clipboard. Paste the code into the GitHub login page and authorize the application.


Screenshot of sign-in popup

1. To install updates, click `Check for Updates` from the menu item or in the
settings application.

After installing a new version, Xcode must be restarted to use the new
version correctly.

New versions can also be installed from `dmg` files downloaded from the
releases page. When installing a new version via `dmg`, the application must
be run manually the first time to accept the downloaded from the internet
warning.

1. To avoid confusion, we recommend disabling `Predictive code completion` under
`Xcode` > `Preferences` > `Text Editing` > `Editing`.

1. Press `tab` to accept the first line of a suggestion, hold `option` to view
the full suggestion, and press `option` + `tab` to accept the full suggestion.


Screenshot of welcome screen

## License

This project is licensed under the terms of the MIT open source license. Please
refer to [LICENSE.txt](./LICENSE.txt) for the full terms.

## Privacy

We follow responsible practices in accordance with our
[Privacy Statement](https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement).

To get the latest security fixes, please use the latest version of the GitHub
Copilot for Xcode.

## Support

We’d love to get your help in making GitHub Copilot better! If you have
feedback or encounter any problems, please reach out on our [Feedback
forum](https://github.com/orgs/community/discussions/categories/copilot).

## Acknowledgements

Thank you to @intitni for creating the original project that this is based on.

Attributions can be found under About when running the app or in
[Credits.rtf](./Copilot%20for%20Xcode/Credits.rtf).