用 dsh-xiaoyao-skins 给 DeepSeek Harness 网页界面换上夕小瑶皮肤

前言

DeepSeek Harness(下文简称 DSH)把模型、工具、技能、会话、沙箱、存储、循环、调度和 UI 都做成可替换的插件。官方说法是「一切皆插件」:Cordis 内核只负责加载、卸载和依赖,具体能力由插件提供。网页界面因此也可以整层换掉,而不必去改 Harness 源码。

默认 Web GUI 能完成编码 Agent 的日常操作,界面却和官方预览页差不多。社区里陆续出现了主题类插件:有人做角色立绘,有人做桌宠,也有人把整套工作台配色换成自己的品牌色。dsh-xiaoyao-skins 属于这一类,但形态更完整——它不是单套皮肤,而是夕小瑶角色向的皮肤合集、一行换肤安装器,以及给社区作者用的脚手架和体检命令。

本文按社区插件目录页、GitHub 仓库 README、package.json / catalog/skins.json、皮肤规范 docs/SKIN_SPEC.md、架构说明 docs/ARCHITECTURE.md,以及在线皮肤展厅核对后整理:这个仓库是什么、目录页那条安装命令怎么用、日常换肤走哪条命令、许可证为什么不是「整个仓库统一 MIT」。社区插件目录(deepseek-harness-plugin.com)是独立站点,与 DeepSeek / 幻方没有官方从属关系,不要把它当成官方应用商店。仓库自己也声明:这是独立社区项目,与 DeepSeek 及 zhu1090093659/dsh-web-ui 原作者不存在隶属、赞助、认证或背书关系。

这是什么

dsh-xiaoyao-skins 是一套面向真实 DSH Web profile 的社区皮肤合集表现层插件,由 147228 维护,仓库地址是 147228/dsh-xiaoyao-skins。根目录 package.json 的包名为 @xiaoyao-ai/dsh-xiaoyao-skins,作者字段是 Xiaoyao AI / 夕小瑶科技说,当前合集版本是 0.1.3。目录页把它归在「主题与外观」,主要语言是 CSS。仓库创建于 2026 年 8 月 13 日,最近一次推送为 2026 年 8 月 14 日,社区目录收录日期为 2026 年 8 月 15 日。截至 2026 年 8 月 17 日,GitHub API 显示 24 星;目录页当时展示的是 20 星,以后者作收录快照即可,星标以仓库页面为准。

它解决的问题很具体:让 Web 界面在不改 Harness 源码、不清空 profile、不迁移会话数据的前提下,换成带夕小瑶角色和场景配色的外观。README 写明每套皮肤都是一个可安装、可卸载、可测试的 DSH 插件,不替换会话、模型、工具、沙箱或插件系统catalog/skins.json 声明兼容 DeepSeek Harness 0.1.0-rc.6、Node.js >=20

