dsh-about
Manifest validAdds an "About" settings page to the DeepSeek Harness web interface, showing the running DSH version and recent release notes.
dsh-about
为 DeepSeek Harness Web 界面添加一个 “关于” 设置页,展示当前运行的 DSH 版本、插件自身版本、项目主页与版本来源。UI 完全复用设置面板的设计规范(--dsw-alias-* 主题 token,深浅主题自适应)。
特性
- 设置弹窗左侧导航新增 “关于” 菜单项,固定在导航最后一项(
order: 9999,其他插件新增菜单也不会排在它后面) - 界面中英双语:跟随 DSH 设置面板语言(通用设置 → Language,切换即时生效),无需语言服务时按浏览器语言兜底
- “关于”页展示:
| 行 | 内容 |
|---|---|
| 版本 | 当前运行的 DSH 版本(与
dsh --version一致) | | 插件版本 |dsh-about · v0.0.4(与 package.json 同步) | | 插件仓库 |github.com/1010n111/dsh-about外链 | | 项目主页 | deepseek-harness 仓库外链 | | 版本来源 |@deepseek-ai/dsh| | 更新日志 | 拉取 deepseek-harness 的 GitHub Releases(默认显示最近 5 条),当前运行版本置顶高亮,单条可展开/收起;失败时给出外链兜底 | - 加载中显示
…,读取失败显示—并给出具体错误文本,便于诊断 - 纯前端 + 一个只读 HTTP 端点,不写任何配置、不改动持久化数据
工作原理
浏览器 "关于" 页
│ fetch GET /dsh-about/version
▼
Host 半区 (lib/index.js)
│ 1. clientModules.clientPath('<任意官方插件>') → bundle 绝对路径
│ 2. 遍历路径中每一层 node_modules,反推 dsh 安装根目录
│ 3. fs 读取 @deepseek-ai/dsh/package.json,校验 name 后取 version
▼
JSON { ok, version, product, homepage, plugin }
版本号直接读取运行中安装的 dsh 包,因此不需要硬编码路径,且与 dsh --version 的输出保持一致。
“更新日志”块由浏览器请求 Host 半区的 GET /dsh-about/releases(Host 侧代理 GitHub Releases API,带 5 分钟缓存),默认展示最近 5 条,内容随界面语言显示中文/英文段;GitHub 不可达时显示“无法获取更新日志”并附 Releases 外链兜底。
安装
前置:DSH Web profile(
dsh web/--profile web),dsh ≥ 0.1.1-rc.x
1. 一条命令安装 + 挂载
包内声明了 dsh.bundle.patch,CLI 会把它自动追加进 profile 的 bundle 堆栈,一次命令即可完成安装与挂载,无需手工编辑任何 profile 文件:
# 已发布到 npm 时:
dsh plugin --profile web add dsh-about
# 或直接从 GitHub 安装(未发布 npm 时):
dsh plugin --profile web add 'github:1010n111/dsh-about'
该命令等价于在 $DSH_HOME/profiles/web 目录执行 pnpm add,并同步
dsh.profile.bundles。
旧方法(手动挂载)不再需要:
dsh plugin add之后,请确认$DSH_HOME/profiles/web/cordis.patch.yml中没有遗留的 dsh-about 挂载行。
2. 重启并查看
重启 dsh web,打开设置弹窗 → 左侧导航末尾的 “关于”,即可看到版本信息。
卸载
dsh plugin --profile web remove dsh-about
CLI 会同步从 dsh.profile.bundles 移除该包;重启后即完全卸载。若之前在
profile 自己的 cordis.patch.yml 里手动挂载过,请一并删除旧行。
目录结构
dsh-about/
├── lib/
│ ├── index.js # Host 半区:标准 Cordis 插件(ESM),注册 GET /dsh-about/version
│ └── client.js # 浏览器半区 bundle:__ModuleLoader__.load 注册的工厂
├── package.json # dsh.client 声明 + exports(./client)
├── cordis.patch.yml # 组合 overlay(安装即用)
├── README.md
├── LICENSE # MIT
└── about-plugin.js # (本仓库维护用)会话内动态插件版源码存档
开发与本地修改
- 客户端代码是手写 bundle(纯 JS +
require("react"),无构建工具链):修改lib/client.js后刷新页面即生效(HMR 构建产物会直接覆盖该文件)。 - Host 半区是标准 ESM 插件:修改
lib/index.js后重启dsh web。 - 发布到 npm 前请同步
package.json与lib/index.js中的PLUGIN_VERSION(本插件在“关于”页展示自身版本)。
许可证
Similar plugins
by YannZhou
About section for the DeepSeek Harness settings: version info, npm latest/next update check with one-click install and auto-restart, and GitHub release history.
★ 5
MIT
JavaScript
Sep 8, 2026
dsh plugin --profile web add @yannzhou/dsh-aboutby SuCriss
Version update menu for the DeepSeek Harness Web GUI settings panel: check @deepseek-ai/dsh releases, install one with a click, then restart the host and reload the page automatically.
★ 3
↓ 871/wk
Apache-2.0
JavaScript
Sep 13, 2026
dsh plugin --profile web add dsh-version-updateby jijiz1
One-click version checker, updater, and restart UI for DeepSeek Harness (DSH).
★ 0
MIT
JavaScript
Aug 21, 2026
dsh plugin --profile web add dsh-self-updaterby kristol07
Show the running DeepSeek Harness version and every mounted plugin's package version inside the dsh web UI.
★ 0
MIT
TypeScript
Sep 6, 2026
dsh plugin --profile web add dsh-version-inventoryOne-click update for the local DeepSeek Harness checkout — compare versions, pull and rebuild, then restart, and roll back to any past release, all from a sidebar panel with live progress.
★ 0
dsh plugin --profile web add @zhucy123/dsh-updateby LX2000WASD
在 Web UI 中一键管理 DeepSeek Harness (DSH) 插件:查看、实时启停、安装/卸载、更新检测、健康检查(依赖/冲突/兼容性分析)、环境管理、插件市场。bundle 与非 bundle 插件全覆盖
★ 69
MIT
TypeScript
Sep 12, 2026
dsh plugin --profile web add dsh-web-plugin-manager