#!/bin/zsh set -euo pipefail ROOT_DIR="$(cd "$(dirname "$0")/.." && pwd)" CONFIG_PATH="${1:-$ROOT_DIR/local-agent/config.example.json}" NODE_BIN="${BOSS_NODE_BIN:-}" if [[ -z "$NODE_BIN" ]]; then NODE_BIN="$(command -v node 2>/dev/null || true)" fi if [[ -z "$NODE_BIN" ]]; then NODE_CANDIDATES=("$HOME"/.boss-runtime/node-*/bin/node(N) /opt/homebrew/bin/node /usr/local/bin/node /usr/bin/node) for candidate in "${NODE_CANDIDATES[@]}"; do if [[ -x "$candidate" ]]; then NODE_BIN="$candidate" break fi done fi if [[ -z "$NODE_BIN" || ! -x "$NODE_BIN" ]]; then echo "Node.js 22 or newer is required. Set BOSS_NODE_BIN or install Node.js." >&2 exit 1 fi cd "$ROOT_DIR" exec "$NODE_BIN" ./local-agent/server.mjs "$CONFIG_PATH"