#!/bin/bash # Вывод информации о запуске echo "===== Starting TEN-Agent on HuggingFace Space =====" echo "$(date)" echo "Current directory: $(pwd)" # Вывод информации о пользователе и его правах echo "===== Environment Information =====" echo "User: $(whoami)" echo "Groups: $(groups)" echo "Home directory: $HOME" # Checking directory permissions echo "===== Checking Directory Permissions =====" echo "Temp directory permissions:" ls -la /tmp echo "App directory permissions:" ls -la /app # Проверяем наличие .env файла if [ -f .env ]; then echo "✅ .env file found" cat .env | grep -v "KEY\|CERTIFICATE\|PASSWORD\|SECRET" | sed 's/=.*/=***/' else echo "⚠️ Warning: .env file not found, will use environment variables" fi # Создаем директории, которые могут понадобиться echo "===== Creating required directories =====" mkdir -p /tmp/ten_user mkdir -p /tmp/ten_user/agents mkdir -p /tmp/ten_user/logs mkdir -p /tmp/ten_user/rag_data chmod -R 755 /tmp/ten_user # Проверяем, создаются ли файлы в /tmp echo "===== Testing file creation in /tmp =====" TEST_FILE="/tmp/test_write_$(date +%s).txt" if touch $TEST_FILE; then echo "✅ Can create files in /tmp" echo "Test content" > $TEST_FILE cat $TEST_FILE rm $TEST_FILE else echo "❌ Cannot create files in /tmp - this will cause problems!" fi # Проверяем наличие необходимых компонентов echo "===== Checking required components =====" if [ -f /app/fallback.py ]; then echo "✅ Fallback script found" else echo "❌ Fallback script missing!" fi if [ -f /app/api_wrapper.py ]; then echo "✅ API wrapper found" else echo "❌ API wrapper missing!" fi if [ -d /app/playground ]; then echo "✅ Playground directory found" ls -la /app/playground else echo "❌ Playground directory missing!" fi # Запускаем приложение через fallback скрипт echo "===== Starting TEN-Agent via fallback script =====" echo "Due to permission issues in Hugging Face Space, we'll use the fallback script" echo "This will create necessary files in /tmp where we have write access" # Установка переменных окружения для совместимости export HF_SPACE=true export INTERFACE_PORT=7860 export API_PORT=8080 export TEN_AGENT_DIR=/tmp/ten_user/agents export AGENT_SERVER_URL=http://localhost:8080 export NEXT_PUBLIC_EDIT_GRAPH_MODE=true export NEXT_PUBLIC_DISABLE_CAMERA=true export PYTHONUNBUFFERED=1 # Выполняем Python скрипт напрямую exec python3 /app/fallback.py