Files
HomeAgent/tools/deploy/deploy.sh
root 5fd8d04b1e chore: replace hack with tools and remove obsolete artifacts
- Rename hack/ to tools/ for formal naming
- Update plugin development and deployment script references
- Remove obsolete DESIGN/MILESTONE/PLAN docs now superseded by docs/
- Remove abandoned internal/onebot implementation
- Ignore stray local qq binary artifact
2026-07-06 20:46:32 +08:00

48 lines
1.5 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env bash
set -euo pipefail
# HomeAgent 部署脚本
# 用法: cd <project-root> && sudo bash tools/deploy/deploy.sh
PROJECT_ROOT="$(cd "$(dirname "$0")/../.." && pwd)"
BIN_DIR="/usr/local/bin"
DATA_DIR="/home/newqqagent"
SERVICE_FILE="/etc/systemd/system/homeagent.service"
echo "=== 构建 homed / waiter ==="
cd "$PROJECT_ROOT"
HOME=/root GOPATH=/root/go GOMODCACHE=/root/go/pkg/mod GOCACHE=/root/.cache/go-build make build build-cli
echo "=== 安装二进制 ==="
cp build/homed "$BIN_DIR/homed"
cp build/waiter "$BIN_DIR/waiter"
chmod 755 "$BIN_DIR/homed" "$BIN_DIR/waiter"
echo "=== 创建数据目录 ==="
mkdir -p "$DATA_DIR/plugins"
echo "=== 部署 QQ 插件 ==="
if [ -d "$PROJECT_ROOT/plugins/qq" ]; then
mkdir -p "$DATA_DIR/plugins/qq"
cp "$PROJECT_ROOT/plugins/qq/plugin.json" "$DATA_DIR/plugins/qq/"
cp "$PROJECT_ROOT/plugins/qq/plugin.so" "$DATA_DIR/plugins/qq/"
echo "QQ 插件已部署"
fi
echo "=== 安装 systemd 服务 ==="
cp "$(dirname "$0")/homeagent.service" "$SERVICE_FILE"
systemctl daemon-reload
echo ""
echo "=== 部署完成 ==="
echo ""
echo "启动: systemctl start homeagent"
echo "状态: systemctl status homeagent"
echo "日志: journalctl -u homeagent -f"
echo "停止: systemctl stop homeagent"
echo "WebUI: http://localhost:8080"
echo "CLI: /home/newqqagent/cli.sock"
echo ""
echo "首次使用请通过 WebUI → 设置 配置 API 密钥"
echo "工作目录: 在 WebUI 设置 → core.agent.workdir 中配置(如 /home/newqqagent/workspace"