#!/bin/sh set -eu PORT="${PORT:-7860}" STATE_DIR="${OPENCLAW_STATE_DIR:-/data/.openclaw}" CONFIG_PATH="${OPENCLAW_CONFIG_PATH:-/data/.openclaw/openclaw.json}" MARKER="$STATE_DIR/.hf_init_done" mkdir -p "$STATE_DIR" # Initialize main config once if [ ! -f "$CONFIG_PATH" ]; then echo "Initializing OpenClaw config..." cp /template_openclaw.json "$CONFIG_PATH" fi # HF Free 没有 Dev Mode 无法执行 `openclaw devices approve`。 # 在 HF Space: Settings -> Variables # OPENCLAW_GATEWAY_CONTROLUI_DANGEROUSLYDISABLEDEVICEAUTH=true if [ "${OPENCLAW_GATEWAY_CONTROLUI_DANGEROUSLYDISABLEDEVICEAUTH:-}" = "true" ] && [ ! -f "$MARKER" ]; then echo "Env requests disabling device auth (DANGEROUS). Applying once..." openclaw config set gateway.controlUi.dangerouslyDisableDeviceAuth true || true touch "$MARKER" fi echo "Starting OpenClaw Gateway (run) on port ${PORT}" exec openclaw gateway run \ --bind lan \ --port "${PORT}" \ ${OPENCLAW_GATEWAY_TOKEN:+--token "${OPENCLAW_GATEWAY_TOKEN}"} \ --allow-unconfigured