Skip to content

Commit db50b93

Browse files
authored
Merge pull request #39306 from github/repo-sync
Repo sync
2 parents 3deaca5 + 17c45e5 commit db50b93

20 files changed

+375
-266
lines changed

content/billing/managing-your-billing/managing-your-payment-and-billing-information.md

Lines changed: 27 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,24 @@ product: '{% data reusables.billing.enhanced-billing-platform-product %}'
2424
shortTitle: Manage your payment information
2525
---
2626

27-
You can view your payment information and history, and update your billing contacts. Supported payment methods include:
27+
You can view your payment information and history, and update your billing contacts.
2828

29-
* Credit card
30-
* PayPal
31-
* Azure Subscription ID (not available for personal accounts)
29+
## Supported payment methods
30+
31+
These are the supported payment methods for metered billing:
32+
33+
* Invoice – Managed accounts only
34+
* Credit card – Unmanaged accounts, or as a nonrecurring method for managed accounts
35+
* PayPal – Unmanaged accounts, or as a nonrecurring method for managed accounts
36+
* Azure Subscription ID – Not available for personal accounts
37+
* Automated Clearing House (ACH) – Managed accounts only
38+
39+
Accounts with volume licenses and metered billing can use multiple payment methods.
40+
41+
* For unmanaged accounts, you might pay for volume licenses with a credit card or PayPal, and metered usage with an Azure Subscription ID.
42+
* For managed accounts, you might pay for volume licenses via invoice, and metered usage via Azure Subscription ID.
43+
44+
{% data variables.product.prodname_copilot_short %} standalone accounts, which traditionally used Azure Subscription IDs, can now also pay by credit card. Contact your {% data variables.product.github %} representative for details.
3245

3346
{% ifversion fpt %}
3447

@@ -101,6 +114,16 @@ You can view and edit your billing information, update your payment method, and
101114
1. Click **Edit** to edit your payment information or **Remove** to delete your payment method.
102115
1. Follow the prompts.
103116

117+
>[!NOTE] You may see an authorization hold on your provided payment method once its updated or after accruing significant usage of metered services. Authorization holds are temporary and are released as quickly as possible.
118+
119+
## Troubleshooting payment method issues
120+
121+
If you encounter issues when adding or updating your payment method, you can try the following:
122+
123+
1. Retry adding your payment method.
124+
1. Try adding a new payment method.
125+
1. Reach out to {% data variables.contact.github_support %} or your customer representative for additional assistance.
126+
104127
## Viewing payment history
105128

106129
You can view your payment history, including the date, amount, and payment method. You can also download past payments.

content/copilot/concepts/about-copilot-coding-agent.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ redirect_from:
1717

