dsh-portable-tavern:DSH 便携酒馆——角色卡生成与角色扮演聊天

前言

在 DeepSeek Harness(DSH)里做角色扮演,常见做法是单独打开 SillyTavern,或在 DSH 里手写 JSON 角色卡再对接聊天接口。前者与 DSH 工作流割裂,后者对 SillyTavern V2/V3 格式不熟时容易出错。下面介绍维护者 XCNXNXNX 的 dsh-portable-tavern:把 RPG 式角色卡生成器和酒馆聊天收进 DSH Web GUI 的一个独立插件里。

这是什么

dsh-portable-tavern 是 DSH Web GUI 的「便携酒馆」插件:可视化生成 SillyTavern V2/V3 角色卡,并在同一面板里与角色对话。支持世界书、角色卡 JSON/PNG 导入导出、面板主题与本地音乐。插件仅依赖官方 @deepseek-ai/* SDK,在 SkillHub 分类为「趣味换装」,GitHub 仓库约 20 stars。

  • 目录页:https://www.skillhub.cn/plugins/XCNXNXNX/dsh-portable-tavern
  • GitHub:https://github.com/XCNXNXNX/dsh-portable-tavern
  • 许可证:BSD-3-Clause(见仓库 package.json

核心功能

角色卡生成

通过可视化 RPG 属性面板(七大模块)生成 SillyTavern V2/V3 格式角色卡。可自定义聊天角色头像(上传图片自动压缩,随角色卡 JSON 导出/导入)。

酒馆聊天

与生成或导入的角色进行 AI 对话,支持下拉切换模型。对话前可注入全局系统提示词,作用类似 SillyTavern 的 System Prompt / Jailbreak。

自定义模型接入

默认使用 DSH 当前配置的模型与密钥;也可填写自己的 OpenAI 兼容接口地址、API Key 和模型名。API Key 仅存本浏览器,提供测试连接一键验证。

本地持久化与角色库

角色卡、对话记录、世界书、面板设定通过 localStorage 自动保存与恢复。角色库可在本地保存多个角色(含各自对话记录),支持一键载入或删除。

世界书

支持世界书生成、按人物卡补全,以及导入。

导入导出

角色卡支持 JSON 与 PNG(chara 内嵌数据)两种格式的导出与导入。

界面定制

可调整面板宽度、主题色、背景图;支持本地音乐文件夹顺序播放。右侧悬浮标签可拖动,可贴左、贴右或浮动为圆角方形;可在设置里关闭,关闭后从 DSH 设置页进入。

架构简述

标准双面 DSH 插件:

  1. Node 半(src/index.ts)通过 webServer 注册 /api/dsh-portable-tavern 路由,调用官方 llm 服务。
  2. 浏览器半(src/client/index.ts)经 dsh.client 清单被发现,通过 slots 服务挂载悬浮面板与设置页入口,以 fetch 调用上述路由。

cordis.patch.yml 通过 dsh.bundle.patch 把插件行注入 web profile roster;package.jsondsh.client 声明负责在 Web GUI 中加载浏览器半。仓库已提交 lib/,profile 安装无需再构建。

安装与启用

在 DSH Web profile 下执行以下任一命令:

# npm
dsh plugin --profile web add dsh-portable-tavern

# GitHub(lib/ 已提交,无需构建授权)
dsh plugin --profile web add github:XCNXNXNX/dsh-portable-tavern

# Release tarball
dsh plugin --profile web add https://github.com/XCNXNXNX/dsh-portable-tavern/releases/download/v0.2.0/dsh-portable-tavern-0.2.0.tgz

安装完成后,在 Web GUI 中通过右侧悬浮标签或 DSH 设置页进入插件面板。

典型用法

从零创建角色并聊天

  1. 打开便携酒馆面板,在 RPG 属性面板中填写七大模块,生成 SillyTavern V2/V3 角色卡。
  2. 可选:上传头像、编写世界书,或在设置中调整全局系统提示词。
  3. 在聊天区选择模型(默认走 DSH 配置,或填写自定义 OpenAI 兼容接口),开始与角色对话。
  4. 数据自动写入 localStorage;多个角色可存入角色库,随时载入或删除。

导入已有角色卡

  1. 通过 JSON 或 PNG(chara 内嵌)导入角色卡。
  2. 载入后对话记录与世界书随角色一并恢复(若此前已保存)。
  3. 修改后可再次导出 JSON 或 PNG,头像随 JSON 一并携带。

自定义模型

在模型设置中填写 OpenAI 兼容接口地址、API Key 和模型名,点击测试连接验证。API Key 仅保存在当前浏览器,不会写入 DSH 服务端配置。

适用场景与注意

适合谁

  • 希望在 DSH 内完成 SillyTavern 角色卡编辑与聊天,不想切换外部工具的用户。
  • 需要本地管理多角色、世界书,并偶尔导入导出 JSON/PNG 角色卡的创作者。
  • 想快速试用不同 OpenAI 兼容模型,又不想改动 DSH 全局 LLM 配置的场景。

注意事项

  • 插件以当前 DSH 进程权限运行,安装前建议阅读仓库源码与 BSD-3-Clause 许可证。
  • 角色卡、对话、世界书等主要存在浏览器 localStorage,清理站点数据会丢失本地内容;重要角色卡请定期导出 JSON/PNG 备份。
  • Release tarball 安装示例指向 v0.2.0;仓库 package.json 当前版本为 0.3.0,按需选择 npm、GitHub 或指定版本 tarball。
  • SkillHub 为社区目录,与 DeepSeek / 幻方无官方从属关系;插件由社区维护者 XCNXNXNX 发布。

结尾

dsh-portable-tavern 把 SillyTavern 式角色卡工作流嵌进 DSH Web GUI:生成、世界书、导入导出与聊天在同一面板完成,不额外依赖非官方 SDK。若你已在 DSH 里跑智能体,又需要轻量角色扮演环境,可从目录页或 GitHub 安装试用。

  • SkillHub 目录页:https://www.skillhub.cn/plugins/XCNXNXNX/dsh-portable-tavern
  • GitHub 仓库:https://github.com/XCNXNXNX/dsh-portable-tavern
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