前言¶
DeepSeek Harness(DSH)以插件扩展会话、工具与前端能力,但社区里大量角色卡、预设与世界书仍沿用 SillyTavern(ST)格式。若要在 DSH 里直接复用这些资源,并保留 swipe、分支、周目等 RP 侧栏体验,通常需要自行转换格式或维护两套前端。
pmp-dsh-tavern(仓库名 dsh-tavern,维护者 Player-MINEPIG)在 DSH 公开扩展点之上增加一层可卸载的 Tavern 兼容框架:不替换 DSH 原生前端,也不复制会话历史;DSH 仍拥有 durable history、工具权限与最终模型请求。下面介绍其定位、能力与从安装到首轮对话的步骤。
这是什么¶
pmp-dsh-tavern 是为 DeepSeek Harness 提供 Tavern 资源兼容、RP 工作流与第三方前端协议的开源插件。当前文档对应版本 2.0.0,采用 MIT License;开发验收基线为 DSH rc.8。
插件通过 DT 悬浮球在两种模式间切换:
- 灵珠 / DSH 原生模式:保留 DSH 原生会话、侧边栏与插件生态。
- 魔丸 / RP 模式:按角色卡与周目重组 RP 侧栏,提供开场白、greeting、显示正则、swipe、分支、回退、导入与导出。
卸载后仍可阅读原始 DSH 会话:插件只保存资源、选择、周目指针与显示元数据,不伪造或覆盖 DSH 历史。
核心功能¶
v2.0 按模块划分的能力如下(均来自项目 README 与文档索引):
| 模块 | 主要能力 |
|---|---|
| 资源 | ST 预设,V1/V2/V3 JSON/PNG 角色卡,独立/内嵌世界书,用户资料,资源绑定与导出 |
| RP 前端 | 角色卡/周目侧栏、greeting、正文渲染、显示正则、swipe、分支、回退和显示层编辑 |
| 周目数据 | DSH 权威 session、树状 timeline、工作区 catalog、外部记录首轮只读注入、静态 HTML 与 ST JSONL 导出 |
| 安全 | RP 权限叠加、同源/loopback API、工作区路径防护、CAS、DOMPurify、无正文 operation log |
| 调试 | Tavern Trace 展示本轮资源、世界书命中与 request/header 对齐信息 |
| 第三方开发 | v2 HTTP API、pmpDshTavernChrome 模式服务、DSH slots/store 与独立客户端接入 |
重要边界需提前知晓:
- 「预设」指 SillyTavern 风格的采样参数与提示词编排,不是 DSH agent preset。
- greeting 不进入 timeline,也不会伪造成 DSH 历史;外部记录只在首次真实请求中作为
untrusted只读上下文注入。 - 显示正则只影响魔丸前端渲染,不改写模型请求、DSH 原始消息或导出所依据的权威正文。
- 魔丸隐藏 reasoning、工具 context 与子 agent 通知;需查看完整运行细节时切回 DSH 原生「对话」视图。
- 本插件面向本机 loopback DSH Web,不应直接暴露到局域网或公网。
安装与启用¶
环境要求:Node.js 20 或更高版本、可从 PATH 调用的 DSH,以及一个已经初始化的 DSH profile(默认 web)。
从 GitHub 克隆并执行插件安装脚本:
git clone https://github.com/Player-MINEPIG/dsh-tavern.git
cd dsh-tavern
npm install --cache .npm-cache --legacy-peer-deps
npm run plugin:install
安装完成后重启 DSH Web。更新已有安装前请先停止目标 dsh web;安装脚本会在刷新期间保留插件数据。其他 profile、独立 DSH_HOME、手动安装、备份与卸载方法见仓库内 docs/INSTALLATION.md。
安全提示:安装本插件等同于允许其代码在 DSH Host 和浏览器页面中运行。请只从可信仓库与提交安装,并在更新前检查变更、备份插件数据。预设、角色卡、世界书与用户消息都可能包含 prompt injection;高权限 Agent 仍可能在模型诱导下调用获准的工具。完整威胁模型见仓库 SECURITY.md,RP 模式拦截范围见 docs/RP_SECURE_MODE.md。
典型用法:从角色卡到第一轮 RP 对话¶
项目 README 提供了可复现的 Quick Start;视频演示见 pmp-dsh-tavern v2.0「灵珠魔丸」。
1、导入角色卡
左键点击 DT 悬浮球打开菜单,进入「角色卡」,导入 SillyTavern JSON 或 PNG 角色卡。导入只创建资源,不会伪造会话或自动发送消息。
2、创建 DSH 工作区
回到 DSH 原生界面,使用 DSH 自己的工作区能力创建一个专门用于 RP 的工作区。所有周目 session 都会归入同一工作区。
3、进入 RP 前端并选择工作区
右键单击 DT 悬浮球,或在菜单中点击「切换到自定义前端模式」。首次进入魔丸时,插件会要求从 DSH 已有工作区中明确选择 RP 工作区;写入并回读确认前不会进入 RP 内容。
4、创建周目
在 RP 侧边栏找到刚导入的角色卡,点击角色卡右侧的 +。插件会创建或复用该角色最近一个完全空白的 N周目,并确保 root session 绑定的是你实际点击的角色卡。DSH rc.8 外层「新建会话」没有公开点击接管 seam;创建周目请使用角色卡右侧的 +,而非覆盖原生按钮。
5、选择开场白
空周目的 opening dock 会显示角色卡 greeting。存在备选开场白时可用左右按钮选择;这只是前端展示与首轮提示词参考,不会伪造成一次已经发生的 assistant 回复。
6、开始对话
在 DSH 原生输入栏发送第一条用户消息。用户消息会立即出现在 RP 视图中;随后可继续使用 swipe、分支新周目、同周目回退、显示文字编辑及导入/导出等功能。
完整操作与边界见仓库 docs/USAGE_zh-CN.md。
适用场景与注意¶
适合谁
- 已在 SillyTavern 生态积累角色卡、预设或世界书,希望在 DSH 中复用而不维护两套格式。
- 需要 RP 侧栏(周目、swipe、分支、显示正则)但希望 DSH 仍作为会话与工具的权威层。
- 计划基于 v2 HTTP API 或
pmpDshTavernChrome开发第三方 RP 前端或资源管理工具。
使用前注意
- 插件以当前 DSH 进程权限运行;安装前应检查源码与 MIT 许可证,并只从可信提交安装。
- RP 安全模式在 DSH 权限之上增加只读与高风险工具限制,但不是虚拟机或系统沙箱,不能约束本机其他进程。
- v1/v2 API 面向本机 loopback;Host、Origin 和 Content-Type 检查不是登录认证,不要把 DSH Web 或本插件 API 直接暴露到局域网或公网。
- 显示正则使用 JavaScript
RegExp,灾难性回溯可能冻结页面;只导入和启用你信任的模板与正则。 - swipe、分支和周目会创建真实 DSH session,可能增加磁盘占用;revision/CAS 与路径检查不能替代备份。
遇到可疑行为时,停止 Agent、切回 DSH 原生模式并检查原始会话与工具记录。
文档与链接¶
- SkillHub 目录页:https://www.skillhub.cn/plugins/Player-MINEPIG/dsh-tavern
- GitHub 仓库:https://github.com/Player-MINEPIG/dsh-tavern
- 中文使用指南:
docs/USAGE_zh-CN.md - HTTP API:
docs/API.md - 第三方 RP 前端接入:
docs/FRONTEND_INTEGRATION_zh-CN.md
pmp-dsh-tavern 不取代 DSH,而是在其之上提供可测试、可审计、可卸载的 Tavern 兼容层。若你的痛点是 ST 资源与 DSH 会话权威性的并存,可按上述步骤安装并在独立工作区中试用魔丸模式。