🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

暖墨皮肤 yykyyk1/dsh-plugin-vellum

DeepSeek Harness
yykyyk16 天前有提交已提供中文文档扫描:未发现敏感能力

为桌面端换上暖墨暖纸双主题,附桌宠与音效

29.5/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/11/2 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add yykyyk1/dsh-plugin-vellum
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么[目录]—
dsh 原生插件 · ui
暂无时间戳·判据 →
装得上吗[实装验证]—
本站尚未做安装检查
暂无时间戳·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/04·判据 →
还在维护吗[仓库]✓
活跃:最近一次提交在 6 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

发起外部网络请求
查看扫描证据(共 2 处,展示前 2 条)
  • 发起网络请求
    plugin/client.js:2376
    fetch("http://127.0.0.1:" + port + "/" + path + "?t=" + Date.now() + (extra || ""), { mode: "no-cors" });
  • 发起网络请求
    plugin/client.js:2465
    fetch("http://127.0.0.1:" + port + "/go", { mode: "no-cors" }).then(begin, begin);
扫描于 2026/11/4(0 天前) · 范围 全包扫描 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

README

由 DeepSeek 最新模型翻译生成
VELLUM · DeepSeek Harness 主题插件 给 DSH 桌面端换一套 暖墨 / 暖纸 双主题皮肤:环形粒子空态、鲸鱼片头、VS Code 风格音效,还有一只会在你思考时跳舞的 3D 桌宠。 一套插件,两层皮肤,两段片头,七个音效,一只桌宠。明暗一键切换,动画与音效全部对齐。 暗色空态 目录 - 这是什么 - 效果预览 - 功能特点 - 安装 - 使用 - 快捷键 - 项目结构 - 自定义 - 已知限制 - 素材与许可 这是什么 DSH 桌面端(DeepSeek Harness)的皮肤本质上是 cordis bundle 插件:一个 npm 包,通过 cordis.patch.yml 往应用里注入一行,再提供一个 client.js 在你的界面里注入 CSS + JS。
展开完整文档(README 剩余 1 节)
VELLUM · DeepSeek Harness 主题插件

给 DSH 桌面端换一套 暖墨 / 暖纸 双主题皮肤:环形粒子空态、鲸鱼片头、VS Code 风格音效,还有一只会在你思考时跳舞的 3D 桌宠。

一套插件,两层皮肤,两段片头,七个音效,一只桌宠。明暗一键切换,动画与音效全部对齐。

暗色空态

目录

- 这是什么
- 效果预览
- 功能特点
- 安装
- 使用
- 快捷键
- 项目结构
- 自定义
- 已知限制
- 素材与许可

这是什么

DSH 桌面端(DeepSeek Harness)的皮肤本质上是 cordis bundle 插件:一个 npm 包,通过 cordis.patch.yml 往应用里注入一行,再提供一个 client.js 在你的界面里注入 CSS + JS。

VELLUM 做的事:

| 层 | 内容 |
| 皮肤 | 暗色(暖墨)+ 亮色(暖纸),两套语义 token、圆角、阴影、滚动条、代码块、任务清单全部覆盖 |
| 空态舞台 | 环形粒子动画 + 鲸鱼线稿 + DEEPSEEK 字样,点一下淡出到输入框 |
| 片头动画 | 暗色沿用 deepseek-boot 的粒子版,亮色是线稿版,两者共用同一条 7.28s 时间轴 |
| 音效 | 七个 VS Code 同族提示音(发送 / 思考 / 回答 / 需要操作 / 完成) |
| 桌宠 | 从 GLB 离线渲染的透明视频,右下角待机,生成中自动循环跳舞 |
| 控制条 | 右下角 ☾ 暗 / ☀ 亮 与 ♪ 开 / 关,一键切换 |

效果预览

暗色空态

暗色空态

亮色空态

亮色空态

点击后进入输入框

输入框

片头动画(亮色 · 线稿版)

片头

桌宠

| 待机(循环) | 生成中(自动跳舞) |
| 待机 | 跳舞 |

功能特点

1. 双主题,同一套几何

亮色皮肤不是手写的,而是由 tools/make-light-skin.mjs 从暗色皮肤自动生成:选择器换成 html[data-dsh-theme="light"] body,颜色换成暖纸色板,圆角、间距、层级全部保持一致。

所以两套主题的对话框、气泡、消息卡、工作区边框几何完全一致,只有颜色不同。

2. 语义 token 全覆盖

