{
  "description": "Run one or more tasks from tasks.py with Invoke's core options. Per-task options are written after each task name and are not part of this form; --list and --help are left out.",
  "options": [
    {
      "names": [
        "--echo",
        "-e"
      ],
      "description": "Echo commands"
    },
    {
      "names": [
        "--dry"
      ],
      "description": "Print commands instead of running them."
    },
    {
      "names": [
        "--pty",
        "-p"
      ],
      "description": "Use a pty"
    },
    {
      "names": [
        "--warn-only",
        "-w"
      ],
      "description": "Warn only on failure"
    },
    {
      "names": [
        "--debug",
        "-d"
      ],
      "description": "Debug output"
    },
    {
      "names": [
        "--collection",
        "-c"
      ],
      "description": "Collection name",
      "args": {
        "name": "collection",
        "isOptional": false
      }
    },
    {
      "names": [
        "--search-root",
        "-r"
      ],
      "description": "Search root",
      "args": {
        "name": "search_root",
        "isOptional": false,
        "template": "folders"
      }
    },
    {
      "names": [
        "--config",
        "-f"
      ],
      "description": "Runtime config file",
      "args": {
        "name": "config",
        "isOptional": false,
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--command-timeout",
        "-T"
      ],
      "description": "Command timeout (seconds)",
      "args": {
        "name": "command_timeout",
        "isOptional": false
      }
    }
  ],
  "args": [
    {
      "name": "tasks",
      "description": "One or more task names, in order.",
      "isOptional": true,
      "isVariadic": true
    }
  ],
  "name": "invoke",
  "aliases": [
    "inv"
  ]
}
