@sakikotgw/pad-gateway-jump
v0.1.1
Published
PAD jump-only loopback carrier for DeepSeek Harness 0.2.x: session jump events over the same pad-gateway.json contract (no apiproxy; publishes the host web API origin for PAD).
Readme
@sakikotgw/pad-gateway-jump
PAD 的 0.2.x 跳转专用 carrier:在 DSH host 里起一个 loopback HTTP,只服务会话跳转通道,写与完整 pad-gateway 相同的 <DSH_HOME>/pad-gateway.json 广告,供 @sakikotgw/pad-session-jump 长轮询。
为什么单独一个包
完整 @sakikotgw/pad-gateway 会挂官方 apiproxy(/api),依赖 @deepseek-ai/dsh-host-apiproxy 并要求 engines.dsh >=0.1.0-rc.7 <0.2.0。但 0.2.x 没有对应的 npm apiproxy:装不上、bundle patch 里的 apiproxy 行也加载不了。本包只带跳转通道,engines.dsh 放宽到 >=0.1.0-rc.7,用于 0.2.x(也兼容 0.1.x,但 0.1.x 应用完整版 gateway 以保留 /api)。
端点
| 方法 | 路径 | 鉴权 | 说明 |
|---|---|---|---|
| GET | /pad/ping | Bearer | {ok, pid, profile, schema, capabilities:{jump:true,api:false}} |
| POST | /pad/jump | Bearer | 入队:{sessionId} → {ok, seq} |
| GET | /pad/jump?since=N | Bearer | 长轮询(25s 超时 204) |
| POST | /pad/jump/ack | Bearer | 消费回执 |
| * | /api/* | — | 固定 503:本包不代理 apiproxy |
CORS 只放行 loopback origin 与 dsh-app://app。队列语义(TTL 30s、容量 20、seq 单调)与完整版一致。
安装(0.2.x 实例)
dsh plugin --profile web add file:E:\pack-agent\agent-pack-dsh\gateway-jump装完重启 dsh web;<DSH_HOME>/pad-gateway.json 会出现,capabilities.api=false。
测试与同步
node --test test/jump.test.mjs # 7 pass(与完整版共用实现)
node scripts/sync-from-gateway.mjs # 从 ../gateway 同步 lib/jump.mjs 与测试lib/jump.mjs / test/jump.test.mjs 是生成的副本,改实现请改 ../gateway 后跑 sync。
与完整 gateway 的选择
| 实例 DSH | 用哪个 |
|---|---|
| 0.1.x | @sakikotgw/pad-gateway(含 /api 代理 + 跳转) |
| 0.2.x | @sakikotgw/pad-gateway-jump(仅跳转;/api 不可用) |
PAD 侧按实例钉的 DSH 版本选择安装哪个包(待 M1 接线)。
