Skip to content

Commit d3be4b7

Browse files
Merge branch 'main' into fix-mannequin-pat-scopes
2 parents df9f040 + 503867b commit d3be4b7

1,446 files changed

Lines changed: 56351 additions & 12279 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/instructions/content-guidelines.instructions.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,20 @@ The strategic priority is simplification: create less content and remove content
1919
* Would a typical internet user figure this out on their own by exploring the UI?
2020
* Is the information presented at the moment the reader actually needs it?
2121

22+
## Give opinionated, actionable guidance
23+
24+
This applies whenever you give the reader advice or present ways to accomplish a task.
25+
26+
* Be opinionated when there is a better way: when several approaches exist, recommend the best one and explain why, rather than presenting all options as equally valid. When they are genuinely equivalent, stay neutral.
27+
* Tell users the best practice AND how to follow it: whenever you state a best practice, pair it with concrete steps or an example so the reader can act on it, never the advice alone.
28+
29+
## Focus on the reader's purpose, not the product
30+
31+
Frame an article around what the reader is trying to accomplish, not the product or feature they use to do it. This applies when naming an article or deciding what a new or substantially reworked article should cover; do not use it to justify restructuring an article during a small edit.
32+
33+
* Title articles by the reader's goal, not the product or feature. For example, "Secure your enterprise", not "Use GitHub Advanced Security".
34+
* Scope articles around a task, not a product. When a task naturally spans multiple features or products, look for the opportunity to cover them together in one task-focused article or tutorial rather than splitting into per-product articles. Keep each article to a single purpose (the task): combine features only when they serve that same task, not to bundle unrelated capabilities.
35+
2236
## Intros: pull people in
2337

2438
This section applies mainly to the `intro` frontmatter field and, for conceptual articles, section openings.

.github/instructions/content.instructions.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,14 @@ Before committing content changes, always:
1616
3. **Verify [AUTOTITLE] links** point to existing articles
1717
4. **Run tests** on changed content: `npm run test -- src/content-render/tests/render-changed-and-deleted-files.ts`
1818

19+
## Accuracy and flagging uncertainty
20+
21+
AI assistants can produce plausible but incorrect information. To protect readers and writers:
22+
23+
* Never fabricate product behavior, settings, permissions, API parameters, or limits. If you cannot verify a detail from the source material or the product itself, say so instead of guessing.
24+
* Flag uncertainty at the level of the specific claim, not the whole article. Identify the individual sentence, step, value, or setting you are unsure about, rather than labeling an entire article as "needs review."
25+
* After writing or editing, give the writer a checklist of each specific claim to verify, noting where it appears (the exact step or sentence) and why it needs checking. Prioritize claims where being wrong could have serious consequences, such as security, authentication, permissions, billing, or any irreversible action, and recommend confirming those with the relevant product or engineering team.
26+
1927
## Bullet lists
2028

