@echo off
chcp 65001 >nul
setlocal EnableExtensions
set "SOURCE=%~dp0"
set "INSTALL_DIR=%LOCALAPPDATA%\YOHOHOHO\ImagePlugin"
set "SKILL_DIR=%USERPROFILE%\.codex\skills\yohohoho-image"
set "PYTHONDONTWRITEBYTECODE=1"

where codex >nul 2>nul
if errorlevel 1 (
  echo [YOHOHOHO] 未找到 codex 命令，安装已停止。
  echo 请先安装 Codex，并确认在终端输入 codex 可以正常运行。
  pause
  exit /b 1
)
if not exist "%SOURCE%runtime\python.exe" (
  echo [YOHOHOHO] 安装包内的 Python 运行时缺失，安装已停止。
  pause
  exit /b 1
)
if not exist "%SOURCE%mcp\yoho_image_mcp_bridge.py" (
  echo [YOHOHOHO] 插件文件不完整，安装已停止。
  pause
  exit /b 1
)

if not exist "%INSTALL_DIR%" mkdir "%INSTALL_DIR%"
robocopy "%SOURCE%" "%INSTALL_DIR%" /E /R:1 /W:1 /NFL /NDL /NJH /NJS /NP >nul
if errorlevel 8 (
  echo [YOHOHOHO] 插件文件复制失败，安装已停止。
  pause
  exit /b 1
)

"%INSTALL_DIR%\runtime\python.exe" "%INSTALL_DIR%\setup.py" --no-browser
if errorlevel 1 (
  echo [YOHOHOHO] API Key 配置未完成，MCP 不会被注册。
  pause
  exit /b 1
)

if not exist "%SKILL_DIR%" mkdir "%SKILL_DIR%"
robocopy "%INSTALL_DIR%\skills\yohohoho-image" "%SKILL_DIR%" /E /R:1 /W:1 /NFL /NDL /NJH /NJS /NP >nul
if errorlevel 8 (
  echo [YOHOHOHO] Skill 安装失败，安装已停止。
  pause
  exit /b 1
)

call codex mcp remove yohohoho-image >nul 2>nul
call codex mcp add yohohoho-image -- "%INSTALL_DIR%\run-mcp.cmd"
if errorlevel 1 (
  echo [YOHOHOHO] MCP 注册失败，未报告安装成功。
  pause
  exit /b 1
)

echo.
echo [YOHOHOHO] 生图插件安装完成。
echo 1. 浏览器将打开图片生成配置服务，请选择平台和模型。
echo 2. 关闭并重新打开 Codex。
echo 3. 在 Codex 中发送一个简单的生图任务进行测试。
start "" "https://yohohoho.asia/"
pause
exit /b 0
