feiyu-chat-companion:DSH 桌面上的鲸鱼娘桌宠

前言

DeepSeek Harness(DSH)桌面版可以把 Agent 挂在日常开发环境里,但多数交互仍集中在聊天窗口里:你要切过去、发一句,模型才回应。若希望有一条轻量的「旁路」——不占主会话上下文、又能根据你当前在看的窗口偶尔说一句话——需要单独的桌面层实现,而不是把桌宠逻辑塞进主对话。

feiyu-chat-companion(社区名「肥鱼陪聊」)是维护者 AirPineApplea 发布的 DSH 插件,分类为趣味换装。它在 Windows 上用独立 Win32 分层窗口画一只鲸鱼娘,置顶于桌面、不进任务栏、不抢焦点;Host 侧通过文件与 HTTP 与桌宠进程协作,用单独短会话调用模型,README 实测稳态约 0.10~0.14 分/句(模型 deepseek-flash,推理 off)。插件在 GitHub 上为 MIT 许可,当前 package 版本 0.1.9;社区目录见 SkillHub 条目,源码见 AirPineApplea/feiyu-chat-companion。

下面按定位、能力、安装、用法与注意事项说明。

这是什么

一句话:给 DSH 桌面版用的独立桌宠——永远待在屏幕上的鲸鱼娘,会眨眼、头顶气泡说话;你在某个窗口停够约 10 秒她会自己开口,右键可以「问她一句」。实现上不依赖 dsh-pet,通过 dsh.bundle.patch(cordis.patch.yml)挂载到 Host。

前置条件

项 要求
系统 Windows 10 / 11(Win32 layered window,其它平台无法运行)
DSH 0.2.x 桌面版
Python DSH 自带,路径形如 ...\DeepSeek Harness\resources\runtime\primary-runtime\dependencies\python\
可选包 uiautomation:不装也能跑,但读不到浏览器地址栏,看 B 站时只能凭窗口标题猜;要抠 BV 号需用 DSH 自带 Python 安装

安装 uiautomation 示例(将 <你> 换成实际用户名):

& "C:\Users\<你>\AppData\Local\Programs\DeepSeek Harness\resources\runtime\primary-runtime\dependencies\python\python.exe" -m pip install uiautomation

README 写明仅测过 Windows 11 + DSH 0.2.1-rc.2。

核心功能

桌宠层(overlay)

  • 可拖动,贴屏幕边缘;随机约 2.5~6.5 秒眨眼;说话为头顶气泡,宽度自适应。
  • 左键点一下:立刻应一声,不等 10 秒、不受冷却限制;三秒内连点会合并成「连着戳了好几下」的语义(与拖动自动区分)。
  • 右键:菜单含「问她一句」、归位、暂停说话、退出等(与侧栏面板同源)。
  • 记住窗口位置;侧栏可「露着 / 藏着」(藏着只隐藏窗口,进程仍在)。

Host 侧(主动说话与问答)

  • 桌宠每秒写前台窗口标题到 foreground.json;标题变化时可选 UIA 读地址栏提取 B 站 BV 号。
  • Host 每 2 秒读配置与前台信息:停够约 10 秒、冷却与「同页是否已说过」满足后,送入独立短会话生成一句,经 say.json 驱动气泡。
  • 问她一句:右键输入,回车提交;气泡先显示「…」,二十秒内无答则「想太多,我放弃了」;答案气泡约停 14 秒;不留聊天记录,再问需再开一次。
  • 说话频率(侧栏):低 / 中 / 高对应不同间隔与同页冷却(README 表格:例如低档 15 秒一句、同页 60 秒可再说)。
  • 回话长度:短 ≤20 字、中 ≤45 字、长 ≤80 字。

独立会话与费用

她说的话不挂你的主对话。首次开口会新建会话目录 ~/.dsh/feiyu-chat-voice,攒满 30 句自动换新会话,旧会话自动归档;侧栏会出现 feiyu-chat-voice 分组,面板可「换一条短会话」手动重来。

