npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dsh-tavern

v2.3.1

Published

DeepSeek Tavern - DSH roleplay plugin: character cards, worldbooks, presets, memory, relations, plot options. PolyForm-Noncommercial-Copyleft-1.0.0

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 打造的角色卡 / 世界书管理插件,导入角色卡就能开始角色扮演。

📜 许可证

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 级事件委托(永不失效),输入框查找增强
  • 🐛 转义标签还原<choices> / <Drama> / <style> 等转义形态还原成真实标签再渲染,不再裸奔显示
  • 🐛 预设单一事实来源:编辑器/选择栏/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 写法、预设管理等详细说明。


📄 许可协议

CC BY-NC-SA 4.0(源码公开 / 非商业共享)

  • ✅ 个人学习、研究、使用、修改、非商业分发
  • ❌ 禁止任何商业用途(含收费、广告、接外包、打赏变现等)
  • 📝 搬运/转载必须注明来源(保留原作者署名和仓库链接)
  • 🔄 衍生作品必须使用相同协议

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

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