{
  "description": "Search, list outdated, upgrade and install packages across managers. Manager selectors (--brew, --no-apt, ...) and global options such as --dry-run are left out.",
  "name": "mpm",
  "subcommands": [
    {
      "name": "search",
      "description": "Search packages",
      "options": [
        {
          "names": [
            "--extended"
          ],
          "description": "Search descriptions too"
        },
        {
          "names": [
            "--exact"
          ],
          "description": "Exact match only"
        },
        {
          "names": [
            "--columns"
          ],
          "description": "Comma-separated column IDs.",
          "args": {
            "name": "columns",
            "description": "Comma-separated column IDs.",
            "isOptional": false
          }
        }
      ],
      "args": [
        {
          "name": "query",
          "isOptional": true
        }
      ]
    },
    {
      "name": "outdated",
      "description": "List outdated packages",
      "options": [
        {
          "names": [
            "--exact"
          ],
          "description": "Exact match only"
        },
        {
          "names": [
            "--columns"
          ],
          "description": "Comma-separated column IDs.",
          "args": {
            "name": "columns",
            "description": "Comma-separated column IDs.",
            "isOptional": false
          }
        }
      ],
      "args": [
        {
          "name": "query",
          "isOptional": true
        }
      ]
    },
    {
      "name": "upgrade",
      "description": "Upgrade packages",
      "options": [
        {
          "names": [
            "--all",
            "-A"
          ],
          "description": "Upgrade all outdated packages",
          "isDangerous": true
        },
        {
          "names": [
            "--columns"
          ],
          "description": "Comma-separated column IDs.",
          "args": {
            "name": "columns",
            "description": "Comma-separated column IDs.",
            "isOptional": false
          }
        }
      ],
      "args": [
        {
          "name": "packages",
          "isOptional": true,
          "isVariadic": true
        }
      ]
    },
    {
      "name": "install",
      "description": "Install packages",
      "options": [
        {
          "names": [
            "--columns"
          ],
          "description": "Comma-separated column IDs.",
          "args": {
            "name": "columns",
            "description": "Comma-separated column IDs.",
            "isOptional": false
          }
        }
      ],
      "args": [
        {
          "name": "packages",
          "isOptional": true,
          "isVariadic": true
        }
      ]
    }
  ]
}
