diff --git a/Dockerfile b/Dockerfile index 195bdfd6f4cd..140cacc3b1db 100644 --- a/Dockerfile +++ b/Dockerfile @@ -10,7 +10,7 @@ # --------------------------------------------------------------- # To update the sha: # https://github.com/github/gh-base-image/pkgs/container/gh-base-image%2Fgh-base-noble -FROM ghcr.io/github/gh-base-image/gh-base-noble:20260902-091552-ga96e4354a@sha256:5075bf9763afa1fdf20995dfa0382974a2dfec8d34e7b119b614205d013801d7 AS base +FROM ghcr.io/github/gh-base-image/gh-base-noble:20260903-185405-g03e243e8e@sha256:d7ed0adc25b453b64b7ba7bfb9c81b786063d9d18d0161a81effbba2ba109873 AS base # Install curl for Node install and determining the early access branch # Install git for cloning docs-early-access & translations repos diff --git a/content/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities.md b/content/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities.md index 1b6a05915e7e..a9e1e17921d8 100644 --- a/content/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities.md +++ b/content/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities.md @@ -423,56 +423,6 @@ Use this command to immediately unlock the {% data variables.enterprise.manageme ghe-reactivate-admin-login ``` -### ghe-saml-mapping-csv - -> [!NOTE] -> This utility does not work with configurations that use SAML with SCIM provisioning. For the SCIM version of this tool, please refer to [`ghe-scim-identities-csv` utility](#ghe-scim-identities-csv). - -This utility allows administrators to output or update the SAML `NameID` mappings for users on an instance. The utility can output a CSV file that lists all existing mappings. You can also update mappings for users on your instance by editing the resulting file, then using the utility to assign new mappings from the file. - -To output a CSV file containing a list of all user SAML `NameID` mappings on the instance, run the following command. - -```shell -ghe-saml-mapping-csv -d -``` - -By default, the utility writes the file to `/data/user/tmp`. - -If you plan to update mappings, to ensure that the utility can access the file, we recommend that you keep the file in the default location. - -To prepare to update mappings, edit the file and make the desired changes. To see the result of updating the mappings using the new values in your edited CSV file, perform a dry run. Run the following command, replacing /PATH/TO/FILE with the actual path to the file you edited. - -```shell -ghe-saml-mapping-csv -u -n -f /PATH/TO/FILE -``` - -To update SAML mappings on the instance with new values from the file, run the following command, replacing /PATH/TO/FILE with the actual path to the file you edited. - -```shell -ghe-saml-mapping-csv -u -f /PATH/TO/FILE -``` - -### ghe-scim-identities-csv - -> [!NOTE] -> This utility only works with configurations that use SAML with SCIM provisioning. For the SAML only version of this tool, please refer to the [`ghe-saml-mapping-csv` utility](#ghe-saml-mapping-csv). - -This utility allows administrators to output the SCIM identities for users on an instance. The utility can output a CSV file that lists all existing identities and the groups they are members of. - -To output CSV data containing a list of all user SCIM identities on the instance, run the following command. This will create a file located at `/data/user/tmp/scim-identities-DATE.csv` containing your SCIM identities. - -```shell -ghe-scim-identities-csv -``` - -Or, if you'd like to specify the file, run the following command. - -```shell -ghe-scim-identities-csv -f /PATH/TO/FILE -``` - -We recommend writing to a file in `/data/user/tmp`. - ### ghe-service-list This utility lists all of the services that have been started or stopped (are running or waiting) on your appliance. @@ -648,6 +598,7 @@ SSL-Session: ``` You can use these additional options with the utility: + * The `-r` flag allows you to uninstall a CA certificate. * The `-h` flag displays more usage information. @@ -715,6 +666,8 @@ To show all hook deliveries filtered by a given event and action: ```shell ghe-webhook-logs --event issues.opened +``` + To show all failed hook deliveries in the past day: ```shell @@ -1184,6 +1137,7 @@ Flag | Description > [!NOTE] > {% ifversion ghes > 3.17 %}* In an HA configuration, you can use this command to remove an additional node. You cannot use it to remove the HA primary or a replica.{% endif %} +> > * The target node must report `ready` in `nomad node status` to complete removal. The `--no-evacuate` flag does not remove an offline node from the configuration. > * This command does not support parallel execution. To remove multiple nodes, you must wait until this command has finished before running it for another node. @@ -1380,6 +1334,7 @@ ghe-actions-test-storage-with-oidc -p [PROVIDER] -cs ["CONNECTION-STRING"] This utility stops {% data variables.product.prodname_actions %} from running on {% data variables.location.product_location %}. > [!NOTE] +> > * {% data reusables.enterprise_enterprise_support.support_will_ask_you_to_run_command %} > * In high availability configurations, run this command from the primary. @@ -1388,6 +1343,7 @@ This utility stops {% data variables.product.prodname_actions %} from running on This utility starts {% data variables.product.prodname_actions %} on {% data variables.location.product_location %} after it has been previously stopped. > [!NOTE] +> > * {% data reusables.enterprise_enterprise_support.support_will_ask_you_to_run_command %} > * In high availability configurations, run this command from the primary. @@ -1889,10 +1845,9 @@ To install an upgrade package: ghe-upgrade UPGRADE-PACKAGE-FILENAME ``` - {% ifversion ghes > 3.20 %} -Beginning with upgrades in version 3.21 operators may run many of the upgrade operations without requiring a maintenance window using phased execution. +Beginning with upgrades in version 3.21 operators may run many of the upgrade operations without requiring a maintenance window using phased execution. First run operations which do not require a maintenance window by triggering the pre-upgrade phase @@ -1997,8 +1952,109 @@ This utility unsuspends the specified user, granting them access to login, push, ghe-user-unsuspend USERNAME ``` -## Database and storage +## User management with SAML and SCIM + +These utilities help you troubleshoot SAML single sign-on (SSO) and manage SAML `NameID` mappings and SCIM identities on {% data variables.location.product_location %}, for both individual users and in bulk. + +### ghe-saml-debug + +This utility enables or disables SAML debug logging on {% data variables.location.product_location %}. When you enable debug logging, {% data variables.product.prodname_ghe_server %} writes verbose SAML request and response details to its logs, which can help you troubleshoot SSO. For more information, see [AUTOTITLE](/admin/managing-iam/using-saml-for-enterprise-iam/troubleshooting-saml-authentication). + +SAML debug logging is a global setting and is not scoped to a single user. The `USERNAME` argument must be an existing user and identifies the account that the change is attributed to in the audit log. It is not the subject of the logging. + +> [!WARNING] +> +> Only enable SAML debugging when requested by {% data variables.contact.github_support %}, and disable it immediately after troubleshooting. Leaving it enabled causes logs to grow much faster than usual, which can negatively impact the performance of {% data variables.product.prodname_ghe_server %}. + +To enable SAML debug logging, run the following command, replacing `USERNAME` with an existing user to attribute the change to. + +```shell +ghe-saml-debug --enable USERNAME +``` + +To disable SAML debug logging, run the following command. + +```shell +ghe-saml-debug --disable USERNAME +``` + +### ghe-saml-mapping-csv + +> [!NOTE] +> +> This utility does not work with configurations that use SAML with SCIM provisioning. For the SCIM version of this tool, please refer to [`ghe-scim-identities-csv` utility](#ghe-scim-identities-csv). + +This utility allows administrators to output or update the SAML `NameID` mappings for users on an instance. The utility can output a CSV file that lists all existing mappings. You can also update mappings for users on your instance by editing the resulting file, then using the utility to assign new mappings from the file. + +To output a CSV file containing a list of all user SAML `NameID` mappings on the instance, run the following command. + +```shell +ghe-saml-mapping-csv --dump +``` + +By default, the utility writes the file to `/data/user/tmp`. + +If you plan to update mappings, to ensure that the utility can access the file, we recommend that you keep the file in the default location. + +To prepare to update mappings, edit the file and make the desired changes. To see the result of updating the mappings using the new values in your edited CSV file, perform a dry run. Run the following command, replacing `/PATH/TO/FILE` with the actual path to the file you edited. + +```shell +ghe-saml-mapping-csv --update --dry-run --file /PATH/TO/FILE +``` + +To update SAML mappings on the instance with new values from the file, run the following command, replacing `/PATH/TO/FILE` with the actual path to the file you edited. + +```shell +ghe-saml-mapping-csv --update --file /PATH/TO/FILE +``` + +### ghe-saml-mapping-destroy + +This utility permanently deletes the SAML mapping or mappings whose `NameID` matches a value that you specify. A SAML mapping links an external SAML identity (the `NameID`) to a user account. When you delete a mapping, the account must re-link its SAML identity the next time the user signs in. For more information, see [AUTOTITLE](/admin/managing-iam/using-saml-for-enterprise-iam/updating-a-users-saml-nameid). + +> [!WARNING] +> +> This action is destructive and cannot be undone. By default, the utility displays the matching mappings and prompts you to confirm before it deletes anything. To skip the confirmation prompt, use the `--yes` flag. + +To find and delete the SAML mappings for a `NameID`, run the following command, replacing `NAME-ID` with the `NameID` to match, such as an email address or URN. If the value contains spaces or shell metacharacters, enclose it in quotes. + +```shell +ghe-saml-mapping-destroy NAME-ID +``` + +### ghe-saml-mapping-find + +This utility displays the SAML mapping for a single user. It is read-only and does not change {% data variables.location.product_location %}. For more information, see [AUTOTITLE](/admin/managing-iam/using-saml-for-enterprise-iam/updating-a-users-saml-nameid). + +To display the SAML mapping for a user, run the following command, replacing `USERNAME` with the username. + +```shell +ghe-saml-mapping-find USERNAME +``` + +### ghe-scim-identities-csv + +> [!NOTE] +> +> This utility only works with configurations that use SAML with SCIM provisioning. For the SAML only version of this tool, please refer to the [`ghe-saml-mapping-csv` utility](#ghe-saml-mapping-csv). + +This utility allows administrators to output the SCIM identities for users on an instance. The utility can output a CSV file that lists all existing identities and the groups they are members of. +To output CSV data containing a list of all user SCIM identities on the instance, run the following command. This will create a file located at `/data/user/tmp/scim-identities-DATE.csv` containing your SCIM identities. + +```shell +ghe-scim-identities-csv +``` + +Or, if you'd like to specify the file, run the following command, replacing `/PATH/TO/FILE` with the path where you want to write the file. + +```shell +ghe-scim-identities-csv --file /PATH/TO/FILE +``` + +We recommend writing to a file in `/data/user/tmp`. + +## Database and storage {% ifversion ghes > 3.17 %} @@ -2056,7 +2112,6 @@ Flag | Description `-s/--summarize` | Display only a total. `-H/--human-readable` | Print sizes in human-readable format. - ### ghe-mssql-console This utility opens a Microsoft SQL Server database session on {% data variables.location.product_location %}. The MSSQL database is used by {% data variables.product.prodname_actions %} services. @@ -2098,7 +2153,6 @@ This utility runs checks on the state of the Microsoft SQL Server instance on {% ghe-mssql-health-check ``` - ## Dependencies ### ghe-dep-graph-enable diff --git a/content/admin/data-residency/github-copilot-with-data-residency.md b/content/admin/data-residency/github-copilot-with-data-residency.md index 31c2e2a8b6d5..30803647a14a 100644 --- a/content/admin/data-residency/github-copilot-with-data-residency.md +++ b/content/admin/data-residency/github-copilot-with-data-residency.md @@ -65,15 +65,10 @@ The models available for {% data variables.product.prodname_copilot_short %} var * {% data variables.copilot.copilot_gpt_56_sol %} * {% data variables.copilot.copilot_gpt_56_terra %} * {% data variables.copilot.copilot_claude_haiku_45 %} -* {% data variables.copilot.copilot_claude_opus_45 %} -* {% data variables.copilot.copilot_claude_opus_46 %} * {% data variables.copilot.copilot_claude_opus_47 %} * {% data variables.copilot.copilot_claude_opus_48 %} * {% data variables.copilot.copilot_claude_opus_5 %} -* {% data variables.copilot.copilot_claude_sonnet_45 %} -* {% data variables.copilot.copilot_claude_sonnet_46 %} * {% data variables.copilot.copilot_claude_sonnet_5 %} -* {% data variables.copilot.copilot_gemini_31_pro %} * {% data variables.copilot.copilot_gemini_35_flash %} * {% data variables.copilot.copilot_mai_code_1_flash %} diff --git a/content/copilot/concepts/about-cloud-and-local-sandboxes.md b/content/copilot/concepts/about-cloud-and-local-sandboxes.md index 8d57f2b5ccd8..c3bd49f74a55 100644 --- a/content/copilot/concepts/about-cloud-and-local-sandboxes.md +++ b/content/copilot/concepts/about-cloud-and-local-sandboxes.md @@ -74,11 +74,30 @@ For more information, see [AUTOTITLE](/copilot/how-tos/cloud-and-local-sandboxes ### Cross-platform support -Local sandboxing is available on macOS and Linux, and on Windows Insiders builds. Support and isolation behavior vary by platform because each operating system uses a different isolation backend: +Local sandboxing is available on macOS, on Linux, and on recent Windows 11 builds. Each operating system uses a different isolation backend, so the requirements are different: -* **macOS** uses the Seatbelt backend (`sandbox-exec`). -* **Linux** uses the bubblewrap backend, which requires the `bwrap` command to be installed and available on your `PATH`. If `/sandbox` reports that sandboxing isn't supported on Linux, install bubblewrap. -* **Windows** uses the ProcessContainer backend. +* **macOS** uses the Seatbelt backend. {% data variables.copilot.copilot_cli_short %} applies a process-scoped profile to each sandboxed command. Use macOS 15 (Sequoia) or later. {% data variables.copilot.copilot_cli_short %} does not block an older macOS, but the backend is not tested there. +* **Linux** uses the bubblewrap backend. Install bubblewrap 0.5.0 or later, and make sure `bwrap` is on your `PATH`. If `/sandbox` reports that your `bwrap` is too old, upgrade the package. +* **Windows** uses the BaseContainer tier of the ProcessContainer backend. {% data variables.copilot.copilot_cli_short %} does not use the AppContainer fallback tiers. If your Windows build cannot supply BaseContainer, {% data variables.copilot.copilot_cli_short %} reports that sandboxing is not supported. To find the supported Windows versions, see [Windows OS support for Copilot sandboxing](https://aka.ms/ghcp-sandbox-os-support). + +#### Proxy support + +The sandbox proxy operates differently on each operating system: + +* **macOS**: {% data variables.copilot.copilot_cli_short %} does not give the proxy to Seatbelt. It sets `HTTP_PROXY`, `HTTPS_PROXY`, and `ALL_PROXY` in the sandboxed environment instead. Only programs that obey these variables use the proxy. A program that ignores them connects directly. +* **Linux**: bubblewrap enforces the proxy. The sandbox gets a private network namespace, and only the proxy endpoint is permitted. This mode has more requirements. You must have: + * `slirp4netns` on your `PATH`. + * `unshare` and `nsenter` from util-linux 2.35 or later, with `--map-current-user` and `--keep-caps` support. + * `iptables` and `ip6tables`. Use the `nf_tables` backend. The legacy backend also operates, but only if you can write to `/run/xtables.lock`. + + Two more limits apply on Linux. The proxy must have an IPv4 address, because {% data variables.copilot.copilot_cli_short %} refuses a proxy that only IPv6 can reach. The proxy URL must not contain credentials, so give the credentials to the proxy itself. + + Also on Linux, bubblewrap cannot control local network access independently of outbound access. Your local network setting therefore does not have a separate effect there. +* **Windows**: the proxy is not available. Do not use denied paths on Windows either. {% data variables.copilot.copilot_cli_short %} cannot enforce these settings, and the sandboxed command fails with an error. + +#### If your host does not support local sandboxing + +{% data variables.copilot.copilot_cli_short %} turns the sandbox off for the session and shows a notice. Shell commands and sandboxed services then run without a sandbox, and your `sandbox.enabled` setting does not change. If your enterprise enforces sandboxing through device-managed settings, the session fails closed instead: sandboxed commands do not run. ### Enterprise policy enforcement diff --git a/content/copilot/concepts/agents/copilot-cli/fleet.md b/content/copilot/concepts/agents/copilot-cli/fleet.md index 95a5d0eb54b6..1b751d0de58e 100644 --- a/content/copilot/concepts/agents/copilot-cli/fleet.md +++ b/content/copilot/concepts/agents/copilot-cli/fleet.md @@ -29,7 +29,7 @@ When you use the `/fleet` command, the main {% data variables.product.prodname_c * **Specialization**: If you've defined custom agents that are specialized for certain types of work, these may be used by the subagents. This allows for specialization, with the subagents using the custom agents best suited to the specific subtask they are working on. - By default, subagents use a low-cost AI model. However, you can tell {% data variables.product.prodname_copilot_short %} to use a specific model for part of the work. For example, within a larger prompt, you could specify `... Use GPT-5.3-Codex, to create ... Use Claude Opus 4.5, to analyze ...`. If a subagent uses a custom agent profile that specifies a particular AI model, then that model will be used by the subagent. Using a specific model may produce better quality results for particular types of subtask. + By default, subagents use a low-cost AI model. However, you can tell {% data variables.product.prodname_copilot_short %} to use a specific model for part of the work. For example, within a larger prompt, you could specify `... Use GPT-5.3-Codex, to create ... Use Claude Opus 5, to analyze ...`. If a subagent uses a custom agent profile that specifies a particular AI model, then that model will be used by the subagent. Using a specific model may produce better quality results for particular types of subtask. If custom agents are available, {% data variables.product.prodname_copilot_short %} will decide whether to use one to complete a particular subtask. However, if you know that a specific custom agent is well-suited to a particular subtask, you can specify this in your prompt by using `@CUSTOM-AGENT-NAME`. For example, within a larger prompt: `... Use @test-writer to create comprehensive unit tests for ...`. diff --git a/content/copilot/how-tos/copilot-cli/cli-best-practices.md b/content/copilot/how-tos/copilot-cli/cli-best-practices.md index 9e43d58782fa..476a2008a79c 100644 --- a/content/copilot/how-tos/copilot-cli/cli-best-practices.md +++ b/content/copilot/how-tos/copilot-cli/cli-best-practices.md @@ -87,15 +87,15 @@ Use `/model` to choose from available models based on your task complexity: | Model | Best For | Tradeoffs | | ----- | -------- | --------- | | **Auto** | Reduced rate limiting and lower latency and errors | See [AUTOTITLE](/copilot/concepts/models/auto-model-selection) | -| **Claude Opus 4.5** (default) | Complex architecture, difficult debugging, nuanced refactoring | Most capable but more costly | -| **Claude Sonnet 4.5** | Day-to-day coding, most routine tasks | Fast, cost-effective, handles most work well | -| **GPT-5.2 Codex** | Code generation, code review, straightforward implementations | Excellent for reviewing code produced by other models | +| **{% data variables.copilot.copilot_claude_opus_5 %}** | Complex architecture, difficult debugging, nuanced refactoring | Most capable but more costly | +| **{% data variables.copilot.copilot_claude_sonnet_5 %}** | Day-to-day coding, most routine tasks | Fast, cost-effective, handles most work well | +| **{% data variables.copilot.copilot_gpt_53_codex %}** | Code generation, code review, straightforward implementations | Excellent for reviewing code produced by other models | **Recommendations:** * **Auto** intelligently chooses models based on real-time system health and model performance (reducing rate limiting and providing lower latency and errors), and the complexity of the task you have given {% data variables.product.prodname_copilot_short %}. -* **Opus 4.5** is ideal for tasks requiring deep reasoning, complex system design, subtle bug investigation, or extensive context understanding. -* **Switch to Sonnet 4.5** for routine tasks where speed and cost efficiency matter—it handles the majority of everyday coding effectively. +* **{% data variables.copilot.copilot_claude_opus_5 %}** is ideal for tasks requiring deep reasoning, complex system design, subtle bug investigation, or extensive context understanding. +* **Switch to {% data variables.copilot.copilot_claude_sonnet_5 %}** for routine tasks where speed and cost efficiency matter—it handles the majority of everyday coding effectively. * **Use Codex** for high-volume code generation and as a second opinion for reviewing code produced by other models. You can switch models mid-session with `/model` as task complexity changes. @@ -336,7 +336,7 @@ Pair with {% data variables.copilot.copilot_cli_short %} to develop tests. ### Code review assistance * ``/security-review Review my current local changes for security issues. Prioritize high-severity findings and suggest remediations I can apply before opening a pull request.`` -* ``/review Use Opus 4.5 and Codex 5.2 to review the changes in my current branch against `main`. Focus on potential bugs and security issues.`` +* ``/review Use {% data variables.copilot.copilot_claude_opus_5 %} and {% data variables.copilot.copilot_gpt_53_codex %} to review the changes in my current branch against `main`. Focus on potential bugs and security issues.`` * Triage high-severity findings first, validate your fixes, then continue through your normal pull request review workflow. ### Git operations diff --git a/content/copilot/how-tos/use-copilot-agents/cloud-agent/changing-the-ai-model.md b/content/copilot/how-tos/use-copilot-agents/cloud-agent/changing-the-ai-model.md index b2e1a50ac62c..1b24bcb5a42d 100644 --- a/content/copilot/how-tos/use-copilot-agents/cloud-agent/changing-the-ai-model.md +++ b/content/copilot/how-tos/use-copilot-agents/cloud-agent/changing-the-ai-model.md @@ -30,7 +30,6 @@ You may find that different models perform better, or provide more useful respon The following options are currently available: * Auto -{% data reusables.copilot.copilot-cloud-agent-auto-models %} {% data reusables.copilot.copilot-cloud-agent-non-auto-models %} {% data reusables.copilot.auto-model-option %} diff --git a/content/copilot/reference/ai-models/model-comparison.md b/content/copilot/reference/ai-models/model-comparison.md index 61b36ebe40c6..6fb5654f718b 100644 --- a/content/copilot/reference/ai-models/model-comparison.md +++ b/content/copilot/reference/ai-models/model-comparison.md @@ -40,7 +40,6 @@ Use these models for common development tasks that require a balance of quality, | {% data variables.copilot.copilot_gpt_53_codex %} | Delivers higher-quality code on complex engineering tasks like features, tests, debugging, refactors, and reviews without lengthy instructions. | | {% data variables.copilot.copilot_gpt_5_mini %} | Reliable default for most coding and writing tasks. Fast, accurate, and works well across languages and frameworks. | | {% data variables.copilot.copilot_gpt_56_terra %} | Balanced all-round choice for everyday interactive and agentic coding. | -| {% data variables.copilot.copilot_raptor_mini %} | Specialized for fast, accurate inline suggestions and explanations. | | {% data variables.copilot.copilot_mai_code_1_flash %} | Strong instruction-following and adaptive reasoning make it a reliable default for everyday coding tasks, writing, and multi-turn development workflows. | ### When to use these models @@ -93,9 +92,8 @@ These models are designed for tasks that require step-by-step reasoning, complex | {% data variables.copilot.copilot_gpt_5_mini %} | Delivers deep reasoning and debugging with faster responses and lower resource usage than GPT-5. Ideal for interactive sessions and step-by-step code analysis. | | {% data variables.copilot.copilot_gpt_55 %} | Great at complex reasoning, code analysis, and technical decision-making. | | {% data variables.copilot.copilot_gpt_56_sol %} | The highest reasoning ceiling in the GPT-5.6 family. Best for complex reasoning over large codebases and demanding, long-running agentic work. | -| {% data variables.copilot.copilot_claude_sonnet_46 %} | Improves on Sonnet 4.5 with more reliable completions and smarter reasoning under pressure. | -| {% data variables.copilot.copilot_claude_opus_47 %} | Anthropic’s most powerful model. Improves on {% data variables.copilot.copilot_claude_opus_46 %}. | -| {% data variables.copilot.copilot_gemini_31_pro %} | Advanced reasoning across long contexts and scientific or technical analysis. | +| {% data variables.copilot.copilot_claude_sonnet_46 %} | Reliable completions and smarter reasoning under pressure. | +| {% data variables.copilot.copilot_claude_opus_47 %} | Anthropic’s most powerful model. Strong at deep reasoning over large, complex codebases. | ### When to use these models @@ -119,8 +117,7 @@ Use these models when you want to ask questions about screenshots, diagrams, UI | Model | Why it's a good fit | |-------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | {% data variables.copilot.copilot_gpt_5_mini %} | Reliable default for most coding and writing tasks. Fast, accurate, and supports multimodal input for visual reasoning tasks. Works well across languages and frameworks. | -| {% data variables.copilot.copilot_claude_sonnet_46 %} | Improves on Sonnet 4.5 with more reliable completions and smarter reasoning under pressure. | -| {% data variables.copilot.copilot_gemini_31_pro %} | Deep reasoning and debugging, ideal for complex code generation, debugging, and research workflows. | +| {% data variables.copilot.copilot_claude_sonnet_46 %} | Reliable completions and smarter reasoning under pressure. | ### When to use these models diff --git a/content/copilot/reference/ai-models/model-hosting.md b/content/copilot/reference/ai-models/model-hosting.md index 2ae43060b72d..01d3967232ea 100644 --- a/content/copilot/reference/ai-models/model-hosting.md +++ b/content/copilot/reference/ai-models/model-hosting.md @@ -41,11 +41,8 @@ All input requests and output responses processed by {% data variables.product.p Used for: * {% data variables.copilot.copilot_claude_haiku_45 %} -* {% data variables.copilot.copilot_claude_sonnet_45 %} * {% data variables.copilot.copilot_claude_sonnet_46 %} * {% data variables.copilot.copilot_claude_sonnet_5 %} -* {% data variables.copilot.copilot_claude_opus_45 %} -* {% data variables.copilot.copilot_claude_opus_46 %} * {% data variables.copilot.copilot_claude_opus_47 %} * {% data variables.copilot.copilot_claude_opus_48 %} * {% data variables.copilot.copilot_claude_opus_48_fast %} @@ -80,7 +77,6 @@ When using {% data variables.copilot.copilot_claude %}, input prompts and output Used for: -* {% data variables.copilot.copilot_gemini_31_pro %} * {% data variables.copilot.copilot_gemini_35_flash %} * {% data variables.copilot.copilot_gemini_36_flash %} * {% data variables.copilot.copilot_gemini_37_flash %} @@ -121,7 +117,6 @@ Used for: * {% data variables.copilot.copilot_mai_code_1_flash %} * {% data variables.copilot.copilot_mai_code_1_1_flash %} -* {% data variables.copilot.copilot_raptor_mini %} {% data variables.copilot.copilot_mai_code_1_flash %} and {% data variables.copilot.copilot_mai_code_1_1_flash %} are first-party Microsoft models hosted on Azure in {% data variables.product.github %}'s tenant. diff --git a/content/copilot/reference/ai-models/supported-models.md b/content/copilot/reference/ai-models/supported-models.md index 2ce1d86b6081..8553f121ce86 100644 --- a/content/copilot/reference/ai-models/supported-models.md +++ b/content/copilot/reference/ai-models/supported-models.md @@ -79,7 +79,6 @@ Choosing a larger context window or higher reasoning will impact {% data variabl | Model | 1 million token context window | Configurable reasoning | | --- | --- | --- | | {% data variables.copilot.copilot_claude_sonnet_46 %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | -| {% data variables.copilot.copilot_claude_opus_46 %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | | {% data variables.copilot.copilot_claude_opus_47 %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | | {% data variables.copilot.copilot_claude_opus_48 %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | | {% data variables.copilot.copilot_claude_opus_5 %} | {% octicon "check" aria-label="Supported" %} | {% octicon "check" aria-label="Supported" %} | @@ -122,7 +121,6 @@ Some {% data variables.product.prodname_copilot_short %} models require minimum | Model | {% data variables.product.prodname_vscode %} | {% data variables.product.prodname_vs %} | JetBrains IDEs | Xcode | Eclipse | |----------------------------------------------------------|----------------------------------------------|------------------------------------------|----------------|-------|---------| -| {% data variables.copilot.copilot_gemini_31_pro %} | `v1.115.0` | `17.14.22` or `18.1.0` | `1.5.62` | `0.46.0` | `0.14.0` | | {% data variables.copilot.copilot_gemini_35_flash %} | `v1.115.0` | `17.14.22` or `18.1.0` | `1.5.62` | `0.46.0` | `0.14.0` | | {% data variables.copilot.copilot_gemini_36_flash %} | `v1.128.0` | `17.14.22` or `18.1.0` | TBD | TBD | TBD | | {% data variables.copilot.copilot_gemini_37_flash %} | `v1.128.0` | `17.14.22` or `18.1.0` | TBD | TBD | TBD | diff --git a/content/copilot/reference/copilot-cli-reference/cli-config-dir-reference.md b/content/copilot/reference/copilot-cli-reference/cli-config-dir-reference.md index 1a82bc22f1a6..e4c18ca8f369 100644 --- a/content/copilot/reference/copilot-cli-reference/cli-config-dir-reference.md +++ b/content/copilot/reference/copilot-cli-reference/cli-config-dir-reference.md @@ -485,12 +485,11 @@ These settings apply across all your sessions and repositories. You can use the | `respectGitignore` | `boolean` | `true` | Exclude gitignored files from the `@` file mention picker. When `false`, the picker includes files normally excluded by `.gitignore`. | | `sandbox.allowBypass` | `boolean` | `true` | Allow sandboxed commands to request a bypass for specific operations (surfaces a permission prompt) so tools like `grep` and `glob` keep working when the sandbox would otherwise block them. Set to `false` to opt out. | | `sandbox.enabled` | `boolean` | `false` | Restrict shell commands, MCP/LSP servers, and built-in file/web tools to a sandboxed environment with limited file system and network access. Enable it from the `/sandbox` dialog or with `/sandbox enable`. | -| `sandbox.failIfUnavailable` | `boolean` | `false` | Make sandboxing mandatory instead of falling back to unsandboxed execution: blocks model and tool execution if the policy can't be validated, compiled, or enforced by a usable sandbox backend. Typically set by a managed policy alongside `sandbox.enabled: true`; when set that way, you can't disable it. | | `sandbox.auth.git` | `boolean` | `true` | Inject Git credentials into the sandbox so commands running inside it can authenticate with Git. Set to `false` to opt out. Renamed from `sandbox.gitAuth`; the old key has no migration and is ignored wherever it still appears. | | `sandbox.auth.gh` | `boolean` | `true` | Inject {% data variables.product.prodname_cli %} (`gh`) credentials into the sandbox so commands running inside it can authenticate with the {% data variables.product.prodname_cli %}. Set to `false` to opt out. Renamed from `sandbox.ghAuth`; the old key has no migration and is ignored wherever it still appears. | | `sandbox.userPolicy.network.allowLocalNetwork` | `boolean` | `true` | Allow sandboxed commands to reach local network addresses (for example, local dev servers). Set to `false` to opt out. | -| `sandbox.userPolicy.network.proxy` | `object` | unset | Route sandboxed network traffic through an HTTP proxy. Fields: `url` (required), `username` (optional), `password` (optional). Configure it from the `/sandbox` dialog's **Network** tab, which masks the password field. The password itself is stored in the OS keychain rather than in `settings.json`, so it isn't editable via `/settings`. On Linux and macOS the proxy is cooperative (not strictly enforced); Windows enforces it. | -| `sandbox.userPolicy.deniedPaths` | `string[]` | `[]` | Paths that sandboxed commands are denied access to. On Windows, the ProcessContainer sandbox backend cannot enforce per-path deny rules, so entries have no effect—therefore don't rely on `deniedPaths` to protect a sensitive directory on Windows. | +| `sandbox.userPolicy.network.proxy` | `object` | unset | Route sandboxed network traffic through an HTTP proxy. Fields: `url` (required), `username` (optional), `password` (optional). Configure it from the `/sandbox` dialog's **Network** tab, which masks the password field. The password itself is stored in the OS keychain rather than in `settings.json`, so it isn't editable via `/settings`. Enforcement differs by platform: on macOS the proxy is cooperative—{% data variables.copilot.copilot_cli_short %} sets `HTTP_PROXY`, `HTTPS_PROXY`, and `ALL_PROXY` in the sandbox, so only programs that honor those variables use it; on Linux it is strictly enforced through a private network namespace that permits only the proxy endpoint (the proxy must have an IPv4 address and must not embed credentials); on Windows the proxy is not supported, so a policy that sets it is rejected and the sandboxed command fails with an error. | +| `sandbox.userPolicy.deniedPaths` | `string[]` | `[]` | Paths that sandboxed commands are denied access to. On Windows, the ProcessContainer (BaseContainer) backend cannot enforce per-path deny rules, so a policy that sets `deniedPaths` is rejected and the sandboxed command fails with an error—remove the denied paths, or use macOS or Linux, to run that policy. | | `sandbox.userPolicy.seatbelt.keychainAccess` | `boolean` | `false` | macOS only. Grant sandboxed commands access to the system keychain. Can also be toggled from the `/sandbox` dialog. | | `screenReader` | `boolean` | `false` | Enable screen reader optimizations. | | `scrollbar` | `boolean` | `true` | Show the scrollbar in scrollable views. Set to `false` to hide it and use the full terminal width. | @@ -519,19 +518,6 @@ These settings apply across all your sessions and repositories. You can use the > [!TIP] > Run `copilot help sandbox` for the full sandbox reference, including supported hosts and all `sandbox` settings keys. -#### Proxy client certificates (mTLS) - -When a request routed through an `https://` proxy (set with `proxyUrl`, `HTTPS_PROXY`, or `HTTP_PROXY`) requests a client certificate, {% data variables.copilot.copilot_cli_short %} automatically selects an OS-managed client identity. You don't need to configure a certificate path, private key, or passphrase. Private keys never leave the platform store. - -| Platform | Identity source | -|----------|-----------------| -| Windows | Current user's `MY` certificate store. | -| macOS | User keychain search list, including a preferred identity for the proxy host. | -| Linux (glibc) | Chromium-compatible NSS database and its configured PKCS#11 modules. | -| Linux (musl) and other platforms | Unsupported. Ordinary proxy behavior is unchanged. | - -Client identity selection only activates for `https://` proxies. Direct requests, `NO_PROXY` matches, and plaintext `http://` proxies never install a client identity. The platform store is re-read on every request, so certificate rotation or smart-card insertion doesn't require a session restart. - The `/sandbox` dialog groups `git`, `gh`, and keychain access under a dedicated **Auth** tab, and shows the `settings.json` path where the current sandbox configuration is stored. Press Ctrl+E in the `/sandbox` dialog to save any pending changes and open `settings.json` in your editor (`COPILOT_EDITOR`, `VISUAL`, or `EDITOR`), matching the same shortcut in `/settings`. The dialog reloads its state from disk after you edit and save the file. Sandboxing is powered by [Microsoft eXecution Container (MXC)](https://github.com/microsoft/mxc), which provides platform-specific containment backends. {% data variables.copilot.copilot_cli_short %} uses Seatbelt on macOS, Bubblewrap on Linux, and ProcessContainer on Windows. @@ -654,9 +640,6 @@ Only the following keys are supported in MDM managed settings. | `remoteControl` | Control whether sessions on this device can be controlled from other devices. `mode` is `"enabled"`, `"disabled"`, or `"requireSSO"` (requires `githubDotComOrganizations` when set). | | `shellShortcut` | Force-enable or force-disable the `$` interactive shell shortcut for all users. A managed value always overrides the user's own `shellShortcut` setting. | | `strictKnownMarketplaces` | Restrict plugins to known marketplaces | -| `strictPluginOnlyCustomization` | Customization lockdown baseline. Prevents standalone user and workspace/project customizations from the named surfaces, so eligible customizations may then originate only from plugins or managed settings. `true` locks all four surfaces (`skills`, `agents`, `hooks`, MCP servers); an array (for example, `["skills", "mcp"]`) locks only the named surfaces. Unset preserves existing behavior. This does **not** mean managed-plugin-only—plugin-provided customizations are still permitted. Use `allowManagedMcpServersOnly` and `allowManagedHooksOnly` for the stricter managed-only overlays described below. | -| `allowManagedMcpServersOnly` | A stricter overlay on top of `strictPluginOnlyCustomization`. When `true`, only the managed `allowedMcpServers` allowlist (plus MCP servers from managed or force-enabled plugins, and any fixed managed-MCP deployment) governs which MCP servers are eligible. Lower-precedence user and workspace/project allowlist entries can't broaden it; `deniedMcpServers` still applies. Trusted first-party servers (for example, the built-in {% data variables.product.github %} MCP server) remain exempt. See [Managed MCP server allow/deny list](#managed-mcp-server-allowdeny-list). | -| `allowManagedHooksOnly` | A stricter overlay on top of `strictPluginOnlyCustomization`. When `true`, only enterprise-managed hooks and hooks supplied by plugins force-enabled through managed `enabledPlugins` may load; user, workspace/project, and otherwise user-enabled plugin hooks are blocked. Normal managed permission and sandbox policies still apply. | | `telemetry` | Push baseline OpenTelemetry export configuration: `enabled`, `endpoint`, `protocol`, `headers`, `resourceAttributes`, `captureContent`, `lockCaptureContent`, and `serviceName`. See [AUTOTITLE](/copilot/reference/copilot-cli-reference/cli-command-reference#opentelemetry-monitoring). | > [!NOTE] @@ -671,9 +654,6 @@ Only the following keys are supported in MDM managed settings. > [!NOTE] > Most managed keys lock the entire row: a local edit is silently overridden by the managed value on the next load. `enabledPlugins` and `extraKnownMarketplaces` are the exception—the managed layer merges these maps with your own entries field-by-field instead of replacing them outright. This means the lock applies **per entry**, not to the whole key: a plugin or marketplace pinned by a managed policy can't be re-enabled, disabled, or repointed locally, but other entries in the same map remain fully user-controlled. -> [!NOTE] -> `strictPluginOnlyCustomization`, `allowManagedMcpServersOnly`, and `allowManagedHooksOnly` compose across managed sources with a most-restrictive-wins strategy: a surface locked, or an overlay set to `true`, by any managed source stays locked or `true` even if a lower-priority managed source leaves it unset. - ### Managed permission rules Push `deny`, `ask`, and `allow` rule lists under the managed `permissions` key to enforce a permission policy across all users, independent of `permissions.disableBypassPermissionsMode`. @@ -732,8 +712,6 @@ Rules: * **Deny always wins**—a server matching `deniedMcpServers` is blocked even if it also matches `allowedMcpServers`. * For remote servers, a match must come from a `serverUrl` entry; `serverName` only counts when no `serverUrl` entries exist. For stdio servers, a match must come from a `serverCommand` entry; `serverName` only counts when no `serverCommand` entries exist. -Set the managed `allowManagedMcpServersOnly` key to `true` for a stricter overlay: only the managed `allowedMcpServers` allowlist (plus MCP servers from managed or force-enabled plugins, and any fixed managed-MCP deployment) governs which servers are eligible, and lower-precedence user or workspace/project allowlist entries can no longer broaden it. `deniedMcpServers` still applies, and trusted first-party servers remain exempt. - ## Further reading * [AUTOTITLE](/copilot/how-tos/copilot-cli) diff --git a/content/copilot/reference/copilot-cli-reference/cli-programmatic-reference.md b/content/copilot/reference/copilot-cli-reference/cli-programmatic-reference.md index 2a1fa0ce2b46..f5e2adeeea78 100644 --- a/content/copilot/reference/copilot-cli-reference/cli-programmatic-reference.md +++ b/content/copilot/reference/copilot-cli-reference/cli-programmatic-reference.md @@ -39,7 +39,7 @@ There are a number of command-line options that are particularly useful when run | `--allow-tool=TOOL ...` | Selectively grant permission for a specific tool. For multiple tools, use a quoted, comma-separated list. | | `--allow-url=URL ...` | Allow the agent to fetch a specific URL or domain. Useful when a workflow needs web access to known endpoints. For multiple URLs, use a quoted, comma-separated list. | | `--deny-tool=TOOL ...` | Deny a specific tool. Useful for restricting what the agent can do in a locked-down workflow. For multiple tools, use a quoted, comma-separated list. | -| `--model=MODEL` | Choose the AI model (for example, `gpt-5.2` or `claude-sonnet-4.6`). Useful for pinning a model in reproducible workflows. See [Choosing a model](#choosing-a-model) below. | +| `--model=MODEL` | Choose the AI model (for example, `gpt-5.4` or `claude-haiku-4.5`). Useful for pinning a model in reproducible workflows. See [Choosing a model](#choosing-a-model) below. | | `--no-ask-user` | Prevent the agent from pausing to seek additional user input. | | `--secret-env-vars=VAR ...` | An environment variable whose value you want redacted in output. For multiple variables, use a quoted, comma-separated list. Essential for preventing secrets being exposed in logs. The values in the `GITHUB_TOKEN` and `COPILOT_GITHUB_TOKEN` environment variables are redacted by default. | | `--share=PATH` | Export the session transcript to a markdown file after non-interactive completion (defaults to `./copilot-session-.md`). Useful for auditing or archiving what the agent did. Note that session transcripts may contain sensitive information. | @@ -86,7 +86,7 @@ You can use environment variables to configure various aspects of the CLI's beha | Variable | Description | | --------------------- | ------------- | | `COPILOT_ALLOW_ALL` | Set to `true` for full permissions | -| `COPILOT_MODEL` | Set the model (for example, `gpt-5.2`, `claude-sonnet-4.5`) | +| `COPILOT_MODEL` | Set the model (for example, `gpt-5.4`, `claude-haiku-4.5`) | | `COPILOT_HOME` | Set the directory for the CLI configuration file (`~/.copilot` by default) | | `COPILOT_GITHUB_TOKEN`| Authentication token (highest precedence) | | `GH_TOKEN` | Authentication token (second precedence) | @@ -115,7 +115,7 @@ copilot -p "Fix the race condition in the worker pool" \ ``` > [!NOTE] -> You can find the model strings for all available models in the description of the `--model` option when you enter `copilot help` in your terminal. +> To see the model strings for all available models, run the `/model` command in an interactive {% data variables.copilot.copilot_cli_short %} session. For the full list of models and the clients that support them, see [AUTOTITLE](/copilot/reference/ai-models/supported-models). Alternatively, you can set the `COPILOT_MODEL` environment variable to specify a model for the duration of the shell session. diff --git a/content/copilot/tutorials/compare-ai-models.md b/content/copilot/tutorials/compare-ai-models.md index 3b0759fc01ea..76739f238007 100644 --- a/content/copilot/tutorials/compare-ai-models.md +++ b/content/copilot/tutorials/compare-ai-models.md @@ -190,21 +190,6 @@ For a complete walkthrough of the scenario, see [AUTOTITLE](/copilot/tutorials/w * It performs well on everyday coding tasks like test generation, boilerplate scaffolding, and validation logic. * The task leans into multi-step reasoning, but still stays within the confidence zone of a less advanced model because the logic isn’t too deep. -## {% data variables.copilot.copilot_claude_sonnet_45 %} - -{% data reusables.copilot.model-use-cases.claude-sonnet-45 %} - -### Example scenario - -Consider a scenario where you're modernizing a legacy COBOL application by rewriting it in Node.js. The project involves understanding unfamiliar source code, converting logic across languages, iteratively building the replacement, and verifying correctness through a test suite. - -For a complete walkthrough of the scenario, see [AUTOTITLE](/copilot/tutorials/modernize-legacy-code). - -### Why {% data variables.copilot.copilot_claude_sonnet_45 %} is a good fit - -* {% data variables.copilot.copilot_claude_sonnet_45 %} handles complex context well, making it suited for workflows that span multiple files or languages. -* Its hybrid reasoning architecture allows it to switch between quick answers and deeper, step-by-step problem-solving. - ## Further reading * [AUTOTITLE](/copilot/reference/ai-models/model-comparison) diff --git a/content/copilot/tutorials/vibe-coding.md b/content/copilot/tutorials/vibe-coding.md index cae2598dc4c5..5f8a1114f413 100644 --- a/content/copilot/tutorials/vibe-coding.md +++ b/content/copilot/tutorials/vibe-coding.md @@ -71,9 +71,9 @@ We'll create a time-tracking app in a new {% data variables.product.github %} re 1. Choose a model from the models dropdown. > [!NOTE] - > The responses referred to in this tutorial were received while using Claude Sonnet 4.5. Other models will respond differently, but you should get roughly similar results. Claude Sonnet 4.5 is a good choice, if it's available, as it provides useful commentary in the chat view, explaining what it is doing, and giving detailed summaries when it has finished coding. + > The responses referred to in this tutorial were received while using {% data variables.copilot.copilot_claude_sonnet_45 %}, which has since been retired. Other models will respond differently, but you should get roughly similar results. > - > If Claude Sonnet 4.5 is not available, set the model to **Auto** or select a model of your choice. + > Set the model to **Auto**, or select a model of your choice. 1. Enter this prompt in the chat: diff --git a/content/site-policy/acceptable-use-policies/github-appeal-and-reinstatement.md b/content/site-policy/acceptable-use-policies/github-appeal-and-reinstatement.md index 2600be9eaafe..d09806ebfc53 100644 --- a/content/site-policy/acceptable-use-policies/github-appeal-and-reinstatement.md +++ b/content/site-policy/acceptable-use-policies/github-appeal-and-reinstatement.md @@ -9,16 +9,17 @@ category: --- ## Appeal and Reinstatement -While the majority of interactions between individuals in GitHub’s community fall within our Acceptable Use Policies and Community Guidelines, violations of those policies do occur at times. When they do, GitHub staff may need to take enforcement action to address the violations. However, we understand that sometimes we might make mistakes. In some cases there may be a basis to reverse a moderation action taken (or not taken) by GitHub Staff. To ensure our policies and outcomes are applied evenly, GitHub provides an internal complaint-handling process where users can submit requests for reinstatement or provide additional information to appeal a moderation decision. +While the majority of interactions between individuals in the GitHub and npm communities fall within our Acceptable Use Policies, Community Guidelines, and Open-Source Terms, violations of those policies do occur at times. When they do, GitHub staff may need to take enforcement action to address the violations. However, we understand that sometimes we might make mistakes. In some cases there may be a basis to reverse a moderation action taken (or not taken) by GitHub Staff. To ensure our policies and outcomes are applied evenly, GitHub provides an internal complaint-handling process where users can submit requests for reinstatement or provide additional information to appeal a moderation decision. ## What are Appeals and Reinstatements? -Both Appeals and Reinstatements may arise in relation to decisions to disable or limit access to content or an account, including decisions whether or not to: +Both Appeals and Reinstatements may arise in relation to decisions to block content from being published or to disable or limit access to content or an account, including decisions whether or not to: * Remove, disable access to, or restrict visibility of content * Suspend or terminate access to an account * Suspend or terminate access to the service, in whole or in part * Suspend, terminate or otherwise restrict the ability to monetize content +* Block publishing of content on npm A “Reinstatement” is where a user wishes to regain access to their account or content and is willing to make any necessary changes to address the violation and agrees not to violate our terms going forward. @@ -26,7 +27,11 @@ An “Appeal” is where a user disputes that a violation has occurred and can p ## How this works -If you seek Reinstatement or wish to Appeal an enforcement action, please fill out our [Appeal and Reinstatement form](https://support.github.com/contact/reinstatement). You may Appeal a moderation decision for up to six months following the decision. GitHub may, in its discretion, refuse to consider any Appeals submitted more than six months after the decision. +If you'd like to seek Reinstatement or wish to Appeal an enforcement action on GitHub or npm, please fill out the applicable form: +* [GitHub Appeal and Reinstatement form](https://support.github.com/contact/reinstatement) +* [npm Appeal and Reinstatement form](https://support.github.com/support/contact/product-selection/reinstatement-requests/npm-reinstatement-request) + +On GitHub, you may seek Reinstatement or Appeal a moderation decision for up to six months following the decision. GitHub may, in its discretion, refuse to consider any requests submitted more than six months after the decision. GitHub staff will review the information provided in the form to determine whether there is sufficient information to warrant Reinstatement or granting of an Appeal. diff --git a/data/reusables/copilot/anthropic-claude-agent-models.md b/data/reusables/copilot/anthropic-claude-agent-models.md index 59de6fee6a05..e4fe2166e5d0 100644 --- a/data/reusables/copilot/anthropic-claude-agent-models.md +++ b/data/reusables/copilot/anthropic-claude-agent-models.md @@ -1,5 +1,2 @@ -* {% data variables.copilot.copilot_claude_opus_45 %} -* {% data variables.copilot.copilot_claude_opus_46 %} * {% data variables.copilot.copilot_claude_opus_47 %} -* {% data variables.copilot.copilot_claude_sonnet_45 %} * {% data variables.copilot.copilot_claude_sonnet_46 %} diff --git a/data/reusables/copilot/available-models-per-plan.md b/data/reusables/copilot/available-models-per-plan.md index a3321d13c733..6efe53aa7921 100644 --- a/data/reusables/copilot/available-models-per-plan.md +++ b/data/reusables/copilot/available-models-per-plan.md @@ -5,9 +5,11 @@ | Available models | {% data variables.copilot.copilot_pro_short %} | {% data variables.copilot.copilot_pro_plus_short %} | {% data variables.copilot.copilot_max_short %} | {% data variables.copilot.copilot_business_short %} | {% data variables.copilot.copilot_enterprise_short %} | |---------------------------------------------------------|-------------------------------------------------|-----------------------------------------------------|------------------------------------------------|-----------------------------------------------------|-------------------------------------------------------| | {% for model in tables.copilot.model-supported-plans %} | -| {{ model.name }}{% if model.name == 'GPT-5.4 nano' %}[^gpt54nano]{% endif %}{% if model.name == 'Claude Fable 5' or model.name == 'Claude Fable 5.1' %}[^claude-fable-5]{% endif %} | {% if model.pro == true %}{% octicon "check" aria-label="Included" %}{% else %}{% octicon "x" aria-label="Not included" %}{% endif %} | {% if model.pro_plus == true %}{% octicon "check" aria-label="Included" %}{% else %}{% octicon "x" aria-label="Not included" %}{% endif %} | {% if model.max == true %}{% octicon "check" aria-label="Included" %}{% else %}{% octicon "x" aria-label="Not included" %}{% endif %} | {% if model.business == true %}{% octicon "check" aria-label="Included" %}{% else %}{% octicon "x" aria-label="Not included" %}{% endif %} | {% if model.enterprise == true %}{% octicon "check" aria-label="Included" %}{% else %}{% octicon "x" aria-label="Not included" %}{% endif %} | +| {{ model.name }}{% if model.name == 'GPT-5.4 nano' %}[^gpt54nano]{% endif %}{% if model.name == 'Claude Fable 5' or model.name == 'Claude Fable 5.1' %}[^claude-fable-5]{% endif %}{% if model.name == 'Claude Sonnet 4.6' %}[^claude-sonnet-46-plans]{% endif %} | {% if model.pro == true %}{% octicon "check" aria-label="Included" %}{% else %}{% octicon "x" aria-label="Not included" %}{% endif %} | {% if model.pro_plus == true %}{% octicon "check" aria-label="Included" %}{% else %}{% octicon "x" aria-label="Not included" %}{% endif %} | {% if model.max == true %}{% octicon "check" aria-label="Included" %}{% else %}{% octicon "x" aria-label="Not included" %}{% endif %} | {% if model.business == true %}{% octicon "check" aria-label="Included" %}{% else %}{% octicon "x" aria-label="Not included" %}{% endif %} | {% if model.enterprise == true %}{% octicon "check" aria-label="Included" %}{% else %}{% octicon "x" aria-label="Not included" %}{% endif %} | | {% endfor %} | {% endrowheaders %} [^gpt54nano]: GPT-5.4 nano is currently only available in the Codex {% data variables.product.prodname_vscode %} extension ({% data variables.copilot.copilot_pro_plus_short %} only) and is not available in {% data variables.copilot.copilot_chat_short %}. + +[^claude-sonnet-46-plans]: {% data variables.copilot.copilot_claude_sonnet_46 %} was retired on September 1, 2026, but remains available to individual {% data variables.product.prodname_copilot_short %} subscribers on annual {% data variables.copilot.copilot_pro_short %} and {% data variables.copilot.copilot_pro_plus_short %} plans. It is not available to subscribers on monthly plans. diff --git a/data/reusables/copilot/copilot-cloud-agent-auto-models.md b/data/reusables/copilot/copilot-cloud-agent-auto-models.md deleted file mode 100644 index 19de1dfaf54c..000000000000 --- a/data/reusables/copilot/copilot-cloud-agent-auto-models.md +++ /dev/null @@ -1 +0,0 @@ -* {% data variables.copilot.copilot_claude_sonnet_45 %} \ No newline at end of file diff --git a/data/reusables/copilot/copilot-cloud-agent-non-auto-models.md b/data/reusables/copilot/copilot-cloud-agent-non-auto-models.md index 66de0a21c554..4e6057c35981 100644 --- a/data/reusables/copilot/copilot-cloud-agent-non-auto-models.md +++ b/data/reusables/copilot/copilot-cloud-agent-non-auto-models.md @@ -1,7 +1,6 @@ * {% data variables.copilot.copilot_claude_opus_47 %} * {% data variables.copilot.copilot_claude_opus_5 %} * {% data variables.copilot.copilot_claude_haiku_45 %} -* {% data variables.copilot.copilot_gemini_31_pro %} * {% data variables.copilot.copilot_gemini_35_flash %} * {% data variables.copilot.copilot_gemini_36_flash %} * {% data variables.copilot.copilot_gemini_37_flash %} diff --git a/data/reusables/copilot/model-compliance/us-models.md b/data/reusables/copilot/model-compliance/us-models.md index 95a3197640d7..504dd1e8a26b 100644 --- a/data/reusables/copilot/model-compliance/us-models.md +++ b/data/reusables/copilot/model-compliance/us-models.md @@ -6,11 +6,7 @@ * GPT-5.2-Codex * GPT-5.3-Codex * Claude Haiku 4.5 -* Claude Sonnet 4.5 -* Claude Opus 4.5 -* Claude Sonnet 4.6 * Claude Sonnet 5 -* Claude Opus 4.6 * Claude Opus 4.8 * Claude Opus 5 * MAI-Code-1-Flash diff --git a/data/reusables/copilot/model-use-cases/claude-haiku-45.md b/data/reusables/copilot/model-use-cases/claude-haiku-45.md index 6a81203ade28..5590bd299a5a 100644 --- a/data/reusables/copilot/model-use-cases/claude-haiku-45.md +++ b/data/reusables/copilot/model-use-cases/claude-haiku-45.md @@ -1,2 +1,2 @@ -{% data variables.copilot.copilot_claude_haiku_45 %} is a good choice for everyday coding support—including writing documentation, answering language-specific questions, or generating boilerplate code. It offers helpful, direct answers without over-complicating the task. If you're working within cost constraints, {% data variables.copilot.copilot_claude_haiku_45 %} is recommended as it delivers solid performance on many of the same tasks as {% data variables.copilot.copilot_claude_sonnet_45 %}, but with lower resource usage. +{% data variables.copilot.copilot_claude_haiku_45 %} is a good choice for everyday coding support—including writing documentation, answering language-specific questions, or generating boilerplate code. It offers helpful, direct answers without over-complicating the task. If you're working within cost constraints, {% data variables.copilot.copilot_claude_haiku_45 %} is recommended as it delivers solid performance on many of the same tasks as larger Claude models, but with lower resource usage. diff --git a/data/reusables/copilot/model-use-cases/claude-sonnet-45.md b/data/reusables/copilot/model-use-cases/claude-sonnet-45.md deleted file mode 100644 index 6ecce7655aba..000000000000 --- a/data/reusables/copilot/model-use-cases/claude-sonnet-45.md +++ /dev/null @@ -1 +0,0 @@ -{% data variables.copilot.copilot_claude_sonnet_45 %} excels across the software development lifecycle, from initial design to bug fixes, maintenance to optimizations. It is particularly well-suited for multi-file refactoring or architectural planning, where understanding context across components is important. diff --git a/data/tables/copilot/annual-subscriber-model-multipliers.yml b/data/tables/copilot/annual-subscriber-model-multipliers.yml index fa0a88a5adae..fe26065e9c68 100644 --- a/data/tables/copilot/annual-subscriber-model-multipliers.yml +++ b/data/tables/copilot/annual-subscriber-model-multipliers.yml @@ -8,30 +8,18 @@ - model: 'Claude Haiku 4.5' new_multiplier: '0.33' -- model: 'Claude Opus 4.5' - new_multiplier: '15' - -- model: 'Claude Opus 4.6' - new_multiplier: '27' - - model: 'Claude Opus 4.7' new_multiplier: '27' - model: 'Claude Opus 4.8' new_multiplier: '27' -- model: 'Claude Sonnet 4.5' - new_multiplier: '6' - - model: 'Claude Sonnet 4.6' new_multiplier: '9' - model: 'Gemini 3 Pro' new_multiplier: '6' -- model: 'Gemini 3.1 Pro' - new_multiplier: '6' - - model: 'Gemini 3.5 Flash' new_multiplier: '14' @@ -68,9 +56,6 @@ - model: 'GPT-5 mini' new_multiplier: '0.33' -- model: 'Raptor mini' - new_multiplier: '0.33' - - model: 'MAI-Code-1-Flash' new_multiplier: '0.33' diff --git a/data/tables/copilot/model-comparison.yml b/data/tables/copilot/model-comparison.yml index f54d8a3a4d48..d70e0220908d 100644 --- a/data/tables/copilot/model-comparison.yml +++ b/data/tables/copilot/model-comparison.yml @@ -84,11 +84,6 @@ excels_at: Complex problem-solving challenges, sophisticated reasoning further_reading: '[Claude Opus 5 model card](https://www-cdn.anthropic.com/c5fbac3f0b1280a933ebd26d3cb8bb9f5bdeaf48/Claude%20Opus%205%20System%20Card.pdf)' -- name: Claude Sonnet 4.5 - task_area: General-purpose coding and agent tasks - excels_at: Complex problem-solving challenges, sophisticated reasoning - further_reading: '[Claude Sonnet 4.5 model card](https://assets.anthropic.com/m/12f214efcc2f457a/original/Claude-Sonnet-4-5-System-Card.pdf)' - - name: Claude Sonnet 4.6 task_area: General-purpose coding and agent tasks excels_at: Complex problem-solving challenges, sophisticated reasoning @@ -100,11 +95,6 @@ further_reading: '[Claude Sonnet 5 model card](https://www-cdn.anthropic.com/9e6a1044980d8c4ed85669faf9c2a8342e2e9f1e/Claude%20Sonnet%205%20System%20Card.pdf)' # Google -- name: Gemini 3.1 Pro - task_area: Deep reasoning and debugging - excels_at: Effective and efficient edit-then-test loops with high tool precision - further_reading: '[Gemini 3.1 Pro model card](https://storage.googleapis.com/deepmind-media/Model-Cards/Gemini-3-1-Pro-Model-Card.pdf)' - - name: Gemini 3.5 Flash task_area: Fast help with simple or repetitive tasks excels_at: Fast, reliable answers to lightweight coding questions @@ -153,11 +143,6 @@ excels_at: Code generation, reasoning, and code repair / debugging further_reading: '[Qwen2.5 model card](https://arxiv.org/pdf/2409.12186)' -- name: Raptor mini - task_area: General-purpose coding and writing - excels_at: Fast, accurate code completions and explanations - further_reading: 'Coming soon' - # Open-weight models - name: Kimi K2.7 Code task_area: General-purpose coding and agent tasks diff --git a/data/tables/copilot/model-release-status.yml b/data/tables/copilot/model-release-status.yml index e789ad767be9..5b71281891be 100644 --- a/data/tables/copilot/model-release-status.yml +++ b/data/tables/copilot/model-release-status.yml @@ -65,14 +65,6 @@ provider: 'Anthropic' release_status: 'GA' -- name: 'Claude Opus 4.5' - provider: 'Anthropic' - release_status: 'GA' - -- name: 'Claude Opus 4.6' - provider: 'Anthropic' - release_status: 'GA' - - name: 'Claude Opus 4.7' provider: 'Anthropic' release_status: 'GA' @@ -89,10 +81,6 @@ provider: 'Anthropic' release_status: 'GA' -- name: 'Claude Sonnet 4.5' - provider: 'Anthropic' - release_status: 'GA' - - name: 'Claude Sonnet 4.6' provider: 'Anthropic' release_status: 'GA' @@ -103,10 +91,6 @@ # Google models -- name: 'Gemini 3.1 Pro' - provider: 'Google' - release_status: 'Public preview' - - name: 'Gemini 3.5 Flash' provider: 'Google' release_status: 'GA' @@ -132,11 +116,6 @@ provider: 'Microsoft' release_status: 'GA' -# Fine-tuned OAI models -- name: 'Raptor mini' - provider: 'Fine-tuned GPT-5 mini' - release_status: 'GA' - # Open-weight models - name: 'Kimi K2.7 Code' provider: 'Moonshot AI' diff --git a/data/tables/copilot/model-supported-clients.yml b/data/tables/copilot/model-supported-clients.yml index 7c55cd2387dd..8e28325a392a 100644 --- a/data/tables/copilot/model-supported-clients.yml +++ b/data/tables/copilot/model-supported-clients.yml @@ -23,24 +23,6 @@ xcode: true jetbrains: true -- name: Claude Opus 4.5 - dotcom: false - cli: true - vscode: true - vs: true - eclipse: true - xcode: true - jetbrains: true - -- name: Claude Opus 4.6 - dotcom: true - cli: true - vscode: true - vs: true - eclipse: true - xcode: true - jetbrains: true - - name: Claude Opus 4.7 dotcom: true cli: true @@ -95,15 +77,6 @@ xcode: true jetbrains: true -- name: Claude Sonnet 4.5 - dotcom: true - cli: true - vscode: true - vs: true - eclipse: true - xcode: true - jetbrains: true - - name: Claude Sonnet 4.6 dotcom: true cli: true @@ -122,15 +95,6 @@ xcode: true jetbrains: true -- name: Gemini 3.1 Pro - dotcom: false - cli: true - vscode: true - vs: true - eclipse: true - xcode: true - jetbrains: true - - name: Gemini 3.5 Flash dotcom: false cli: true @@ -301,12 +265,3 @@ eclipse: true xcode: true jetbrains: true - -- name: Raptor mini - dotcom: false - cli: false - vscode: true - vs: false - eclipse: false - xcode: false - jetbrains: false diff --git a/data/tables/copilot/model-supported-plans.yml b/data/tables/copilot/model-supported-plans.yml index 1c18f2486704..f71dd5d87974 100644 --- a/data/tables/copilot/model-supported-plans.yml +++ b/data/tables/copilot/model-supported-plans.yml @@ -19,20 +19,6 @@ business: true enterprise: true -- name: Claude Opus 4.5 - pro: false - pro_plus: false - max: false - business: true - enterprise: true - -- name: Claude Opus 4.6 - pro: false - pro_plus: false - max: false - business: true - enterprise: true - - name: Claude Opus 4.7 pro: false pro_plus: true @@ -75,19 +61,12 @@ business: true enterprise: true -- name: Claude Sonnet 4.5 - pro: true - pro_plus: true - max: true - business: true - enterprise: true - - name: Claude Sonnet 4.6 pro: true pro_plus: true - max: true - business: true - enterprise: true + max: false + business: false + enterprise: false - name: Claude Sonnet 5 pro: true @@ -96,13 +75,6 @@ business: true enterprise: true -- name: Gemini 3.1 Pro - pro: true - pro_plus: true - max: true - business: true - enterprise: true - - name: Gemini 3.5 Flash pro: true pro_plus: true @@ -235,10 +207,3 @@ max: true business: true enterprise: true - -- name: Raptor mini - pro: true - pro_plus: true - max: true - business: false - enterprise: false diff --git a/data/tables/copilot/models-and-pricing.yml b/data/tables/copilot/models-and-pricing.yml index 83d11d535da1..2650488cbc43 100644 --- a/data/tables/copilot/models-and-pricing.yml +++ b/data/tables/copilot/models-and-pricing.yml @@ -193,15 +193,6 @@ output: $15.00 cache_write: $3.75 -- model: Claude Sonnet 4.5 - provider: anthropic - release_status: GA - category: Versatile - input: $3.00 - cached_input: $0.30 - output: $15.00 - cache_write: $3.75 - - model: Claude Sonnet 4.6 provider: anthropic release_status: GA @@ -211,24 +202,6 @@ output: $15.00 cache_write: $3.75 -- model: Claude Opus 4.5 - provider: anthropic - release_status: GA - category: Powerful - input: $5.00 - cached_input: $0.50 - output: $25.00 - cache_write: $6.25 - -- model: Claude Opus 4.6 - provider: anthropic - release_status: GA - category: Powerful - input: $5.00 - cached_input: $0.50 - output: $25.00 - cache_write: $6.25 - - model: Claude Opus 4.7 provider: anthropic release_status: GA @@ -293,26 +266,6 @@ cache_write: $12.50 # Google -- model: 'Gemini 3.1 Pro' - provider: google - release_status: Public preview - category: Powerful - threshold: '≤ 200K' - tier: 'Default' - input: $2.00 - cached_input: $0.20 - output: $12.00 - -- model: 'Gemini 3.1 Pro' - provider: google - release_status: Public preview - category: Powerful - threshold: '> 200K' - tier: 'Long context' - input: $4.00 - cached_input: $0.40 - output: $18.00 - - model: 'Gemini 3.5 Flash' provider: google release_status: GA @@ -411,16 +364,6 @@ cached_input: $0.02 output: $1.20 -# Fine-tuned (GitHub) -- model: 'Raptor mini' - provider: github - release_status: GA - category: Versatile - input: $0.25 - cached_input: $0.025 - output: $2.00 - notes: Uses GPT-5 mini pricing - # Open-weight models - model: 'Kimi K2.7 Code' provider: moonshot_ai diff --git a/src/graphql/data/fpt/changelog.json b/src/graphql/data/fpt/changelog.json index d2799233c0e8..0d27141d705d 100644 --- a/src/graphql/data/fpt/changelog.json +++ b/src/graphql/data/fpt/changelog.json @@ -1,4 +1,18 @@ [ + { + "schemaChanges": [ + { + "title": "The GraphQL schema includes these changes:", + "changes": [ + "

