-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Expand file tree
/
Copy pathstart.sh
More file actions
executable file
ยท78 lines (66 loc) ยท 3.03 KB
/
start.sh
File metadata and controls
executable file
ยท78 lines (66 loc) ยท 3.03 KB
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
#!/bin/bash
# โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
# ไธ็ๅ
ญ้จ ยท ไธ้ฎๅฏๅจ่ๆฌ
# ๅๆถๅฏๅจ็ๆฟๆๅกๅจ + ๆฐๆฎๅทๆฐๅพช็ฏ
# โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
REPO_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "$REPO_DIR"
RED='\033[0;31m'; GREEN='\033[0;32m'; YELLOW='\033[1;33m'; BLUE='\033[0;34m'; NC='\033[0m'
# ๆฃๆฅ Python
if ! command -v python3 &>/dev/null; then
echo -e "${RED}โ ๆชๆพๅฐ python3๏ผ่ฏทๅ
ๅฎ่ฃ
Python 3.9+${NC}"
exit 1
fi
# ็กฎไฟ data ็ฎๅฝๅญๅจ
mkdir -p "$REPO_DIR/data"
# ๅๅงๅๅฟ
้็ๆฐๆฎๆไปถ๏ผๅฆๆไธๅญๅจ๏ผ
for f in live_status.json agent_config.json model_change_log.json sync_status.json; do
[ ! -f "$REPO_DIR/data/$f" ] && echo '{}' > "$REPO_DIR/data/$f"
done
[ ! -f "$REPO_DIR/data/pending_model_changes.json" ] && echo '[]' > "$REPO_DIR/data/pending_model_changes.json"
[ ! -f "$REPO_DIR/data/tasks_source.json" ] && echo '[]' > "$REPO_DIR/data/tasks_source.json"
[ ! -f "$REPO_DIR/data/tasks.json" ] && echo '[]' > "$REPO_DIR/data/tasks.json"
[ ! -f "$REPO_DIR/data/officials.json" ] && echo '[]' > "$REPO_DIR/data/officials.json"
[ ! -f "$REPO_DIR/data/officials_stats.json" ] && echo '{}' > "$REPO_DIR/data/officials_stats.json"
cleanup() {
echo ""
echo -e "${YELLOW}ๆญฃๅจๅ
ณ้ญๆๅก...${NC}"
kill $SERVER_PID $LOOP_PID 2>/dev/null
wait $SERVER_PID $LOOP_PID 2>/dev/null
echo -e "${GREEN}โ
ๅทฒๅ
ณ้ญ${NC}"
exit 0
}
trap cleanup SIGINT SIGTERM
echo ""
echo -e "${BLUE}โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ${NC}"
echo -e "${BLUE}โ ๐๏ธ ไธ็ๅ
ญ้จ ยท ๆๅกๅฏๅจไธญ โ${NC}"
echo -e "${BLUE}โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ${NC}"
echo ""
# ๅฏๅจๆฐๆฎๅทๆฐๅพช็ฏ๏ผๅๅฐ๏ผ
if command -v openclaw &>/dev/null; then
echo -e "${GREEN}โถ ๅฏๅจๆฐๆฎๅทๆฐๅพช็ฏ...${NC}"
bash scripts/run_loop.sh &
LOOP_PID=$!
else
echo -e "${YELLOW}โ ๏ธ ๆชๆฃๆตๅฐ OpenClaw CLI๏ผ่ทณ่ฟๆฐๆฎๅทๆฐๅพช็ฏ${NC}"
echo -e "${YELLOW} ็ๆฟๅฐไปฅๅช่ฏปๆจกๅผ่ฟ่ก๏ผไฝฟ็จๅทฒๆๆฐๆฎ๏ผ${NC}"
LOOP_PID=""
fi
# ๅฏๅจ็ๆฟๆๅกๅจ
echo -e "${GREEN}โถ ๅฏๅจ็ๆฟๆๅกๅจ...${NC}"
python3 dashboard/server.py &
SERVER_PID=$!
sleep 1
echo ""
echo -e "${GREEN}โ
ๆๅกๅทฒๅฏๅจ๏ผ${NC}"
echo -e " ็ๆฟๅฐๅ: ${BLUE}http://127.0.0.1:7891${NC}"
echo -e " ๆ ${YELLOW}Ctrl+C${NC} ๅ
ณ้ญๆๆๆๅก"
echo ""
# ๅฐ่ฏ่ชๅจๆๅผๆต่งๅจ
if command -v open &>/dev/null; then
open http://127.0.0.1:7891
elif command -v xdg-open &>/dev/null; then
xdg-open http://127.0.0.1:7891
fi
# ็ญๅพ
ไปปไธ่ฟ็จ้ๅบ
wait $SERVER_PID $LOOP_PID 2>/dev/null