🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

OpenCode 反代 wjj-8283/dsh-opencode-go-proxy

DeepSeek Harness
wjj-828337 天前有提交已提供中文文档扫描:未发现敏感能力

自动注入请求头,让 OpenCode Go 直连可用

29.1/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/3 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add wjj-8283/dsh-opencode-go-proxy
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:待复验
是什么
dsh 原生插件 · model
装得上吗
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 37 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

发起外部网络请求
查看扫描证据(共 1 处,展示前 1 条)
  • 发起网络请求
    proxy.js:314
    const upstreamReq = connector.request(
扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 自动注入请求头
  • 解决无法直连问题

适用于OpenCode Go的反代插件,用来解决OpenCode Go需要请求头不能直接访问的问题

README

由 DeepSeek 最新模型翻译生成
@wjj-8283/dsh-opencode-go-proxy DSH 插件:本机 OpenCode Go 反代理。dsh 启动时自动把反代理挂到 DSH 自己的 webserver 上(与 DSH 共用端口),转发到 OpenCode Go 上游(默认 https://opencode.ai),并在发包前注入 OpenCode 要求的会话/请求头(x-opencode-session / x-opencode-request / x-opencode-client / x-opencode-project / User-Agent)。 由仓库下的 opencode-go-proxy-win 脚本改造而来: | 原脚本 | 本插件 | | opencode-go-proxy.mjs(顶层启动) | proxy.js(导出 createForwarder / createProxy) | | opencode-go-proxy-start-minimal.bat | 插件 apply 在 dsh 启动时自动拉起 | | 手动 Ctrl+C 停止 | 随 dsh 应用卸载自动关闭 | 布局 opencode-go-proxy-plugin/ package.json name + dsh.bundle.patch + exports
展开完整文档(README 剩余 1 节)
@wjj-8283/dsh-opencode-go-proxy

DSH 插件:本机 OpenCode Go 反代理。dsh 启动时自动把反代理挂到 DSH 自己的 webserver 上(与 DSH 共用端口),转发到 OpenCode Go 上游(默认 https://opencode.ai),并在发包前注入 OpenCode 要求的会话/请求头(x-opencode-session / x-opencode-request / x-opencode-client / x-opencode-project / User-Agent)。

由仓库下的 opencode-go-proxy-win 脚本改造而来:

| 原脚本 | 本插件 |
| opencode-go-proxy.mjs(顶层启动) | proxy.js(导出 createForwarder / createProxy) |
| opencode-go-proxy-start-minimal.bat | 插件 apply 在 dsh 启动时自动拉起 |
| 手动 Ctrl+C 停止 | 随 dsh 应用卸载自动关闭 |

布局

opencode-go-proxy-plugin/
package.json name + dsh.bundle.patch + exports
cordis.patch.yml 把本插件插入宿主 Loader 条目(自动加载) index.js 插件 apply:挂到 webserver + settings + 状态路由 proxy.js 核心反代理逻辑(从 .mjs 移植为可导入模块)

安装 & 生效

插件是一个 bundle(dsh.bundle.patch),装进某个 profile 后它会进入 dsh.profile.bundles,下次 dsh --profile <name> 启动时自动加载:

dsh plugin --profile web add /Users/wjj/repos/dsh/opencode-go-proxy-plugin
dsh plugin --profile qq add /Users/wjj/repos/dsh/opencode-go-proxy-plugin

使用(默认,与 DSH 共用端口)

默认 mode=webserver:把反代理挂到该 profile 的 webserver 的前缀路径下。
客户端 baseURL 指向该路径即可:

- web profile:http://127.0.0.1:3080/api/opencode-proxy/v1
- qq profile:http://127.0.0.1:3220/api/opencode-proxy/v1 (端口取各 profile 的 webserver 端口,即 dsh web 的默认 3080、qq 默认 3220)

反代理把挂载前缀 /api/opencode-proxy/v1 之后的路径映射回上游的真实 API 根:默认 upstreamBasePath=/zen/go/v1,因此 .../api/opencode-proxy/v1/responses 会转发成 https://opencode.ai/zen/go/v1/responses。若剥离后的路径已带 upstreamBasePath 前缀则不重复叠加(幂等)。

接入 DSH 模型设置

DSH 的模型设置(llm-pi-ai.providers)里把某个 provider 的 baseURL 指向本代理即可(把原来直连 https://opencode.ai/zen/go/v1 换成代理地址)。例如现有 oc-go(OpenCode Go):直连: oc-go: displayName: OpenCode Go apiKeyEnv: OC_GO_API_KEY api: openai-responses baseURL: https://opencode.ai/zen/go/v1 # 原来是直连 reasoning: high
models: [...]
走代理(以 web profile 为例): oc-go: displayName: OpenCode Go apiKeyEnv: OC_GO_API_KEY api: openai-responses baseURL: http://127.0.0.1:3080/api/opencode-proxy/v1 # 改成代理地址 reasoning: high
models: [...]
- 该改动只影响 oc-go,不影响当前默认模型(agent-default-model 还是 deepseek-official)。
- 想让某个会话用 opencode,把会话/全局的默认模型设为 oc-go + 某个 model(如 muse-spark-1.2-contributor)。
- API Key 仍走 OC_GO_API_KEY 环境变量:代理会原样转发 Authorization 头,并在发包前注入 x-opencode-session/request/client/project、把 User-Agent 换成 opencode/...。
- 代理需先在该 profile 的 webserver 上跑起来:web 改了插件源码后要重启 dsh web 才会从“旧独立 8787”切到“3080/api/opencode-proxy/v1”。

可选:standalone 模式

若某个 profile 没有 webserver,或你想让代理跑在独立端口上,把 settings 的 mode 设为 standalone,则用 port(默认 8787)起一个独立 server: http://127.0.0.1:8787。此时客户端 baseURL 用 http://127.0.0.1:8787。

配置(settings 命名空间 dsh-opencode-go-proxy)

- enabled(默认 true):启动即拉起
- mode(默认 webserver):webserver(挂 DSH webserver 前缀) | standalone(独立端口)
- mountPath(默认 /api/opencode-proxy/v1):webserver 模式下的挂载前缀
- upstreamBasePath(默认 /zen/go/v1):映射回上游的真实 API 根(幂等叠加)
- port(默认 8787):standalone 模式下的监听端口
- upstreamHost(默认 opencode.ai)、upstreamProto(默认 https)
- opencodeUa(默认 opencode/1.18.29 cli)

环境变量兜底:PROXY_PORT / UPSTREAM_HOST / UPSTREAM_PROTO / UPSTREAM_PORT / OPENCODE_UA,仅在 settings 未设置时生效。

- 状态检查:GET /api/opencode-proxy/status(经 profile 的 webserver)。
预览分享卡片长什么样 ↓wjj-8283/dsh-opencode-go-proxy
分享 · DeepSeek Harness Hub
wjj-8283/dsh-opencode-go-proxy

自动注入请求头,让 OpenCode Go 直连可用

回到顶部