DeepSeekDSH
独立社区指南与 DeepSeek 无隶属关系。下载版本与教程参考

让 DSH 在 HTTP/HTTPS 代理网络中正常工作

浏览器能联网,DSH 却连接超时时,先检查启动 DSH 的进程是否拿到了代理配置。下面说明命令行设置方法、连接检查和证书排错。

本页内容
先确认是否需要代理

已有网络能直接访问模型服务时,无需添加代理。以下步骤用于公司网关或代理软件提供了 HTTP/HTTPS 地址的环境,不能用任意地址代替。

区分下载失败和模型连接失败

fetch failed、ECONNREFUSED、ETIMEDOUT 和证书错误都可能与网络有关,但单凭错误名称不能确定是代理问题。

npm view @deepseek-ai/dsh version

在启动 DSH 的同一个终端运行这条命令。它只检查 npm Registry 是否可达,不验证模型 API;下载正常但模型请求失败时,还要检查模型地址、代理和认证响应。

第 1 步

确认 DSH 与 Node 版本

npx @deepseek-ai/dsh --version node --version

本页以 0.1.5-rc.2 / c291e79 源码为准。该版本在启动时读取代理变量,主进程无需额外开启 NODE_USE_ENV_PROXY。旧版 DSH、插件自带的网络库或 Node 子进程可能有不同要求。

仅用桌面应用时,终端里的变量不一定会传给已运行的 Desktop;请按该版本桌面应用的启动和代理说明设置。

第 2 步

设置 HTTP_PROXY 与 HTTPS_PROXY

代理地址使用公司管理员或本地代理程序提供的真实地址。

export HTTP_PROXY=http://proxy.example:8080 export HTTPS_PROXY=http://proxy.example:8080

PowerShell:

$env:HTTP_PROXY="http://proxy.example:8080" $env:HTTPS_PROXY="http://proxy.example:8080"

不要把带真实账号密码的代理地址发到截图、Issue 或公开聊天里。

第 3 步

保留本机直连规则

当前 DSH 主进程会自动绕过本机回环地址。对其他读取代理变量的程序,可在 NO_PROXY 中列出 127.0.0.1,localhost,::1。

保留已有 NO_PROXY 中的公司内网域名,再追加本机地址。使用逗号分隔;不同网络库不一定接受 Windows 的分号列表。

第 4 步

在设置变量的同一个终端启动

以下示例假设尚未配置 NO_PROXY;已有配置时先合并原值。HTTP_PROXY 与 HTTPS_PROXY 使用第 2 步设置的地址。

macOS/Linux:

export NO_PROXY=127.0.0.1,localhost,::1 npx @deepseek-ai/dsh web

PowerShell:

$env:NO_PROXY="127.0.0.1,localhost,::1" npx @deepseek-ai/dsh web

选择已配置模型与测试工作区,发送一条不操作文件的消息。能收到模型回复,说明这次连接可用;若变成 401、402 等响应,继续检查凭据或余额。仅网络恢复不能证明原先只有代理这一处问题。

公司 HTTPS 检查可能还需要 CA 证书

部分企业网络会重新签发 HTTPS 流量。如果代理已经生效,但 Node 报证书链错误,管理员可能要求通过 NODE_EXTRA_CA_CERTS 添加公司的受信 CA。

将占位路径替换为可信管理员提供的 PEM 格式 CA 文件。先关闭已有 DSH 进程,再在设置变量的同一个终端重新启动;运行中的进程不会重新读取此变量。

macOS/Linux:

export NODE_EXTRA_CA_CERTS="/path/to/company-ca.crt" npx @deepseek-ai/dsh web

PowerShell:

$env:NODE_EXTRA_CA_CERTS="C:\path\to\company-ca.crt" npx @deepseek-ai/dsh web
只使用可信管理员提供的证书

不要从网上随便下载证书去“消除报错”。自定义 CA 会改变 Node 进程信任哪些 HTTPS 证书。

Windows 特别注意

  • 测试时用 $env:NAME="value" 修改当前 PowerShell 会话。
  • setx 写入的持久变量只对新终端生效。
  • NO_PROXY 使用逗号分隔,不依赖分号列表。
  • EADDRINUSE 或 Windows 保留端口 EACCES 属于本地端口问题,不是出站代理问题。

常见代理与网络问题

curl/npm 正常,但 DSH 仍连接失败

确认 DSH 启动前已设置变量,并重启对应进程。检查是否同时存在大小写两组代理变量;当前实现优先读取小写值。插件自建网络连接还需遵循插件自己的说明。

本地 API 返回代理 403

检查实际发出请求的进程和代理版本。当前 DSH 会绕过本机回环;旧版本或其他客户端仍需正确的 NO_PROXY。

只有 Node 子进程不走代理

子进程可能依赖 Node 的 NODE_USE_ENV_PROXY。官方代理参考说明 Node 22.19/22.20 不支持这一用法,22.21+ 或支持该开关的 24.x 才适用。不要因此把开关当成当前 DSH 主进程的必需步骤。

证书链 / self-signed certificate 错误

询问管理员是否启用了 HTTPS 流量检查,以及是否需要通过 NODE_EXTRA_CA_CERTS 信任公司 CA;不要关闭证书验证。

SOCKS 或 PAC 地址不工作

当前实现只接受 HTTP/HTTPS 代理 URL。不支持的地址会被报告并跳过,不保证请求经过代理;请向管理员确认可用的 HTTP/HTTPS 地址。

下一步网络恢复后仍报错?
打开问题排查 →
来源与版本

于 2026-09-12 对照 0.1.5-rc.2 / c291e79 官方代理参考核验。旧版本案例见 Node 代理讨论、NO_PROXY 讨论与公司证书讨论,不要直接套用旧帖的版本要求。