From 29314b1501dc2823b251869dc63462f78178d0ad Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 11 Nov 2025 22:42:34 +0000 Subject: [PATCH 1/3] Initial plan From 7c4370503544fdbc8ea6b0a1e72d19189b8d94fd Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 11 Nov 2025 22:54:59 +0000 Subject: [PATCH 2/3] Add @ symbol support documentation to .NET CLI commands Co-authored-by: meaghanlewis <10103121+meaghanlewis@users.noreply.github.com> --- docs/core/tools/dotnet-new-install.md | 2 ++ docs/core/tools/dotnet-tool-install.md | 2 ++ docs/core/tools/dotnet-tool-update.md | 2 ++ docs/core/tools/dotnet-workload-install.md | 2 ++ docs/core/tools/dotnet-workload-search.md | 2 ++ includes/cli-response-file.md | 7 +++++++ 6 files changed, 17 insertions(+) create mode 100644 includes/cli-response-file.md diff --git a/docs/core/tools/dotnet-new-install.md b/docs/core/tools/dotnet-new-install.md index 604c0d7896a37..63e63c394155f 100644 --- a/docs/core/tools/dotnet-new-install.md +++ b/docs/core/tools/dotnet-new-install.md @@ -54,6 +54,8 @@ Starting with .NET SDK 6.0.100, installed template packages are available in lat ## Options +[!INCLUDE [response-file](../../../includes/cli-response-file.md)] + - **`--add-source|--nuget-source `** By default, `dotnet new install` uses the hierarchy of NuGet configuration files from the current directory to determine the NuGet source the package can be installed from. If `--nuget-source` is specified, the source will be added to the list of sources to be checked. diff --git a/docs/core/tools/dotnet-tool-install.md b/docs/core/tools/dotnet-tool-install.md index b62f7e5d15658..2cdceb3ef624f 100644 --- a/docs/core/tools/dotnet-tool-install.md +++ b/docs/core/tools/dotnet-tool-install.md @@ -96,6 +96,8 @@ For more information, see [Install a local tool](global-tools.md#install-a-local ## Options +[!INCLUDE [response-file](../../../includes/cli-response-file.md)] + [!INCLUDE [allow-downgrade](../../../includes/cli-allow-downgrade.md)] - **`--allow-roll-forward`** diff --git a/docs/core/tools/dotnet-tool-update.md b/docs/core/tools/dotnet-tool-update.md index 0ac6c1413cee2..df76e5be31be9 100644 --- a/docs/core/tools/dotnet-tool-update.md +++ b/docs/core/tools/dotnet-tool-update.md @@ -58,6 +58,8 @@ The `dotnet tool update` command provides a way for you to update .NET tools on ## Options +[!INCLUDE [response-file](../../../includes/cli-response-file.md)] + [!INCLUDE [add-source](../../../includes/cli-add-source.md)] - **`--all`** diff --git a/docs/core/tools/dotnet-workload-install.md b/docs/core/tools/dotnet-workload-install.md index 3ffd14d09beaa..3f8def7693b9f 100644 --- a/docs/core/tools/dotnet-workload-install.md +++ b/docs/core/tools/dotnet-workload-install.md @@ -74,6 +74,8 @@ The `dotnet workload update` command also downloads advertising manifests. The d ## Options +[!INCLUDE [response-file](../../../includes/cli-response-file.md)] + [!INCLUDE [config-file](../../../includes/cli-configfile.md)] [!INCLUDE [disable-parallel](../../../includes/cli-disable-parallel.md)] diff --git a/docs/core/tools/dotnet-workload-search.md b/docs/core/tools/dotnet-workload-search.md index 50628ded0cc51..b2755657143f3 100644 --- a/docs/core/tools/dotnet-workload-search.md +++ b/docs/core/tools/dotnet-workload-search.md @@ -33,6 +33,8 @@ For more information about the `dotnet workload` commands, see the [dotnet workl ## Options +[!INCLUDE [response-file](../../../includes/cli-response-file.md)] + [!INCLUDE [help](../../../includes/cli-help.md)] [!INCLUDE [verbosity](../../../includes/cli-verbosity-minimal.md)] diff --git a/includes/cli-response-file.md b/includes/cli-response-file.md new file mode 100644 index 0000000000000..e7a5e314853f2 --- /dev/null +++ b/includes/cli-response-file.md @@ -0,0 +1,7 @@ +--- +ms.date: 11/11/2025 +ms.topic: include +--- +- **`@`** + + Reads a response file for additional options. The file name must immediately follow the `@` character with no white space between them. Each line in the response file should contain a single option or argument. You can't use the backslash character (`\`) to concatenate lines. Response files help when commands exceed terminal limits. You can combine response file options with command-line arguments. From 4ae405529f78b358002dbc5f0059febf35f7e70a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 11 Nov 2025 22:56:55 +0000 Subject: [PATCH 3/3] Add examples for @ symbol usage in CLI commands Co-authored-by: meaghanlewis <10103121+meaghanlewis@users.noreply.github.com> --- docs/core/tools/dotnet-tool-install.md | 4 ++++ docs/core/tools/dotnet-workload-install.md | 15 +++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/docs/core/tools/dotnet-tool-install.md b/docs/core/tools/dotnet-tool-install.md index 2cdceb3ef624f..f1b22fd43e9c8 100644 --- a/docs/core/tools/dotnet-tool-install.md +++ b/docs/core/tools/dotnet-tool-install.md @@ -215,6 +215,10 @@ For more information, see [Install a local tool](global-tools.md#install-a-local Installs [dotnetsay](https://www.nuget.org/packages/dotnetsay/) as a global tool and allows it to run on newer .NET versions if the target runtime isn't available. +- **`dotnet tool install @tools.rsp`** + + Installs tools specified in the `tools.rsp` response file. The response file might contain options like `--global` and package names. + ## See also - [.NET tools](global-tools.md) diff --git a/docs/core/tools/dotnet-workload-install.md b/docs/core/tools/dotnet-workload-install.md index 3f8def7693b9f..5f66d57dfc77a 100644 --- a/docs/core/tools/dotnet-workload-install.md +++ b/docs/core/tools/dotnet-workload-install.md @@ -113,3 +113,18 @@ The `dotnet workload update` command also downloads advertising manifests. The d ```dotnetcli dotnet workload install maui-android maui-ios ``` + +- Install workloads using a response file: + + Create a file named `workloads.rsp` with the following content: + + ```rsp + maui + wasm-tools + ``` + + Then install the workloads: + + ```dotnetcli + dotnet workload install @workloads.rsp + ```