{
  "name": "tsh",
  "description": "TSH: Teleport Authentication Gateway Client",
  "options": [
    {
      "names": [
        "-l",
        "--login"
      ],
      "description": "Remote host login"
    },
    {
      "names": [
        "--proxy"
      ],
      "description": "SSH proxy address",
      "args": [
        {
          "name": "Teleport proxy address",
          "generators": [
            {
              "script": [
                "tsh",
                "clusters",
                "--format=json"
              ]
            }
          ]
        }
      ]
    },
    {
      "names": [
        "--user"
      ],
      "description": "SSH proxy user",
      "args": [
        {
          "name": "user",
          "generators": [
            {
              "script": [
                "tsh",
                "status",
                "--format",
                "json"
              ]
            }
          ]
        }
      ]
    },
    {
      "names": [
        "--ttl"
      ],
      "description": "Minutes to live for a SSH session",
      "args": [
        {
          "name": "time"
        }
      ]
    },
    {
      "names": [
        "-i",
        "--identity"
      ],
      "description": "Identity file",
      "args": [
        {
          "name": "file",
          "template": "filepaths"
        }
      ]
    },
    {
      "names": [
        "--cert-format"
      ],
      "description": "SSH certificate format",
      "args": [
        {}
      ]
    },
    {
      "names": [
        "--insecure"
      ],
      "description": "Do not verify server's certificate and host name. Use only in test environments"
    },
    {
      "names": [
        "--auth"
      ],
      "description": "Specify the name of authentication connector to use",
      "args": [
        {}
      ]
    },
    {
      "names": [
        "--skip-version-check"
      ],
      "description": "Skip version checking between server and client"
    },
    {
      "names": [
        "-d",
        "--debug"
      ],
      "description": "Verbose logging to stdout"
    },
    {
      "names": [
        "-k",
        "--add-keys-to-agent"
      ],
      "description": "Controls how keys are handled. Valid values are [auto no yes only]"
    },
    {
      "names": [
        "--enable-escape-sequences"
      ],
      "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
    },
    {
      "names": [
        "--bind-addr"
      ],
      "description": "Override host:port used when opening a browser for cluster logins"
    },
    {
      "names": [
        "-J",
        "--jumphost"
      ],
      "description": "SSH jumphost"
    }
  ],
  "subcommands": [
    {
      "name": "version",
      "description": "Print the version"
    },
    {
      "name": "ssh",
      "description": "Run shell or execute a command on a remote SSH node",
      "options": [
        {
          "names": [
            "-1"
          ],
          "description": "Forces ssh to try protocol version 1 only"
        },
        {
          "names": [
            "-2"
          ],
          "description": "Forces ssh to try protocol version 2 only"
        },
        {
          "names": [
            "-4"
          ],
          "description": "Forces ssh to use IPv4 addresses only"
        },
        {
          "names": [
            "-6"
          ],
          "description": "Forces ssh to use IPv6 addresses only"
        },
        {
          "names": [
            "-A"
          ],
          "description": "Enables forwarding of the authentication agent connection"
        },
        {
          "names": [
            "-a"
          ],
          "description": "Disables forwarding of the authentication agent connection"
        },
        {
          "names": [
            "-b"
          ],
          "description": "Use bind_address on the local machine as the source address of the connection",
          "args": [
            {
              "name": "bind address",
              "description": "Source address of the connection"
            }
          ]
        },
        {
          "names": [
            "-C"
          ],
          "description": "Requests compression of all data (including stdin, stdout, stderr, and data for forwarded X11 and TCP connections)"
        },
        {
          "names": [
            "-c"
          ],
          "description": "Selects the cipher specification for encrypting the session",
          "args": [
            {
              "name": "cipher spec",
              "description": "The selected cipher specification"
            }
          ]
        },
        {
          "names": [
            "-D"
          ],
          "description": "Specifies a local 'dynamic' application-level port forwarding",
          "args": [
            {
              "name": "port",
              "description": "Port of the bind address"
            }
          ]
        },
        {
          "names": [
            "-e"
          ],
          "description": "Sets the escape character for sessions with a pty (default: '~')",
          "args": [
            {
              "name": "escape char",
              "description": "Specified escape character"
            }
          ]
        },
        {
          "names": [
            "-F"
          ],
          "description": "Specifies an alternative per-user configuration file",
          "args": [
            {
              "name": "configfile",
              "description": "Path to alternative config file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "-f"
          ],
          "description": "Requests ssh to go to background just before command execution"
        },
        {
          "names": [
            "-g"
          ],
          "description": "Allows remote hosts to connect to local forwarded ports"
        },
        {
          "names": [
            "-I"
          ],
          "description": "Specify the PKCS#11 shared library ssh should use to communicate with a PKCS#11 token providing the user's private RSA key",
          "args": [
            {
              "name": "pkcs11"
            }
          ]
        },
        {
          "names": [
            "-i"
          ],
          "description": "Selects a file from which the identity (private key) for public key authentication is read",
          "isRepeatable": -1,
          "args": [
            {
              "name": "identity file",
              "description": "Path to identity (private key)",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "-K"
          ],
          "description": "Enables GSSAPI-based authentication and forwarding (delegation) of GSSAPI credentials to the server"
        },
        {
          "names": [
            "-k"
          ],
          "description": "Disables forwarding (delegation) of GSSAPI credentials to the server"
        },
        {
          "names": [
            "-L"
          ],
          "description": "Specifies that the given port on the local (client) host is to be forwarded to the given host and port on the remote side",
          "args": [
            {
              "name": "port:host:hostport",
              "description": "Local port, followed by host and host port to forward to"
            }
          ]
        },
        {
          "names": [
            "-l"
          ],
          "description": "Specifies the user to log in as on the remote machine",
          "args": [
            {
              "name": "login name",
              "description": "Name of user logging into remote machine"
            }
          ]
        },
        {
          "names": [
            "-M"
          ],
          "description": "Places the ssh client into ``master'' mode for connection sharing",
          "isRepeatable": -1
        },
        {
          "names": [
            "-m"
          ],
          "description": "Additionally, for protocol version 2 a comma-separated list of MAC (message authentication code) algorithms can be specified in order of preference",
          "args": [
            {
              "name": "mac spec"
            }
          ]
        },
        {
          "names": [
            "-N"
          ],
          "description": "Do not execute a remote command"
        },
        {
          "names": [
            "-n"
          ],
          "description": "Redirects stdin from /dev/null (actually, prevents reading from stdin)"
        },
        {
          "names": [
            "-O"
          ],
          "description": "Control an active connection multiplexing master process",
          "args": [
            {
              "name": "ctl cmd",
              "description": "Command that's passed to the master process"
            }
          ]
        },
        {
          "names": [
            "-o"
          ],
          "description": "Can be used to give options in the format used in the configuration file",
          "isRepeatable": -1,
          "args": [
            {
              "name": "option",
              "description": "Options that can be specified in the format of the config file",
              "suggestions": [
                "AddressFamily",
                "BatchMode",
                "BindAddress",
                "ChallengeResponseAuthentication",
                "CheckHostIP",
                "Cipher",
                "Ciphers",
                "ClearAllForwardings",
                "Compression",
                "CompressionLevel",
                "ConnectionAttempts",
                "ConnectTimeout",
                "ControlMaster",
                "ControlPath",
                "ControlPersist",
                "DynamicForward",
                "EscapeChar",
                "ExitOnForwardFailure",
                "ForwardAgent",
                "ForwardX11",
                "ForwardX11Timeout",
                "ForwardX11Trusted",
                "GatewayPorts",
                "GlobalKnownHostsFile",
                "GSSAPIAuthentication",
                "GSSAPIDelegateCredentials",
                "HashKnownHosts",
                "Host",
                "HostbasedAuthentication",
                "HostKeyAlgorithms",
                "HostKeyAlias",
                "HostName",
                "IdentityFile",
                "IdentitiesOnly",
                "IPQoS",
                "KbdInteractiveAuthentication",
                "KbdInteractiveDevices",
                "KexAlgorithms",
                "LocalCommand",
                "LocalForward",
                "LogLevel",
                "MACs",
                "NoHostAuthenticationForLocalhost",
                "NumberOfPasswordPrompts",
                "PasswordAuthentication",
                "PermitLocalCommand",
                "PKCS11Provider",
                "Port",
                "PreferredAuthentications",
                "Protocol",
                "ProxyCommand",
                "PubkeyAuthentication",
                "RekeyLimit",
                "RequestTTY",
                "RhostsRSAAuthentication",
                "RSAAuthentication",
                "SendEnv",
                "ServerAliveInterval",
                "ServerAliveCountMax",
                "StrictHostKeyChecking",
                "TCPKeepAlive",
                "Tunnel",
                "TunnelDevice",
                "UsePrivilegedPort",
                "User",
                "UserKnownHostsFile",
                "VerifyHostKeyDNS",
                "VisualHostKey",
                "XAuthLocation"
              ]
            }
          ]
        },
        {
          "names": [
            "-p"
          ],
          "description": "Port to connect to on the remote host",
          "args": [
            {
              "name": "port",
              "description": "Port to connect to"
            }
          ]
        },
        {
          "names": [
            "-q"
          ],
          "description": "Quiet mode.  Causes most warning and diagnostic messages to be suppressed"
        },
        {
          "names": [
            "-R"
          ],
          "description": "Specifies that the given port on the remote (server) host is to be forwarded to the given host and port on the local side",
          "args": [
            {
              "name": "port:host:hostport",
              "description": "Local port, followed by host and host port to forward to"
            }
          ]
        },
        {
          "names": [
            "-S"
          ],
          "description": "Specifies the location of a control socket for connection sharing, or the string 'none' to disable connection sharing",
          "args": [
            {
              "name": "ctl_path",
              "description": "Location of the control socket",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "-s"
          ],
          "description": "May be used to request invocation of a subsystem on the remote system"
        },
        {
          "names": [
            "-T"
          ],
          "description": "Disable pseudo-tty allocation"
        },
        {
          "names": [
            "-t"
          ],
          "description": "Force pseudo-tty allocation",
          "isRepeatable": -1
        },
        {
          "names": [
            "-V"
          ],
          "description": "Display the version number and exit"
        },
        {
          "names": [
            "-v"
          ],
          "description": "Verbose mode.  Causes ssh to print debugging messages about its progress",
          "isRepeatable": 3
        },
        {
          "names": [
            "-W"
          ],
          "description": "Requests that standard input and output on the client be forwarded to host on port over the secure channel",
          "args": [
            {
              "name": "host:port",
              "description": "Host and port to forward to"
            }
          ]
        },
        {
          "names": [
            "-w"
          ],
          "description": "Requests tunnel device forwarding with the specified tun(4) devices between the client (local_tun) and the server (remote_tun)",
          "args": [
            {
              "name": "local tun",
              "description": "Local device to forward to"
            }
          ]
        },
        {
          "names": [
            "-X"
          ],
          "description": "Enables X11 forwarding"
        },
        {
          "names": [
            "-x"
          ],
          "description": "Disables X11 forwarding"
        },
        {
          "names": [
            "-Y"
          ],
          "description": "Enables trusted X11 forwarding"
        },
        {
          "names": [
            "-y"
          ],
          "description": "Send log information using the syslog(3) system module"
        }
      ],
      "args": [
        {
          "name": "user@hostname",
          "description": "Address of remote machine to log into",
          "generators": [
            {
              "script": [
                "tsh",
                "ls",
                "--format=json"
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "aws",
      "description": "Access AWS API",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ]
    },
    {
      "name": "apps",
      "description": "View and control proxied applications",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ],
      "subcommands": [
        {
          "name": "ls",
          "description": "List available applications",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "login",
          "description": "Retrieve short-lived certificate for an app",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "logout",
          "description": "Remove app certificate",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "config",
          "description": "Print app connection information",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        }
      ]
    },
    {
      "name": "proxy",
      "description": "Run local TLS proxy allowing connecting to Teleport in single-port mode",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ],
      "subcommands": [
        {
          "name": "ssh",
          "description": "Start local TLS proxy for ssh connections when using Teleport in single-port mode",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "db",
          "description": "Start local TLS proxy for database connections when using Teleport in single-port mode",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        }
      ]
    },
    {
      "name": "db",
      "description": "View and control proxied databases",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ],
      "subcommands": [
        {
          "name": "ls",
          "description": "List all available databases",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "login",
          "description": "Retrieve credentials for a database",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "logout",
          "description": "Remove database credentials",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "env",
          "description": "Print environment variables for the configured database",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "config",
          "description": "Print database connection information. Useful when configuring GUI clients",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "connect",
          "description": "Connect   Connect to a database",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        }
      ]
    },
    {
      "name": "join",
      "description": "Join the active SSH session",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ]
    },
    {
      "name": "play",
      "description": "Replay the recorded SSH session",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ]
    },
    {
      "name": "scp",
      "description": "Secure file copy",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ]
    },
    {
      "name": "ls",
      "description": "List remote SSH nodes",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ]
    },
    {
      "name": "clusters",
      "description": "List available Teleport clusters",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ]
    },
    {
      "name": "login",
      "description": "Log in to a cluster and retrieve the session certificate",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ]
    },
    {
      "name": "logout",
      "description": "Delete a cluster certificate",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ]
    },
    {
      "name": "status",
      "description": "Display the list of proxy servers and retrieved certificates",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ]
    },
    {
      "name": "env",
      "description": "Print commands to set Teleport session environment variables",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ]
    },
    {
      "name": "request",
      "description": "Manage access requests",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ],
      "subcommands": [
        {
          "name": "ls",
          "description": "List access requests",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "show",
          "description": "Show request details",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "new",
          "description": "Create a new access request",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "review",
          "description": "Review an access request",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        }
      ]
    },
    {
      "name": "kube",
      "description": "Manage available kubernetes clusters",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ],
      "subcommands": [
        {
          "name": "ls",
          "description": "Get a list of kubernetes clusters",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "login",
          "description": "Login to a kubernetes cluster",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "sessions",
          "description": "Get a list of active kubernetes sessions",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "exec",
          "description": "Execute a command in a kubernetes pod",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "join",
          "description": "Join an active Kubernetes session",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        }
      ]
    },
    {
      "name": "mfa",
      "description": "Manage multi-factor authentication (MFA) devices",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ],
      "subcommands": [
        {
          "name": "ls",
          "description": "Get a list of registered MFA devices",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "add",
          "description": "Add a new MFA device",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        },
        {
          "name": "rm",
          "description": "Remove a MFA device",
          "options": [
            {
              "names": [
                "-l",
                "--login"
              ],
              "description": "Remote host login"
            },
            {
              "names": [
                "--proxy"
              ],
              "description": "SSH proxy address",
              "args": [
                {
                  "name": "Teleport proxy address",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "clusters",
                        "--format=json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--user"
              ],
              "description": "SSH proxy user",
              "args": [
                {
                  "name": "user",
                  "generators": [
                    {
                      "script": [
                        "tsh",
                        "status",
                        "--format",
                        "json"
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "names": [
                "--ttl"
              ],
              "description": "Minutes to live for a SSH session",
              "args": [
                {
                  "name": "time"
                }
              ]
            },
            {
              "names": [
                "-i",
                "--identity"
              ],
              "description": "Identity file",
              "args": [
                {
                  "name": "file",
                  "template": "filepaths"
                }
              ]
            },
            {
              "names": [
                "--cert-format"
              ],
              "description": "SSH certificate format",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--insecure"
              ],
              "description": "Do not verify server's certificate and host name. Use only in test environments"
            },
            {
              "names": [
                "--auth"
              ],
              "description": "Specify the name of authentication connector to use",
              "args": [
                {}
              ]
            },
            {
              "names": [
                "--skip-version-check"
              ],
              "description": "Skip version checking between server and client"
            },
            {
              "names": [
                "-d",
                "--debug"
              ],
              "description": "Verbose logging to stdout"
            },
            {
              "names": [
                "-k",
                "--add-keys-to-agent"
              ],
              "description": "Controls how keys are handled. Valid values are [auto no yes only]"
            },
            {
              "names": [
                "--enable-escape-sequences"
              ],
              "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
            },
            {
              "names": [
                "--bind-addr"
              ],
              "description": "Override host:port used when opening a browser for cluster logins"
            },
            {
              "names": [
                "-J",
                "--jumphost"
              ],
              "description": "SSH jumphost"
            },
            {
              "names": [
                "-f",
                "--format"
              ],
              "description": "Format output",
              "args": [
                {
                  "name": "format",
                  "suggestions": [
                    "text",
                    "json",
                    "yaml"
                  ]
                }
              ]
            },
            {
              "names": [
                "-q",
                "--quiet"
              ],
              "description": "Quiet mode"
            }
          ]
        }
      ]
    },
    {
      "name": "config",
      "description": "Print OpenSSH configuration details",
      "options": [
        {
          "names": [
            "-l",
            "--login"
          ],
          "description": "Remote host login"
        },
        {
          "names": [
            "--proxy"
          ],
          "description": "SSH proxy address",
          "args": [
            {
              "name": "Teleport proxy address",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "clusters",
                    "--format=json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--user"
          ],
          "description": "SSH proxy user",
          "args": [
            {
              "name": "user",
              "generators": [
                {
                  "script": [
                    "tsh",
                    "status",
                    "--format",
                    "json"
                  ]
                }
              ]
            }
          ]
        },
        {
          "names": [
            "--ttl"
          ],
          "description": "Minutes to live for a SSH session",
          "args": [
            {
              "name": "time"
            }
          ]
        },
        {
          "names": [
            "-i",
            "--identity"
          ],
          "description": "Identity file",
          "args": [
            {
              "name": "file",
              "template": "filepaths"
            }
          ]
        },
        {
          "names": [
            "--cert-format"
          ],
          "description": "SSH certificate format",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--insecure"
          ],
          "description": "Do not verify server's certificate and host name. Use only in test environments"
        },
        {
          "names": [
            "--auth"
          ],
          "description": "Specify the name of authentication connector to use",
          "args": [
            {}
          ]
        },
        {
          "names": [
            "--skip-version-check"
          ],
          "description": "Skip version checking between server and client"
        },
        {
          "names": [
            "-d",
            "--debug"
          ],
          "description": "Verbose logging to stdout"
        },
        {
          "names": [
            "-k",
            "--add-keys-to-agent"
          ],
          "description": "Controls how keys are handled. Valid values are [auto no yes only]"
        },
        {
          "names": [
            "--enable-escape-sequences"
          ],
          "description": "Enable support for SSH escape sequences. Type '~?' during an SSH session to list supported sequences. Default is enabled"
        },
        {
          "names": [
            "--bind-addr"
          ],
          "description": "Override host:port used when opening a browser for cluster logins"
        },
        {
          "names": [
            "-J",
            "--jumphost"
          ],
          "description": "SSH jumphost"
        },
        {
          "names": [
            "-f",
            "--format"
          ],
          "description": "Format output",
          "args": [
            {
              "name": "format",
              "suggestions": [
                "text",
                "json",
                "yaml"
              ]
            }
          ]
        },
        {
          "names": [
            "-q",
            "--quiet"
          ],
          "description": "Quiet mode"
        }
      ]
    }
  ]
}
