{
  "id": "kaggle",
  "name": "Kaggle CLI",
  "homepage": "https://github.com/Kaggle/kaggle-api",
  "description": "Official Kaggle CLI",
  "icon": "SimpleIcons:kaggle",
  "executables": [
    "kaggle"
  ],
  "dotfiles": {
    "paths": [],
    "exclude": [],
    "secret": [
      "~/.kaggle/kaggle.json",
      "~/.kaggle/access_token"
    ]
  },
  "commands": {
    "format": 1,
    "label": "Kaggle CLI",
    "description": "Download Kaggle datasets and competition data. Submissions, kernels, models and benchmarks are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": false
    },
    "subcommand": [
      {
        "path": [
          "datasets",
          "download"
        ],
        "label": "Download a dataset",
        "description": "Download dataset files; the dataset is owner/dataset-name.",
        "source": [
          {
            "id": "docs",
            "kind": "manual",
            "url": "https://github.com/Kaggle/kaggle-api/blob/main/docs/datasets.md",
            "revision": "main 2026-10-27",
            "evidence": "kaggle datasets download <DATASET> [options]\n*   `<DATASET>`: Dataset URL suffix in the format `owner/dataset-name`\n*   `-f, --file <FILE_NAME>`: Specific file to download (downloads all if not specified).\n*   `-p, --path <PATH>`: Folder to download files to (defaults to current directory).\n*   `--unzip`: Unzip the downloaded file (deletes the .zip file afterwards).\n*   `-o, --force`: Force download, overwriting existing files.\n*   `-q, --quiet`: Suppress verbose output.\n"
          }
        ],
        "field": [
          {
            "id": "dataset",
            "label": "Dataset (owner/name)",
            "type": "string",
            "position": 0,
            "sources": [
              "docs"
            ]
          },
          {
            "id": "file",
            "label": "Single file",
            "description": "Download only this file (all files when empty).",
            "type": "string",
            "option": [
              "--file",
              "-f"
            ],
            "sources": [
              "docs"
            ]
          },
          {
            "id": "path",
            "label": "Download folder",
            "type": "path",
            "option": [
              "--path",
              "-p"
            ],
            "path": {
              "kind": "directory",
              "role": "output"
            },
            "sources": [
              "docs"
            ]
          },
          {
            "id": "unzip",
            "label": "Unzip after download",
            "description": "Deletes the .zip file afterwards.",
            "type": "boolean",
            "option": [
              "--unzip"
            ],
            "effect": "delete",
            "sources": [
              "docs"
            ]
          },
          {
            "id": "force",
            "label": "Overwrite existing files",
            "type": "boolean",
            "option": [
              "--force",
              "-o"
            ],
            "effect": "overwrite",
            "sources": [
              "docs"
            ]
          },
          {
            "id": "quiet",
            "label": "Quiet",
            "type": "boolean",
            "option": [
              "--quiet",
              "-q"
            ],
            "sources": [
              "docs"
            ]
          }
        ],
        "task": [
          {
            "id": "download",
            "label": "Download and unzip",
            "set": {
              "unzip": [
                true
              ]
            },
            "fields": [
              "dataset",
              "file",
              "path",
              "unzip",
              "force",
              "quiet"
            ],
            "required": [
              "dataset"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "dataset",
              "file",
              "path",
              "unzip"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "force",
              "quiet"
            ]
          }
        ]
      },
      {
        "path": [
          "competitions",
          "download"
        ],
        "label": "Download competition data",
        "description": "Download competition files.",
        "source": [
          {
            "id": "docs",
            "kind": "manual",
            "url": "https://github.com/Kaggle/kaggle-api/blob/main/docs/competitions.md",
            "revision": "main 2026-10-27",
            "evidence": "kaggle competitions download <COMPETITION> [options]\n*   `<COMPETITION>`: Competition URL suffix (e.g., `titanic`).\n*   `-f, --file <FILE_NAME>`: Specific file to download (downloads all if not specified).\n*   `-p, --path <PATH>`: Folder to download files to (defaults to current directory).\n*   `--unzip`: Unzip the downloaded file (deletes the .zip file afterwards).\n*   `-o, --force`: Force download, overwriting existing files.\n*   `-q, --quiet`: Suppress verbose output.\n"
          }
        ],
        "field": [
          {
            "id": "competition",
            "label": "Competition",
            "type": "string",
            "position": 0,
            "sources": [
              "docs"
            ]
          },
          {
            "id": "file",
            "label": "Single file",
            "description": "Download only this file (all files when empty).",
            "type": "string",
            "option": [
              "--file",
              "-f"
            ],
            "sources": [
              "docs"
            ]
          },
          {
            "id": "path",
            "label": "Download folder",
            "type": "path",
            "option": [
              "--path",
              "-p"
            ],
            "path": {
              "kind": "directory",
              "role": "output"
            },
            "sources": [
              "docs"
            ]
          },
          {
            "id": "unzip",
            "label": "Unzip after download",
            "description": "Deletes the .zip file afterwards.",
            "type": "boolean",
            "option": [
              "--unzip"
            ],
            "effect": "delete",
            "sources": [
              "docs"
            ]
          },
          {
            "id": "force",
            "label": "Overwrite existing files",
            "type": "boolean",
            "option": [
              "--force",
              "-o"
            ],
            "effect": "overwrite",
            "sources": [
              "docs"
            ]
          },
          {
            "id": "quiet",
            "label": "Quiet",
            "type": "boolean",
            "option": [
              "--quiet",
              "-q"
            ],
            "sources": [
              "docs"
            ]
          }
        ],
        "task": [
          {
            "id": "download",
            "label": "Download and unzip",
            "set": {
              "unzip": [
                true
              ]
            },
            "fields": [
              "competition",
              "file",
              "path",
              "unzip",
              "force",
              "quiet"
            ],
            "required": [
              "competition"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "competition",
              "file",
              "path",
              "unzip"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "force",
              "quiet"
            ]
          }
        ]
      }
    ]
  }
}
