Skip to content
Docs · Documentation

Reference

Coming from k9s

Map your k9s habits to Kubyl.

Kubyl's keyboard model is close to k9s on purpose. Set the preset and most of your muscle memory works:

settings.json
{
  "keymap": { "preset": "k9s" }
}

What carries over

In k9sIn Kubyl
:pods, :po, :deployThe same, in the command palette with :.
:ctx, :nsAlso supported, next to @ and # prefixes.
0Shows all namespaces (k9s preset).
:qQuits.
/ filterThe same, with richer syntax: regex, labels, field selectors.
d, e, l, s, yDescribe, edit YAML, logs, shell, copy.
Shift-FPort-forward.
Ctrl-D, Ctrl-KDelete, kill.
rRollout restart.
?Opens the actions palette (k9s preset).
Ctrl-F, Ctrl-BPage down and up (default keymap). Ctrl-U is page up in the k9s preset; Ctrl-D stays delete, as in k9s.
Esc, [, -Back (k9s preset). ] goes forward.
Space to mark rowsThe same: Space marks, Mod A selects all, then act on all marked rows.

What's different

  • It's a window, not a TUI. You get tabs, splits, docks and a details panel, and the mouse works everywhere.
  • Contexts and namespaces are palette prefixes (@, #), not separate screens, and favorites span clusters.
  • Safety is per cluster. Mark contexts as production or read-only instead of relying on habit.
  • There is no xray view yet (:xray is recognised but not implemented). Features that k9s leaves to plugins are built in: Argo CD, Flux, Helm, alerts, OperatorHub and AI agents.
  • Settings are JSON with a schema, not YAML files spread across directories. See Settings.

Something missing or wrong? Open an issue on GitHub.