README 实测(回话长度「长」):首句约 0.53 分(含缓存写入);稳态约 0.10~0.14 分/句;满 30 句约 4 分。左键戳一下、右键问一句,与她自己说一句话同属该短会话的一轮,计价相同。

与其它插件联动(可选)

  • 肥鱼日记(feiyu-memory):装了才有记忆与人格;package 未声明硬依赖,停掉日记桌宠仍运行,语气变普通助手。
  • 语音(@memef1f1y/dsh-plugin-tts):检测到 window.__dshTtsSettings 才显示「朗读」;声音在网页播放,关网页则只有气泡。
  • 刷 B 站(dsh-bili-scroll):工具表存在 bili_subtitle 时才显示「看什么」里的「标题 + B 站内容」;字幕/评论靠该插件工具,本插件自身无 B 站工具。

刷 B 站插件安装命令(README 原文):

dsh plugin --profile desktop add github:c1overzz/dsh-bili-scroll

安装与启用

README 给出的流程是先拿到仓库本地路径,再以 link: 加入 desktop profile:

git clone <本仓库>
dsh plugin --profile desktop add "link:D:\你的路径\feiyu-chat-companion"

装完需重启 DSH(Host 启动期加载)。侧栏会出现「肥鱼陪聊」,排在「肥鱼日记」后面;面板里点「启动」拉起桌宠进程。

若侧栏能开、点启动无反应且 pet.log 无新记录,常见原因是杀软拦截 DSH 自带 Python 起子进程;README 以卡巴斯基为例,需将 pythonw.exe 与 python.exe 设为受信任应用程序(入侵防御 / 应用控制,而非仅扫描排除项)。

典型用法

  1. 满足 Windows 与 DSH 0.2.x 后,按上文 link: 安装并重启。
  2. 侧栏打开「肥鱼陪聊」→ 启动 → 按需设说话频率、回话长度;若装了 TTS / 刷 B 站,再设朗读与「看什么」。
  3. 日常:在某个窗口停留,等她自己开口;或左键点她即时回应;或右键「问她一句」。
  4. 不想被读前台标题:设置里关闭「看什么」,仍可用「问她一句」。

设置持久化在 ~/.dsh/storages/feiyu-chat/settings.json,Host 约每 2 秒重读,改完即时生效。运行数据目录:

~/.dsh/storages/feiyu-chat/
├── settings.json、state.json、foreground.json、say.json、ask.json、poke.json …

HTTP 路由前缀 /feiyu-chat(如 /state、/config、/voice),需 DSH 会话凭证。

隐私与适用场景

读什么:前台窗口标题(每秒);B 站视频页额外读地址栏取 BV。不读页面正文、剪贴板、键盘、屏幕像素、任意文件内容。标题会写入本地 foreground.json、送入她的短会话,并可能出现在 debug.json、pet.log——编辑器路径、终端命令、聊天窗口标题等常出现在系统标题栏,提交日志前请先自查。

默认不对 DSH 自身、Program Manager、无标题、设置页开口;其它窗口默认会读,README 明确包括未列入黑名单的敏感类窗口——需隐私时关闭「看什么」。

适合:已在用 DSH 桌面版、想要低成本旁路陪聊、能接受 Windows 与窗口标题级上下文的用户。

注意:插件以当前 DSH 进程权限运行,安装前请自行审阅 源码与 MIT 许可证。SkillHub 为社区插件目录,与 DeepSeek / 幻方无官方从属关系。已知限制包括:全屏独占游戏无法被窗口盖住;DSH 重启后需一次会话活动才能发出攒着的话;B 站特化认 bilibili.com/video/BVxxxx,直播页无 BV。

结尾

feiyu-chat-companion 把桌宠 UI 与 Host 解耦(文件 + 可选 HTTP),用独立短会话控制主对话 token 与费用,并可选接日记、TTS、刷 B 站扩展「人格、朗读、B 站内容」。目录页:https://www.skillhub.cn/plugins/AirPineApplea/feiyu-chat-companion;仓库:https://github.com/AirPineApplea/feiyu-chat-companion。

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

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

Xiaoye