DSH Hub

Amakurai/dsh-liketavern

dsh-liketavern

UIWeb UI112 GitHub stars· updated 2026-09-27

A DeepSeek Harness (dsh) plugin — turns dsh web into a SillyTavern-style roleplay frontend: character cards, prompt presets, lorebooks, personas, BM25 long-term memory, world-state deltas, and rollback-able floor operations, all on the dsh agent runtime.

Install

npx @deepseek-ai/dsh plugin --profile web add github:Amakurai/dsh-liketavern#v0.4.3

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

dsh-liketavern DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/dsh-liketavern.svg)](https://dshhub.dev/plugins/dsh-liketavern)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from Amakurai/dsh-liketavern, cleaned of badges and images.

dsh-liketavern

在 DeepSeek Harness 的 dsh web 中使用角色卡、世界书与长期记忆,开启 Tavern 式角色扮演。

中文 | English

功能特性 · 核心概念 · 安装与升级 · 快速上手 · 日常使用

兼容范围 · 数据与备份 · 常见问题与诊断 · 文档指南 · 开发与调试 · 参与贡献


dsh-liketavern 是为 DeepSeek Harness(简称 dsh)打造的角色扮演插件。你可以直接导入 SillyTavern(简称 ST)规范的角色卡和提示词预设,在 dsh 原生环境中管理设定、推进剧情、分支出行和无损回滚。

  • 宿主负责:模型接入、长上下文聊天历史、工具调度与 Agent 运行时。
  • 插件负责:角色资产管理、ST 预设与提示词组装、剧情状态隔离(记忆/世界状态/变量)、交互卡与脚本沙箱。
  • 开箱即用:内置 EJS 模板引擎、酒馆助手接口子集、原生 MVU 支持;界面默认跟随宿主语言。

💡 第一次使用? 建议先阅读环境要求与安装并跟随快速上手 5 步走体验第一场对话;若需迁移现有 ST 资产,请先核对核心概念与兼容范围。


功能特性

模块特性与能力支持
🎭 角色卡与人设• 导入/导出 V1、V2、V3 规范的 PNG 与 JSON 角色卡<br>• 支持多开场白切换、内嵌世界书、卡内正则与 HTML 交互卡面<br>• 可恢复的收纳箱与防误删引用保护;人设提供全局/会话级 {{user}} 身份定义
📖 世界书与世界状态• 全局、角色专属、当前会话私有三级世界书体系<br>• 关键词触发(次要关键词/反向排除/逻辑与或)、常驻条目与递归扫描<br>• 剧情变化层(Delta Layer)自动记录设定在剧情中的新增、变更与失效
🧠 智能长期记忆• 基于 BM25 检索与时间衰减权重,模型在对话中按需自主读写<br>• 容量超限时在后台空闲期自动摘要压缩,并完整保留可溯源的原始归档
🌿 剧情分支与无损回滚• 重新生成、修改 AI 发言或回退时自动创建独立子会话<br>• 自动撤销未继承楼层的记忆、变量等剧情状态,原始会话与历史分支完好无损
⚡ EJS 模板引擎• 内置沙箱执行条件、循环、异步宏与装饰器<br>• 支持剧情/消息级变量、JSON/YAML 初值、JSON Patch、Zod、Lodash、Faker
📦 交互卡与脚本沙箱• 严格隔离的 iframe 卡面沙箱,支持三类脚本库(全局/预设/角色)<br>• 剧情变量自动持久化,支持同页剧情事件、世界书读写与消息局部刷新
🔄 原生 MVU 支持• 可选自动初始化与回复收口后的变量更新执行器<br>• 更新任务失败保留重试队列;兼容角色展示正则声明的状态栏占位符
🛠️ 模型工具与辅助生成• 7 个专用 PTC 工具(记忆检索/写入/更新、世界书按条读取、世界状态更新、资产列表/读取)<br>• 支持 AI 代答(生成用户发言并一键复制)与沿上下文继续生成

🧩 智能工具调用:角色扮演默认直接流畅回复;仅在缺失关键设定或需要固化重要剧情事实时,模型才会精准调用工具,兼顾沉浸感与长期一致性。


核心概念

在开始使用前,了解以下核心概念有助于更好地理解插件的运作机制:

flowchart LR
    subgraph Shared["共享资产 (复用)"]
        Card["角色卡 (Character)"]
        Preset["提示词预设 (Preset)"]
        Persona["用户人设 (Persona)"]
    end

    subgraph Runtime["运行时 (隔离)"]
        Session["宿主会话 (Session)"] --> Story["独立剧情状态 (Story)"]
        Story --> Mem["长期记忆 / 变化层"]
        Story --> Vars["卡片变量 / 局部世界书"]
        Story --> WAL["事务回滚日志 (WAL)"]
    end

    Shared -.->|"绑定到"| Runtime
概念说明与边界
Tavern 模式dsh 的专用会话预设,用于激活本插件的角色扮演 Agent 运行时。新建会话时选择即可开启。
提示词预设在「Tavern → 预设」中管理的 ST 提示词模板与结构配置。可绑定到会话,也可直接使用内置默认预设。
角色卡 vs 人设角色卡定义 AI 扮演的角色身份与背景;人设定义你在故事中的身份,并为提示词提供 {{user}} 的姓名与设定。
世界书 / 记忆 / 世界状态世界书提供静态世界观;记忆记录发生的剧情事实;世界状态动态维护世界设定在故事中的新增与失效。
会话 vs 剧情分支会话记录线性的聊天消息;剧情保存插件内部的记忆、变量与状态。重新生成等操作会派生出子会话与独立子剧情。
原生 MVUModel-View-Update 变量更新框架。插件内置了安全的轻量执行器,支持依赖数据流驱动的复杂角色卡。

安装与升级

环境要求

依赖项最低要求说明
Node.js≥ 24.0.0开发与 CI 环境均基于 Node 24
dsh CLI / 宿主0.1.7-rc.2插件的宿主 Peer 依赖锁定此版本
pnpm任意主流版本用于 dsh plugin 自动拉取与管理依赖
模型配置已在 dsh 中完成配置确保在宿主中可以正常发起对话

📌 首次接触 dsh?建议先查阅 DeepSeek Harness 官方文档,运行一次 dsh web 完成基础配置。


方式一:通过 dsh plugin 安装(推荐)

在终端中执行以下命令,固定安装到最新稳定标签:

# 1. 添加插件到 web profile
dsh plugin --profile web add github:Amakurai/dsh-liketavern#v0.4.3

# 2. 检查安装状态
dsh plugin --profile web list --depth 0

# 3. 启动 dsh web(若已在运行,请先停止再启动)
dsh web

本仓库已包含预编译的 lib/ 产物,无需本地配置 TypeScript 构建环境。


方式二:通过 Release 安装包(离线环境)

…

Related plugins