{
  "meta": {
    "url": "https://learn.microsoft.com/en-gb/dotnet/core/tools/dotnet",
    "description": [
      "dotnet - The generic driver for the .NET CLI."
    ]
  },
  "root": [
    {
      "name": "build",
      "tip": [
        "Builds a .NET application."
      ]
    },
    {
      "name": "build-server",
      "tip": [
        "Interacts with servers started by a build."
      ]
    },
    {
      "name": "clean",
      "tip": [
        "Clean build outputs."
      ]
    },
    {
      "name": "exec",
      "tip": [
        "Runs a .NET application."
      ],
      "option": [
        {
          "name": "--depsfile",
          "tip": [
            "Path to a deps.json file.",
            "A deps.json file contains information about dependencies necessary to run the application.",
            "This file is generated by the .NET SDK."
          ]
        },
        {
          "name": "--runtimeconfig",
          "tip": [
            "Path to a runtimeconfig.json file.",
            "A runtimeconfig.json file contains runtime settings.",
            "It is typically named <applicationname>.runtimeconfig.json."
          ]
        }
      ]
    },
    {
      "name": "help",
      "tip": [
        "Shows more detailed documentation online for the command."
      ]
    },
    {
      "name": "msbuild",
      "tip": [
        "Provides access to the MSBuild command line."
      ]
    },
    {
      "name": "new",
      "tip": [
        "Initializes a C# or F# project for a given template."
      ],
      "option": [
        {
          "name": "--dry-run",
          "tip": [
            "Displays a summary of what would happen if the given command were run if it would result in a template creation."
          ]
        },
        {
          "name": "--force",
          "tip": [
            "Forces content to be generated even if it would change existing files."
          ]
        },
        {
          "name": "--framework",
          "alias": [
            "-f"
          ],
          "tip": [
            "Specifies the target framework.",
            "Examples: \"net6.0\", \"net7.0-macos\"."
          ]
        },
        {
          "name": "--language",
          "alias": [
            "-lang"
          ],
          "tip": [
            "The language of the template to create.",
            "The language accepted varies by the template.",
            "Not valid for some templates.",
            "Supported language: [C#|F#|VB]"
          ]
        },
        {
          "name": "--name",
          "alias": [
            "-n"
          ],
          "tip": [
            "The name for the created output.",
            "If no name is specified, the name of the current directory is used."
          ]
        },
        {
          "name": "--output",
          "alias": [
            "-o"
          ],
          "tip": [
            "Location to place the generated output.",
            "The default is the current directory."
          ]
        },
        {
          "name": "--project",
          "tip": [
            "The project that the template is added to.",
            "If not specified, the project in the current or parent directories will be used."
          ]
        },
        {
          "name": "-no-update-check",
          "tip": [
            "Disables checking for template package updates when instantiating a template."
          ]
        }
      ],
      "next": [
        {
          "name": "details",
          "tip": [
            "Displays template package metadata."
          ]
        },
        {
          "name": "install",
          "tip": [
            "installs a template package."
          ]
        },
        {
          "name": "list",
          "tip": [
            "Lists available templates to be run using dotnet new."
          ]
        },
        {
          "name": "search",
          "tip": [
            "searches for the templates supported by dotnet new on NuGet.org."
          ]
        },
        {
          "name": "uninstall",
          "tip": [
            "uninstalls a template package."
          ]
        },
        {
          "name": "update",
          "tip": [
            "updates installed template packages."
          ]
        }
      ]
    },
    {
      "name": "nuget",
      "tip": [
        ".NET commands for managing NuGet package manager."
      ],
      "next": [
        {
          "name": "add",
          "tip": [
            "Adds a NuGet source."
          ]
        },
        {
          "name": "delete",
          "tip": [
            "Deletes or unlists a package from the server."
          ]
        },
        {
          "name": "disable",
          "tip": [
            "Disables a NuGet source."
          ]
        },
        {
          "name": "enable",
          "tip": [
            "Enables a NuGet source."
          ]
        },
        {
          "name": "list",
          "tip": [
            "Lists all configured NuGet sources."
          ]
        },
        {
          "name": "locals",
          "tip": [
            "Clears or lists local NuGet resources such as http-request cache, temporary cache, or machine-wide global packages folder."
          ]
        },
        {
          "name": "push",
          "tip": [
            "Pushes a package to the server and publishes it."
          ]
        },
        {
          "name": "remove",
          "tip": [
            "Removes a NuGet source."
          ]
        },
        {
          "name": "update",
          "tip": [
            "Updates a NuGet source."
          ]
        }
      ]
    },
    {
      "name": "pack",
      "tip": [
        "Creates a NuGet package of your code."
      ]
    },
    {
      "name": "package",
      "tip": [
        ".NET commands for managing NuGet package."
      ],
      "next": [
        {
          "name": "add",
          "tip": [
            "Adds a NuGet package."
          ]
        },
        {
          "name": "list",
          "tip": [
            "Lists NuGet packages."
          ]
        },
        {
          "name": "remove",
          "tip": [
            "Removes a NuGet package."
          ]
        },
        {
          "name": "search",
          "tip": [
            "Searches for a NuGet package."
          ]
        }
      ]
    },
    {
      "name": "publish",
      "tip": [
        "Publishes a .NET framework-dependent or self-contained application."
      ]
    },
    {
      "name": "reference",
      "tip": [
        ".NET commands for manipulate project reference"
      ],
      "next": [
        {
          "name": "add",
          "tip": [
            "Adds a project reference."
          ]
        },
        {
          "name": "list",
          "tip": [
            "Lists project references."
          ]
        },
        {
          "name": "remove",
          "tip": [
            "Removes a project reference."
          ]
        }
      ]
    },
    {
      "name": "restore",
      "tip": [
        "Restores the dependencies for a given application."
      ]
    },
    {
      "name": "run",
      "tip": [
        "Runs the application from source."
      ]
    },
    {
      "name": "sdk",
      "tip": [
        ".NET command for SDK."
      ],
      "next": [
        {
          "name": "check",
          "tip": [
            "Shows up-to-date status of installed SDK and Runtime versions."
          ]
        }
      ]
    },
    {
      "name": "sln",
      "tip": [
        "Options to add, remove, and list projects in a solution file."
      ]
    },
    {
      "name": "store",
      "tip": [
        "Stores assemblies in the runtime package store."
      ]
    },
    {
      "name": "test",
      "tip": [
        "Runs tests using a test runner."
      ]
    },
    {
      "name": "tool",
      "tip": [
        "Install or use tools that extend the .NET experience.",
        "Tools are console applications that are installed from NuGet packages and are invoked from the command prompt.",
        "You can write tools yourself or install tools written by third parties."
      ],
      "next": [
        {
          "name": "install",
          "tip": [
            "Installs a tool on your machine."
          ]
        },
        {
          "name": "list",
          "tip": [
            "Lists all global, tool-path, or local tools currently installed on your machine."
          ]
        },
        {
          "name": "search",
          "tip": [
            "Searches NuGet.org for tools that have the specified search term in their name or metadata."
          ]
        },
        {
          "name": "uninstall",
          "tip": [
            "Uninstalls a tool from your machine."
          ]
        },
        {
          "name": "update",
          "tip": [
            "Updates a tool that is installed on your machine."
          ]
        }
      ]
    },
    {
      "name": "workload",
      "tip": [
        "Install or use workloads that extend the .NET experience."
      ],
      "next": [
        {
          "name": "clean",
          "tip": [
            "Removes workload components."
          ]
        },
        {
          "name": "config",
          "tip": [
            "Enables or disables workload-set update mode."
          ]
        },
        {
          "name": "history",
          "tip": [
            "Shows all workload installation actions."
          ]
        },
        {
          "name": "install",
          "tip": [
            "Installs an optional workload."
          ]
        },
        {
          "name": "list",
          "tip": [
            "Lists all installed workloads."
          ]
        },
        {
          "name": "repair",
          "tip": [
            "Repairs all installed workloads."
          ]
        },
        {
          "name": "restore",
          "tip": [
            "Restore workloads required for a project."
          ]
        },
        {
          "name": "search",
          "tip": [
            "List selected workloads or all available workloads."
          ]
        },
        {
          "name": "uninstall",
          "tip": [
            "Uninstalls a workload."
          ]
        },
        {
          "name": "update",
          "tip": [
            "Reinstalls all installed workloads."
          ]
        }
      ]
    }
  ],
  "option": [
    {
      "name": "--help",
      "alias": [
        "-?",
        "-h"
      ],
      "tip": [
        "Prints out a list of available commands."
      ]
    },
    {
      "name": "--info",
      "tip": [
        "Prints out detailed information about a .NET installation and the machine environment,",
        "such as the current operating system, and commit SHA of the .NET version."
      ]
    },
    {
      "name": "--list-runtimes",
      "tip": [
        "Prints out a list of the installed .NET runtimes for the architecture of the invoked dotnet."
      ]
    },
    {
      "name": "--list-sdks",
      "tip": [
        "Prints out a list of the installed .NET SDKs for the architecture of the invoked dotnet. "
      ]
    },
    {
      "name": "--version",
      "tip": [
        "Prints out the version of the .NET SDK used by dotnet commands.",
        "It may be affected by a global.json file.",
        "Available only when the SDK is installed."
      ]
    }
  ],
  "common_option": [
    {
      "name": "--additional-deps",
      "tip": [
        "Path to an additional .deps.json file. ",
        "A deps.json file contains a list of dependencies, compilation dependencies,",
        "and version information used to address assembly conflicts."
      ]
    },
    {
      "name": "--additionalprobingpath",
      "tip": [
        "Path containing probing policy and assemblies to probe.",
        "Repeat the option to specify multiple paths."
      ]
    },
    {
      "name": "--diagnostics",
      "alias": [
        "-d"
      ],
      "tip": [
        "Enables diagnostic output."
      ]
    },
    {
      "name": "--fx-version",
      "tip": [
        "Version of the .NET runtime to use to run the application."
      ]
    },
    {
      "name": "--help",
      "alias": [
        "-?",
        "-h"
      ],
      "tip": [
        "Prints out documentation for a given command."
      ]
    },
    {
      "name": "--roll-forward",
      "tip": [
        "Controls how roll forward is applied to the app.",
        "The SETTING can be one of the following values.",
        "If not specified, Minor is the default.",
        "[LatestPatch|Minor|Major|LatestMinor|LatestMajor|Disable]"
      ]
    },
    {
      "name": "--verbosity",
      "alias": [
        "-v"
      ],
      "tip": [
        "Sets the verbosity level of the command.",
        "Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic].",
        "Not supported in every command."
      ]
    }
  ]
}
