github skyhook-io/radar v1.20.0

one hour ago

Radar v1.20.0

Modern Kubernetes visibility. Local-first. No account. No cloud dependency. Fast.

Topology, event timeline, and service traffic — plus resource browsing and Helm management. Open source. Free forever.

Installation

Homebrew (macOS/Linux):

brew install skyhook-io/tap/radar

Scoop (Windows):

scoop bucket add skyhook https://github.com/skyhook-io/scoop-bucket
scoop install radar

PowerShell (Windows):

irm https://raw.githubusercontent.com/skyhook-io/radar/main/install.ps1 | iex

Manual (macOS Apple Silicon):

curl -LO https://github.com/skyhook-io/radar/releases/download/v1.20.0/radar_v1.20.0_darwin_arm64.tar.gz
tar -xzf radar_v1.20.0_darwin_arm64.tar.gz
sudo mv kubectl-radar /usr/local/bin/

Manual (macOS Intel):

curl -LO https://github.com/skyhook-io/radar/releases/download/v1.20.0/radar_v1.20.0_darwin_amd64.tar.gz
tar -xzf radar_v1.20.0_darwin_amd64.tar.gz
sudo mv kubectl-radar /usr/local/bin/

Manual (Linux amd64):

curl -LO https://github.com/skyhook-io/radar/releases/download/v1.20.0/radar_v1.20.0_linux_amd64.tar.gz
tar -xzf radar_v1.20.0_linux_amd64.tar.gz
sudo mv kubectl-radar /usr/local/bin/

Desktop App

Homebrew (macOS):

brew install --cask skyhook-io/tap/radar-desktop

Debian/Ubuntu:

curl -LO https://github.com/skyhook-io/radar/releases/download/v1.20.0/radar-desktop_v1.20.0_linux_amd64.deb
sudo dpkg -i radar-desktop_v1.20.0_linux_amd64.deb

Fedora/RHEL:

curl -LO https://github.com/skyhook-io/radar/releases/download/v1.20.0/radar-desktop_v1.20.0_linux_amd64.rpm
sudo rpm -i radar-desktop_v1.20.0_linux_amd64.rpm

Scoop (Windows):

scoop bucket add skyhook https://github.com/skyhook-io/scoop-bucket
scoop install radar-desktop

Windows (direct download): Download from the assets below.

CLI

Then run: kubectl radar

