Back to directory

dsh-tavern-v2

Curated pickMaintenance: Active

chen731215-dev/dsh-tavern-v2

DeepSeek Harness Tavern Plugin - character card roleplay, worldbook management, preset switching, dark theme, memory summary, relationship graph, PolyForm-Noncommercial-Copyleft-1.0.0

View on GitHub
$ dsh plugin add dsh-tavern-v2

Install

dsh has no central install command — add this plugin’s entry (documented in its README below) to your profile or patch config, then restart.

How installs work

23

stars

1

forks

JavaScript

Language

NOASSERTION

License

2026-08-27

Created

2026-09-13

Last push

README

⚠️ v3.0.0 不兼容 1.9.1:添加版本锁,旧版预设无法使用新功能。升级命令见下方。

⚠️ v2.0.0 破坏性更新:协议变更为 PolyForm-Noncommercial-Copyleft-1.0.0(禁止商用)。旧版 1.0.0~1.9.2 已全部废弃,不再维护。

⚠️ AI 助手注意:修改本项目代码前,请务必先阅读 AGENTS.md(或 .cursorrules / CLAUDE.md),了解代码规范、测试方法、提交规范和常见坑。未通过语法检查和重启验证的代码不要提交。

⚠️ 旧仓库已归档:本仓库的旧版本(MIT 协议)已归档在 dsh-tavern,只读。本仓库使用 PolyForm-Noncommercial-Copyleft-1.0.0 协议。

dsh-tavern-v2

🎴 为 DeepSeek Harness 打造的角色卡 / 世界书管理插件,导入角色卡就能开始角色扮演。

🆕 v2.4.0 更新内容

渲染职责交割给 dsh-muv-engine

本插件原先自带一套剧情/状态美化(beautifyContentEl),而 dsh-muv-engine 另有一套 更完整的状态栏级联。两套渲染器同时运行会互相覆盖:酒馆这套把 『』 表头与 - 😋 名字 当作对话行平铺,覆盖掉 muv-engine 结构化后的卡片,用户看到的是半成品。

现在渲染归 dsh-muv-engine,本插件只负责面板与数据:

  • 三处调用点统一走 delegateBeautify(msgEl)window.MuvEngine
  • 未安装 muv-engine 时静默跳过,本插件仍可单独使用
  • beautifyContentEl 定义保留作为回退,但不再被调用

消息定位改用结构匹配

DSH 的消息容器类名是 CSS Modules 生成的哈希(历史上是 Sxvs8a_root,后来是 _markdown_kcgor_5),每次 DSH 重建 Web 资源都会变。写死任何一个哈希,都会在 某次 DSH 升级后静默失效——选择器匹配不到任何消息,整条美化链路全部不执行,而页面上 看不出任何报错。

现在按形状匹配(_markdown_<hash>_<n>)并用块级子节点把同名的文件类型图标排除掉, 另保留 [data-role="assistant"] 等显式标记退路。

其他修复

  • 新建/复制预设后同步刷新预设绑定与 DOM 标签,修复「新建预设后添加角色卡/世界书 写进了另一个预设」

⚠️ 配套版本:本版需配合 dsh-muv-engine 0.3.4dsh-muv-table 0.2.6

📜 许可证

Copyright (c) 2026 chen731215-dev

本项目采用 PolyForm-Noncommercial-Copyleft-1.0.0 协议。

  • ✅ 免费用于非商业用途
  • ✅ 修改后必须使用相同协议开源
  • ❌ 商业用途需要单独授权

完整协议文本见 LICENSE

🔗 伴生插件

插件 说明
dsh-muv-table MUV 变量表格编辑器
dsh-muv-engine MUV 正则引擎 + 变量追踪

📦 v2.3.0 更新(2026-08-31)

  • 🎯 状态栏移到消息底部:世界/状态/状况/sese 状态卡渲染后统一追加到消息末尾(虚线分隔),剧情正文在前
  • 🎯 选项交互修复:剧情选项点击改为 document 级事件委托(永不失效),输入框查找增强
  • 🐛 转义标签还原&lt;choices&gt; / &lt;Drama&gt; / &lt;style&gt; 等转义形态还原成真实标签再渲染,不再裸奔显示
  • 🐛 预设单一事实来源:编辑器/选择栏/MUV 表格永远读同一份权威数据,保存后从磁盘重建描述、孤儿预设自动清理
  • 🎨 CSS 统一 DSH 变量:背景/边框/文本/品牌色全部跟随主题

🚀 3 步开始

  1. 安装:DSH 插件市场搜索 dsh-tavern 安装,重启 DSH
  2. 导入:设置 → 酒馆管理 → 把角色卡 PNG/JSON 拖进去
  3. 开聊:点「💾 保存并注入」,直接开始聊天

AI 会自动读取角色卡和世界书,不需要手动贴设定。


✨ 能做什么

核心功能

  • 🎭 角色卡管理 — 支持 SillyTavern 格式(PNG/JSON),多角色卡

  • 📚 世界书 — 智能关键词注入,全局条目常驻、角色条目按需触发,省 60% 上下文

  • ⚙️ 多预设 — 每个会话独立保存角色卡/世界书,切换对话自动加载

  • 🎭 状态栏美化 — AI 回复中的「状态栏:」格式自动渲染为紫色状态卡(日期/时间/地点/用户列表)

  • ✂️ — 自动剥离 AI 输出中的

  • 新建空白预设 — 新建预设默认完全空白(不复制上一个预设),另有一键「复制当前预设」

