dsh-opencodeproxy 是一个 DSH(dsh web)插件,用于在设置页管理本地 opencode-free-proxy 服务。代理本身会自动从 OpenCode Zen API 获取模型列表(big-pickle + 所有 -free 后缀模型),本插件负责服务的启停与状态展示。
基本信息¶
- 名称:dsh-opencodeproxy
- 所有者:infexpense
- 分类:联网工具
- 许可证:MIT
核心功能¶
- 启动/停止代理服务:通过设置页开关控制代理进程。
- 随 DSH 启动:若设置页开关为开启状态,dsh 启动时会自动拉起代理服务。
- 自动刷新模型列表:启动成功后自动向代理请求一次上游模型刷新。
- 手动刷新模型列表:手动触发代理的刷新操作,并展示当前模型。
- 连通性测试:依次测试
/health与/v1/models,显示延迟与模型数量。 - 接管现有进程:端口上已有代理在跑时打开开关,直接接管显示,不重复启动。
安装与启用¶
使用命令安装插件:
dsh plugin --profile web add /path/to/dsh-opencodeproxy
典型用法¶
克隆仓库后安装:
git clone https://github.com/infexpense/dsh-opencodeproxy.git
dsh plugin --profile web add /path/to/dsh-opencodeproxy
dsh web
本地开发时直接指向工作区路径:
dsh plugin --profile web add D:\DevTime\gloal-workspace\dsh-opencodeproxy
dsh web
行为细节与注意事项¶
- 依赖处理:插件依赖
@deepseek-ai/schemastery。源码目录里的node_modules/@deepseek-ai/schemastery是指向 profile 内真实包的目录联接(junction)。删除它会导致 dsh 启动时插件加载失败。 - 外部代理管理:停止外部启动的代理需要读取代理目录下
api-keys.json的 admin key。 - 启动延迟:代理进程启动后需几秒完成上游模型抓取,期间
/v1/models返回回退列表,稍后自动更新为实时列表。 - 自动重启:可配置代理目录(默认
D:\DevTime\gloal-workspace\opencode-free-proxy)与端口(默认6446),修改配置会自动重启服务。 - 代码修改:修改
lib/index.js后需重启dsh web。