DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

wenhaolin-svg /

wenhaolin-svg/dsh-background

Verified

changing your background in dsh to your favourite picture~

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@2d4221ac

dsh-background-studio icon

dsh-background-studio

用你自己的图片,替换 DeepSeek Harness 的纯色背景。

这是一个 DeepSeek Harness(DSH)插件。它会在界面右侧边缘中间放一个低调的圆形按钮,点开即可从电脑的任意文件夹导入一张图片,并在不离开当前页面的情况下调整铺满方式、模糊、遮罩和界面不透明度。设置会自动保存,重启 DSH 后仍然有效。

当前版本:1.1.1 · 面向 DSH 0.2.1-rc.2 的 Web GUI · 无构建步骤、无第三方运行时依赖。


功能

  • 本地图片替换纯色背景:JPG、PNG、WebP、GIF、AVIF,最大 25 MB。
  • 从任意文件夹导入:点击按钮打开系统文件选择器,或直接把图片拖进预览框。
  • 可拖动的小面板与按钮:按住标题栏移动面板,双击标题栏回到中间;右侧圆形按钮也能直接拖动。两者都被限制在窗口内,不会拖出屏幕。
  • 实时编辑:
    • 铺满 / 完整 / 拉伸 / 平铺
    • 图片可见度
    • 背景模糊
    • 背景遮罩(亮色主题压白、暗色主题压暗)
    • 界面不透明度(让文字更清晰,或让图片更明显)
  • 自动保存:修改后约 0.45 秒写入磁盘;关闭面板或重启 DSH 都不会丢。
  • 跟随主题:亮色 / 暗色主题分别使用不同的表面透明度和遮罩颜色。
  • 随时暂停:关闭“启用背景”立即恢复原生纯色界面,图片仍保留,随时可再打开。
  • 一键移除:删除图片并把界面恢复到原生状态。
  • 中英双语界面:跟随 DSH 的界面语言。

安装

方式一:从 GitHub 安装(发布之后)

  1. 打开 DSH 左侧栏的 插件 / Plugins。

  2. 点击 添加插件 或右上角的 +。

  3. 选择 安装第三方插件。

  4. 在包名输入框中粘贴你的仓库地址,例如:

    https://github.com/你的GitHub用户名/dsh-background-studio
    
  5. 点击 安装,等待完成。

  6. 安装完成后如果组合包没有自动启用,在插件列表里找到 dsh-background-studio 并打开开关。

  7. 刷新 DSH 页面(或重启 DSH)。界面右侧中部出现圆形图片按钮即安装成功。

包名现在是 dsh-background-studio。GitHub 仓库建议同名;如果你保留旧仓库名 dsh-background,安装 URL 用旧地址也可以,DSH 会以仓库里的 package.json 为准。仓库根目录必须直接包含 package.json,不要放进 packages/dsh-background-studio/ 之类的子目录。

从 1.0.x 升级:先在插件页卸载旧的 dsh-background,再安装新的 dsh-background-studio。图片和设置仍在 %USERPROFILE%\.dsh\dsh-background\,不会被删除。

方式二:从本地文件夹安装(开发 / 试用)

在 DSH 插件页选择 安装第三方插件,粘贴本文件夹的绝对路径:

D:\dsh\插件

安装并启用后刷新页面。

本地目录安装通常以链接方式接入。之后修改 client.js 或 index.js,在插件页关闭再打开该插件、或重启 DSH,即可加载新代码。正式发布前建议再从 GitHub 安装一次,确认打包后的文件完整。

方式三:命令行(可选)

如果你已经把 dsh 命令加入 PATH:

dsh plugin --profile desktop add "D:\dsh\插件"

这条命令只负责把包加入 profile;启用组合包仍建议在 DSH 的插件页操作。


使用

  1. 点击界面右侧边缘中部的圆形图片按钮(鼠标移上去会变清晰)。这个按钮本身也可以按住拖动;不移动直接松开就是打开面板。
  2. 如果面板挡住对话栏,按住面板顶部的标题栏拖动;双击标题栏可以回到屏幕中间。面板外的区域仍然可以正常点击。面板和按钮都只能在窗口内移动,四周会留出边距。
  3. 点击 选择图片,在系统文件选择器中进入任意文件夹,选中一张图片。
    • 也可以直接把图片拖到预览区域。
  4. 用下面的控件调整效果,背景会立即变化:
    • 铺满方式:铺满 会裁切图片填满窗口;完整 会保留整张图并留边;拉伸 会把图片拉到窗口比例;平铺 会重复图片。
    • 图片可见度:10% 接近隐藏,100% 完全显示。
    • 背景模糊:0–24px。
    • 背景遮罩:在图片上叠加一层与主题匹配的纯色,提升文字对比度。
    • 界面不透明度:控制聊天区、侧栏等界面表面的透明度。调高更容易读字,调低更容易看清图片。
  5. 点击 完成。所有修改已经自动保存。

