自定义你的DSH

自定义你的DSH
DSH 界面主题定制插件

给 DSH 换一套界面主题

把设计 Token 变成所见即所得的「DIY 主题」设置面板。配色、字体、背景、阴影、圆角,改完立即生效,不用写一行代码。

DSH 主界面

DeepSeek Harness(DSH)是 DeepSeek 推出的 AI 编程助手框架。通过 dsh web 启动浏览器界面,就能和 AI 对话、读写文件、执行命令、规划任务。功能强大,但外观一直比较朴素,默认只有浅色、深色、跟随系统三档。

我写了一个插件 dsh-ui-customizer,把界面定制做成了所见即所得的「主题设置面板」:进入 设置 → DIY 主题,改任何一项,界面立即生效,不需要改代码、不需要重启。

它是纯浏览器端插件:主题配置和我的方案保存在 localStorage,上传的图片放在 IndexedDB,不会上传到 DSH 服务器。安装也简单——只需要 Node.js,甚至不需要 git 和 pnpm。

效果演示

实时应用主题,改到哪亮到哪。点击下方视频封面可新标签页播放插件的实际运行效果。

动态主题演示▶ 演示

它能改什么

从「总开关」「换肤中心」到配色、字体、背景、组件与「我的方案」,覆盖日常外观定制的全部诉求。

01

总开关

一键开启 / 关闭 DIY 主题。关闭时会移除全部覆盖,界面恢复成 DSH 官方默认外观。

02

换肤中心

内置 8 套一键主题模板,点击即换。选完之后仍可继续手动微调,两不冲突。

03

配色

品牌、强调、成功、警告、错误 5 个基础色(取色器 + 十六进制),外加中性色倾向:蓝灰、冷灰、暖灰、石墨。

04

字体

界面字体与代码字体下拉选择(预设字体栈),另有整体缩放(80%–140%)和文字缩放(80%–130%)两个独立控制。

05

背景

支持图片 URL(http(s):data:,保存在浏览器内),配面板通透度与毛玻璃模糊强度。

06

组件风格

阴影层级与圆角滑杆,调节深度与圆润度,作用于按钮、输入框、下拉框、对话框等组件。

07

我的方案

把整套主题保存为完整方案并随时切换;给配置起个名字,下次一键召回。

可读性优先设计

环境表面(主背景、侧边栏)跟随通透度变透明,露出背景图;覆盖层(对话框、菜单、输入框、提示气泡)固定保持约 94% 的不透明度。无论背景调得多透明,弹窗里的文字始终清晰可读。

首次使用:面板怎么工作

安装并重启后,进入「设置 → DIY 主题」,一切修改都是实时试穿预览,点一下才算保存。

  1. 1
    启动并完成引导启动 DSH,走完内置的模型 / API Key 初始化引导
  2. 2
    打开面板右上角「设置」→「DIY 主题」
  3. 3
    实时试穿所有改动立即预览,所见即所得(Try on)
  4. 4
    保存或还原点「Apply」保存生效,「Revert」撤销未保存改动,「Reset to default」恢复出厂值

界面长什么样

装上之后,它和官方界面无缝融合。

DSH 工作区界面
创作模式下的 DSH 工作区
DIY 主题设置面板
设置中的 DIY 主题:总开关、换肤中心、配色、字体、背景、我的方案,全部实时预览

安装(网页端插件)

只需要 Node.js(带 npx)即可运行 DSH Web profile;最简单的路径不需要 git 或 pnpm。

方案 A:安装脚本(只需 Node.js)

  1. 1
    下载仓库 ZIP 并解压获取代码与 install-web.ps1 脚本
  2. 2
    运行安装脚本在 PowerShell 中 cd 到解压目录后执行,脚本会把插件复制进 web profile 并登记 loader,可重复运行
  3. 3
    启动 DSH Web
  4. 4
    在浏览器打开「设置」→「DIY 主题」
.\install-web.ps1 npx @deepseek-ai/dsh web

若 PowerShell 提示脚本未签名无法加载:Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass(仅对当前窗口生效,关闭后自动恢复),或使用 powershell -ExecutionPolicy Bypass -File .\install-web.ps1

方案 B:DSH 插件命令(需 git + pnpm)

  1. 1
    安装插件依赖dsh plugin add 只安装依赖;本插件是 classic bundle(无 dsh.bundle),不会自动激活
  2. 2
    手动登记 loader编辑 %USERPROFILE%\.dsh\profiles\web\cordis.patch.yml,否则面板不会出现
  3. 3
    完全重启 DSH Web 并刷新停掉后重新运行,再刷新浏览器
dsh plugin --profile web add "git+https://github.com/Final-LX/dsh-ui-customizer"

dsh 不在 PATH 中,用 npx @deepseek-ai/dsh plugin --profile web add "git+https://github.com/Final-LX/dsh-ui-customizer"。注册 loader 时确保 cordis.patch.yml 包含:

- insert: - id: ui-customizer name: dsh-ui-customizer

只运行 dsh plugin add 而没有 loader 行,面板不会显示。首次使用仍需按 DSH 的模型 / API Key 引导完成配置。

让 AI 帮你安装

想让 DeepSeek Harness、Claude、ChatGPT 等 AI 代理帮你装?把下面这段自包含的提示词复制给 AI 即可,它会按步骤完成安装与验证。

