A human-friendly, read-only, live Kubernetes dashboard for cluster operators and application developers.
kd draws your cluster for the human eye — related resources side by side, sizes drawn to scale,
problems standing out in color — so you debug at a glance instead of through a maze of kubectl commands.
There are three main views: Relationship, Nodes, and Kind.
An ArgoCD-style tree, with resources linked by their relationships. See at a glance which resource creates or references which one.
Pick which links to draw: ownership, network, volumes, RBAC, disruption, or monitoring. Custom resources show up too — Workflows, Certificates, ArgoCD Applications, and anything else a CRD defines, down to their Pods.
All bars are drawn to one shared scale: a node with twice the capacity gets a bar twice as long, and so does a pod using twice the memory. Big things look big and small things look small, just as you would expect. Use this view to instantly spot which nodes and pods use the most CPU and memory.
Every resource in the namespace is shown, grouped by its kind. Use this view to find a resource by its kind.
kd reads your kubeconfig and serves the dashboard on http://localhost:9123/.
- Download and run the
kdbinary from the latest GitHub Releases - If you have Nix (flakes enabled):
nix run github:motoki317/kd
helm install kd oci://ghcr.io/motoki317/charts/kd --namespace kd --create-namespaceThe chart runs the official multi-arch image ghcr.io/motoki317/kd as a read-only Deployment
behind a forward-auth proxy. To build your own image instead: docker build -t <ref> . (one
static image, web embedded), then set image.repository.
kd has no login of its own. It trusts a user header (X-Forwarded-User) from your proxy and checks
access with a policy.yaml file — roles bundle allow/deny rules, users and groups are assigned
roles, and the file is reloaded when it changes. See charts/kd/README.md
for the format, the full setup, and every value.
You need Go 1.26+, Node 24+, and a working kubectl context. With Nix, nix develop sets up the tools.
just dev # API on :9123, web on :5173 — open http://localhost:5173To build and run the real binary:
just build
./kd # Web on :9123Client changes follow the design language and client gotchas.



