Kubyl Desktop
Changelog
Every release, newest first. Generated from the commit history; the full list lives on GitHub.
v0.9.0
2026-10-15Latestv0.8.0
2026-10-14v0.7.0
2026-10-14Bug Fixes
Documentation
- Phase 25 status ec67dbf
Features
- Build a Flatpak bundle and publish it to silo (#48) 9f0be9c
- Host hooks for child environments, agent capabilities and agent notices (#50) b3f3729
- Export any resource table as CSV 9188a10
- A local shell tab with the cluster's context b4e7279
- An Applications view grouped by app.kubernetes.io labels 5a5da3a
- Ask the agent about any resource with canned questions 7d3ce61
- A Security Center over Trivy Operator reports 5e00c29
- Cost monitoring with OpenCost 1b9f05c
- Discover EKS, AKS and GKE clusters across accounts 34ea059
Miscellaneous
- Update all dependencies, GPUI 0.3.8 and gpui-component 0.7.1 (#46) 54be4f6
Testing
- The missing-CLI test must not find the CI image's az and gcloud f617e1e
v0.6.0
2026-10-08Bug Fixes
- Address CodeRabbit review on phase 21 (review) 5f60d44
Features
- Agents over ACP with Kubyl's cluster tools (phase 21) 96ddb5f
- One Credentials handle for every stored secret, with optional scopes a14a655
- Scoped credential handles ignore tokens written into the kubeconfig 6740fdb
- Flux CD sources, Kustomizations, HelmReleases, reconcile and suspend (phase 23) ac26db5
- Charts, install, upgrade, rollback and uninstall (phase 22) 9546aef
- Device resources, admission policies, Gateway API, VPA and EndpointSlice views (phase 24) (#45) 2fa5584
v0.5.0
2026-10-06Bug Fixes
CI
- Sync winget-pkgs fork before submitting manifest (#34) 5cf2f4a
Documentation
- Require the contributor license agreement on kubyl.dev (#35) 989df60
- Mark phase 18 (Prometheus) as done 7f286d0
- Add phase 19, split domain logic from the UI a6142b1
- Phase 19 progress and the core-crates decision 2a784fe
- Phase 19 status, workspace layout and where logic goes e894102
- Phase 19 checked against the dev cluster cb18ffc
- The core-crates check in AGENTS.md and CLAUDE.md fae3e7a
- Git rules for a public repo with PRs and the CLA 1d4873a
- Phase 20, the rest of the services on Host e2567ff
Features
Miscellaneous
- Cargo.lock for the new crate dependencies d755f06
Refactor
- Add kubyl_base, the GPUI-free foundation 8c8c35e
- Add kubyl_settings_core 1b5b576
- Move kubeconfig, auth, clients and discovery to kubyl_kube_core f7a8434
- Move the ConnectionManager state machine to kubyl_kube_core 17d495b
- Add kubyl_resources_core ab80227
- SharedString, ActiveForward in kubyl_base 770ed64
- Add kubyl_logs_core ccfdcfe
- Add kubyl_terminal_core 2307e8c
- Add kubyl_portforward_core 1cbf3d3
- Add kubyl_yaml_core 4cf8d35
- Move discovery, queries and transports to kubyl_metrics_core 14a2810
- Add kubyl_charts_core 69e9573
- Move the metrics cache to kubyl_metrics_core ce2727c
- Move clients, model, matchers and rows to kubyl_alerts_core b0e7559
- Move the API, model, health, trees and ops to kubyl_argocd_core 288230b
- Add kubyl_operators_core 9c15fb2
- Move providers, checks and pre-flight to kubyl_updates_core 8c75824
- Move fetches, model and completion to kubyl_prometheus_core 7b08233
- Move backends, model, filters and topology to kubyl_netflow_core 32b6504
- Add kubyl_files_core fd3b3e1
- Add kubyl_kubeconfig_core 51a2e69
- Add kubyl_selfupdate_core 5a2f5a2
- Add kubyl_palette_core 4c49fb3
- Add kubyl_overview_core with the event rows and settings bbeb9e4
- Add kubyl_webview_core 089eb72
- Add kubyl_explorer_core with RBAC checks and settings 71da1bf
- The check/download state machine runs on Host 663ff1e
- Move server kinds, access and discovery to the core 8ee7a3d
- Move update states and building providers to the core f19b142
- Move counts, sources and the fetch-and-merge to the core 626b14f
- Move flow states and Relay TLS rules to the core 884fa69
- Move settings, app rows and operations to the core 022af54
- Move OLM availability, snapshots and watch problems to the core 339f20b
- The updates service is UpdatesCore on a Host 2ebec6f
- The flow service is FlowsCore on a Host a994367
- The Argo CD service is ArgoCore on a Host 2f42fd4
- The alerts service is AlertsCore on a Host 296acda
- The Prometheus service is PrometheusCore on a Host ed0fe49
- The OLM and Helm services are OlmCore and HelmCore on a Host c00304e
v0.4.0
2026-10-03Bug Fixes
- Copy buttons for dialog values that can't be selected 9851100
- Selection bookkeeping resets itself, holds runs weakly 411dc4d
- A value that wraps stays on its key's line when copied aacad27
- Only a row-high content mask is replaced for drag scrolling 7226cfd
- Cmd+A in the resource list selects the last pane pressed in 10c7081
- No ticking duration for a finished or suspended Job without an end time 5b69c9f
- Job history orders by creation and shows store problems 9eadfe4
- Dedupe equal ids per frame generation, prune closed scopes 5df5895
Documentation
- Selection model and screenshot steps dbea448
Features
- Selectable text with per-frame document order, scopes and select-all 49c7774
- Selection frame and select-all wiring 2ae9b5b
- Selectable details, Describe tab and table Cmd+C d25988b
- Select text in the alerts, Argo CD, netflow, OperatorHub, updates and web view panes cfbd126
- Shared job helpers and kubectl status order 66d117e
- Job history in CronJob details 6dcdb3a
- Double and triple click screenshot steps 1dc19ae
Miscellaneous
Testing
- Font-independent selection tests 9c56430
v0.3.10
2026-10-03v0.3.9
2026-10-02Miscellaneous
- Update Flatpak manifest to v0.3.8 0dfc6da
Build
- Link the MSVC runtime statically on Windows 3127470
Kubyl_alerts
- Sign in to Alertmanagers behind basic auth fda94a2
Kubyl_argocd
- Keep the password of a password sign-in to renew the session dd5b720
Kubyl_metrics
- Tell a basic-auth 401 apart from other 401s aa868c0
Kubyl_prometheus
- Sign in to Prometheus servers behind basic auth e1271b3
Plans
- Decide how basic-auth credentials are handled 5a31383
v0.3.8
2026-09-30Bug Fixes
- Show Argo CD on clusters whose argoproj.io prefers another version 21bce48
Miscellaneous
- Update Flatpak manifest to v0.3.7 a3b55a7
Kubyl
- Wire in kubyl_prometheus 0f76f22
Kubyl_explorer
- Favorite any view; reorder sidebar folders and clusters e0bd276
Kubyl_prometheus
- A Prometheus web UI for Prometheus, Thanos Query and VictoriaMetrics d0f97fd
v0.3.7
2026-09-30v0.3.6
2026-09-29v0.3.5
2026-09-29v0.3.4
2026-09-28Bug Fixes
- No panic completing after a multi-byte space in the flow filter 9a4e9dd
- Check read-only, RBAC and PROD for every cluster in a selection 0b6177e
- Never let a container file name escape the download folder 31948f9
- Reject unsafe entry names in drag-out staging and image preview 269b868
- Keep draining tar stdout when local extraction fails ece1069
- Don't truncate container files on a failed write 7ffd036
- Only resume a partial download of the same remote file d567a68
- Don't panic when the preview temp folder can't be created 1e14d37
- Move blocking local filesystem calls off the UI thread 8ebd388
- Strip every ESC from bracketed pastes 2e7ae57
- Cap terminal output batches at 256 KiB f50456d
- Clean up privileged node-shell pods on quit, failure and aborted create 4477c91
- Refuse cmd.exe metacharacters in cloud CLI arguments ff7ec16
- Validate the EKS region before building the endpoint host af33a6b
- SUC updates only to versions from the fetched channel list 00a50c6
- Confirm dialog waits for the pre-flight run and follows its results 41137a7
- A rekey during a write no longer leaves the cluster busy 54d2dce
- EKS reads describe every update and report describe errors d96c025
- No integer overflow on server-supplied versions 331f392
- CAPI read fails when KubeadmControlPlanes can't be listed cb98223
- OpenShift patch clears a stale desiredUpdate.image f30a054
- Cache short-lived cloud credentials for part of their life f40a621
- Typed confirmation for Scale on PROD from list/palette 9771bb5
- Mask Secret data in Copy YAML d88175b
- Include the cluster id in list RowId 24cfd61
- Loopback OAuth callback tolerates idle connections and checks state on errors e76f116
- Only drop the OIDC refresh token on invalid_grant 0fc8f33
- Keep a pending or confirmed scale when the details target changes 487534a
- Report skipped items when part of a bulk action didn't run 430204f
- Ignore stale kubeconfig reload results 2a076fe
- Plan and start the kubeconfig watcher off the UI thread 39db6f0
- Repeat RBAC checks after a reconnect or a failed check cc93f18
- Keep PROD and read-only flags while a cluster is disconnected 593ff9f
- Reject OpenShift tokens the API server treats as anonymous cc73347
- Serialize dev file credential store updates 71613b8
- Confirm Cordon/Uncordon, typed on PROD 5c4b040
- Key alert selection by (cluster, fingerprint) 9e53a9f
- Copied helm commands carry --kubeconfig 3c75908
- Uninstall with CRDs keeps CRDs another CSV owns aaadab2
- Clamp sync-window duration and bound the walk 28425ee
- Confirm Terminate and switching sync policies on 2b7d67e
- Sign-out cancels a sign-in in progress acf28cf
- Record the API forward at once and match ids in forward_stopped 5a10314
- Iterative glob_match c83d504
- Only keep http(s) argocd-cm urls 06bf5c3
- Drop in-flight API requests on connect/disconnect c3376a1
- Check patch RBAC before a Kubernetes-mode delete and bind it to the UID f9c0f66
- Fill_between can't index past a shorter baseline f8d8b6c
- Short_repo strips credentials up to the last @ before the path 60e271f
- Never overwrite an unparsable settings.json 01e033a
- Don't panic when a settings section is not an object ab9fdca
- Unique temp file and ordered, serialised settings/state writes 68bdb07
- Wait for in-flight settings/state writes on quit 392b719
- Private config dir when there is no platform config dir fa4c23c
- Read the wizard's certificate file off the UI thread 7a162fd
- Exec-plugin consent covers where a relative command points 037df1d
- Verify existing Secret and bindings before importing a service-account token 0a946d1
- Don't keep every finished load task in the editor a8beee0
- Preview update channel falls back to stable; manifest channel is checked df5fb5e
- A panic while applying an update no longer crashes the app 63c23b2
- Pin the signing identity when verifying a downloaded macOS bundle 94b07e5
- Step past a full page of already-sent Loki records ca41ba8
- Do not request a Loki URL the FlowCollector chose 132bbe8
- Park an idle web view on about:blank 8a36034
- Re-create the web view when Private changed during creation 7c89358
- Do not save accepted certificates in Private mode 12312c2
- Ask before a page opens the system browser 785f40b
- Escape quotes and backslashes in LogQL regex values f7ae474
- No unchecked arithmetic on Loki/metrics numbers fe3a5b6
- Stop the replaced state's relay forward on Rekeyed 851ac58
- Keep Seen counts exact past 2000 values 22f1283
- Mask more credential headers 9a53edd
- Parse E/Ei quantity suffixes 119b1c9
- Avoid underflow with an oversized recent list 7ec2f4f
- Treat a pod as unlimited when any container lacks a limit f74a725
- Stop port-forwards when their cluster disconnects or is removed 3ecf677
- Gate the write-script test helper to unix cbf2158
- Treat rooted exec commands as absolute on Windows 65b57be
- Restart alerts state on cluster rekey 5a0431f
- Bump generation on drop_cluster, stop old forwards on discovery 16deed4
- Keep previous alerts when every Alertmanager read fails cd2cf72
- Do not start a refetch while a read is in flight ceba62c
- Keep the silences list and report the error when the read fails 9c38116
- Skip target check without a namespace, encode path segments cc77e4b
- Expire the PrometheusRule lookup cache 9b8a8c0
- Report failed silence undo, check read-only in recreate_now a89817d
- Cache decoded CSV icons 1307025
- Ignore uninstall submit while one is running 3dd5693
- Only list CRDs the uninstall will delete 3db69ef
- Restart an in-flight OperatorHub fetch on rekey f7e2e04
- Refresh Secret originals when only the masked render is unchanged 9108163
- Cap YAML alias expansion 4003566
- Cap log line length, fetch size and JSON level parsing 52fff30
- Bound the gone-pod chips in the logs view d49bb99
- Bracket IPv6 hosts and use the bind address in active() 7925d52
- Bind the one-click forward's port off the UI thread, no probe race 2b862e4
- Enforce read-only on saved and auto-start forwards 775bd0d
- Re-read the client after resolving a workload selector 43d24ce
- Pass the new fallback flag in the netflow live test defff9d
- Address review feedback on phase 17 fixes e654b2a
- Gate the unusable-fallback settings test to unix 4e03162
Documentation
Miscellaneous
- Update Flatpak manifest to v0.3.3 af6b722
v0.3.3
2026-09-28Miscellaneous
- Update Flatpak manifest to v0.3.2 3d52b61
v0.3.2
2026-09-27v0.3.1
2026-09-27Bug Fixes
- Install minisign via apt, not taiki-e/install-action 0e77618
v0.3.0
2026-09-27Bug Fixes
- Import Cursor for the Linux test module too edd0c23
- Replace the whole app bundle on macOS, add HTTP timeouts fe35140
- Publish-flathub committed to a detached HEAD, not main e9c1e60
- Correct binary path, add aarch64 and Metainfo, fix update script 2bda980
- Vendor the GTK plugin, fail loudly on a missing WebKit helper 6d142f8
CI
- Prevent Windows CRLF normalization on signed test fixtures 40f9c7e
Documentation
- Winget PR submitted, PR #16 merged 7b58785
Features
- Add Linux AppImage packaging d128ecd
Packaging
- Add Flathub manifest and auto-update workflow ee23b69
Plans
Release
- Sign the update manifest and publish to winget and silo 00420b8
Selfupdate
- Add kubyl_selfupdate crate for app auto-update d97903f
v0.2.5
2026-09-27Plan
- Filter every Flow field in the network flows table, not a subset 8119e83
README
Design
Kubyl_charts
Kubyl_explorer
- Namespace views other crates add to the favorites menu (catalog::register_namespace_view, phase 16) 576c01d
Kubyl_metrics
Kubyl_netflow
- Stub crate (phase 16) with the vendored Hubble API (Cilium v1.20.2 protos, generated by protox in build.rs) b44ff51
- Flow model, filter language with completion, ring buffer, topology aggregation, detection and the Hubble Relay, Calico Whisker and NetObserv backends (live tests against the netflow-dev.sh clusters) 6abf794
- The Network Flows view, its service, actions and details section (phase 16) eb70169
- Whisker over a temporary port-forward; blocking states like board 18 (phase 16) 5d297f8
- The view against board 18 on the kind clusters (phase 16) 5347ce0
- Only the blocked count is red in the details section (phase 16) 2f46f66
- Review fixes (phase 16, review) 7f98939
Kubyl_ui
- Waypoints icon (network flows, phase 16) 1936496
Plans/16
- Correct the plan after the spike (Whisker's HTTP API instead of Goldmane's mTLS gRPC, Calico 3.30+, Hubble's policy fields, isolation vs deny rules, NetObserv through Loki and its metrics, gRPC through forwards only) 117eedd
Plans/README
- Phase 16 decisions (flow model and providers, detection and overrides, transports, buffer and streaming, filter language, topology layout, sensitive fields, read-only clusters) 09e12c3
Script
- Netflow-dev.sh (kind clusters with Cilium and Hubble Relay, NetObserv with Loki, Calico with Whisker; payments and storefront traffic, an isolating NetworkPolicy and a deny rule) 81d43a8
Workspace
- Tonic, prost and protox for the Hubble Relay client, fjadra for the topology layout (phase 16) b43bf0e
Zed
- Run task uses the file credential store 8740ee4
v0.2.4
2026-09-27AGENTS.md
- Phase 13 live tests, cloud provider fixtures and mock endpoints 1d3017c
CI
Design
- Board 8 frames (OpenShift channel, update graph, pre-flight, progress, confirmation, EKS, k3s, read-only, credentials) and the Route frames (Routes under Network, Route web view) 2c08474
- Phase 13 Routes screenshots 2cf0f0f
- Phase 13 screenshots (OpenShift updates, channel, graph, pre-flight, progress, confirmation, EKS, k3s, self-managed, read-only, credentials missing, provider not built, 403, Route details) 8bf209a
Kubyl
- Forward the cloud update provider features (updates-eks, updates-gke, updates-aks) 87c3d90
Kubyl_argocd
Kubyl_explorer
Kubyl_metrics
- Read monitoring Routes through the shared Route model (phase 13) 2bc41db
Kubyl_operators
- Mask inline Route keys in Helm manifests (phase 13) c036b4a
Kubyl_palette
- Route and Service references (phase 13) 1d47bc0
Kubyl_portforward
- Forward a Route's or Ingress's backend Service (phase 13) f3266e1
- Route forwards read the backend's EndpointSlices (phase 13) 188c1f9
- The Route live test takes namespaces without Ingresses (real clusters) 44ed669
- Backend forwards match the API group as well as the resource (review) 342a17c
- The Route live test fails when a backend doesn't resolve (review) 8d4a895
Kubyl_resources
- Route model, columns and target port resolution (phase 13) 27c0d35
- Resolve numeric Route target ports through the endpoints (phase 13) 6dc7a3b
- A Route's named target port reports the number its endpoints serve (phase 13) b6122dc
- Wider Services and Admitted columns for Routes (phase 13) 07893ee
- Mask a Route's last-applied copy when it still holds a key taken out of spec (review) 8856f0c
Kubyl_ui
- Route icon (OpenShift Routes, phase 13) 67e5912
Kubyl_updates
- Provider trait, detection, model, versions, removed-API table, settings bf19337
- OpenShift, k3s/RKE2 (system-upgrade-controller), Cluster API and read-only providers, pre-flight checks, the update service and the Cluster Updates tab 0dcec4a
- Provider override in settings, live tests against the dev clusters 26bcdd6
- Shared cloud provider plumbing (CLIs, HTTP, errors, exec plugin, credential cache) 64ed5d5
- Amazon EKS update provider (updates-eks) 12dc54f
- Cloud API endpoint overrides (KUBYL_UPDATES_{EKS,GKE,AKS}_ENDPOINT) 962b53f
- Google GKE update provider (updates-gke) 21881ae
- Azure AKS update provider (updates-aks) e09175a
- The read-only OpenShift live test runs the pre-flight checks too 3f2b4d2
- Operators and pools first while an update runs, wait for Prometheus discovery before the checks, node pools follow the control plane, write hints only where the provider can write, wrapping and graph fixes f667089
- Live test that updates the k3d cluster through its Plans and follows it 11f2571
- One recorded-response bundle per cloud (tests/fixtures/{eks,gke,aks}.json) 3f1ec7d
- Review fixes: the last-applied scan picks the kind's own group and never passes on an incomplete scan, pre-releases sort before their release, a pre-flight run without inputs finishes, one note for failed EKS add-on versions, AKS pools target only newer versions 75892bf
- Pre-release stages order before their numbers (ec < fc < rc) (review) f2873b9
Kubyl_webview
Kubyl_yaml
Plans/12
- OpenShift check done on the user's test cluster 3525e80
Plans/13
Plans/README
Script
- Updates-dev.sh (PDB and removed-API Helm release on kind, a fake OpenShift cluster with ClusterVersion, operators, pools, APIRequestCounts and Routes, a k3s cluster with system-upgrade-controller) 54236b6
Workspace
- Hmac for SigV4 signing of the EKS update provider (phase 13) 5e7b7ca
v0.2.3
2026-09-26Bug Fixes
- Data protection keychain for release builds, no more keychain prompts 3362bb0
Design
- Phase 12 screenshots (Operators, OperatorHub, upgrade review, Helm releases, states) 66b9c32
Kubyl_explorer
- Helm Releases row under Administration, not gated on OLM (phase 12) 2951c8f
Kubyl_operators
- OLM and Helm data layer b2d3718
- Services, views and dialogs e27e4bd
- Live tests; icons, plain-text descriptions, transient ResolutionFailed, review order, dialog focus ff2b54d
- Release tabs wait for their cluster, OLM v1 template without installer accounts, 5,000-row test; olm-dev.sh --reset-manual and v1 with any cert-manager namespace; docs a74cb12
- OLM v1 condition tones and Retrying, tab title follows the sub-tab, no list hints on blocking states, plain-word RBAC hints; olm-dev.sh v1 sample grafana-operator d814250
- Live tests point at olm-dev.sh --reset-manual af01a14
- Loading until discovery is known; History loads revisions as they arrive (review) 65c0472
- Only Subscription and CSV watches block api::installed; Helm watch errors before the scope; OperatorHub's installed filter follows subscriptions; v1 banner matches the template (review) fadb0d0
Kubyl_ui
- Anchor icon (Helm releases, phase 12) fcd7c34
Kubyl_yaml
- Open_draft opens a new-resource editor with given text and a note (for phase 12's operator examples) 0152b96
Mockups
- Board 7 frames for OperatorHub, install, upgrade review, alm-examples, install plans, subscriptions, Helm releases and the OLM states 2373161
Olm-dev.sh
- --delete removes only a cert-manager --v1 installed, and operator-controller's CA where it went; plans: PROD confirmation per write (review) 4d9ee19
- --delete removes only what the script installed (marked namespaces); waits for a running cert-manager's webhook and retries operator-controller's apply (review) ad06856
Plans
Release.yml
- Sign with the certificate the provisioning profile names, fail on an expired profile (review) 50fb698
Workspace
- Flate2 for gzip-encoded Helm releases and OLM bundles (phase 12) 182ab96
v0.2.2
2026-09-26Cargo.lock
- Kubyl_alerts at the workspace version 0.2.1 (after merging main) 467ee10
Design
- Boards 16 · alerts and 17 · cluster status, grouped contexts, ConfigMap data; status dots on every sidebar bbba219
Kubyl
Kubyl_alerts
- Stub crate for alerts (phase 14) 5decb38
- Settings, model and parsers, matchers, merge, discovery and the Alertmanager client (phase 14) 012b8d8
- The alerts service, the Alerts view (alerts, silences, rules), the silence editor and the chrome; alertmanager-dev.sh and live tests (phase 14) 5622f62
- Readable values, source column, collapsible rule groups; tests for transitions, notifications, optimistic writes, 5,000 alerts and Debug output (phase 14) 3b636a5
- List silenced and inhibited alerts after the active ones, marked as firing with a bell-off or eye-off icon (phase 14) c661964
- Silence dialog and filters at the UI text size, the preview visible, wrapped PROD warning; overview card aligned with the tiles (phase 14) 62a9b44
- Keychain headers keyed by the API URL (with path, without trailing slash); no overflow in durations; service updates don't keep hidden tabs at the fast pace (review) 4bf427e
Kubyl_argocd
- Confirmed installs keep their key when contexts are grouped (phase 15 follow-up) dee001c
Kubyl_core
- ClusterIds resolves out-of-date cluster ids; ViewRegistry::build uses current ids (phase 15) 569a5bc
Kubyl_explorer
- Connection status slot and tooltip on cluster rows, faint favorites while disconnected, cluster order and "connected only"; expanded roots connect once kubeconfigs are loaded 51599d7
- ConfigMap data in the details (blocks per key, formats, YAML highlighting, binaryData, key filter, copy all), "Used by" for ConfigMaps and Secrets, multi-line revealed Secret values 3474e1b
- Grouped clusters in the sidebar (member tooltip, show separately), favorites and the namespace picker resolve to entries eb0bcef
- Rows other crates add under each cluster (register_view_row, with a badge, following group_order and hidden_groups) and markers on cluster root rows (phase 14) aede899
- Keep the watched ConfigMap/Secret object on repeated selections, escape backticks in .env exports, no "Show as One Cluster" while grouping is off (review) e0ac831
Kubyl_kube
- One entry per cluster and user (context grouping), resolve and settings_keys, re-keying without reconnecting 790d091
- The grouping test doesn't assume '/' as path separator (Windows CI) (phase 15) 33ea948
- Contexts of a group shown separately keep the group's Production and Read-only flags; turning one off keeps it for the siblings (review) 5dc04f5
Kubyl_metrics
- Metrics.prometheus and the keychain header through settings_keys (phase 15 follow-up) 631dbb9
- The transport becomes a public module (service proxy, direct with bearer, roots and TLS server name, external URL with header and mTLS, get/post/delete); through_route takes the probe path; PromClient::api and MetricsService::prometheus (phase 14) 884b718
Kubyl_palette
Kubyl_portforward
- Saved forwards start on their grouped cluster (phase 15 follow-up) fa15398
Kubyl_ui
Kubyl_webview
- Web view stores of a group keep their key through oc project (phase 15 follow-up) 55e6864
Kubyl_yaml
Plans
v0.2.1
2026-09-26AGENTS.md
- Gotchas for dialogs in GPUI tests and on_next_frame on macOS be1191c
Design
Kubyl
- "New kubeconfig…" in the Explorer's + menu cb2ec15
Kubyl_core
- ViewRequest::for_path, NewKubeconfig and EditKubeconfig actions 30aeebd
Kubyl_kube
Kubyl_kubeconfig
- Stub crate for the kubeconfig editor (phase 11) 88aca01
- Document model, comment-preserving writer, atomic saves with backups, certificates, TLS checks and CA fetch 98b64b2
- Editor tab, forms, YAML tab, connection test panel, dialogs, wizard, imports 4c68f44
- Save through the editor, folders from the global, editor and live UI tests 953e430
- Polish from the screenshots, service-account live test e082caa
- Live test for OIDC sign-in from the connection test df356f6
- Fix an unused variable in a files test on Windows 92846a3
- Review fixes 3155bef
- The wizard counts a test only once it ran 6309333
Plans
- Phase 11 decisions: which kubeconfigs Kubyl writes, comments, credentials, consent 050fcac
- Phase 14, alerts (Alertmanager) 37d61b2
- Phase 15, polish (connection dots, context grouping, ConfigMap data) 757852f
- Phase 11 done (handoff log, decisions, extension points) c0951b3
- Phase 15 label examples with made-up hosts and user 66341f6
- Phase 11 handoff and decision table: second hash check, masks a5e5c3a
Workspace
- Rustls, rustls-pki-types and tokio-rustls as direct dependencies (versions and features kube already uses) 239c382
v0.2.0
2026-09-25Design
- Argo CD boards (applications, resource tree, history and rollback, sync) 0d8c65d
Kubyl
Kubyl_argocd
- Stub crate for phase 10 (Argo CD) 4807e50
- Model, Kubernetes-mode actions, API client, detection ff79abd
- Applications, application tab, dialogs, dock, actions 8c4505a
- Fixes from running against kind bfdcff5
- UI follows the CRDs; live UI test 563b824
- Rollback options align; mode tooltip says what API mode adds eeaaed0
- SSO sign-in, and the Argo CD UI opens signed in 3d5cb79
- SSO sign-in survives the dialog; explains confidential clients 1ff7df6
- Fixes from review e2357b3
- SSO in the browser only; Argo CD UI at its own URL for SSO d3461c5
- Signing out revokes the Argo CD session 48ce535
Kubyl_core
Kubyl_explorer
Kubyl_kube
Kubyl_logs
Kubyl_palette
- Open kinds and objects in their registered views 3243d20
Kubyl_portforward
- Temporary forwards for other crates 3f52024
Kubyl_webview
- Stub crate for phase 08 b8f285f
- Service web views over temporary port-forwards a3c6d80
- Linux web views, macOS fixes d4d1a6d
- Idle and download fixes, timings 0d3c943
- Typing a path in the address bar, closed tabs let go e23adcb
- Review fixes 3be0951
- Don't abort on a page without a URL (macOS) 49ab311
- Session cookies from crates holding a session for a target cfb2b8a
- Session cookies on macOS without blocking b3cb5f5
- MacOS session cookies that older WebKit takes 5d0bb15
- Session cookies try wry's set_cookie first on macOS 79afd27
- Live_webview says what the store holds when a session cookie is missing 7f4fbdd
- MacOS session cookies are secure only for https b214310
Kubyl_yaml
- Reusable diff view, edit notices as a banner c6f6b93
Plans
Script
v0.1.2
2026-09-25AGENTS.md
- Rewrap the screenshot steps 59e4a0e
Shared
Workspace
Kubyl_charts
Kubyl_core
- DetailsSection extension point ba08c2f
Kubyl_explorer
Kubyl_files
Kubyl_kube
Kubyl_logs
Kubyl_metrics
Kubyl_overview
- Cluster overview, events stream and Events view 6e4e956
- Format the live test 0c3037e
- Fit the Events toolbar and namespace tiles at dock width 371d3d2
- Open the Events dock with the overview, label cordoned nodes cf35449
- Shared series colors, network/throttling/disk/drop charts 9ae4286
- The namespace overview asks only for its pods' usage 22185cf
- Review fixes 5893693
Kubyl_portforward
Kubyl_resources
Kubyl_terminal
Plans
- Phase 05 done f5c563b
- Phase 13, kubeconfig editor a97a9d7
- Phase 06 done 29f44b2
- Phase 13 security notes from review 75eee88
- Phase 07 done; metrics, charts and events decisions and extension points d4561ec
- Phase 07 metrics details, shared chart colors, DetailsSection b4f425d
- Phase 07 handoff before merge 9ca9da8
- Phase 07 handoff for OpenShift and the review fixes f696700
- Renumber the phases after 07 78ab878
- Phase 07 security notes, phase 13 reference ac993f6
Script
- Prometheus-dev.sh (metrics-server and kube-prometheus-stack on kind) 0364718
v0.1.1
2026-09-25Kubyl
- Fix macOS app icon not being bundled 09347d2
Kubyl_explorer
Kubyl_kube
- Fix the cluster switcher (and other title-bar actions) doing nothing 7ac4ab0
Kubyl_logs
Kubyl_portforward
Kubyl_terminal
Kubyl_ui
- Add EyeOff icon for masked-value reveal/hide toggles 912c47c
Plans
Release
- Fix version-bump push to protected main 58dd940
v0.1.0
2026-09-24Kubyl
- Native Kubernetes desktop client 839a3dc