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

校园网学术通道 blankwy/dsh-scholar-access

DeepSeek Harness
blankwy10 天前有提交已提供中文文档扫描:含敏感能力

让 DSH 的 GitHub 等国际流量走校园学术通道

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

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

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

状态速览

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

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

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

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令发起外部网络请求
查看扫描证据(共 8 处,展示前 8 条)
  • 发起网络请求
    client.js:73
    const response = await fetch(API + path, init);
  • 发起网络请求
    lib/network.js:233
    const request = https.request(
  • 发起网络请求
    lib/network.js:514
    request = (current.protocol === 'https:' ? https : http).request(
  • 发起网络请求
    lib/proxy.js:66
    const upstream = http.request(
  • 执行外部命令固定命令
    lib/certstore.js:37
    execFile('reg.exe', ['query', path], { timeout: timeoutMs, windowsHide: true }, (error, stdout, stderr) => {
  • 执行外部命令固定命令
    lib/certstore.js:148
    execFile(
  • 执行外部命令固定命令
    lib/certstore.js:179
    execFile('certutil.exe', ['-user', '-delstore', scope, sha1], { timeout: 15000, windowsHide: true }, (error, stdout, stderr) => {
  • 执行外部命令固定命令
    lib/certstore.js:201
    execFile(
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

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

dsh在校园网下接入学术资源服务,加速github与google等支持的网站,无需单独运行scholartools或特定浏览器,基于 scholar.edu.cn

README

由 DeepSeek 最新模型翻译生成
校园网学术通道加速 · dsh-scholar-access 让 DeepSeek Harness 自己在校园网里走通 GitHub、Hugging Face、npm、PyPI —— 包括 DSH 的插件、模型请求、插件市场索引源,以及智能体派生的 git / npm / pip 子进程。 这是 DeepSeek Harness 的插件,把 DSH 自己的国际流量走 CERNET 学术通道(scholar.edu.cn),用的是通道的 DoH 解析器和反向代理。证书信任按进程单独授予、可随时撤销,不往整台机器上装。 这是什么 很多高校通过 CERNET 的「国际学术资源访问专用通道」开放 GitHub、Hugging Face、arXiv 等站点。官方做法是下载 scholartools.exe / 专用浏览器,它会: 1. 把系统 DNS 指向通道的 DoH 解析; 2. 把通道反向代理的根证书装进本机证书库(整台机器所有程序都信任它); 3. 每次访问都要保持客户端在跑。
展开完整文档(README 剩余 1 节)
校园网学术通道加速 · dsh-scholar-access

让 DeepSeek Harness 自己在校园网里走通 GitHub、Hugging Face、npm、PyPI —— 包括 DSH 的插件、模型请求、插件市场索引源,以及智能体派生的 git / npm / pip 子进程。

这是 DeepSeek Harness 的插件,把 DSH 自己的国际流量走 CERNET 学术通道(scholar.edu.cn),用的是通道的 DoH 解析器和反向代理。证书信任按进程单独授予、可随时撤销,不往整台机器上装。

这是什么

很多高校通过 CERNET 的「国际学术资源访问专用通道」开放 GitHub、Hugging Face、arXiv 等站点。官方做法是下载 scholartools.exe / 专用浏览器,它会:

1. 把系统 DNS 指向通道的 DoH 解析;
2. 把通道反向代理的根证书装进本机证书库(整台机器所有程序都信任它);
3. 每次访问都要保持客户端在跑。

这个插件把 1、2 两步搬进 DSH 进程内部,并且只对 DSH 自己生效:

| 层 | 通道侧 | 本插件 |
| 名字解析 | https://doh.scholar.work/dns-query,白名单域名解析到 205.164.0.0/16 | 进程内 DoH 客户端,命中通道段才接管,其余域名原样直连 |
| 加密信任 | 反向代理出示 Scholar Service ← Scholar Root CA v1 | 从真实握手链抓取并 pin 根证书,只在与通道地址通信时并入信任库 |
| 出口 | 反向代理集群 | ① 接管宿主 fetch ② 本地转发代理 ③ 子进程环境变量 |

关键点:没有本地中间人。 本地代理只做 TCP 隧道(CONNECT),TLS 端到端到通道反向代理;插件自己不签发任何证书。

特性

- 不需要 scholartools.exe 常驻,也不改系统 DNS、不写系统证书库。
- 默认不信任证书:先做一次不校验的握手,算出链上根指纹与内置 pin 比对,确认「指纹匹配」后由你点「信任证书」。
- 一键注销:停用并删除本地 PEM,通道立即失效。
- 系统信任开关:如果 scholartools 已经把根证书装进了本机库,插件能扫出来,并可用 Disallowed(不信任证书)库停用而不删除——用 scholartools 时再一键恢复。
- 可访问性测试:逐域名返回状态码、落地 IP、是否走通道、耗时、证书指纹是否匹配。
- 接管统计:真实记录宿主进程里有多少请求走了通道、多少直连、多少失败,按域名明细——不是口号。
- 开关、模式、证书信任全部在 设置 → 插件 → 校园网学术通道加速 一页里。

安装

从 GitHub 安装

在 DSH 里让智能体执行:

plugin_manager { action: "install_bundle", target: "github:blankwy/dsh-scholar-access" }

若你的 DSH 版本不接受 GitHub spec,克隆到本地后按下面的「本地目录」方式安装即可。

本地目录(开发/自用)

git clone https://github.com/blankwy/dsh-scholar-access.git D:/path/to/dsh-scholar-access
plugin_manager { action: "install_bundle", target: "D:/path/to/dsh-scholar-access" }

装完必须重启一次 DSH

新 bundle 的补丁由 Loader 在启动时组合,安装阶段只会写入配置档的 package.json 与 bundle 列表(返回 application: "restart-required" 属正常)。之后修改插件代码同样需要重启。

自检(不需要起 DSH)

装之前可以先确认这台机器能不能用:

node scripts/verify.mjs # github.com / huggingface.co / registry.npmjs.org
node scripts/verify.mjs pypi.org arxiv.org

它会依次做:DoH 解析 → 连到通道地址 → 用内置 pin 校验证书 → 打印 status / ip / channel / pin。全部通过退出码为 0。

首次使用

1. 打开 设置 → 插件 → 已安装 → 校园网学术通道加速。
2. 点「检查系统证书库」——看看 scholartools 有没有把根证书装到本机级。
3. 点「测试可访问性」——此时不校验证书,但会把链上根指纹和内置 pin 比对,应显示「指纹匹配」。
4. 确认无误后点「信任证书」——通道立即生效。
5. 想关掉:点「注销证书」,或直接关右上角总开关。

使用

设置页

| 区域 | 说明 |
| 总开关 | 即时生效,写盘持久化 |
| 运行状态 | DoH 健康、本地代理地址、宿主 fetch 是否接管、注入了多少环境变量、实测接管次数 |
| 证书信任(主动) | 信任 / 注销、本地 PEM 路径、pin 指纹、系统证书库扫描与开关 |
| 接管范围 | 自动:只接管已知国际站点;全量:所有域名先经 DoH 解析 |
| 可访问性测试 | 逐域名结果,含「通道/直连」与「指纹匹配」标记 |

智能体工具

| 工具 | 用途 |
| scholar_access_test | 批量测可达性,可传 targets |
| scholar_access_status | 开关、DoH 健康、代理、注入的环境变量、证书指纹、接管统计 |
| scholar_resolve | 单域名 DoH 解析,看是否落进通道段 |

命令行子进程

开启后,智能体派生的子进程会继承(关闭时精确恢复原值):

HTTPS_PROXY / HTTP_PROXY / NO_PROXY
SSL_CERT_FILE / CURL_CA_BUNDLE / GIT_SSL_CAINFO / REQUESTS_CA_BUNDLE
NODE_EXTRA_CA_CERTS

git ls-remote --heads https://github.com/nodejs/node
npm view react version

已经打开的旧终端继承的是旧环境,需要新开会话。

为什么没有 NODE_USE_ENV_PROXY:Node 24 在该变量存在时会让 http(s).request 也走环境代理,而本插件的通道请求就在同一个宿主进程里——那会把它们绕回插件自己的本地代理。所以插件不注入它;需要代理的 Node 脚本请自行开启($env:NODE_USE_ENV_PROXY=1,并已自动带上 NODE_EXTRA_CA_CERTS)。

作用范围

覆盖

- 宿主进程里所有走 globalThis.fetch 的代码:插件网络调用、模型请求、插件市场索引源、web 工具。
- 智能体派生的子进程:git、npm/pnpm、pip、huggingface-cli,以及自行开启 NODE_USE_ENV_PROXY 的 Node 脚本。

不覆盖

- 直接 net.Socket() / 自带 DNS 的程序。
- 开启前已建立的长连接。
- 通道白名单之外的域名——按设计直连,走不动属于校园网出口限制。

证书与隐私(重要)

| 位置 | 本插件是否写入 | 说明 |
| Windows CurrentUser\Root / CA | 否 | 从不写 |
| Windows LocalMachine\Root / CA | 否 | 从不写(也不申请提权) |
| $DSH_HOME/scholar-access/ca-bundle.pem | 仅「已信任」期间 | 注销时删除 |
| $DSH_HOME/scholar-access/scholar-root.pem | 仅「已信任」期间 | 注销时删除 |
| lib/scholar-ca.js | 随包分发 | 只是一段 PEM 文本,不被引用就不产生信任 |

信任只发生在两处,且都随开关消失:连接通道地址时把该根并入 Node 的 ca: 列表;子进程里通过环境变量指向那两个 PEM。

要说明的风险:通道反向代理对经通道的 HTTPS 流量做 TLS 终止,具备内容审计与实时改写能力(这是该通道的公开设计,不是本插件引入的)。插件能做的是把范围收窄、把事实摊开——默认不信任、只对通道地址生效、pin 指纹每次校验、状态页可见、一键注销。

关于系统信任开关:scholartools.exe 会把同一个根证书装进本机级证书库(全机器所有程序都信任),这与本插件无关。插件页可以扫出它,并用 Windows 的 Disallowed 库停用而不删除——证书仍在 Root 里,只是整机判定不受信任;恢复时从 Disallowed 移除即可。两个方向都需要管理员权限(会弹 UAC)。注意:走 Windows 证书库的浏览器(Edge / Chrome / Open 等)会受影响,Firefox 用自己的证书库不受影响。

配置

| 键 | 默认 | 说明 |
| enabled | true | 总开关初值(页面开关会覆盖并持久化) |
| dohEndpoint | https://doh.scholar.work/dns-query | DoH 解析地址,可换成自建 |
| mode | auto | auto / always |
| patchHostFetch | true | 是否接管宿主 fetch |
| startProxy | true | 是否启动本地转发代理 |
| proxyPort | 0 | 0 = 自动分配 |
| injectEnv | true | 是否注入子进程环境变量 |
| extraHosts | [] | 额外强制走通道的域名 |
| testHosts | 见默认值 | 测试列表 |

证书信任不是配置项,而是页面上的运行时状态(默认关闭),存在 state.json 里。

数据与卸载

$DSH_HOME/scholar-access/(默认 C:\Users\<你>\.dsh\scholar-access\):

- state.json — 开关、模式、是否已信任
- ca-bundle.pem — Mozilla 根 + 通道根(仅信任期间)
- scholar-root.pem — 仅通道根(仅信任期间)

卸载:plugin_manager { action: "remove_bundle", target: "dsh-scholar-access" },然后删掉上面整个目录、重启 DSH。若曾点过「信任证书」,先点「注销证书」把 PEM 清掉。

排错

| 现象 | 排查 |
| 测试失败且 channel:false | DoH 没命中通道:确认在校园网内、dohHealth.ok 为 true;用 scholar_resolve github.com 看返回 IP |
| 全部失败,error: fetch failed | 校园网未开通该通道或出口限制 |
| 子进程仍不走通道 | 看 scholar_access_status 的 env.injected;新开终端会话 |
| 根证书「指纹不匹配」 | 通道换了证书。先关开关,抓新链更新 pin,不要直接信任 |
| curl 报 schannel: AcquireCredentialsHandle failed | Windows 自带 curl 是 schannel 构建,不认 PEM 形式的 CA。用 git / npm / node / python,或换 OpenSSL 版 curl |
| 某功能变慢 | 把 mode 切回 auto,或临时关总开关对比 |

已知限制

- 只在已开通该通道的校园网内有效。
- 通道白名单由运营方维护,名单外的域名仍然直连。
- always 模式会给每个新域名加一次 DoH 查询(有缓存),非必要不用。
- 证书 pin 需要随通道换证更新:lib/scholar-ca.js 里是实测抓取的根证书与指纹。

开发

index.js Host 插件:配置、工具、路由、生命周期 client.js Client 卡片:设置页 UI lib/network.js DoH 客户端、通道 fetch、证书链读取 lib/proxy.js 本地转发代理(CONNECT 隧道) lib/certstore.js Windows 证书库扫描 / Disallowed 开关 lib/scholar-ca.js pin 的根证书与指纹 cordis.patch.yml bundle patch(插入插件行) scripts/verify.mjs 独立自检脚本(DoH + 通道 + pin,不需要 DSH)

改完先 npm run check(等价于逐个 node --check),再重启 DSH 验证。

声明

本项目只做本地网络路径与信任管理:不绕过任何身份认证,不修改通道侧策略,不内置账号或密钥。使用前请确认所在学校已开通该通道并允许此类用法;因使用本插件产生的账号、合规或网络后果由使用者自负。

证书相关:仓库内的根证书是公开证书,从真实握手链抓取并用于 pin,不含任何私钥。

License

MIT
预览分享卡片长什么样 ↓blankwy/dsh-scholar-access
分享 · DeepSeek Harness Hub
blankwy/dsh-scholar-access

让 DSH 的 GitHub 等国际流量走校园学术通道

这是你的仓库?认领条目

回到顶部