install.sh 1.73 KB
#!/bin/bash
# ─────────────────────────────────────────────
# LemonBoss — 安装脚本
# ─────────────────────────────────────────────

set -e

echo "🧬 LemonBoss 安装"
echo "═══════════════════════════════════"

# 1. 检查 Node.js
if ! command -v node &> /dev/null; then
    echo "❌ 需要 Node.js >= 18"
    echo "   安装: https://nodejs.org"
    exit 1
fi

NODE_VERSION=$(node -v | sed 's/v//' | cut -d. -f1)
if [ "$NODE_VERSION" -lt 18 ]; then
    echo "❌ Node.js 版本太低: $(node -v), 需要 >= 18"
    exit 1
fi
echo "✅ Node.js $(node -v)"

# 2. 检查 pnpm
if ! command -v pnpm &> /dev/null; then
    echo "📦 安装 pnpm..."
    npm install -g pnpm
fi
echo "✅ pnpm $(pnpm -v)"

# 3. 检查 claude CLI
if ! command -v claude &> /dev/null; then
    echo ""
    echo "⚠️  未检测到 claude CLI"
    echo "   Agent 对话需要 claude CLI:"
    echo "   npm install -g @anthropic-ai/claude-cli"
    echo ""
fi

# 4. 安装依赖
echo ""
echo "📦 安装项目依赖..."
pnpm install

# 5. 安装 server 依赖
echo ""
echo "📦 安装 server 依赖..."
cd server && pnpm install && cd ..

# 6. 安装 web 依赖
echo ""
echo "📦 安装 web 依赖..."
cd web && pnpm install && cd ..

# 7. 创建数据目录
echo ""
echo "📁 创建数据目录..."
mkdir -p data/agents
mkdir -p tmp

# 8. 完成
echo ""
echo "═══════════════════════════════════"
echo "✅ 安装完成!"
echo ""
echo "启动: ./start.sh"
echo ""