Field enterpriseRoleDatabaseId was added to object type RepositoryRulesetBypassActor

", + "

Input field enterpriseRoleDatabaseId of type BigInt was added to input object type RepositoryRulesetBypassActorInput

" + ] + } + ], + "previewChanges": [], + "upcomingChanges": [], + "date": "2026-09-04" + }, { "schemaChanges": [ { diff --git a/src/graphql/data/fpt/schema-enterprise-admin.json b/src/graphql/data/fpt/schema-enterprise-admin.json index 4eefd1d74b11..7b65981fde81 100644 --- a/src/graphql/data/fpt/schema-enterprise-admin.json +++ b/src/graphql/data/fpt/schema-enterprise-admin.json @@ -378,7 +378,7 @@ "name": "createEnterpriseOrganization", "id": "createenterpriseorganization", "href": "/graphql/reference/enterprise-admin#mutation-createenterpriseorganization", - "description": "

Creates an organization as part of an enterprise account. User-authenticated\nrequests make the viewer an owner and invite users in adminLogins.\nInstallation requests directly add listed enterprise members and invite other\nlisted users. Enterprise Managed User enterprises directly add managed users.\nInvitation failures do not roll back organization creation. A personal access\ntoken used to create an organization is implicitly permitted to update the\norganization it created, if the organization is part of an enterprise that has\nSAML enabled or uses Enterprise Managed Users. If the organization is not part\nof such an enterprise, and instead has SAML enabled for it individually, the\ntoken will then require SAML authorization to continue working against that organization.

