#!/usr/bin/env bash # eed-web-opencode.sh — opencode 面板:复用 8765 前端 + OpenCode 引擎(agent=egg) + DeepSeek 脑子 # 平行独立于 8765 旧面板(codebuddy 引擎),互不影响。 set -u PORT="${PORT:-8766}" HOST="127.0.0.1" URL="http://$HOST:$PORT" if curl -s --max-time 2 "$URL" >/dev/null 2>&1; then echo "🟢 opencode 面板已在运行: $URL" exit 0 fi echo "🟡 正在拉起 opencode 面板 (OpenCode 引擎 + DeepSeek)…" # key 在 ~/.bashrc,非交互读不到 → 用交互shell(bash -lic)读出来接力传给 opencode # setsid 让 python 脱离本脚本进程树,脚本退出后继续活 setsid bash -lic "export PATH=\"$HOME/.local/bin:$PATH\"; export https_proxy=http://127.0.0.1:7897; export http_proxy=http://127.0.0.1:7897; cd /home/ls/cang-ying/scripts; exec python3 eed_web_opencode.py" > /tmp/eed-web-opencode.log 2>&1 < /dev/null & for _ in $(seq 1 25); do curl -s --max-time 2 "$URL" >/dev/null 2>&1 && break sleep 1 done if curl -s --max-time 2 "$URL" >/dev/null 2>&1; then echo "✅ opencode 面板已启动: $URL" echo " 引擎 OpenCode · agent=egg(耳耳蛋人格)· 默认脑子 deepseek/deepseek-v4-flash" else echo "❌ 启动失败,看日志: tail -30 /tmp/eed-web-opencode.log" fi