market-lens:把多个 DSH 插件市场合成一张可筛选的雷达表

前言

在 DSH 里找插件,常见做法是打开内置 Community Market,在「发现 / 可安装 / 已安装 / 来源」里切换,但同一时刻只能浏览一个目录源。社区里还有 dshfind、dsh.so、dshmarketplace 等独立市场,字段口径各不相同:有的有用户数,有的有 0–100 评分,有的带 L4/L5 安装验证或 installCheck。要在几个站点之间来回比版本、更新时间、Stars 和 DSH 兼容性,内置市场并没有设计成「横切比价」。

market-lens(npm 包名 @local/market-lens,维护者 wodaimnd)做的是另一层:把 1024Store、dshfind、dsh.so、dshmarketplace 以及自定义标准源聚合成一张桌面式表格,用 npm 元数据统一判断 DSH 运行时兼容性,并支持 Excel 式筛选、行内安装与已装插件更新检测。它不替代内置市场,而是补上「多源合并 + 组合筛选 + 直达安装」这一段。

这是什么

market-lens 是 DSH 的客户端(Web)插件,当前版本 0.7.0(MIT)。Host 侧拉取并合并各市场目录,客户端在独立面板里呈现可拖动列宽、可显隐列的表格;缺失字段显示「无数据」,不补 0、不猜测。

与内置能力的关系可以概括为:内置 dsh-community-market 是单源的「商店」;@deepseek-ai/dsh-plugin-market 是一个 index URL 对应一个来源。market-lens 不重写市场面板,而是在多源去重(按 npm 包名与 GitHub 仓库身份)的前提下,提供比价、导出、差异 badge 和一键安装。

核心功能

多源合并与字段归属

内建四个来源(1024Store、dshfind、dsh.so、dshmarketplace),并可添加符合 format 1 / manifest 的 HTTPS 自定义源。合并规则在 README 中有对照表:例如用户数主要来自 1024Store 的 installerCount,评分来自 dshfind,安全/验证来自 dsh.so 与 dshmarketplace 等;更新日期取各源较新值,Stars 取较大值,版本由多源与 npm latest 补全。

DSH 兼容性

各源原本用 npm、engines 等不同方式表达兼容性;插件侧统一用 npm 元数据判定当前 DSH 运行时是否适配,并在表格中展示适配状态,便于按列筛选。

Excel 式表格与持久化

同列 OR、跨列 AND 的多选筛选(含日期与数值区间,可包含「无数据」);表头拖动调列宽、列设置显隐,状态写入 localStorage。页签、页码、每页条数、搜索、排序与滚动位置也会恢复(market-lens:page:v1)。

定时刷新与同步差异

可设置 30 分钟至 24 小时的自动刷新,并排期 nextAutoRefreshAt。每次同步后为条目打上新增 / 更新 / 下架 badge,支持「仅看本次变化」。

安全优先视图与配置迁移

默认可只展示有验证证据且低风险的条目(具体口径见 README:例如 dsh.so 的审计等级、dshmarketplace 的 installCheck 等),其余一键切回全量。自定义源、启停、定时与安全视图等可导出/导入 JSON,便于换机或团队共享。

安装、升级与已装清单

表格末列与详情抽屉支持行内「装」、已装显示「✓ 已装」、有新版时「更新 ↑ x.y.z」,调用官方 pluginManager.installBundle,带降级重试与页头回执卡片。已装插件更新检查读取 pluginManager 的已装版本,不会对 local / link: 安装去 probe registry。独立「已安装」页提供「检查更新」进度与按包名过滤。

自定义安装支持 npm 包名(可带版本)、github:owner/repo、github:owner/repo#path:x、https://github.com/o/r 等写法(Host 先解析 spec,不强制目录里必须有该行)。

运行日志与评分规则库(0.6.0 / 0.7.0)

安装失败时可在「运行日志」页签按级别、标签检索 Host 侧环形缓冲(500 条,进程内有效),并导出 .txt 便于贴 issue。

