{
  "id": "ovsx",
  "name": "ovsx",
  "homepage": "https://github.com/eclipse-openvsx/openvsx",
  "description": "Command line interface for Eclipse Open VSX.",
  "executables": [
    "ovsx"
  ],
  "dotfiles": {
    "paths": [],
    "exclude": [],
    "secret": [
      "~/.ovsx"
    ]
  },
  "commands": {
    "format": 1,
    "label": "Open VSX",
    "description": "Publish an extension to an Open VSX registry. Other ovsx commands are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": false,
      "short_attached": false,
      "short_bundles": false
    },
    "subcommand": [
      {
        "path": [
          "publish"
        ],
        "label": "Publish an extension",
        "source": [
          {
            "id": "help",
            "kind": "help",
            "revision": "ovsx publish --help",
            "evidence": "Usage: ovsx publish [options] [extension.vsix]\n  -t, --target <targets...>     Target architectures\n  -i, --packagePath <paths...>  Publish the provided VSIX packages.\n  --pre-release                 Mark this package as a pre-release\n  --skip-duplicate              Fail silently if version already exists on the\n  --no-dependencies             Disable dependency detection via npm or yarn\n  -r, --registryUrl <url>              Use the registry API at this base URL.\n  -p, --pat <token>                    Personal access token.\n"
          }
        ],
        "field": [
          {
            "id": "vsix",
            "label": "VSIX file",
            "description": "Leave empty to package the current directory first.",
            "type": "path",
            "position": 0,
            "path": {
              "kind": "file",
              "role": "input",
              "must_exist": true
            },
            "sources": [
              "help"
            ]
          },
          {
            "id": "registry_url",
            "label": "Registry URL",
            "type": "url",
            "option": [
              "--registryUrl",
              "-r"
            ],
            "sources": [
              "help"
            ]
          },
          {
            "id": "target",
            "label": "Target architectures",
            "type": "string",
            "option": [
              "--target",
              "-t"
            ],
            "sources": [
              "help"
            ]
          },
          {
            "id": "pre_release",
            "label": "Pre-release",
            "type": "boolean",
            "option": [
              "--pre-release"
            ],
            "sources": [
              "help"
            ]
          },
          {
            "id": "skip_duplicate",
            "label": "Skip if version exists",
            "type": "boolean",
            "option": [
              "--skip-duplicate"
            ],
            "sources": [
              "help"
            ]
          },
          {
            "id": "no_dependencies",
            "label": "Disable dependency detection",
            "type": "boolean",
            "option": [
              "--no-dependencies"
            ],
            "sources": [
              "help"
            ]
          }
        ],
        "task": [
          {
            "id": "publish",
            "label": "Publish a VSIX",
            "fields": [
              "vsix",
              "registry_url"
            ],
            "required": [
              "vsix"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "vsix",
              "registry_url",
              "target",
              "pre_release",
              "skip_duplicate",
              "no_dependencies"
            ]
          }
        ]
      }
    ]
  }
}