Changelog

  • 3935aa7 AI investigations: a built-in example for people who haven't run one yet (#2486)
  • 73980dd Accept groups sent as repeated headers in proxy mode
  • 4fa114d Add explicit application evidence collection to local resource details (#1847)
  • c126422 Add local MCP application evidence collection and diagnosis hints (#1841)
  • 3e408f4 Add v1.20.0 What's New entry and show up to seven cards (#2548)
  • ace79b0 Argo CD: drop a resource dry-run result once what it checked changes (#2469)
  • 8012d37 Argo CD: first-time Enable auto-sync starts with self-heal off, as Argo does (#2477)
  • 3f62fcc Argo CD: name dry runs in the sync toast and keep sync tooltips accurate (#2468)
  • 9aa65a6 Argo CD: name the ApplicationSet or parent that can turn auto-sync back on (#2470)
  • c50a549 Argo CD: syncs keep sync options, pin the compared commit, and default prune off (#2066)
  • 3d1103c Argo CD: the resource drawer's Sync opens the options dialog (#2478)
  • d9e73f4 Argo CD: working rollback, rollback outcome insights, and Argo 3 auto-sync state (#2060)
  • 491e15d Auth docs: strip whichever identity headers Radar is configured to read
  • 042894b Back off from a cluster that's down, and say since when (#2457)
  • d7c2957 Build GitOps workload descendants from canonical ownership and membership (#2391)
  • a3e300c Capacity Demand: name GPU and Pod requests, and give no verdict while a pool is unknown (#2537)
  • ecb5701 Chart README: drop the rbac.namespaces removal steps
  • 616e255 Chart README: list the empty-list refusal with the others
  • aa88b73 Chart: limit Radar to selected namespaces with rbac.namespaces
  • ce7abcb Chart: rbac.namespaces is unset by default, and an empty list is refused
  • eca0f18 Collect pod metrics per namespace when rbac.namespaces is set
  • 2fa4ccf Detect failed cert-manager renewals while certificates remain Ready (#2523)
  • 5452273 Diagnose Collector roots through current owned workloads (#2374)
  • e363c57 Diagnose Flagger targets separately from owned primary workloads (#2375)
  • b6aba60 Document integration surfaces and shared package boundaries (#2480)
  • 4cbedb6 Draw Home's Topology and Live Traffic cards as pictures of their views (#2430)
  • 88f44f4 Explain Kueue admission with one shared state classification (#2511)
  • b7f1d50 Explain Kueue queues and trace Workload admission dependencies (#2512)
  • 9b3e7d9 Explain prospective OTel instrumentation reference resolution (#2376)
  • 9f23d3a Expose bounded OTel and Flagger facts in agent summaries (#2368)
  • 7686107 Give agents a PVC's volume and StorageClass, and a StorageClass's claims (#2503)
  • 3c21eb0 Install into a listed namespace without creating it, and require Radar 1.19.1
  • 6eb8766 Investigate issues from Home's Active Issues rows (#2429)
  • 6862265 Investigation: show the next step's whole first sentence in the jump link (#2484)
  • 4c1cdf8 Issues: categorize evicted pods and link them to the evicting node (#2462)
  • 23b802f Issues: explain pod creation blocked by slow or unreachable admission webhooks (#2495)
  • 4c27c53 Issues: ignore HTTPRoute status entries for parents no longer in spec (RAD-927) (#2550)
  • e7cc3eb Issues: name a RollingUpdate surge as the cause of a one-replica ReadWriteOnce rollout deadlock (#2494)
  • 956a502 Issues: report ReadWriteOnce PVC shared across replicas as posture (#2461)
  • 0fc8a47 KServe: attach serving status context and field semantics (#2518)
  • a5720f4 Keep investigation citations through common model format slips (#2506)
  • cdd7a29 Keep prerelease tags out of Homebrew and Scoop
  • bd6fc1d Keep the current cluster when a context switch can't connect (#2456)
  • 527798d Kueue: show queue Workloads with membership, coverage and paging (#2515)
  • ecf2eac Kueue: surface actionable blockers in Issues and batch diagnosis (#2517)
  • 6410f61 Label an investigation's ruled-out hypotheses and show why each was dropped (#2475)
  • e4a8003 Link a ServiceAccount's Secrets, and name declaring ServiceAccounts in a Secret's context (#2502)
  • d1e9179 Link a missing Secret to the SealedSecret that fails to produce it (RAD-938) (#2554)
  • 406a269 Link admission webhooks to their backend Service, and list a Service's webhooks in resource context (#2500)
  • 115d8ae Link cert-manager CertificateRequests, Orders and Challenges to their issuer (#2501)
  • 6c4da8a List RBAC changes in get_changes and name grants to outside ServiceAccounts (#2463)
  • 7cbc582 Logs: show the line when a structured log has no message to summarize (#2538)
  • aadc0c5 MCP instructions: route fixes to manage_gitops (#2473)
  • 1ae33d6 MCP setup: tell people to name Radar in their prompt (#2483)
  • 78c1541 MCP: accept enum values in any letter case (#2474)
  • 641de32 MCP: correct the issues filter and get_resource include help (#2489)
  • 20398f2 MCP: correct tool descriptions that name missing arguments or misstate defaults (#2472)
  • 27406b5 MCP: plain one-clause guards for repeated field explanations (#2476)
  • f0f3a44 MCP: plain wording for telegraphic and all-caps descriptions (#2481)
  • 82c1ee9 MCP: same context handling on every tool, and a naming rule for new parameters (#2487)
  • 5f0e511 Merge main into rbac-namespaces
  • b661dec Nodes table: show an unknown Pod count as a dash, not zero (#2540)
  • 63fe6c7 Prerelease tags publish only the Docker image and Helm chart
  • 52afdcc Present OTel image upgrade blocks as recorded advisories (#2377)
  • d751556 Publish the Helm chart for prerelease tags too
  • 7ba9c40 README: restore the top-post Product Hunt badge (#2460)
  • ccd6838 RayCluster logs: use current Pods and explain unavailable output (#2514)
  • 92f8bcf Read Kubernetes CPU and memory quantities in every form (#2465)
  • fc7b061 Record Node label, annotation and taint changes (#2362)
  • 18d424a Record the 2026-10-28 Claude Design sync (#2479)
  • b153a00 Refresh operational Issues in open namespaced resource views (#2370)
  • cb034e3 Report "parent Gateway not found" in the Issues list (RAD-939) (#2555)
  • 4a03f3c Report missing Flagger targets, metric templates and provider Secrets (#2373)
  • b658036 Report revision serving state, deploy time and access on applications (#2559)
  • b618f36 Require every cached kind to be readable in each listed namespace
  • 25ef67a Restore workload rollbacks exactly, as kubectl rollout undo does (#2363)
  • d9440ae Resume Claude Code hand-offs from ~/.radar/agent so folder trust is remembered (#2485)
  • a1e080b Retain Kueue admission and provisioning history in workload Timeline (#2520)
  • c8a76bc Return owned Nodes for an explicit get_changes kind=Node or name= query (#2467)
  • c954ec2 Scan every backing workload before calling a Service scaled-to-zero (RAD-929) (#2552)
  • da6b80e Scoped Radar can join Radar Cloud, and metrics errors name no namespace
  • 830d63a Show CRD definitions with a searchable schema explorer and Schema tab (#2535)
  • 41f1ee3 Show Continue in your agent in the investigation header (#2427)
  • 17fc551 Show JobSet ownership and member navigation in Topology (#2516)
  • 1f1e071 Show Kueue-reported pending positions beside workload admission (#2519)
  • 90b6d3d Show RabbitMQ resource measurements alongside alarm evidence (#2509)
  • a073ff7 Show Strimzi connector task details and snapshot-aware status (#2507)
  • de93dc6 Show Vault HA connection and cluster-removal evidence (#2508)
  • b67ab6c Show a deleting Job with no active Pods as Deleting, not Pending (#2539)
  • c4baec8 Show a resource's last investigation on issue rows (#2496)
  • a7c1baf Show a resource's last investigation on its Investigate button (#2491)
  • 2e90576 Show which check Cloud connect is running while it prepares (#2243)
  • 5be1b84 Stop reading traffic flows for the Home dashboard (#2482)
  • 49a6e1c Suppress generic Pending warning for scheduling-gated pods (RAD-930) (#2553)
  • 071eee1 Surface cached Strimzi connector findings in diagnosis and related resources (#1846)
  • 76b19c7 Tell Compare's sides apart when comparing one resource across clusters (#2562)
  • ccd6d4e Traffic: detect Calico and Flannel outside kube-system (#2499)
  • b4479df Usage reports schema 4: count what people actually do (#2458)
  • 2249ef9 Use the AI accent on Home's investigate line and flatten the issue timing chip (#2471)
  • 84c96cc feat(chart): add disableExec to turn off pod exec (#2547)
  • deec8c6 feat: add --disable-auto-port-forward
  • 1c8a32a feat: show NATS delivery and acknowledgement progress (#2510)
  • 6ed334f fix(issues): stop flagging a long-running active Job as a failure (RAD-931) (#2551)
  • 523a047 fix(packaging): depend on sonames in the RPM package (#2546)
  • cc8ed1b fix(prometheus): retain config across context retirement
  • 7e8307a fix(traffic): keep the Hubble connection error when the relay is reachable
  • fb6804f gitops: don't suggest CreateNamespace=true when the app already has it (#2549)
  • bdc7ce3 issues filter: the documented date example never matched (#2488)
  • d0aeecf search: look up an IP or ip:port from a log as a whole address (#2492)

Don't miss a new radar release

NewReleases is sending notifications on new releases.