前言¶
在 DeepSeek Harness(DSH)里选模型,通常依赖宿主或插件声明的模型提供方。若你日常已在「超算互联网 / SCNet(计算服务)」客户端登录,模型列表和 API Key 往往只缓存在本机客户端目录里,DSH 不会自动感知。手动抄 Key、自建网关既费事,也容易和客户端状态不同步。
下面介绍社区插件 dsh-connect-scnet-plus(维护者 gdyshi)。它只读扫描本机 scnet 客户端凭据与模型目录,把已登录网关里的模型注册进 DSH;增强版(plus)在插件详情页提供逐模型开关、图片历史回放、凭据定时重扫和本地诊断,行为在 GitHub README 中有完整说明。
这是什么¶
dsh-connect-scnet-plus 是 DSH 插件,displayName 为「DSH Connect SCNet」,当前包版本为 0.1.2,许可证 MIT。核心定位:把本机 scnet 客户端已登录的模型网关接入 DeepSeek Harness,不写入客户端或 sclaw 目录,仅从约定路径读取 JSON 配置。
与基础版相比,plus 在详情页增加「模型 / 说明」两个 tab、支持勾选启用部分模型、接入宿主 attachments 服务以支持带图历史、每 5 分钟重扫凭据(重新登录后无需重启 DSH),并提供 node lib/bin.js 诊断入口。详情可在目录页查看:https://www.skillhub.cn/plugins/gdyshi/dsh-connect-scnet-plus。
核心功能¶
只读发现凭据与模型目录¶
插件声明为凭据只读:读取 ~/.sclaw/agent/scnet-credentials/*.json 中 type: "api_key" 的 key,以及 ~/.sclaw/agent/models.json 中的模型目录;不向客户端、sclaw 或宿主配置写入。日志与诊断中对 key 脱敏(前 6 后 4),sk-key 仅在本机 loopback shim 内注入。
插件详情页与逐模型开关¶
安装后进入:设置 → 已安装插件 → dsh-connect-scnet-plus → 详情页「模型」tab。默认全部不勾选表示不做限制,所有发现的模型出现在模型选择器;勾选部分模型后,仅勾选项可用。改动即时写入插件设置,宿主约 10 秒重建模型表,一般无需重启。
图片历史与凭据刷新¶
plus 支持通过 ctx.get("attachments") 接入宿主 attachments 服务,用于图片历史回放。凭据 TTL 重扫间隔为 5 分钟,客户端重新登录后插件可自动拾取新凭据。
pi-ai 世代自动适配¶
@earendil-works/pi-ai 为可选 peer;profile 解析到的版本若与宿主内置不同代,可能导致请求在本地极短时间内崩溃(典型报错见下文故障排查)。插件启动时用 import.meta.resolve 与 manifest 判定实际解析到的 pi-ai 世代,适配器自动折叠或展开 transcript,两代均可收发;当前判定可运行诊断命令查看 piAi.generation(modern / legacy)与 piAi.resolvedLocally。
安装与启用¶
环境要求¶
- DSH 0.2.x(
@deepseek-ai/dsh-llm/dsh-llm-pi-ai处于 README 所述 peer 范围内)。 - 本机已安装并至少登录过一次 scnet 客户端,凭据位于
~/.sclaw/agent/scnet-credentials/。 - 本机 profile 解析到的
@earendil-works/pi-ai宜与宿内置版本同代(≥0.87,推荐 1.x);严重错配时每个请求可能在本地崩溃。Node 引擎要求为^22.19.0 || >=24.0.0(见 package.json)。
插件在当前 DSH 进程权限下运行,安装前应自行查看 源码与许可证;依赖 scnet 客户端非官方开放接口,上游变更可能导致失效。
安装命令¶
README 给出的安装方式为(将 <你的用户名> 换成实际 fork 或发布者路径;也可使用发布 tarball):
dsh plugin --profile desktop add github:<你的用户名>/dsh-connect-scnet-plus
# 或者装 tarball
dsh plugin --profile desktop add file:/绝对路径/dsh-connect-scnet-plus-0.1.0.tgz
安装完成后重启一次 DSH。
典型用法¶
筛选模型¶
按上文路径打开「模型」tab,按需勾选要暴露给选择器的 scnet 模型;留空则全部可用。
本地诊断¶
在项目或插件安装目录下执行:
node lib/bin.js
输出涵盖凭据、目录、网关连通性、模型启用状态与 pi-ai 版本判定。package.json 亦注册了 bin 名 dsh-connect-scnet-plus,指向同一 lib/bin.js。
开发者门禁(可选)¶
克隆或开发仓库时,可与 CI 同源跑门禁:
npm run gate # 全量 8 项
npm run gate -- --lane fast # 提交前快速档
npm run gate -- --list # 查看门禁注册表
适用场景与注意¶
适合谁:已在 SCNet 客户端登录、希望在 DSH 桌面 profile 里直接选用同一网关模型目录的开发者;需要在 UI 中限制部分模型、或依赖带图会话历史的场景可优先选用 plus。
使用注意:
- 通过个人 API Key 调用网关受服务条款约束,限流与账号风险需自行评估;项目与超算互联网官方无隶属关系。
- 免费与计费标注依赖客户端缓存的
priceLabel,具体价格以官方为准。 - 若模型选择器里没有任何 scnet 模型,可检查
cordis.patch.yml是否残留modelSwitches段,清空后恢复全部模型。 - 若出现
pi-ai image input requires the durable attachment service,说明宿主未提供 attachments 服务。 - 社区插件目录 SkillHub 为独立站点,与 DeepSeek / 幻方无官方从属关系;DSH 生态理念是「一切皆插件」,本文介绍的是社区维护的接入方案。
故障排查摘录¶
版本错配时可能出现:
PI_AI_ERROR: Cannot read properties of undefined (reading 'length')
README 建议将 profile 的 @earendil-works/pi-ai 对齐到宿主内置版本;亦可先跑 node lib/bin.js 确认世代判定。
结尾¶
dsh-connect-scnet-plus 把本机 scnet 客户端的只读凭据与模型目录桥接到 DSH,增强版补上 UI 级模型开关、图片历史、凭据重扫与诊断,降低手动同步网关的成本。实现细节见仓库 docs/TECHNICAL.md。