dsh-about:为 DeepSeek Harness Web 设置面板添加“关于”页
dsh-about:为 DeepSeek Harness Web 设置面板添加“关于”页
技术背景
DeepSeek Harness(简称 DSH)是 DeepSeek 官方推出的 AI Agent 开发框架,配合 dsh web 提供了一套完整的 Web 控制台,用于管理模型、数据与任务。不过官方设置面板一直缺少一个”关于”页,用户想确认当前运行的 DSH 版本、查看插件信息时无从下手。
dsh-about 正是为解决这个问题而生:它为 DSH Web 设置面板添加一个 “关于”设置页,展示当前运行的 DSH 版本、插件自身版本、项目主页与版本来源,并内置更新日志,可直接在 DSH Web 控制台内查看 deepseek-harness 的最新 Releases。UI 完全复用设置面板的设计规范,深浅主题自动适配,安装后毫无违和感。
特性
- 设置弹窗左侧导航新增 “关于” 菜单项,固定在导航最后一项(
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 端点,不写任何配置、不改动持久化数据
实现步骤
前置要求
- 已启用 DSH Web profile(
dsh web/--profile web) - dsh ≥ 0.1.1-rc.x
1. 一条命令安装 + 挂载
包内声明了 dsh.bundle.patch,CLI 会把它自动追加进 profile 的 bundle 堆栈,一次命令即可完成安装与挂载,无需手工编辑任何 profile 文件:
1 | |
该命令等价于在 $DSH_HOME/profiles/web 目录执行 pnpm add,并同步 dsh.profile.bundles。
2. 重启并查看
重启 dsh web,打开设置弹窗 → 左侧导航末尾的 “关于”,即可看到版本信息与更新日志。
工作原理
1 | |
版本号直接读取运行中安装的 dsh 包,因此不需要硬编码路径,并与 dsh --version 的输出保持一致。
“更新日志”块由浏览器请求 Host 半区的 GET /dsh-about/releases(Host 侧代理 GitHub Releases API,带 5 分钟缓存),默认展示最近 5 条,内容随界面语言显示中文/英文段;GitHub 不可达时显示”无法获取更新日志”并附 Releases 外链兜底。
最佳实践
- 客户端代码是手写 bundle(纯 JS +
require("react"),无构建工具链):修改lib/client.js后刷新页面即生效 - Host 半区是标准 ESM 插件:修改
lib/index.js后重启dsh web生效 - 发布到 npm 前请同步
package.json与lib/index.js中的PLUGIN_VERSION,保证”关于”页展示的版本与包版本一致
常见问题
旧版本手动挂载过,需要处理吗?
旧方法(手动挂载)已不需要。使用 dsh plugin add 时请确认 $DSH_HOME/profiles/web/cordis.patch.yml 中没有遗留的 dsh-about 挂载行;如之前在 profile 自己的 cordis.patch.yml 里手动挂载过,卸载时一并删除旧行。
如何卸载?
1 | |
CLI 会同步从 dsh.profile.bundles 移除该包,重启后即完全卸载。
更新日志拉取失败怎么办?
GitHub 不可达时页面会显示”无法获取更新日志”,并附 https://github.com/deepseek-ai/deepseek-harness/releases 外链兜底,可直接在浏览器中查看。
项目地址
- 插件仓库:
https://github.com/1010n111/dsh-about - 上游框架:
https://github.com/deepseek-ai/deepseek-harness - 许可证:MIT