File size: 3,103 Bytes
3e62a55
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#!/bin/bash

# Полное решение проблемы в одном файле
echo "=== Запуск исправления интерфейса TEN Agent ==="

# Создаем директорию
mkdir -p /tmp/ten-agent
cd /tmp/ten-agent

# Создаем простейший прокси-сервер
cat > proxy_server.py << 'EOF'
#!/usr/bin/env python3
import http.server
import socketserver
import json

# Константы
PORT = 9090

# Данные для /graphs
GRAPHS_DATA = [
    {"name": "Voice Agent", "description": "Voice Agent with OpenAI", "file": "voice_agent.json", "id": "voice_agent", "package": "default"},
    {"name": "Chat Agent", "description": "Chat Agent", "file": "chat_agent.json", "id": "chat_agent", "package": "default"}
]

# Данные для Designer API
DESIGNER_DATA = {"success": True, "packages": [{"name": "default", "description": "Default package", "graphs": GRAPHS_DATA}]}

class Handler(http.server.BaseHTTPRequestHandler):
    def do_GET(self):
        if self.path == "/graphs":
            self._send_json(GRAPHS_DATA)
        elif "/api/designer/" in self.path or "/api/dev/" in self.path:
            self._send_json(DESIGNER_DATA)
        else:
            self._send_json({"status": "ok"})
    
    def do_POST(self):
        if "/api/designer/" in self.path or "/api/dev/" in self.path:
            self._send_json({"success": True})
        else:
            self._send_json({"status": "ok"})
    
    def do_OPTIONS(self):
        self.send_response(200)
        self.send_header('Access-Control-Allow-Origin', '*')
        self.send_header('Access-Control-Allow-Methods', 'GET, POST, OPTIONS')
        self.send_header('Access-Control-Allow-Headers', 'Content-Type')
        self.end_headers()
    
    def _send_json(self, data):
        self.send_response(200)
        self.send_header('Content-type', 'application/json')
        self.send_header('Access-Control-Allow-Origin', '*')
        self.end_headers()
        self.wfile.write(json.dumps(data).encode())

# Запуск сервера
try:
    with socketserver.TCPServer(("", PORT), Handler) as httpd:
        print(f"Proxy server running at http://localhost:{PORT}")
        httpd.serve_forever()
except Exception as e:
    print(f"Error starting server: {e}")
EOF

# Запускаем прокси-сервер
echo "Запуск прокси-сервера..."
python3 proxy_server.py &
PROXY_PID=$!
echo "Прокси-сервер запущен с PID: $PROXY_PID"
echo $PROXY_PID > proxy.pid

# Настраиваем переменные окружения для UI
export PORT=7860
export AGENT_SERVER_URL="http://localhost:9090"
export NEXT_PUBLIC_DEV_MODE="false"
export NEXT_PUBLIC_API_BASE_URL="/api/agents"
export NEXT_PUBLIC_DESIGNER_API_URL="http://localhost:9090"
export NEXT_PUBLIC_EDIT_GRAPH_MODE="true"
export NEXT_PUBLIC_DISABLE_CAMERA="true"

echo "Настройки применены"
echo "Для запуска UI выполните: cd /app/playground && pnpm dev"
echo "Для проверки прокси: curl http://localhost:9090/graphs"