在侧边栏查看各家模型余额与额度用量
29.5/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/22 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Amwidtf/dshps该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · model
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 14 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件写入剪贴板(不计风险)读取剪贴板或密钥环境变量发起外部网络请求
查看扫描证据(共 31 处,展示前 29 条)
- 写入剪贴板client.js:2947
if (clipboard && typeof clipboard.writeText === 'function') clipboard.writeText(url) - 发起网络请求plugins/dshp-quota/host.js:163
const response = await fetch(url, { - 读取密钥环境变量plugins/dshp-quota/host.js:752
if (process.env.DSHPS_DISABLE_TOKEN_FILE === '1') return undefined - 读取密钥环境变量plugins/dshp-quota/host.js:753
const override = process.env.DSHPS_KIMI_TOKEN_FILE - 执行外部命令固定命令plugins/dshp-quota/host.js:768
execFile( - 读取本地文件plugins/dshp-quota/host.js:799
if (!file || !existsSync(file)) return undefined - 发起网络请求plugins/dshp-quota/host.js:839
const response = await fetch(KIMI_WEB_REFRESH_URL, { - 读取本地文件plugins/dshp-quota/host.js:894
return file !== undefined && existsSync(file) - 发起网络请求plugins/dshp-quota/host.js:923
const response = await fetch(url, { - 读取密钥环境变量plugins/dshp-quota/host.js:1465
if (!record) record = parseKimiTokenRecord(process.env.KIMI_WEB_TOKEN) - 发起网络请求plugins/dshp-net/host.js:974
return fetch(url, { signal: controller.signal }).finally(() => clearTimeout(timer)) - 发起网络请求plugins/dshp-net/host.js:1616
upstreamReq = transport.request(options) - 发起网络请求plugins/dshp-models/host.js:550
response = await fetch(TOKEN_URL, { - 写入本地文件plugins/dshp-workflow/lib/store.js:115
await mkdir(directory, { recursive: true }) - 写入本地文件plugins/dshp-workflow/lib/store.js:118
await writeFile(tempPath, content, 'utf8') - 写入本地文件plugins/dshp-workflow/lib/store.js:119
await rename(tempPath, filePath) - 删除本地文件plugins/dshp-workflow/lib/store.js:121
await rm(tempPath, { force: true }).catch(() => {}) - 写入本地文件plugins/dshp-workflow/lib/store.js:152
await mkdir(workflowsDir, { recursive: true }) - 写入本地文件plugins/dshp-workflow/lib/store.js:153
await mkdir(runsDir, { recursive: true }) - 读取本地文件plugins/dshp-workflow/lib/store.js:194
text = await readFile(filePath, 'utf8') - 读取本地文件plugins/dshp-workflow/lib/store.js:216
entries = await readdir(directory, { withFileTypes: true }) - 读取本地文件plugins/dshp-workflow/lib/store.js:230
text = await readFile(filePath, 'utf8') - 读取本地文件plugins/dshp-workflow/lib/store.js:231
fileStat = await stat(filePath) - 读取本地文件plugins/dshp-workflow/lib/store.js:308
text = await readFile(filePath, 'utf8') - 删除本地文件plugins/dshp-workflow/lib/store.js:362
await unlink(filePath) - 写入本地文件plugins/dshp-workflow/lib/store.js:400
await mkdir(join(runsDir, candidate)) - 读取本地文件plugins/dshp-workflow/lib/store.js:489
entries = await readdir(runsDir, { withFileTypes: true }) - 删除本地文件plugins/dshp-workflow/lib/store.js:560
await rm(filePath, { force: true }).catch(() => {}) - 删除本地文件递归plugins/dshp-workflow/lib/store.js:643
await rm(join(runsDir, runId), { recursive: true, force: true })
扫描于 2026/10/31(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
DSH 插件栈:侧边栏余额与额度面板,支持 DeepSeek、Kimi、MiniMax、智谱 GLM
README
由 DeepSeek 最新模型翻译生成dshps:DSH 插件栈
仓库:<https://github.com/Amwidtf/dshps>
dshps 是一个 DSH 插件栈:一个 bundle 里放多个以 dshp- 开头的插件,共用一份 Web 客户端和设置页。每个插件自己写 Host 半和文档,可以单独安装、停用和升级。
这个 README 讲整个栈:怎么装、包含哪些插件、仓库怎么组织。单个插件的显示细节、配置项和已知问题写在插件自己的 README 里。
目录
- 插件列表
- 栈提供什么
- 安装
- 配置入口
- 兼容性
- 隐私与安全
- 架构
- 开发与测试
- 新增插件
- 常见问题
- 免责声明
- 许可
插件列表
| 插件 | 作用 | 文档 | 状态 |
| dshp-quota | 侧边栏余额与额度面板:DeepSeek、Kimi、MiniMax、智谱 GLM | plugins/dshp-quota/README.md · EN | 随栈提供 |
新增插件后在这里加一行,插件说明写到对应的 plugins/dshp-/README.md,不要堆进根 README。
栈提供什么
- 一个 bundle 管多个插件:cordis.patch.yml 一次插入多行;根行挂载共享 Web 客户端,子路径行只跑 Host 半。
展开完整文档(README 剩余 1 节)
dshps:DSH 插件栈
仓库:<https://github.com/Amwidtf/dshps>
dshps 是一个 DSH 插件栈:一个 bundle 里放多个以 dshp- 开头的插件,共用一份 Web 客户端和设置页。每个插件自己写 Host 半和文档,可以单独安装、停用和升级。
这个 README 讲整个栈:怎么装、包含哪些插件、仓库怎么组织。单个插件的显示细节、配置项和已知问题写在插件自己的 README 里。
目录
- 插件列表
- 栈提供什么
- 安装
- 配置入口
- 兼容性
- 隐私与安全
- 架构
- 开发与测试
- 新增插件
- 常见问题
- 免责声明
- 许可
插件列表
| 插件 | 作用 | 文档 | 状态 |
| dshp-quota | 侧边栏余额与额度面板:DeepSeek、Kimi、MiniMax、智谱 GLM | plugins/dshp-quota/README.md · EN | 随栈提供 |
新增插件后在这里加一行,插件说明写到对应的 plugins/dshp-/README.md,不要堆进根 README。
栈提供什么
- 一个 bundle 管多个插件:cordis.patch.yml 一次插入多行;根行挂载共享 Web 客户端,子路径行只跑 Host 半。
- 共享 Web 客户端:所有 dshp- 的界面注册在同一个 client.js,包只允许一个 ./client。
- 统一设置入口:栈级设置页在「设置 → DSH 插件栈」,插件自己的配置项也放在这里,保存后实时生效。
- 统一命名和元数据:插件目录、RPC 通道、locale 文件和图标按 dshp- 约定组织;插件标题和描述由父包 exports 提供给子路径行。
- 独立凭据:每个插件在自己的 Host 半里通过 ctx.credentials 取凭据,凭据只留在 Host 进程,浏览器拿不到。
安装
需要支持 Cordis bundle patch 和 dsh.bundle / dsh.client 的 DSH 版本。
1. 克隆或下载这个仓库:git clone https://github.com/Amwidtf/dshps.git。
2. 通过 DSH 的 bundle 安装机制安装仓库目录,例如 plugin_manager 的 install_bundle,或用 DSH 客户端里的插件安装入口。
3. 刷新 Harness 页面。已启用的插件会出现在自己的位置,例如 dshp-quota 在侧边栏底部、用户信息上方。
4. 打开「设置 → DSH 插件栈」检查插件配置。多数情况下不用改任何东西。
升级后新的客户端 bundle 没生效时,按 DSH 提示重启一次。
配置入口
「设置 → DSH 插件栈」是栈级设置页,当前包含 dshp-quota 的配置项:
- 智谱 GLM 团队参数(组织、项目、type)
- 自动刷新间隔
- Kimi 网页 refresh_token
具体含义、存储位置和排错见 plugins/dshp-quota/README.md。
兼容性
- 需要支持 dsh.bundle.patch、dsh.client 和 subpath exports 的 DSH 版本。
- 插件运行时依赖 DSH 提供的 React、Cordis 和 Connection RPC,不额外装依赖。
- 跑本地测试需要 Node.js 20 以上;仓库在 Node 24 上验证过。
- Kimi 网页 token 的 DPAPI 存储只在 Windows 上启用,其他平台回退到 DSH 凭据服务或环境变量。
隐私与安全
- 仓库里没有 API Key、Cookie、会话 token、账号名和个人路径。测试夹具都是假值。
- 凭据只在 Host 进程内解析和使用,不写日志,不发给浏览器。
- Kimi refresh_token 用 Windows DPAPI 加密后放在本机用户目录,或交给 DSH 本地凭据服务,不进入仓库和插件配置。
- 本地调试工具只读取运行它的机器上的凭据,输出会脱敏,不会上传。
- 安全漏洞按 SECURITY.md 私下报告。不要在 issue 里贴真实账号数据或带余额的截图。
架构
flowchart LR
P["package.jsondsh.bundle.patch + dsh.client"] --> R["根行dshp-collection"]mermaid
graph LR
P["插件栈根dshps"] --> S1["子路径行dshps/plugins/dshp-quota"]
R --> C["client.js共享 Web 客户端"]
S1 --> H1["dshp-quota/host.js"]
C <-->|"认证 RPC /dshp-quota"| H1
text
dshps/
├─ package.json # bundle 清单:dsh.bundle.patch + dsh.client + exports ├─ cordis.patch.yml # 一个 bundle 内插入多个插件行 ├─ index.js # 插件栈根 Host 半,只挂载共享 Web 客户端 ├─ client.js # 共享 Web 客户端 bundle,所有 dshp- 界面都在这里 ├─ locale/ icon.svg # 插件栈的显示元数据 ├─ plugins/ │ └─ dshp-quota/ │ ├─ host.js # 插件 Host 半 │ ├─ README.md # 插件说明(中文) │ ├─ README.en.md # 插件说明(英文) │ ├─ locale/.json # 插件行标题和描述 │ └─ icon.svg ├─ tools/ # 本地测试与探针,不随插件安装 ├─ .github/ # CI、issue/PR 模板、Copilot 指引 ├─ research/ # 接口与 DSH 内部机制调研笔记 ├─ README.en.md # English README ├─ LICENSE # MIT ├─ SECURITY.md └─ CONTRIBUTING.md
开发与测试 bash
从本机 DSH 安装包提取 Host 测试要用的 @deepseek-ai/schemastery 等依赖
DSH_ASAR=/path/to/Harness/resources/app.asar npm run setup:test-deps
npm run check # 语法检查
npm run hygiene # 隐私、密钥、个人路径检查
npm run docs:check # README 链接和锚点检查
npm test # host 20 项 + client 7 项,全部离线夹具
- tools/test-host.mjs:Host 半的离线夹具测试,当前覆盖 dshp-quota 的供应商发现、适配器、缓存、脱敏、失败降级和认证 RPC。
- tools/test-client.mjs:用极简 React/VM 夹具渲染客户端 bundle,检查 slot 注册、折叠行、总览、详情、设置页和错误边界。
- tools/probe-.mjs:本机探针。probe-rpc.mjs 调已安装插件的 RPC,DSH_WEB_ORIGIN 可覆盖默认地址;probe-vendors.mjs 看厂商原始响应;probe-kimi-web.mjs 诊断 Kimi 网页会员接口。
- tools/asar.mjs:读取 DSH app.asar 里的文件。
新增插件时,测试要跟着放在这两个文件里,或者给插件单独建测试文件并在 npm test 里串起来。
新增插件
1. 建 plugins/dshp-xxx/,包含 host.js、locale/.json、icon.svg、README.md(必要时加 README.en.md)。
2. 在 package.json 的 exports 里加 ./plugins/dshp-xxx、./plugins/dshp-xxx/locale/.json、./plugins/dshp-xxx/icon。
3. 在 cordis.patch.yml 的 insert 列表里加 { id: dshp-xxx, name: dshps/plugins/dshp-xxx }。
4. 在 client.js 注册界面。Host 数据走 ctx.connection.rpc.handle('<channel>', ...),客户端用 ctx.connection.rpc.call('<channel>', endpoint, payload) 调用。
5. 需要可编辑配置时,Host 半导出 Schemastery Config,字段标 volatile,设置页加对应字段。
6. 在根 README 的插件表里加一行,把细节写进插件自己的 README。
常见问题
面板没出现:确认 bundle 已安装、对应插件行处于激活状态,然后刷新页面或按提示重启 DSH。
设置页空白:刷新页面再打开。设置页有错误边界,出错会显示原因,不会只剩空白。
想停用某个插件:在 DSH 里停用对应的 dshp-* 行,其他插件不受影响。
某个插件查询失败:先看插件 README 的排错部分;多数是供应商没配置、Key 类型不匹配或接口变化。
免责声明
这是第三方 DSH 插件栈,和 DeepSeek、Kimi(月之暗面)、MiniMax、智谱 GLM 官方没有隶属或背书关系。各厂商接口都不是公开接口,字段和可用性可能变化。插件只读取余额、额度、订阅用量用于展示,不代用户交易,也不改账号状态。使用前请确认所在服务的条款。
许可
MIT © 2026 dshps contributors预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
Amwidtf/dshps
在侧边栏查看各家模型余额与额度用量
相关插件 · 模型接入
API 中继安全审计toby-bridges/api-relay-audit
面向 AI API 中转与 LLM 代理的本地安全审计。
★ 897已汉化DSH
69.4
免费搜索插件DDDMUC/dsh-free-search
DeepSeek Harness 免费搜索插件 —— 无需 API key,零成本,多引擎可切换。 一个给…
★ 761已汉化DSH
68.7
免费联网搜索liustack/modsearch
在官方 App 里模型能联网,切到 API 就不能了。ModSearch 把联网补回来:网页搜索、X…
★ 863已汉化DSH
68.5
OpenCode 免费模型FishBottle7/opencode2dsh
在 DSHDeepSeek Harness里原生使用 OpenCode Zen 的免费匿名模型。
★ 379已汉化DSH
67.8
AI 模型网关tingly-dev/tingly-box
Tingly Box Web UI 演示
★ 373已汉化DSH
67.4
WorkBuddy 账号池XDTrees/dsh-xdpool
把你能白嫖的模型额度接进 DSH 同一个池:WorkBuddy 多账号自动容错、十三家扫码登录、76…
★ 359已汉化DSH
67.1