#!/usr/bin/env bash set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" SKILL_ROOT="$(dirname "$SCRIPT_DIR")" source "$SCRIPT_DIR/_common.sh" : "${CF_API_TOKEN:=}" : "${CF_ACCOUNT_ID:=}" : "${TUNNEL_NAME:=}" : "${ZONE_NAME:=}" : "${HOSTNAME:=}" : "${LOCAL_SERVICE:=}" : "${CONFIG_DIR:=$SKILL_ROOT/outputs/config}" : "${SERVICE_NAME:=cloudflared-tunnel}" main() { log_info "Starting 00_preflight.sh" cf_env_check [[ -n "$TUNNEL_NAME" ]] || die "TUNNEL_NAME is required." [[ -n "$ZONE_NAME" ]] || die "ZONE_NAME is required." [[ -n "$HOSTNAME" ]] || die "HOSTNAME is required." [[ -n "$LOCAL_SERVICE" ]] || die "LOCAL_SERVICE is required." need cloudflared need curl need jq need systemctl || log_warn "systemctl not found (service phase will not work)." mkdir -p "$SKILL_ROOT/outputs" mkdir -p "$CONFIG_DIR" log_info "Preflight OK." } main "$@"