dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
上传一张本地图片,按工作台宽高比裁切,把它设为 DeepSeek Harness Web 的桌面背景——全部在设置面板的专属一栏里完成。
$DSH_HOME/settings.yaml 的 wallpaper 段),支持手工编辑。设置页里的「背景」栏:
上传后的裁切对话框(比例锁定为工作台宽高比,八向手柄缩放):
应用壁纸后的工作台:
从 npm:
dsh plugin --profile web add dsh-plugin-wallpaper
从 GitHub(prepare 脚本会在安装时自动构建):
dsh plugin --profile web add github:JerryPhoenixCKY/dsh-plugin-wallpaper
本地开发:
dsh plugin --profile web add link:<本仓库绝对路径>
然后重启 dsh web(插件在启动时装载):
dsh web # 或 dsh --profile web
移除:dsh plugin --profile web remove dsh-plugin-wallpaper,然后重启。
注意:上传与修改需要在本机(localhost)打开页面。局域网内其他机器可以看到背景,但写入会被拒绝——写入通道只信任 loopback。
$DSH_HOME/storages/wallpaper/
wallpaper.webp — 最近一次上传的裁切结果。wallpaper.json — { revision, width, height, updatedAt };revision 由服务端权威、单调递增。$DSH_HOME/settings.yaml 的 wallpaper 段。一个双面包(host + browser):
src/index.ts → lib/index.js):
ctx.settings.register("wallpaper", schema) — 校验、默认值与持久化。(rc.6 的 settings 线上白名单不覆盖第三方命名空间,因此浏览器侧不走 settings API。)/wallpaper 通用 RPC 通道(仅 loopback):config/get、config/set、put、remove、info。GET /plugins/wallpaper/image?v=<revision> — 按 revision 提供图片(不可变缓存;陈旧 revision 一律 404)。src/client/** → lib/client.js):
settings.section 槽位注册「背景」页(上传 / 裁切 / 预览 / 参数)。ctx.get("connection") 取 wire 句柄(官方客户端插件模式),配置读写走 WallpaperStore —— RPC 通道上的合并写入器。attachBackground 把配置投影到文档:body 背景图、主题 token(--dsw-alias-bg-*)半透明化、变暗渐变,并随 theme/change 联动。pnpm install
pnpm typecheck # tsc --noEmit
pnpm build # esbuild → lib/index.js + lib/client.js
客户端产物遵循 Web 外壳的模块协议(window.__ModuleLoader__.load({ id, factory }));external 与 @deepseek-ai/dsh-client-web 的 PLATFORM_MODULES 种子表及 dsh.client.inject 声明的包保持一致。CSS Modules 由 scripts/build.mjs 内联编译,并按官方 <style data-plugin-css> 约定注入。
改动后执行 pnpm build,重启 dsh web 生效。