diff --git a/assets/images/help/copilot/chat-mode-vscode.png b/assets/images/help/copilot/chat-mode-vscode.png deleted file mode 100644 index 8586ea09fa3a..000000000000 Binary files a/assets/images/help/copilot/chat-mode-vscode.png and /dev/null differ diff --git a/assets/images/help/copilot/copilot-chat-agent-option.png b/assets/images/help/copilot/copilot-chat-agent-option.png deleted file mode 100644 index 8a7d32606cd6..000000000000 Binary files a/assets/images/help/copilot/copilot-chat-agent-option.png and /dev/null differ diff --git a/assets/images/help/copilot/copilot-chat-mcp-confirmation-dialog.png b/assets/images/help/copilot/copilot-chat-mcp-confirmation-dialog.png deleted file mode 100644 index 9b98c9e16757..000000000000 Binary files a/assets/images/help/copilot/copilot-chat-mcp-confirmation-dialog.png and /dev/null differ diff --git a/assets/images/help/copilot/mcp-start-server-button.png b/assets/images/help/copilot/mcp-start-server-button.png deleted file mode 100644 index 601856d10fb6..000000000000 Binary files a/assets/images/help/copilot/mcp-start-server-button.png and /dev/null differ diff --git a/assets/images/help/copilot/vsc-mcp-server-running.png b/assets/images/help/copilot/vsc-mcp-server-running.png deleted file mode 100644 index 633b8370c430..000000000000 Binary files a/assets/images/help/copilot/vsc-mcp-server-running.png and /dev/null differ diff --git a/content/copilot/customizing-copilot/extending-copilot-chat-with-mcp.md b/content/copilot/customizing-copilot/extending-copilot-chat-with-mcp.md deleted file mode 100644 index b2d435e2181b..000000000000 --- a/content/copilot/customizing-copilot/extending-copilot-chat-with-mcp.md +++ /dev/null @@ -1,115 +0,0 @@ ---- -title: Extending Copilot Chat with the Model Context Protocol (MCP) -allowTitleToDifferFromFilename: true -shortTitle: Extend Copilot Chat with MCP -intro: "Learn how to use the Model Context Protocol (MCP) to extend {% data variables.product.prodname_copilot_chat_short %}." -versions: - feature: copilot -topics: - - Copilot ---- - ->[!NOTE] -> * MCP support is currently in {% data variables.release-phases.public_preview %} and subject to change. -> * MCP support is only available in {% data variables.product.prodname_copilot_chat_short %} for {% data variables.product.prodname_vscode %}. -> * The [AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-pre-release-license-terms) apply to your use of this product. - -## Overview - -The Model Context Protocol (MCP) is an open standard that defines how applications share context with large language models (LLMs). MCP provides a standardized way to connect AI models to different data sources and tools, enabling them to work together more effectively. - -You can use MCP to extend the capabilities of {% data variables.product.prodname_copilot_chat_short %} by integrating it with a wide range of existing tools and services. For example, the {% data variables.product.github %} MCP server allows you to use {% data variables.product.prodname_copilot_chat_short %} in {% data variables.product.prodname_vscode %} to perform tasks on {% data variables.product.github %}. You can also use MCP to create new tools and services that work with {% data variables.product.prodname_copilot_chat_short %}, allowing you to customize and enhance your experience. - -For more information on MCP, see [the official MCP documentation](https://modelcontextprotocol.io/introduction). - -For information on some of the other currently available MCP servers, see [the MCP servers repository](https://github.com/modelcontextprotocol/servers/tree/main). - -## Prerequisites - -* **Access to {% data variables.product.prodname_copilot_short %}**. {% data reusables.copilot.subscription-prerequisite %} -* **{% data variables.product.prodname_vscode %} version 1.99 or later**. For information on installing {% data variables.product.prodname_vscode %}, see the [{% data variables.product.prodname_vscode %} download page](https://code.visualstudio.com/Download). - -## Configuring MCP servers in {% data variables.product.prodname_vscode %} - -To configure MCP servers in {% data variables.product.prodname_vscode %}, you need to set up a configuration script that specifies the details of the MCP servers you want to use. You can configure MCP servers for either: - -* **A specific repository**. This will share MCP servers with anyone who opens the project in {% data variables.product.prodname_vscode %}. To do this, create a `.vscode/mcp.json` file in the root of your repository. -* **Your personal instance of {% data variables.product.prodname_vscode %}**. You will be the only person who has access to configured MCP servers. To do this, add the configuration to your `settings.json` file in {% data variables.product.prodname_vscode %}. - - >[!NOTE] We recommend you use only one location per server. Adding the same server to both locations may cause conflicts and unexpected behavior. - -The steps below show how to configure the Fetch MCP server in your `.vscode/mcp.json` file. The Fetch MCP server is a simple MCP server that provides web content fetching capabilities. For more information on the Fetch MCP server, see [the Fetch directory](https://github.com/modelcontextprotocol/servers/tree/main/src/fetch) in the MCP Server repository. - -You can use the same steps to configure MCP servers in your personal {% data variables.product.prodname_vscode %} settings. Details on how to configure other MCP servers are available in the [MCP servers repository](https://github.com/modelcontextprotocol/servers/tree/main). - -1. Add the following configuration to your `.vscode/mcp.json` file: - - ```json copy - { - "inputs": [ - // The "inputs" section defines the inputs required for the MCP server configuration. - { - "type": "promptString" - } - ], - "servers": { - // The "servers" section defines the MCP servers you want to use. - "fetch": { - "command": "uvx", - "args": ["mcp-server-fetch"] - } - } - } - ``` - -1. Save the `.vscode/mcp.json` file. -1. A "Start" button will appear in your `.vscode/mcp.json` file, at the top of the list of servers. Click the "Start" button to start the MCP servers. This will trigger the input dialog and discover the server tools, which are then stored for later sessions. - - ![Screenshot of MCP server configuration in {% data variables.product.prodname_vscode %}. The "Start" button is outlined in dark orange. ](/assets/images/help/copilot/mcp-start-server-button.png) - -1. Open {% data variables.product.prodname_copilot_chat_short %} by clicking the {% octicon "copilot" aria-hidden="true" %} icon in the title bar of {% data variables.product.prodname_vscode %}. -1. In the {% data variables.product.prodname_copilot_chat_short %} box, select **Agent** from the popup menu. - - ![Screenshot of the {% data variables.product.prodname_copilot_chat_short %} box in {% data variables.product.prodname_vscode %}. The "Agent" option is outlined in dark orange.](/assets/images/help/copilot/copilot-chat-agent-option.png) - -1. To view your list of available MCP servers, click the tools icon in the top left corner of the chat box. This will open the MCP server list, where you can see all the MCP servers and associated tools that are currently available in your {% data variables.product.prodname_vscode %} instance. - -For more information on configuring MCP servers in {% data variables.product.prodname_vscode %}, see [Use MCP servers in {% data variables.product.prodname_vscode %} (Preview)](https://aka.ms/vscode-add-mcp) in the {% data variables.product.prodname_vscode %} documentation. - ->[!IMPORTANT] Beginning April 4, 2025, the {% data variables.product.github %} MCP server, and installation instructions, will be publicly available in the [github-mcp-server](https://github.com/github/github-mcp-server) repository. - -## Using MCP servers in {% data variables.product.prodname_copilot_chat_short %} - -Once you have configured your MCP servers, you can use them in {% data variables.product.prodname_copilot_chat_short %} to access a wide range of tools and services. In the example below, we will use the Fetch MCP server to fetch details about a web page. - -1. Open {% data variables.product.prodname_copilot_chat_short %} by clicking the {% octicon "copilot" aria-hidden="true" %} icon in the title bar of {% data variables.product.prodname_vscode %}. -1. In the {% data variables.product.prodname_copilot_chat_short %} box, select **Agent** from the popup menu. -1. In the file with the MCP configuration, check that the MCP server is running. If it is not running, click the "Start" button to start the MCP server. - - ![Screenshot of the MCP server configuration in {% data variables.product.prodname_vscode %}. The "Running" status is outlined in dark orange.](/assets/images/help/copilot/vsc-mcp-server-running.png) - -1. Ask {% data variables.product.prodname_copilot_chat_short %} to fetch the details of a URL. For example: - - `Fetch https://github.com/github/docs.` - -1. If {% data variables.product.prodname_copilot_short %} asks you to confirm that you want to proceed, click **Continue**. - -1. {% data variables.product.prodname_copilot_short %} will fetch the details of the URL and display them in the chat box. - -For more information on using MCP servers in {% data variables.product.prodname_vscode %}, see [Use MCP servers in {% data variables.product.prodname_vscode %} (Preview)](https://aka.ms/vscode-add-mcp) in the {% data variables.product.prodname_vscode %} documentation. - -## Using existing MCP configurations - -If you already have an MCP configuration in Claude Desktop, you can use that configuration in {% data variables.product.prodname_vscode %} to access the same MCP servers. To do this, add the following configuration to your `settings.json` file in {% data variables.product.prodname_vscode %}: - -```json copy -"chat.mcp.discovery.enabled": true" -``` - -{% data variables.product.prodname_vscode %} will automatically find your existing configuration and use it in your {% data variables.product.prodname_vscode %} instance. - -## Creating a new MCP server - -You can create a new MCP server to fulfill your specific needs, and then integrate it with {% data variables.product.prodname_copilot_chat_short %}. For example, you can create an MCP server that connects to a database or a web service, and then use that server in {% data variables.product.prodname_copilot_chat_short %} to perform tasks on that database or web service. - -For more information on creating and configuring your own MCP servers, see [the official MCP documentation](https://modelcontextprotocol.io/quickstart/server). diff --git a/content/copilot/customizing-copilot/index.md b/content/copilot/customizing-copilot/index.md index 2933e0413a91..d35de55300fa 100644 --- a/content/copilot/customizing-copilot/index.md +++ b/content/copilot/customizing-copilot/index.md @@ -10,7 +10,6 @@ children: - /extending-the-capabilities-of-github-copilot-in-your-organization - /adding-repository-custom-instructions-for-github-copilot - /adding-personal-custom-instructions-for-github-copilot - - /extending-copilot-chat-with-mcp - /managing-copilot-knowledge-bases - /creating-a-custom-model-for-github-copilot redirect_from: diff --git a/content/copilot/using-github-copilot/copilot-chat/asking-github-copilot-questions-in-your-ide.md b/content/copilot/using-github-copilot/copilot-chat/asking-github-copilot-questions-in-your-ide.md index 63738bf3a9c6..b7afd2de9083 100644 --- a/content/copilot/using-github-copilot/copilot-chat/asking-github-copilot-questions-in-your-ide.md +++ b/content/copilot/using-github-copilot/copilot-chat/asking-github-copilot-questions-in-your-ide.md @@ -113,11 +113,7 @@ See [inline chat](https://code.visualstudio.com/docs/copilot/copilot-chat#_inlin ### Using edit mode -1. To start an edit session, select **Open Chat** from the {% data variables.product.prodname_copilot_chat_short %} menu. -1. At the bottom of the chat panel, select **Edit** from the mode dropdown. - - ![Screenshot of the {% data variables.product.prodname_copilot_chat_short %} mode dropdown. The "Edit" option is outlined in dark orange.](/assets/images/help/copilot/chat-mode-vscode.png) - +1. To start an edit session, select **Open {% data variables.product.prodname_copilot_edits_short %}** from the {% data variables.product.prodname_copilot_chat_short %} menu. 1. Optionally, add relevant files to the _working set_ to indicate to {% data variables.product.prodname_copilot %} which files you want to work on. 1. Submit a prompt. In response to your prompt, {% data variables.product.prodname_copilot_edits_short %} determines which files in your _working set_ to change and adds a short description of the change. 1. Review the changes and **Apply** or **Discard** the edits for each file. @@ -126,8 +122,10 @@ For more detailed instructions, see [{% data variables.product.prodname_copilot_ ### Using agent mode -1. To start an edit session, select **Open Chat** from the {% data variables.product.prodname_copilot_chat_short %} menu. -1. At the bottom of the chat panel, select **Agent** from the mode dropdown. +{% data reusables.copilot.agent-mode-public-preview-note %} + +1. To start an edit session, select **Open {% data variables.product.prodname_copilot_edits_short %}** from the {% data variables.product.prodname_copilot_chat_short %} menu. +1. Select **Agent** from the mode dropdown menu. 1. Submit a prompt. In response to your prompt, {% data variables.product.prodname_copilot_short %} streams the edits in the editor, updates the working set, and if necessary, suggests terminal commands to run. 1. Review the changes. If {% data variables.product.prodname_copilot_short %} suggested terminal commands, confirm whether or not {% data variables.product.prodname_copilot_short %} can run them. In response, {% data variables.product.prodname_copilot_short %} iterates and performs additional actions to complete the task in your original prompt. diff --git a/content/copilot/using-github-copilot/getting-code-suggestions-in-your-ide-with-github-copilot.md b/content/copilot/using-github-copilot/getting-code-suggestions-in-your-ide-with-github-copilot.md index 45ff4f7d00a7..c7b555fc038b 100644 --- a/content/copilot/using-github-copilot/getting-code-suggestions-in-your-ide-with-github-copilot.md +++ b/content/copilot/using-github-copilot/getting-code-suggestions-in-your-ide-with-github-copilot.md @@ -337,6 +337,8 @@ If you want to accept the next line of a suggestion, you will need to set a cust ## About {% data variables.copilot.next_edit_suggestions %} +> [!NOTE] {% data variables.copilot.next_edit_suggestions_caps %} is currently in {% data variables.release-phases.public_preview %} and is subject to change. + Inline suggestions autocomplete code, but many development tasks involve editing existing code. {% data variables.copilot.next_edit_suggestions_caps %} assists with edits both at the cursor and in other relevant parts of the code, helping maintain consistency and streamline changes. {% data variables.copilot.next_edit_suggestions_caps %} predicts where and what edits may be needed based on ongoing changes. Suggestions may span a single symbol, an entire line, or multiple lines, depending on the scope of the potential change. diff --git a/content/issues/tracking-your-work-with-issues/using-issues/creating-an-issue.md b/content/issues/tracking-your-work-with-issues/using-issues/creating-an-issue.md index f3734d27d237..0903a71486e1 100644 --- a/content/issues/tracking-your-work-with-issues/using-issues/creating-an-issue.md +++ b/content/issues/tracking-your-work-with-issues/using-issues/creating-an-issue.md @@ -171,14 +171,6 @@ If you're using issues to track and prioritize your work, you can use issues to {% endif %} -{% ifversion copilot %} - -## Creating an issue from {% data variables.product.prodname_copilot_chat_short %} - -You can create an issue from {% data variables.product.prodname_copilot_chat_short %} in {% data variables.product.prodname_vscode %} with the Model Context Protocol (MCP). For more information, see [AUTOTITLE](/copilot/customizing-copilot/extending-copilot-chat-with-mcp). - -{% endif %} - ## Further reading * [AUTOTITLE](/get-started/writing-on-github) diff --git a/content/repositories/creating-and-managing-repositories/creating-a-new-repository.md b/content/repositories/creating-and-managing-repositories/creating-a-new-repository.md index b0bb9a19b7c2..44e30ba2ed96 100644 --- a/content/repositories/creating-and-managing-repositories/creating-a-new-repository.md +++ b/content/repositories/creating-and-managing-repositories/creating-a-new-repository.md @@ -63,14 +63,6 @@ If you create an invalid URL using query parameters, or if you don’t have the | `owner` | `https://{% data variables.product.product_url %}/new?owner=avocado-corp&visibility=public` creates a public repository owned by the "avocado-corp" organization. | Any valid organization name or username. Alternatively, while signed in use `@me` to specify your user account as the owner. | | `template_owner` and `template_name` | `https://{% data variables.product.product_url %}/new?owner=avocado-corp&template_owner=avocado-corp&template_name=octo-repo` creates a repository owned by the "avocado-corp" using the avocado-corp's template "octo-repo". | The username of the template owner and the name of the repository template. | -{% ifversion copilot %} - -## Creating a new repository from {% data variables.product.prodname_copilot_chat_short %} - -You can create a new repository from {% data variables.product.prodname_copilot_chat_short %} in {% data variables.product.prodname_vscode %} with the Model Context Protocol (MCP). For more information, see [AUTOTITLE](/copilot/customizing-copilot//extending-copilot-chat-with-mcp). - -{% endif %} - ## Further reading * [AUTOTITLE](/code-security/getting-started/quickstart-for-securing-your-repository) diff --git a/data/release-notes/enterprise-server/3-13/12.yml b/data/release-notes/enterprise-server/3-13/12.yml index f5235f4bb3ce..e9749fad0fc8 100644 --- a/data/release-notes/enterprise-server/3-13/12.yml +++ b/data/release-notes/enterprise-server/3-13/12.yml @@ -2,7 +2,7 @@ date: '2025-03-04' sections: features: - | - Running {% data variables.product.prodname_ghe_server %} on the VMware ESXi 8.0 hypervisor is supported. If your installation is on VMware ESXi 7.X or earlier versions, you can now use the ESXi 8.0 hypervisor. [Updated: 2025-04-02] + Running {% data variables.product.prodname_ghe_server %} on the VMware ESXi 8.0 hypervisor is supported. If your installation is on VMware ESXi 7.x or earlier versions, you can now use the ESXi 8.0 hypervisor. [Updated: 2025-04-03] security_fixes: - | Permissions and ownership of `/etc/ssh/sshd_config` are enforced so that the `root` identity is the only one able to read or write to the file. diff --git a/data/release-notes/enterprise-server/3-14/9.yml b/data/release-notes/enterprise-server/3-14/9.yml index 8e92b50c8744..5d5bde32a48a 100644 --- a/data/release-notes/enterprise-server/3-14/9.yml +++ b/data/release-notes/enterprise-server/3-14/9.yml @@ -2,7 +2,7 @@ date: '2025-03-04' sections: features: - | - Running {% data variables.product.prodname_ghe_server %} on the VMware ESXi 8.0 hypervisor is supported. If your installation is on VMware ESXi 7.X or earlier versions, you can now use the ESXi 8.0 hypervisor. [Updated: 2025-04-02] + Running {% data variables.product.prodname_ghe_server %} on the VMware ESXi 8.0 hypervisor is supported. If your installation is on VMware ESXi 7.x or earlier versions, you can now use the ESXi 8.0 hypervisor. [Updated: 2025-04-03] security_fixes: - | Permissions and ownership of `/etc/ssh/sshd_config` are now enforced so that the `root` identity is the only one able to read or write to the file. diff --git a/data/release-notes/enterprise-server/3-15/4.yml b/data/release-notes/enterprise-server/3-15/4.yml index 41046233f072..7c05d79dd138 100644 --- a/data/release-notes/enterprise-server/3-15/4.yml +++ b/data/release-notes/enterprise-server/3-15/4.yml @@ -2,7 +2,7 @@ date: '2025-03-04' sections: features: - | - Running {% data variables.product.prodname_ghe_server %} on the VMware ESXi 8.0 hypervisor is supported. If your installation is on VMware ESXi 7.X or earlier versions, you can now use the ESXi 8.0 hypervisor. [Updated: 2025-04-02] + Running {% data variables.product.prodname_ghe_server %} on the VMware ESXi 8.0 hypervisor is supported. If your installation is on VMware ESXi 7.x or earlier versions, you can now use the ESXi 8.0 hypervisor. [Updated: 2025-04-03] security_fixes: - | Permissions and ownership of `/etc/ssh/sshd_config` are now enforced so that the `root` identity is the only one able to read or write to the file. diff --git a/data/release-notes/enterprise-server/3-16/0.yml b/data/release-notes/enterprise-server/3-16/0.yml index 0d79a1097615..a8cd8ef109e0 100644 --- a/data/release-notes/enterprise-server/3-16/0.yml +++ b/data/release-notes/enterprise-server/3-16/0.yml @@ -28,9 +28,7 @@ sections: - | `ghe-config-apply` applies configuration changes conditionally to the relevant, targeted and specific migrations only. As a result, you can expect less downtime and fewer errors while running `ghe-config-apply`. You can still choose to run `ghe-config-apply` unconditionally using this command: `ghe-config-apply -f`. - | - We now support the VMware ESXi 8.0 hypervisor. If your {% data variables.product.prodname_ghe_server %} installation is on VMware ESXi 7.X or earlier versions, you can now use the ESXi 8.0 hypervisor. [Updated: 2025-04-02] - - | - Running {% data variables.product.prodname_ghe_server %} on the VMware ESXi 8.0 hypervisor is supported. If your installation is on VMware ESXi 7.X or earlier versions, you can now use the ESXi 8.0 hypervisor. [Updated: 2025-04-02] + Running {% data variables.product.prodname_ghe_server %} on the VMware ESXi 8.0 hypervisor is supported. If your installation is on VMware ESXi 7.x or earlier versions, you can now use the ESXi 8.0 hypervisor. [Updated: 2025-04-03] - heading: Dependabot notes: diff --git a/data/reusables/copilot/copilot-edits/agent-mode-description.md b/data/reusables/copilot/copilot-edits/agent-mode-description.md index 4b7fb29ac8fb..1c97ddce785a 100644 --- a/data/reusables/copilot/copilot-edits/agent-mode-description.md +++ b/data/reusables/copilot/copilot-edits/agent-mode-description.md @@ -1 +1 @@ -**Agent mode**: Use agent mode when you have a specific task in mind and want to enable {% data variables.product.prodname_copilot_short %} to autonomously edit your code. In agent mode, {% data variables.product.prodname_copilot_short %} determines which files to make changes to, offers code changes and terminal commands to complete the task, and iterates to remediate issues until the original task is complete. Agent mode is only available in {% data variables.product.prodname_vscode %}. +**Agent mode** (public preview): Use agent mode when you have a specific task in mind and want to enable {% data variables.product.prodname_copilot_short %} to autonomously edit your code. In agent mode, {% data variables.product.prodname_copilot_short %} determines which files to make changes to, offers code changes and terminal commands to complete the task, and iterates to remediate issues until the original task is complete. Agent mode is only available in {% data variables.product.prodname_vscode %}. diff --git a/data/reusables/enterprise-migration-tool/data-not-migrated.md b/data/reusables/enterprise-migration-tool/data-not-migrated.md index a58b4be6dbac..a825fc965c83 100644 --- a/data/reusables/enterprise-migration-tool/data-not-migrated.md +++ b/data/reusables/enterprise-migration-tool/data-not-migrated.md @@ -15,6 +15,7 @@ * References between pull requests and issues in different repositories (see [AUTOTITLE](/get-started/writing-on-github/working-with-advanced-formatting/autolinked-references-and-urls)) * Remediation states of {% data variables.product.prodname_secret_scanning %} results * Repositories owned by user accounts{% ifversion repository-properties %} +* Repository activity feed * Repository properties{% endif %} * Repository stars * Repository watchers diff --git a/ownership.yaml b/ownership.yaml index 09560ea92d55..7bd7a4475cb4 100644 --- a/ownership.yaml +++ b/ownership.yaml @@ -9,7 +9,7 @@ ownership: description: Please use instead. exec_sponsor: nerdneha product_manager: docs-bot - maintainer: tinabme + maintainer: anjuan team_slack: docs qos: best_effort tier: 2 diff --git a/src/content-linter/scripts/lint-content.js b/src/content-linter/scripts/lint-content.js index 85b33b0a79b9..218b559e5a0d 100755 --- a/src/content-linter/scripts/lint-content.js +++ b/src/content-linter/scripts/lint-content.js @@ -323,7 +323,7 @@ function getFilesToLint(paths) { fileList.yml.push(...walkFiles(absPath, ['.yml'])) } } else { - if (isInDir(absPath, contentDir)) { + if (isInDir(absPath, contentDir) || isAFixtureMdFile(absPath)) { fileList.content.push(absPath) } else if (isInDir(absPath, dataDir)) { if (absPath.endsWith('.yml')) { @@ -691,3 +691,7 @@ function isOptionsValid() { } return true } + +function isAFixtureMdFile(filePath) { + return filePath.includes('/src') && filePath.includes('/fixtures') && filePath.endsWith('.md') +}