dsh-plugin-net-access
为 DeepSeek Harness(dsh) 新增 Net Access 模式,用于解决 Windows 沙箱内 curl.exe 无法访问 HTTPS 的问题,文件写保护不变。 / Adds a Net Access mode to DeepSeek Harness(dsh): curl.exe can access HTTPS inside the Windows sandbox again, with file-write protection unchanged.
- Stars
- 5
- Language
- JavaScript
- Created
- Aug 15, 2026
- Updated
- Aug 18, 2026
Introduction
dsh-plugin-net-access
English | 简体中文
DSH 的权限模式补丁:新增 Net Access 模式,在保持 workspace-write 文件写保护的基础上,恢复沙箱内的 HTTPS 访问。
DSH 的 Windows 沙箱(workspace-write)会拦截走 Schannel 的 HTTPS 请求(报 0x8009030E),系统自带的 curl 和 Invoke-WebRequest 都无法使用。Net Access 模式的文件写保护与 workspace-write 一致,同时让沙箱内的 HTTPS 恢复正常。仅支持 Windows,不绑定具体 DSH 版本。
作用
- 沙箱内
curl.exe可正常访问 HTTPS - 文件写保护与 workspace-write 一致:工作区外写入被拒
- 权限选择器新增 Net Access 选项
- python / node 的 HTTPS 不受影响
原理
保持 workspace-write 的沙箱令牌不变,只把 OpenSSL 版 curl 注入沙箱环境的 PATH,让 HTTPS 不再经过被拦截的 Schannel。完整技术说明见 docs/findings-zh.md。
安装
方式一:npm 安装
npx @deepseek-ai/dsh plugin --profile web add dsh-plugin-net-access
. "$env:USERPROFILE\.dsh\profiles\web\node_modules\dsh-plugin-net-access\setup.ps1"
方式二:从 GitHub 下载后运行
.\setup.ps1
setup.ps1 会做三件事:按结构锚点给引擎打补丁(不绑定 DSH 版本)、注册权限预设、从 curl.se 自动下载 OpenSSL 版 curl 工具箱到 %USERPROFILE%\.dsh\netaccess-tools\bin\。
装完必须完全重启 DSH 才能加载:在终端 Ctrl+C 停掉 3080 端口的进程,重新运行 npx @deepseek-ai/dsh web。光刷新浏览器不会加载新插件。重启后刷新页面,在左下角权限选择器里选 Net Access。
升级 DSH 后:直接重跑 setup.ps1 即可,不用等插件更新——补丁按结构锚点自动适配,不绑定版本号。如果新版 DSH 结构调整导致锚点找不到,安装器会明确报错并中止,不会改坏引擎(更新插件就好)。
验证
curl.exe -sS https://example.com
# HTTP 200
Set-Content "$env:USERPROFILE\Desktop\t.txt" x
# 拒绝访问
已知限制
- 系统自带的 curl 和
Invoke-WebRequest不能用 HTTPS:请用本插件带的curl.exe、python 或 node。 - git 的 HTTPS 需要先执行
git config --global http.sslBackend openssl。 C:\Users\Public可写(workspace-write 也一样)。- WMI 不可用(和 workspace-write 一样)。
卸载
.\uninstall.ps1
许可
MIT。patches/ 目录里的文件来自 @deepseek-ai/dsh-*(MIT,Copyright (c) 2026 DeepSeek),使用/分发时请保留相应署名。
觉得有用的话,欢迎点个 ⭐ Star 支持一下。