Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -57,18 +57,20 @@ By default, {% data variables.product.prodname_dependabot %} will stop rebasing

You can use any of the following commands on a {% data variables.product.prodname_dependabot %} pull request.

* `@dependabot cancel merge` cancels a previously requested merge.
* `@dependabot close` closes the pull request and prevents {% data variables.product.prodname_dependabot %} from recreating that pull request. You can achieve the same result by closing the pull request manually.
* `@dependabot ignore this dependency` closes the pull request and prevents {% data variables.product.prodname_dependabot %} from creating any more pull requests for this dependency (unless you reopen the pull request or upgrade to the suggested version of the dependency yourself).
* `@dependabot ignore this major version` closes the pull request and prevents {% data variables.product.prodname_dependabot %} from creating any more pull requests for this major version (unless you reopen the pull request or upgrade to this major version yourself).
* `@dependabot ignore this minor version` closes the pull request and prevents {% data variables.product.prodname_dependabot %} from creating any more pull requests for this minor version (unless you reopen the pull request or upgrade to this minor version yourself).
* `@dependabot ignore this patch version` closes the pull request and prevents {% data variables.product.prodname_dependabot %} from creating any more pull requests for this patch version (unless you reopen the pull request or upgrade to this patch version yourself).
* `@dependabot merge` merges the pull request once your CI tests have passed.
* `@dependabot rebase` rebases the pull request.
* `@dependabot recreate` recreates the pull request, overwriting any edits that have been made to the pull request.
* `@dependabot reopen` reopens the pull request if the pull request is closed.
* `@dependabot show DEPENDENCY_NAME ignore conditions` retrieves information on the ignore conditions for the specified dependency, and comments on the pull request with a table that displays all ignore conditions for the dependency. For example, `@dependabot show express ignore conditions` would find all `ignore` conditions stored for the Express dependency, and comment on the pull request with that information.
* `@dependabot squash and merge` squashes and merges the pull request once your CI tests have passed.
| Command | Description |
| --- | --- |
| `@dependabot cancel merge` | Cancels a previously requested merge. |
| `@dependabot close` | Closes the pull request and prevents {% data variables.product.prodname_dependabot %} from recreating that pull request. You can achieve the same result by closing the pull request manually. |
| `@dependabot ignore this dependency` | Closes the pull request and prevents {% data variables.product.prodname_dependabot %} from creating any more pull requests for this dependency (unless you reopen the pull request or upgrade to the suggested version yourself). |
| `@dependabot ignore this major version` | Closes the pull request and prevents {% data variables.product.prodname_dependabot %} from creating any more pull requests for this major version (unless you reopen the pull request or upgrade to this major version yourself). |
| `@dependabot ignore this minor version` | Closes the pull request and prevents {% data variables.product.prodname_dependabot %} from creating any more pull requests for this minor version (unless you reopen the pull request or upgrade to this minor version yourself). |
| `@dependabot ignore this patch version` | Closes the pull request and prevents {% data variables.product.prodname_dependabot %} from creating any more pull requests for this patch version (unless you reopen the pull request or upgrade to this patch version yourself). |
| `@dependabot merge` | Merges the pull request once your CI tests have passed. |
| `@dependabot rebase` | Rebases the pull request. |
| `@dependabot recreate` | Recreates the pull request, overwriting any edits that have been made to the pull request. |
| `@dependabot reopen` | Reopens the pull request if the pull request is closed. |
| `@dependabot show DEPENDENCY_NAME ignore conditions` | Retrieves information on the ignore conditions for the specified dependency, and comments on the pull request with a table that displays all ignore conditions for the dependency. For example, `@dependabot show express ignore conditions` would find all `ignore` conditions stored for the Express dependency, and comment on the pull request with that information. |
| `@dependabot squash and merge` | Squashes and merges the pull request once your CI tests have passed. |

