Skip to content
← Tools / Skills
ToolFernand Galiana (derailed)/10 trustMetrics-checked

k9s

A terminal UI for Kubernetes that replaces dozens of kubectl commands with keystrokes.

Visit official site →

About

k9s is a terminal UI for managing Kubernetes clusters by Fernand Galiana, written in Go and licensed Apache-2.0. Instead of typing repetitive kubectl commands, you get a live, keyboard-driven dashboard: browse pods, services, deployments, and namespaces with aliases like :po and :svc, filter resources in real time, tail logs, exec into pod shells, describe resources, edit manifests, and restart workloads with single keystrokes. It watches the cluster continuously, so state changes appear without refreshing.

Power features include context and namespace switching, a plugin system and aliases for custom commands, skins and themes, port-forwarding, and RBAC awareness so it respects the permissions of your kubeconfig. It is widely described in the DevOps community as the de facto standard Kubernetes TUI. No independent performance benchmarks were found; the speed claims are provider-stated and consistent with a Go binary driving the watch API. Installation is a package-manager one-liner, and it reads your existing ~/.kube/config.

What it can do

  • Live terminal dashboard for all Kubernetes resources
  • Resource aliases (:po, :svc, :ns) and real-time filtering
  • Log tailing, pod shell exec, describe, edit, restart
  • Context and namespace switching without leaving the UI
  • Custom plugins and command aliases
  • Skins and themes
  • Port-forwarding from the UI
  • RBAC-aware: respects kubeconfig permissions
  • Cross-platform: macOS, Linux, Windows

Setup

Install via Homebrew (brew install derailed/k9s/k9s), Chocolatey, snap, the k9s apt/dnf repos, or a release binary. Run k9s to start with your current context, k9s --context name for a specific cluster, k9s -n namespace for a namespace. It reads ~/.kube/config automatically. Press : for command mode, / to filter, ? for the keybinding help.

Prerequisites

A working Kubernetes kubeconfig for the clusters you want to inspect; kubectl-level RBAC permissions determine what you can do.

Use cases

kubernetes-managementcluster-debuggingpod-logsdevops-workflowmulti-cluster-ops

Works with

devopssreplatform-engineersbackend-engineers

Trust score — 8/10

/10 trustMetrics-checked

Scored 8/10 (metrics tier, metrics-v1). Evidence: ~34.8k GitHub stars with commits pushed October 15, 2026; independent guides confirm the live resource dashboard, :po/:svc navigation, log tailing, pod exec, context switching, plugins, and kubeconfig-based setup. Strengths: the de facto standard K8s TUI with very high DevOps/SRE adoption, active maintenance, respects RBAC. Docked for: (1) speed claims are provider-stated with no published independent benchmarks; (2) beginners can find the alias/shortcut vocabulary opaque at first; (3) it is read-mostly by design — complex edits still belong in kubectl or GitOps. License: Apache-2.0.

★ 34,822 GitHub stars

How the trust score is built

Full methodology →
Adoption · stars/downloads, log-scaled vs peers
8.0/10
Maintenance · recency, releases, issue load
9.0/10
Openness · license + docs
9.0/10
Manual review · sanity read + red-flag check
8.0/10
  • · ~34.8k GitHub stars (Oct 16, 2026 snapshot), commits pushed Oct 15, 2026; by Fernand Galiana; Go
  • · Live K8s dashboard; :po/:svc/:ns aliases; log tail; pod exec; context switching; plugins; skins; RBAC-aware
  • · Alias vocabulary opaque to beginners; read-mostly design; speed claims provider-stated

Sources

Every fact above was checked against these sources. Where a claim comes from the provider and couldn't be independently verified, the text says so.