DSH Plugins Marketplace

DSH Plugins

Plugins

/

UI & Experience

/

dsh-fairy-zzz-for-jediliu

d

dsh-fairy-zzz-for-jediliu

Manifest valid

Fairy III (Zenless Zone Zero) H.D.D skin for DeepSeek Harness: boot video, an eye-core dock that can be dragged vertically so it never covers text, and time-of-day greeting voices written by a model e

UI (client)hasBundlePatch

dsh-fairy-zzz-for-jediliu

Fairy Ⅲ · 《绝区零》H.D.D 皮肤 —— 个人定制分支

派生自 dsh-fairy-zzz(MIT,作者 AssassinVIX),在其上做了独立的改造与收敛。


一、这是什么

把 DeepSeek Harness 的 Web 界面换成《绝区零》Fairy 的 H.D.D 终端:开机动画 → 居中问好 → 收成常驻眼徽;并用本地 GPT-SoVITS 把回复念出来。

本仓库是个人定制版:包名、路由、存储键、slot 命名空间全部独立,可与上游插件并存而不冲突。

二、血缘与上游

项值
上游仓库https://github.com/AssassinVIX/fairy-zzz-plugin
上游包名dsh-fairy-zzz
本分支包名dsh-fairy-zzz-for-jediliu
许可证MIT(继承上游)
眼徽 SVGApache-2.0,改编自 Fairy-DSH(详见 NOTICE-fairy-dsh.md)

上游原版说明保留在 docs/upstream-README.md,便于对照。

三、本分支改了什么

1. 彻底改名,可与上游共存

改名不是改一个字段,而是一条链。本分支同步了全部标识点:

