#!/bin/bash
set -euo pipefail

CONFIG_FILE="${HOME}/.config/khaos-wfl/daemon.env"
PROJECT="${KHAOS_WFL_PROJECT:-}"
SOCKET="${KHAOS_WFL_SOCKET:-}"

if [ -z "$PROJECT" ] && [ -f "$CONFIG_FILE" ]; then
    # shellcheck disable=SC1090
    source "$CONFIG_FILE"
    PROJECT="${KHAOS_WFL_PROJECT:-}"
    SOCKET="${KHAOS_WFL_SOCKET:-$SOCKET}"
fi

if [ -z "$PROJECT" ]; then
    echo "khaos-wfl user agent: KHAOS_WFL_PROJECT is not configured; skipping startup"
    exit 0
fi

if [ -z "$SOCKET" ]; then
    SOCKET="${HOME}/.khaos/wfl/khaos-wfl.sock"
fi

mkdir -p "$(dirname "$SOCKET")"

exec /usr/local/bin/khaos-wfl daemon \
    --project "$PROJECT" \
    --watch \
    --ipc uds \
    --ipc-addr "$SOCKET"