帮我把 dsh-ui-customizer 主题插件安装到 DeepSeek Harness(DSH)Web 里。 步骤: 1. 确认本机已装 Node.js(含 npx)。 2. 启动 DSH Web:npx @deepseek-ai/dsh web(首次运行会初始化 web profile)。 3. 从 git 安装插件:npx @deepseek-ai/dsh plugin --profile web add "git+https://github.com/Final-LX/dsh-ui-customizer" 4. 本插件是 classic bundle(没有 dsh.bundle),dsh plugin add 不会自动激活它。 打开 %USERPROFILE%\.dsh\profiles\web\cordis.patch.yml,确认包含: - insert: - id: ui-customizer name: dsh-ui-customizer 5. 完全重启 DSH Web(先停掉,再跑 npx @deepseek-ai/dsh web),然后刷新浏览器。 6. 打开「设置 -> DIY 主题」确认面板出现。 如果失败,把报错和 cordis.patch.yml 的内容给我看,并告诉我怎么修。

数据、安全与兼容性

01

数据只存本地

主题配置与我的方案保存在 localStorage,上传的媒体(如有)存放在 IndexedDB,不会上传到 DSH 服务器。

02

远程图片加载

远程图片 URL 能否加载取决于 scheme、浏览器安全策略,以及服务器的 CORS / Referrer 响应。

03

随 DSH 演进

DSH 迭代很快,官方 Token、Slot 与页面结构可能变化并影响兼容性。升级后若某个设置失效,可重跑测试并提交差异。

04

更换平台不同步

主题数据归属浏览器。不同浏览器 / profile 各自保留一份;DSH 服务器上的会话数据因为是服务端存储,才会跨端同步。

常见问题与排查

装好了却看不到效果?先看这里。

  • ?
    面板安装了却没出现多半是 DSH 没有完全重启,或 cordis.patch.yml 缺 loader 行。改完重启 dsh web 再刷新。
  • ?
    主题应用了但部分颜色不对官方 Token 在 DSH 版本间变了。运行 npm test(执行 tools/test-tokens.cjs)可定位差异,并把列出的 Token 提交为 Issue。
  • ?
    毛玻璃 / 大图感觉卡顿调低面板通透度 / 玻璃强度,或换一张更小的背景图。
  • ?
    背景 URL 不加载检查 URL 是否仅 http(s),以及远端服务器的 CORS / Referrer 策略。
  • ?
    改了却没反应改动要在点「Apply」后才会生效;若 Apply 也没效果,可能是 DSH 版本 Token 集已偏移,请更新插件或提交 Token 差异。

  • dsh-ui-customizer

    给 DSH 换一套皮肤。纯浏览器端、零代码、所见即所得。插件遵循 MIT 协议,欢迎 Star、Fork、提 Issue 与 PR。

    Read more

    Linux 运维文件写入操作

    Linux 运维文件写入操作

    面向 Linux 运维/SRE 的文件写入操作参考手册。既讲每条命令怎么用,也讲它背后的机制(为什么这么行为),配真实输出示例与边界情况,最后给出常见陷阱速查表与标准动作模板。 目录 1. 总览:运维"写文件"的全景 2. Shell 重定向:机制与基础符号 3. 重定向顺序的坑:为什么 2>&1 > f 不行 4. 文件描述符与 exec:持久打开、交换、关闭 5. 防止误覆盖:noclobber 与 >| 6. Here 文档与 Here 字符串 7. tee:

    By Admin
    Linux 定时任务(附学习指南)

    Linux 定时任务(附学习指南)

    Linux 系统的定时任务(Scheduled Tasks)是运维和开发中最常用的自动化手段之一。系统中最核心的两套定时任务工具是 cron(定时器) 和 at(一次性任务队列)。下面从原理到实战逐层展开。 一、cron:周期性定时任务 1. cron 是什么 cron 是一个守护进程(daemon),负责在约定的时间点自动执行用户定义的任务。它对应的服务名在大多数发行版中是 crond,相关的命令和文件包括: 命令/文件 作用 crond cron 守护进程 crontab 用户管理自己的定时任务 /etc/crontab 系统级定时任务(注意有用户字段,格式不同) /etc/cron.d/ 系统级定时任务的扩展目录(每个文件类似 /etc/crontab) /etc/cron.hourly/、daily/、weekly/

    By Admin
    狩夜人笔记app

    狩夜人笔记app

    本地优先 · 离线可用 · 桌面笔记工具 狩夜人笔记 轻量 · 专注 · 个人笔记管理工具 把零散的知识,整理成自己的体系。用「主板块 / 子板块 / 文档」三级结构组织笔记,支持富文本与代码混排、语法高亮、标签、全文搜索、知识图谱与版本快照。数据保存在本地,不依赖云端。 下载安装 查看源码 核心功能 01 三级知识组织 主板块 / 子板块 / 文档,支持置顶、星标、标签与拖拽排序。 02 富文本与代码混排 TipTap 富文本编辑器,原生支持 Markdown;代码块按语言高亮、可随时切换。 03 标签与全文搜索 标签自定义颜色、侧边栏筛选;标题与正文全文检索,标签命中加权。 04 知识图谱 可视化文档之间的关联关系,直观发现知识之间的连接。

    By Admin