GitHub Copilot Business - Setup Guide

GitHub Copilot Logo

Made by Jack G Kafaty, Senior Solutions Engineer @GitHub

Requirements

Before setting up GitHub Copilot Business, it's important to review the following requirements to ensure a successful setup. If you don't see any settings for Copilot, make sure you have Owner rights.

Official & Helpful Documentation

GitHub Copilot Business | Step by Step Setup Guide

GitHub Copilot Business

Subscription Setup

Subscription Setup

Customers under a Microsoft Enterprise Agreement

⚠️ Important ⚠️

  • If you are currently on a GitHub Copilot Business trial enabled by your GitHub account manager/representative please skip this step and proceed on enabling GitHub Copilot Business at the Enterprise and Organizational Level
  • As a customer under a Microsoft Enterprise Agreement, you need to connect your Azure subscription ID to your enterprise account to enable and pay for GitHub Copilot in order to proceed with the rest of the setup. ⚠️ In order for you to connect your Azure Subscription you must be an Azure Global Admin ⚠️
  1. As a GitHub Enterprise Owner, click on the top-right corner of GitHub.com, click your profile photo, then click Your enterprises.
  2. In the list of enterprises, next to the enterprise you will be enabling GitHub Copilot Business, click on Settings.
  3. Within your Enterprise Settings, on the left-side menu panel click on Settings and within, click on Billing.
  4. Within Billing, click on Payment Information and from there click Add Azure Subscription.
  5. You will be redirected to login to your Microsoft account. After a successful login, you will be able to select the Azure Subscription you wish to connect.
  6. Once you have selected the Azure Subscription, click Connect. You should see a confirmation banner stating You have successfully added an Azure subscription to your payment information. At the bottom, you will also see Metered Billing Settings. Please proceed on selecting Enable metered billing through Azure and finally click on Update Metered Billing Settings and you should see the banner update and display Successfully updated metered billing settings.
  7. At this point, you have successfully connected your Azure Subscription to GitHub and can proceed on enabling GitHub Copilot Business.

⚠️ Important ⚠️

  • If the settings are left with their default value , No Policy, for "Suggestions Matching Public Code" and "GitHub Copilot Chat" it means the policy can be set at the organizational level. This provides you with the flexibility of setting different GitHub Copilot policies per organization.
  • To enable GitHub Copilot you must either Allow Copilot for all organizations or Allow Copilot for specific organizations and select the organizations you wish to enable Copilot .If this is not done Copilot will not be enabled and you will not be able to grant your users access to GitHub Copilot Business.

GitHub Copilot Business

Customers using Team

  • Select the Team organization in which you will be enabling GitHub Copilot Business and click Continue.

GitHub Copilot Business

  • If you do not have any payment information on file you will be prompted to fill it out. Once done click on Save.

    Payment Information

  • At this point, you will need to enter either your PayPal account details or your credit card information to proceed. Once completed, click on Save Payment Information.

    Image

    • At this point, you are all set and can proceed with configuring Copilot Business within your Team's Organization.

Enabling GitHub Copilot Business

Image

Enterprise Level: Enabling GitHub Copilot Business and enforcing policies

  • As a GitHub Enterprise Owner click on the top-right corner of GitHub.com, click your profile photo, then click Your enterprises.

Image

  • In the list of enterprises, next to the enterprise you will be enabling GitHub Copilot Business, click on Settings.

Image

  • Within your Enterprise Settings, on the left-side menu panel click on Policies and within, click on Copilot.

    • You will be taken to the Access management tab, which will allow you to designate the Organizations that will have access to Copilot.

      • If you are using Mixed Licensing, you can select whether each Organization will have access to an Copilot Enterprise subscription or a Copilot Business subscription.
    • Switch to the Policies tab to enable/disable features such as Copilot in the CLI, Copilot Chat in the IDE, Copilot Extensions, etc.

⚠️ Important ⚠️

  • If the Enterprise Policy settings are set to No Policy, it means the policy can be set at the organizational level. This provides you with the flexibility of setting different GitHub Copilot policies per organization.

  • To enable GitHub Copilot you must either Allow Copilot for all organizations or Allow Copilot for specific organizations and select the organizations you wish to enable Copilot. If this is not done Copilot will not be enabled and you will not be able to grant your users access to GitHub Copilot Business.

    Image

