#!/usr/bin/env bash set -euo pipefail relay_url="http://127.0.0.1:4173" interval_seconds=60 label="com.allreach.agent" plist_path="$HOME/Library/LaunchAgents/$label.plist" script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" client_path="$script_dir/relay-client.sh" while [[ $# -gt 0 ]]; do case "$1" in --relay-url) relay_url="${2:-}" shift 2 ;; --interval-seconds) interval_seconds="${2:-60}" shift 2 ;; *) printf "Unknown option: %s\n" "$1" >&2 exit 1 ;; esac done if [[ ! -x "$client_path" ]]; then chmod +x "$client_path" fi mkdir -p "$HOME/Library/LaunchAgents" cat > "$plist_path" < Label $label ProgramArguments $client_path --relay-url $relay_url --interval-seconds $interval_seconds --install-mode launch-agent RunAtLoad KeepAlive StandardOutPath $HOME/Library/Logs/AllReachAgent.out.log StandardErrorPath $HOME/Library/Logs/AllReachAgent.err.log PLIST launchctl unload "$plist_path" >/dev/null 2>&1 || true launchctl load "$plist_path" printf "Installed AllReach LaunchAgent at %s\n" "$plist_path"