Safe by default, private by design.
k8sman runs on your machine, talks to your clusters with your credentials, and nothing else. Here's exactly what that means.
How k8sman keeps you safe.
Local only, and locked
The embedded backend listens on 127.0.0.1 on a random port, and every request must carry a secret token generated at each launch. Foreign Host and Origin headers are rejected.
No telemetry
No analytics, crash reporting or usage tracking. Ever.
Confirmations name the context
Every mutating action says which context it will change, and warns when that isn't a local cluster.
Production starts read-only
Contexts named prod, production or prd are read-only until you unlock them. The backend enforces it with HTTP 403, not just the UI.
Credentials stay put
The kubeconfig listing returns only paths and context names. Tokens travel in request bodies, so they never reach the logs.
Local shells run as you
A local shell tab is your own login shell. Read-only mode can't restrict what you run there, and the tab says so.
Every outbound request
Besides your clusters, k8sman only ever makes these requests:
- The periodic update check, which you can turn off.
- CRD icon favicons, only for local clusters by default.
- Chart repositories, when you install an add-on.
- The Argo CD API, when you connect it.
trivy's own vulnerability database download, when you scan.
Argo CD tokens
With an argocd login, the token stays in the argocd CLI's own config: k8sman reads it when needed and never copies it. A pasted token is stored in ~/.config/k8sman/settings.json with mode 0600.
Why there's no App Sandbox
k8sman must read ~/.kube and cloud credentials and run exec auth plugins, which the macOS App Sandbox forbids, so the app runs unsandboxed.
Links you share
k8sman's Copy link points at k8sman.dev/o/. The cluster stays in the part of the link after #, which browsers never send to a server, so this site never learns which cluster a link is for. Opening a link only navigates k8sman to the object; it never changes anything in your cluster.