", + "description": "

Creates an organization as part of an enterprise account. User-authenticated\nrequests make the viewer an owner. Users listed in adminLogins are invited\nas owners unless owner invitations are disabled, in which case they are added\ndirectly. Installation requests also add existing enterprise members directly.\nInvitation failures do not roll back organization creation. A personal access\ntoken used to create an organization is implicitly permitted to update the\norganization it created, if the organization is part of an enterprise that has\nSAML enabled or uses Enterprise Managed Users. If the organization is not part\nof such an enterprise, and instead has SAML enabled for it individually, the\ntoken will then require SAML authorization to continue working against that organization.

", "isDeprecated": false, "inputFields": [ { @@ -12222,7 +12222,7 @@ "inputFields": [ { "name": "adminLogins", - "description": "

For user-authenticated requests, the logins of additional owners to invite.\nFor installation requests, existing enterprise members are added directly and\nother listed users are invited.

", + "description": "

The logins of additional organization owners. Listed users are invited unless\nowner invitations are disabled, in which case they are added directly.\nInstallation requests also add existing enterprise members directly.

", "type": "[String!]!", "id": "string", "href": "/graphql/reference/other#scalar-string" diff --git a/src/graphql/data/fpt/schema-repos.json b/src/graphql/data/fpt/schema-repos.json index 4be97978010f..ad0a9764dc63 100644 --- a/src/graphql/data/fpt/schema-repos.json +++ b/src/graphql/data/fpt/schema-repos.json @@ -7471,6 +7471,13 @@ "id": "boolean", "href": "/graphql/reference/other#scalar-boolean" }, + { + "name": "enterpriseRoleDatabaseId", + "description": "

