k9s alternative

The k9s loop, without the key bindings

k9s is excellent and it is a terminal UI, which means the speed comes from muscle memory you have to build first. Tempest gives you the same daily loop — namespace, pod, logs, shell — in a normal interface, next to the SSH sessions for the nodes underneath.

macOS, Windows, Linux, Android & iOS. Kubernetes is a Pro feature.

Tempest vs k9s

Two tools for the same loop, with different trade-offs.

Tempest k9s
Interface GUI with tabs and split panes Terminal UI with key bindings
Pods, logs, exec Yes Yes
Node shell Yes, privileged Via plugins
All resource types Pods and nodes in the browser; the rest in a cluster shell Everything kubectl can see
Runs over SSH on a jump box No — it is a desktop app Yes, it is a binary
SSH to the nodes Same app, same host list No
Kubeconfig sync Zero-knowledge E2E encrypted Local files
Mobile Android & iOS None

k9s is free, open source, and runs anywhere a binary runs — including the bastion where your cluster access actually lives. That is a real advantage this does not have.

The same loop

Namespace, pod, logs, shell — one click each

The four things a k9s session is almost always doing, without the learning curve for someone who opens a cluster twice a week. Right-click the pod and pick the verb.

Namespaces on the rail, pods in the table, filter as you type.
Logs and exec each open as a pane you can split alongside the others, and attach gets you onto the process already running as PID 1. Split screens
Override the shell command for images that do not ship bash.
Nodes with roles, state and IPs when the problem is below the pod. Kubernetes profiles
Pods listed by namespace in the Tempest cluster browser, with ready state, status, restarts and age

The classic tools

And k9s itself, in a pane

Nothing here takes your tools away. The cluster shell is a real shell with KUBECONFIG already pointed at the profile you picked — so k9s, kubectl, helm and kustomize run against the right cluster, in the same window as everything else.

For CRDs, deployments and the long tail, k9s in a pane is still the fastest thing there is.
The kubeconfig comes from the saved profile, is written per pane and removed when the pane closes. Pod shells never write it to disk at all — they speak the Kubernetes API directly.
Profiles sync zero-knowledge encrypted instead of being copied between laptops. How E2EE works
k9s running in a Tempest cluster shell beside a streaming log pane and the AI sidebar

What a TUI cannot do

The cluster is not the only thing you administer

The reason to use a desktop client is everything else in the host list — the database box, the switch, the CI runner, the node itself.

A node shell schedules a privileged scratch pod, steps into PID 1's namespaces, and deletes the pod when you close the session.
SSH to a node from the same list, through a bastion if that is how you get there. Jump host guide
Saved SSH port-forwarding rules for the things you reach through a host rather than through the cluster. Port forwarding guide

AI in the pane

An agent that reads what the container is printing

A key binding cannot read a log for you. Every session — pod shell, logs pane, cluster shell, node shell — is readable and drivable by the agent, so it works from the output in front of you.

It reads the live screen and types into it, with every tool call shown before it runs. AI agents guide
Outside agents get the same surface over MCP: Claude Code, Codex or Cursor can drive a pod shell in your running Tempest. Install the MCP server

Frequently asked questions

Does it cover every resource type like k9s?
No. Pods and nodes are what the browser shows. For CRDs, deployments and the long tail, open a cluster shell and run kubectl or k9s there — its KUBECONFIG already points at the profile you picked.
Can I still use kubectl?
Yes, and most people should for anything beyond the daily loop. The cluster shell exists for exactly that, and nothing here takes over your kubeconfig or your context.
Does it work on a remote jump box?
No — it is a desktop and mobile application, not a binary you scp to a bastion. If your cluster is only reachable from a jump host, k9s there is the better answer.
Is Kubernetes support free?
It is a Pro feature. SSH, Mosh, SFTP, FTP, S3 and WebDAV are in the free plan.
Does it work on EKS, GKE and AKS?
Yes, including exec-credential kubeconfigs, which is how those providers authenticate.

The loop you already run, one window wider.