{
  "id": "clasp",
  "name": "clasp",
  "homepage": "https://github.com/google/clasp",
  "description": "Develop Apps Script projects locally using clasp (Command Line Apps Script Projects).",
  "icon": "SimpleIcons:googleappsscript",
  "executables": [
    "clasp"
  ],
  "dotfiles": {
    "paths": [],
    "exclude": [],
    "secret": [
      "~/.clasprc.json"
    ]
  },
  "commands": {
    "format": 1,
    "label": "Apps Script project",
    "description": "Push or pull the current Apps Script project, or log in. Deployments, versions and logs are not covered.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": false,
      "short_bundles": false
    },
    "subcommand": [
      {
        "path": [
          "push"
        ],
        "label": "Push local files",
        "source": [
          {
            "id": "readme",
            "kind": "manual",
            "url": "https://raw.githubusercontent.com/google/clasp/master/README.md",
            "revision": "master 3.x",
            "evidence": "- [`clasp push [--watch] [--force]`](#push)\n"
          }
        ],
        "field": [
          {
            "id": "watch",
            "label": "Watch and push on change",
            "type": "boolean",
            "option": [
              "--watch"
            ],
            "sources": [
              "readme"
            ]
          },
          {
            "id": "force",
            "label": "Overwrite manifest",
            "description": "Forcibly overwrites the remote manifest.",
            "type": "boolean",
            "option": [
              "--force"
            ],
            "effect": "overwrite",
            "sources": [
              "readme"
            ]
          }
        ],
        "task": [
          {
            "id": "push",
            "label": "Push once",
            "fields": [
              "watch",
              "force"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "watch",
              "force"
            ]
          }
        ]
      },
      {
        "path": [
          "login"
        ],
        "label": "Log in",
        "source": [
          {
            "id": "readme",
            "kind": "manual",
            "url": "https://raw.githubusercontent.com/google/clasp/master/README.md",
            "revision": "master 3.x",
            "evidence": "- [`clasp login [--no-localhost] [--creds <file>] [--use-project-scopes] [--include-clasp-scopes] [--extra-scopes <scopes>] [--redirect-port]`](#login)\n"
          }
        ],
        "field": [
          {
            "id": "no_localhost",
            "label": "No localhost redirect",
            "type": "boolean",
            "option": [
              "--no-localhost"
            ],
            "sources": [
              "readme"
            ]
          },
          {
            "id": "creds",
            "label": "Credentials file",
            "type": "path",
            "option": [
              "--creds"
            ],
            "path": {
              "kind": "file",
              "role": "input"
            },
            "sources": [
              "readme"
            ]
          }
        ],
        "task": [
          {
            "id": "login",
            "label": "Log in",
            "fields": [
              "no_localhost",
              "creds"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "no_localhost",
              "creds"
            ]
          }
        ]
      }
    ]
  }
}