If the actor is an enterprise role, the enterprise role's ID that can bypass.

", + "type": "BigInt", + "id": "bigint", + "href": "/graphql/reference/other#scalar-bigint" + }, { "name": "id", "description": "

The Node ID of the RepositoryRulesetBypassActor object.

", @@ -10721,7 +10728,7 @@ "name": "RepositoryRulesetBypassActorInput", "id": "repositoryrulesetbypassactorinput", "href": "/graphql/reference/repos#input-object-repositoryrulesetbypassactorinput", - "description": "

Specifies the attributes for a new or updated ruleset bypass actor. Only one of\nactor_id, repository_role_database_id, organization_admin,\nenterprise_owner, or deploy_key should be specified.

", + "description": "

Specifies the attributes for a new or updated ruleset bypass actor. Exactly one\nof actor_id, repository_role_database_id, organization_admin,\nenterprise_owner, enterprise_role_database_id, or deploy_key should be specified.

", "isDeprecated": false, "inputFields": [ { @@ -10757,7 +10764,16 @@ "description": "

For enterprise role bypasses, true. NOTE: This bypass actor is in beta.

", "type": "Boolean", "id": "boolean", - "href": "/graphql/reference/other#scalar-boolean" + "href": "/graphql/reference/other#scalar-boolean", + "isDeprecated": true, + "deprecationReason": "