marketScore / communityScore / heat 等排序分由声明式 JSON 规则驱动。0.7.0 起规则改为规则库 + 下拉切换:内置默认、内置预设(默认平衡 / 扶持新插件 / 人气优先)与用户上传(最多 20 份)可并存;用户规则落在 ~/.dsh/market-lens/scoring-rules-library.json,0.6.0 的 scoring-rules.json 会在首次启动时自动迁入库。

安装与启用

社区目录 SkillHub 给出的方式是让 DeepSeek Harness 安装该插件,表述为:

请安装 DSH 插件 wodaimnd/market-lens

README 中另有一套面向本地 link 开发安装到 desktop profile 的写法(路径需换成你本机克隆目录),并在 dsh.profile.bundles 中注册 bundle:

// ~/.dsh/profiles/desktop/package.json
"dependencies": {
  "@local/market-lens": "link:/你的路径/market-lens"
},
"dsh": {
  "profile": {
    "bundles": [ /* ... */, "@local/market-lens" ]
  }
}

在 profile 目录执行 pnpm install 后重启 DSH Desktop;当前窗口不会热加载新的 Host bundle。插件在 package.json 的 dsh.client 中声明为 Web 客户端且 immediately: true,启用后侧边栏会出现「插件市场雷达」入口。

典型用法

  1. 打开 DSH Desktop,进入 插件市场雷达 面板。
  2. 在「来源与口径」或设置中确认要启用的内建源(可选 dshmarketplace 等),必要时添加自定义 standard manifest URL;未注册的内建源也可按 README 说明添加到官方 Community Market(与雷达自有源分开管理)。
  3. 等待 Host 合并目录后,在表格中用多列筛选(来源、分类、适配 DSH、安全/验证、操作状态等)缩小范围;需要时用「仅看本次变化」或安全优先视图。
  4. 比较「市场风评」等列后,直接点行末「装」或详情中的安装/更新;若失败,切到「运行日志」查看 install.* 链路记录,或根据回执复制 pnpm 错误重试。
  5. 在「已安装」页点击「检查更新」,对可更新条目点「更新」;本地 / link: 包会标明无 registry 版本,不提供必然失败的升级按钮。
  6. 需要自定义排序口径时,打开「评分规则」:下载模版、修改 JSON 后上传进规则库,或在下拉框切换内置预设;规则说明页可查看 12 个 metric 与 10 个 norm 的对照表。
  7. 定时刷新、列布局与来源配置可按需导出 JSON 备份;表格数据可导出 CSV 做离线分析(README 将内置市场类比为商店、本插件类比为比价表 + 直达安装)。

适用场景与注意

适合谁:经常在多个 DSH 插件目录之间比版本、热度、安全证据和 DSH 兼容性的开发者;需要盯着「这次同步新上了什么」、或装前想在一屏里组合筛选的人。

权限与安全:插件以当前 DSH 进程权限运行;行内安装会调用官方插件管理器修改 profile。安装任意插件前仍应自行查看源码与许可证。README 明确:Host 仅允许 loopback POST;自定义源需 HTTPS、用户显式添加;安全优先视图是证据口径,隐藏无证据条目不等于认定有问题。

口径限制:用户数等字段仅部分来源提供(如 1024Store 的 installerCount 只统计通过 dsh1024 CLI 安装的下限样本);合并后缺失即「无数据」。用户数、评分、Stars 等参与风评的权重可通过规则库调整,但无法改变各源原始字段有无。

生态说明:DSH 社区目录(含 SkillHub、各独立市场站点)与 DeepSeek / 幻方无官方从属关系,本文介绍的是社区维护的客户端插件,不是官方应用商店替代方案。

结尾

market-lens 把分散的 DSH 插件市场收成一张可筛选、可持久化、可定时刷新的雷达表,并在合并口径之上提供安装、升级、差异追踪与可配置的评分规则库。若要查看简介与安装指引,可打开 SkillHub 目录页;源码、版本说明与字段对照见 GitHub:wodaimnd/market-lens。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye