radar

skyhook-ioApache-2.0活跃维护

一个开源的 Kubernetes 可视化面板,内置 MCP 服务器供 AI Agent 调用,能直观展示集群故障、拓扑、事件时间线和 GitOps 状态,帮助快速定位问题根因。

The missing open-source Kubernetes UI with a built-in MCP server for AI agents. See what's broken, why, and what changed. Issues, Topology, event timeline, Helm, GitOps, live service traffic, and cluster audits - all in one Go binary.

v1.20.2发布于 2026-11-09 04:13 UTC4,085star +17 / 7 天269fork同步于 2026-11-10 05:38 UTC

怎么上手

由 README 提炼,执行前请确认
curl -fsSL https://get.radarhq.io | sh && kubectl radar
硬件要求按 README 说明

README 未说明显存或 GPU 要求;作为单二进制工具在笔记本上运行,通过 kubeconfig 访问 Kubernetes API,也可用 Helm 部署到集群内。

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

单二进制开源 Kubernetes UI,内置 MCP 服务器,帮你看清集群哪里坏了、为什么坏、改了什么

一个开源的 Kubernetes 可视化面板,内置 MCP 服务器供 AI Agent 调用,能直观展示集群故障、拓扑、事件时间线和 GitOps 状态,帮助快速定位问题根因。

核心能力

  • 用 Issues 队列按严重程度列出当前故障资源
  • 用 Topology 展示资源归属与依赖关系
  • 用 Timeline 记录事件与资源变更并给出 diff
  • 内置 MCP 服务器向 AI agent 暴露集群关系与健康数据
  • 支持 Helm、GitOps、Traffic、Audit 等多种视图

容易踩的坑