DSH 的组件引用 --dsw-alias- 语义变量。皮肤把 107 个别名按主题重新指向:

--dsw-alias-bg-layer-2: #1a1008;
--dsw-alias-settings-card-fill: #160e07;
--dsw-alias-label-primary: #ffedd7;

再加上一层对比度兜底:tag.js 会扫描聊天区里「底色和当前主题明显打架」的块(暗色里的浅底、亮色里的深底),标上 data-dsh-fix,由 fix.css 拉回正确表面色。任务清单、设置卡、代码块都属于这一类。

3. 空态舞台

- 暗色:环形粒子 + 中心光晕 + 鲸鱼曲线
- 亮色:线稿圆环 + 柔和光晕 + 鲸鱼线稿
- 点一下 → 文字淡出、遮罩淡出、输入框浮现,首帧不闪白

4. 片头动画共用时间轴

| 时间 | 事件 |
| 0.74s | 墨点爆散 |
| 1.40–3.30s | 鲸鱼描线 |
| 3.02s | 收笔(暗色是填充,亮色是线稿提亮) |
| 3.96–4.86s | 琥珀光扫过 |
| 3.98s | DEEPSEEK 逐字浮现(58ms 间隔、模糊 5px→0) |
| 6.32s | 收拢 |
| 7.28s | 移除 |

一套音效同时服务两个主题——因为时间轴是同一条。

5. 音效

| 场景 | 触发 |
| send | 发送消息 |
| think | 生成中(1.6s 循环) |
| response | 回答到达 |
| ask | 弹出需要你操作的对话框 |
| done | 任务完成 |
| open | 点击空态舞台 |
| click | 输入框按钮 |

6. 桌宠

- 素材:lowpoly_trump_dance.glb 里的 IDLE(6.71s) 与 DANCE(3.38s),用 Blender EEVEE + film_transparent 离线渲染成 VP9 + alpha 的 WebM
- 播放: 循环,CPU 解码,不占用 WebGL / GPU 3D
- 逻辑:平时 idle;检测到生成中的标记(runningText / runningDivider / runningWhale)→ 切 dance 循环;生成结束回 idle
- 体积:两段视频约 310 KB,base64 内联进 client.js

7. 控制条

右下角一个胶囊:☾ 暗 ♪ 开,点主题循环切换,点音效开关。

安装

前提

- DSH 桌面端(DeepSeek Harness)
- 能访问插件的 profile 目录:%USERPROFILE%\.dsh\profiles\desktop\

方式 A:从源码安装(推荐,可自己改)

git clone https://github.com/yykyyk1/dsh-plugin-vellum.git
cd dsh-plugin-vellum

然后编辑 %USERPROFILE%\.dsh\profiles\desktop\package.json:

{
"dependencies": {
"dsh-plugin-vellum": "link:C:/path/to/dsh-plugin-vellum/plugin"
},
"dsh": {
"profile": {
"bundles": [
"@deepseek-ai/dsh-base",
"@deepseek-ai/dsh-web-app",
"dsh-plugin-vellum"
]
}
}
}

- bundles 里保留原本的条目,只追加 "dsh-plugin-vellum";
- 路径用正斜杠,link: 后面的路径指向仓库里的 plugin/ 目录。

方式 B:直接装打包好的 zip

1. 下载 Release 里的 dsh-plugin-vellum.zip 并解压到任意目录;
2. 同样编辑 profile,把 link: 指向解压目录。

⚠️ 解压版没有 assets/(素材已内联进 client.js)。想改源码重新构建,请用方式 A 的完整仓库。

重启

改完 profile 后完全退出并重启 DSH(不是只关窗口)。

使用

| 想做什么 | 怎么做 |
| 切换明暗 | 点右下角 ☾ 暗 / ☀ 亮 |
| 开关音效 | 点右下角 ♪ 开 / ♪ 关 |
| 进入输入框 | 空态画面点一下 |
| 跳过片头 | 任意键 / 点击 |
| 看桌宠跳舞 | 让它生成回答(思考中自动跳) |

主题和音效选择存在 localStorage,下次启动保持。

快捷键

| 快捷键 | 功能 |
| Ctrl + Shift + L | 切换明暗 |
| Ctrl + Shift + M | 切换音效 |
| Esc | 跳过片头 |

项目结构

