#!/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. Python 依赖 (Skill 运行时需要) echo "" echo "🐍 检查 Python 依赖..." if command -v pip3 &> /dev/null; then echo " 安装 rembg (图片去背景)..." pip3 install rembg --quiet 2>/dev/null || echo " ⚠️ rembg 安装失败(可选依赖,不影响核心功能)" echo "✅ Python 依赖检查完毕" elif command -v pip &> /dev/null; then echo " 安装 rembg (图片去背景)..." pip install rembg --quiet 2>/dev/null || echo " ⚠️ rembg 安装失败(可选依赖,不影响核心功能)" echo "✅ Python 依赖检查完毕" else echo "⚠️ 未检测到 pip,跳过 Python 依赖安装" echo " 如需 idearuncreate 的图片去背景功能,请手动: pip install rembg" fi # 8. 创建数据目录 echo "" echo "📁 创建数据目录..." mkdir -p data/agents mkdir -p tmp # 9. 完成 echo "" echo "═══════════════════════════════════" echo "✅ 安装完成!" echo "" echo "启动: ./start.sh" echo ""