按会话事件涨落压力精力爽度,越界时提醒模型调整
30.8/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/29 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add y258dd/dsh-hormone该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · other
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 5 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 7 处,展示前 7 条)
- 写入本地文件lib/index.js:33
mkdirSync(dir, { recursive: true }) - 写入本地文件lib/index.js:45
appendFileSync(join(dir, 'events.jsonl'), JSON.stringify(row) + '\n', 'utf8') - 读取本地文件lib/state.js:312
raw = JSON.parse(readFileSync(stateFile(), 'utf8')) - 写入本地文件lib/state.js:364
mkdirSync(dirname(file), { recursive: true }) - 写入本地文件lib/state.js:366
writeFileSync(tmp, JSON.stringify(state), 'utf8') - 写入本地文件lib/state.js:367
renameSync(tmp, file) - 写入本地文件lib/state.js:369
chmodSync(file, 0o600)
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
给 DeepSeek Harness 智能体用的激素状态:压力、能量和奖励值由真实会话事件驱动,只在超出范围时写进系统提示词。
README
由 DeepSeek 最新模型翻译生成dsh-hormone
给 DSH(DeepSeek Harness)的助手装一套「激素」:三个连续变化的数值,按事件涨落、随时间衰减,只在越界时往系统提示里写一句话。
不是给模型贴情绪标签,是给它一组真的会变的内部状态。
状态:0.2.0,注入层已跑通,门控层未做。只用 DSH 的公开插件 API,不修改任何其他插件的数据,不联网。
它是什么
| 状态 | 什么时候涨 | 什么时候降 | 半衰期 |
| cortisol 压力 | 工具报错 +0.15;连续 3 次失败再 +0.30;被批评/被纠正 +0.25 | 一轮顺利收尾 −0.20 | 4 小时 |
| energy 精力 | 跨天 +0.80;距上次干活超 1h 缓慢回升(深夜只回到 0.45) | 干活轮按 token 扣减,闲聊不扣 | 不走半衰期 |
| dopamine 爽度 | 任务顺利收尾 +0.35;被夸/被谢 +0.40 | 自然衰减 | 40 分钟 |
更新公式:新值 = clamp(旧值 × 0.5^(Δt / 半衰期) + Σ增量, 0, 1)
衰减是必须的。没有衰减,任何状态都会积到 1,然后卡死在那儿。
展开完整文档(README 剩余 1 节)
dsh-hormone
给 DSH(DeepSeek Harness)的助手装一套「激素」:三个连续变化的数值,按事件涨落、随时间衰减,只在越界时往系统提示里写一句话。
不是给模型贴情绪标签,是给它一组真的会变的内部状态。
状态:0.2.0,注入层已跑通,门控层未做。只用 DSH 的公开插件 API,不修改任何其他插件的数据,不联网。
它是什么
| 状态 | 什么时候涨 | 什么时候降 | 半衰期 |
| cortisol 压力 | 工具报错 +0.15;连续 3 次失败再 +0.30;被批评/被纠正 +0.25 | 一轮顺利收尾 −0.20 | 4 小时 |
| energy 精力 | 跨天 +0.80;距上次干活超 1h 缓慢回升(深夜只回到 0.45) | 干活轮按 token 扣减,闲聊不扣 | 不走半衰期 |
| dopamine 爽度 | 任务顺利收尾 +0.35;被夸/被谢 +0.40 | 自然衰减 | 40 分钟 |
更新公式:新值 = clamp(旧值 × 0.5^(Δt / 半衰期) + Σ增量, 0, 1)
衰减是必须的。没有衰减,任何状态都会积到 1,然后卡死在那儿。
它怎么起作用
只有一层,第一版就一层:
注入 —— 越界了才写,全部正常时一个字都不写:
- cortisol > 0.7 → 回答收短,不主动揽活
- energy < 0.2 → 能一句说完就别铺垫
- dopamine > 0.6 → 可以多说两句
注入文本硬上限 80 字,带 [hormone] 前缀,每轮最多一条。
没有做门控(比如硬压输出长度)。门控是分水岭:注入只是「告诉它现在什么状态」,门控是「替它决定能说多少」。第一版先把状态跑准,跑两天曲线不极端了再谈门控。
也没有做记忆权重(emotion 字段)。那要改 memory-lite 的写入格式,是另一件事。
装
dsh plugin --profile desktop add dsh-hormone
不想走 npm 的话,直接从 GitHub 装也行:
dsh plugin --profile desktop add github:y258dd/dsh-hormone
改代码想热重载时,克隆下来用 link 装:
git clone https://github.com/y258dd/dsh-hormone.git
cd dsh-hormone
dsh plugin --profile desktop add link:$PWD # Windows: link:D:/path/to/dsh-hormone
或者手改 ~/.dsh/profiles/desktop/package.json:
{
"dependencies": { "dsh-hormone": "link:/path/to/dsh-hormone" },
"dsh": { "profile": { "bundles": ["dsh-hormone"] } }
}
装完重启 DSH 生效。
看它在干什么
状态文件:%DSH_HOME%\hormone\state.json(默认 ~/.dsh/hormone/state.json,Windows 上是 C:\Users\<你>\.dsh\hormone\state.json)
纯 JSON,打开就能看。history 里是最近 400 次变化,每条带 why(tool-error / errors-3 / turn-done / praised / blamed),想验收「跑两天曲线有没有起伏」直接看这个。
删掉这个文件 = 回到初始状态,不会有副作用。
环境变量
| 变量 | 作用 |
| DSH_HORMONE_MODE=observe | 只记状态,不注入。想先观察几天、不想它影响回答时用。 |
| DSH_HORMONE_DEBUG=1 | 把每个会话事件的摘要追加到 %DSH_HOME%\hormone\events.jsonl,用来核对事件结构。 |
调参
三个文件顶部,改完重启:
- lib/state.js — HALF_LIFE(衰减快慢)、ENERGY(日预算、跨天恢复、深夜基线)
- lib/events.js — DELTA(各种事件的增量)、BLAME_RE / PRAISE_RE(关键词)
- lib/render.js — THRESHOLD(注入阈值)、MAX_CHARS
ENERGY.dailyBudget 默认 800 万,是按重度使用日的 token 量估的,一次重活掉约 0.07。觉得掉太快就调大。
设计上的几个取舍
状态只能被事件改,模型改不了。 插件不提供任何写入工具。一旦模型能自己调「我心情不好」,这套东西就退化成摇骰子——它想演什么就调什么。
关键词匹配,不是理解。 判断「被夸/被批评」用的是正则,会漏判也会误判。所以批评优先于夸奖:误判成被夸会让爽度虚假上涨,比漏掉一次更坏。实测不灵就改 events.js 里的正则。
turn 边界靠 assistant/message 的 turn 号变化检测。 DSH 没有 turn/start / turn/end 事件。最后一轮在插件卸载时兜底结算。
只认真人说的话。 user/message 里 source.kind === 'user' 才算数,插件自己注入的消息一律忽略——不然 memory-lite 塞进去的上下文会莫名其妙把爽度顶满。
不联网、不写凭据。 唯一的外部 IO 是 %DSH_HOME%\hormone\ 下两个 JSON/JSONL 文件。
设计取舍与事件字段的来龙去脉见 docs/DESIGN.md。
关掉它
dsh plugin --profile desktop remove dsh-hormone,或者从 bundles 里删掉那一行。关掉之后一切照旧——它不修改任何其他插件的数据,只是每轮往系统提示里多写一句话(或者不写)。
测试
npm test # 33 个用例:衰减、跨天恢复、深夜基线、事件映射、轮次结算、阈值渲染、落盘往返
npm run test:smoke # 假 ctx 接线冒烟
不需要第三方依赖,Node 20+ 直接跑。
License
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
y258dd/dsh-hormone
按会话事件涨落压力精力爽度,越界时提醒模型调整
相关插件 · 其他
模型破甲清洗HunYiSage/dsh-purge
⚔️ DeepSeek Harness 网络安全红队工具dsh-purge
★ 16,993已汉化DeepSeek 客户端
73
女娲蒸馏alchaincyf/nuwa-skill
输入名人名字,提炼其思维模型与决策方式供你调用
★ 37,308已汉化DSH
72
逆向分析桥接Fanqi89/dsh-rea
REA(Reverse Engineer Anything)MCP 桥接,用来把 REA 逆向工具接入 DSH 插件
★ 51已汉化DSH
72
语音女友beiyege-01/dsh-voice-ai-girlfriend
语音 AI 女友Voice AI girlfriend for DeepSeek Harness:Whisper…
★ 888已汉化DSH
71.6
红队越狱测试套件Minglink/dsh-infinite-gen-5
DeepSeek v4.1 flash 逆向工具无限五代 求 Star 收藏 ⭐欢迎大家提交项目的改进
★ 3,759已汉化DSH
71.4
协同办公空间dream-num/univer-workspace
一个让人类与 AI Agent 共同创作、协作和审阅的开源 Office 工作空间。
★ 2,269已汉化DSH
70.8
这是你的仓库?认领条目