在 DeepSeek Harness (DSH) 中开发智能体时,让模型理解用户的情绪或意图并据此调整语气,通常需要复杂的 Prompt 工程。dsh-jev 插件解决了这个问题。它每轮对话都会调用 typesafe.ai 的 systemone(jev) 接口来分析用户输入,并将结果注入上下文。
核心功能¶
- 情绪/意图判定:每轮对话调用
typesafe.ai的systemone(jev) 接口,判定用户的情绪和意图。 - 上下文注入:将判定结果作为带来源标记的运行时上下文注入模型,供模型调整语气与优先级。
- GUI 配置:所有参数(包括 API Key)均在 GUI 的「设置 → JEV 情绪分析」中配置。
- 导出声明:支持导出
apply(ctx, config)函数,以及inject声明 agents。
安装与启用¶
使用官方安装命令添加插件,并重启宿主进程。
dsh plugin --profile web add github:Excalibur9527/dsh-jev
安装完成后,需要重启 dsh web 宿主进程以使插件生效。
配置与使用¶
重启后,在 设置 → JEV 情绪分析 中配置参数。
核心配置项:
* 启用 JEV 判定:控制是否调用接口。
* 把判定结果注入模型上下文:控制是否将结果追加到请求中。
* API Key:存储在 settings.yaml 的 dsh-jev.apiKey 字段,标记为 secret,不会通过浏览器 RPC 回传。
* 接口地址:默认为 https://api.typesafe.ai/v1/systemone。
* 判定问题:支持 noul(是/否)、score(评分)、choice(单选)等类型。
测试接口:
可以使用提供的脚本测试判定结果:
node scripts/try.mjs "测试文本"
权限与信任¶
这是一个社区插件,与 DeepSeek AI 无隶属关系。
- 出网权限:仅允许出网 POST 请求到
https://api.typesafe.ai/v1/systemone。 - 读取权限:读取用户最新一条消息和
~/.dsh/settings.yaml中的dsh-jev配置段。 - 写入权限:仅写入
settings.yaml中的dsh-jev段。 - 密钥安全:API Key 存储在本地文件中,且在 RPC 返回前显式删除,不会被回传给浏览器。
- 兼容性:DSH 0.1.1-rc.2 实测通过,要求 Node ≥ 22。
工作原理¶
插件仅在每轮对话中 agent/pre-step 的 batch 里出现 source.kind === 'user' 的消息时触发调用。判定结果仅作为自然语言上下文注入,不改变工具的必填字段。若未配置 Key、接口报错或超时,插件会原样放行,不会阻塞对话。