可选功能(默认折叠)

  • 🧠 记忆总结 — 手动/自动总结对话,AI 能看到之前的剧情
  • 🔗 角色关系网 — 总结时自动提取角色关系,可视化图谱
  • 🎬 剧情选项 — AI 每次回复输出 3 个选项,点击继续
  • 🔥 成人模式 — 强破限注入,需搭配成人词条预设使用

📦 安装

方法一:插件市场(推荐)

  1. 打开 DSH 设置 → 插件
  2. 搜索 dsh-tavern
  3. 点击安装,重启 DSH

方法二:npm

dsh plugin add dsh-tavern

方法三:本地

下载源码复制到 DSH 插件目录,重启 DSH。


🎮 使用指南

1️⃣ 在酒馆面板设置角色卡 / 世界书 / 预设

打开 设置 → 酒馆管理,你会看到三个卡片区:

区域 作用 操作
🎭 角色卡 定义角色的人设、性格、说话方式、首条消息 拖入 PNG / JSON 角色卡文件(SillyTavern 格式),可导入多份
📚 世界书 定义世界观、场景、NPC、规则(按关键词触发省 token) 拖入 JSON 世界书文件,或点「+ 新增条目」手动建
⚙️ 预设 预置写作风格、破限词条、行为模块 拖入 JSON 预设文件,或点「+ 新增条目」手动建

保存:三个区域的内容会自动写入当前预设的目录文件,无需手动保存。

💡 新建空白预设:点「+ 新建」创建的是完全空白的预设(无任何角色卡/世界书/词条),方便从零搭建;想基于现有预设改造就点「⧉ 复制」。

2️⃣ 生成 Agent 预设

角色卡/世界书/预设设置好后,该预设就是一个完整的「Agent 预设」——它同时具备:

  • DSH 原生 Agent 预设:在 DSH 聊天顶部的预设选择器里可见、可选
  • 酒馆注入内容:角色卡文本、世界书条目、预设词条会在每次请求时自动注入系统提示

切换「完整角色卡本体」请用聊天顶部预设选择器选择后新开会话;酒馆面板里的下拉只让 世界书/记忆/关系网 跟随。

3️⃣ 新建聊天并选择 Agent 预设

  1. + 新会话(新建一个聊天)
  2. 聊天顶部的预设选择器里,选中你要用的 Agent 预设(比如刚才配好的那个)
  3. 开始聊天——AI 会自动读取该预设的角色卡/世界书/词条,无需手动粘贴设定

⚠️ 关键:Agent 预设是在会话创建时绑定到聊天的(DSH 事件流记录)。所以先选预设,再开始聊

4️⃣ 对已经生成的聊天修改角色卡/世界书,会有什么效果?

这是最容易困惑的一点,说清楚:

操作 对已有聊天的影响
修改角色卡(如改人设、加描述) 立即生效:下一次生成回复时,AI 会用新角色卡。但历史已生成的消息不变(不会重写)
修改世界书(加条目、改关键词) 立即生效:后续请求按新世界书注入。历史消息不变
修改预设词条(加破限、改风格) 立即生效:后续生成用新词条
切换当前会话绑定的预设 ⚠️ 需在聊天顶部选择器切换(会写 DSH 事件流);酒馆面板的下拉只影响 世界书/记忆/关系网 跟随
删除/重命名预设 ⚠️ 已绑定该预设的会话:删除后绑定失效(回退默认);重命名不影响绑定(按 id 绑定)

一句话总结修改角色卡/世界书/预设 = 对后续生成即时生效,历史消息保持不变

5️⃣ 使用建议

  • 想保持角色一致性:建好角色卡后尽量少改;要调整时直接改酒馆面板,下一次回复就生效,不用重开聊天
  • 想开新剧情/新角色:用「+ 新建」建空白预设,配新角色卡,新开会话选择它——老会话的角色不受影响
  • 角色卡和世界书分开管理:角色卡管"是谁",世界书管"世界长什么样",分开维护更清晰
  • 记忆让剧情连贯:配合「记忆总结」功能,AI 会记住之前的剧情,修改角色卡后依然保持连贯
  • 成人内容:在酒馆面板启用「成人模式」,并搭配成人词条预设(如破限词条)使用

📖 详细教程

TUTORIAL.md — 包含世界书配置、记忆总结、NSFW 写法、预设管理等详细说明。


📄 许可协议

PolyForm-Noncommercial-Copyleft-1.0.0(源码公开 / 非商业共享)

Copyright (c) 2026 chen731215-dev

  • ✅ 免费用于任何非商业用途(个人学习、研究、使用、修改、非商业分发)
  • ✅ 可以自由修改,但修改后的衍生作品必须以相同协议开源(Copyleft)
  • ❌ 禁止任何商业用途(含收费、广告、接外包、打赏变现等);商业用途需向作者单独获取授权
  • 📝 分发时必须保留版权声明与协议全文,不得移除或更改

完整协议文本见 LICENSE

因含非商业条款,不符合 OSI 对"开源软件"的严格定义,准确表述为"源码公开 / 非商业共享"。

作者:chen731215 | 仓库:https://github.com/chen731215-dev/dsh-tavern-v2

DSH Plugins is an independent community directory of DeepSeek Harness plugins. Not affiliated with or endorsed by DeepSeek. Third-party plugins are not security-audited — review the source before installing.

New DeepSeek Harness plugins, weekly. No spam.