# opencode web Windows 服务安装脚本(NSSM 方案) # 用法:以管理员身份运行 PowerShell,执行:.\install-opencode-service.ps1 Continue = 'Stop' # === 配置区 === = 'OpenCodeWeb' = 'IwinTrue@123' = (Get-Command opencode.exe -ErrorAction Stop).Source = (Get-Command nssm -ErrorAction Stop).Source = "C:\ProgramData\OpenCodeWeb\logs" = "C:\ProgramData\OpenCodeWeb\data" New-Item -ItemType Directory -Path -Force | Out-Null New-Item -ItemType Directory -Path -Force | Out-Null Write-Host "OpenCode exe : " -ForegroundColor Cyan Write-Host "NSSM exe : " -ForegroundColor Cyan Write-Host "日志目录 : " -ForegroundColor Cyan Write-Host "" # Step 1: 安装/更新服务 Write-Host "[1/3] 正在注册Windows服务..." -ForegroundColor Yellow & install & set AppParameters "web --port 4090 --hostname 0.0.0.0" & set AppEnvironmentExtra "OPENCODE_ADMIN_PASSWORD=" & set AppDirectory "C:\Users\Administrator" & set Description "OpenCode AI Agent Web UI (port 4090)" & set Start SERVICE_AUTO_START & set AppStdout "\stdout.log" & set AppStderr "\stderr.log" # Step 2: 启动服务 Write-Host "[2/3] 正在启动服务..." -ForegroundColor Yellow & restart Start-Sleep -Seconds 3 # Step 3: 验证 Write-Host "[3/3] 正在验证服务状态..." -ForegroundColor Yellow try { = Get-Service -ErrorAction Stop = netstat -ano | Select-String ":4090" | Select-String "LISTENING" Write-Host "" Write-Host "✅ 服务 '' 安装成功!" -ForegroundColor Green Write-Host " 状态 : " Write-Host " 访问地址 : http://localhost:4090" Write-Host " 登录密码 : " Write-Host " 日志文件 : " Write-Host "" Write-Host "--- 常用命令 ---" -ForegroundColor Cyan Write-Host " 启动服务 : nssm start " Write-Host " 停止服务 : nssm stop " Write-Host " 重启服务 : nssm restart " Write-Host " 服务状态 : Get-Service " Write-Host " 查看日志 : Get-Content $LogDir\stdout.log" Write-Host " 卸载服务 : nssm remove confirm" } catch { Write-Warning "服务安装完成,但启动可能有问题。请检查日志:" }