默认监听 127.0.0.1:9280,非回环地址访问需要配置认证;Timeline 历史默认存内存,重启即丢,需用 --timeline-storage=sqlite 或 postgres 持久化;连接 AI agent 时建议用只读端点 /mcp-readonly,否则会暴露可执行类工具。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v1.20.2
  1. v1.20.2最新正式版2026-11-09 · 2026-11-09 04:13 UTC

    Radar v1.20.2

    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.2/radar_v1.20.2_darwin_arm64.tar.gz
    tar -xzf radar_v1.20.2_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.2/radar_v1.20.2_darwin_amd64.tar.gz
    tar -xzf radar_v1.20.2_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.2/radar_v1.20.2_linux_amd64.tar.gz
    tar -xzf radar_v1.20.2_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.2/radar-desktop_v1.20.2_linux_amd64.deb
    sudo dpkg -i radar-desktop_v1.20.2_linux_amd64.deb
    

    Fedora/RHEL:

    curl -LO https://github.com/skyhook-io/radar/releases/download/v1.20.2/radar-desktop_v1.20.2_linux_amd64.rpm
    sudo rpm -i radar-desktop_v1.20.2_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

    • 6d6af0d779ee2877279907de08614dbf4a25ecf1 Add MCP Helm release workflows and in-cluster Service checks (#2543)
    • b0ee3ad77a4ad8735868ddb4a9bee60f0c32f48b Add a manual test of how agents use Radar's MCP, starting with Helm (#2586)
    • 214c839da53d7c5b4d65c46d2ac8959581d22c45 Attribute Flux and Applications management from recorded membership, not labels (#2505)
    • b65b6e2a4e19213b9b3b7eb8d5c837b830b8a97f ClusterQueue detail: show quota and Workloads before related objects (#2571)
    • ae3ccf907b652aa97bb1b7c58bcd1a746a9557ec Don't call an unanswered Helm check a denial; correct the unread-namespace contracts (#2575)
    • 0f3b7417b52a7eb1617d57f72d51689f49bbbb8d Don't report missing references while Radar's cache is still loading (#2572)
    • 79d87181780aadd98452647cfedc2a6720833d60 Generic conditions: color by known polarity; a stopped KServe model reads Stopped, not failed (#2584)
    • a2a87572bda9fc71aad35157e48d2a4dd5fbca6d GitOps: place cluster-scoped Flux inventory and keep sources in neighborhoods (#2088)
    • a71e84e6cd98b35bef083505f2721085451c0d17 Home: show Nodes and Namespaces as restricted, not 0, when Radar can't list them (#2576)
    • 945a82ef643222482e65b7eec96fd815babd9bba Issues: regression test for a route moved between Gateway listeners (#2447)
    • 62dfe57e0b289b4c26fb9fa1a0d1c5266a715098 Keep cluster-scoped custom kinds cluster-scoped whichever API version discovery lists first (#2574)
    • 0c1dd350efe3892144aaf801ab895220af01c592 Kueue: show queued Jobs and JobSets as Held by Kueue, not Suspended (#2570)
    • d6c7852dc835903413c5e8f298185db3ff7caff7 Return the observed release from get_helm_release when Helm's Secrets are denied (#2582)
    • bcff160211dcd5d4ebe538089ac484132d59b982 Scheduler messages: read Volcano's verdicts instead of misreading them (#2587)
    • 9769761570e6e83a171676d0d94b8d1d42166e4f Scheduling: when a selector excludes some nodes, lead with what blocks the nodes it matches (#2583)
    • f38e6d2b5586fa1489be55f2bf4406dc90caeec7 Show the Helm view without Secret access, from Helm's
  2. v1.20.12026-11-07 · 2026-11-07 18:57 UTC
    查看更新说明

    Radar v1.20.1

    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.1/radar_v1.20.1_darwin_arm64.tar.gz
    tar -xzf radar_v1.20.1_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.1/radar_v1.20.1_darwin_amd64.tar.gz
    tar -xzf radar_v1.20.1_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.1/radar_v1.20.1_linux_amd64.tar.gz
    tar -xzf radar_v1.20.1_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.1/radar-desktop_v1.20.1_linux_amd64.deb
    sudo dpkg -i radar-desktop_v1.20.1_linux_amd64.deb
    

    Fedora/RHEL:

    curl -LO https://github.com/skyhook-io/radar/releases/download/v1.20.1/radar-desktop_v1.20.1_linux_amd64.rpm
    sudo rpm -i radar-desktop_v1.20.1_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

    • 7466899f56f76df5644a1f81b042b1c0447e975c Revert "parent Gateway not found" Issues check (RAD-939, #2555) to research out-of-cluster cases (#2567)
  3. v1.20.02026-11-06 · 2026-11-06 22:42 UTC
    查看更新说明

    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

    • 3935aa7825bc88849f932bea4122f9afe8a78fbd AI investigations: a built-in example for people who haven't run one yet (#2486)
    • 73980ddba911fc32f29c87fd487f5aa376cf70b4 Accept groups sent as repeated headers in proxy mode
    • 4fa114de070f32d7a59db5b746cee619292ddc39 Add explicit application evidence collection to local resource details (#1847)
    • c1264229d4d2bb37408a5bad15a812712064cdce Add local MCP application evidence collection and diagnosis hints (#1841)
    • 3e408f4f208955f2bc9e8871ad3b72436ffd3830 Add v1.20.0 What's New entry and show up to seven cards (#2548)
    • ace79b099fe577915b47836dccd0914cf11cf055 Argo CD: drop a resource dry-run result once what it checked changes (#2469)
    • 8012d378145ae779057d8c1bddb23f85d1225873 Argo CD: first-time Enable auto-sync starts with self-heal off, as Argo does (#2477)
    • 3f62fcce5affa59283132fcfbfd3a6dea87019ef Argo CD: name dry runs in the sync toast and keep sync tooltips accurate (#2468)
    • 9aa65a6ca8b3178a9fc588bd6289c40c964c63e0 Argo CD: name the ApplicationSet or parent that can turn auto-sync back on (#2470)
    • c50a5499d424148db82b21ae7693496f84724770 Argo CD: syncs keep sync options, pin the compared commit, and default prune off (#2066)
    • 3d1103ca9bd53d2936d1c0a4c9b0eed987548291 Argo CD: the resource drawer's Sync opens the options dialog (#2478)
    • d9e73f4012335c0c69ba0f414aebbeb26839a979 Argo CD: working rollback, rollback outcome insights, and Argo 3 auto-sync state (#2060)
    • 491e15def06b633646ea00c5399abe46e2d9a9bd Auth docs: strip whichever identity headers Radar is configured to read
    • 042894be7e98cafbd467aeb3644cabb408f56376 Back off from a cluster that's down, and say since when (#2457)
    • d7c29576256a8f4816968e658e263d7c946b84e8 Build GitOps workload descendants from canonical ownership and membership (#2391)
    • a3e300c47f31d46211cb58902ab181c06dcc1848 Capacity Demand: name GPU and Pod requests, and give no verdict while a pool is unknown (#2537)
    • ecb57013abfc8d92464c8b0bada3208c05f68c8b Chart README: drop the rbac.namespaces removal ste
  4. v1.18.4-rc.1pre-release2026-10-29 · 2026-10-29 14:07 UTC
    查看更新说明

    Radar v1.18.4-rc.1

    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.18.4-rc.1/radar_v1.18.4-rc.1_darwin_arm64.tar.gz
    tar -xzf radar_v1.18.4-rc.1_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.18.4-rc.1/radar_v1.18.4-rc.1_darwin_amd64.tar.gz
    tar -xzf radar_v1.18.4-rc.1_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.18.4-rc.1/radar_v1.18.4-rc.1_linux_amd64.tar.gz
    tar -xzf radar_v1.18.4-rc.1_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.18.4-rc.1/radar-desktop_v1.18.4-rc.1_linux_amd64.deb
    sudo dpkg -i radar-desktop_v1.18.4-rc.1_linux_amd64.deb
    

    Fedora/RHEL:

    curl -LO https://github.com/skyhook-io/radar/releases/download/v1.18.4-rc.1/radar-desktop_v1.18.4-rc.1_linux_amd64.rpm
    sudo rpm -i radar-desktop_v1.18.4-rc.1_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

    • 4cc8b09c87587c0b746fb95603042f6b3a80ff1f Accept NKP sign-in groups in proxy mode
    • 5e0b233c3fc26948299f30bf513679d54f024a07 Keep prerelease tags out of Homebrew and Scoop
    • 9ce8e05c37235c52d73ed3c3715ed683150f0508 Merge remote-tracking branch 'origin/radar-rc-charts' into rc-v1.18.4-rc.1
    • 57cbe6f6ed06fa1f011abc4c001d2f9dff98f222 Publish the Helm chart for prerelease tags too
  5. v1.19.02026-10-29 · 2026-10-29 11:08 UTC
    查看更新说明

    Radar v1.19.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.19.0/radar_v1.19.0_darwin_arm64.tar.gz
    tar -xzf radar_v1.19.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.19.0/radar_v1.19.0_darwin_amd64.tar.gz
    tar -xzf radar_v1.19.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.19.0/radar_v1.19.0_linux_amd64.tar.gz
    tar -xzf radar_v1.19.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.19.0/radar-desktop_v1.19.0_linux_amd64.deb
    sudo dpkg -i radar-desktop_v1.19.0_linux_amd64.deb
    

    Fedora/RHEL:

    curl -LO https://github.com/skyhook-io/radar/releases/download/v1.19.0/radar-desktop_v1.19.0_linux_amd64.rpm
    sudo rpm -i radar-desktop_v1.19.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

    • 7c57234e272683650abfbcec13016c5a1824ee14 Avoid repeated map allocation when sorting GitOps trees (#2422)
    • 1d12b4280ab8d6b985306e42a1d2298eb413ea99 Check the agent's sign-in before the AI investigation consent step (#2420)
    • 82e70fcacda7fd2edcbb6ac89b0188d9fedb490d Fix the Home Kubernetes version line wrap and trim the cluster card (#2428)
    • ea52543868390537ac40c290cbaf7594e6d8a6ff Lead the assessment with its verdict, and show it when a turn finishes (#2431)
    • 7194ce5a265ead524aed1a3b4affe343f68a1221 Offer typed Omnibar words as an investigation question (#2398)
    • 35a7f4b98fa8a3a03bdc17ca0734725b3c9f31ed Open AI investigations from the engineer's question (#2396)
    • df62d6b293992e59891d17c327e18cc8d4f6d706 Place Pod citations on single-pod metrics charts in investigation stories (#2392)
    • 6afe540fd48925e0afbe19038e6b4ae119005277 README: Product Hunt badge for today's launch (#2421)
    • d7d902d278d6505485dd93d5cb340dce08b62629 README: give MCP and AI investigations equal footing with the UI (#2433)
    • 9beba5718edc7c08c6878caf027fc3e6d8d01744 Recover from the investigation limit: list the running ones, stop one, start yours (#2419)
    • 13042df9b6a8993cb1cafaf97a8e2f95969e133a Reuse coverage bookkeeping across ownership searches (#2423)
    • 0f408985bbc6735c1cfab714bc0c68647db3230a Reuse dynamic observation views across ownership searches (#2425)
    • 58fada8a3dd9aa888eb08c768770126b55d30488 Reuse served-version selection within ownership sessions (#2424)
    • 1fe36813b049a59453ac1b5fdb9d6022f53b19be Show dates on multi-day chart time axes (#2418)
    • 3e1f5c2cfdc65e44dbbd094c8079814578f42924 Show placed charts in investigation stories, folded by the agent's compact marker (#2412)
    • 6176b50959a6da07d342af4ef1dc28bc2087892c Start AI investigations from a question (#2397)
    • 1cf0dea9ca839b355335ae03523e586b0d27aea8 Start an investigation from the Home cluster card (#2432)
    • 09767e0fe8e4c4968517bbc326ae645792feb8e2 Surface blocked Argo auto-sync, resource warnings, and sync hazards (#2043)
    • 456aea76d840c4

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Radar

    The missing open-source Kubernetes UI, with a built-in MCP server for your AI agent. Single binary. No account required. Free forever.

    🌐 radarhq.io · Docs · Benchmarks · Releases

    Radar shows you what's broken in a Kubernetes cluster, why, and what changed: issues, topology, a timeline of events and resource changes, Helm, GitOps, traffic, audit, and upgrade impact. Your AI agent reads the same cluster data and relationships through Radar's MCP server, and Radar can run an AI investigation for you with the agent CLI you already use. It runs on your laptop as a kubectl plugin or desktop app, or in-cluster with Helm.

    CI CodeQL Release Downloads Helm repo downloads Discord License

    Install and run in 30 seconds:

    curl -fsSL https://get.radarhq.io | sh && kubectl radar
    

    Or brew install kubectl-radar. Windows, Krew, desktop app and Helm ↓

    Then, with Radar running, connect your AI agent (read-only):

    claude mcp add --transport http radar http://localhost:9280/mcp-readonly
    

    Codex, Cursor, GitHub Copilot, other clients, and the desktop app ↓

    Why Radar?

    • Nothing to install in your cluster — a single binary on your laptop that talks to the Kubernetes API with your kubeconfig. No agents, no CRDs, no dependencies
    • Fast on big clusters — tested on tens of thousands of pods; watches the cluster through informers and pushes live updates to the browser over SSE
    • Private by design — your cluster data stays on your machine. No account, no agents, no cloud sync. Usage reporting is off unless you opt in, and then sends only anonymous usage counts and coarse cluster facts: Kubernetes version, platform, node-count range, known integrations (what Radar sends). An AI agent you connect sends what it reads to its own model provider
    • Airgapped-friendly — runs as a single binary against the Kubernetes API and works in locked-down environments with outbound egress blocked
    • Works everywhere — GKE, EKS, AKS, minikube, kind, k3s, or any conformant cluster
    • One model of the cluster, for you and your agent — the UI, the MCP server, and AI investigations read the same live data: relationships, health, events, and changes
    • Ready for teams — deploy in-cluster with Helm for shared access, with SSO (OIDC or an auth proxy) and per-user Kubernetes RBAC in the open-source build

    "Have Radar deployed at work. As far as Kubernetes dashboards go, this is one of the best." — u/TheRealNetroxen


    Debugging in the UI

    Start from Issues, a ranked queue of what's broken right now. Open a failing resource to see it in context: its owners, Pods, Services, and config on the Topology, what changed and when on the Timeline (with diffs), and its events, logs, and YAML in the detail drawer. Helm, GitOps, and Traffic cover how it got deployed and who talks to it. When you want help, Investigate hands the same evidence to your agent (AI investigations). Radar records resource changes while it watches the cluster; history is in memory by default, and --timeline-storage=sqlite or postgres keeps it across restarts.


    AI agents: MCP server and AI investigations

    Pointed at raw kubectl, an agent spends its context window on YAML and its time on round trips. Radar's built-in Model Context Protocol (MCP) server gives it what Radar already knows instead: how resources connect, what is unhealthy, deduplicated events, recent changes with diffs, and filtered logs. In our benchmarks, the same agent and model reached a diagnosis about 3× faster through Radar than through kubectl (details).

    Connect your agent

    MCP is on by default and served on the same port as the UI: 9280 unless you set --port. The desktop app picks its own port: copy the URL from Radar's MCP dialog and change the final /mcp to /mcp-readonly. Start with the read-only endpoint:

    # Claude Code
    claude mcp add --transport http radar http://localhost:9280/mcp-readonly
    
    # Codex
    codex mcp add radar --url http://localhost:9280/mcp-readonly
    

    Setup for Cursor, VS Code (GitHub Copilot), Copilot CLI, OpenCode, Google Antigravity, Kiro, JetBrains, Cline, Devin, Claude Desktop, Zed, Gemini CLI, and any other MCP client is in the MCP guide. Its examples use /mcp; use /mcp-readonly instead to keep Radar's tools read-only. Your agent's other tools follow its own configuration.

    • Context, not raw YAML — topology, health assessments, events, changes, and logs, minified so they don't burn the context window. The tools cover resources and topology, issues, events and changes, logs, Helm, audit, upgrade readiness, RBAC, cost, and Prometheus
    • You pick the endpoint — /mcp-readonly has no write tools. The full /mcp endpoint, also on by default, adds write tools (restart, scale, apply, rollback, GitOps sync, node drain) marked destructive so clients can ask before running them. On /mcp, diagnose can also run an in-cluster reachability probe that creates short-lived pods. Calls use Radar's Kubernetes access: your kubeconfig locally, or each user's own RBAC when authentication is on. --mcp-read-only turns /mcp off (and with it, applying a fix from an AI investigation); --no-mcp turns MCP and AI investigations off. Neither blocks ordinary UI writes
    • Secret values are withheld — Secret reads never include .data or .stringData. Environment variables, Helm values, and logs are scrubbed for known secret patterns, which can't catch everything, and the opt-in exec_pod tool returns raw command output. See MCP security

    AI investigations

    Radar can also run the investigation for you, with the agent CLI you already have — Claude Code, Codex, Cursor, or OpenCode — on your machine and signed in with your own account. Radar needs no API key of its own. Start one from a resource's Investigate action, from an issue, by describing what you're seeing on the AI investigations page (where to start, since when, and optionally the resource it's about), or from a terminal against a running Radar:

    radar diagnose deploy/checkout -n shop
    radar diagnose deploy/checkout -n shop --json > conclusion.json
    

    Every investigation ends on the same Findings page, with the evidence behind each claim. Radar's investigation tools can only read the cluster, and Radar applies a fix only when you approve it, from an investigation of the resource it changes. What else the agent can do depends on how Radar runs it. Radar safeguards (Claude Code and Codex) shuts off the agent's other MCP servers and its ability to write. Your agent setup (the only option for Cursor and OpenCode) runs the agent with its normal configuration, tools, and MCP servers, which Radar cannot constrain and which may be able to change your cluster. Cursor and OpenCode approve tool requests automatically in these runs, without asking you. See agents and isolation.

    Investigations need a supported agent CLI on the machine running Radar, MCP on, and authentication off. In-cluster installs don't run them. See the AI investigations guide and agent CLI setup.

    Benchmarks

    Three studies of an AI agent diagnosing live faults from SREGym (Microsoft and UIUC) on a 3-node EKS cluster, with the same judge scoring every tool. Times are averages to a submitted answer, right or wrong. These are our own benchmarks; compare numbers within a study, not across studies.

    StudyFaultsResult
    Radar MCP vs raw kubectl — same agent and model5064s vs 191s to a diagnosis (about 3× faster); 86% vs 60% diagnosed correctly within two minutes
    Kubernetes MCP servers — Radar, containers/kubernetes-mcp-server, Flux159/mcp-server-kubernetes, Amazon EKS MCP Server, k8sgpt, raw kubectl25Radar took 57s, 2.3× faster than the next-fastest MCP server; on the 14 faults every tool got right, 33s vs 58s for the next-fastest
    AI SRE tools — Claude Code + Radar MCP vs kubectl-ai, HolmesGPT, OpenSRE, kagent, AWS DevOps Agent50Claude Code + Radar MCP was the most accurate (44/50 correct), fastest (79s), and cheapest ($0.27 a fault)

    Per-scenario scores and timings are downloadable from the benchmark pages; the AI SRE study also includes costs.


    Installation

    Quick Install:

    curl -fsSL https://get.radarhq.io | sh
    

    Homebrew:

    brew install kubectl-radar
    

    Also available from our tap: brew install skyhook-io/tap/radar.

    Then run: kubectl radar. Quick install, PowerShell, Homebrew, and Scoop also set up the radar shorthand. Krew and direct downloads use kubectl radar unless you add your own radar symlink.

    CLI

    Krew (kubectl plugin manager):

    kubectl krew install radar
    

    Scoop (Windows):

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

    PowerShell (Windows):

    irm https://get.radarhq.io/install.ps1 | iex
    

    Custom install location (macOS/Linux):

    curl -fsSL https://get.radarhq.io | INSTALL_DIR="$HOME/.local/bin" sh
    

    Quick install writes to /usr/local/bin unless INSTALL_DIR says otherwise. The directory is created if missing, and needs to be on your PATH for radar and kubectl radar to resolve.

    Direct download — GitHub Releases for macOS, Linux, or Windows.

    Desktop App

    Native desktop app — no terminal needed.

    Homebrew (macOS):

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

    Debian/Ubuntu — download the .deb from GitHub Releases, then:

    sudo apt install ./radar-desktop_*.deb
    

    Fedora/RHEL — download the .rpm from GitHub Releases, then:

    sudo rpm -i radar-desktop_*.rpm
    

    Scoop (Windows):

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

    Windows (direct download) — GitHub Releases.

    In-Cluster Deployment

    Deploy to your cluster for shared team access:

    helm repo add skyhook https://skyhook-io.github.io/helm-charts
    helm install radar skyhook/radar -n radar --create-namespace
    

    See the In-Cluster Deployment Guide for Gateway API and ingress exposure, authentication, and RBAC configuration.


    Usage

    # Opens browser automatically
    kubectl radar
    
    # Quick install, PowerShell, Homebrew, and Scoop also set up the bare command
    radar
    

    Common flags

    FlagDefaultDescription
    --kubeconfig~/.kube/configPath to primary kubeconfig file
    --namespace(context namespace)Initial namespace filter (supports multi-select in the UI; also used as RBAC fallback for namespace-scoped users). Unset, Radar uses your saved pick, then the kubeconfig context's namespace, then all namespaces
    --port9280Server port
    --listen-address127.0.0.1HTTP listen IP address (IPv4 or IPv6), or localhost. Bind a specific local IP or use 0.0.0.0 for all interfaces. Non-loopback access needs authentication and network controls.
    --no-browserfalseDon't auto-open browser
    --timeline-storagememoryTimeline storage backend: memory, sqlite, or postgres
    --disable-execfalseDisable pod terminal, debug shells, pod file browsing, CloudNativePG sessions and MCP exec_pod
    --auth-modenoneAuthentication mode: none, proxy, or oidc (details)
    --no-mcpfalseDisable all MCP endpoints
    --mcp-read-onlyfalseExpose only read-only MCP tools; disable /mcp (env: RADAR_MCP_READ_ONLY)

    The Configuration Guide describes every startup flag in the table above and 27 more, plus tuning for slow or high-latency clusters, kubeconfig precedence, and context switching.

    --kubeconfig-dir, --namespaces, --namespace-scope, --base-path, --allowed-hosts, --trusted-origins, --browser, --timeline-db, --timeline-max-size, --history-limit, --disable-helm-write, --disable-local-terminal, --debug-image, --list-page-size, --context-switch-timeout, --first-paint-backstop, --namespace-list-timeout, --max-scope-candidates, --prometheus-url, --prometheus-single-cluster, --prometheus-cluster-label, --prometheus-header, --prometheus-header-from-env, --beyla-job-selector, --opencost-currency, --mcp-catalog-stdio, --version

    radar --help is authoritative for the installed version. radar cloud status inspects an in-cluster Radar Cloud installation without changing it (details).


    Views

    Issues

    One ranked queue of what's broken right now — crash loops, image pull failures, stuck rollouts, pods that can't be scheduled, dangling references, and failing Argo CD / Flux conditions — each with an Investigate action. See Issues.

    Topology

    Interactive graph showing how your Kubernetes resources are connected in real-time.

    • Two modes: Resources (full hierarchy) and Traffic (network flow path)
    • Group by namespace, app label, or view ungrouped
    • Filter by resource kind — click any node for full details
    • Auto-layout powered by ELK.js, live updates via SSE

    Resources

    Table-based resource browser with smart columns per resource kind.

    • Browse all resource types including CRDs
    • Inspect CRD definitions, versions, instances, and searchable schemas
    • Search by name, filter by status or problems (CrashLoopBackOff, ImagePullBackOff, etc.)
    • Add custom columns from any label or annotation — sortable, filterable, and resizable
    • Click any resource for YAML manifest, related resources, logs, and events
    • Set regular or init-container images on Deployments, StatefulSets, DaemonSets, and Argo Rollouts, with live rollout progress in tables, drawers, workload views, and Applications

    Image Filesystem Viewer

    Inspect container image filesystems directly from the Pod view — no need to pull images locally or exec into containers.

    • Browse, search, and download files from any container image in a Pod
    • Works with public images (Docker Hub, Quay, GHCR) and private registries (GCR, ECR, ACR) using your cluster's ImagePullSecrets

    See Image filesystem.

    Timeline

    Unified timeline of Kubernetes events and resource changes.

    • Filter by event type (all or warnings only)
    • Resource change diffs showing what changed (replicas, images, etc.)
    • Real-time updates as new events occur

    Helm

    Manage Helm releases deployed in your cluster — inspect values and rendered manifests, diff revisions, see why an upgrade or hook failed, then upgrade, roll back, or uninstall. Radar tracks available chart upgrades from your configured repos or your own OCI registries. See Helm Support for the detailed behavior and limits.

    Compare Resources

    Diff any two Kubernetes resources of the same kind side-by-side — like comparing a staging Deployment to its production sibling, or two pods that should be identical but aren't. Server-assigned noise (managedFields, resourceVersion, last-applied) is stripped, and diff-only and spec-only modes cut the rest. See Compare.

    TLS Certificate Management

    View TLS certificate details and expiry dates across all namespaces — catch expiring certificates before they cause outages.

    • Parses TLS secrets to show certificate subject, issuer, and validity period
    • Dashboard-level certificate expiry overview
    • Available from the resource detail view for any TLS-type Secret

    GitOps

    Monitor, diagnose, and manage FluxCD and ArgoCD resources in one place.

    • Fleet view + per-app detail page for ArgoCD (Application, ApplicationSet, AppProject) and FluxCD (GitRepository, OCIRepository, HelmRepository, Bucket, Kustomization, HelmRelease, Alert)
    • Diagnosis — field-level drift, recent events per resource, stuck-drift-loop detection, parsed operation failures, one-click remediation
    • Sync, suspend, resume, reconcile, and rollback from the UI or through MCP

    See the GitOps guide for the full feature matrix, RBAC requirements, demo cluster, and single-cluster scope notes.

    Traffic

    Visualize live network traffic between services using Hubble, Caretta, Istio, or Beyla.

    • Auto-detects Hubble (Cilium), Istio, Caretta, or Grafana Beyla as traffic data sources, with a setup wizard to install one if none is detected
    • Beyla needs its network feature enabled, and per-port edges additionally need dst.port and transport named in attributes.select — both are off by default, and Radar says so in the Traffic view rather than showing partial edges silently
    • Animated flow graph showing requests per second between services, filterable by namespace, protocol, or status code
    • Focus on a workload to see only it and what it talks to; the focus is in the URL, so it can be shared

    See Traffic for source-specific requirements and large-cluster behavior.

    Workload Metrics

    Open a Deployment, StatefulSet or DaemonSet's Metrics tab to investigate request rate, HTTP errors, latency, CPU, memory and throttling. Radar reads an existing Prometheus-compatible backend; resource charts do not require HTTP instrumentation, and request charts use supported Beyla or Istio observations.

    See Workload metrics for screenshots, prerequisites, supported configurations and local multi-cluster setup limitations.

    Capacity (Karpenter)

    Read-only diagnosis for Karpenter-managed fleets — why is my pod pending, which NodePool could take it, why aren't my nodes joining, what is disruption doing to my fleet? Appears automatically when Karpenter NodePools are detected (RBAC-gated). Overview, NodePool detail, Demand, and Activity screens; every quantity carries its certainty (= ≥ ≤ ?), so unavailable is never shown as zero. See docs/capacity.md.

    Cost Insights

    Track Kubernetes spending from OpenCost metrics in a PromQL-compatible backend or a Kubecost 3 Aggregator: allocated workload cost, namespace and workload breakdowns with efficiency scoring, node costs, and trends when Prometheus history is available. Appears automatically when compatible data is detected. See Cost.

    Cluster Audit

    Proactive best-practices scanner with 44 checks across security, reliability, and efficiency — inspired by Polaris, Kubescape, Trivy, and NSA/CISA guidelines. Runs instantly against cached data with zero cluster-side installation.

    • Security: privileged containers, privilege escalation, host namespaces, runtime socket mounts, secrets in ConfigMaps, and more
    • Reliability: missing probes, image tag latest, single-replica deployments, missing PDB/topology spread, deprecated API versions
    • Efficiency: missing requests and limits, orphan ConfigMaps/Secrets, PVCs with no consumer observed, long-Pending PVCs, and Released or Failed PVs
    • Remediation guidance per finding, NSA/CISA and CIS framework labels, and per-resource opt-out via the radarhq.io/ignore-checks annotation

    See Cluster audit and audit configuration.

    Network Path Diagnose

    Hop-ordered diagnosis for Service, Ingress, HTTPRoute, GRPCRoute, and Gateway — answering "if traffic is sent toward this resource, does it reach a healthy process, and if not which hop breaks first?" It names the first broken hop with a kubectl reproducer, predicts NetworkPolicy blocks, and can run an optional DNS / TCP / TLS / HTTP probe from your laptop or in-cluster. Open the Reachability tab on the resource; see docs/reachability.md.

    Kubernetes Upgrade Impact

    Open Checks → Upgrade impact before upgrading the control plane. Radar compares the current cluster with a target Kubernetes minor and orders evidenced compatibility, health, admission, drain, runtime, and configuration checks by required action — APIs removed in the target release, kubelet and kube-proxy skew, overlapping PodDisruptionBudgets, removed feature gates — using live resources, Helm release manifests, last-applied configuration, and API server metrics.

    See the Kubernetes upgrade impact guide for the check catalog, coverage semantics, and RBAC notes.

    Access Control (RBAC visibility)

    Inspect what any ServiceAccount can actually do — without three kubectl describe calls.

    • ServiceAccount, Role, and binding details: direct and inherited bindings, effective permissions, and the Pods that use a ServiceAccount
    • Pod and workload Permissions: the most-permissive rules the Pod's ServiceAccount grants, with a blast-radius alert for wildcards, cluster-admin, escalation verbs, or cluster-wide create pods
    • "My Permissions" panel: a live SelfSubjectRulesReview for the current user, for fast "why can't I do X" debugging

    See Access control.

    Authentication

    For shared in-cluster deployments, Radar supports optional user authentication with per-user Kubernetes RBAC.

    • Proxy mode — works with oauth2-proxy, Pomerium, Cloudflare Access, or any auth proxy that sets forwarded headers
    • OIDC mode — built-in login via Google, Okta, Dex, Keycloak, or any OIDC provider
    • Per-user namespace scoping and write authorization via K8s impersonation
    • UI adapts automatically — buttons only appear if the user has RBAC permission

    No auth by default (local use). See the Authentication Guide for setup.


    Supported Resources & Integrations

    Radar auto-discovers any CRD in your cluster. Popular tools get dedicated integrations with resource views, topology, AI context and application evidence. Coverage varies by integration.

    The Helm chart grants read access to common built-in Kubernetes kinds; Secrets and RBAC objects depend on chart settings and the authentication mode. CRD-based integrations need the CRD installed in your cluster and read access; most API groups are granted by default, and the chart's RBAC and CRD access sections list what is on, what is opt-in, and how to add rules.

    Category / integrationCoverage
    WorkloadsDeployments, DaemonSets, StatefulSets, ReplicaSets, Pods, Jobs, CronJobs
    NetworkingServices, Ingresses, NetworkPolicies, Endpoints, EndpointSlices, PodDisruptionBudgets
    ConfigurationConfigMaps, Secrets (names only, values hidden), LimitRanges, ResourceQuotas
    StoragePersistentVolumeClaims, PersistentVolumes, StorageClasses
    AutoscalingHorizontalPodAutoscalers, VerticalPodAutoscalers
    ClusterNodes, Namespaces, ServiceAccounts, Events
    Other Kubernetes APIsWorkloads, PodGroups, CompositePodGroups, PodCertificateRequests, ClusterTrustBundles (only when served by the cluster)
    GitOps (FluxCD)GitRepository, OCIRepository, HelmRepository, Kustomization, HelmRelease, Alert
    GitOps (ArgoCD)Application, ApplicationSet, AppProject
    Argo RolloutsRollout
    Argo WorkflowsWorkflow, WorkflowTemplate
    ReflectorConfigMap/Secret reflection details, source and mirror relationships, recorded copy evidence
    cert-managerCertificate, CertificateRequest, Order, Challenge, Issuer, ClusterIssuer
    Gateway APIGateway, GatewayClass, HTTPRoute, GRPCRoute, TCPRoute, TLSRoute, UDPRoute
    IstioVirtualService, DestinationRule, Gateway, ServiceEntry, PeerAuthentication, AuthorizationPolicy
    TraefikIngressRoute, IngressRouteTCP, IngressRouteUDP, Middleware, MiddlewareTCP, TraefikService, ServersTransport, ServersTransportTCP, TLSOption, TLSStore
    ContourHTTPProxy
    Knative ServingService, Configuration, Revision, Route, DomainMapping
    Knative EventingBroker, Trigger, EventType, Channel, InMemoryChannel, Subscription
    Knative SourcesPingSource, ApiServerSource, ContainerSource, SinkBinding
    Knative FlowsSequence, Parallel
    Knative NetworkingIngress, Certificate, ServerlessService
    KarpenterNodePool, NodeClaim (+ provider-specific NodeClasses via auto-discovery)
    OpenTelemetry OperatorOpenTelemetryCollector and Instrumentation: reconciliation, configured pipelines and injection settings
    FlaggerCanary and MetricTemplate: recorded rollout state, target/autoscaler/template links and failed-rollout Issues
    KEDAScaledObject, ScaledJob, TriggerAuthentication, ClusterTriggerAuthentication
    Prometheus OperatorServiceMonitor, PodMonitor, PrometheusRule, Alertmanager
    Security (Trivy)VulnerabilityReport, ConfigAuditReport, ExposedSecretReport, ClusterComplianceReport, SbomReport, RbacAssessmentReport, InfraAssessmentReport
    StrimziKafkaConnector failure evidence (connector/task status)
    RabbitMQNode-reported disk and memory alarms - local collection
    NATSJetStream consumer backlog, acknowledgment-pending and redelivery counters - local collection
    VeleroBackup, Restore, Schedule, BackupStorageLocation, VolumeSnapshotLocation
    External SecretsExternalSecret, ClusterExternalSecret, SecretStore, ClusterSecretStore
    VaultInitialization, seal and standby state - local collection
    CloudNativePGCluster, Backup, ScheduledBackup, Pooler, Database, Publication, Subscription, ImageCatalog, ClusterImageCatalog, ObjectStore — plus dedicated views for fleet, protection and declaration triage
    CrossplaneManaged Resources (any provider), Composite Resources, Claims, Provider, ProviderConfig, Function, Configuration, Composition, CompositionRevision, XRD
    KyvernoPolicy, ClusterPolicy, PolicyReport, ClusterPolicyReport
    Sealed SecretsSealedSecret
    Dynamic Resource AllocationResourceClaim, ResourceClaimTemplate, DeviceClass, ResourceSlice (resource.k8s.io, K8s 1.32+)
    NVIDIA GPU OperatorClusterPolicy, NVIDIADriver
    CalicoNetworkPolicy, GlobalNetworkPolicy, StagedNetworkPolicy, StagedGlobalNetworkPolicy, StagedKubernetesNetworkPolicy, IPPool, HostEndpoint, Tier
    KueueClusterQueue, LocalQueue, Workload, ResourceFlavor, AdmissionCheck (+ Cluster Autoscaler ProvisioningRequest) — basic
    KubeRayRayCluster, RayJob, RayService, RayCronJob — basic
    KServeInferenceService, ServingRuntime, ClusterServingRuntime, InferenceGraph, TrainedModel, LLMInferenceService — basic
    Inference GatewayInferencePool (v1 + alpha groups), InferenceObjective — basic
    BatchLeaderWorkerSet, JobSet, Volcano (Job/Queue/PodGroup/JobFlow/JobTemplate), Kubeflow (PyTorchJob/TFJob/MPIJob/TrainJob) — basic
    KAI SchedulerQueue, PodGroup — basic
    Model servingKAITO (Workspace, RAGEngine), NVIDIA NIM (NIMService/NIMCache/NIMPipeline), AMD GPU Operator (DeviceConfig) — basic
    Cost (OpenCost / Kubecost)Namespace/workload/node cost via compatible Prometheus metrics or the Kubecost 3 Aggregator (no CRDs)
    CRDsAny Custom Resource Definition in your cluster (auto-discovered)

    Local runtime evidence

    When Radar runs locally, use Collect RabbitMQ evidence, Collect NATS evidence or Collect Vault evidence in resource details to select a Pod and collect explicitly. MCP clients can also collect after operator approval.

    These observations describe one Pod endpoint, not overall application health, and do not add automatic Issues detection. See the collection requirements and limitations.


    Keyboard Shortcuts

    Radar is keyboard-first: ? lists every shortcut, ⌘K opens the command palette, / focuses search, and g followed by a letter switches views (g i Issues, g t Topology, g l Timeline, g r Resources). The full list is in the keyboard shortcuts reference.


    Security

    Radar reads your cluster through your own credentials and keeps cluster data local. It does not upload manifests, logs, events, metrics, or resource data to Skyhook, and it does not require an account, agent, or cloud backend. When you connect an AI agent or run an AI investigation, what Radar returns goes to that agent and its model provider. Found a vulnerability? Please report it privately to [email protected] — see SECURITY.md for the process and response timelines.


    Development

    See the Development Guide for building from source and contributing. For automation and integrations, see the HTTP API reference.

    Quick start:

    git clone https://github.com/skyhook-io/radar.git
    cd radar
    make deps
    
    # Terminal 1: Frontend with hot reload (port 9273)
    make watch-frontend
    
    # Terminal 2: Backend with hot reload (port 9280)
    make watch-backend
    

    Contributing

    Contributions are welcome! Please read our Contributing Guide for details on the development workflow, pull request process, and coding standards.

    Questions or ideas? GitHub Discussions is the place — or come say hi at radarhq.io/community.


    About

    Radar is built and maintained by Skyhook (YC W23) and is open source under Apache-2.0. The OSS version is fully featured and the recommended way to run Radar.

    For teams that want hosted multi-cluster Radar, with fleet views, alerts, and shared links, we also offer Radar Cloud.


    License

    Apache 2.0 — see LICENSE