{
  "id": "gcli",
  "name": "GCLI",
  "homepage": "https://herrhotzenplotz.de/gcli/",
  "description": "GCLI is a tool that lets you interact with Git forges such as GitLab, Gitea and GitHub with a consistent command line interface.",
  "executables": [
    "gcli"
  ],
  "dotfiles": {
    "paths": [
      "[configHome]/gcli/config"
    ],
    "secret": [],
    "secret_paths": [
      {
        "file": "[configHome]/gcli/config",
        "match": {
          "prefix": [
            "token"
          ]
        }
      }
    ]
  },
  "commands": {
    "format": 1,
    "label": "Query a git forge",
    "description": "List issues, pull requests and other items on GitHub, GitLab or Gitea. Global overrides and per-subcommand options are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": false,
      "short_attached": false,
      "short_bundles": false
    },
    "source": [
      {
        "id": "man",
        "kind": "manual",
        "url": "https://manpages.debian.org/testing/gcli/gcli.1.en.html",
        "revision": "2.13.0-3",
        "evidence": "gcli [overrides] subcommand [forge-path] [options]\nissues pulls labels forks gists snippets repos comment status pipelines releases milestones config api version\n-s, --sorted  Reverse the output such that most recent items appear at the bottom.\n-n, --count n  Fetch multiple items of data.\n-a, --all  Fetch all data, including closed issues and closed/merged PRs.\n-y, --yes  Do not ask for confirmation when performing destructive operations or performing submissions.\ngh:owner/repo\n"
      }
    ],
    "field": [
      {
        "id": "subcommand",
        "label": "Subcommand",
        "type": "enum",
        "position": 0,
        "choices": [
          {
            "value": "issues",
            "label": "Issues"
          },
          {
            "value": "pulls",
            "label": "Pull requests"
          },
          {
            "value": "labels",
            "label": "Labels"
          },
          {
            "value": "forks",
            "label": "Forks"
          },
          {
            "value": "gists",
            "label": "Gists"
          },
          {
            "value": "repos",
            "label": "Repositories"
          },
          {
            "value": "status",
            "label": "Status"
          },
          {
            "value": "pipelines",
            "label": "Pipelines"
          },
          {
            "value": "releases",
            "label": "Releases"
          },
          {
            "value": "milestones",
            "label": "Milestones"
          }
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "forge_path",
        "label": "Forge path",
        "description": "Optional shorthand such as gh:owner/repo.",
        "type": "string",
        "position": 1,
        "min": 0,
        "sources": [
          "man"
        ]
      },
      {
        "id": "count",
        "label": "Number of items",
        "description": "-1 fetches everything.",
        "type": "integer",
        "option": [
          "--count",
          "-n"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "all",
        "label": "Include closed and merged",
        "type": "boolean",
        "option": [
          "--all"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "sorted",
        "label": "Most recent last",
        "type": "boolean",
        "option": [
          "--sorted",
          "-s"
        ],
        "sources": [
          "man"
        ]
      }
    ],
    "task": [
      {
        "id": "list-issues",
        "label": "List issues",
        "set": {
          "subcommand": [
            "issues"
          ]
        },
        "lock": [
          "subcommand"
        ],
        "fields": [
          "subcommand",
          "forge_path",
          "count",
          "all",
          "sorted"
        ],
        "required": [
          "subcommand"
        ]
      },
      {
        "id": "list-pulls",
        "label": "List pull requests",
        "set": {
          "subcommand": [
            "pulls"
          ]
        },
        "lock": [
          "subcommand"
        ],
        "fields": [
          "subcommand",
          "forge_path",
          "count",
          "all",
          "sorted"
        ],
        "required": [
          "subcommand"
        ]
      }
    ],
    "group": [
      {
        "id": "basic",
        "label": "Basic",
        "fields": [
          "subcommand",
          "forge_path",
          "count",
          "all",
          "sorted"
        ]
      }
    ]
  }
}
