#!/usr/bin/env bash set -euo pipefail export PORT="${PORT:-7860}" export PYTHONUNBUFFERED=1 export PYTHONPATH="${PYTHONPATH:-/app/cosmos-framework}" export HF_HOME="${HF_HOME:-/tmp/.cache/huggingface}" export XDG_CACHE_HOME="${XDG_CACHE_HOME:-/tmp/.cache}" export MPLCONFIGDIR="${MPLCONFIGDIR:-/tmp/matplotlib}" export MUJOCO_GL="${MUJOCO_GL:-osmesa}" export HF_HUB_DISABLE_XET="${HF_HUB_DISABLE_XET:-1}" # Default to the packaged Bridge demo subset. No HF download/streaming is needed. export COSMOS_VIEWER_ON_DEMAND_VIDEO="${COSMOS_VIEWER_ON_DEMAND_VIDEO:-0}" export COSMOS_VIEWER_DOWNLOAD_DATA="${COSMOS_VIEWER_DOWNLOAD_DATA:-0}" export BRIDGE_LEROBOT_ROOT="${BRIDGE_LEROBOT_ROOT:-/app/assets/examples/bridge_lerobot_v3}" export AV_ROOT="${AV_ROOT:-/app/assets/examples/av_v2_03292026_wdinfo}" export UMI_ROOT="${UMI_ROOT:-/app/assets/examples/fastumi/fastumi_single_arm/pour_coke}" export FRACTAL_ROOT="${FRACTAL_ROOT:-/app/assets/examples/fractal20220817_data}" export DROID_ROOT="${DROID_ROOT:-/app/assets/examples/droid_plus_lerobot_640x360_20260412}" export ROBOMIND_FRANKA_ROOT="${ROBOMIND_FRANKA_ROOT:-/app/assets/examples/RoboMIND_20251228/benchmark1_0_release/franka_3rgb/241021_close_trash_bin_1}" export ROBOMIND_FRANKA_DUAL_ROOT="${ROBOMIND_FRANKA_DUAL_ROOT:-/app/assets/examples/RoboMIND_20251228/benchmark1_1_release/franka_fr3_dual/both_pour_water}" export ROBOMIND_ROOT="${ROBOMIND_ROOT:-/app/assets/examples/RoboMIND_20251228}" mkdir -p "${HF_HOME}" "${XDG_CACHE_HOME}" echo "Starting Cosmos3 action viewer on port ${PORT}" echo "BRIDGE_LEROBOT_ROOT=${BRIDGE_LEROBOT_ROOT}" echo "COSMOS_VIEWER_ON_DEMAND_VIDEO=${COSMOS_VIEWER_ON_DEMAND_VIDEO}" echo "AV_ROOT=${AV_ROOT}" echo "UMI_ROOT=${UMI_ROOT}" echo "FRACTAL_ROOT=${FRACTAL_ROOT}" echo "DROID_ROOT=${DROID_ROOT}" echo "ROBOMIND_FRANKA_ROOT=${ROBOMIND_FRANKA_ROOT}" echo "ROBOMIND_FRANKA_DUAL_ROOT=${ROBOMIND_FRANKA_DUAL_ROOT}" cd /app/cosmos-framework python cosmos_framework/data/vfm/action/urdf_visualizer/viewer.py --port "${PORT}"