1818
> [!NOTE]
1919
> * {% data reusables.copilot.coding-agent.preview-note-text %}
20-
> * The setting that blocks suggestions matching public code may not work as intended when using {% data variables.copilot.copilot_coding_agent %}. See [AUTOTITLE](/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-your-copilot-plan/managing-copilot-policies-as-an-individual-subscriber#enabling-or-disabling-suggestions-matching-public-code).
2120
2221
## Overview of {% data variables.copilot.copilot_coding_agent %}
2322

@@ -31,10 +30,10 @@ With {% data variables.copilot.copilot_coding_agent %}, {% data variables.produc
3130
* Update documentation
3231
* Address technical debt
3332

34-
To delegate development tasks to {% data variables.product.prodname_copilot_short %}, you can:
33+
To delegate tasks to {% data variables.product.prodname_copilot_short %}, you can:
3534

3635
* Assign an issue to {% data variables.product.prodname_copilot_short %}. See [AUTOTITLE](/copilot/using-github-copilot/coding-agent/using-copilot-to-work-on-an-issue).
37-
* Use {% data variables.copilot.copilot_chat %} to ask {% data variables.product.prodname_copilot_short %} to create a pull request. See [AUTOTITLE](/copilot/using-github-copilot/coding-agent/asking-copilot-to-create-a-pull-request).
36+
* Ask {% data variables.product.prodname_copilot_short %} to create a pull request from the Agents page on {% data variables.product.github %}, {% data variables.copilot.copilot_chat %} or your favorite IDE or agentic coding tool with MCP support. See [AUTOTITLE](/copilot/using-github-copilot/coding-agent/asking-copilot-to-create-a-pull-request).
3837

3938
{% data variables.product.prodname_copilot_short %} will evaluate the task it has been assigned based on the prompt you give it—whether that's from the issue description or a chat message. Then {% data variables.product.prodname_copilot_short %} will make the required changes and open a pull request. When {% data variables.product.prodname_copilot_short %} finishes, it will request a review from you, and you can leave pull request comments to ask {% data variables.product.prodname_copilot_short %} to iterate.
4039

@@ -109,6 +108,7 @@ Users can include hidden messages in issues assigned to {% data variables.produc
109108
* **{% data variables.product.prodname_copilot_short %} does not work with self-hosted {% data variables.product.prodname_actions %} runners**. {% data variables.product.prodname_copilot_short %} has access to its own development environment, running in {% data variables.product.prodname_actions %}, and must use {% data variables.product.prodname_dotcom %}-hosted runners. See [AUTOTITLE](/copilot/customizing-copilot/customizing-the-development-environment-for-copilot-coding-agent#upgrading-to-larger-github-hosted-github-actions-runners).
110109
* **{% data variables.copilot.copilot_coding_agent %} does not work in personal repositories owned by {% data variables.enterprise.prodname_managed_users %}**. This is because {% data variables.copilot.copilot_coding_agent %} requires {% data variables.product.company_short %}-hosted runners, which are not available to repositories owned by {% data variables.enterprise.prodname_managed_users %}. See [AUTOTITLE](/actions/using-github-hosted-runners/using-github-hosted-runners/about-github-hosted-runners).
111110
* **{% data variables.product.prodname_copilot_short %} doesn't account for content exclusions**. Content exclusions allow administrators to configure {% data variables.product.prodname_copilot_short %} to ignore certain files. When using {% data variables.copilot.copilot_coding_agent %}, {% data variables.product.prodname_copilot_short %} will not ignore these files, and will be able to see and update them. See [AUTOTITLE](/copilot/managing-copilot/configuring-and-auditing-content-exclusion/excluding-content-from-github-copilot).
111+
* **{% data variables.copilot.copilot_coding_agent %} does not apply the "Suggestions matching public code" policy**. {% data variables.product.prodname_copilot_short %} may still produce suggestions matching public code, even if the "Suggestions matching public code" policy is set to "Block." If this happens, {% data variables.product.prodname_copilot_short %} will not provide code references pointing to the original source of the code. See [AUTOTITLE](/copilot/managing-copilot/managing-copilot-as-an-individual-subscriber/managing-your-copilot-plan/managing-copilot-policies-as-an-individual-subscriber#enabling-or-disabling-suggestions-matching-public-code).
112112
* **{% data variables.copilot.copilot_coding_agent %} is not available in {% data variables.enterprise.data_residency %}**. The agent is only available in {% data variables.product.prodname_dotcom_the_website %}.
113113

114114
## Hands-on practice

content/copilot/concepts/build-copilot-extensions/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,6 @@ children:
1010
- /about-building-copilot-extensions
1111
- /agents-for-copilot-extensions
1212
- /skillsets-for-copilot-extensions
13+
- /openid-connect
1314
---
1415

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
---
2+
title: OpenID Connect (OIDC) for Copilot Extensions
3+
intro: 'Learn how OpenID Connect (OIDC) enables {% data variables.copilot.copilot_extensions_short %} to securely authenticate users and access cloud resources without storing long-lived credentials.'
4+
versions:
5+
feature: copilot-extensions
6+
topics:
7+
- Copilot
8+
shortTitle: OpenID Connect
9+
allowTitleToDifferFromFilename: true
10+
type: overview
11+
---
12+
13+
## About OpenID Connect (OIDC) for {% data variables.copilot.copilot_extensions_short %}
14+
15+
OpenID Connect (OIDC) allows {% data variables.copilot.copilot_extensions_short %} to exchange short-lived tokens directly from their cloud provider instead of storing long-lived {% data variables.product.github %} credentials. This feature enables both Copilot agents and skillsets to more securely authenticate users and access cloud resources.
16+
17+
### Overview of OIDC
18+
19+
{% data variables.copilot.copilot_extensions_short %} often need to access third-party resources or APIs on behalf of users. Traditionally, this required storing {% data variables.product.github %} tokens as secrets and making additional API calls to map these tokens to user identities in your system. With OIDC, your extension can request short-lived access tokens directly from your authentication service by exchanging {% data variables.product.github %} identity information.
20+
21+
When enabled, {% data variables.product.github %}'s OIDC provider automatically generates a token containing claims about the user and the request context. Your authentication service can validate these claims and exchange them for an access token scoped specifically for your service.
22+
23+
Using OIDC is especially valuable for {% data variables.product.prodname_copilot_short %} skillsets development because it allows you to leverage your existing API endpoints without maintaining separate {% data variables.product.github %}-specific endpoints. Instead of duplicating endpoints to accept {% data variables.product.github %} tokens, you can use OIDC to translate {% data variables.product.github %} identities into your service’s native authentication tokens.
24+
25+
### Benefits of using OIDC
26+
27+
By implementing OIDC token exchange in your {% data variables.copilot.copilot_extension_short %}, you can:
28+
29+
* Avoid storing long-lived {% data variables.product.github %} tokens or maintain a mapping between {% data variables.product.github %} and your service's identities.
30+
* Use short-lived tokens that automatically expire and can be scoped specifically to your service's needs.
31+
* Avoid making additional calls to {% data variables.product.github %}'s API to validate tokens and fetch user information.
32+
* Enable direct integration for {% data variables.product.prodname_copilot_short %} Skills with your existing APIs without maintaining separate endpoints for {% data variables.product.github %}.
33+
* Reuse existing API endpoints by translating {% data variables.product.github %} authentication into your service's native tokens.
34+
35+
## About token exchange flow
36+
37+
The following outlines how the {% data variables.copilot.copilot_extensibility_platform_short %} exchanges an OIDC token for an access token to authenticate requests to your extension.
38+
39+
### Initial request
40+
41+
1. The user sends a message to your {% data variables.copilot.copilot_extension_short %}.
42+
1. GitHub generates an OIDC token containing user identity information.
43+
1. GitHub calls your token exchange endpoint with the OIDC token.
44+
1. Your service validates the token and returns an access token.
45+
1. GitHub includes your access token in the request to your extension.
46+
47+
```http request
48+
# HTTP header
49+
Authorization: Bearer <your-service-token>
50+
X-GitHub-Token: <github-token>
51+
```
52+
53+
### Subsequent requests
54+
55+
1. {% data variables.product.github %} caches your access token for up to 10 minutes.
56+
1. The cached token is reused for subsequent requests.
57+
1. If the token expires or becomes invalid, {% data variables.product.github %} requests a new one.
58+
59+
## Understanding OIDC tokens
60+
61+
The OIDC token from {% data variables.product.github %} is a JWT containing claims about the user and request context:
62+
63+
```json
64+
{
65+
"jti": "<unique-token-id>",
66+
"sub": "<github-user-id>",
67+
"aud": "<your-client-id>",
68+
"iss": "https://github.com/login/oauth",
69+
"nbf": 1632492967,
70+
"exp": 1632493867,
71+
"iat": 1632493567,
72+
"act": {
73+
"sub": "api.copilotchat.com"
74+
}
75+
}
76+
```
77+
78+
## Best practices
79+
80+
* Scope tokens to the minimum required permissions.
81+
* Implement proper error handling and logging.
82+
* Monitor token exchange patterns for security anomalies.
83+
* Keep tokens short-lived to minimize security risks.
84+
* Validate all claims before issuing access tokens.
85+
* Consider implementing rate limiting on your token exchange endpoint.
86+
* Use HTTPS for all token exchange communications.
87+
88+
## Next steps
89+
90+
* [AUTOTITLE](/copilot/how-tos/build-copilot-extensions/set-up-oidc)
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
---
2+
title: Content exclusion for GitHub Copilot
3+
shortTitle: Content exclusion
4+
intro: 'You can prevent {% data variables.product.prodname_copilot_short %} from accessing certain files.'
5+
product: '{% data reusables.gated-features.copilot-business-and-enterprise %}'
6+
versions:
7+
feature: copilot
8+
topics:
9+
- Copilot
10+
---
11+
12+
## About content exclusion for {% data variables.product.prodname_copilot_short %}
13+
14+
You can use content exclusion to configure {% data variables.product.prodname_copilot_short %} to ignore certain files. When you exclude content from {% data variables.product.prodname_copilot_short %}:
15+
16+
* Code completion will not be available in the affected files.
17+
* The content in affected files will not inform code completion suggestions in other files.
18+
* The content in affected files will not inform {% data variables.copilot.copilot_chat %}'s responses.
19+
* Affected files will not be reviewed in a {% data variables.product.prodname_copilot_short %} code review.
20+
21+
### Who can configure content exclusion
22+
23+
Repository administrators, organization owners, and enterprise owners can configure content exclusion.
24+
25+
{% data reusables.copilot.content-exclusions-scope %}
26+
27+
### Availability of content exclusion
28+
29+
The {% data variables.copilot.copilot_business_short %} and {% data variables.copilot.copilot_enterprise_short %} plans provide the following level of support for content exclusion.
30+
31+
| Tool | Code completion support | {% data variables.copilot.copilot_chat_short %} support |
32+
|-------------------------------------------------|:---------------------------------------------:|:----------------------------------------------------------------:|
33+
| {% data variables.product.prodname_vs %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} |
34+
| {% data variables.product.prodname_vscode %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} |
35+
| JetBrains IDEs | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} |
36+
| Vim/Neovim | {% octicon "check" aria-label="Supported" %} | Not applicable |
37+
| Xcode | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} |
38+
| Eclipse | {% octicon "check" aria-label="Supported" %} | {% octicon "x" aria-label="Not supported" %} |
39+
| Azure Data Studio | {% octicon "x" aria-label="Not supported" %} | Not applicable |
40+
| The {% data variables.product.github %} website | Not applicable | {% octicon "check" aria-label="Supported" %} |
41+
| {% data variables.product.prodname_mobile %} | Not applicable | {% octicon "check" aria-label="Supported" %} |
42+
43+
Content exclusions also apply to {% data variables.copilot.copilot_code-review_short %} on the {% data variables.product.github %} website.
44+
45+
> [!NOTE]
46+
> * Content exclusion is in {% data variables.release-phases.public_preview %} on the {% data variables.product.github %} website and in {% data variables.product.prodname_mobile %} and is subject to change.
47+
> * Content exclusion is currently not supported in Edit and Agent modes of {% data variables.copilot.copilot_chat_short %} in {% data variables.product.prodname_vscode %}.
48+
49+
### Limitations of content exclusion
50+
51+
{% data reusables.copilot.content-exclusion-limitations %}
52+
53+
Currently, content exclusions do not apply to symbolic links (symlinks).
54+
55+
### Data sent to {% data variables.product.prodname_dotcom %}
56+
57+
After you configure content exclusion, the client (for example, the {% data variables.product.prodname_copilot_short %} extension for {% data variables.product.prodname_vscode_shortname %}) sends the current repository URL to the {% data variables.product.prodname_dotcom %} server so that the server can return the correct policy to the client. These URLs are not logged anywhere.
58+
59+
## Further reading
60+
61+
* [AUTOTITLE](/copilot/how-tos/content-exclusion/excluding-content-from-github-copilot)
62+
* [AUTOTITLE](/copilot/how-tos/content-exclusion/reviewing-changes-to-content-exclusions-for-github-copilot)

content/copilot/concepts/index.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,9 @@ children:
1010
- /copilot-billing
1111
- /prompt-engineering-for-copilot-chat
1212
- /about-customizing-github-copilot-chat-responses
13-
- /about-copilot-coding-agent
13+
- /content-exclusion-for-github-copilot
1414
- /indexing-repositories-for-copilot-chat
15+
- /about-copilot-coding-agent
1516
- /about-organizing-and-sharing-context-with-copilot-spaces
1617
- /build-copilot-extensions
1718
---

content/copilot/how-tos/administer/organizations/index.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ topics:
1313
children:
1414
- /managing-the-copilot-plan-for-your-organization
1515
- /managing-policies-for-copilot-in-your-organization
16-
- /configuring-your-proxy-server-or-firewall-for-copilot
1716
- /managing-access-to-github-copilot-in-your-organization
1817
- /adding-copilot-coding-agent-to-organization
1918
- /reviewing-activity-related-to-github-copilot-in-your-organization

0 commit comments

Comments
 (0)