前言¶
在 DSH 里和 AI 伙伴长期对话时,「她此刻什么感受」往往只能靠语气猜,或者靠关键词规则硬套,既不稳定,也容易和真实对话脱节。若把整段状态写进系统提示,还会牵动前缀缓存,聊久了成本也会上去。
dsh-feiyu-mood(鱼的心情)走另一条路:每轮对话结束后,用一次很短的模型调用判断这一轮心情往哪走,数值、七根情绪和时间线留在本地;要不要把心情「说给她听」、用什么模型判、可信度门槛,都在设置页里改。右下角有一个可拖拽的挂饰,点开即可查看当前状态。下面介绍它是什么、怎么装、以及使用时需要留意的点。
这是什么¶
- 插件名称:
dsh-feiyu-mood(展示名:鱼的心情) - 维护者:Yuuyuko-uu
- 社区分类:趣味换装
- 定位:给 AI 伙伴一个会自己判断、你看得见的心情 —— 每轮聊完自动判断涨跌,挂饰展示数值、情绪和时间线;不是关键词硬猜,也不是随机数。
数据全部落在本机 <DSH_HOME>/feiyu-mood/,插件不联网、不向第三方服务器上传心情记录;判断那一步走的是你自己配置的模型 provider。
核心机制¶
一轮对话之后发生什么¶
流程可以概括为:
你说一句话(或她主动开口 / 定时任务触发)
↓
她回完这一轮(turn-stopping)
↓
插件把「你说的 + 她回的」交给模型:这一轮心情往哪走?
↓
模型返回:心情涨跌(moodDelta)、七根情绪各涨多少、一句理由、置信度(confidence)
↓
更新心情值并写入时间线;同一次变化只注入一次,把「刚才心里那一下」带给她(若设置允许)
心情值默认基线 70,范围 0–100;七根情绪为开心、踏实、甜蜜、心疼、担心、难过、吃醋。无变化的回合不写入时间线。
为什么说给她听时不破坏前缀缓存¶
心情走的是 systemPrompt.context(系统提示里单独一段),不是改系统提示正文,因此不会破坏 DSH 的前缀缓存。设置页「她会听到的那句话」可预览当前会不会说、实际原文与时间。
confidence 低于门槛时只记后台、不进她的嘴,避免低把握度的猜测借她的口说出。一次变化只说一次;重复注入只会变成背景音。
判断口径:谁在说话¶
同一轮对话,发起方不同,判断目标也不同:
| 这一轮是谁发起的 | 内部标记 | 判什么 |
|---|---|---|
| 你本人在说话 | user |
你这话怎么影响她 |
| 她自己主动来找你 | speak-up |
她自己的心意,不算「被叫起来干活」 |
| 定时任务叫她干活 | bili-duty-scan |
干活时的心情 |
| 宿主每轮塞的上下文 | runtime-context / time-context |
跳过,不当成「谁说的话」 |
另有规则:心情下降只允许因心疼、担心或她自己难过,不允许因「你惹她生气」而降。
衰减¶
不会断崖回平,而是缓慢回落:
| 东西 | 怎么变 |
|---|---|
| 心情值 | 无新情绪时向基线回落,半衰期约 3 小时 |
| 七根情绪 | 向 0 衰减,半衰期约 90 分钟 |
心情下限可在设置里抬高(例如 30),避免掉得太低。
右下角挂饰¶
点一下展开面板:五档表情、心情值、七根情绪、完整时间线。可按住拖动位置。表情与心情值对应关系(资料中的档位):
| 心情值 | 表情资源 |
|---|---|
| ≥ 80 | 欢喜 face-great.png |
| 62–79 | 开心 face-good.png |
| 42–61 | 一般 face-ok.png |
| 25–41 | 心疼 face-worry.png |
| < 25 | 难过 face-sad.png |
assets/ 下五张表情与 feiyu.png 可替换为自有图片,文件名保持不变即可。
安装与启用¶
需要 DSH ≥ 0.1.7-rc.1。版本不满足时内核会静默跳过该插件,界面不报错,表现如同未安装。
安装命令(来自仓库 README,暂未发布到 npm):
dsh plugin --profile desktop add github:Yuuyuko-uu/dsh-feiyu-mood
装完后必须重启一次 DSH(插件在 bundle 层组装)。然后打开 设置 → 鱼的心情。
每轮判断是一次很短的模型调用;可在设置里关闭「每轮判断心情」以节省费用。设置页提供「检查更新」,对本插件仓库比对版本,只检查不自动安装,结果缓存 6 小时。
典型用法(首次三步)¶
- 填称呼:「TA 叫什么」(默认「用户」)、「TA 自己叫什么」(默认「大肥鱼」)。提示词与注入文案均使用这两项,改设置即可,无需改代码。
- 选会话:「在哪个会话里生效」—— 仅在该会话里判断与注入;心情状态全局一份,跨会话共享。
- 聊两句:回到设置页或看右下角挂饰,确认心情与记录有更新。
常用设置项摘要:
| 项 | 作用 |
|---|---|
| 每轮判断心情 | 总开关;关则不算、不改、不花判断费用 |
| 心情怎么告诉她 | 不告诉她 / 只说心情 / 说她刚才那件事(默认) |
| 判断用哪个模型 | 留空则跟随当前会话模型 |
| 可信度门槛 | 默认 60;低于则只记后台 |
| 基线心情、心情下限 | 回落目标与最低值 |
| 完整记录 | 最近 40 条时间线 |
所有设置改完立即生效,无需重启或手改文件。
适用场景与注意¶
适合谁:希望在 DSH 桌面端给固定会话里的 AI 伙伴维护一套可回看、可展示的心情与情绪时间线,并可选地把「刚才心里那一下」注入下一轮上下文的开发者或长期使用者。
运行与信任边界:插件以当前 DSH 进程的权限运行,会读写本机 <DSH_HOME>/feiyu-mood/(state.json、config.json、diag.log)。安装前建议阅读仓库源码与 MIT 许可证。
排错提示(来自 README):心情不动时,先查「完整记录」最后一条时间,常见原因包括会话选错、「每轮判断心情」关闭、或连续多轮判为无变化未记账。
DSH 生态强调「一切皆插件」;社区目录站点与 DeepSeek / 幻方无官方从属关系,本文介绍的是社区插件,非官方应用商店条目。
链接¶
- 社区目录页:https://www.skillhub.cn/plugins/Yuuyuko-uu/dsh-feiyu-mood
- 源码与文档:https://github.com/Yuuyuko-uu/dsh-feiyu-mood
当前 package 版本为 0.4.0;GitHub 仓库星标数以页面为准(撰写时线索为 6)。