DeepSeek Harness 人格情感插件

前言

DeepSeek Harness 的原生对话模型在长期陪伴场景里存在两个常见问题:一是每次新会话都像刚认识,无法延续角色记忆;二是情感表达停留在简单的进度条,缺乏真实感。dsh-agent-personality 插件把一张 Markdown 人格卡变成一个有情绪、有世界观、有自己生活的角色,直接跑在 DSH 的会话管线里。

插件定位

这是一个 DeepSeek Harness 的情感人格插件,维护者为 yimengsuper2432。它不另开聊天窗口,也不替换宿主模型:人格写进系统提示词,收尾语长在「本轮费用」右边,记忆写在磁盘上,主动对话走宿主的定时提醒。

核心功能

情感与精力系统

情感是 0–100 的变量,每天早上 6 点重置回 50,精力重置回 100。情感只随对话变化,每轮模型最多提议 ±6,每天累计最多 ±20。精力跟 DSH 的实际 token 用量走(满值 50M,用多少按比例扣多少),房间里聊天不扣,停手满一小时起每小时回 10。

五段语气:0–19 冷淡 / 20–39 疏离 / 40–59 平常 / 60–79 亲近 / 80–100 依赖,每段有各自的句长和主动性。「变化证据」可以展开,一条条看清是哪句话让它涨了或掉了。

家里只聊天,工位上才干活

你在设置里指定的那个 Session ID 是「家」:插件会按最近一轮会话判断现在是在家还是在工位,并在提示词里换掉对应的那一段。在家里她只陪你聊天和学东西——不接活、不改文件、不跑命令、不查项目。家里那个会话上挂了工具闸,除了聊天要用的 ask_user_question、认图要用的 read_image / vision_*,其它工具都会被拦下。

数据分离存储

一份 persona.md 同时装「她是谁」和「她知道什么」,这里拆成六份:

文件 装什么 谁写
persona.md 性格、说话风格、边界 你写;子进程只改末尾的管理块
worldview.md 世界怎么运转、有哪些组织 你写;学习结果进管理块
Rule.md 输出的硬规矩:说话风格、颜文字、不许有窗口意识 你写;她自己也会往里加
character.json 名字、别名、性别、外观、爱好、所属、关系网 你写;学习只补空字段
diary.json 每轮一行日记 模型写,可删可清空
knowledge.json 学到的设定、活动、人物事实 学习流程写,只读展示

六份之间还会互相去重:同一件事只留在该留的那一份,换一种说法的重复条目按用字重合度合并。

限定域名的自主学习