Organization level: Enabling GitHub Copilot Business and enforcing policies

  • As a GitHub Enterprise / Organization Owner, login to GitHub.com, click your profile photo, then click Your Organizations. Image

  • In the list of organizations, next to the organization you will be enabling GitHub Copilot Business, click on Settings. Image

  • Within your Organizational Settings, on the left-side menu panel click on Copilot located within the "Code, planning and automation" section.

  • From Copilot's expanded menu:

    • ⚠️ If you are a GitHub Enterprise Cloud customer and you have already configured GitHub Copilot Business's policies at the Enterprise Level, please proceed to step 6. If not, please click on Policies.

    • Within Policies, you will be able to see multiple settings which will allow you to enable/disable features such as Copilot in the CLI, Copilot Chat in the IDE, Copilot Extensions, etc.

    • Return to the expanded menu and select Access.

    • Within Access you can enable GitHub Copilot Business for:

  • After you have enabled GitHub Copilot Business, you should see the following view depending on your selection:

    • All members of the organization

    Image

    • Selected members

    Image

  • Finally, Users who have been granted access to GitHub Copilot Business will receive an email with instructions and direct links on where to download the IDE extension so that they can start using GitHub Copilot Business.

    Image

  • At this point you have completed the enablement of GitHub Copilot Business. Whomever has been granted access to Copilot will still need to download the GitHub Copilot IDE plugin/extension to start using GitHub Copilot Business.