Use enterpriseRoleDatabaseId.

" + }, + { + "name": "enterpriseRoleDatabaseId", + "description": "

For enterprise role bypasses, the enterprise role database ID. NOTE: This bypass actor is in beta.

", + "type": "BigInt", + "id": "bigint", + "href": "/graphql/reference/other#scalar-bigint" }, { "name": "organizationAdmin", diff --git a/src/graphql/data/fpt/schema.docs.graphql b/src/graphql/data/fpt/schema.docs.graphql index 2dd51b3676cc..b2d048839a4f 100644 --- a/src/graphql/data/fpt/schema.docs.graphql +++ b/src/graphql/data/fpt/schema.docs.graphql @@ -8326,9 +8326,9 @@ Autogenerated input type of CreateEnterpriseOrganization """ input CreateEnterpriseOrganizationInput { """ - For user-authenticated requests, the logins of additional owners to invite. - For installation requests, existing enterprise members are added directly and - other listed users are invited. + The logins of additional organization owners. Listed users are invited unless + owner invitations are disabled, in which case they are added directly. + Installation requests also add existing enterprise members directly. """ adminLogins: [String!]! @@ -27831,9 +27831,9 @@ type Mutation @docsCategory(name: "meta") { """ Creates an organization as part of an enterprise account. User-authenticated - requests make the viewer an owner and invite users in `adminLogins`. - Installation requests directly add listed enterprise members and invite other - listed users. Enterprise Managed User enterprises directly add managed users. + requests make the viewer an owner. Users listed in `adminLogins` are invited + as owners unless owner invitations are disabled, in which case they are added + directly. Installation requests also add existing enterprise members directly. Invitation failures do not roll back organization creation. A personal access token used to create an organization is implicitly permitted to update the organization it created, if the organization is part of an enterprise that has @@ -58185,6 +58185,11 @@ type RepositoryRulesetBypassActor implements Node @docsCategory(name: "repos") { """ enterpriseRole: Boolean! + """ + If the actor is an enterprise role, the enterprise role's ID that can bypass + """ + enterpriseRoleDatabaseId: BigInt + """ The Node ID of the RepositoryRulesetBypassActor object """ @@ -58272,9 +58277,9 @@ type RepositoryRulesetBypassActorEdge { } """ -Specifies the attributes for a new or updated ruleset bypass actor. Only one of -`actor_id`, `repository_role_database_id`, `organization_admin`, -`enterprise_owner`, or `deploy_key` should be specified. +Specifies the attributes for a new or updated ruleset bypass actor. Exactly one +of `actor_id`, `repository_role_database_id`, `organization_admin`, +`enterprise_owner`, `enterprise_role_database_id`, or `deploy_key` should be specified. """ input RepositoryRulesetBypassActorInput @docsCategory(name: "repos") { """ @@ -58300,7 +58305,12 @@ input RepositoryRulesetBypassActorInput @docsCategory(name: "repos") { """ For enterprise role bypasses, true. NOTE: This bypass actor is in beta. """ - enterpriseRole: Boolean + enterpriseRole: Boolean @deprecated(reason: "Use enterpriseRoleDatabaseId.") + + """ + For enterprise role bypasses, the enterprise role database ID. NOTE: This bypass actor is in beta. + """ + enterpriseRoleDatabaseId: BigInt """ For organization owner bypasses, true diff --git a/src/graphql/data/ghec/schema-enterprise-admin.json b/src/graphql/data/ghec/schema-enterprise-admin.json index 4eefd1d74b11..7b65981fde81 100644 --- a/src/graphql/data/ghec/schema-enterprise-admin.json +++ b/src/graphql/data/ghec/schema-enterprise-admin.json @@ -378,7 +378,7 @@ "name": "createEnterpriseOrganization", "id": "createenterpriseorganization", "href": "/graphql/reference/enterprise-admin#mutation-createenterpriseorganization", - "description": "

