@@ -120,13 +120,21 @@ k10s --version # which build is this
120120
121121### Every resource, grouped the way you think about them
122122
123- 16 kinds across ** Workloads · Network · Config · Storage · Cluster · Custom
124- Resources** , each with a live row count for the current namespace. Your CRDs
125- are discovered automatically - no configuration.
126-
127- Pods · Deployments · StatefulSets · DaemonSets · Jobs · CronJobs · Services ·
128- Ingresses · ConfigMaps · Secrets · PVCs · Nodes · Namespaces · Events · CRDs ·
129- Custom Resources
123+ 30 kinds across ** Workloads · Network · Config · Storage · RBAC · Cluster ·
124+ Custom Resources** , each with a live row count for the current namespace.
125+ Your CRDs are discovered automatically - no configuration.
126+
127+ Groups fold: ` space ` , ` left ` or a click on the header, remembered across
128+ restarts, with Config/Storage/RBAC folded to begin with. A folded group also
129+ asks your cluster for nothing - the sidebar is what decides which kinds get
130+ counted, and counting is one ` limit=1 ` request per * visible* kind, six at a
131+ time, with refusals remembered.
132+
133+ Pods · Deployments · ReplicaSets · StatefulSets · DaemonSets · Jobs ·
134+ CronJobs · HPAs · Services · Endpoints · Ingresses · NetworkPolicies ·
135+ ConfigMaps · Secrets · ResourceQuotas · LimitRanges · PDBs · PVCs · PVs ·
136+ StorageClasses · ServiceAccounts · Roles · RoleBindings · ClusterRoles ·
137+ ClusterRoleBindings · Nodes · Namespaces · Events · CRDs · Custom Resources
130138
131139### The whole day-2 toolkit, on single keys
132140
@@ -194,8 +202,8 @@ path, so [adding a theme is one struct](docs/themes.md).
194202- ** An honest loading state** instead of "no resources found" while a watch
195203 is still syncing.
196204- ** Namespace and context pickers that never ask you to type a name.**
197- - ** First-run onboarding ** asks what you call kubectl ( ` kubectl ` / ` k8s ` / ` k ` /
198- your own alias) and uses it in every hint from then on .
205+ - ** No setup screen. ** First run opens the cluster; every setting has a
206+ working default and ` /settings ` is one keystroke away when you want it .
199207- ** A grow-able prompt** (` ctrl+z ` ) - because a long kubectl line or an AI
200208 question does not fit in a one-row field that scrolls sideways.
201209- ** A terminal-too-small notice** instead of a garbled layout.
@@ -244,22 +252,51 @@ The short version - the [full reference is here](docs/keybindings.md).
244252
245253## Commands
246254
247- Two prefixes, and each one only ever shows its own set. ** ` / ` does
248- something. ` : ` narrows what is on screen.** ` enter ` runs the highlighted
249- suggestion immediately - no second trip through the prompt.
255+ Two prefixes, and each one only ever shows its own set. ** ` / ` is k10s itself
256+ (theme, settings, updates). ` : ` is the cluster, in the k9s vocabulary** - a
257+ resource view, the namespace, the context, or something acting on what is on
258+ screen. ` enter ` runs the highlighted suggestion immediately - no second trip
259+ through the prompt.
250260
251261```
252- /ns /context /theme /settings /update /version /help
253- :search <term> :filter <term> :scale <n> :mouse
262+ /theme /settings /update /version /help k10s itself
263+
264+ :po :deploy :rs :sts :ds :job :cj :hpa workloads
265+ :svc :ep :ing :netpol network
266+ :cm :sec :quota :limits :pdb config
267+ :pvc :pv :sc storage
268+ :sa :role :rb :crole :crb rbac
269+ :no :ns :ev :crd :cr cluster + custom
270+
271+ the short form is what the popup lists; every kind also answers to its
272+ plural and singular - :pods, :pod, :deployments, :persistentvolumes ...
273+ and `:aliases` prints the lot
274+
275+ :po kube-system that kind, in that namespace (`all` works)
276+ :svc api an argument that is not a namespace filters
277+ :ns :ctx namespace / context picker
278+ :ns <name> :ctx <name> switch either outright
279+ :aliases :search <term> :filter <term> :scale <n> :mouse :q
254280```
255281
256- None of ` /ns ` , ` /context ` or ` /theme ` takes a name - each opens a chooser
257- showing what actually exists. [ Full command reference] ( docs/commands.md ) .
282+ ** ` / ` is k10s, ` : ` is the cluster** - namespace and context are ` :ns ` and
283+ ` :ctx ` , not ` /ns ` and ` /context ` . ` :aliases ` prints the whole ` : ` vocabulary.
284+
285+ Anything that is not a ` / ` or ` : ` command ** runs as a shell command** and its
286+ output opens in the main panel - ` date ` , ` kubectl get pods -o wide ` ,
287+ ` helm list ` . Run through your own ` $SHELL ` , capped at 30s, with no terminal
288+ attached (use ` s ` on a pod for an interactive shell).
289+ [ Full command reference] ( docs/commands.md ) .
258290
259291## Config
260292
261- Theme, context, namespace, AI settings and the update check persist to
262- ` ~/.k10s/config.yaml ` (override with ` K10S_CONFIG ` ), saved on every change.
293+ k10s opens on ** kubeconfig's current-context** — the cluster ` kubectl ` would
294+ talk to. ` :ctx <name> ` switches for the session without touching kubeconfig;
295+ ` kubectl config use-context ` is what changes where it opens next time.
296+
297+ Theme, namespace, folded sidebar groups, AI settings and the update check
298+ persist to ` ~/.k10s/config.yaml ` (override with ` K10S_CONFIG ` ), saved on
299+ every change.
263300See [ config.md] ( docs/config.md ) .
264301
265302> ** Note:** the AI API key is stored as plain text in that file (mode 0600)
0 commit comments