dsh-theme-firefly · 流萤主题
44.6/100
综合分
23
GitHub 星标
1,338
npm 周下载
—/5
用户评分
数据截至 2026/9/21 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add dsh-theme-fireflynpm 源 · dsh-theme-firefly 的发布者账号已校验与本仓库一致
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · ui
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 43 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包dsh-theme-firefly @ 0.1.3
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/30 11:48:39
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
发起外部网络请求
查看扫描证据(共 1 处,展示前 1 条)
- 发起网络请求lib/client.template.js:1179
else { const r = await fetch(item.data); if (!r.ok) return; buf = await r.arrayBuffer(); }
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
界面预览
5 张 · 点击查看大图README
由 DeepSeek 最新模型翻译生成展开完整文档(README 剩余 1 节)
dsh-theme-firefly · 流萤主题
🌌 崩坏:星穹铁道「流萤」主题的 DeepSeek Harness Web UI 皮肤插件。
萤火绿霓虹配色 × 立绘/动态壁纸 × 开屏变身动画 × 萤火氛围粒子 × 背景音乐 × 打字音效。
让流萤的萤火为你点亮 DSH。✨
🖼️ 预览与演示
动态 / 静态壁纸
壁纸
开屏变身动画
开屏动画
萤火氛围粒子
萤火粒子
背景音乐播放器
背景音乐
表情包彩蛋
表情包
🎬 演示视频(B 站): https://www.bilibili.com/video/BV1nF8B6QEEj/?spm_id_from=333.1387.homepage.video_card.click&vd_source=573abae8b62b8edf27edc7cb8933e1b6
✨ 功能特性
壁纸系统(图片 / 动态视频)
- 全屏 cover 铺底,界面容器半透明让壁纸透出;左暗右亮渐变遮罩保证聊天区可读
- 「景」按钮弹出常驻面板:
- 类型:动态(mp4)/ 静态(图片),各自独立记忆当前壁纸
- 选择:弹出缩略图网格(正方形预览、固定三行、可滚动),点卡片直接应用该壁纸
- 移除:在网格中勾选一张/多张后点「移除」——内置壁纸记为隐藏、运行时导入的壁纸从服务器删除(移入回收站,可恢复)
- 随机:勾选若干张后点「随机」——把它们设为随机轮换池并立即进入随机模式(不勾选则等于全部)
- 随机间隔:自定义分钟数(默认 5 分钟)
- + 添加壁纸:从本机一次多选导入图片/视频(Ctrl/框选),同名同大小自动去重,立即生效(服务器磁盘持久化:写入 $DSH_HOME/theme-firefly/wallpapers/,刷新/重启/换浏览器都在;列表显示上传时的原始文件名)
- 上传上限:按服务器剩余磁盘空间动态计算(默认单文件最多占剩余空间 80%,底线 512MB),装得下就传,快满自动收紧
- 默认壁纸:首次安装(无历史记录)时优先展示 assets/Default_wallpaper.png
- 选择面板点右上角「—」或再点「选择」收起;点「确定」收起设置面板,所有设置实时生效并持久化
流萤配色
- 深空海军蓝黑 × 萤火虫青绿(#00ff87 / #7dff9e)× 莹白文字
- 覆盖 100+ 个 --dsw- 设计令牌,随主题即时生效
开屏变身动画
- 内嵌 GIF 居中淡入,带绿色辉光边框 + 「流萤 // FIREFLY」标题
- 每次刷新播放,时长跟随 GIF,点击任意处或「点击跳过」可跳过
- 尊重系统 prefers-reduced-motion,自动跳过
萤火氛围粒子
- 「萤」按钮分档:关 / 星点(12)/ 曳光(28)/ 流萤(80)
- 数量切换带 0.9s 淡入淡出过渡,不陡然变化、不刷新页面
- 每只萤火虫有独立尺寸、亮度、漂浮轨迹与呼吸式闪烁
背景音乐
- 「乐」按钮点击开/关,弹出音乐面板
- 旋转唱片 + 封面(内置曲目开箱即用默认「知更鸟」封面,也可手动指定)+ 进度条拖动跳转
- 上一首 / 播放暂停 / 下一首 / 循环模式(单曲循环 → 列表循环 → 随机播放)
- 选择:弹出歌单,勾选后移除(内置歌曲隐藏、导入歌曲删除)或随机(以勾选歌曲为随机池)
- + 添加歌曲:从本机导入音乐并持久化;无封面时自动读取内嵌封面(MP3/FLAC)
- 缩小 / ESC:收起为 dock 左侧的毛玻璃迷你播放器(大唱片在上、进度条在下,点「隐藏封面」可切成只留进度条的简洁胶囊,「展开」恢复完整面板)
- 当前曲目与循环模式持久化
打字音效
- 聊天输入框打字时播放「咔哒 + 低频咚」的萤火质感按键音
- Web Audio 实时合成,零音频文件;空格/回车音色更低;「声」按钮开关
彩蛋
- 开屏动画:输入框发送 SAM → 重播开屏变身动画(精确匹配,普通消息不误触)
- 表情包(GIF/表情包/ 目录,按对话内容触发,每回合最多一个,右下角弹出):
- 你夸赞时 → 「开心」/「得意」(谢谢/太棒/厉害/绝了…)
- 你确认开干时 → 「变身」(开始/开干/动手/走起/冲…)
- 我确认时 → 「没错」(没错/正是/确实…)
- 我需要你提供时 → 「期待」(发我/提供/给我…)
- 我需要你确认时 → 「疑惑」(确认一下/要我…吗/可以吗…)
🎛️ 界面操作
四个按钮(自右向左)收在一个可拖动的毛玻璃长条面板里:
| 按钮 | 功能 |
| 声 | 打字音效 开/关 |
| 萤 | 氛围粒子分档(关/星点/曳光/流萤) |
| 景 | 壁纸设置(类型 + 选择/随机 + 随机间隔 + 添加壁纸 + 确定) |
| 乐 | 背景音乐 开/关 + 播放面板 + 迷你播放器 |
🖱️ 按住面板任意位置拖动即可移动,位置自动记忆(重启 dsh web 后仍生效)。
音乐面板、歌单选择、壁纸设置、壁纸选择器弹层会相对该面板水平居中对齐,并自动保持在屏幕内;迷你播放器则紧邻面板左侧显示。
按 ESC:关闭壁纸 / 氛围 / 歌单等浮层;音乐面板展开时收起为迷你播放器(不会关闭迷你播放器)。
🎨 灵感来源
- 角色与主题:本主题致敬米哈游《崩坏:星穹铁道》中的角色 流萤(Firefly) 与其机甲 S.A.M. ——「完全燃烧」的变身、萤火虫般的荧光、以及那句「我将点燃大海」。
- 音乐:默认曲目为 HOYO-MiX 出品的《使一颗心免于哀伤》(知更鸟演唱),曲库另含《在银河中孤独摇摆》《希望有羽毛和翅膀》《若我不曾见过太阳》《唯有追赶风的方向》。
- 实现参考:客户端主题的「令牌层 + 身份层」架构与 cordis 插件结构,学习自 dsh-theme-cyberpunk2077(作者 Tommy00748),特此致谢。
- 生态:DSH 插件目录 awesome-dsh-plugin。
📁 目录结构
dsh-theme-firefly/
├── package.json # dsh.client 声明(web 插件,注入 ui-theme 槽位) ├── lib/index.js # 服务端:注册 /theme-firefly-assets 静态资产路由 ├── lib/client.template.js # 浏览器端主题源码(含占位符,随仓库提交) ├── lib/client.js # 构建产物(build.cjs --clean 生成,只含 URL 清单,随仓库提交干净版) ├── assets/ # 壁纸:图片(jpg/png/webp) + mp4 动态壁纸 ├── GIF/ # 开屏动图(取第一个 .gif) │ └── 表情包/ # 表情包 GIF(文件名即触发情绪:开心/得意/变身/没错/期待/疑惑) ├── music/ # 背景音乐(mp3/ogg/m4a/wav),默认第一首「使一颗心免于哀伤」 │ └── figure/ # 内置歌曲默认封面(取第一张图片,如知更鸟图) ├── build.cjs # 构建:读取 client.template.js,把素材清单(URL)注入 lib/client.js ├── build.music-exclude.txt # 音乐排除清单(clean 构建时不收录其中列出的曲目) ├── LICENSE # MIT(仅代码) ├── .gitignore # 忽略构建产物与第三方壁纸 └── README.md
🚀 快速开始
方式一:npm 安装(推荐,一条命令开箱即用)
dsh plugin --profile web add dsh-theme-firefly
装完重启 dsh web 即生效。npm 包已内置「干净版」lib/client.js(只含素材 URL 清单,素材本体由服务端 /theme-firefly-assets/ 静态路由提供),免 git、免构建、包体积小。
方式二:GitHub 源码安装(开发者/想改素材时用)
1. clone 本仓库(仓库已提交干净版 client.js,clone 后开箱即用)
git clone https://github.com/Liu-ZA-81/dsh-theme-firefly.git
2. 以 link 方式安装到 web profile(本插件声明了 dsh.bundle,会自动注册)
dsh plugin --profile web add "link:<本目录绝对路径>"
3. 重启 dsh web 生效
想改内置素材时,改完 assets/ 等目录后运行 node build.cjs --clean 重新构建干净版(构建只更新 lib/client.js 里的 URL 清单,素材文件本身无需内嵌)。
💡 开箱即用含一张动态壁纸(演示视频)与多张静态立绘;想加更多壁纸,直接点「景」→「+ 添加壁纸」导入,或把文件放入 assets/ 后重新构建(见「自定义素材」)。
⚠️ 与其它主题(如赛博朋克主题)互斥:多个主题都会调用 ctx.theme.setTheme 并注入 !important 令牌样式,后加载的赢。建议同时只启用一个主题(把其它主题的 patch 行注释掉即可,可随时恢复)。
卸载
dsh plugin --profile web remove dsh-theme-firefly
重启 dsh web 生效
📚 更多文档
- FAQ 常见问题
🛠️ 自定义素材
壁纸有两种添加方式:
1. 运行时添加(推荐):点「景」→「+ 添加壁纸」,从本机一次多选图片/视频(Ctrl/框选),立即生效并持久化
2. 打包收录:把文件放入 assets/ 后运行 node build.cjs(适合预置默认壁纸,素材外置由静态路由提供)
其余素材(开屏动图、音乐)需通过 build.cjs 收录进 lib/client.js 的 URL 清单:
node build.cjs # 完整构建:收录 assets/ 里全部素材(含第三方,仅供本地使用)
node build.cjs --clean # 干净构建:只收录 build.include.txt 清单里的素材(用于提交仓库)
- 壁纸:assets/ 支持 .jpg/.jpeg/.png/.webp(静态)与 .mp4(动态)
- 默认壁纸:assets/ 里文件名含 Default 的图片会在首次安装(无保存记录)时作为初始壁纸;仓库默认随带 Default_wallpaper.png,替换后重新 node build.cjs --clean 即可
- 开屏动图:GIF/ 目录取第一个 .gif
- 音乐:music/ 支持 .mp3/.ogg/.m4a/.wav,默认第一首为「使一颗心免于哀伤」; music/figure/ 里第一张图片会作为内置歌曲默认封面;build.music-exclude.txt 里列出的文件名会在构建时被排除(可留待运行时「+ 添加歌曲」导入)
💡 体积说明:素材不内嵌进 JS 包,由服务端 /theme-firefly-assets/ 静态路由按需流式提供(lib/client.js 仅 90KB 左右,避免聚合 bundle 过大导致浏览器加载失败)。
建议素材控制合理体积(mp3 ≤128kbps、图片 ≤500KB、视频 ≤1080p),加快首屏加载。
⚠️ 提交仓库前记得跑 node build.cjs --clean(生成只含官方素材的干净版),避免把含第三方壁纸的完整版误提交。
🔧 技术实现
1. 客户端插件机制:用 window.__ModuleLoader__.load() 注册为 DSH 客户端模块,导出 cordis 插件 { isPlugin, inject: ["theme"], apply }
2. 设计令牌覆盖:在 apply(ctx) 里调用 ctx.theme.register({ id, colorScheme, tokens }),向 ThemeRuntime 注册 --dsw- 令牌,再 setTheme 激活
3. 身份层:注入 ,实现壁纸背景、粒子动画、开屏动画等;音频全部用 Web Audio 实时合成,不依赖外部资源
4. 壁纸/音乐渲染:动态壁纸用 ,静态壁纸用 CSS 背景层,音乐用 ;素材以 /theme-firefly-assets/ URL 形式外置(服务端半注册 webServer 前缀路由,按需流式提供,不内联 base64)
⚖️ 版权与合规(重要)
- 代码:本项目源码采用 MIT 协议,欢迎自由使用与修改。
- 素材:
- 仓库随代码开源的素材仅为米哈游 / HoYoverse / HOYO-MiX 官方内容:音乐(如《使一颗心免于哀伤》等)、开屏 GIF、表情包 GIF,以及官方角色壁纸(firefly-bg.jpg、firefly2.png、firefly3.png)。米哈游对非商业同人二创较为友好,不涉及商业盈利一般不予追究,但版权仍归米哈游所有。
- 第三方壁纸:仓库仅随带一个演示视频(哲风壁纸「台灯-城市夜景-夜晚」),用于开箱即用体验,其余第三方壁纸与 mp4 不随仓库分发。你可以通过「景」→「+ 添加壁纸」导入自己的素材,或替换 assets/ 内的文件。
⚠️ 请勿将第三方壁纸资源随仓库公开分发;如需收录,请使用你自己的原创或已授权素材。
📄 免责声明
本项目为粉丝同人作品,与米哈游、HoYoverse、DeepSeek 无任何关联,也未获得官方授权。
仅用于技术学习与个人使用。如侵权请联系我删除。预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
Liu-ZA-81/dsh-theme-firefly
dsh-theme-firefly · 流萤主题
相关插件 · UI / 主题
破甲增强版JeffKeeping/dsh-purge-plus
dsh-purge 的非官方分支fork:适配 DeepSeek Harness 0.2.1-rc.2、破甲内核…
★ 387已汉化DeepSeek 客户端
71.9
无代码业务系统平台nocobase/nocobase
NocoBase 是什么
★ 24,804已汉化DSH
71.8
1Panel 服务器面板1Panel-dev/1Panel
全球 250 万+ 自托管用户共同喜爱。
★ 37,344已汉化DSH
71.5
终端编码代理esengine/DeepSeek-Reasonix
· 指南 · ACP · 扩展开发 · 规格 · 官方网站 · Discord · QQ
★ 36,045已汉化DSH
71.2
工作状态行动态ccch1mneyyy/working-activity
作者:chimney@ccch1mneyyy。社区项目,非 DeepSeek 官方项目。
★ 664已汉化DSH
71.2
多模型配置管家farion1231/cc-switch
跨平台桌面一体化助手,支持 Claude Code、Codex、OpenCode、DeepSeek Harness 等工具,唯一官网 ccswitch.io
★ 151,202已汉化DSH
71.1