← 返回文章

dsh-market:DSH 内的可视化插件市场

更新于

DSH 内的可视化插件市场。

dsh-market 的官方界面或演示截图
封面:来源 · MIT

dsh-market 由 dsh-market 团队维护,npm 包名是 dshmarket。它把插件目录搬进 DeepSeek Harness:在插件页里浏览、搜索、安装,也可以切主题、给插件分组、备份整份配置。对刚装好 DSH、不知道下一步该装什么的人,它比翻 GitHub 话题页直接得多。

安装后从哪里进入

dsh plugin --profile web add dshmarket

重启 dsh web 后,在 dsh 0.2.1 及以上版本打开 Plugins 页,旁边会多出 Plugin Market 标签;0.2.0 及更早版本只能从 Settings → Plugin Market 进入,0.2.1 起设置对话框移到了账号菜单里。宿主要求 dsh web 0.1.0-rc.6 或更新,版本不够时市场会自行禁用并在浏览器控制台说明原因。桌面端 App 有自己的插件管理器,应改从 App 的设置里安装,App 运行时命令行的 --profile 不会改动它那套配置。

浏览之外的日常功能

目录从 awesome-dsh-plugin 的 registry 实时拉取,README 记录有 4,200 多个插件,支持分类、搜索、按热度或新旧排序,描述跟随界面语言。卡片会显示插件声明的 DSH 版本要求,可选的过滤器只隐藏“确认不兼容”的项,未声明版本或仅托管在 GitHub 的条目仍然保留。作者可以提供截图,多张时自动轮播;每个条目还带独立的讨论串,阅读内嵌在卡片里,发帖需要 GitHub 账号。

主题是独立标签页,安装后立即生效,切换不需要重启;收藏、分组和备注都存在 profile 的 state.json 里,分组自带总开关,可以把一组插件当作一个工作集启停。备份能把插件清单和配置导出成可读 JSON,支持导入、WebDAV 每日自动备份或私有 Gist 同步;恢复采用合并策略,不会删掉备份之后新装的插件。

更新检查按 npm 版本或固定 commit 与 HEAD 比较,可以逐个更新,也可以一次全更。热禁用则把 - id: … 和 disabled: true 写进 profile 的 cordis.patch.yml,由 DSH 的 HMR 重新组合,通常不用重启。诊断页把 bundle 栈、重复 loader、依赖版本冲突和残留目录摊在一页;载入顺序可以拖拽调整,应用前会先跑一次试组合。需要重启才生效的改动会显示按钮,但宿主由 systemd 托管时按钮自动隐藏,避免接管进程一起被杀掉,pm2 和 launchd 则要手动在 patch 里设置 allowRestart: false。

一次新机器恢复

换机器后先装 dsh-market,再从之前的 JSON 备份恢复:插件清单回来,分组和备注也一起回来。分组里最多只能放一个主题,避免两套皮肤同时生效。备份若包含 profile 配置,可能夹带凭据,界面在导出和上传前会提示;WebDAV 只允许 https,并拒绝私有网络地址。恢复前会先校验,写入失败则回滚。

和命令行安装的差别

dsh plugin add <package> 要求先知道包名,适合脚本和可复现的安装清单;dsh-market 解决发现、比较和更新。两者最终都落到同一套 profile 依赖上,市场并不绕过包管理器。另一个桌面壳 dsh-dock 也提供插件中心,但那是壳层的跨工作台管理,和装在 DSH 里的市场不是同一个入口。

安全边界

安装源被限制在 curated registry 内,其他来源会被拒绝;pnpm 10 及以上默认阻止构建脚本,放行某个包需要逐包确认;带终端或 CLI 权限的插件在装进 web profile 前会被标记。README 特意写了“Listing ≠ endorsement”:目录里有条目不代表经过安全审计,第三方代码仍需自己判断。目录没有本地快照兜底,网络不通时会直接报错并提供重试,而不是展示过期数据;国内网络可通过 DSHM_REGISTRY_URL 指向镜像。本文按官方 README 与仓库元数据整理,未在本机完整实测。

适合谁

适合刚接触 DSH、需要先看清有哪些插件的人,也适合把 DSH 当长期工作台、希望用一份备份复现环境的用户。已经用脚本管理插件版本、或所在团队要求每个包都走内部审计的,命令行清单更合适。

官方入口