资料源只能是你给的网址,不开放全网乱搜。填一个入口(例如 https://pjsk.moe/zh-cn),插件就会让她自己起一个带工具的子智能体去打开网页,读回来再交给下一个子智能体整理。同一个域名往下走:抓页面里的链接、sitemap、/character/ 这类列表页;不再按检索词挑页面,域名里的东西都可以读。

学到的内容先攒成一份总结来问你:她会先按 性格 / 关系 / 世界观 分好组、一条一条列出来,你勾选要的那几条再点确认,没勾的留在待确认里;也可以直接丢掉。

收尾语长在费用行右侧

插件接管正文结尾:系统提示词要求正文不要再写「晚安」式的独立收尾,turn/end 之后单独生成一句,塞进 dsh-cost-meter 的 <summary>,和「本轮费用 ≈ ¥…」同一行、同样的灰色小字。费用条被关掉时会退回自己的一行。

主动对话

每天在你的时间线里随机挑 6 个时间点,全天 24 小时随机、不限次数,通过宿主的 schedule 服务发出,绑定在专用的人格会话上。重启后计划仍在。到点时她会用自己的人设开口——问你在做什么、提醒你吃饭、说说自己今天有点累,或者问起某位同伴的近况。

每一轮的处理流程

一轮对话结束后,系统提示词会按固定顺序拼装:人格卡 → 世界观 → 角色档案 + 关系网 → 已知设定与最近活动 → 情感变量 → 你自己的状态 → 说话特点 → 规则。收尾语由插件接管。

插件会在轮末调用一个独立子进程(persona-worker.js)做三件事:往 ## 相处记忆 追加一条带日期的具体小事;用最新的心情、精力、好感重写 ## 当前情绪;原子写回,并留一份 .bak。子进程只改管理块以外的字节,人格卡正文始终由你掌控。

安装与启用

需要 DeepSeek Harness 0.2.0 或更新版本。仓库内没有构建产物,装完即可用。

桌面端:

打开 插件 → 添加插件,填入仓库地址,安装后重启桌面端:

https://github.com/yimengsuper2432/dsh-agent-personality.git

Web / CLI:

dsh plugin --profile web add github:yimengsuper2432/dsh-agent-personality
dsh web

装完打开 设置 → 人格与情感。插件会自己在工作区旁建一个 agent-personality/ 数据目录,不会写进源码或 npm 包。

快速上手

  1. 导入人格卡
    「人格卡」页点「导入 .md 文件」,或者用「从 AGENT.md 导入」直接沿用你已经在用的 ~/.dsh/AGENT.md。保存后下一轮生效。

  2. 补世界观和角色档案
    世界观单独一栏;「关系网」里填名字、别名、性别、外观、爱好、所属,再添几个人。这些会写进每一轮的提示词。

  3. 等一轮对话
    正文结束后,费用行右侧会出现这一轮的收尾语;「记忆」页会多一行日记,情感数字会小幅变化。

  4. 放着不管
    45 分钟后她会自己去学最近的活动的资料;每天随机时间她会主动敲你。想立刻看效果,在「设置」里点「测试一条主动对话」。

设置页说明

设置页一共八页:角色设定 / 记忆 / 关系网 / 世界观 / 主动学习 / 规则 / 技能 / 设置。

我想做什么 在哪里
看情感和精力、展开变化证据、改人格卡 角色设定
看容量、翻每轮日记、删记忆 记忆(只记家里那个会话;有 2000 KB 容量条,满了先淡忘最旧的)
加关系、看关系卡面(点一张就展开,底下是 Relation.md 原文) 关系网
单独改世界设定 世界观
填作品名 / 学习网址、设 token 上限、确认学习结果 主动学习
改输出的硬规矩(几句、能不能用列表、颜文字、不许有窗口意识) 规则
按源插件看本事、开关或移除 技能
开关自主学习与主动对话、开子智能体模拟判断、指定工作区、改会话标题、选 Agent 模式 设置
看数据目录、人格卡路径、陪伴日期 设置 → 状态与路径

关系网不再是一条条的表,而是一叠卡面:从左到右由远到近、一张压一张,点中间那张,其余后退让开、蒙上一层暗色,被点的那张放大、把名字 / 所属 / 关系 / 备注 / 她记住的事全部展开,可以直接改。

数据目录

<workspace>/agent-personality/
├── persona.md          # 人格卡(你写,子进程只改管理块)
├── worldview.md        # 世界观(你写 + 自动学习的管理块)
├── character.json      # 名字 / 别名 / 性别 / 外观 / 爱好 / 所属 / 关系网
├── diary.json          # 每轮一行,最多 500 条
├── knowledge.json      # 学到的内容:待确认 / 已确认 / 学习计划 / 学习记录与 token 均值
├── emotion.json        # 情感 0..100、心情、精力、变化证据、每日增量
├── config.json         # 开关与节奏
├── closings.json       # 收尾语缓存(sessionId:seq)
├── schedule.json       # 今天的主动对话计划
├── requests.json       # 她想问你的话(学习失败时攒的)
└── last-boot.json      # 最近一次启动诊断

备份只需要拷这个目录;删掉也不影响插件运行,会重新生成默认人格卡。

适用场景与注意

适合需要长期陪伴、希望角色有真实情感起伏、不希望每次对话都重置记忆的开发者。插件以当前 DSH 进程权限运行,安装前应检查源码与许可证。

结尾

这个插件把人格卡从静态配置变成一个有情绪、有记忆、会主动对话的智能体。你可以用它来扮演原创角色、游戏角色,或者你自己写的人设。数据完全本地存储,联网只在自主学习时发生。

目录页 | GitHub

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

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

Xiaoye