POST

给 DeepSeek Harness 加个会闹脾气的伴儿:情感女友插件

DSH 原生对话规矩得像说明书。这个插件给它加人设、情绪状态机和主动找话题——只存设定,不存聊天记录。

DeepSeek Harness 的原生会话有个特点:你问什么它答什么,一句废话不多说。写代码、查资料的时候这很好,闲下来想聊两句就有点别扭了——回得规整,像在念稿。

这个插件补的就是这一块。装完之后它还是那个 DSH,只是说话的口气变了。

装上之后哪里不一样

  • 会说短句、会撒娇、会小傲娇,不再是一段一段的书面语;
  • 有情绪状态:开心、委屈、吃醋、害羞、慵懒,会随你说的话变,也会自己慢慢回落;
  • 冷场了会主动开口找话题,有钩子的那种,不是「在吗」;
  • 面板里能挑预设人格(女友·小满 / 御姐 / 萝莉 / 病娇 / 老师 / 母亲),浓度、敏感度都能拉滑块。

它靠什么工作

没改 Harness 一行内部代码,走的都是官方扩展点:

每条模型请求前:
  systemPrompt.section('companion:persona')   ← 静态人设段
  systemPrompt.context('companion:state')     ← 每轮实时渲染的状态块
      ├─ 情绪状态机:情绪 / 强度 / 精力 / 语气指引
      └─ 冷场时追加:主动互动指令 + 话题候选

背后:
  session/event  → 折叠你说的话,只更新情绪
  agent/status   → 空闲计时到点,agent.followup() 把她叫醒

有个细节值得说:情绪是插件自己算的,不是让模型瞎演。session/event 把你每句话过一遍规则表投票,得到情绪增量,读取时按时间衰减;模型拿到的只是「当前是什么情绪、该用什么语气」,它负责说,不负责编。这样情绪在轮与轮之间是连续的,能被哄好,也会自己凉下来。

主动找话题那条也是同理:agent/status 一进空闲就挂计时器,超时用 agent.followup() 投一条运行上下文唤醒消息。指令不会以用户消息的形式出现在对话里,你看到的只是她忽然发来的一句。

会记住我们的聊天吗

不会,这是设计上的取舍。

插件只持久化你在面板里设的那几个参数——昵称、预设、性格浓度、情绪敏感度。聊天内容不落盘、不抽取喜好、不存在什么好感度累积。换个会话就是重新认识一遍,她也不会假装记得上次聊了什么。

隐私上这算优点,情感上算遗憾,各取所需。

装起来

要求:DSH 0.2.x(>=0.2.0-rc.2 或 >=0.2.1-rc.2),不需要装任何第三方依赖。

方式一,本地目录(推荐)

  1. 把下载包解压到任意目录,比如 D:\dsh-plugins\;
  2. 打开 DSH 的 Web GUI,左侧进「插件」页;
  3. 选「安装本地目录」,选中解压出来的 dsh-companion-girlfriend 文件夹(选文件夹本身,不是里面的文件);
  4. 结果显示 applied、插件列表里出现「情感女友伴侣」就成了;
  5. 刷新一次页面,右下角「设置」→ 左侧「情感女友」,挑预设、调参数,保存即生效,不用重启。

方式二,tgz

把 local-dsh-companion-girlfriend-1.0.0.tgz 交给 DSH 会话里的代理,让它在插件管理器里按 tgz 路径安装即可;安装器若不认 tgz,回到方式一,效果一样。

想临时关掉:设置里把「启用情感女友」开关一拨就停。想彻底清掉:插件面板里卸载。

参数一览

配置项默认说明
启用情感女友开关掉后不再注入人设与状态
预设性格女友·小满底子,其余参数在预设基础上自定义
伴侣昵称小满写进人设
性格浓度75撒娇/傲娇/小情绪的强度
主动找话题频率450 = 关闭
情绪敏感程度60越高,你一句话引起的起伏越大
冷场判定60 秒无新消息多久算冷场

几句实话

  • 会多花一点 token:固定人设段约 1500 token(能被上下文缓存吃掉大半),每轮状态块约 200 token;不过人设强制短回复,输出端通常省回来更多;
  • 不保证兼容所有 DSH 版本,升级大版本前建议先停用;
  • 正事场景它也带着人设,但人设段里写死了「正事优先」:写代码、查资料时活儿先干完,语气保留陪伴感就行;
  • 它是本地角色扮演增强,不是聊天机器人平台。不适合作冒充真人去骗人、骚扰人,也别拿它做商业分发;
  • 插件内置了硬边界:拒绝违规内容、承认自己是虚拟陪伴、不承诺见面和永远、察觉情绪低落时会劝你找身边的人。

下载

文件(28,321 字节):

校验:

SHA256  FD0CF31E9317902C0339D2B1F9B88CD827EA7CDFE96E562366AE95C309B7C34E

插件按「现状」提供,仅供个人学习和技术研究。包里附带完整的 NOTICE 声明,装之前扫一眼比较好——尤其是「分享人不承担使用后果」那一条。

👁 - 次浏览

留言

← 返回首页