From 13b3e3612ba96120ba17f9f6235bab57ed308a75 Mon Sep 17 00:00:00 2001 From: nmemmert <67961292+nmemmert@users.noreply.github.com> Date: Tue, 11 Aug 2026 16:54:50 -0400 Subject: [PATCH] Add macOS and Windows agents + multi-platform install UI - agent/skywatch-agent-macos.sh: Full macOS bash agent (launchd) - CPU via top -l 2, memory via vm_stat/sysctl, disk via df -P - Network via netstat -ib, uptime via kern.boottime, OS via sw_vers - agent/install-agent-macos.sh: Installs macOS agent as launchd daemon - agent/skywatch-agent-windows.ps1: PowerShell agent (Task Scheduler) - CPU via Win32_PerfRawData two-sample delta, memory via Win32_OperatingSystem - Disk via Get-PSDrive, network via Get-NetAdapterStatistics - agent/install-agent-windows.ps1: Installs Windows agent via Task Scheduler - server/index.js: New routes for macOS and Windows agent scripts/installers - client/src/Agents.js: Multi-platform install panel with Linux/macOS/Windows tabs - client/src/Agents.css: Platform tab button styles Co-Authored-By: Claude Sonnet 4.6 --- agent/install-agent-macos.sh | 130 ++++++++ agent/install-agent-windows.ps1 | 144 +++++++++ agent/skywatch-agent-macos.sh | 287 ++++++++++++++++++ agent/skywatch-agent-windows.ps1 | 257 ++++++++++++++++ client/build/asset-manifest.json | 12 +- client/build/index.html | 2 +- .../{main.e143c118.css => main.4668db54.css} | 4 +- client/build/static/css/main.4668db54.css.map | 1 + client/build/static/css/main.e143c118.css.map | 1 - client/build/static/js/main.a720143a.js.map | 1 - .../js/{main.a720143a.js => main.f791418f.js} | 6 +- ...CENSE.txt => main.f791418f.js.LICENSE.txt} | 0 client/build/static/js/main.f791418f.js.map | 1 + client/src/Agents.css | 26 ++ client/src/Agents.js | 129 ++++++-- server/index.js | 42 +++ 16 files changed, 1009 insertions(+), 34 deletions(-) create mode 100644 agent/install-agent-macos.sh create mode 100644 agent/install-agent-windows.ps1 create mode 100644 agent/skywatch-agent-macos.sh create mode 100644 agent/skywatch-agent-windows.ps1 rename client/build/static/css/{main.e143c118.css => main.4668db54.css} (87%) create mode 100644 client/build/static/css/main.4668db54.css.map delete mode 100644 client/build/static/css/main.e143c118.css.map delete mode 100644 client/build/static/js/main.a720143a.js.map rename client/build/static/js/{main.a720143a.js => main.f791418f.js} (98%) rename client/build/static/js/{main.a720143a.js.LICENSE.txt => main.f791418f.js.LICENSE.txt} (100%) create mode 100644 client/build/static/js/main.f791418f.js.map diff --git a/agent/install-agent-macos.sh b/agent/install-agent-macos.sh new file mode 100644 index 0000000..974da11 --- /dev/null +++ b/agent/install-agent-macos.sh @@ -0,0 +1,130 @@ +#!/bin/bash +# SkyWatch macOS Agent Installer v1.0.0 +# Installs the agent as a launchd daemon (runs at boot, requires sudo) +# +# Usage: +# sudo bash install-agent-macos.sh --server-url https://skywatch.example.com +# +# Options: +# --server-url SkyWatch server URL (required) +# --interval Reporting interval in seconds (default: 60) +# --name