Frequently Asked Questions

  1. Where can I find information on security, Privacy, compliances, and related?

    • To find more information on GitHub Copilot Business security, privacy, compliances, and related please visit:

    • GitHub Copilot Trust Center

  2. How does GitHub Copilot compare to ChatGPT?

    • Unlike ChatGPT, GitHub Copilot is optimized for code completion, and allows developers to stay focused on the task at-hand by bringing contextualized answers directly into the code editor. Developers can request code completions via both natural language (e.g. code comments) and code. Although GitHub Copilot can produce natural language suggestions, the model biases for code suggestions.

    • GitHub Copilot is built using a combination of models from OpenAI, Microsoft, and GitHub. A representative, but not comprehensive list includes:

      • Sahara is the LLM that provides suggestions. We use a custom version of the model to optimize for performance, suggestion quality, and scale.
      • Azure RAI provides models to filter slurs, slander, and hate speech
      • GitHub provides additional models to improve the quality (security) of suggestions, optimize for responsiveness in the code editor, etc.
    • ChatGPT is a general purpose chat client that produces content based on natural language commands. Because it’s based on the same model and training data used for GitHub Copilot, it can produce code suggestions, but doesn’t necessarily bias for code – so developers need to craft their prompt carefully to get helpful results. Also because it’s not integrated with a code editor, ChatGPT requires developers to shift focus, breaking context.

    • User interaction is a key differentiator in understanding which use cases each tool better addresses. ChatGPT requires context switching to the “conversation” formatted prompt whereas GitHub Copilot operates entirely within the developer’s IDE. While both tools accept natural language prompts through queries/code comments, GitHub Copilot will include additional context from the user’s IDE to tailor suggestions to the user’s codebase. Anecdotal feedback has suggested that ChatGPT lends itself to ideation and framing skeletons of new projects, where GitHub Copilot promotes developer flow to accelerate development on those skeletons or existing codebases.

    • ChatGPT integration with GitHub Copilot is on the roadmap for Q3 CY23. An MVP ChatGPT powered feature will enable new scenarios including code debug, rewrite, analysis and test generation, through chat panel and in-editor chat box. VS code is our main target editor in Q3 and we are supporting the feature through VS code native API integration.

    Here’s OpenAI’s blog post on ChatGPT (see “Limitations”).

  3. What Data does GitHub Copilot Business Collect?

    • GitHub Copilot Business relies on file content and additional data to work. It collects data to provide the service, some of which is then retained for further analysis and product improvements.

    Copilot Business processes data as described below:

    • Prompts: A Prompt is the contextual information the GitHub Copilot extension sends when a user is working on a file and pauses typing, or when the user opens the Copilot pane. Copilot Business Prompts are only transmitted in real-time. Copilot Business does not retain Prompts.

    • Suggestions: A Suggestion is one or more lines of proposed text returned to the GitHub Copilot extension after a Prompt is received and processed by the AI-model. Copilot Business Suggestions are only transmitted in real-time. Copilot Business does not retain Suggestions.

    • User Engagement Data: When you use GitHub Copilot it will collect User Engagement Data. This is usage information about events generated when interacting with the IDE or editor. These events include user edit actions like whether Suggestions are accepted or dismissed, and error and general usage data to identify metrics like latency and features engagement. This information may include personal data, such as pseudonymous identifiers.

  4. How are the transmitted Prompts and Suggestions protected?

    We know that user edit actions, source code snippets, and URLs of repositories and file paths are sensitive data. Consequently, several measures of protection are applied, including:

    • The transmitted data is encrypted both in transit and at rest; Copilot-related data is encrypted in transit using TLS, and at rest using Microsoft Azure’s data encryption (FIPS Publication 140-2 standards).

    • Access is strictly controlled. The data can only be accessed by (1) named GitHub personnel working on the GitHub Copilot team or on the GitHub platform health team and (2) Microsoft personnel working on or with the GitHub Copilot team.

    • Role-based access controls and multi-factor authentication are required for personnel accessing Prompt or Suggestion data.

  5. Is GitHub Copilot available for GitHub Enterprise Server?

  6. Will Copilot for PRs come to GitHub Enterprise Server?

    No, There is no plan at this time to bring Copilot for PRs to GitHub Enterprise Server.

  7. What are the capabilities of GitHub Copilot Business?

    Enterprise admins can enable GitHub Copilot Business at the Enterprise Account level, and select which organizations are allowed to use GitHub Copilot Business (thus only giving org admins the ability to assign seats).

    • As an admin, you can purchase and assign licenses on behalf of my team

    • As an admin, you can dictate user settings on behalf of my team (e.g. "enable filtering for all users")

    • Org owners can enable GitHub Copilot Business for their teams and individual users

    Prompts and Suggestions are transmitted in real-time only to return suggestions and discarded once a suggestion is returned. No Prompts or Suggestions are retained, including code content, code prompts, code suggestions, nor content from neighboring tabs and local file systems.

  8. What languages are supported?

    All languages are supported, however the more common a language, the better represented it will be in our training data and the more robust suggestions will be.

  9. Does GitHub Copilot Business require you to host your code on GitHub?

    Not at all! You can host your code anywhere and still use GitHub Copilot Business provided that your users have GitHub.com accounts and have a license assigned.

  10. Why can't I see GitHub Copilot's settings on my Enterprise or my Organization?

    If you do not see the settings for GitHub Copilot you will need to validate the following:

    1. Do you have an active GitHub Copilot Business license? If not you will need to sign-up or contact your GitHub account executive for further details.

    2. If you have an active license but do not see the settings you will need to validate with your GitHub Enterprise owner that you have sufficient privileges. When it comes to enabling or configuring GitHub Copilot Business you will need to have Enterprise/Organizational admin privileges.

  11. Copilot X, what is it and how do I get it?

    GitHub Copilot X is not a new product but a vision for the future of AI-powered software development. We are not only adopting OpenAI’s new GPT-4 model, but are introducing:

    Think about Copilot X as a dynamic public roadmap of the capabilities and features we are planning to bring to Copilot Business in a near future! For more details feel free to review the following blog post!

  12. Did not find your question?

    Feel free to checkout more frequently asked questions at our Official GitHub Copilot Business website!


Image

Trademark Disclaimer

GITHUB®, the GITHUB® logo design, the INVERTOCAT logo design, OCTOCAT®, and the OCTOCAT® logo design are trademarks of GitHub, Inc., registered in the United States and other countries. The OCTOCAT design is the exclusive property of GitHub, Inc and has been federally registered with the United States Copyright Office. All rights reserved. See GitHub's Terms of Service for its Intellectual Property.