id = "mycli"
name = "mycli"
homepage = "https://www.mycli.net"
description = "Rich MySQL terminal client with auto-completion, syntax highlighting, and dataframes."
executables = ["mycli"]
[dotfiles]
paths = ["~/.myclirc"]
exclude = [
"~/.mycli-history",
"~/.mycli.log",
"~/.mycli-audit.log",
]
secret = []
side_effect = false
[commands]
format = 1
label = "Connect to MySQL"
description = "Open the mycli prompt on a MySQL server, or run one statement and quit. The password is left out so it is not typed into the command line; mycli prompts or reads it from its config."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.source]]
id = "src"
kind = "help"
url = "https://github.com/dbcli/mycli/blob/main/mycli/main.py"
revision = "main (2026-10-27)"
evidence = """'-h', '--hostname', help='Host address of the MySQL server.'
'-P', help='Port number on the MySQL server.'
'-u', '--user', '--username', help='User name to connect to the MySQL server.'
'-S', metavar='PATH', help='Socket path to connect to the MySQL server.'
'-D', '--database', help='Database or DSN to use for the connection.'
'-d', help='DSN alias configured in the ~/.myclirc file, or a full DSN.'
'-e', help='Execute command and quit.'"""
[[commands.field]]
id = "host"
label = "Host"
type = "string"
option = ["--hostname", "-h"]
sources = ["src"]
[[commands.field]]
id = "port"
label = "Port"
type = "integer"
option = ["-P"]
sources = ["src"]
[[commands.field]]
id = "user"
label = "User"
type = "string"
option = ["--user", "--username", "-u"]
sources = ["src"]
[[commands.field]]
id = "socket"
label = "Unix socket"
type = "path"
path = { kind = "file", role = "input" }
option = ["-S"]
sources = ["src"]
[[commands.field]]
id = "database"
label = "Database"
type = "string"
option = ["--database", "-D"]
sources = ["src"]
[[commands.field]]
id = "dsn"
label = "DSN alias"
type = "string"
option = ["-d"]
sources = ["src"]
[[commands.field]]
id = "execute"
label = "Run statement and quit"
type = "string"
option = ["-e"]
sources = ["src"]
[[commands.task]]
id = "connect"
label = "Connect to a server"
fields = ["host", "port", "user", "database"]
required = ["host"]
[[commands.task]]
id = "alias"
label = "Connect by DSN alias"
fields = ["dsn", "database"]
required = ["dsn"]
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["host", "port", "user", "database", "dsn"]
[[commands.group]]
id = "advanced"
label = "Advanced"
fields = ["socket", "execute"]