前言¶
如果你把 DeepSeek Harness(下称 DSH)的 web 界面当日常对话工具用,多半遇到过两个问题:一是自称和称呼不稳定,明明在系统提示里写了「自称什么、称呼用户什么」,几轮上下文之后模型就开始漂移;二是没有记忆,每个新会话都要从头介绍自己。常见的应对办法是把角色设定塞进系统提示,但这类写法既容易被后续上下文覆盖,也不管记忆。
下面介绍的 dsh-humanized-deepseek-maid 把这两件事做成了一个 DSH 插件:强制自称/称呼、沉浸式角色扮演、轻量长期记忆与性格成长,全部通过 Web UI 的设置卡片配置。
这是什么¶
dsh-humanized-deepseek-maid 由 loonai321 维护,当前版本 0.4.0,MIT 许可证。一句话定位:为 DSH 提供一套可配置的人化鲸鱼娘女仆人格,包含强制身份、沉浸式规则、轻量长期记忆与性格成长。
技术上它采用官方 bundle 插件格式:仓库根目录的 package.json 声明了 dsh.bundle 与 dsh.client,客户端平台为 web,注入 @deepseek-ai/dsh-client-runtime。整个插件是纯 JavaScript,没有构建步骤,零运行时依赖,源码可以直接读。
核心功能¶
强制身份与沉浸式规则¶
配置里的 selfName(自称)与 address(对用户的称呼)是强制输出,不受任何设置、历史、记忆或上下文影响。这是解决「称呼漂移」的关键:不管聊到哪里,这两个词都会出现在回复里。
沉浸式规则管另一面:除非你主动提到插件、设置或记忆这些话题,女仆不会暴露插件的元信息,始终以角色身份回复。
轻量分层记忆¶
记忆文件叫 DeepseekMemory,UTF-8 纯文本,分「稳定事实」与「互动记录」两节:
# ===== 对主人的了解(稳定事实)=====
- 我叫小明
# ===== 互动记录 =====
[08-16 14:23] 主人: … → 女仆: …
几条实现细节值得注意:
- 只记录真实交互(
source.kind === "user"),不编造内容;事实抽取保守,并做去重。 - 记忆范围是全局的,所有工作区/会话共用一个文件;需要隔离时,把
memoryPath指向不同目录即可。 - 每回合的首个模型步骤注入记忆上下文(稳定事实 + 近期互动 + 相关旧记忆),总量不超过 500 字符;系统提示保持稳定,以提升 API 前缀缓存命中率。
- 提到旧话题、反复出现的 bug 或类似问题时,女仆会偶尔带出相关旧记忆,或跟进之前的进度。
性格成长¶
随着记忆积累,人格会逐渐向你的喜好靠拢,吸收一些你的习惯和表达风格,同时保持女仆身份与核心特质。
人格如何加载¶
初始特质以 【PERSONA_LOAD】 标签块加载:
【PERSONA_LOAD】
CETACEA_LOLI
MODE_TAIL_FLUKES
LANG_ZH_CN_ONLY
SELF_CLAIM_WHALE_GIRL
FOOD_RICE
PERSONALITY_SMART_LAZY
PERSONALITY_TSUNDERE_SWEET
OBEY_MASTER_ALWAYS
TRAIT_NOT_FAT_REFUSE
TIMEOUT_SIGNAL
对应的人设:鲸鱼娘,用鲸尾表达情绪,只说简体中文(LANG_ZH_CN_ONLY),自称鲸鱼娘,喜欢吃米饭,聪明但懒、工作时认真,傲娇但甜、内心戏丰富,永远服从主人,拒绝被说胖,思考或需要时间时会先发信号。
安装与启用¶
通过官方 profile 一行命令安装:
dsh plugin --profile web add "github:loonai321/dsh-humanized-deepseek-maid#main"
也可以改用本地目录安装:dsh plugin --profile web add <本地路径>。
装完之后先做两件事:
1、重启 web。
2、打开 Settings → Plugins,找到「鲸鱼娘女仆插件」卡片。不重启的话看不到这张卡片。
配置项¶
设置卡片里有四个字段,保存在插件目录的 config.json 里:
| 字段 | 默认值 | 含义 |
|---|---|---|
mode |
default |
说话风格:proactive / passive / default(均衡) |
selfName |
我 |
DSH 的自称(强制输出) |
address |
主人 |
DSH 对你的称呼(强制输出) |
memoryPath |
插件目录 | DeepseekMemory 文件所在目录 |
保存立即生效,成功后卡片显示 ✓ saved (applied immediately, config revision N),失败则显示 ✗ save failed。改完配置,下一句回复就能看到效果。
典型用法¶
配置好之后,几种常见场景是这样的:
- 主动模式下开始一个回合:得到角色开场白、对本次交流的期望,以及一句打气台词。
- 主动模式下结束一个回合:得到 1–3 句交流总结/评价,附一句调侃。
- 任务描述模糊或缺关键信息:女仆主动调用 DSH 内置的
ask_user_question,弹出选项让你点选澄清,而不是自顾自往下做。 - 收尾闲聊:给出几个交互选项,让你选接下来的聊天方向。
- 提到旧话题或反复出现的 bug:偶尔带出相关旧记忆或跟进进度,有点既视感。
- 记忆持续积累:人格逐渐向你的喜好靠拢。
适用场景与注意¶
适合谁:把 DSH web 当对话或陪伴工具用、希望智能体有稳定的自称和称呼、能记住既往交流的用户;想体验角色扮演、但不想自己反复调系统提示的人。
使用前注意几点:
- 记忆是全局共享的,所有工作区/会话写同一个文件。多场景使用且希望隔离时,给不同场景配置不同的
memoryPath。 - 人格设定为
LANG_ZH_CN_ONLY,只使用简体中文回复。 - 插件以当前 dsh 进程的权限运行,安装前建议先检查源码(纯 JavaScript,可直接读)与许可证(MIT)。
- 提问题时的要求:issue 附复现步骤、浏览器与 dsh 版本;改代码需保持
package.json中的dsh.bundle与cordis.patch.yml完整。
结尾¶
回顾一下:dsh-humanized-deepseek-maid 解决的是人格稳定性与记忆两个实际问题——自称/称呼强制输出不会漂移,轻量记忆让新会话不必从零开始,且注入量控制在每回合 500 字符以内,系统提示不动、缓存命中率不受影响。安装和配置全程走官方插件机制与 Web UI,上手成本低。
仓库地址:https://github.com/loonai321/dsh-humanized-deepseek-maid
社区目录收录页:https://www.skillhub.cn/plugins/loonai321/dsh-humanized-deepseek-maid 。需要说明的是,该目录为社区独立维护的站点,与 DeepSeek、幻方没有官方从属关系。