wobushiyoushen0214/dsh-opencode-pin ↗★ 0
dsh-opencode-pin
将OpenCode流量锁定在指定路由并保持会话密钥稳定。 适合需要固定OpenCode调用路由、防止会话漂移的开发者。
安装
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:wobushiyoushen0214/dsh-opencode-pin说明文档
阅读完整 README ↗4. 配置
配置走标准 DSH 方式:在 profile 的 cordis.patch.yml 里按行 id 覆盖。注意 patch 里的 config 是整体替换,不是深合并,要改哪层就把那层写全。
- id: opencode-pin
name: "dsh-opencode-pin"
config:
pin:
route: true # 强制所有调用走下面这个路由
provider: opencode-go
model: deepseek-v4.1-flash
reasoningEffort: high # 目标模型不支持调用方要的档位时用它兜底
auxiliary: true # 标题/压缩/auto-review 这类绕过 agent loop 的调用也钉
adoptSelection: true # 同时把钉住的路由写成本会话的模型选择(UI 一致、不再注入"模型已切换"通知)
session:
mode: conversation # conversation | shared | hunt
routes: [opencode-go, opencode] # 只对这些路由改写 session key
key: dsh-opencode-pin
probe:
prefer: ["luminal-*"] # hunt 模式的偏好端点(空 = 不探测、不额外花 token)
attempts: 4
apiKeyRef: OPENCODE_GO_API_KEY
session.mode 三档
| 模式 | x-opencode-session | 额外流量 | 适用 |
|---|---|---|---|
conversation(默认) | 对话自己的 session id;缺失时补「发起对话的身份」 | 无 | 最小干预:修掉缺头的路径,保持官方建议的「每会话稳定」。每个新对话仍可能被分配到不同上游。 |
shared | 所有请求共用一个固定 key | 无 | 想彻底「全局一个上游」但又不想探测:所有对话用同一 key,首次分配后长期黏住。 |
hunt | 探测挑出的、落在 probe.prefer 端点上的 key,全程复用 | 开启时每轮最多 attempts 个 1-token 请求(≈几百 token);命中后缓存 recheckMs | 真的要「钉住某个上游提供商」。 |