Files
opsxshell/license-server
Logan.LiandCursor 08696896f9 feat: harden local shell, SFTP, and desktop session reliability
Finder-launched terminals now inherit a login PATH so tools like ollama resolve, destructive SFTP/editor actions require confirmation, and terminal search plus window dragging work again. SSH forwards and RDP sessions keep listeners and survive reconnect without FastPath crashes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-16 16:08:11 +08:00
..

OpsXShell License Server

DEPRECATED — 桌面端已切换到 opsx-licence(默认 http://127.0.0.1:9001/api)。本目录保留供对照与临时本地调试,请勿用于新功能开发。新结账 / 领取 / 激活请走 opsx-licence 的 /api/v1/* 契约。

轻量 Node 服务:Waffo Pancake 一次性买断结账、Webhook、设备绑定许可证签发(旧 HMAC opsx1 方案)。

私钥只放本机环境变量,不要写入仓库或桌面端。

快速开始

cd license-server
cp .env.example .env
# 填入 WAFFO_PRIVATE_KEY(Dashboard 测试密钥)
npm install
npm run bootstrap   # 首次:创建 Store + 一次性商品 Pro,写回 .env
npm run start

旧桌面端曾默认请求 http://127.0.0.1:8787。当前桌面默认已改为 opsx-licence:http://127.0.0.1:9001/api(VITE_LICENSE_SERVER_URL / OPSX_LICENSE_API_BASE)。

接口

方法 路径 说明
GET /health 健康检查
POST /checkout { deviceId } → { checkoutUrl }(onetime)
POST /webhooks Waffo webhook(order.completed)
POST /activate { deviceId } 取回已签发许可证
POST /issue-test-license 开发用:直接签发终身 Pro token

测试许可证(无需支付)

npm run issue-dev-license -- --deviceId '*'
# 临时授权可加 --days 30

将返回的 token 粘贴到 App「已有许可证?激活」(仅旧 HMAC 路径;新客户端需 LIC- 密钥)。

安全

  • @waffo/pancake-ts 仅在本服务使用
  • OPSX_LICENSE_HMAC 与旧桌面端校验密钥一致(生产请轮换)
  • 对话中若暴露过测试私钥,请在 Dashboard 轮换