########## ##########
################# #################
##################### #####################
####### ####### ####### #######
###### ####### ####### ## ######
###### ######## ########### ### ######
##### ## #### #### ######### ###### #####
##### ## ######### ######### ####### #####
###### ######## ########### ### ######
###### ####### ####### ## ######
####### ####### ####### # #######
##################### #####################
################# #################
########### ############
InfraEye is an agentless observability platform. One Command Center for the whole estate: bare-metal Linux boxes, Kubernetes clusters, the databases behind them and the private networks they sit on.
Nothing gets installed on the machines you watch. A Go backend reaches out over SSH and the Kubernetes API to collect metrics, stream logs and run remediation, so your targets stay exactly as you left them. Postgres, MySQL, Redis and Kafka are reached the same way, through a secure gateway rather than a port you had to open.
Netra reads that telemetry and explains an incident in plain language, then hands you the command to fix it. Six built-in scanners sweep for kernel CVEs, weak hardening, and cluster, resource and code security issues before they bite. And when you would rather not be woken at all, XML-defined alert rules close the loop themselves, firing SSH remediation the moment a threshold trips.
Agentless telemetry · AI diagnostics · Security audit · Self-healing
Netra is a context-aware co-pilot that sits on top of your infrastructure. It queries logs, metrics and live Kubernetes state directly, so when something breaks it can tell you what happened in plain language instead of handing you another dashboard to read.
Ask it why a pod is restarting and it will pull the events, spot the memory limit, and give you the exact command to fix it. Bring your own model: Claude, Gemini, Mistral, DeepSeek or anything reachable through OpenRouter.
#######################
######*******######******#######
####*******##**###*##*###**##*******####
###******#####***##*#*##*#*##**######******###
###*****###**#***####*#*####*#*#####***#*###*****###
###+++*##*****####****##**#**#**##****####*****##****###
##*+++*#*****##****#####**##****##**#####****###****#**++*##
###***+++++*##***#**##********####********##**#***##**+++****###
##++*##******+*#**#*******##############*******#**#********##**+##
##*+++*+#++*#+*+*#*****####****##*##*##****####*****#*+**#***#+*+++*##
##+++*+*+#+++#+*++***###**####################**###****+*+#*++#+*+*+++##
##+=+*++*++****+*+*###**##########################**###*+*+****++*++*+++##
#*==+#+++#+++*****###**#*##########################*##*###******++#+++*+==*#
#*==+*+++#++##+++*#**##**############################*###**#*+++*#*+#+++*+==*#
##==+*+++#+*+*+++##**#**#############******##############*##*##+++*+*+#*++*+=+##
##===*+++#=++*+++#*+#**#######**********************#######**#+*#+++*++=#+++*===#*
#*==*++=*++**+++#*+#**####*+***####*****##*#***####*****####**#+*#+++**++*=++*==*#
*===*+++*=*++++##+#**##++++*####*********#*#####**####**+++##**#+##++++*=**++*+==*
#*==++==#=+**++*#+***++++*######++##*#############**######*++++***+#*++**+=#==++==**
*+====***#==+++#*+*+==+*######*++***################**######*++++*+*#+++=+#***====+#
*#===+*==+=**+++#+====*########++*#*###*=++*#########*+########*+==++#+++**=++=**===#*
**=+*==+==++=**+*===+#########*+++####+==+++*######**#+*#########*===***#=++==+==**=#*
***==+=+##*+*=**===*##########+++***##=====+++++##***#*+###########===**+*+*##+=+==*#*
**=+*==+==++=#*+*===+#########+=#**###=========+##**+++*#########+===****=++==+==**=#*
**===++====**+=+#+====*########=+*#*###+======+###**++=########*====+#+++**====*+===**
*+====+*+*==+=+**+*====+######+=*+**############**+*=+######*====*+*#+=+==*+**====+*
*+==++==*==*+++*#+**++===+#####*=++****##*###****++=*#####+====+**+#*++++==#==++==+*
*===+==+*=*=+=+**+#+*##=====####===++++**#*++*#*+=####+====##*+#+*#+=++*=*+==+===*+
*+==+===*==++==+**+***###*=====+##+====****+===+##*=====*###***+*#+==*+==*===+==+*
**===*===*=+=*+=+**+*+**#####*======================+#####**+*+*#+==*=+=*==+*===**
**===++=+*=++*==+**+**+*##########*+========+*##########*+**+**+=+*++=*+=++===+*
*+===+===*======++#++*#+**##########################**+#*++#++======*===+===+*
*+===+===+=#+=*#++*#*++*+**######################**+**+*#*+++*+*+**===+===+**
*+===+=+=*+#=###*=+*#*++#*+****############****+*#++*#*+==*#=*+*#*+=+===+*+
++====+=*=====**===++***++****+++**##**+++****++****+===++++=====+====+*
+*===+===+===*+=+*===++*#*++++++++**++++++++*#*++===*+=*##*=+=**====**
+*+==+==*+==*+==+++*+==+++********#*******++===+*++++=+#*+=+*+===+*+
+*+=========#+==++=+*++====+++****++=====++*+=++==+#+=========**
++=====++===+*+===+++++*==*#++++**==*++++++==+*+===+*=====+*
++=====++=+===**+======*+=+==+=+#+=====+**+==+=++=====++
+++=====++======++**+=+=+##+=+=+**++======++=====+++
++*+======++==++==*+=+=**=+=+*==++==++=======*++
++++=============*===+==*=============++++
++++=========++==++=========+++++
+++++++++++**+++++++++++
Chat tells you what's wrong. The Agent works on fixing it. Give it a goal and a target server, e.g. "find out why nginx keeps restarting and fix it", and it loops: propose one step, wait for you, run it, read the real output, then plan the next step, until the job is done.
Purpose-built modules covering monitoring, AI diagnostics, and Kubernetes management — all in a single unified platform.
Real-time CPU, memory, disk, and network metrics across bare-metal Linux, macOS, and Windows hosts — via secure, agentless SSH. Rich per-server overviews with uptime, load, and network throughput graphs.
A Lens-style cockpit for every cluster: pods, workloads, config, storage, RBAC, CRDs, and the full Gateway API. Create resources from templates, scale and rollout-restart workloads, and edit live YAML — all from one pane.
OS-native visibility into listening ports, system services, and interfaces — built for Linux (ss/systemctl), macOS (lsof/launchctl), and Windows (PowerShell). See exactly what's exposed on every host.
Selectively tail the right stream — journal, syslog, auth, or kernel on Linux; the unified log on macOS; Event Logs on Windows. For clusters, stream Kubernetes events and warnings live. All searchable and persisted.
Fine-grained access control — grant individual users visibility of specific servers and clusters. Cockpit-style OS account management lets admins create real Unix users on target machines with Admin, Read/Write, Log-Viewer, or Read-Only privileges.
A live command-center dashboard: per-node utilization timelines, aggregate network I/O, and automation activity — with 15m / 1h / 6h / 24h time filters and colorblind-safe, theme-aware charts.
Powered by Claude, Gemini, Mistral, DeepSeek, and OpenRouter — with per-user API keys — or point it at a self-hosted local LLM (Ollama, LM Studio) for API-key-free, fully private diagnostics. Ask questions about your infrastructure in natural language and get actionable remediation steps.
Full xterm.js-powered terminal directly in your browser — SSH into any managed server, or drop into a pod shell and stream container logs on Kubernetes, without leaving the dashboard.
Define threshold-based alerts on any metric. Receive notifications via Slack and Google Chat webhooks with configurable severity levels.
Automated remediation workflows that trigger on alert conditions — restart services, scale pods, and recover from failures, automatically.
Six scanners in one place: kernel CVEs, server hardening, cluster security, resource security, code security, and a DAST scanner backed by OWASP ZAP. Findings land with severity, evidence and a remediation path rather than a raw report dump.
Register Postgres, MySQL, Redis, Kafka, HTTP/S and plain TCP services as first-class entries. Browse schemas and rows, run SQL from a built-in console, walk Redis keys and Kafka topics, all through a secure gateway so nothing has to be exposed publicly.
Give it a goal and it plans, executes and re-plans against real output. Every step that would touch a server stops for your explicit approval first, so nothing runs unattended. Backed by Claude or any OpenRouter model.
A live topology of everything InfraEye can reach: servers, Kubernetes clusters and their nodes, registered resources, and hosts discovered by scanning. Pan, zoom and search the graph to see how the estate actually fits together.
Twenty-plus everyday tools without leaving the console: JSON, YAML and base64, hashes and UUIDs, JWT encode and decode, certificate and chain inspection, SSH key parsing, CIDR and subnet math, DNS lookups, diffs, Docker image inspection, plus a Kubernetes manifest cleaner and an ingress-to-Gateway API converter.
Reach private hosts in cloud VPCs without opening them up. InfraEye generates the join commands for Tailscale and ZeroTier, and turns an uploaded .ovpn profile into a provisioning script that connects a remote Linux box to your OpenVPN network.
Choose your deployment method. One command is all it takes.
The script clones the repo, creates a ~/infra-eye/.env file, and launches all services via Docker Compose.
Edit ~/infra-eye/.env with your Gemini, Mistral, or DeepSeek keys to unlock AI diagnostic features.
Access InfraEye at http://your-ip:8080. Log in and start adding servers and clusters immediately.
Docker Engine 24+, Docker Compose v2.20+, Git, and port 8080 available on your host.
:8080:8080/api:8090The script checks dependencies, auto-detects your kubeconfig (including k3s), and clones the repo into ~/infra-eye.
The installer interactively prompts for Mistral, Gemini, DeepSeek, and OpenRouter keys. Press Enter to skip any.
A k8s/secret.yaml is generated (gitignored), then all manifests are applied with kubectl apply -k k8s/.
The installer prints your node IP. Access InfraEye at http://<node-ip>:30080 once rollout completes.
kubectl connected to a cluster, curl, and git. Works with k3s, kubeadm, and managed clusters.
:30080infra-eyeA fully self-contained native app — no Docker, no Postgres, no Redis. Everything (backend, embedded SQLite database, UI) runs as a single local process, built with Wails.
On macOS, installing with Homebrew is recommended — the app is ad-hoc signed rather than notarized, so a directly downloaded .dmg is reported as damaged until you clear its quarantine flag. How to fix that.
Intel Mac builds aren't published yet — see building from source below to build for another platform yourself.
Download a prebuilt binary above, or run make desktop-build to build it yourself — it compiles the frontend and packages a native .app/.exe/binary via Wails.
No setup wizard. The app creates its own SQLite database and a random JWT secret on first launch, stored under your OS's standard app-data directory.
Same seeded credentials as the server install — admin / infra123. Change the password immediately.
Install kubernetes-mcp-server and have it on your PATH to enable cluster management. Linux-server (SSH) monitoring works regardless.
~/Library/Application Support/InfraEye~/.config/InfraEyeInstead of installing heavy agents on every node, InfraEye's Go backend establishes secure, lightweight SSH connections to gather metrics and stream logs.
InfraEye is actively evolving. Here's what's in the pipeline.
Enterprise single sign-on with Keycloak, Auth0, Okta, and Azure AD — now live.
Per-server access grants plus Cockpit-style Unix account management with tiered privileges.
Browse Gateways, HTTPRoutes, and any CRD, and create or scale resources natively.
A native macOS (Apple Silicon)/Linux app — SQLite-backed, single binary, no Docker required.
Sync server lists and alert rules directly from a Git repository.
Visualize and drift-detect Terraform-managed infrastructure resources.
Long-term data retention backed by Prometheus or VictoriaMetrics.
A dedicated PWA optimized for on-call emergency status checks.
A visual drag-and-drop builder for self-healing automation conditions.
Select the method you used to install — each has its own clean removal process.
~/infra-eye)infra-eye namespace and all resources inside itinfra-eye-secrets Secret