package.json name         dsh-fairy-zzz  →  dsh-fairy-zzz-for-jediliu
cordis.patch.yml 条目 id  fairy-zzz-skin →  dsh-fairy-zzz-for-jediliu-skin
服务端插件 name            fairy-zzz      →  dsh-fairy-zzz-for-jediliu
客户端注册 id              dsh-fairy-zzz  →  dsh-fairy-zzz-for-jediliu
HTTP 路由前缀              /fairy-zzz/*   →  /dsh-fairy-zzz-for-jediliu/*
localStorage 键            fairy.zzz.*    →  dsh-fairy-zzz-for-jediliu.*

漏掉任何一处,启动时会报 duplicate factory registration 并连带停用整个插件组合——这是本分支踩过并且修好的坑。

2. 动态问候语音(每天 17:00)

  • 插件装载后与每 30 分钟检查一次:17:00 之后若当日台词不存在,就用模型生成 5 个时段(morning/noon/afternoon/evening/night)的短句,每句 ≤ 20 字,并避开前一天的句子。
  • 台词写入 greet-gen/<YYYY-MM-DD>/<slot>.wav 与 texts.json。
  • 前端取用顺序:今日文件 → 最近一份 → 内置 assets/voice/。整条回落链保证「生成失败也有声音」。

3. 朗读摘要(长文本压缩)

POST /dsh-fairy-zzz-for-jediliu/summarize 把长回复压成一句中文结论(≤40 字)再朗读;短文本直接读全文。摘要使用自己的 API Key,与主对话互不影响。

4. 标记化朗读(推荐用法)

回复最后一行写:

【读·摘要】技术类回复的一句话结论
【读·吐槽】日常闲聊的一句话吐槽

插件优先朗读这一行,不受字数上限与技术词限制;没有标记时才回落到「≤80 字 + 非技术词」的启发式判断。这样朗读内容由回复作者显式控制,不必猜。

5. 自动朗读(观察式)

宿主不向消息组件传递文本,因此本分支改为观察 DOM 中最新一条回复:

  • 启动时先记录基线,刷新页面不会把历史消息重读一遍;
  • 文本连续稳定 3 次(约 4.5 秒) 才朗读,避开流式输出中途;
  • 同一条回复在流式里变长时不重复朗读(防回声);
  • 批量挂载超过 3 条时不触发(防页面刷新时连读)。

6. 眼徽可纵向拖动

Dock 相的眼徽支持上下拖动(X 轴锁死),用于避开正文;偏移存 localStorage,并夹在 ±40vh 内。

7. 安全与资源收敛

项处理
POST /summarize内存级限流 20 次/分钟,超限 429(防本机脚本刷爆额度)
POST /engine启停引擎改为 POST(原 GET 可被跨站简单请求触发)
静态文件resolve + startsWith 守卫,../ 与 %5c 均无法逃出 assets/
TTS 缓存超 100MB 或 200 条时按最旧清理
问候语音只保留最近 7 天
独立 agent 预设已删除:本皮肤只负责视觉与语音,不替换宿主工具集

8. 语音播放统一管理

问候音与朗读音统一由 stopSpeech() 控制:朗读开始会先停掉问候音,避免两路音频叠放产生回声。

四、安装

# 以本地 link 方式安装到指定 profile
dsh plugin --profile desktop add "link:/path/to/dsh-fairy-zzz-for-jediliu"

或把它放进 profile 的 node_modules,并在 package.json 的 dsh.profile.bundles 中加入 dsh-fairy-zzz-for-jediliu。

安装后重启 DSH;皮肤会在整页刷新时加载。

五、配置

语音引擎目录

在插件目录下放置 voice-home.txt,内容为本地 GPT-SoVITS 引擎目录(一个包含 fairy_server.py、python\python.exe、GPT-SoVITS 的文件夹):

/path/to/your/tts

也可以在 DSH 的「设置 → Fairy」里填写,插件会自动写入同一文件。未配置引擎时皮肤照常工作,只是不朗读。

朗读摘要的模型

~/.dsh/fairy-tts.json:

{ "apiKey": "sk-...", "baseUrl": "https://api.deepseek.com", "model": "deepseek-chat" }

不配置则摘要不可用,朗读回落到「直接读原文/标记行」。

六、隐私与网络

  • 唯一的出网请求:/summarize 与动态问候生成时调用 baseUrl 指定的模型接口(默认 DeepSeek);其余网络请求全部指向 127.0.0.1。
  • 密钥只从本地配置文件读取,不写日志、不回传、不写进仓库。
  • 语音合成在本机完成,音频只落在插件目录的 cache/ 与 greet-gen/。
  • 仓库内不含任何机器相关路径、账号信息或预生成音频。

七、致谢与许可

  • 上游:AssassinVIX/fairy-zzz-plugin(MIT)
  • 眼徽几何与动效:Fairy-DSH(Apache-2.0,见 NOTICE-fairy-dsh.md)
  • 本分支代码同样以 MIT 发布,见 LICENSE

Comments

Loading…

Similar plugins

dsh-input-optimizer

DeepSeek Harness plugin: a four-pointed-star button left of the composer's model selector that rewrites your draft before you send it — fixing grammar, ambiguity and execution order — plus a dedicated settings page. AI-generated.

UI & ExperienceManifest valid

★ 0

MIT

JavaScript

dsh plugin --profile web add dsh-input-optimizer

by AnFRuJ

DeepSeek Harness × Feishu/Lark bridge: chat, cards, approvals, task board, goals and schedules in Feishu — plus fully local (offline) voice transcription with a play bar in the Web GUI.

Terminal & ClientsManifest valid

★ 4

↓ 108/wk

MIT

TypeScript

Oct 4, 2026

dsh plugin --profile web add dsh-lark-plus

by AirPineApplea

Cross-session persona and diary for DeepSeek Harness: it remembers what happened between you, then forgets what stopped mattering.

Development & InfrastructureTerminal & ClientsMemory & ContextManifest valid

★ 17

↓ 3.6k/wk

NOASSERTION

JavaScript

Oct 29, 2026

dsh plugin --profile web add feiyu-memory

by ch1bug

Xiaomi MiMo-powered voice for DeepSeek Harness: browser 🎤/🧠/🔊 UI, voice_transcribe/voice_understand/voice_speak tools, configurable voice map (preset/voicedesign/voiceclone). Fork of zhuiyueya/dsh-

Terminal & ClientsManifest valid

★ 0

MIT

JavaScript

Oct 3, 2026

dsh plugin --profile web add dsh-voice-mimo

by heartmove

一个 DSH 网页插件,Codex 式侧边聊天的强化版本: 在右侧面板提供按主会话隔离的独立聊天,具备 Codex 式的智能体能力——继承主会话的 工具集、模型、思考难度与权限预设,能感知所在工作目录;选中对话内容即可提问,AI 回复 也能带回主会话(直接带回或摘要后带回,写入草稿或注入为折叠提示行)。 在 Codex 式能力之上,它额外支持:当主会话的智能体弹出问题弹框向你提问时,可以 把问题

UI & ExperienceManifest valid

★ 14

MIT

TypeScript

Oct 17, 2026

dsh plugin --profile web add dsh-side-chat-plus
fairy-zzz-plugin4

No screenshots

by AssassinVIX

H.D.D skin for the DSH Web UI: full-screen boot animation, an animated eye core with idle, thinking and done states, a time-of-day greeting, and optional local GPT-SoVITS voice.

Themes & SkinsManifest valid

★ 20

↓ 1.8k/wk

JavaScript

Oct 29, 2026

dsh plugin --profile web add dsh-fairy-zzz