_____ _ ___ | ___| |_ ___ __/ _ \ ___ | |_ | | | | \ \/ / (_) / __| | _| | | |_| |> < \__, \__ \ |_| |_|\__,_/_/\_\ /_/|___/
A K9s-inspired terminal UI for Flux resources, controller health, and GitOps state
Watch flux9s in action - navigate resources, view details, and manage your Flux deployments
-
Crates.io Downloads
-
GitHub Stars
-
GitHub Downloads
-
Releases
What flux9s is
flux9s is a terminal UI for operators who want live visibility into Flux resources and the cluster state around them without leaving the shell. It watches Flux resources in real time, keeps a local in-memory view of their current state, and lets you move quickly between lists, details, YAML, traces, graphs, and reconciliation history.
The project is intentionally keyboard-first and closely follows familiar K9s patterns: j/k navigation, : command mode, context and namespace switching, footer help, and k9s-style skins.
The problem it solves
Flux already provides strong controller APIs, and the Flux Operator Web UI is an excellent browser-based experience for dashboards and cluster-wide visibility. flux9s was built to complement that workflow, not replace it.
Use flux9s when you want to stay in the terminal and:
- see Flux reconciliation state update live
- inspect Kustomizations, HelmReleases, sources, and Flux Operator resources in one place
- trace ownership chains and visualize managed workloads
- check controller readiness and Flux bundle version from the same interface
- run quick actions such as suspend, resume, reconcile, reconcile-with-source, and delete
Why it stays fast
flux9s uses the Kubernetes Watch API for supported Flux resource types instead of repeatedly polling. By default it starts scoped to a namespace, with the default configuration targeting flux-system, and only switches to cluster-wide watches when you explicitly choose all. That keeps API usage and terminal updates lighter on larger clusters.
The same watch-driven model is also used to surface Flux controller pod state and deployment metadata in the header, which is how the UI can show controller readiness and the detected Flux bundle version alongside resource health.
Built for Flux and Flux Operator
Beyond core Flux controller resources, flux9s also understands Flux Operator resources such as FluxInstance, ResourceSet, ResourceSetInputProvider, and FluxReport. That support shows up in practical features, not just extra rows in a table: graph and history views extend to operator-managed resources, and the graph builder follows the same relationship-discovery patterns used by the Flux Operator Web UI.
For a deeper code-level walkthrough, see the Developer Guide. If you want to get running quickly, jump to Getting Started.