{% data variables.product.prodname_dependabot %} will react with a "thumbs up" emoji to acknowledge the command, and may respond with a comment on the pull request. While {% data variables.product.prodname_dependabot %} usually responds quickly, some commands may take several minutes to complete if {% data variables.product.prodname_dependabot %} is busy processing other updates or commands.

Expand All @@ -80,13 +82,15 @@ For more information, see [AUTOTITLE](/code-security/dependabot/working-with-dep

In {% data variables.product.prodname_dependabot %} pull requests for grouped version updates and security updates, you can use comment commands to ignore and un-ignore updates for specific dependencies and versions. You can use any of the following commands to manage ignore conditions for grouped updates.

* `@dependabot ignore DEPENDENCY_NAME` closes the pull request and prevents {% data variables.product.prodname_dependabot %} from updating this dependency.
* `@dependabot ignore DEPENDENCY_NAME major version` closes the pull request and prevents {% data variables.product.prodname_dependabot %} from updating this dependency's major version.
* `@dependabot ignore DEPENDENCY_NAME minor version` closes the pull request and prevents {% data variables.product.prodname_dependabot %} from updating this dependency's minor version.
* `@dependabot ignore DEPENDENCY_NAME patch version` closes the pull request and prevents {% data variables.product.prodname_dependabot %} from updating this dependency's patch version.
* `@dependabot unignore *` closes the current pull request, clears all `ignore` conditions stored for all dependencies in the group, then opens a new pull request.
* `@dependabot unignore DEPENDENCY_NAME` closes the current pull request, clears all `ignore` conditions stored for the dependency, then opens a new pull request that includes available updates for the specified dependency. For example, `@dependabot unignore lodash` would open a new pull request that includes updates for the Lodash dependency.
* `@dependabot unignore DEPENDENCY_NAME IGNORE_CONDITION` closes the current pull request, clears the stored `ignore` condition, then opens a new pull request that includes available updates for the specified ignore condition. For example, `@dependabot unignore express [< 1.9, > 1.8.0]` would open a new pull request that includes updates for Express between versions 1.8.0 and 1.9.0.
| Command | Description |
| --- | --- |
| `@dependabot ignore DEPENDENCY_NAME` | Closes the pull request and prevents {% data variables.product.prodname_dependabot %} from updating this dependency. |
| `@dependabot ignore DEPENDENCY_NAME major version` | Closes the pull request and prevents {% data variables.product.prodname_dependabot %} from updating this dependency's major version. |
| `@dependabot ignore DEPENDENCY_NAME minor version` | Closes the pull request and prevents {% data variables.product.prodname_dependabot %} from updating this dependency's minor version. |
| `@dependabot ignore DEPENDENCY_NAME patch version` | Closes the pull request and prevents {% data variables.product.prodname_dependabot %} from updating this dependency's patch version. |
| `@dependabot unignore *` | Closes the current pull request, clears all `ignore` conditions stored for all dependencies in the group, then opens a new pull request. |
| `@dependabot unignore DEPENDENCY_NAME` | Closes the current pull request, clears all `ignore` conditions stored for the dependency, then opens a new pull request that includes available updates for the specified dependency. For example, `@dependabot unignore lodash` would open a new pull request that includes updates for the Lodash dependency. |
| `@dependabot unignore DEPENDENCY_NAME IGNORE_CONDITION` | Closes the current pull request, clears the stored `ignore` condition, then opens a new pull request that includes available updates for the specified ignore condition. For example, `@dependabot unignore express [< 1.9, > 1.8.0]` would open a new pull request that includes updates for Express between versions 1.8.0 and 1.9.0. |

> [!TIP]
> When you want to un-ignore a specific ignore condition, use the `@dependabot show DEPENDENCY_NAME ignore conditions` command to quickly check what ignore conditions a dependency currently has.
2 changes: 1 addition & 1 deletion content/copilot/concepts/auto-model-selection.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ category:

Experience less rate limiting and reduce the mental load of choosing a model by letting {% data variables.copilot.copilot_auto_model_selection %} automatically choose the best available model on your behalf.

{% data variables.copilot.copilot_auto_model_selection %} is currently optimized for model availability, choosing from a list of models that may change over time. It currently chooses from {% data variables.copilot.copilot_gpt_41 %}, {% data variables.copilot.copilot_gpt_5_mini %}, {% data variables.copilot.copilot_gpt_5 %}, {% data variables.copilot.copilot_claude_haiku_45 %}, and {% data variables.copilot.copilot_claude_sonnet_45 %}, based on your subscription type.
{% data variables.copilot.copilot_auto_model_selection %} is currently optimized for model availability, choosing from a list of models that may change over time. It currently chooses from {% data variables.copilot.copilot_gpt_41 %}, {% data variables.copilot.copilot_gpt_5_mini %}, {% data variables.copilot.copilot_gpt_51_codex_max %}, {% data variables.copilot.copilot_claude_haiku_45 %}, {% data variables.copilot.copilot_claude_sonnet_45 %}, and {% data variables.copilot.copilot_gemini_3_pro %}, based on your subscription type.

With {% data variables.copilot.copilot_auto_model_selection %}, you benefit from:
* Reduced chances of rate limiting
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -310,14 +310,21 @@ If you want to allow {% data variables.product.prodname_copilot_short %} to acce
"github-mcp-server": {
"type": "http",
// Remove "/readonly" to enable wider access to all tools.
// Then, use the "tools" key to specify the subset of tools you'd like to include.
// Then, use the "X-MCP-Toolsets" header to specify which toolsets you'd like to include.
// Use the "tools" field to select individual tools from the toolsets.
"url": "https://api.githubcopilot.com/mcp/readonly",
"tools": ["*"]
"tools": ["*"],
"headers": {
"X-MCP-Toolsets": "repos,issues,users,pull_requests,code_security,secret_protection,actions,web_search"
}
}
}
}
```


For more information on toolsets, refer to the [README](https://github.com/github/github-mcp-server?tab=readme-ov-file#available-toolsets) in the {% data variables.product.github %} Remote MCP Server documentation.

1. Click **Save**.
{% data reusables.actions.sidebar-environment %}
1. Click the `copilot` environment.
Expand Down
1 change: 1 addition & 0 deletions content/copilot/reference/ai-models/model-hosting.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ Used for:
* {% data variables.copilot.copilot_gpt_51 %}
* {% data variables.copilot.copilot_gpt_51_codex %}
* {% data variables.copilot.copilot_gpt_51_codex_mini %}
* {% data variables.copilot.copilot_gpt_51_codex_max %}

These models are hosted by OpenAI and {% data variables.product.github %}'s Azure infrastructure.

Expand Down
4 changes: 4 additions & 0 deletions data/tables/copilot/model-multipliers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,10 @@
multiplier_paid: 0.33
multiplier_free: Not applicable

- name: GPT-5.1-Codex-Max
multiplier_paid: 1.0
multiplier_free: Not applicable

- name: Grok Code Fast 1
multiplier_paid: 0.25
multiplier_free: Not applicable
Expand Down
7 changes: 7 additions & 0 deletions data/tables/copilot/model-release-status.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,13 @@
ask_mode: true
edit_mode: true

- name: 'GPT-5.1-Codex-Max'
provider: 'OpenAI'
release_status: 'Public preview'
agent_mode: true
ask_mode: true
edit_mode: true

# Anthropic models
- name: 'Claude Haiku 4.5'
provider: 'Anthropic'
Expand Down
8 changes: 8 additions & 0 deletions data/tables/copilot/model-supported-clients.yml
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,14 @@
xcode: true
jetbrains: true

- name: GPT-5.1-Codex-Max
dotcom: true
vscode: true
vs: false
eclipse: false
xcode: false
jetbrains: false

- name: Grok Code Fast 1
dotcom: true
vscode: true
Expand Down
7 changes: 7 additions & 0 deletions data/tables/copilot/model-supported-plans.yml
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,13 @@
business: true
enterprise: true

- name: GPT-5.1-Codex-Max
free: false
pro: true
pro_plus: true
business: true
enterprise: true

- name: Grok Code Fast 1
free: false
pro: true
Expand Down
1 change: 1 addition & 0 deletions data/variables/copilot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,7 @@ copilot_gpt_5_mini: 'GPT-5 mini'
copilot_gpt_51: 'GPT-5.1'
copilot_gpt_51_codex: 'GPT-5.1-Codex'
copilot_gpt_51_codex_mini: 'GPT-5.1-Codex-Mini'
copilot_gpt_51_codex_max: 'GPT-5.1-Codex-Max'
# OpenAI 'o' series:
copilot_o3: 'o3'
copilot_o4_mini: 'o4-mini'
Expand Down
18 changes: 16 additions & 2 deletions src/article-api/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,24 @@ Article API endpoints allow consumers to query GitHub Docs for listings of curre

The `/api/article/meta` endpoint powers hovercards, which provide a preview for internal links on <docs.github.com>.

The `/api/article/body` endpoint can serve markdown for both regular articles and autogenerated content (such as REST API documentation) using specialized transformers.

## How it works

The `/api/article` endpoints return information about a page by `pathname`.

`api/article/meta` is highly cached, in JSON format.

### Autogenerated Content Transformers

For autogenerated pages (REST, landing pages, audit logs, webhooks, GraphQL, etc), the Article API uses specialized transformers to convert the rendered content into markdown format. These transformers are located in `src/article-api/transformers/` and use an extensible architecture:

To add a new transformer for other autogenerated content types:
1. Create a new transformer file implementing the `PageTransformer` interface
2. Register it in `transformers/index.ts`
3. Create a template in `templates/` to configure how the transformer will organize the autogenerated content
4. The transformer will automatically be used by `/api/article/body`

## How to get help

For internal folks ask in the Docs Engineering slack channel.
Expand All @@ -34,12 +46,13 @@ Get article metadata and content in a single object. Equivalent to calling `/art