Creates an organization as part of an enterprise account. User-authenticated\nrequests make the viewer an owner and invite users in adminLogins.\nInstallation requests directly add listed enterprise members and invite other\nlisted users. Enterprise Managed User enterprises directly add managed users.\nInvitation failures do not roll back organization creation. A personal access\ntoken used to create an organization is implicitly permitted to update the\norganization it created, if the organization is part of an enterprise that has\nSAML enabled or uses Enterprise Managed Users. If the organization is not part\nof such an enterprise, and instead has SAML enabled for it individually, the\ntoken will then require SAML authorization to continue working against that organization.

", + "description": "

Creates an organization as part of an enterprise account. User-authenticated\nrequests make the viewer an owner. Users listed in adminLogins are invited\nas owners unless owner invitations are disabled, in which case they are added\ndirectly. Installation requests also add existing enterprise members directly.\nInvitation failures do not roll back organization creation. A personal access\ntoken used to create an organization is implicitly permitted to update the\norganization it created, if the organization is part of an enterprise that has\nSAML enabled or uses Enterprise Managed Users. If the organization is not part\nof such an enterprise, and instead has SAML enabled for it individually, the\ntoken will then require SAML authorization to continue working against that organization.

", "isDeprecated": false, "inputFields": [ { @@ -12222,7 +12222,7 @@ "inputFields": [ { "name": "adminLogins", - "description": "

