id = "kubetui"
name = "Kubetui"
homepage = "https://github.com/sarub0b0/kubetui"
description = "An intuitive Terminal User Interface (TUI) tool for real-time monitoring and exploration of Kubernetes resources."
executables = ["kubetui"]
[dotfiles]
paths = ["[configHome]/kubetui/config.yaml"]
secret = []
side_effect = false
[commands]
format = 1
label = "Open Kubetui"
description = "Start the Kubernetes TUI on a chosen context, namespaces and layout. Pod/node column customisation and the completion subcommand are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.source]]
id = "help"
kind = "help"
url = "https://github.com/sarub0b0/kubetui/blob/main/README.md"
revision = "kubetui -h (README)"
evidence = """
-A, --all-namespaces[=<true|false>] Select all namespaces [default: false]
-c, --context <CONTEXT> Context
-C, --kubeconfig <KUBECONFIG> kubeconfig path
--clipboard <auto|system|osc52> Clipboard mode (auto, system, or osc52) [env: KUBETUI_CLIPBOARD=] [default: auto]
--config-file <CONFIG_FILE> Config file path
-l, --logging Logging
-n, --namespaces <NAMESPACES> Namespaces (e.g. -n val1,val2,val3 | -n val1 -n val2 -n val3)
-s, --split-direction <v|h> Window split direction [default: v]
"""
[[commands.field]]
id = "context"
label = "Context"
type = "string"
option = ["--context", "-c"]
sources = ["help"]
[[commands.field]]
id = "namespaces"
label = "Namespaces"
description = "Comma-separated list, e.g. dev,staging."
type = "string"
option = ["--namespaces", "-n"]
sources = ["help"]
[[commands.field]]
id = "all_namespaces"
label = "All namespaces"
type = "boolean"
option = ["--all-namespaces", "-A"]
sources = ["help"]
[[commands.field]]
id = "kubeconfig"
label = "Kubeconfig file"
type = "path"
path = { kind = "file", role = "input" }
option = ["--kubeconfig", "-C"]
sources = ["help"]
[[commands.field]]
id = "split_direction"
label = "Split direction"
type = "enum"
option = ["--split-direction", "-s"]
choices = [{ value = "v", label = "Vertical" }, { value = "h", label = "Horizontal" }]
sources = ["help"]
[[commands.field]]
id = "clipboard"
label = "Clipboard mode"
type = "enum"
option = ["--clipboard"]
choices = [{ value = "auto", label = "Auto" }, { value = "system", label = "System" }, { value = "osc52", label = "OSC 52" }]
sources = ["help"]
[[commands.field]]
id = "config_file"
label = "Config file"
type = "path"
path = { kind = "file", role = "input" }
option = ["--config-file"]
sources = ["help"]
[[commands.field]]
id = "logging"
label = "Enable logging"
type = "boolean"
option = ["--logging", "-l"]
sources = ["help"]
[[commands.task]]
id = "context_namespaces"
label = "Open a context and namespaces"
fields = ["context", "namespaces"]
required = ["context"]
[[commands.task]]
id = "all_namespaces"
label = "Watch all namespaces"
fields = ["context", "all_namespaces"]
required = []
set = { all_namespaces = [true] }
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["context", "namespaces", "all_namespaces", "kubeconfig", "split_direction"]
[[commands.group]]
id = "advanced"
label = "Advanced"
fields = ["clipboard", "config_file", "logging"]