{
  "name": "softwareupdate",
  "description": "Software Update checks for new and updated versions of your software based on information about your computer and current software",
  "subcommands": [
    {
      "name": "-l",
      "aliases": [
        "--list"
      ],
      "description": "List all appropriate update labels"
    },
    {
      "name": "-d",
      "aliases": [
        "--download"
      ],
      "description": "Download Only"
    },
    {
      "name": "-i",
      "aliases": [
        "--install"
      ],
      "description": "Install",
      "options": [
        {
          "names": [
            "-a",
            "--all"
          ],
          "description": "All appropriate updates"
        },
        {
          "names": [
            "-R",
            "--restart"
          ],
          "description": "Automatically restart (or shut down) if required to complete installation"
        },
        {
          "names": [
            "-r",
            "--recommended"
          ],
          "description": "Only recommended updates"
        }
      ],
      "args": [
        {
          "name": "label",
          "is_variadic": true
        }
      ]
    },
    {
      "name": "--list-full-installers",
      "description": "List the available macOS Installers"
    },
    {
      "name": "--fetch-full-installer",
      "description": "Install the latest recommended macOS Installer"
    },
    {
      "name": "--full-installer-version",
      "description": "The version of macOS to install",
      "args": [
        {
          "name": "version"
        }
      ]
    },
    {
      "name": "--install-rosetta",
      "description": "Install Rosetta 2"
    },
    {
      "name": "--background",
      "description": "Trigger a background scan and update operation"
    },
    {
      "name": "--dump-state",
      "description": "Log the internal state of the SU daemon to /var/log/install.log"
    },
    {
      "name": "--evaluate-products",
      "description": "Evaluate a list of product keys specified by the --products option"
    },
    {
      "name": "--history",
      "description": "Show the install history.  By default, only displays updates installed by softwareupdate",
      "options": [
        {
          "names": [
            "--all"
          ],
          "description": "Include all processes in history (including App installs)"
        }
      ]
    }
  ],
  "options": [
    {
      "names": [
        "--no-scan"
      ],
      "description": "Do not scan when listing or installing updates (use available updates previously scanned)"
    },
    {
      "names": [
        "--product-types"
      ],
      "description": "Limit a scan to a particular product type only - ignoring all others",
      "takes_arg": true,
      "arg": {
        "name": "type"
      }
    },
    {
      "names": [
        "--products"
      ],
      "description": "A comma-separated (no spaces) list of product keys to operate on"
    },
    {
      "names": [
        "--force"
      ],
      "description": "Force an operation to complete.  Use with --background to trigger a background scan regardless of \"Automatically check\" pref"
    },
    {
      "names": [
        "--agree-to-license"
      ],
      "description": "Agree to the software license agreement without user interaction"
    },
    {
      "names": [
        "--verbose"
      ],
      "description": "Enable verbose output"
    },
    {
      "names": [
        "--help",
        "-h"
      ],
      "description": "Show help for softwareupdate"
    }
  ]
}