For user-authenticated requests, the logins of additional owners to invite.\nFor installation requests, existing enterprise members are added directly and\nother listed users are invited.

", + "description": "

The logins of additional organization owners. Listed users are invited unless\nowner invitations are disabled, in which case they are added directly.\nInstallation requests also add existing enterprise members directly.

", "type": "[String!]!", "id": "string", "href": "/graphql/reference/other#scalar-string" diff --git a/src/graphql/data/ghec/schema-repos.json b/src/graphql/data/ghec/schema-repos.json index 4be97978010f..ad0a9764dc63 100644 --- a/src/graphql/data/ghec/schema-repos.json +++ b/src/graphql/data/ghec/schema-repos.json @@ -7471,6 +7471,13 @@ "id": "boolean", "href": "/graphql/reference/other#scalar-boolean" }, + { + "name": "enterpriseRoleDatabaseId", + "description": "

If the actor is an enterprise role, the enterprise role's ID that can bypass.

", + "type": "BigInt", + "id": "bigint", + "href": "/graphql/reference/other#scalar-bigint" + }, { "name": "id", "description": "

The Node ID of the RepositoryRulesetBypassActor object.

", @@ -10721,7 +10728,7 @@ "name": "RepositoryRulesetBypassActorInput", "id": "repositoryrulesetbypassactorinput", "href": "/graphql/reference/repos#input-object-repositoryrulesetbypassactorinput", - "description": "

