识别文本情绪并映射为对话策略与记忆账本
29.9/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/3 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add liuxinxing123/dph-emotion-arc该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · chat
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 33 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(unknown · 2026/10/4) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
发起外部网络请求
查看扫描证据(共 2 处,展示前 2 条)
- 发起网络请求client.js:70
fetch(`/api/dph-emotion-arc/state?sessionId=${encodeURIComponent(sid)}`, { cache: 'no-store' }) - 发起网络请求client.js:74
fetch(`/api/dph-emotion-arc/ledger?sessionId=${encodeURIComponent(sid)}&limit=6`, { cache: 'no-store' })
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 文本情绪检测
- 情绪映射对话策略
- 记忆账本记录
情绪弧导演:文本情绪检测 → 显式状态文件 → 策略映射,外加记忆账本和 SillyTavern 角色卡导入。DSH/DPH 插件,MIT 协议。
README
由 DeepSeek 最新模型翻译生成情绪弧线导演 · dph-emotion-arc
定位:编剧向的「情绪叙事工具」(合规白名单方向),不是持续情感陪伴。
依据调研《情绪交互 Agent 与 DPH 插件可行性调研报告》(2026-10-01):插件生态中「情绪识别 → 状态 → 策略」闭环、情绪记忆账本、跨版本适配矩阵——三件事均无人做过(7 个占位仓库合计 40★,4 个九天内死亡)。本插件补齐这三件。
一句话
文本情绪识别 → 显式情绪状态文件(emotion-state.json)→ 对话策略映射 + 关系型记忆账本 + 角色卡人格感知。识别双引擎:确定性词典(零成本、可审计、永远兜底)+ LLM 精判(BYOK、按 detectorMode 组合);状态是跨会话持久化的显式文件(对齐报告第 07 章「离散标签 + 状态文件承载」架构),策略以注入提示形式映射到 Agent 行为。
展开完整文档(README 剩余 1 节)
情绪弧线导演 · dph-emotion-arc
定位:编剧向的「情绪叙事工具」(合规白名单方向),不是持续情感陪伴。
依据调研《情绪交互 Agent 与 DPH 插件可行性调研报告》(2026-10-01):插件生态中「情绪识别 → 状态 → 策略」闭环、情绪记忆账本、跨版本适配矩阵——三件事均无人做过(7 个占位仓库合计 40★,4 个九天内死亡)。本插件补齐这三件。
一句话
文本情绪识别 → 显式情绪状态文件(emotion-state.json)→ 对话策略映射 + 关系型记忆账本 + 角色卡人格感知。识别双引擎:确定性词典(零成本、可审计、永远兜底)+ LLM 精判(BYOK、按 detectorMode 组合);状态是跨会话持久化的显式文件(对齐报告第 07 章「离散标签 + 状态文件承载」架构),策略以注入提示形式映射到 Agent 行为。
架构(管线式,非端到端)
用户消息 │ agent/inbox/claimed(scoped 事件) ▼ 识别双引擎(detectorMode) ├─ llm:LLM 精判(4s 超时防护,温度 0,JSON 容错解析) └─ lexicon:词典 + 否定短语 + emoji + 感叹号加权(兜底) │ 防护① 低置信度 → 回落中性 ▼ 情绪状态机(强度 + 指数衰减半衰期 30min + 换标签迟滞防抖) │ 防护③ 推断审计日志 audit/<sid>.jsonl(rule: llm/lexicon/lexicon-fallback/manual) ▼ ├─ 显著变化 → agent.inject() 策略提示(共情/倾听/降不确定…;notifyMode 可关) ├─ systemPrompt.context() 每步注入当前状态 + 角色卡人格(稳态感知) └─ 持久化 state/<sid>.json(跨会话延续)记忆账本 ledger/<sid>.jsonl ← Agent 工具 emotion_ledger_append(冲突/和解/安抚…)
角色卡 persona/<id>.json ← Agent 工具 emotion_card_import(SillyTavern V2 PNG / V3 JSON)
三个感知错误防护(报告第 07 章):① 低置信度回落中性;② 标签切换需超过强度迟滞;③ 推断日志供审计。
能力面(三件套)
| 空位(调研 §06) | 本插件实现 |
| 情绪识别 → 状态 → 策略闭环 | 双引擎识别(LLM 精判 + 词典兜底)+ emotion-state 状态文件 + 策略映射注入 + system prompt 上下文 |
| 情绪记忆账本(关系型记忆) | ledger/<sid>.jsonl:conflict / reconciliation / soothe / breakthrough / preference / milestone,跨会话保留,反哺角色弧光 |
| 跨版本存活 | 见下方适配矩阵;所有外部 API 均做防御性读取,宿主 API 缺失时跳过而非崩溃 |
| (V1.1)角色资产接入 | SillyTavern V2/V3 角色卡导入 → persona 档案 → 人格感知策略(对齐「一份资产多生态分发」) |
工具(Agent 可用)
- emotion_state —— 读当前状态(标签/强度/置信/触发语/历史/账本尾/角色卡)
- emotion_state_set —— 手动校准(写入审计日志 rule=manual)
- emotion_ledger_append —— 追加关系型记忆
- emotion_card_import —— 导入 SillyTavern 角色卡(V2 PNG / V3 JSON / V2 JSON)并绑定当前会话
UI
Composer 下方的「情绪弧线」芯片:当前情绪(颜色点 + emoji + 名称 + 强度条 + 相对时间),点击展开状态面板(触发语 / 变化历史 / 账本尾)。数据经只读 HTTP 端点获取,写操作仅经 Agent 工具。
数据文件(可导出、可迁移)
<dataDir>/state/<sessionId>.json 情绪状态(version 字段 + 历史 + persona 绑定) <dataDir>/ledger/<sessionId>.jsonl 情绪记忆账本 <dataDir>/audit/<sessionId>.jsonl 推断审计日志(可追溯) <dataDir>/persona/<personaId>.json 角色卡 persona 档案(V1.1)
默认 dataDir = dshHomePath('emotion-arc'),可在 cordis.patch.yml 中覆写。
适配矩阵(Compatibility Matrix)
| 组件 | 版本 | 状态 |
| DeepSeek Harness(dsh) | 0.1.7 – 0.2.x(Developer Preview) | ✅ 基于 0.2.x API 面编写 |
| 依赖的宿主 API | agent/inbox/claimed · agent.inject · agent/created/agent/disposed(scoped, global:true)· systemPrompt.context · tools.register · webServer.register | 均有 0.1.7+ 先例;全部防御式调用 |
| 客户端 API | window.__ModuleLoader__ · ctx.slots.inject/register · conversation.composer.dock(标准 prop sessionId)· 主题 token --dsw-alias- | ✅ |
| 浏览器 | 现代 Chromium / WebView(fetch + React 18) | ✅ |
维护纪律(对齐调研 §06「8 天 5 个 release」的教训):
1. 本插件不 import 任何 @deepseek-ai/ 包(bundle 自包含),降低破坏性变更面;
2. 宿主 API 变更时优先「跳过功能」而非抛错——插件卸载/失效绝不影响会话;
3. 每次 dsh 发布后跑一遍 emotion_state 工具 + 芯片刷新冒烟测试,README 同步更新适配矩阵;
4. 数据文件格式带 version 字段,迁移时只加字段不删字段。
开发循环(本机迭代须知):
- Host 侧代码(engine.js)修改后,需重启 Harness 才生效(Node ESM 按 URL 缓存模块,进程内无法热换);
- Client 侧(client.js)修改后刷新页面即可;
- 禁用/启用插件时请间隔 ≥10 秒(cordis 纤维释放是异步的,快速切换会让路由卡死,届时只能重启恢复);
- 单测:node test-emotion.mjs(24 用例:词典 + LLM 解析 + 角色卡解析),node test-fork-repro.mjs(回归用例)。
配置(cordis.patch.yml)
config:
enabled: true
dataDir: !!js dshHomePath('emotion-arc')
decayHalfLifeMs: 1800000 # 情绪半衰期 30min neutralFloor: 0.15 # 低于此强度回落中性 minConfidence: 0.5 # 防护①阈值 hysteresis: 0.15 # 防护②换标签迟滞 injectThreshold: 0.25 # 触发策略注入的强度变化阈值 injectCooldownMs: 5000 # 注入冷却 notifyOnShift: true # 情绪显著变化时注入通知 notifyMode: inject # inject=注入+上下文;context-only=仅稳态上下文(最安静) detectorMode: auto # lexicon=零成本词典;llm=纯 LLM;auto=LLM 优先+词典兜底 llmTimeoutMs: 4000 # LLM 精判超时(超时走兜底) llmMaxTokens: 120 # 精判输出上限 llmProvider / llmModel # 可选:指定精判模型;缺省用 Harness 默认模型(BYOK) historyLimit: 20 # 历史保留条数
Roadmap(对齐调研 MVP-1 双轨)
- ✅ V1.0 闭环 + 账本 + 适配矩阵(已实机验收)
- ✅ V1.1 LLM 精判(BYOK)+ SillyTavern V2/V3 角色卡导入 + 注入调优(本轮)
- V2 语音情绪识别(emotion2vec+ 本地 SER)+ 情感 TTS(CosyVoice / fish-speech)
- 插件外收入:语 C 人设包 / 角色卡定制(付费心智已被「语擦师」经济验证)——插件本身免费,是作品集与获客器
合规声明
本插件为情绪叙事工具,不提供拟人化人格的持续情感互动(《人工智能拟人化互动服务管理暂行办法》三要件不触发):状态文件为显式工程数据,策略映射为写作方法论,不含「虚拟伴侣」功能。仅限研究与创作辅助,不构成任何医疗/心理服务。预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
liuxinxing123/dph-emotion-arc
识别文本情绪并映射为对话策略与记忆账本
相关插件 · 对话 / 记忆
上下文中枢oceanbase/powercontext
上下文跟着工作走 —— 跨会话、跨智能体、跨人。
★ 1,489已汉化DSH
73.1
智能体记忆库plastic-labs/honcho
Honcho 是记忆基础设施,用来构建有状态的智能体。这些智能体能理解不断变化的人、智能体、群组、项目和想法。
★ 7,918已汉化DSH
71.7
长程智能体控制面loopx-project/loopx
给 Agent 一个目标,让工作持续向前。
★ 6,358已汉化DSH
71.3
智能体上下文数据库volcengine/OpenViking
给 AI 智能体用的上下文数据库
★ 41,453已汉化DSH
71.3
长效机器人团队Fei2411/DS-Bot
Download DS Bot for Windows 10/11 64-bit / 下载 Windows…
★ 5,293已汉化DSH
71.2
可携带记忆层EverMind-AI/EverOS
为什么选择 EverOS
★ 13,797已汉化DSH
71.1
这是你的仓库?认领条目