Skip to content

Coming from k9s

Migrate from k9s to Kubyl

If your hands know :pods, / and l, Kubyl won't slow you down. Switch on the k9s keymap preset and keep your muscle memory, then add the things a terminal UI can't do: tabs, split panes, a details panel and the mouse.

  • k9s keymap preset
  • Reads ~/.kube/config
  • Free and open source

k9s facts last checked on 14 October 2026.

The short version

Both are free and open source. k9s lives in your terminal and works over SSH. Kubyl is a native desktop app with the same command and key model, plus built-in Argo CD, Flux, Helm, alerts and network flows. Kubyl has no xray view, no plugin system, no skins and no benchmark runner yet.

Feature comparison

Kubyl and k9s, feature by feature

Not every row is a perfect match. A tick means Kubyl has a feature that does the same job, not an identical one. Half circles mark partial or different solutions. The table is a selection of features, not a complete list.

  • Available
  • Partly or different
  • Not available
  • Not applicable
  • Not free
Everyday cluster work: Kubyl compared with k9s
FeatureKubylk9s
Live resource views with filter
Available

Watch-backed tables. / filters with regex, label and field selectors.

Available
: commands for kinds, contexts and namespaces
Available

:pods, :po, :deploy, :ctx, :ns, plus @ for contexts and # for namespaces.

Available
Logs
Available

Streaming, search and log-level detection.

Available
Shell into a container
Available
Available
Port-forwarding
Available

Shift-F on a pod, service or workload, or Alt-Shift-F to forward the first port in one click. Pick ports from a list, open the browser when the tunnel is up, save forwards and restart them when the cluster connects. Service forwards survive pod restarts.

Available

Shift-F. Forwards last for the k9s session.

Describe, edit YAML, delete, kill
Available

d, e, Ctrl-D, Ctrl-K. YAML edits are validated against the cluster's schema and shown as a diff before apply.

Available
Mark several rows and act on them
Available

Space marks, then act on all marked rows.

Available
Jump to the owning resource
Partly or different

The details panel shows the owner chain as links. There is no Shift-J shortcut.

Available
Read-only mode
Available

Per cluster, plus a production mode that asks for the cluster's name before changes.

Available

--readonly flag.

Save a table to a file
Available

CSV export of any resource table.

Available

Ctrl-S.

Cluster and namespace dashboards
Available

KPI tiles, CPU and memory charts by namespace, node cordon and drain, events and a namespace overview with workload health.

Partly or different

A Pulses view (:pulses).

Metrics from Prometheus
Available

Uses Prometheus when it finds one and falls back to metrics-server. Sparklines in the tables, history in the charts.

Not available

Prometheus isn't mentioned in k9s's documentation.

Grafana, Prometheus and other in-cluster web UIs inside the app
Available

Opened over a temporary port-forward, with sign-in for Basic auth.

Not available

Forward the port, then open a browser yourself.

Pod file browser with drag and drop
Available

Two-pane file manager between your machine and a container.

Not available

Not in k9s's documentation. You can shell in with s.

Argo CD and Flux views
Available

Argo CD applications, resource tree, diff, sync, history and rollback; Flux sources, Kustomizations and HelmReleases.

Not available

Not built in. Plugins can run external tools.

Alertmanager alerts and silences
Available

Grouped alerts, silences, alerting rules and the heartbeat check.

Not available

Not in k9s's documentation.

Network flows (Hubble, NetObserv, Calico)
Available

As a table and a live topology graph.

Not available

Not in k9s's documentation.

Operators, OperatorHub and cluster updates
Available

OLM v0 and v1, plus update paths and pre-flight checks for OpenShift and managed clusters.

Not available

Not in k9s's documentation.

Cost monitoring
Available

OpenCost: cost per namespace, idle spend and efficiency. Needs OpenCost and Prometheus in the cluster.

Not available

Not in k9s's documentation.

AI agent with read-only cluster tools
Available

Bring your own: Claude, Codex, Gemini CLI, GitHub Copilot and others.

Not available

Not in k9s's documentation.

Kubeconfig editor with connection test
Available
Not available

Not in k9s's documentation.

Tabs, split panes and a details panel
Available

The mouse works everywhere.

Partly or different

Mouse support is an option that is off by default. Tabs and split panes aren't in the documentation.

k9s column: k9s on GitHub ( github.com/derailed/k9s), read on 14 October 2026.

Your keys, in Kubyl

Set "keymap": { "preset": "k9s" } in settings.json and these work as you expect.

In k9sIn Kubyl
:pods, :po, :deployThe same, in the command palette with :.
:ctx, :nsAlso supported, next to @ and # prefixes.
0Shows all namespaces (k9s preset).
/ 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.
?Opens the actions palette (k9s preset).
Esc, [, -Back (k9s preset). ] goes forward.
Space to mark rowsThe same: Space marks, then act on all marked rows.

What Kubyl adds

Built into the app:

  • Tabs, split panes, a details panel and the mouse, including drag and drop to and from pods
  • Argo CD: applications, resource tree, diff, sync, history and rollback
  • Flux CD: sources, Kustomizations and HelmReleases
  • Helm charts and releases, operators and OperatorHub
  • Alerts, network flows, Prometheus UI and cluster updates
  • A kubeconfig editor with connection tests and OIDC sign-in
  • Security Center (Trivy Operator) and cost monitoring (OpenCost)

See everything on the Kubyl Desktop page or in the documentation.

How to move from k9s to Kubyl

  1. Install Kubyl

    On macOS run brew install --cask birkneralex/tap/kubyl, on Windows winget install BirknerAlex.Kubyl. Linux packages and direct downloads are on the downloads page.

  2. Open it

    Kubyl loads ~/.kube/config and $KUBECONFIG on start. Your contexts are the same ones k9s shows.

  3. Switch on the k9s keymap

    Open settings with App: Open Settings and add "keymap": { "preset": "k9s" }. The file reloads live.

  4. Press `:`

    Type a kind, like :pods, and you are in a live table. Press Mod+K for the full palette.

  5. Mark production clusters

    Production and read-only flags are per cluster. See Production and read-only.

Frequently asked questions

Can I use my k9s key bindings in Kubyl?

Mostly. Kubyl ships a k9s keymap preset: : commands, / filter, d, e, l, s, y, Shift-F, Ctrl-D, Ctrl-K, 0 for all namespaces and Esc for back. k9s hotkey files aren't read; custom bindings go into settings.json.

Does Kubyl use my k9s config?

No. Kubyl reads your kubeconfig, not k9s's config, aliases, plugins or skins. Its own settings are one JSON file with a schema.

Is Kubyl free like k9s?

Yes. k9s is Apache-2.0. Kubyl is MIT or Apache-2.0 and free for everyone, companies included.

Can Kubyl run in a terminal or over SSH?

No. Kubyl is a native desktop app for macOS, Windows and Linux. Keep k9s for remote sessions.

Does Kubyl have the xray view?

Not yet. :xray is recognised but not implemented.

Try Kubyl with your own clusters.

Free, no account, no telemetry. It reads your kubeconfigs, so you can be looking at a pod list in a minute.

k9s is an open-source project of its authors, licensed under Apache-2.0. Kubyl is an independent project and is not affiliated with or endorsed by the k9s project. Product names are used only to identify the products they belong to. k9s facts were read from github.com/derailed/k9s on 14 October 2026 and can have changed since. Tell us if something is out of date: hello@birkner.io.