2129
The bulleted points in a bullet list should always be denoted in Markdown using an asterisk, not a hyphen.
@@ -107,6 +115,17 @@ For such content, DO NOT use in-article Liquid versioning such as `{% ifversion
107115

108116
All articles that are ONLY for GitHub Enterprise Server (GHES) should be versioned in the frontmatter using feature-based versioning defined in `data/features/`.
109117

118+
### Versioning for GHES content: always use feature-based versioning
119+
120+
If content is intended to ship to GitHub Enterprise Server, use **feature-based versioning (FBV)**.
121+
122+
* Do **not** suggest removing GHES frontmatter versioning or hardcode version strings (for example, `free-pro-team@latest`) just to make links or tests pass.
123+
* If CI fails because a GHES link cannot be built, treat that as a versioning mismatch—not a signal to de-scope GHES.
124+
* Add or reuse the appropriate feature flag in `data/features/`. Use it in `versions.feature` frontmatter when an article's availability follows the feature, and use Liquid conditionals only for version-specific blocks within a broader article.
125+
* Keep frontmatter and in-article versioning aligned so links render for every supported version.
126+
127+
For guidance, see [About feature-based versioning](https://docs.github.com/en/contributing/writing-for-github-docs/versioning-documentation#about-feature-based-versioning).
128+
110129
### FPT, GHEC, GHES articles
111130

112131
All articles that are versioned for all of FPT, GHEC, and GHES in the frontmatter MAY require certain blocks of content to be versioned using in-article Liquid versioning. Before recommending this, check if this is really the case.
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
applyTo: ".github/instructions/**,.github/agents/**"
3+
---
4+
5+
# Editing Copilot content instruction and agent files
6+
7+
This applies when you add, edit, or remove a Copilot instruction or shared agent file that guides how **content** (articles, data files) is written. It does **not** apply to code instructions or agents owned by the engineering team (for example `code.instructions.md`).
8+
9+
When it applies, you **must** first read the instruction-architecture doc in full and follow it:
10+
11+
https://github.com/github/docs-team/blob/main/contributing-to-docs/docs-work/copilot-instruction-architecture.md
12+
13+
Read the current version every time (from a local `github/docs-team` checkout if you have one, otherwise fetch the URL); do not rely on your memory of it, because it changes. If you cannot access it, say so and stop rather than guessing.

.github/workflows/dont-delete-features.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,7 @@ permissions:
2525

2626
jobs:
2727
dont-delete-features:
28-
# It's 'docs-bot' that creates those PR from "Delete orphaned features"
29-
if: github.event.pull_request.user.login != 'docs-bot' && (github.repository == 'github/docs-internal' || github.repository == 'github/docs')
28+
if: github.event.pull_request.user.login != 'docs-bot' && github.event.pull_request.user.login != 'docs-engineering-bot[bot]' && (github.repository == 'github/docs-internal' || github.repository == 'github/docs')
3029
runs-on: ubuntu-latest
3130
steps:
3231
- name: Check out repo

.github/workflows/enterprise-release-issue.yml

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,26 +20,18 @@ jobs:
2020
steps:
2121
- name: Checkout repository code
2222
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
23-
- name: Generate GitHub App token
24-
id: app-token
25-
uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
26-
with:
27-
app-id: ${{ secrets.DOCS_BOT_APP_ID }}
28-
private-key: ${{ secrets.DOCS_BOT_APP_PRIVATE_KEY }}
29-
owner: github
30-
repositories: docs-content,docs-engineering,enterprise-releases
3123

3224
- uses: ./.github/actions/node-npm-setup
3325

3426
- name: Create an enterprise release issue
3527
run: npm run create-enterprise-issue -- release
3628
env:
37-
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
29+
GITHUB_TOKEN: ${{ secrets.DOCS_BOT_PAT_BASE }}
3830

3931
- name: Create an enterprise deprecation issue
4032
run: npm run create-enterprise-issue -- deprecation
4133
env:
42-
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
34+
GITHUB_TOKEN: ${{ secrets.DOCS_BOT_PAT_BASE }}
4335

4436
- uses: ./.github/actions/slack-alert
4537
if: ${{ failure() && github.event_name != 'workflow_dispatch' }}
@@ -49,4 +41,4 @@ jobs:
4941
- uses: ./.github/actions/create-workflow-failure-issue
5042
if: ${{ failure() && github.event_name != 'workflow_dispatch' }}
5143
with:
52-
token: ${{ steps.app-token.outputs.token }}
44+
token: ${{ secrets.DOCS_BOT_PAT_BASE }}

.github/workflows/link-check-on-pr.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,14 +59,12 @@ jobs:
5959
6060
- name: Check links in changed files
6161
if: steps.changed-files.outputs.any_changed == 'true'
62-
# Work in progress: never fail the PR. The comment is informational only.
63-
continue-on-error: true
6462
env:
6563
FILES_CHANGED: ${{ steps.changed-files.outputs.all_changed_files }}
6664
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
6765
ACTION_RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
6866
SHOULD_COMMENT: ${{ secrets.DOCS_BOT_APP_ID != '' }}
69-
FAIL_ON_FLAW: false
67+
FAIL_ON_FLAW: true
7068
ENABLED_LANGUAGES: en
7169
run: npm run check-links-pr
7270

.github/workflows/ready-for-doc-review.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
owner: github
3030
# Scope must include every repo that calls this reusable workflow, because
3131
# the script resolves the PR node (ITEM_NODE_ID) in the calling repo.
32-
repositories: docs-internal,docs-content,docs-strategy,docs-early-access,github
32+
repositories: docs-internal,docs-content,docs-strategy,docs-early-access,docs-team,github
3333

3434
- name: Check out repo content
3535
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0

.github/workflows/sync-openapi.yml

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -42,30 +42,21 @@ jobs:
4242
path: rest-api-description
4343
ref: ${{ inputs.SOURCE_BRANCH }}
4444

45-
- name: Generate GitHub App token
46-
id: app-token
47-
uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
48-
with:
49-
app-id: ${{ secrets.DOCS_BOT_APP_ID }}
50-
private-key: ${{ secrets.DOCS_BOT_APP_PRIVATE_KEY }}
51-
owner: github
52-
repositories: docs-internal,models-gateway,docs-engineering
53-
5445
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
5546
with:
5647
# By default, only the most recent commit of the `main` branch
5748
# will be checked out
5849
repository: github/models-gateway
5950
path: models-gateway
6051
ref: main
61-
token: ${{ steps.app-token.outputs.token }}
52+
token: ${{ secrets.DOCS_BOT_PAT_BASE }}
6253

6354
- uses: ./.github/actions/node-npm-setup
6455

6556
- name: Sync the REST, Webhooks, and GitHub Apps schemas
6657
env:
6758
# Needed for gh
68-
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
59+
GITHUB_TOKEN: ${{ secrets.DOCS_BOT_PAT_BASE }}
6960
NODE_OPTIONS: '--max-old-space-size=8192'
7061
run: |
7162
npm run sync-rest -- \
@@ -89,7 +80,7 @@ jobs:
8980
- name: Create pull request
9081
env:
9182
# Needed for gh
92-
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
83+
GITHUB_TOKEN: ${{ secrets.DOCS_BOT_PAT_BASE }}
9384
run: |
9485
# If nothing to commit, exit now. It's fine. No orphans.
9586
changes=$(git diff --name-only | wc -l)
@@ -137,4 +128,4 @@ jobs:
137128
- uses: ./.github/actions/create-workflow-failure-issue
138129
if: ${{ failure() && github.event_name != 'workflow_dispatch' }}
139130
with:
140-
token: ${{ steps.app-token.outputs.token }}
131+
token: ${{ secrets.DOCS_BOT_PAT_BASE }}

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Docs changelog
22

3+
**13 July 2026**
4+
5+
We published [Bring your own key for GitHub Copilot](https://docs.github.com/en/copilot/concepts/models/bring-your-own-key). This article distinguishes between two different mechanisms for customers to use Copilot with custom models. We have also retitled corresponding how-to content to make the distinction clearer.
6+
7+
<hr>
8+
39
**16 June 2026**
410

511
We made some improvements to our documentation on Copilot policies:

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
# ---------------------------------------------------------------
1111
# To update the sha:
1212
# https://github.com/github/gh-base-image/pkgs/container/gh-base-image%2Fgh-base-noble
13-
FROM ghcr.io/github/gh-base-image/gh-base-noble:20260708-113537-g661fe65de@sha256:894162a6b21fc03da8ba889760592e6e223ba76f3067723f93bd1e49aff1c46b AS base
13+
FROM ghcr.io/github/gh-base-image/gh-base-noble:20260720-202540-g0ac3959ef@sha256:48e1461c14c217a7dbaa9d08ccfe726772d356f40a070f8c6a34e37a8fcf2f18 AS base
1414

1515
# Install curl for Node install and determining the early access branch
1616
# Install git for cloning docs-early-access & translations repos

0 commit comments

Comments
 (0)