{
  "name": "goreleaser",
  "description": "Deliver Go binaries as fast and easily as possible",
  "options": [
    {
      "names": [
        "--debug"
      ],
      "description": "Enable verbose mode",
      "isPersistent": true
    },
    {
      "names": [
        "--verbose"
      ],
      "description": "Enable verbose mode",
      "isPersistent": true
    },
    {
      "names": [
        "--help",
        "-h"
      ],
      "description": "Display help",
      "isPersistent": true
    }
  ],
  "subcommands": [
    {
      "name": "b",
      "aliases": [
        "build"
      ],
      "description": "Builds the current project",
      "options": [
        {
          "names": [
            "--clean"
          ],
          "description": "Remove the dist folder before building"
        },
        {
          "names": [
            "--config",
            "-f"
          ],
          "description": "Load configuration from file",
          "args": [
            {
              "name": "config",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--deprecated"
          ],
          "description": "Force print the deprecation message - tests only",
          "hidden": true
        },
        {
          "names": [
            "--id"
          ],
          "description": "Builds only the specified build ids",
          "isRepeatable": -1,
          "args": [
            {
              "name": "id"
            }
          ]
        },
        {
          "names": [
            "--output",
            "-o"
          ],
          "description": "Copy the binary to the path after the build. Only taken into account when using --single-target and a single id (either with --id or if configuration only has one build)",
          "args": [
            {
              "name": "output",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--parallelism",
            "-p"
          ],
          "description": "Amount tasks to run concurrently (default: number of CPUs)",
          "args": [
            {
              "name": "parallelism"
            }
          ]
        },
        {
          "names": [
            "--rm-dist"
          ],
          "description": "Remove the dist folder before building",
          "hidden": true
        },
        {
          "names": [
            "--single-target"
          ],
          "description": "Builds only for current GOOS and GOARCH, regardless of what's set in the configuration file"
        },
        {
          "names": [
            "--skip"
          ],
          "description": "Skip the given options (valid options are: before, post-hooks, pre-hooks, validate)",
          "isRepeatable": -1,
          "args": [
            {
              "name": "skip"
            }
          ]
        },
        {
          "names": [
            "--skip-before"
          ],
          "description": "Skips global before hooks",
          "hidden": true
        },
        {
          "names": [
            "--skip-post-hooks"
          ],
          "description": "Skips all post-build hooks",
          "hidden": true
        },
        {
          "names": [
            "--skip-validate"
          ],
          "description": "Skips several sanity checks",
          "hidden": true
        },
        {
          "names": [
            "--snapshot"
          ],
          "description": "Generate an unversioned snapshot build, skipping all validations"
        },
        {
          "names": [
            "--timeout"
          ],
          "description": "Timeout to the entire build process",
          "args": [
            {
              "name": "timeout"
            }
          ]
        }
      ]
    },
    {
      "name": "c",
      "aliases": [
        "check"
      ],
      "description": "Checks if configuration is valid",
      "options": [
        {
          "names": [
            "--config",
            "-f"
          ],
          "description": "Configuration file(s) to check",
          "hidden": true,
          "args": [
            {
              "name": "config",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--deprecated"
          ],
          "description": "Force print the deprecation message - tests only",
          "hidden": true
        },
        {
          "names": [
            "--quiet",
            "-q"
          ],
          "description": "Quiet mode: no output"
        }
      ]
    },
    {
      "name": "completion",
      "description": "Generate the autocompletion script for the specified shell",
      "subcommands": [
        {
          "name": "bash",
          "description": "Generate the autocompletion script for bash",
          "options": [
            {
              "names": [
                "--no-descriptions"
              ],
              "description": "Disable completion descriptions"
            }
          ]
        },
        {
          "name": "fish",
          "description": "Generate the autocompletion script for fish",
          "options": [
            {
              "names": [
                "--no-descriptions"
              ],
              "description": "Disable completion descriptions"
            }
          ]
        },
        {
          "name": "powershell",
          "description": "Generate the autocompletion script for powershell",
          "options": [
            {
              "names": [
                "--no-descriptions"
              ],
              "description": "Disable completion descriptions"
            }
          ]
        },
        {
          "name": "zsh",
          "description": "Generate the autocompletion script for zsh",
          "options": [
            {
              "names": [
                "--no-descriptions"
              ],
              "description": "Disable completion descriptions"
            }
          ]
        }
      ]
    },
    {
      "name": "hc",
      "aliases": [
        "healthcheck"
      ],
      "description": "Checks if needed tools are installed",
      "options": [
        {
          "names": [
            "--config",
            "-f"
          ],
          "description": "Configuration file",
          "args": [
            {
              "name": "config",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--quiet",
            "-q"
          ],
          "description": "Quiet mode: no output"
        }
      ]
    },
    {
      "name": "i",
      "aliases": [
        "init"
      ],
      "description": "Generates a .goreleaser.yaml file",
      "options": [
        {
          "names": [
            "--config",
            "-f"
          ],
          "description": "Load configuration from file",
          "args": [
            {
              "name": "config",
              "template": "filepaths"
            }
          ]
        }
      ]
    },
    {
      "name": "schema",
      "aliases": [
        "jsonschema"
      ],
      "description": "Outputs goreleaser's JSON schema",
      "options": [
        {
          "names": [
            "--output",
            "-o"
          ],
          "description": "Where to save the JSONSchema file",
          "args": [
            {
              "name": "output",
              "template": "filepaths"
            }
          ]
        }
      ]
    },
    {
      "name": "r",
      "aliases": [
        "release"
      ],
      "description": "Releases the current project",
      "options": [
        {
          "names": [
            "--auto-snapshot"
          ],
          "description": "Automatically sets --snapshot if the repository is dirty"
        },
        {
          "names": [
            "--clean"
          ],
          "description": "Removes the dist folder"
        },
        {
          "names": [
            "--config",
            "-f"
          ],
          "description": "Load configuration from file",
          "args": [
            {
              "name": "config",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--deprecated"
          ],
          "description": "Force print the deprecation message - tests only",
          "hidden": true
        },
        {
          "names": [
            "--fail-fast"
          ],
          "description": "Whether to abort the release publishing on the first error"
        },
        {
          "names": [
            "--parallelism",
            "-p"
          ],
          "description": "Amount tasks to run concurrently (default: number of CPUs)",
          "args": [
            {
              "name": "parallelism"
            }
          ]
        },
        {
          "names": [
            "--release-footer"
          ],
          "description": "Load custom release notes footer from a markdown file",
          "args": [
            {
              "name": "release-footer",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--release-footer-tmpl"
          ],
          "description": "Load custom release notes footer from a templated markdown file (overrides --release-footer)",
          "args": [
            {
              "name": "release-footer-tmpl",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--release-header"
          ],
          "description": "Load custom release notes header from a markdown file",
          "args": [
            {
              "name": "release-header",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--release-header-tmpl"
          ],
          "description": "Load custom release notes header from a templated markdown file (overrides --release-header)",
          "args": [
            {
              "name": "release-header-tmpl",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--release-notes"
          ],
          "description": "Load custom release notes from a markdown file (will skip GoReleaser changelog generation)",
          "args": [
            {
              "name": "release-notes",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--release-notes-tmpl"
          ],
          "description": "Load custom release notes from a templated markdown file (overrides --release-notes)",
          "args": [
            {
              "name": "release-notes-tmpl",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--rm-dist"
          ],
          "description": "Removes the dist folder",
          "hidden": true
        },
        {
          "names": [
            "--skip"
          ],
          "description": "Skip the given options (valid options are announce, aur, before, chocolatey, docker, homebrew, ko, nfpm, nix, publish, sbom, scoop, sign, snapcraft, validate, winget)",
          "isRepeatable": -1,
          "args": [
            {
              "name": "skip"
            }
          ]
        },
        {
          "names": [
            "--skip-announce"
          ],
          "description": "Skips announcing releases (implies --skip=validate)",
          "hidden": true
        },
        {
          "names": [
            "--skip-before"
          ],
          "description": "Skips global before hooks",
          "hidden": true
        },
        {
          "names": [
            "--skip-docker"
          ],
          "description": "Skips Docker Images/Manifests builds",
          "hidden": true
        },
        {
          "names": [
            "--skip-ko"
          ],
          "description": "Skips Ko builds",
          "hidden": true
        },
        {
          "names": [
            "--skip-publish"
          ],
          "description": "Skips publishing artifacts (implies --skip=announce)",
          "hidden": true
        },
        {
          "names": [
            "--skip-sbom"
          ],
          "description": "Skips cataloging artifacts",
          "hidden": true
        },
        {
          "names": [
            "--skip-sign"
          ],
          "description": "Skips signing artifacts",
          "hidden": true
        },
        {
          "names": [
            "--skip-validate"
          ],
          "description": "Skips git checks",
          "hidden": true
        },
        {
          "names": [
            "--snapshot"
          ],
          "description": "Generate an unversioned snapshot release, skipping all validations and without publishing any artifacts (implies --skip=announce,publish,validate)"
        },
        {
          "names": [
            "--timeout"
          ],
          "description": "Timeout to the entire release process",
          "args": [
            {
              "name": "timeout"
            }
          ]
        }
      ]
    },
    {
      "name": "help",
      "description": "Help about any command",
      "subcommands": [
        {
          "name": "b",
          "aliases": [
            "build"
          ],
          "description": "Builds the current project"
        },
        {
          "name": "c",
          "aliases": [
            "check"
          ],
          "description": "Checks if configuration is valid"
        },
        {
          "name": "completion",
          "description": "Generate the autocompletion script for the specified shell",
          "subcommands": [
            {
              "name": "bash",
              "description": "Generate the autocompletion script for bash"
            },
            {
              "name": "fish",
              "description": "Generate the autocompletion script for fish"
            },
            {
              "name": "powershell",
              "description": "Generate the autocompletion script for powershell"
            },
            {
              "name": "zsh",
              "description": "Generate the autocompletion script for zsh"
            }
          ]
        },
        {
          "name": "hc",
          "aliases": [
            "healthcheck"
          ],
          "description": "Checks if needed tools are installed"
        },
        {
          "name": "i",
          "aliases": [
            "init"
          ],
          "description": "Generates a .goreleaser.yaml file"
        },
        {
          "name": "schema",
          "aliases": [
            "jsonschema"
          ],
          "description": "Outputs goreleaser's JSON schema"
        },
        {
          "name": "r",
          "aliases": [
            "release"
          ],
          "description": "Releases the current project"
        }
      ]
    }
  ]
}