Specifies the attributes for a new or updated ruleset bypass actor. Only one of\nactor_id, repository_role_database_id, organization_admin,\nenterprise_owner, or deploy_key should be specified.

", + "description": "

Specifies the attributes for a new or updated ruleset bypass actor. Exactly one\nof actor_id, repository_role_database_id, organization_admin,\nenterprise_owner, enterprise_role_database_id, or deploy_key should be specified.

", "isDeprecated": false, "inputFields": [ { @@ -10757,7 +10764,16 @@ "description": "

For enterprise role bypasses, true. NOTE: This bypass actor is in beta.

", "type": "Boolean", "id": "boolean", - "href": "/graphql/reference/other#scalar-boolean" + "href": "/graphql/reference/other#scalar-boolean", + "isDeprecated": true, + "deprecationReason": "

Use enterpriseRoleDatabaseId.

" + }, + { + "name": "enterpriseRoleDatabaseId", + "description": "

For enterprise role bypasses, the enterprise role database ID. NOTE: This bypass actor is in beta.

", + "type": "BigInt", + "id": "bigint", + "href": "/graphql/reference/other#scalar-bigint" }, { "name": "organizationAdmin", diff --git a/src/graphql/data/ghec/schema.docs.graphql b/src/graphql/data/ghec/schema.docs.graphql index 2dd51b3676cc..b2d048839a4f 100644 --- a/src/graphql/data/ghec/schema.docs.graphql +++ b/src/graphql/data/ghec/schema.docs.graphql @@ -8326,9 +8326,9 @@ Autogenerated input type of CreateEnterpriseOrganization """ input CreateEnterpriseOrganizationInput { """ - For user-authenticated requests, the logins of additional owners to invite. - For installation requests, existing enterprise members are added directly and - other listed users are invited. + The logins of additional organization owners. Listed users are invited unless + owner invitations are disabled, in which case they are added directly. + Installation requests also add existing enterprise members directly. """ adminLogins: [String!]! @@ -27831,9 +27831,9 @@ type Mutation @docsCategory(name: "meta") { """ Creates an organization as part of an enterprise account. User-authenticated - requests make the viewer an owner and invite users in `adminLogins`. - Installation requests directly add listed enterprise members and invite other - listed users. Enterprise Managed User enterprises directly add managed users. + requests make the viewer an owner. Users listed in `adminLogins` are invited + as owners unless owner invitations are disabled, in which case they are added + directly. Installation requests also add existing enterprise members directly. Invitation failures do not roll back organization creation. A personal access token used to create an organization is implicitly permitted to update the organization it created, if the organization is part of an enterprise that has @@ -58185,6 +58185,11 @@ type RepositoryRulesetBypassActor implements Node @docsCategory(name: "repos") { """ enterpriseRole: Boolean! + """ + If the actor is an enterprise role, the enterprise role's ID that can bypass + """ + enterpriseRoleDatabaseId: BigInt + """ The Node ID of the RepositoryRulesetBypassActor object """ @@ -58272,9 +58277,9 @@ type RepositoryRulesetBypassActorEdge { } """ -Specifies the attributes for a new or updated ruleset bypass actor. Only one of -`actor_id`, `repository_role_database_id`, `organization_admin`, -`enterprise_owner`, or `deploy_key` should be specified. +Specifies the attributes for a new or updated ruleset bypass actor. Exactly one +of `actor_id`, `repository_role_database_id`, `organization_admin`, +`enterprise_owner`, `enterprise_role_database_id`, or `deploy_key` should be specified. """ input RepositoryRulesetBypassActorInput @docsCategory(name: "repos") { """ @@ -58300,7 +58305,12 @@ input RepositoryRulesetBypassActorInput @docsCategory(name: "repos") { """ For enterprise role bypasses, true. NOTE: This bypass actor is in beta. """ - enterpriseRole: Boolean + enterpriseRole: Boolean @deprecated(reason: "Use enterpriseRoleDatabaseId.") + + """ + For enterprise role bypasses, the enterprise role database ID. NOTE: This bypass actor is in beta. + """ + enterpriseRoleDatabaseId: BigInt """ For organization owner bypasses, true