What Is GitHub Copilot Enterprise?
The Enterprise tier GitHub Copilot is the most advanced edition of GitHub Copilot. It is intended to meet the needs of larger organizations that require more sophisticated features and advanced privacy and security controls. It requires organizations to also be paid users of GitHub Enterprise Cloud.
The unique features offered by GitHub Copilot Enterprise include conversations tailored to an organization’s repositories, answers based on an organization’s knowledge base, access to knowledge from top open source repositories, pull request diff analysis, web search powered by Bing, and fine-tuned models.
GitHub Copilot Enterprise Pricing and Features
GitHub Copilot Enterprise is designed for use with enterprise accounts on GitHub Enterprise Cloud. It is intended for larger organizations requiring advanced capabilities and controls.
Cost: $39 USD / user / month
Features:
- Copilot Chat: Allows for interactive conversation with GitHub Copilot, providing a more engaging and flexible coding assistant experience.
- Multi-line function suggestions: Provides suggestions spanning multiple lines of code, which helps in writing more complete sections of code quickly.
- GitHub Copilot in the CLI: Copilot Enterprise is accessible through a Command Line Interface (CLI), allowing developers to incorporate Copilot into existing workflows.
- Pluggable into code editors: Integrates seamlessly with your code editor, enabling real-time assistance without needing to switch contexts.
- Knowledge base: Organization owners can create a knowledge base using Markdown documentation from one or more repositories. They can specify their knowledge base as the context for Copilot Chat in GitHub.com. Users can then ask specific questions based on the knowledge base.
- Blocking of suggestions matching public code: Ensures that suggestions made by Copilot do not match verbatim snippets from public code, avoiding legal and compliance issues.
- Organization-wide policy management: Administrators can implement policies across the entire organization, ensuring consistency and compliance in how Copilot is used among team members.
- Exclusion of specific files: Allows the exclusion of certain files from Copilot’s analysis, offering more control over the tool’s operation and the security of the code.
- Audit logs: Provides a record of Copilot’s activity that can be used for compliance, security, and monitoring purposes.
- Copilot Chat in GitHub.com: Unlike other tiers, Copilot Enterprise users can access the Copilot chat feature directly on GitHub.com, which offers convenience and enhanced usability.
- Copilot pull request summaries: Provides summaries of pull requests, aiding in code review and collaboration within large development teams.
Learn more in our detailed guide to GitHub copilot pricing
How to Enable GitHub Copilot Enterprise Features
To take advantage of GitHub Copilot features, organizations with a subscription to GitHub Enterprise Cloud must first enable access to Copilot Enterprise.
The accessibility and configuration of Copilot features depend on decisions made at the enterprise and organization levels. In GitHub Enterprise, the highest level of control is an enterprise, and there can be multiple Organizations within an Enterprise.
Enterprise owners have the authority to grant Copilot access to various organizations within their enterprise. Once access is granted, organization owners can then assign Copilot Enterprise seats to their members, thus enabling them to utilize Copilot features.
Enable GitHub Copilot Enterprise Features for an Enterprise
Enterprise owners can determine the availability of GitHub Copilot Enterprise features across their organizations. Here is how to enable Copilot for an enterprise:
- Set a policy at the enterprise level: Navigate to the enterprise account sidebar, select Policies, and choose Copilot.
- Select Copilot policies: On the GitHub Copilot Enterprise management page, under the Policies tab, enterprise owners can set a universal policy for Copilot in GitHub.com by selecting from a dropdown menu:
- No Policy: Allows each organization to set its own policy, with Copilot in GitHub.com initially disabled but can be enabled by organization owners.
- Enabled: Enables Copilot in GitHub.com for all members of the enterprise’s organizations who have access to Copilot.
- Disabled: Prevents any organization within the enterprise from assigning Copilot Enterprise seats to its members.
- Additional options: If Enabled is selected, enterprise owners are presented with two additional options:
- Give Copilot access to Bing: This allows Copilot Chat to utilize Bing search results for generating responses.
- Opt in to user feedback collection: This option enables the collection of user feedback on Copilot-generated content.
Enable GitHub Copilot Enterprise Features for a Specific Organization
For an organization to leverage GitHub Copilot Enterprise, it must first be granted access by its parent enterprise. Organization owners can then assign Copilot seats to their members. Here is how to enable Copilot for an organization:
- Assign Copilot seats: Organization owners, after being granted access by their enterprise, assign Copilot seats to members or teams within their organization.
- Configure organization-level policies: If the enterprise’s policy allows, organization owners can configure Copilot features specifically for their organization. This involves navigating to the organization settings on GitHub.com, accessing Copilot under the Code, planning, and automation section, and then selecting Policies.
- Set feature policies: Organization owners can enable or disable specific Copilot features for their organization by selecting from the dropdown menu next to the Copilot in GitHub.com option. The options are:
- Enabled: Makes the feature available to all members.
- Disabled: Restricts access to the feature for all members.
- Enable Bing access for Copilot Chat: If the feature is enabled, organization owners have the option to allow Copilot Chat to use Bing search results.
Manage GitHub Copilot Knowledge Bases
Knowledge bases are a unique feature in GitHub Copilot Enterprise. Organization owners can create a knowledge base using Markdown documentation from one or more repositories. Users can then ask specific questions based on information in the knowledge base. Let’s see how to create and update a knowledge base in GitHub Copilot Enterprise.
Create a Knowledge Base
Knowledge bases can be created from a single repo or a selection of repos, including those that are public, private, or internal. Once established, the knowledge base is accessible to all organization members who have a GitHub Copilot Enterprise subscription. The knowledge base ensures that responses in Copilot Chat use data only from repositories to which an organization member has read access.
When an organization defines a knowledge base, organization members can reference it when using GitHub Copilot Chat. When posing questions in Copilot Chat, GitHub Copilot searches this knowledge base to find relevant information and generate a response.
To create a knowledge base in GitHub Copilot Enterprise (for organization owners):
- To begin creating a knowledge base, go to the upper-right corner of GitHub.com, click your profile photo, and then select Your organizations.
- Choose the relevant organization and navigate to Settings.
- In the sidebar, select Copilot followed by Customize.
- Click Add knowledge base next to Knowledge. Here, you need to provide a unique name for the knowledge base and, optionally, a description.
Source: GitHub
- To add content to the knowledge base, click Select repositories to view a list of available repositories and select the ones you want to include by checking the box next to each repository name, and click on Apply.
- Optionally, specify which paths within the chosen repositories should be indexed by clicking Edit file paths, listing the desired paths, and then applying the changes.
- When you are done, click on Create knowledge base.
Update a Knowledge Base
It might sometimes be necessary to update a knowledge base, by adding or removing documentation from certain repositories.
To update a knowledge base (for organization owners):
- Access the GitHub.com interface, click your profile photo in the upper-right corner, and select Your organizations.
- Choose the appropriate organization and proceed to Settings.
- Navigate to Copilot in the sidebar and then click Customize.
- Locate the knowledge base you wish to update and click the edit icon next to it.
- Make the necessary changes to the knowledge base. This could involve adding or removing repositories, updating file paths, or changing the knowledge base’s description.
- Apply the updates by clicking Update knowledge base.
The new set of documentation is now immediately available to all users in the organization.
Differences Between Copilot Enterprise and Copilot Business
GitHub Copilot Enterprise and Copilot Business are designed to cater to different scales and needs within the development ecosystem. The key distinctions between these two tiers primarily revolve around the level of customization, control, and advanced features available.
One significant difference lies in the depth of integration and control over privacy and security features: Copilot Enterprise offers more robust privacy controls and security measures, including the ability to exclude specific files from Copilot’s analysis, implement organization-wide policy management, and access detailed audit logs.
Another difference is the extent of customization. In Copilot Enterprise, organizations can create and utilize a knowledge base based on their own repositories. This enables Copilot to offer suggestions and answers based on the organization’s specific codebase and documentation, enhancing the relevance and utility of its assistance.
Complementing GitHub Copilot with Swimm
GitHub Copilot Business provides basic responses to developer inquiries, sourcing its context exclusively from the code editor. GitHub Copilot Enterprise offers more nuanced conversations by integrating customization from your own repositories. However, Copilot’s context remains confined to code, which doesn’t encompass the entire narrative.
Swimm, on the other hand, integrates a wide range of organizational knowledge sources, ensuring highly precise and relevant answers.