Passer au contenu principal
C

dsh-tavern-v2

chen731215-dev/dsh-tavern-v2

Panneau de gestion de taverne pour DeepSeek Harness : cartes de personnage, worldbooks et presets avec isolation par session, résumés de mémoire, toile de relations entre personnages, options d'intrigue en un clic et mode NSFW. L'expérience complète nécessite aussi les plugins compagnons dsh-muv-engine et dsh-muv-table, qui affichent la barre d'état, les options d'intrigue et les tables de variables.

Installer

dsh plugin --profile web add github:chen731215-dev/dsh-tavern-v2

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-tableMUV 变量表格编辑器
dsh-muv-engineMUV 正则引擎 + 变量追踪

📦 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

Plugins associés