#!/usr/bin/env bash set -euo pipefail remote_dir="${BOSS_REMOTE_DIR:-/home/ubuntu/boss}" tail_lines="${1:-150}" export CODEX_HOME="${CODEX_HOME:-$HOME/.codex}" export AG_SERVER_SKILL="${AG_SERVER_SKILL:-$CODEX_HOME/skills/ai-glasses-server-debug}" export AG_SERVER="${AG_SERVER:-$AG_SERVER_SKILL/scripts/server_ssh.sh}" KEYCHAIN_SERVICE="${AI_GLASSES_KEYCHAIN_SERVICE:-ai-glasses-debug-ssh}" resolve_server_password() { if [[ -n "${AI_GLASSES_SERVER_PASS:-}" ]]; then printf '%s' "${AI_GLASSES_SERVER_PASS}" return 0 fi if command -v security >/dev/null 2>&1; then security find-generic-password -a "${AI_GLASSES_SERVER_USER:-ubuntu}" -s "${KEYCHAIN_SERVICE}" -w 2>/dev/null || true fi } server_pass="$(resolve_server_password)" "$AG_SERVER" exec "set -euo pipefail; SUDO_PASS=$(printf '%q' "$server_pass"); run_sudo(){ if [[ -n \"\$SUDO_PASS\" ]]; then printf '%s\n' \"\$SUDO_PASS\" | sudo -S \"\$@\"; else sudo \"\$@\"; fi; }; cd $(printf '%q' "$remote_dir"); if run_sudo docker ps --format '{{.Names}}' | grep -qx 'boss-control-plane'; then run_sudo docker compose -f compose.cloud.yaml -p boss logs --tail $(printf '%q' "$tail_lines"); else tail -n $(printf '%q' "$tail_lines") .boss-data/server.log; fi"