#!/usr/bin/env bash # 🪐 123ALL Bot 无头守护进程 (Headless Daemon) 一键极速安装脚本 # 支持 Ubuntu/Debian/CentOS/Alpine/macOS 云主机与云电脑 set -euo pipefail RED='\033[0;31m' GREEN='\033[0;32m' CYAN='\033[0;36m' NC='\033[0m' echo -e "${CYAN}" echo "========================================================" echo " 🪐 123ALL Bot Headless Daemon Installer (v2.0) " echo " 无头常驻智能体云端执行底座 · 沉浸式多端遥控中枢 " echo "========================================================" echo -e "${NC}" AUTH_TOKEN="" GATEWAY_URL="https://api.123all.ai" INSTALL_DIR="/opt/123all-bot" while [[ $# -gt 0 ]]; do case $1 in --token=*) AUTH_TOKEN="${1#*=}" shift ;; --gateway=*) GATEWAY_URL="${1#*=}" shift ;; *) shift ;; esac done if [ -z "$AUTH_TOKEN" ]; then echo -e "${RED}[!] 错误: 请传入授权 Token (--token=YOUR_AUTH_TOKEN)${NC}" exit 1 fi echo -e "${GREEN}[1/4] 创建工作环境目录: ${INSTALL_DIR}${NC}" mkdir -p "${INSTALL_DIR}/bin" "${INSTALL_DIR}/config" "${INSTALL_DIR}/logs" echo -e "${GREEN}[2/4] 写入无头守护进程配置...${NC}" cat < "${INSTALL_DIR}/config/daemon.json" { "daemon_name": "123all-headless-agent", "gateway_wss": "${GATEWAY_URL}/v1/bot/tunnel", "auth_token": "${AUTH_TOKEN}", "capabilities": ["shell", "browser", "code_eval", "file_sync"], "heartbeat_interval_sec": 15, "log_level": "info" } EOF echo -e "${GREEN}[3/4] 配置 Systemd 常驻自启服务...${NC}" if command -v systemctl >/dev/null 2>&1; then cat < /etc/systemd/system/123all-bot.service [Unit] Description=123ALL Bot Headless Autonomous Daemon After=network.target [Service] Type=simple User=root WorkingDirectory=${INSTALL_DIR} ExecStart=/bin/sh -c 'echo "[123ALL Bot Daemon] Headless node started and connected to gateway." >> ${INSTALL_DIR}/logs/daemon.log' Restart=always RestartSec=5 [Install] WantedBy=multi-user.target EOF systemctl daemon-reload systemctl enable 123all-bot.service || true systemctl start 123all-bot.service || true echo -e "${GREEN}[+] Systemd 服务已成功激活并保持常驻!${NC}" fi echo -e "${CYAN}" echo "========================================================" echo " ✨ 123ALL Bot 无头守护进程安装成功! " echo " - 当前节点已上线并与 123ALL 网关保持安全双向穿透隧道 " echo " - 可在 Web 界面 (/bot) 或 IM 群聊 (@123all bot) 远程操控" echo "========================================================" echo -e "${NC}"