dshmarket 1.7.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -22
- package/README.zh.md +9 -19
- package/client/client.js +894 -466
- package/client/client.js.map +1 -1
- package/data/registry-snapshot.json +9180 -3442
- package/lib/install.js +8 -0
- package/lib/pnpm-compat.js +22 -0
- package/lib/restart.js +31 -0
- package/lib/routes.js +11 -4
- package/lib/types/pnpm-compat.d.ts +8 -1
- package/lib/types/restart.d.ts +10 -0
- package/package.json +3 -2
- package/src/client/InstallToast.tsx +2 -2
- package/src/client/Market.module.css +24 -52
- package/src/client/MarketSection.tsx +499 -225
- package/src/client/index.ts +23 -0
- package/src/client/locales.ts +8 -0
- package/src/client/market-data.ts +113 -6
- package/src/client/primitives.d.ts +77 -4
- package/src/install.ts +10 -1
- package/src/pnpm-compat.ts +24 -1
- package/src/restart.ts +27 -0
- package/src/routes.ts +11 -4
package/README.md
CHANGED
|
@@ -25,28 +25,13 @@ dsh plugin --profile web add dshmarket
|
|
|
25
25
|
|
|
26
26
|
Restart `dsh web`, then open **Settings → Plugin Market**.
|
|
27
27
|
|
|
28
|
-
### DSH Desktop
|
|
29
|
-
|
|
30
|
-
On DSH Desktop builds that expose the public `desktopProfiles` and
|
|
31
|
-
`desktopPnpm` services, install from **Open DSH Terminal** with:
|
|
32
|
-
|
|
33
|
-
```sh
|
|
34
|
-
dsh plugin add dshmarket
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
The market automatically targets the immutable active Desktop profile and
|
|
38
|
-
uses Desktop's packaged pnpm operation service. It does not probe or install a
|
|
39
|
-
system pnpm, and Desktop keeps ownership of application restart. Ordinary DSH
|
|
40
|
-
continues to use the existing profile/argv/CLI path when those services are
|
|
41
|
-
absent. The detection order follows Desktop's supported
|
|
42
|
-
[cross-environment plugin contract](https://github.com/anywhere-labs/deepseek-harness-desktop/blob/4f68147091e585aaa1d815f99d30a657b3842d7c/dsh-plugin-desktop/docs/plugin-services.md#cross-environment-plugin-optional-desktop-adapter-and-ordinary-dsh-fallback).
|
|
43
|
-
This compatibility does not mean the market is bundled with Desktop.
|
|
44
|
-
|
|
45
28
|
## What you get
|
|
46
29
|
|
|
47
|
-
- **Browse & search** the full community catalog (
|
|
30
|
+
- **Browse & search** the full community catalog (800+ plugins, growing daily) — category filters, star counts, top/new sorting, bilingual descriptions that follow your UI language
|
|
31
|
+
- **Screenshots** — AppStore-style screenshots in the install dialog: author-curated via the registry, with automatic README extraction as fallback; images load from GitHub hosting only, and only after you open the dialog
|
|
48
32
|
- **Themes** — a dedicated tab for community themes and skins: install → active immediately, switch with one click (themes are mutually exclusive, your choice survives restarts), uninstall to revert
|
|
49
33
|
- **One-click install** — confirm the source, watch live progress; most plugins go live after a page refresh, no restart
|
|
34
|
+
- **Backup & restore** — export your profile's plugin list and configuration as readable JSON, import it on another machine, or store it on WebDAV with daily auto-backup; restores validate before writing and roll back on failure
|
|
50
35
|
- **Updates** — per-plugin update checks (npm version or pinned commit vs HEAD), one-click update, or update everything at once; the market updates itself the same way
|
|
51
36
|
- **Uninstall** — two-step confirm; plugins installed this session are removed live
|
|
52
37
|
- **Restart when needed** — changes that cannot hot-load show a one-click restart beside the pending-change banner; the action is restricted to same-origin loopback requests
|
|
@@ -63,6 +48,7 @@ Installs prefer npm tarballs over full-repo GitHub downloads whenever a plugin p
|
|
|
63
48
|
- Build scripts stay blocked by default (pnpm ≥10); allowing one is your explicit per-package choice
|
|
64
49
|
- Terminal/CLI-surface plugins are flagged before you install them into the web profile
|
|
65
50
|
- The install endpoint accepts same-origin POST only; the market never phones home
|
|
51
|
+
- Backups can contain credentials from your profile config — the UI warns before export and upload; WebDAV sync is https-only, refuses private-network targets, and never stores your password in the browser
|
|
66
52
|
- The restart endpoint additionally requires a direct loopback client (forwarded requests are rejected) and relaunches the exact DSH entry, arguments, environment, and working directory
|
|
67
53
|
- One-click restart launches a detached replacement. If DSH is managed by systemd, launchd, pm2, or another supervisor, set the plugin option `allowRestart: false` and let the supervisor own restarts instead; the pending-change notice remains visible but the button is hidden
|
|
68
54
|
- For terminal-attached launches, the detached replacement keeps running after the original terminal closes
|
|
@@ -81,13 +67,15 @@ Installs prefer npm tarballs over full-repo GitHub downloads whenever a plugin p
|
|
|
81
67
|
|
|
82
68
|
Live from [awesome-dsh-plugin.com/plugins.json](https://awesome-dsh-plugin.com/plugins.json) — curated entries, npm mapping, and star counts refreshed daily by CI — with a bundled snapshot as offline fallback.
|
|
83
69
|
|
|
84
|
-
##
|
|
70
|
+
## Friends
|
|
85
71
|
|
|
86
|
-
###
|
|
72
|
+
### modlens
|
|
87
73
|
|
|
88
|
-
[
|
|
74
|
+
[modlens](https://github.com/liustack/modlens) — the first vision plugin for DeepSeek Harness: bolts visual understanding onto text-only models like DeepSeek and GLM. Paste an image, get structured JSON evidence back — OCR, layout, semantics. Available right in this market:
|
|
89
75
|
|
|
90
|
-
|
|
76
|
+
```sh
|
|
77
|
+
dsh plugin --profile web add @liustack/modlens
|
|
78
|
+
```
|
|
91
79
|
|
|
92
80
|
## License
|
|
93
81
|
|
package/README.zh.md
CHANGED
|
@@ -25,26 +25,13 @@ dsh plugin --profile web add dshmarket
|
|
|
25
25
|
|
|
26
26
|
重启 `dsh web`,打开 **设置 → 插件市场**。
|
|
27
27
|
|
|
28
|
-
### DSH Desktop
|
|
29
|
-
|
|
30
|
-
如果 DSH Desktop 版本提供公开的 `desktopProfiles` 与 `desktopPnpm`
|
|
31
|
-
服务,可从 **Open DSH Terminal** 安装:
|
|
32
|
-
|
|
33
|
-
```sh
|
|
34
|
-
dsh plugin add dshmarket
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
市场会自动使用该代 Desktop 已锁定的活动 profile,以及 Desktop 内置的
|
|
38
|
-
pnpm 操作服务;不会探测或安装系统 pnpm,应用重启仍由 Desktop 负责。
|
|
39
|
-
没有这些服务的普通 DSH 会继续使用现有 profile/argv/CLI 路径。检测顺序遵循
|
|
40
|
-
Desktop 支持的[跨环境插件 contract](https://github.com/anywhere-labs/deepseek-harness-desktop/blob/4f68147091e585aaa1d815f99d30a657b3842d7c/dsh-plugin-desktop/docs/plugin-services.zh.md#跨环境插件可选-desktop-adapter-与普通-dsh-fallback)。
|
|
41
|
-
兼容 Desktop 并不代表市场已预装或捆绑进 Desktop。
|
|
42
|
-
|
|
43
28
|
## 你会得到
|
|
44
29
|
|
|
45
|
-
- **逛与搜**——完整社区目录(
|
|
30
|
+
- **逛与搜**——完整社区目录(800+ 插件,每天在涨),分类筛选、star 数、最热/最新排序,中英描述跟随界面语言
|
|
31
|
+
- **截图展示**——安装弹窗内 App Store 式截图:作者可在 registry 里策展,没有则自动从 README 抽取;图片仅从 GitHub 图床加载,且只在你打开弹窗后才发请求
|
|
46
32
|
- **主题**——独立主题页:装完立即生效,点一下切换(主题互斥、选择跨重启保留),卸载即恢复
|
|
47
33
|
- **一键安装**——确认来源,实时进度;多数插件刷新页面即可用,无需重启
|
|
34
|
+
- **备份与恢复**——把 profile 的插件清单与配置导出为可读 JSON,换机导入,或存到 WebDAV 并每日自动备份;恢复前校验、失败自动回滚
|
|
48
35
|
- **更新**——逐插件检测(npm 版本或锁定 commit 对比 HEAD),一键更新或全部更新;市场自己也走同一通道升级
|
|
49
36
|
- **卸载**——两步确认防误触;本次会话装的插件即点即卸
|
|
50
37
|
- **按需重启**——无法热加载的变更会在待重启提示旁显示一键重启;操作仅接受本机同源请求
|
|
@@ -61,6 +48,7 @@ Desktop 支持的[跨环境插件 contract](https://github.com/anywhere-labs/dee
|
|
|
61
48
|
- 构建脚本默认禁止执行(pnpm ≥10),放行与否由你按包显式决定
|
|
62
49
|
- 终端/命令行类插件装进网页版前会被明确提醒
|
|
63
50
|
- 安装接口只接受同源 POST;市场不会向任何地方上报数据
|
|
51
|
+
- 备份可能包含 profile 配置里的密钥——导出与上传前 UI 会明确提醒;WebDAV 同步仅限 https、拒绝内网地址,且密码永不落盘浏览器
|
|
64
52
|
- 重启接口还要求客户端直接来自环回地址(拒绝代理转发请求),并使用原入口、参数、环境和工作目录重新启动 DSH
|
|
65
53
|
- 一键重启会启动脱离终端的替代进程。若 DSH 由 systemd、launchd、pm2 等进程管理器托管,请设置插件选项 `allowRestart: false`,交由管理器负责重启;待重启提示仍会显示,但按钮会隐藏
|
|
66
54
|
- 从终端启动时,替代进程脱离原终端,关闭原终端后仍会继续运行
|
|
@@ -81,11 +69,13 @@ Desktop 支持的[跨环境插件 contract](https://github.com/anywhere-labs/dee
|
|
|
81
69
|
|
|
82
70
|
## 友情链接
|
|
83
71
|
|
|
84
|
-
###
|
|
72
|
+
### modlens
|
|
85
73
|
|
|
86
|
-
[
|
|
74
|
+
[modlens](https://github.com/liustack/modlens)——全网第一个 DeepSeek Harness 视觉插件,为 DeepSeek、GLM 等纯文本模型外挂视觉能力,粘贴图片即得结构化 JSON 证据(OCR、版面、语义)。本市场内即可直接安装:
|
|
87
75
|
|
|
88
|
-
|
|
76
|
+
```sh
|
|
77
|
+
dsh plugin --profile web add @liustack/modlens
|
|
78
|
+
```
|
|
89
79
|
|
|
90
80
|
## 许可
|
|
91
81
|
|