{
  "name": "trex",
  "description": "Advanced package management for deno, based on import_map.json",
  "subcommands": [
    {
      "name": "i",
      "aliases": [
        "install"
      ],
      "description": "Install a package",
      "options": [
        {
          "names": [
            "-m",
            "--map"
          ],
          "description": "Install package from deno.land",
          "takes_arg": true,
          "arg": {
            "name": "package name",
            "description": "Deno.land package name"
          }
        },
        {
          "names": [
            "-n",
            "--nest"
          ],
          "description": "Install package from nest.land",
          "takes_arg": true,
          "arg": {
            "name": "package name",
            "description": "Nest.land package name"
          }
        },
        {
          "names": [
            "-p",
            "--pkg"
          ],
          "description": "Install package from some repository",
          "takes_arg": true,
          "arg": {
            "name": "repository",
            "description": "[user]/[repo or repo@tag/branch]/[path/to/file]"
          }
        }
      ]
    },
    {
      "name": "delete",
      "description": "Delete a package",
      "args": [
        {
          "name": "package name"
        }
      ]
    },
    {
      "name": "upgrade",
      "description": "Upgrade trex",
      "options": [
        {
          "names": [
            "--canary"
          ],
          "description": "Install from dev branch"
        }
      ]
    },
    {
      "name": "tree",
      "description": "View dependency tree"
    },
    {
      "name": "run",
      "description": "Run a script alias in a file run.json",
      "options": [
        {
          "names": [
            "-w",
            "--watch"
          ],
          "description": "Use reboot script alias protocol (rsap)"
        },
        {
          "names": [
            "-wv"
          ],
          "description": "Verbose output in --watch mode (rsap)"
        }
      ],
      "args": [
        {
          "name": "script alias"
        }
      ]
    },
    {
      "name": "purge",
      "description": "Remove a package or url from cache",
      "args": [
        {
          "name": "package | url"
        }
      ]
    },
    {
      "name": "ls",
      "description": "Shows the list of installed packages"
    },
    {
      "name": "exec",
      "description": "Execute a cli tool with out install then",
      "options": [
        {
          "names": [
            "--perms"
          ],
          "description": "Specify cli permisions"
        }
      ],
      "args": [
        {
          "name": "cli tool"
        }
      ]
    },
    {
      "name": "check",
      "description": "Check deno.land [std/x] dependencies updates",
      "options": [
        {
          "names": [
            "-f",
            "--fix"
          ],
          "description": "Update outdated dependencies"
        }
      ]
    }
  ],
  "options": [
    {
      "names": [
        "-h",
        "--help"
      ],
      "description": "Print help info"
    },
    {
      "names": [
        "-v",
        "--version"
      ],
      "description": "Print version"
    },
    {
      "names": [
        "-c",
        "--custom"
      ],
      "description": "Install custom package",
      "takes_arg": true,
      "arg": {
        "name": "custom package",
        "description": "Install a package from a custom URL source, eg: React=https://dev.jspm.io/react/index.js"
      }
    }
  ]
}
