|
|
|
|
|
#!/bin/bash
|
|
|
|
|
|
# 张大师 Agent 启动脚本
|
|
|
|
|
|
# 用法:source /root/.openclaw/workspace/scripts/start-life-agent.sh
|
|
|
|
|
|
|
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
|
|
|
|
AGENT_NAME="张大师 (Life)"
|
|
|
|
|
|
AGENT_ID="life"
|
|
|
|
|
|
AGENT_PORT="18790"
|
|
|
|
|
|
WORKSPACE="/root/.openclaw/workspace"
|
|
|
|
|
|
SYSTEMD_SERVICE="agent-life.service"
|
|
|
|
|
|
|
|
|
|
|
|
echo "🔮 正在启动 $AGENT_NAME..."
|
|
|
|
|
|
|
|
|
|
|
|
# 1. 设置环境变量
|
|
|
|
|
|
export NODE_ENV=production
|
|
|
|
|
|
export AGENT_ID=$AGENT_ID
|
|
|
|
|
|
export AGENT_PORT=$AGENT_PORT
|
|
|
|
|
|
export DASHSCOPE_API_KEY="sk-4111c9dba5334510968f9ae72728944e"
|
|
|
|
|
|
export TAVILY_API_KEY="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"
|
|
|
|
|
|
export XDG_RUNTIME_DIR=/run/user/0
|
|
|
|
|
|
export DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/0/bus"
|
|
|
|
|
|
|
|
|
|
|
|
# 2. 创建运行时目录
|
|
|
|
|
|
mkdir -p /run/user/0
|
|
|
|
|
|
chmod 700 /run/user/0
|
|
|
|
|
|
|
|
|
|
|
|
# 3. 创建日志目录
|
|
|
|
|
|
mkdir -p $WORKSPACE/logs/agents/life
|
|
|
|
|
|
|
|
|
|
|
|
# 4. 检查用户级 systemd 环境
|
|
|
|
|
|
if ! systemctl --user status > /dev/null 2>&1; then
|
|
|
|
|
|
echo "⚠️ 用户级 systemd 不可用,启用 linger..."
|
|
|
|
|
|
loginctl enable-linger root
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
# 5. 复制 systemd 服务文件
|
|
|
|
|
|
echo "📋 配置 systemd 服务..."
|
|
|
|
|
|
cp $WORKSPACE/systemd/$SYSTEMD_SERVICE /etc/systemd/system/
|
|
|
|
|
|
systemctl daemon-reload
|
|
|
|
|
|
|
|
|
|
|
|
# 6. 启用并启动服务
|
|
|
|
|
|
echo "🚀 启动 $AGENT_NAME 服务..."
|
|
|
|
|
|
systemctl enable $SYSTEMD_SERVICE
|
|
|
|
|
|
systemctl start $SYSTEMD_SERVICE
|
|
|
|
|
|
|
|
|
|
|
|
# 7. 验证状态
|
|
|
|
|
|
sleep 3
|
|
|
|
|
|
if systemctl is-active --quiet $SYSTEMD_SERVICE; then
|
|
|
|
|
|
echo "✅ $AGENT_NAME 已成功启动!"
|
|
|
|
|
|
echo " - 端口:$AGENT_PORT"
|
|
|
|
|
|
echo " - Agent ID: $AGENT_ID"
|
|
|
|
|
|
echo " - 日志:journalctl -u $SYSTEMD_SERVICE -f"
|
|
|
|
|
|
echo " - 状态:systemctl status $SYSTEMD_SERVICE"
|
|
|
|
|
|
else
|
|
|
|
|
|
echo "❌ $AGENT_NAME 启动失败!"
|
|
|
|
|
|
echo " 查看日志:journalctl -u $SYSTEMD_SERVICE -n 50"
|
|
|
|
|
|
exit 1
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
# 8. 注册 cron 任务
|
|
|
|
|
|
echo "⏰ 注册定时任务..."
|
|
|
|
|
|
cp $WORKSPACE/agents/life-cron-jobs.json /root/.openclaw/cron/jobs-life.json
|
|
|
|
|
|
echo " 定时任务已配置:每天 21:00 推送运程"
|
|
|
|
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
|
|
echo "🎉 张大师部署完成!"
|