neuron-explorer
Qwen3.5‑4B 전용 조향형 뉴런 탐색기, 모든 MLP 뉴런을 밀어 결과를 보관·탐색
오픈소스 쿠버네티스 UI와 내장 MCP 서버로 AI 에이전트를 관리·문제 진단·애플리케이션 파악·토폴로지·이벤트·GitOps·트래픽을 추적
Open-source Kubernetes UI with a built-in MCP server for AI agents. Diagnose Issues, understand Applications, and trace topology, events, GitOps, and traffic.
개발 도구Go · TypeScriptGitHub @skyhook-io온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
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.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
The missing open-source Kubernetes UI.
Single binary. No account required. Free forever.
Topology, resources, Helm, GitOps, traffic, audit, upgrade impact, and MCP context for AI agents — from your laptop or in-cluster.README 전문 보기 ↗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.
🚀 We're on Product Hunt today with Radar's upgraded MCP server and AI investigations. Come say hi and drop us a comment.
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 ↓
"Have Radar deployed at work. As far as Kubernetes dashboards go, this is one of the best." — u/TheRealNetroxen
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.
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).
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.
/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.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 securityRadar 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.
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.
| Study | Faults | Result |
|---|---|---|
| Radar MCP vs raw kubectl — same agent and model | 50 | 64s 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 kubectl | 25 | Radar 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 Agent | 50 | Claude 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.
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.
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.
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.
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.
# Opens browser automatically
kubectl radar
# Quick install, PowerShell, Homebrew, and Scoop also set up the bare command
radar
Common flags
| Flag | Default | Description |
|---|---|---|
--kubeconfig | ~/.kube/config | Path 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 |
--port | 9280 | Server port |
--listen-address | 127.0.0.1 | HTTP 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-browser | false | Don't auto-open browser |
--timeline-storage | memory | Timeline storage backend: memory, sqlite, or postgres |
--disable-exec | false | Disable pod terminal, debug shells and pod file browsing |
--auth-mode | none | Authentication mode: none, proxy, or oidc (details) |
--no-mcp | false | Disable all MCP endpoints |
--mcp-read-only | false | Expose 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).
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.
Interactive graph showing how your Kubernetes resources are connected in real-time.
Table-based resource browser with smart columns per resource kind.
Inspect container image filesystems directly from the Pod view — no need to pull images locally or exec into containers.
See Image filesystem.
Unified timeline of Kubernetes events and resource changes.
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.
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.
View TLS certificate details and expiry dates across all namespaces — catch expiring certificates before they cause outages.
Monitor, diagnose, and manage FluxCD and ArgoCD resources in one place.
Application, ApplicationSet, AppProject) and FluxCD (GitRepository, OCIRepository, HelmRepository, Bucket, Kustomization, HelmRelease, Alert)See the GitOps guide for the full feature matrix, RBAC requirements, demo cluster, and single-cluster scope notes.
Visualize live network traffic between services using Hubble, Caretta, Istio, or Beyla.
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 silentlySee Traffic for source-specific requirements and large-cluster behavior.
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.
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.
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.
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.
latest, single-replica deployments, missing PDB/topology spread, deprecated API versionsradarhq.io/ignore-checks annotationSee Cluster audit and audit configuration.
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.
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.
Inspect what any ServiceAccount can actually do — without three kubectl describe calls.
create podsSelfSubjectRulesReview for the current user, for fast "why can't I do X" debuggingSee Access control.
For shared in-cluster deployments, Radar supports optional user authentication with per-user Kubernetes RBAC.
No auth by default (local use). See the Authentication Guide for setup.
Radar auto-discovers any CRD in your cluster. Popular tools get dedicated integrations with topology edges, detail views, and AI summaries.
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 | Resources |
|---|---|
| Workloads | Deployments, DaemonSets, StatefulSets, ReplicaSets, Pods, Jobs, CronJobs |
| Networking | Services, Ingresses, NetworkPolicies, Endpoints, EndpointSlices, PodDisruptionBudgets |
| Configuration | ConfigMaps, Secrets (names only, values hidden), LimitRanges, ResourceQuotas |
| Storage | PersistentVolumeClaims, PersistentVolumes, StorageClasses |
| Autoscaling | HorizontalPodAutoscalers, VerticalPodAutoscalers |
| Cluster | Nodes, Namespaces, ServiceAccounts, Events |
| Other Kubernetes APIs | Workloads, PodGroups, CompositePodGroups, PodCertificateRequests, ClusterTrustBundles (only when served by the cluster) |
| GitOps (FluxCD) | GitRepository, OCIRepository, HelmRepository, Kustomization, HelmRelease, Alert |
| GitOps (ArgoCD) | Application, ApplicationSet, AppProject |
| Argo Rollouts | Rollout |
| Argo Workflows | Workflow, WorkflowTemplate |
| Reflector | ConfigMap/Secret reflection details, source and mirror relationships, recorded copy evidence |
| cert-manager | Certificate, CertificateRequest, Order, Challenge, Issuer, ClusterIssuer |
| Gateway API | Gateway, GatewayClass, HTTPRoute, GRPCRoute, TCPRoute, TLSRoute, UDPRoute |
| Istio | VirtualService, DestinationRule, Gateway, ServiceEntry, PeerAuthentication, AuthorizationPolicy |
| Traefik | IngressRoute, IngressRouteTCP, IngressRouteUDP, Middleware, MiddlewareTCP, TraefikService, ServersTransport, ServersTransportTCP, TLSOption, TLSStore |
| Contour | HTTPProxy |
| Knative Serving | Service, Configuration, Revision, Route, DomainMapping |
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.
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.
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
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.
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.
Apache 2.0 — see LICENSE
| Knative Eventing | Broker, Trigger, EventType, Channel, InMemoryChannel, Subscription |
| Knative Sources | PingSource, ApiServerSource, ContainerSource, SinkBinding |
| Knative Flows | Sequence, Parallel |
| Knative Networking | Ingress, Certificate, ServerlessService |
| Karpenter | NodePool, NodeClaim (+ provider-specific NodeClasses via auto-discovery) |
| OpenTelemetry Operator | OpenTelemetryCollector and Instrumentation: reconciliation, configured pipelines and injection settings |
| Flagger | Canary and MetricTemplate: recorded rollout state, target/autoscaler/template links and failed-rollout Issues |
| KEDA | ScaledObject, ScaledJob, TriggerAuthentication, ClusterTriggerAuthentication |
| Prometheus Operator | ServiceMonitor, PodMonitor, PrometheusRule, Alertmanager |
| Security (Trivy) | VulnerabilityReport, ConfigAuditReport, ExposedSecretReport, ClusterComplianceReport, SbomReport, RbacAssessmentReport, InfraAssessmentReport |
| Strimzi | KafkaConnector failure evidence (connector/task status) |
| Velero | Backup, Restore, Schedule, BackupStorageLocation, VolumeSnapshotLocation |
| External Secrets | ExternalSecret, ClusterExternalSecret, SecretStore, ClusterSecretStore |
| CloudNativePG | Cluster, Backup, ScheduledBackup, Pooler, Database, Publication, Subscription, ImageCatalog, ClusterImageCatalog, ObjectStore — plus dedicated views for fleet, protection and declaration triage |
| Crossplane | Managed Resources (any provider), Composite Resources, Claims, Provider, ProviderConfig, Function, Configuration, Composition, CompositionRevision, XRD |
| Kyverno | Policy, ClusterPolicy, PolicyReport, ClusterPolicyReport |
| Sealed Secrets | SealedSecret |
| Dynamic Resource Allocation | ResourceClaim, ResourceClaimTemplate, DeviceClass, ResourceSlice (resource.k8s.io, K8s 1.32+) |
| NVIDIA GPU Operator | ClusterPolicy, NVIDIADriver |
| Calico | NetworkPolicy, GlobalNetworkPolicy, StagedNetworkPolicy, StagedGlobalNetworkPolicy, StagedKubernetesNetworkPolicy, IPPool, HostEndpoint, Tier |
| Kueue | ClusterQueue, LocalQueue, Workload, ResourceFlavor, AdmissionCheck (+ Cluster Autoscaler ProvisioningRequest) — basic |
| KubeRay | RayCluster, RayJob, RayService, RayCronJob — basic |
| KServe | InferenceService, ServingRuntime, ClusterServingRuntime, InferenceGraph, TrainedModel, LLMInferenceService — basic |
| Inference Gateway | InferencePool (v1 + alpha groups), InferenceObjective — basic |
| Batch | LeaderWorkerSet, JobSet, Volcano (Job/Queue/PodGroup/JobFlow/JobTemplate), Kubeflow (PyTorchJob/TFJob/MPIJob/TrainJob) — basic |
| KAI Scheduler | Queue, PodGroup — basic |
| Model serving | KAITO (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) |
| CRDs | Any Custom Resource Definition in your cluster (auto-discovered) |