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

插件商店 0xKcyzz/dsh-plugin-store

DeepSeek Harnessv0.1.0
0xKcyzz80 天前有提交已提供中文文档扫描:含敏感能力

浏览搜索筛选并一键安装更新卸载插件

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

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

自动兼容检查有告警:npm 同名包「dsh-plugin-store」归属 yunhuantian/dsh-plugin-store,装到的可能不是本插件。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add 0xKcyzz/dsh-plugin-store
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

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

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

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

npm 同名包「dsh-plugin-store」归属 yunhuantian/dsh-plugin-store,装到的可能不是本插件

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包dsh-plugin-store @ 0.1.0
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/11/1 18:26:38

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

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

可执行外部命令读写/删除本地文件读取剪贴板或密钥环境变量发起外部网络请求
查看扫描证据(共 29 处,展示前 25 条)
  • 发起网络请求
    lib/index.js:79
    const res = await fetch(url, { headers });
  • 发起网络请求
    lib/index.js:135
    const res = await fetch(url, { headers });
  • 读取本地文件
    lib/index.js:185
    if (!existsSync(pkgPath)) return { dependencies: {}, bundles: [] };
  • 读取本地文件
    lib/index.js:187
    const pkg = JSON.parse(readFileSync(pkgPath, "utf8"));
  • 读取本地文件
    lib/index.js:199
    const manifest = JSON.parse(readFileSync(manifestPath, "utf8"));
  • 读取本地文件
    lib/index.js:215
    if (!existsSync(pkgPath)) return;
  • 读取本地文件
    lib/index.js:216
    const pkg = JSON.parse(readFileSync(pkgPath, "utf8"));
  • 写入本地文件
    lib/index.js:245
    writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + "\n");
  • 读取本地文件
    lib/index.js:253
    if (!existsSync(metaFile())) return {};
  • 写入本地文件
    lib/index.js:262
    writeFileSync(metaFile(), JSON.stringify(meta));
  • 请求外部主机api.github.com
    lib/index.js:282
    const res = await fetch(`https://api.github.com/repos/${fullName}/contents/package.json`, { headers });
  • 发起网络请求
    lib/index.js:282
    const res = await fetch(`https://api.github.com/repos/${fullName}/contents/package.json`, { headers });
  • 请求外部主机api.github.com
    lib/index.js:314
    const res = await fetch(`https://api.github.com/repos/${fullName}`, { headers });
  • 发起网络请求
    lib/index.js:314
    const res = await fetch(`https://api.github.com/repos/${fullName}`, { headers });
  • 执行外部命令固定命令
    lib/index.js:326
    const child = spawn("pnpm", args, {
  • 写入本地文件
    lib/index.js:428
    writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + "\n");
  • 删除本地文件递归
    lib/index.js:433
    rmSync(join(profileDir(profile), "node_modules", key), { recursive: true, force: true });
  • 写入本地文件
    lib/index.js:457
    writeFileSync2(cacheFile(), JSON.stringify(cache));
  • 读取密钥环境变量
    lib/index.js:464
    const token = process.env.GITHUB_TOKEN || process.env.DSH_PLUGIN_STORE_TOKEN || "";
  • 发起网络请求
    lib/client.js:155
    fetch(url).then((r) => r.json()),
  • 发起网络请求
    lib/client.js:156
    fetch("/plugin-store/installed").then((r) => r.json()),
  • 发起网络请求
    lib/client.js:157
    fetch("/plugin-store/install-meta").then((r) => r.json())
  • 发起网络请求
    lib/client.js:247
    return fetch("/plugin-store/install", {
  • 发起网络请求
    lib/client.js:255
    fetch("/plugin-store/install-meta").then((r) => r.json()).then((m) => setInstallMeta(m && m.meta && typeof m.meta === "object" ? m.meta : {}));
  • 发起网络请求
    lib/client.js:272
    fetch("/plugin-store/uninstall", {
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
涉及外部主机:api.github.com

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

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-settings@deepseek-ai/dsh-host-webserver
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 浏览搜索筛选插件
  • 一键安装插件
  • 一键更新卸载插件

DeepSeek Harness 插件商店:浏览、搜索、筛选并一键安装 dsh-plugin 生态插件

README

由 DeepSeek 最新模型翻译生成
DSH Plugin Store · 插件商店 这是一个 DeepSeek Harness 内置的插件商店:在「设置 → 插件」里新增插件商店,浏览、搜索、筛选并一键安装 / 更新 / 卸载 dsh-plugin 生态插件。 安装: dsh plugin --profile web add github:0xKcyzz/dsh-plugin-store 安装后重启 DSH,打开 设置 → 插件 → 「插件商店」。 功能 - 联网目录 + 渐进式加载:从 GitHub topic:dsh-plugin 拉取插件。搜索接口单查询上限 1000 条,本插件按 Star 分片查询再合并,可加载全部(当前约 1800+ 个)。首屏先秒出前 300 条,其余在后台补全并写入磁盘缓存(30 分钟),之后秒开。 - 卡片列表:类型标签徽章、作者/仓库名、简介、Star 数、发布日期。 - 搜索:按名称、简介、标签、作者实时过滤。 - 筛选: - 功能分类(下拉框):全部分类 / 已安装 / 界面增强 / 通知 / 工作流自动化 / 开发辅助 / 知识学习 / 其他工具。 - 类型标签(单行横向滚动,带实时计数):全部类型 / 已收录 + 18 个类型标签。 - 排序:GitHub Stars / 最近添加 / 最近更新 / 名称。
展开完整文档(README 剩余 1 节)
DSH Plugin Store · 插件商店

这是一个 DeepSeek Harness 内置的插件商店:在「设置 → 插件」里新增插件商店,浏览、搜索、筛选并一键安装 / 更新 / 卸载 dsh-plugin 生态插件。

安装:

dsh plugin --profile web add github:0xKcyzz/dsh-plugin-store

安装后重启 DSH,打开 设置 → 插件 → 「插件商店」。

功能

- 联网目录 + 渐进式加载:从 GitHub topic:dsh-plugin 拉取插件。搜索接口单查询上限 1000 条,本插件按 Star 分片查询再合并,可加载全部(当前约 1800+ 个)。首屏先秒出前 300 条,其余在后台补全并写入磁盘缓存(30 分钟),之后秒开。
- 卡片列表:类型标签徽章、作者/仓库名、简介、Star 数、发布日期。
- 搜索:按名称、简介、标签、作者实时过滤。
- 筛选:
- 功能分类(下拉框):全部分类 / 已安装 / 界面增强 / 通知 / 工作流自动化 / 开发辅助 / 知识学习 / 其他工具。
- 类型标签(单行横向滚动,带实时计数):全部类型 / 已收录 + 18 个类型标签。
- 排序:GitHub Stars / 最近添加 / 最近更新 / 名称。
- 分页:每页 10 / 30 / 50(默认 10),页码固定 7 格(翻页不位移)+ 跳页输入框。
- 一键安装:卡片「安装」在宿主机执行 pnpm add,并把声明 dsh.bundle 的依赖写进 profile 的 bundle 列表。
- 手动安装:标题栏「手动安装」弹出输入框,粘贴安装命令或包名(支持 dsh plugin add github:owner/repo、@scope/pkg、github:owner/repo#subdir 等)。
- 卸载:已安装插件卡片按钮变为「卸载」,本地移除(改 package.json + 删 bundle + 删目录,不依赖 pnpm/网络,秒回)。
- 更新检测:已安装且是最新版的显示绿色「最新版」标签;有更新的显示「有更新」标签 + 「更新」按钮;「已安装」页面顶部有「一键更新」批量更新全部。
- 查看详情:跳转插件仓库的 GitHub 页面。
- 安装 / 卸载 / 更新成功或失败都在顶部横幅提示。

界面

打开 设置 → 插件 → 插件商店:

- 顶部:插件总数 / 已收录数 / 已加载条数 + 「一键更新(仅已安装页)」「手动安装」「刷新」按钮。
- 工具栏:搜索框 + 分类下拉框 + 排序下拉框。
- 单行横向滚动的类型标签条(全部类型 / 已收录 / 18 个分类标签,带计数)。
- 双列卡片网格:标签徽章、最新版/有更新状态、名称、简介、Star 数、语言 / License / 发布日期、查看详情 + 安装/更新/卸载按钮。
- 底部分页栏:每页条数、页码(固定 7 格)、上一页/下一页、跳页。

工作原理

本插件是双面(dual-face) DSH bundle,由 cordis.patch.yml 以单行挂载:

- Host 半侧(src/index.ts → lib/index.js):注册 /plugin-store/ HTTP 路由——
- GET /plugin-store/catalog:抓取 GitHub Search API(按 Star 分片 + 限流重试),归一化、分类,渐进式返回 + 磁盘缓存。
- GET /plugin-store/installed:读取 profile 的 package.json,报告已安装依赖与 bundle。
- GET /plugin-store/install-meta:返回安装时间戳记录(用于更新检测)。
- POST /plugin-store/install:预检 dsh.bundle → pnpm add → 重排 dsh.profile.bundles → 记录安装时间戳。
- POST /plugin-store/uninstall:本地移除依赖 + bundle + 目录,记录卸载。
- Client 半侧(src/client/ → lib/client.js):注册 settings.plugins.tab(id=store),渲染商店界面,通过 fetch 调用 Host 路由。

包声明 dsh.bundle.patch + dsh.client,所以安装后:Host 入口由 Loader 加载,浏览器半侧由 client-modules 注入 window.__DSH_BOOT__。

配置(环境变量)

| 变量 | 默认值 | 说明 |
| GITHUB_TOKEN | 空 | 可选 GitHub Token,提升 API 限流额度(未认证搜索 10 次/分钟,认证后 30 次/分钟),建议配置以更快加载全部插件。 |
| DSH_PLUGIN_STORE_PROFILE | web | 安装目标 profile 名。 |

开发 / 构建

npm install # 安装 esbuild 等构建工具
npm run build # 产出 lib/index.js(Host)+ lib/client.js(浏览器)

仓库已提交 lib/ 构建产物,github:owner/repo 安装时无需构建;改动 src/ 后需重新 npm run build 并提交。

说明与限制

- 重启生效:安装 / 卸载 / 更新只写入依赖与 bundle 列表,需重启 DSH 才挂载 / 移除 / 更新。
- 限流:全量抓取约 22 次搜索请求(带间隔 + 重试);未配置 GITHUB_TOKEN 时后台补全较慢(约 2 分钟),界面会标注「已加载 N(部分)」,配置 token 后约 45 秒。
- 更新检测基于 pushed_at:对比「目录里仓库的最新推送时间」与「安装时记录的推送时间」,跟随目录缓存(30 分钟)。
- topic 噪声:dsh-plugin 主题下含不少非 DSH 插件仓库(设计工具、桌面客户端、skill 集、monorepo 皮肤合集等)。「已收录」标签用启发式近似「可安装的 DSH 插件」,非权威口径。
- 可安装性:只有声明 dsh.bundle.patch 的 npm 包才会成为真正的 profile bundle;合集仓库(如皮肤库)需用 github:owner/repo#subdir 手动安装其中的具体子包。
- 分类为启发式:功能分类 / 类型标签由内置关键词表(src/categories.ts)从 topics、语言、名称、简介派生,可按需调整。

License

MIT
预览分享卡片长什么样 ↓0xKcyzz/dsh-plugin-store
分享 · DeepSeek Harness Hub
0xKcyzz/dsh-plugin-store

浏览搜索筛选并一键安装更新卸载插件

这是你的仓库?认领条目

回到顶部