**Parameters**:
- **pathname** (string) - Article path (e.g. '/en/get-started/article-name')
- **[apiVersion]** (string) - API version for REST pages (optional, defaults to latest)

**Returns**: (object) - JSON object with article metadata and content (`meta` and `body` keys)

**Throws**:
- (Error): 403 - If the article body cannot be retrieved. Reason is given in the error message.
- (Error): 400 - If pathname parameter is invalid.
- (Error): 400 - If pathname or apiVersion parameters are invalid.
- (Error): 404 - If the path is valid, but the page couldn't be resolved.

**Example**:
Expand All @@ -63,12 +76,13 @@ Get the contents of an article's body.

**Parameters**:
- **pathname** (string) - Article path (e.g. '/en/get-started/article-name')
- **[apiVersion]** (string) - API version (optional, defaults to latest)

**Returns**: (string) - Article body content in markdown format.

**Throws**:
- (Error): 403 - If the article body cannot be retrieved. Reason is given in the error message.
- (Error): 400 - If pathname parameter is invalid.
- (Error): 400 - If pathname or apiVersion parameters are invalid.
- (Error): 404 - If the path is valid, but the page couldn't be resolved.

**Example**:
Expand Down
16 changes: 16 additions & 0 deletions src/article-api/liquid-renderers/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
/**
* API Transformer Liquid Tags
*
* This module contains custom Liquid tags used by article-api transformers
* to render API documentation in a consistent format.
*/

import { restTags } from './rest-tags'

// Export all API transformer tags for registration
export const apiTransformerTags = {
...restTags,
}

// Re-export individual tag modules for direct access if needed
export { restTags } from './rest-tags'
Loading