关闭、恢复与移除

  • 关闭面板:点右上角 ×、按 Esc,或点 完成。面板外的区域可以直接操作,所以点击外面不会自动关闭。
  • 启用背景 开关:暂时关闭背景,图片和设置都保留。
  • 恢复默认:把铺满方式、可见度、模糊、遮罩、界面不透明度恢复为默认值,但保留图片。
  • 移除图片:第一次点击会变成“再次点击确认”,再点一次才真正删除图片并恢复原生界面。

图片与隐私

  • 图片只保存在这台电脑上,不会上传到任何服务器,也不会写进对话记录。

  • 数据目录:

    %USERPROFILE%\.dsh\dsh-background\
    

    数据目录沿用旧名 dsh-background,所以从 1.0.x 升级到 1.1.x 时,之前导入的图片和设置不会丢。

    其中:

    • settings.json:显示设置和图片元信息;
    • background-*.jpg|png|webp|gif|avif:当前图片。
  • 卸载插件不会自动删除这个目录;如果确认不再使用,可以手动删除 %USERPROFILE%\.dsh\dsh-background。

  • 大于 8 MB 或最长边超过 4096px 的静态图片会在浏览器里缩放、转成 WebP 再上传,以减少磁盘和内存占用。GIF / AVIF 不转码,以保留动画。

  • 不支持 SVG(避免外部资源与脚本风险)。


工作原理

插件由两个半边组成:

  • Host 半边(index.js):注册 4 个本地 HTTP 路由,读写 $DSH_HOME/dsh-background/,并把图片以正确的 Content-Type 返回给页面。
  • Client 半边(client.js):通过 DSH Client 模块加载器注册到 shell.overlay 槽位,渲染右侧边缘按钮和设置对话框;用主题 token 把界面表面变成半透明,并用 body::before 绘制背景图片。

没有构建步骤:client.js 是加载器直接执行的普通脚本,React 从 DSH 的浏览器模块表取得。没有 node_modules、没有安装脚本、没有原生依赖,因此从 GitHub 安装时不需要批准构建脚本。


常见问题

界面右侧没有按钮

  • 确认插件已安装并在插件页处于启用状态。
  • 刷新页面或完全退出后重新打开 DSH。
  • 打开 DSH 的日志,搜索 dsh-background-studio,看是否有激活失败信息。
  • 如果刚修改过代码,先关闭再启用插件,让 Client 模块重新加载。

图片导入了,但背景没变化

  • 检查 启用背景 是否打开。
  • 把 界面不透明度 调低一些;如果它接近 100%,界面会几乎完全盖住图片。
  • 检查图片是否真的在磁盘上(用“移除图片”再重新导入一次)。
  • 亮色主题下,背景遮罩 太高会让图片发白;暗色主题下则会发黑。

提示“图片太大”

单张图片上限为 25 MB。请先压缩,或换一张更小的图片。大于 8 MB 的静态图片通常会被自动压缩,但极端尺寸(例如超长全景图)仍可能超过上限。

升级 DSH 后失效

DSH 的内部主题 token 或槽位可能随版本变化。先确认插件仍处于启用状态;如果按钮消失,查看 DSH 日志中的 Client 模块错误。项目会尽量跟随当前稳定版接口。


兼容性

  • DSH Web GUI(桌面版的 Web 界面)。
  • 插件数据是全局的:同一台电脑、同一个 DSH profile 下的所有会话共享同一张背景。
  • 插件运行时不修改 DSH 安装目录,也不改写 profile 的 package.json;所有用户数据都在 $DSH_HOME 下。

开发

# 只检查语法
node --check index.js
node --check client.js

# Host 路由、设置归一化、Client 渲染冒烟测试
node test/host.test.mjs
node test/client.test.mjs

目录结构:

dsh-background-studio/
├─ index.js             Host:图片/设置存储与 HTTP 路由
├─ client.js            Client:右侧边缘按钮、编辑面板、背景 CSS
├─ cordis.patch.yml     Bundle 行
├─ package.json         DSH 清单(dsh.bundle / dsh.client)
├─ locale/{en,zh}.json  插件页显示名称与描述
├─ icon.svg             插件图标
├─ test/                 Host 测试与 Client 渲染冒烟测试
├─ README.md
└─ PUBLISHING.zh.md     发布到 GitHub 的详细步骤

发布到 GitHub

第一次发布 GitHub 仓库的逐步说明(含网页上传、GitHub Desktop 和 Git 命令三种方式)见 PUBLISHING.zh.md。


许可证

MIT

—/ 5

No ratings yet

Verified DSH bundle

Commit 2d4221acc4fd

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout