{
  "id": "tailscale",
  "name": "Tailscale",
  "description": "Command-line client for the Tailscale mesh VPN.",
  "executables": [
    "tailscale"
  ],
  "commands": {
    "format": 1,
    "label": "Tailscale",
    "description": "Connect, inspect status. Other subcommands are not in this form.",
    "quality": "ai-draft",
    "base": "fig:tailscale",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": false
    },
    "source": [
      {
        "id": "fig",
        "kind": "completion",
        "url": "https://github.com/withfig/autocomplete/blob/master/src/tailscale.ts",
        "license": "MIT"
      }
    ],
    "subcommand": [
      {
        "path": [
          "up"
        ],
        "label": "Connect to Tailscale",
        "source": [
          {
            "id": "fig",
            "kind": "completion",
            "url": "https://github.com/withfig/autocomplete/blob/master/src/tailscale.ts",
            "license": "MIT"
          }
        ],
        "field": [
          {
            "id": "accept_routes",
            "label": "Accept routes",
            "type": "boolean",
            "option": [
              "--accept-routes"
            ],
            "sources": [
              "fig"
            ]
          },
          {
            "id": "accept_dns",
            "label": "Accept DNS",
            "type": "boolean",
            "option": [
              "--accept-dns"
            ],
            "sources": [
              "fig"
            ]
          },
          {
            "id": "advertise_exit_node",
            "label": "Advertise as exit node",
            "type": "boolean",
            "option": [
              "--advertise-exit-node"
            ],
            "sources": [
              "fig"
            ]
          },
          {
            "id": "advertise_routes",
            "label": "Advertise routes",
            "description": "Comma-separated CIDRs.",
            "type": "string",
            "option": [
              "--advertise-routes"
            ],
            "sources": [
              "fig"
            ]
          },
          {
            "id": "exit_node",
            "label": "Exit node",
            "type": "string",
            "option": [
              "--exit-node"
            ],
            "sources": [
              "fig"
            ]
          },
          {
            "id": "auth_key",
            "label": "Auth key",
            "description": "Visible in shell history; prefer file:<path>.",
            "type": "string",
            "option": [
              "--auth-key"
            ],
            "sources": [
              "fig"
            ]
          },
          {
            "id": "ssh",
            "label": "Run Tailscale SSH server",
            "type": "boolean",
            "option": [
              "--ssh"
            ],
            "sources": [
              "fig"
            ]
          },
          {
            "id": "shields_up",
            "label": "Shields up",
            "type": "boolean",
            "option": [
              "--shields-up"
            ],
            "sources": [
              "fig"
            ]
          },
          {
            "id": "reset",
            "label": "Reset unspecified settings",
            "type": "boolean",
            "option": [
              "--reset"
            ],
            "sources": [
              "fig"
            ]
          }
        ],
        "task": [
          {
            "id": "connect",
            "label": "Connect",
            "fields": [
              "accept_routes",
              "accept_dns",
              "ssh",
              "exit_node"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "accept_routes",
              "accept_dns",
              "ssh",
              "exit_node"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "advertise_exit_node",
              "advertise_routes",
              "auth_key",
              "shields_up",
              "reset"
            ]
          }
        ]
      },
      {
        "path": [
          "status"
        ],
        "label": "Show status",
        "source": [
          {
            "id": "fig",
            "kind": "completion",
            "url": "https://github.com/withfig/autocomplete/blob/master/src/tailscale.ts",
            "license": "MIT"
          }
        ],
        "field": [
          {
            "id": "json",
            "label": "JSON output",
            "type": "boolean",
            "option": [
              "--json"
            ],
            "sources": [
              "fig"
            ]
          },
          {
            "id": "active",
            "label": "Only active peers",
            "type": "boolean",
            "option": [
              "--active"
            ],
            "sources": [
              "fig"
            ]
          },
          {
            "id": "peers",
            "label": "Show peers",
            "type": "boolean",
            "option": [
              "--peers"
            ],
            "sources": [
              "fig"
            ]
          },
          {
            "id": "self",
            "label": "Show this machine",
            "type": "boolean",
            "option": [
              "--self"
            ],
            "sources": [
              "fig"
            ]
          }
        ],
        "task": [
          {
            "id": "status",
            "label": "Show status",
            "fields": [
              "peers",
              "active",
              "json"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "peers",
              "self",
              "active",
              "json"
            ]
          }
        ]
      }
    ]
  }
}
