dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
DeepSeek Harness Web UI background customization plugin
DeepSeek Harness Web UI 背景自定义插件。安装后,设置面板(左下角齿轮)中会出现「背景 / Background」页面,可自定义 Web 界面背景并持久化到 $DSH_HOME/settings.yaml。
settings.yaml,刷新 / 重启后自动恢复,「恢复默认」一键清除。当前版本针对 DeepSeek Harness 0.1.0-rc.6 验证。Harness 仍处于开发者预览阶段,内部设置白名单或主题 token 变更后可能需要同步适配(见下文「dsh 升级后」)。
dsh web 或 npx @deepseek-ai/dsh web(首次运行会创建 $DSH_HOME/profiles 及模块回退链接,安装脚本依赖它们定位 DSH 安装目录)| 系统 | 默认 $DSH_HOME | 用来安装的终端 |
|---|---|---|
| Linux | ~/.dsh | bash / zsh |
| macOS | ~/.dsh | zsh / bash |
| Windows | %USERPROFILE%\.dsh | PowerShell |
切换操作系统不会带走 Harness 数据:Linux 的 ~/.dsh 和 Windows 的 %USERPROFILE%\.dsh 互不相通。在另一边开机后,先再跑一次 npx @deepseek-ai/dsh web,再执行 node install.mjs。背景设置写在该系统的 $DSH_HOME/settings.yaml,不会自动同步。
Linux / macOS:
# 1. 若尚未运行过 Harness,先创建 ~/.dsh/profiles(浏览器打开后即可 Ctrl+C 停掉)
npx @deepseek-ai/dsh web
# 2. 安装本插件
git clone https://github.com/BruceWu1126/dsh-web-background.git
cd dsh-web-background
node install.mjs
Windows(PowerShell)同样是 git clone 后 node install.mjs;数据目录默认是 %USERPROFILE%\.dsh。
然后重启 dsh web(终端 Ctrl+C 后重新运行),刷新页面,打开设置 →「背景」。
查看安装器参数:
node install.mjs --help
可用参数:
| 参数 | 作用 | 默认值 |
|---|---|---|
--dsh-home <path> | 指定 Harness 数据目录(~ 会展开为家目录) | $DSH_HOME,否则 Linux/macOS 为 ~/.dsh、Windows 为 %USERPROFILE%\.dsh |
--profile <name> | 要打补丁的 profile | web |
--uninstall | 完整卸载并还原备份 | — |
--help | 打印各系统用法 | — |
install.mjs 共四步(每步都幂等,可重复运行):
$DSH_HOME/profiles/node_modules/dsh-web-background(profile 共享模块目录)。$DSH_HOME/profiles/<profile>/cordis.patch.yml 中追加 Loader 的 insert 条目。0.1.0-rc.6 的 Web 设置通道只服务 dsh-host-apiproxy 里一份硬编码白名单(WEB_SETTINGS_NAMESPACES),产品尚未提供第三方插件自声明暴露设置的机制(源码注释标注为 deferred work)。脚本把 "web-background" 加入该白名单——不做这步,设置页会一直显示「设置暂不可用」。dsh-client-ui-settings-general 硬编码,未知 id 一律回退成齿轮图标。脚本给 background 补一个图片图标分支。第 3、4 步会修改 DSH 安装目录里的文件(通过 $DSH_HOME/profiles/node_modules 的引导回退链接定位真实位置)。每次修改前都会把原文件备份为 <file>.dsh-wb-backup,--uninstall 会原样还原。这两处补丁是当前产品版本的权宜之计,待 Harness 提供正式扩展点后即可移除。
用 npm 安装插件本体(或直接手动复制本仓库到 $DSH_HOME/profiles/node_modules/dsh-web-background)。
Linux / macOS:
dshHome="${DSH_HOME:-$HOME/.dsh}"
npm install --prefix "$dshHome/profiles" 'https://github.com/BruceWu1126/dsh-web-background.git'
Windows(PowerShell):
$dshHome = if ($env:DSH_HOME) { $env:DSH_HOME } else { Join-Path $env:USERPROFILE '.dsh' }
npm.cmd install --prefix (Join-Path $dshHome 'profiles') 'https://github.com/BruceWu1126/dsh-web-background.git'
在 $dshHome/profiles/web/cordis.patch.yml(Windows 为 $dshHome\profiles\web\cordis.patch.yml)中加入:
- insert:
- id: web-background
name: dsh-web-background
在 DSH 安装目录的 node_modules/@deepseek-ai/dsh-host-apiproxy/lib/index.js 中,把 "web-background" 加入 WEB_SETTINGS_NAMESPACES 数组(必做,改前备份文件)。
(可选)在 node_modules/@deepseek-ai/dsh-client-ui-settings-general/lib/client.js 的 navIcon(id) 中给 id === "background" 加一个图标分支,否则显示齿轮图标。
重启 dsh web,打开设置 →「背景」。
profile directory not found:还没有跑过 Harness。先执行 npx @deepseek-ai/dsh web,确认 ~/.dsh/profiles/web 存在后再安装。dsh: command not found:没有全局安装 CLI。用 npx @deepseek-ai/dsh web,或 npm install -g @deepseek-ai/dsh。/root/.dsh:不要用 sudo node install.mjs。插件必须装进你登录用户的 ~/.dsh。node install.mjs --dsh-home ~/.dsh(脚本会展开 ~)。%USERPROFILE%\.dsh 直接拷过来当 Linux 家目录。node install.mjs --uninstall
还原两个产品文件与 profile 补丁文件、删除插件目录(settings.yaml 里的 web-background: 段可保留,无副作用)。手工安装的按上述步骤逆向删除即可。
Harness 升级(npx 缓存重建 / 重新安装)会覆盖两个产品补丁。重新运行一次 node install.mjs 即可:脚本会检测到补丁缺失并重新应用(备份不会重复覆盖原始文件)。插件本体在 $DSH_HOME 下不受影响。
npm ci
npm run check
测试覆盖客户端主题覆盖层与本地编辑合并、Host schema 默认值与边界、Host → 浏览器 schema 序列化、React 设置页渲染,以及安装器的安装、重复运行、卸载、已有白名单兼容和 profile 路径约束。
--dsw-alias-bg-base 不再是一个纯色,少量用 color-mix(...) 引用该 token 的加载扫光动画(消息行 shimmer)会停止绘制,不影响功能。settings.yaml。dsh web(无 HMR watcher 时);新插件集合本身也只在重启时扫描。