和只分发一套成品皮肤的仓库不同,这里同时提供三件事:

  1. packages/skins/* 里的六套独立皮肤 bundle
  2. xiaoyao-skin 安装器,内部调用官方 dsh plugin add / remove 做切换
  3. xiaoyao-skin create / doctor 这条社区创作工具链

根目录 package.json 没有 dsh.bundle 字段,真正带 DSH 接线的是各皮肤子包。例如黑鲸实验室的包名是 @xiaoyao-ai/dsh-client-ui-skin-black-whaledsh.client.platformweb,对 @deepseek-ai/cordis 的开发依赖是 ^4.0.1

核心功能

下面这些能力来自仓库 README、catalog/skins.json、皮肤规范和架构文档,不是演示稿里的想象功能。

六套接入真实 Web profile 的皮肤

README 强调预览图来自真实 DSH Web profile,不是静态概念图。catalog/skins.json 当前登记了六套:

皮肤 slug 包名 配色要点 作用域
夕小瑶 · 黑鲸实验室 black-whale @xiaoyao-ai/dsh-client-ui-skin-black-whale 官网黑鲸 × 石墨黑 × 小瑶粉 data-dsh-black-whale
夕小瑶 · 探索之境 ocean @xiaoyao-ai/dsh-client-ui-skin-xiaoyao 深海蓝 × 猫娘粉 × 鲸鱼光效 data-dsh-xiaoyao
蓝粉双子 · 晴空研究所 sky-lab @xiaoyao-ai/dsh-client-ui-skin-sky-lab 云端白昼 × 双主角协作 data-dsh-sky-lab
夕小瑶 · 烽火夜长城 great-wall-beacon @xiaoyao-ai/dsh-client-ui-skin-great-wall-beacon 炭黑长城 × 中国红 × 古金 data-dsh-great-wall-beacon
夕小瑶 · 山河朝霞 great-wall-sunrise @xiaoyao-ai/dsh-client-ui-skin-great-wall-sunrise 米白宣纸 × 朱红 × 朝霞金 data-dsh-great-wall-sunrise
夕小瑶 · 雪岭长城 great-wall-snow @xiaoyao-ai/dsh-client-ui-skin-great-wall-snow 雪白 × 墨灰 × 正红披风 data-dsh-great-wall-snow

完整安装命令也可以在 在线皮肤展厅 一键复制。展厅文案同样写明:只改变表现层,会话、模型、工具、沙箱、权限与项目数据仍由原生 Harness 提供。

一行换肤,切换时只动本仓库登记过的包

日常换肤不靠手改 cordis.patch.yml。安装器默认操作 web profile,流程在 docs/ARCHITECTURE.md 里写得很清楚:

  1. 先通过官方 dsh plugin add 安装目标皮肤的 Release tgz
  2. 再移除本仓库目录里登记过的其他皮肤包
  3. 不改 DSH 源码,不清空 profile,不读取或迁移会话数据

安装顺序是「先加目标、后移旧皮肤」。目标下载或安装失败时,当前皮肤仍在,不会把 profile 留在半配置状态。README 还提供 xiaoyao-skin use official 恢复官方界面。

只做表现层

架构文档把皮肤能做和不能做的事写死了。皮肤可以改色彩、排版、背景、边框与动效,可以使用仓库内有许可的图片和字体,也可以读取视口、系统配色和 prefers-reduced-motion。皮肤不可以:

  • 替换或代理会话、模型、工具、沙箱、存储、网络请求
  • 采集遥测、上传 profile 内容或注入外部脚本
  • 直接改写 DSH 安装目录、用户配置或其他插件
  • 用全局选择器污染未启用皮肤时的页面

docs/SKIN_SPEC.md 进一步要求:全部 CSS 必须以 body[你的-bodyAttr] 为作用域;图片必须可在离线环境工作,禁止运行时远程拉取;皮肤包不得包含网络请求、遥测、外部脚本、本机绝对路径、账号信息或未脱敏工作区截图。黑鲸实验室 README 也写了同一句话:不读取会话,不调用模型,不发起网络请求。素材在构建阶段内嵌进 client bundle。

Client 入口用 ctx.effect() 安装皮肤,并返回清理函数。卸载或热重载时必须移除 bodyAttr、事件监听与运行期 style 节点。仓库用测试真实执行 dispose(),避免换完皮肤回不去。

给创作者的脚手架和体检

合集不只给终端用户。xiaoyao-skin create 会生成一套带官方 DSH bundle 接线、Web client 入口、可逆卸载、CSS 隔离、测试和授权文件的模板。做好后可以用 xiaoyao-skin doctor 跑合集医生。皮肤提案走 GitHub Issue 模板 skin_proposal.ymlpnpm check 会校验目录元数据、官方 DSH 接线、表现层权限边界、生命周期清理、六套皮肤单测、安装器单测、构建结果与展厅;合并请求还会在 Linux、macOS、Windows 三套环境中重跑。

安装与启用

安装前请先有一份能跑起来的 DSH Web 界面,并已完成初始化。官方快速体验是:

npx @deepseek-ai/dsh web

源码安装则克隆 deepseek-ai/deepseek-harness。DSH 仍处于开发者预览,核心插件和 API 会继续变。仓库要求 Node.js 20+,推荐 24 LTS。不需要预先安装 pnpm:安装器会优先复用可用版本;没有时通过 Corepack 或 npx 为本次操作临时提供兼容版本,不修改全局 pnpm 配置。

目录页给出的命令

社区目录页的安装命令以页面原文为准,在 DeepSeek Harness 终端里运行:

dsh plugin add github:147228/dsh-xiaoyao-skins

如需可复现安装,目录页要求固定 commit 哈希:

dsh plugin add github:147228/dsh-xiaoyao-skins#<commit>

<commit> 换成仓库里实际的提交哈希,不要照抄占位符。

目录页同时提示:插件以当前 dsh 进程的权限运行,安装时可能执行代码。安装前应检查源代码仓库和许可证。

这条命令把整个 GitHub 仓库当作插件源。日常「换到某一套皮肤」时,仓库 README 走的是下一节的安装器:它按 catalog/skins.json 解析已登记包与 Release 资产,再对目标皮肤 tgz 调用 dsh plugin add

仓库 README 的一行换肤

需要 Node.js 20+,并已安装、初始化 DeepSeek Harness。命令默认操作 web profile。

换成黑鲸实验室:

npx --yes --package=https://github.com/147228/dsh-xiaoyao-skins/releases/latest/download/xiaoyao-skin-kit.tgz xiaoyao-skin use black-whale

换成探索之境:

npx --yes --package=https://github.com/147228/dsh-xiaoyao-skins/releases/latest/download/xiaoyao-skin-kit.tgz xiaoyao-skin use ocean

其余四套把最后的 slug 换成 sky-labgreat-wall-beacongreat-wall-sunrisegreat-wall-snow 即可,与 catalog/skins.json 里的 install 字段一致。

恢复官方界面:

npx --yes --package=https://github.com/147228/dsh-xiaoyao-skins/releases/latest/download/xiaoyao-skin-kit.tgz xiaoyao-skin use official

可用 --profile 指定其他 profile,用 --dry-run 只查看将执行的 DSH 命令,不检查、不下载、不写入 profile。

安装兼容性与排错

README 把安装器在不同 Node 版本上的行为写成了表:

环境 安装器行为
Node.js 24 / 22.13+ 复用可用 pnpm,或临时使用 pnpm 11.19
Node.js 20 / 22.0–22.12 复用可用 pnpm,或临时使用 pnpm 10.34,避开 pnpm 11 的 Node 版本限制
未安装全局 pnpm 自动走 Corepack;Corepack 也不可用时自动走随 Node 提供的 npx
--dry-run 只打印 DSH 命令,不检查、不下载、不写入 profile

如果看到 dsh: pnpm not found on PATH,README 的说明是:使用的是旧版工具包,重新执行上面同一条 releases/latest 命令即可获取修复版。若自动兜底因网络或代理失败,安装器会给出与当前 Node.js 匹配的手动 npm install -g pnpm@... 命令。安装目标失败时不会移除当前皮肤。

典型用法

看预览再决定

安装前可以先打开展厅 https://147228.github.io/dsh-xiaoyao-skins/ ,或直接看仓库里各皮肤目录的 preview/dark.jpg。六套画风跨度比较大:黑鲸偏专业研究台,探索之境和晴空研究所偏角色向,长城三套偏新中式场景。不喜欢某一套,换 slug 即可,不必先卸整个工具链。

指定 profile 或只预览命令

默认写 web profile。若你的 DSH 界面不在默认 profile 里,加上 --profile。只想确认安装器会调用哪些 dsh plugin 命令时,加 --dry-run。这两项都来自根目录 README,没有额外的配置文件要改。

做一套自己的皮肤

npx --yes --package=https://github.com/147228/dsh-xiaoyao-skins/releases/latest/download/xiaoyao-skin-kit.tgz xiaoyao-skin create moon-rabbit
cd dsh-skin-moon-rabbit
pnpm install
pnpm check

模板已经带好官方 DSH bundle 接线、Web client 入口、可逆卸载、CSS 隔离、测试和授权文件。docs/SKIN_SPEC.md 要求每个皮肤声明唯一的 id、包名、bodyAttr、接线 id,并且 wiring.bundleWired 必须为 true,代表能通过一条 DSH 插件命令自动接入 Web profile。package.json 必须同时公开 Host 和 Client 构建产物,cordis.patch.yml 的插件名必须等于包名。

做好后运行合集医生:

npx --yes --package=https://github.com/147228/dsh-xiaoyao-skins/releases/latest/download/xiaoyao-skin-kit.tgz xiaoyao-skin doctor ./dsh-skin-moon-rabbit

然后从 皮肤提案 Issue 模板 开始,或直接阅读仓库的 CONTRIBUTING.md。只想换外观、不打算投稿的话,不必走这条路径。

本地开发合集本身

完整开发、构建与发布使用 Node.js 24:

corepack enable
pnpm install --frozen-lockfile
pnpm check
pnpm pack:release

这是维护这个合集仓库时用的命令,终端用户换肤不需要跑。

适用场景与注意事项

适合这些情况:

  • 已经在用 DSH Web 界面,希望工作台有固定的夕小瑶 / 新中式辨识度
  • 只改外观,不希望皮肤插件插入服务、改模型请求或访问会话
  • 想在几套社区皮肤之间切换,并保留一键回到官方界面的路径
  • 打算按规范做一套自己的表现层皮肤,并提交到这个合集

不适合这些情况:

  • 只在终端 / TUI 里用 DSH,不用 Web GUI。各皮肤 package.json 把平台标成 web
  • 指望它增强 Agent 能力。它不提供工具、技能或模型适配
  • 要把小瑶角色或美术直接用于商业项目。美术是 CC BY-NC 4.0,付费分发、商品、广告植入及商业图像模型训练需另行取得书面授权

许可证必须按层来看。GitHub 和目录页把 SPDX 标成 NOASSERTION,是因为本仓库不是「所有内容统一 MIT」。README 的对照表是:

内容 适用许可 必须注意
本项目原创源代码 MIT,Copyright © 2026 Xiaoyao AI / 夕小瑶科技说及贡献者 副本或重要部分须保留 MIT 版权与许可声明
shared/tsdown.client.tsshared/web-platform.ts 等衍生构建支持 衍生自 zhu1090093659/dsh-web-ui,原作者代码为 BSD-3-Clause 源码和二进制分发均须保留原作者版权、许可条件和免责声明;不得暗示原作者背书
夕小瑶角色、美术、皮肤背景和预览图 CC BY-NC 4.0 署名后的个人使用、研究、展示和其他非商业使用可以;不得直接用于商业用途
DeepSeek Harness 代码与构建约定 deepseek-ai/deepseek-harness 的 MIT 许可使用 DeepSeek 名称、鲸鱼标识及其他商标权利不因本仓库而获得授权

转载截图、发布整合包或迁入代码时,不能只保留本仓库的 MIT 文件;还必须一并保留对应的素材许可与第三方声明。完整文本见 LICENSEASSET_LICENSE.mdTHIRD_PARTY_NOTICES.md

另外几条实践上的限制:

  • 插件以当前 dsh 进程权限运行。即使这是展示层皮肤,安装前仍应浏览仓库源码和许可证
  • 皮肤规范禁止运行时网络请求和遥测,但自动校验只能兜底,贡献者仍需对素材和代码负责
  • 兼容性声明针对 DSH 0.1.0-rc.6。DSH 仍在开发者预览,界面 DOM 结构一变,皮肤选择器可能对不齐
  • 安装器通过 GitHub Releases 拉取 xiaoyao-skin-kit.tgz 和各皮肤 tgz,网络或代理失败时要按安装器给出的提示处理,不要手工改 DSH 源码来「补装」

小结

dsh-xiaoyao-skins 把 DSH「UI 也是插件」这件事做成一套可切换的社区皮肤工坊:六套皮肤各自是独立的 Web 表现层 bundle,安装器负责调用官方 dsh plugin add 做可逆切换,脚手架则把 CSS 隔离、卸载清理和许可文件提前写进模板。它不介入会话、模型、工具和沙箱。目录页的安装命令是:

dsh plugin add github:147228/dsh-xiaoyao-skins

日常换到某一套皮肤,按 README 使用 xiaoyao-skin use <slug>。使用前看清分层许可:代码走 MIT,衍生构建支持走 BSD-3-Clause,小瑶美术走 CC BY-NC 4.0,非商业场景再分发截图或整合包。

目录页:https://deepseek-harness-plugin.com/zh-CN/plugins/dsh-xiaoyao-skins/

GitHub:https://github.com/147228/dsh-xiaoyao-skins

在线展厅:https://147228.github.io/dsh-xiaoyao-skins/

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