plugin/
├── client.js # 构建产物:CSS + JS 全部内联(约 990 KB) ├── index.js # host 侧入口(空实现) ├── cordis.patch.yml # 往应用里注入插件行 ├── icon.svg ├── package.json ├── assets/ │ ├── pet/ # 桌宠两段 WebM(构建时转 base64) │ └── vs/ # 七个音效 mp3(构建时转 base64) ├── src/ │ ├── skin-dark.css # 暗色皮肤(源) │ ├── skin-light-generated.css # 亮色皮肤(由工具生成,勿手改) │ ├── tokens-dark.css # 暗色语义 token 覆盖 │ ├── fix.css # 对比度兜底 │ ├── stage-dark.css/.js # 暗色空态舞台 │ ├── stage-light.css/.js # 亮色空态舞台 │ ├── splash.css/.js # 亮色片头 │ ├── tag.js # 结构标记 + 对比度扫描 │ ├── theme.js # 主题/音效开关 API │ ├── control.css/.js # 右下角控制条 │ ├── sound.js # WebAudio 合成引擎 │ ├── sound-hooks.js # 音效触发点 │ └── pet.js # 桌宠(视频版) └── tools/ ├── build.mjs # 构建:内联素材 + 组装 client.js ├── make-light-skin.mjs # 从暗色生成亮色皮肤 └── boot-splash.mjs # 重建 deepseek-boot 片头负载

重新构建

cd plugin
node tools/build.mjs

需要 assets/ 存在(音效与视频源)。构建产物是单文件 client.js。

自定义

| 想改 | 改哪里 |
| 颜色 | src/skin-dark.css 里的 CSS 变量,然后跑 node tools/make-light-skin.mjs 重新生成亮色 |
| 圆角 | --dsh-vellum-radius- 系列变量 |
| 桌宠大小 / 位置 | src/pet.css 的 #dsh-vellum-pet(当前 150×150,right 2px,bottom 26px) |
| 桌宠动作 | 换 assets/pet/.webm,用 Blender 渲新的透明视频 |
| 音效 | 换 assets/vs/.mp3 |
| 片头时长 | src/splash.js 里的 T 对象 |

已知限制

- 切工作区 + 新建对话时,亮色舞台需要一次点击「新会话」才会重新显示圆环(app 会复用空态节点,插件靠监听「新会话」按钮来复位状态);
- 桌宠是预渲染视频,不能看向鼠标、不能实时改姿势;
- client.js 约 990 KB(含 310 KB 视频 + 330 KB 音效 base64);
- 只在 Windows 版 DSH 上验证过,macOS 未测;
- 亮色舞台的 z-index 被提到 2147482000(否则会 app 的空态层盖住)。

素材与许可

代码

本仓库的代码(src/、tools/、client.js 的组装逻辑、文档)MIT 许可,见 LICENSE。

第三方素材(不在 MIT 范围内)

| 素材 | 来源 | 说明 |
| assets/vs/*.mp3(7 个音效) | Visual Studio Code 安装目录 resources/app/out/vs/platform/accessibilitySignal/browser/media/ | 版权归 Microsoft。VS Code 源码是 MIT,但媒体素材未在同一许可下授权再分发 |
| 桌宠模型 | lowpoly_trump_dance.glb(疑似 Super Smash Bros. 拆包 / Sketchfab 素材) | 版权与肖像权归原权利人 |
| 鲸鱼图标 | DeepSeek 官方品牌图形 | 商标归 DeepSeek |
| deepseek-boot 片头 | 原始 DSH 启动动画 | 仅作私用与学习交流 |

这个仓库适合本机学习、改着玩。 如果要公开发布到插件市场或商业使用,请把这些素材全部替换为自有或有明确授权的资源(合成音效、自有模型、自有图标)。

如果你只想留皮肤和动画、不带第三方素材:

1. 删掉 plugin/assets/;
2. 跑 node tools/build.mjs —— 音效会退回内置合成音,桌宠不显示;
3. 换掉 icon.svg 与 src/ 里出现 DEEPSEEK 字样的地方。

致谢

- 动画节奏参考 DSH 自带的 deepseek-boot
- 音效取自 VS Code 的无障碍提示音(仅本机使用)
- 桌宠模型来自公开的 lowpoly 资源

License

代码 MIT © 2026 yykyyk1
预览分享卡片长什么样 ↓yykyyk1/dsh-plugin-vellum
分享 · DeepSeek Harness Hub
yykyyk1/dsh-plugin-vellum

为桌面端换上暖墨暖纸双主题,附桌宠与音效

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部