Releases: Darkatse/TauriTavern
Release list
Canary Release 2026.08.23
Canary build · China Standard Time 2026.08.23 · dev@76ef3cab52e6
更新日志
Agent 与 Skill
- Agent 现在可以通过
skill.run_script运行 Skill 包内的 JavaScript。脚本在隔离的 QuickJS 环境中执行,可按 Agent 的 workspace policy 读写文件,并读取世界书与 SillyTavern 变量快照。 - Skill 脚本支持 ES Module、Skill 自带模块和内置脚本工具库。运行环境不提供网络、进程、Node.js 或浏览器 API,并对执行时间、内存和输入输出设有明确限制。
模型与连接
- 新增 Gemini 3.7 Flash 与
deepseek-v4-flash-vision-exp的模型支持;deepseek-v4-flash-vision-exp可按模型能力使用视觉输入和思考档位。 - Moonshot 与 Chutes 中识别为 Kimi 的模型现在使用 Kimi 分词器进行本地 token 计数,不再回退到其他模型的分词器。
- 自定义 API 格式现在会传递
reasoning_effort。OpenAI 工具调用也会在多轮对话中保留供应商返回的extra_content。
搜索
- SillyTavern 的 SearXNG 搜索路由现在可用。访问用户配置的 SearXNG 地址前,应用会沿用原生端点授权流程。
- 其他尚未支持的搜索路由会明确返回失败;Web 页面与 YouTube 数据库抓取入口暂时隐藏。
Apple 平台
- 在 WebKit 支持时,macOS 与 iOS 的 WebView 会按屏幕原生刷新率渲染;不支持该能力的系统仍使用 WebKit 默认行为。
Release Notes
Agent and Skills
- Agents can now run JavaScript bundled with a Skill through
skill.run_script. Scripts execute in an isolated QuickJS environment, can read and write files allowed by the Agent's workspace policy, and receive read-only snapshots of world info and SillyTavern variables. - Skill scripts support ES modules, modules shipped with the Skill, and a built-in script toolkit. The runtime does not expose network, process, Node.js, or browser APIs, and applies explicit limits to execution time, memory, input, and output.
Models and connections
- Added model support for Gemini 3.7 Flash and
deepseek-v4-flash-vision-exp.deepseek-v4-flash-vision-expcan use vision input and reasoning tiers according to its model capabilities. - Kimi models recognized through Moonshot and Chutes now use the Kimi tokenizer for local token counts instead of falling back to another model's tokenizer.
- Custom API formats now pass through
reasoning_effort. OpenAI tool calls also preserve provider-returnedextra_contentacross conversation turns.
Search
- SillyTavern's SearXNG search route is now available. Requests to a user-configured SearXNG address use the existing native endpoint approval flow.
- Other unsupported search routes fail explicitly. The Web page and YouTube Data Bank scraper entries are hidden for now.
Apple platforms
- On WebKit versions that support it, WebViews on macOS and iOS render at the display's native refresh rate. Other systems continue to use WebKit's default behavior.
v2.2.0
2.2.0 版本更新
Canary版本更新
- 现在Canary版本会每日进行自动编译更新,第一时间尝到新功能和Bug修复
- 大概北京时间晚上6:30到7点更新
- Canary版本会自动提示有新的更新
- 可以在扩展 → TauriTavern版本处切换更新渠道
聊天DOM虚拟化
- 引入
@tanstack/virtual,实现聊天界面DOM虚拟化,从根本上彻底消除超长聊天带来的卡顿- 该功能需要到TauriTavern设置中手动开启
- 该功能与前端卡/MVU/ZOD等功能兼容,但是需要扩展进行适配。
- 请确保使用 酒馆助手 4.9.1以上版本
- 请确保使用 小白X 3.0.4以上版本
- 删除与上游不兼容的分片加载
性能优化
- 针对不同系统和硬件尽可能的进行了优化,推荐使用最新的系统/硬件进行体验
- 尤其是iOS/macOS,推荐OS 26.2以上
- 对打开大型聊天记录的卡顿进行了优化(即使不开启虚拟化DOM也有效,但是没有那么显著)
- 对生成聊天时的卡顿进行了优化
- 对流式传输时的卡顿进行了优化,感谢@exynos967 !
- 添加了角色/聊天/世界书/设置/分词器的热路径缓存
- 修复了世界书扫描时重复前缀扫描带来的性能问题,感谢@exynos967 !
备份系统
- 引入备份管理手动控制,可自行在TauriTavern设置中设置备份数量/空间等
- 引入Zstd压缩,可节省至少40%备份占用空间
- Zstd格式SillyTavern无法识别,请在设置中自行开启
- 消除频繁备份带来的卡顿
Git后端重构
- 采用原生Gitoxide重构后端的扩展管理,去除Git速率限制
- 现在支持所有标准Git协议网站了,例如Gitee,Codeberg等
杂项
- 重构README和下载页面
- 添加Mythos 5/Fable 5/Sonnet 5/Opus 5/GPT 5.6/Gemini 3.6 Flash/Kimi K3的支持
- 添加了Telegram频道与Discord服务器的邀请链接(建设中)
- 修复Android和Windows上的通知生命周期
- 修复替换/更新角色卡时发生的错误
- 修复了与SillyTavern-Moonlit主题存在的兼容性问题,感谢@exynos967 !
- 支持Gemini Interactions GA端点的最新格式
- 修复XHigh与Max推理强度的适配问题
- 修复退出应用后恢复旧聊天和角色的问题,感谢@exynos967 !
- 修复Agent模式下persist为空时的阻塞行为,感谢@gilgamesh1124 !
- 添加了Sync同步文件冲突策略选择,现在可以选择保留最新文件了,感谢@chinrw !
包管理器
- 支持Windows以及Linux大多数包管理器更新,macOS已经向HomeBrew Cask仓库提交PR等待合并
- Windows请使用Scoop进行安装
scoop bucket add Darkatse https://github.com/Darkatse/Scoop-Darkatse.git
scoop install Darkatse/TauriTavern
- Linux支持Debian/Ubuntu/Fedora/OpenSUSE/NixOS/Flatpak/Arch Linux
Debian · Ubuntu · Fedora · openSUSE · NixOS请用以下命令进行安装
curl -fsSL https://raw.githubusercontent.com/Darkatse/TauriTavern/main/scripts/install-linux.sh | sh
更多详情请见Github README
开发
- 将TauriTavern后端重构为Workspace Crates形式
- 重构大部分比较丑陋的模块
- 添加自动化Canary以及Stable打包
- 添加Tauri Pilot自动化测试
Version 2.2.0
Canary updates
- Canary builds are now compiled and published automatically each day, providing early access to new features and bug fixes.
- Updates are usually published between 10:30 AM and 11:00 AM UTC.
- Canary builds will notify you when a newer build is available.
- You can switch update channels under Extensions → TauriTavern Version.
Chat DOM virtualization
- Added chat DOM virtualization with
@tanstack/virtualto address performance issues caused by very long chat histories.- This feature must be enabled manually in TauriTavern Settings.
- It is compatible with frontend character cards, MVU, ZOD, and similar features, but extensions need to support the virtualization lifecycle.
- Compatible Tavern Helper v4.9.1 or later
- Compatible LittleWhiteBox v3.0.4 or later
- Removed the chunked chat-loading implementation that was incompatible with upstream SillyTavern behavior.
Performance
- Applied platform-specific optimizations where practical. Recent operating systems and hardware are recommended for the best experience.
- On iOS and macOS, OS 26.2 or later is recommended.
- Improved the performance of opening large chat histories. This also helps when DOM virtualization is disabled, though the improvement is less substantial.
- Reduced stuttering during message generation.
- Improved streaming performance. Thanks to @exynos967!
- Added hot-path caches for characters, chats, World Info, settings, and tokenizers.
- Removed repeated prefix scans during World Info processing. Thanks to @exynos967!
Backup system
- Added backup management controls to TauriTavern Settings, including limits for backup count and storage usage.
- Added Zstandard compression, which can reduce backup storage usage by at least 40%.
- SillyTavern does not recognize Zstandard-compressed backups. This format is therefore opt-in and can be enabled in Settings.
- Reduced stuttering caused by frequent backups.
Git backend
- Rebuilt extension management around the native Gitoxide implementation. Extension operations no longer depend on hosting APIs that are subject to rate limits.
- Extension repositories can now be hosted on services that support standard Git protocols, including Gitee and Codeberg.
Miscellaneous
- Reworked the README and download page.
- Added support for Mythos 5, Fable 5, Sonnet 5, Opus 5, GPT-5.6, Gemini 3.6 Flash, and Kimi K3.
- Added invitation links for the Telegram channel and Discord server. Both communities are still being set up.
- Fixed notification lifecycle issues on Android and Windows.
- Fixed errors when replacing or updating character cards.
- Fixed compatibility issues with the SillyTavern-Moonlit theme. Thanks to @exynos967!
- Added support for the latest Gemini Interactions GA endpoint format.
- Fixed support for XHigh and Max reasoning effort levels.
- Fixed an issue where the previous chat and character could be restored after exiting the application. Thanks to @exynos967!
- Fixed Agent Mode becoming blocked when
persistwas empty. Thanks to @gilgamesh1124! - Added a file conflict policy for Sync, with an option to keep the most recently modified file. Thanks to @chinrw!
Package managers
- Added package-manager support for Windows and most major Linux distributions. A PR has also been submitted to Homebrew Cask for macOS and is awaiting review.
- On Windows, install TauriTavern with Scoop:
scoop bucket add Darkatse https://github.com/Darkatse/Scoop-Darkatse.git
scoop install Darkatse/TauriTavern- Linux support includes Debian, Ubuntu, Fedora, openSUSE, NixOS, Flatpak, and Arch Linux.
- Debian, Ubuntu, Fedora, openSUSE, and NixOS users can install TauriTavern with:
curl -fsSL https://raw.githubusercontent.com/Darkatse/TauriTavern/main/scripts/install-linux.sh | shSee the GitHub README for more information.
Development
- Reorganized the TauriTavern backend as a Rust workspace with separate crates.
- Refactored and cleaned up a number of legacy modules.
- Added automated Canary and Stable packaging workflows.
- Added automated testing with Tauri Pilot.
What's Changed
- Handle missing empty persistent roots by @gilgamesh1124 in #107
- fix(ui): 修复移动端主题下聊天输入框宽度异常 by @exynos967 in #127
- fix(session): 修复退出应用后恢复旧聊天和角色的问题 by @exynos967 in #126
- perf: world info tokenization by @exynos967 in #134
- perf: prompt preview scheduling by @exynos967 in #135
- fix: Tauri 构建流程和Rust 质量问题 by @exynos967 in #137
- perf(streaming): 减少流式输出中的重复 DOM 更新 by @exynos967 in #138
- fix(test): make tauri-ready contract tests deterministic across platforms by @gaogao-gao in #147
- Bump version to 2.2.0 by @Darkatse in #151
New Contributors
- @gilgamesh1124 made their first contribution in #107
- @gaogao-gao made their first contribution in #147
Full Changelog: v2.1.1...v2.2.0
v2.1.1
v2.1.1 版本主要改动
多设备同步
- 将同步协议全面从http为基础的v1协议换到了tls加密的v2协议,数据更安全。因为苹果政策之前会被阻断的iOS端现在也可以正常进行局域网同步了
- 大幅优化了传输速度,采用Zstd+bundle传输替代了之前的per-file,实测局域网互传可达30MB+/s
- 新增了
同步内容自主可选,可以自己指定只同步哪些内容。 - 新增了
自动同步功能,可按照指定的间隔时间自动上传到特定设备。 - 新增了同步功能端口可以随App启动一同打开,不用再单独开启
Agent系统
- 新增
Agent 接力,允许多个不同的 Agent 串行接力进行撰写- 对应的 Agent Profil e面板/运行时间线面板已更新,支持显示 Agent 接力状态
- 新增
Agent运行引导,在 Agent 运行时可以输入内容并点击发送,输入内容会作为引导消息指引 Agent 下一步的操作 - 宽容 Agent Profile 中指定的预设/模型未找到的情况,不再阻塞面板启动
- 现在未找到时会提示进行修正
- Agent Profile 中指定的预设更名时,对应的 Agent Profile 中字段会同步更名
- Agent 持久化状态的删除更加宽容,避免出现删除范围扩大的情况
- 在Agent扩展面板中添加了输入框内 Agent 按钮的隐藏/启用开关
- 现在 Agent 在工作中的独白会出现在 Agent 运行面板中
- Agent 运行面板现在在移动端可以通过左右滑动切换时间线/详情页面
Agent 历史运行管理
- 在Agent System面板添加了
运行历史查看,可以回顾之前的Agent运行事件 - 添加了对过往Agent运行记录的扫描与清理
- 添加了对过往Agent运行记录的自动清理开关
功能改进
- 规范化 OpenRouter 推理强度,感谢@yhny1001
- 对支持的模型添加
xhigh推理强度,不支持的会自动回落到high - 添加了GLM-5.2模型相应支持
- Linux 下为 AppImage 捆绑必要的 GStreamer 媒体插件
- Linux 下默认默认禁用 WebKitGTK DMA-BUF 渲染器,提高对 nVidia 显卡的兼容性
- 改进 Linux 桌面软件包元数据和媒体依赖项
- 将 Agent 内嵌资源扫描与角色导入解耦,防止出现导入不稳定
- 为输入框内的长消息添加了
全屏编辑器,编辑体验更加舒适 - 调整输入栏全屏按钮的样式,与大多数主题美化兼容
- 酒馆助手与小白X启用时,自带的代码渲染扩展自动进行避让
- 优化了导入大文件时的内存占用
- 遇到网络波动时,显示具体的连接错误信息,代替模糊的error sending request for url
- 基于Vue3重构了TauriTavern设置面板,便于后续扩展
- 将上游1.18.0版本新增的字符串全部做了简体中文/繁体中文翻译
- 添加了
动态切换壁纸功能,现在可以根据设备的日/夜模式自动切换指定的壁纸了 - 为日志与同步面板新增了快捷slash command命令
/syncpanel与/lansync可打开同步面板/frontendlog与/consolelog可打开前端日志面板/backendlog可打开后端日志面板/llmlog可打开LLM API 日志面板
Bug修复
- 容忍部分扩展传入的 custom_* 请求体作为原生 JSON 对象注入的行为
- 修复
减少动态效果打开时,部分弹窗的抽搐行为 - 对Skill的导入行为更加宽容,不会让损坏的Skill阻塞整个流程
- 修复极小概率下上游 PromptManager 会在 settings.json 中写入 null 值,从而炸掉启动流程的问题
- 重构了 Android 文件导出桥,不会再保存到应用内部数据目录了
- 移除了对角色文件名的不必要清理
- 修复了保存的模型 API 密钥发生更新后,对应的 Agent 运行时使用的密钥不会及时更新的问题
- 修复了新建角色时,导入头像失败会卡住整个流程的问题
- 修复了部分第三方扩展的弹窗在移动端进行键盘输入时会抽搐的问题
- 修复了之前世界书改名不允许开头空格的问题
- 修复了切换分片加载与全量加载时容易错误写入聊天记录导致之前的聊天记录丢失情况的问题,感谢@1756141021
- 修复了分片加载下
/hide命令无法隐藏不在分片内的楼层的问题,感谢@1756141021
开发
- 将前端打包从Webpack迁移至Rspack
- 将Arm64 APK命名改为 Arm64-v8a ,符合标准ABI命名规范
下个版本会有什么
- 前端内存管理重构,尝试在全量加载的同时保持可控的性能消耗
- 备份管理系统重构,可控且节省空间
- 停下脚步,清理一些技术债
- 更新README/文档/GitHub贡献指南等
v2.1.1 Release Notes
Multi-Device Sync
- The sync protocol has been upgraded from the HTTP-based v1 protocol to the TLS-encrypted v2 protocol, improving data security. LAN sync on iOS now works normally as well, where it was previously affected by Apple platform policies.
- Transfer speed has been significantly improved. Zstd-compressed bundled transfers now replace the previous per-file transfer approach, reaching over 30 MB/s in LAN testing.
- Added selectable sync content, allowing users to choose exactly which data should be synced.
- Added automatic sync, allowing uploads to a selected device at a configured interval.
- The sync service port can now be opened automatically when the app starts.
Agent System
- Added
Agent Handoff, allowing multiple different Agents to write in sequence.- The Agent Profile panel and Run Timeline panel have been updated to show handoff status.
- Added
in-run Agent guidance. While an Agent is running, users can enter guidance and send it to steer the Agent’s next steps. - Agent Profiles are now more tolerant when a configured preset or model cannot be found, and no longer block the panel from opening.
- A correction prompt is now shown when this happens.
- When a preset referenced by an Agent Profile is renamed, the corresponding Agent Profile field is now updated as well.
- Deleting persisted Agent state is now more tolerant and avoids unintentionally broad deletion scopes.
- Added a toggle in the Agent extension panel to show or hide the Agent button inside the input box.
- Agent narration during work is now shown in the Agent run panel.
- On mobile, the Agent run panel now supports swiping left and right to switch between the timeline and detail views.
Agent Run History
- Added Run History to the Agent System panel, allowing previous Agent run events to be reviewed.
- Added scanning and cleanup for past Agent run records.
- Added an automatic cleanup toggle for old Agent run records.
Improvements
- Normalized OpenRouter reasoning effort handling. Thanks to @yhny1001.
- Added
xhighreasoning effort for supported models. Unsupported models automatically fall back tohigh. - Added support for GLM-5.2 models.
- Bundled the required GStreamer media plugins for AppImage builds on Linux.
- Disabled the WebKitGTK DMA-BUF renderer by default on Linux to improve NVIDIA GPU compatibility.
- Improved Linux desktop package metadata and media dependencies.
- Decoupled Agent embedded asset scanning from character import to improve import stability.
- Added a full-screen editor for long messages in the input box.
- Adjusted the style of the input bar full-screen button for better compatibility with most custom themes.
- The built-in code rendering extension now automatically yields when JS-Slash-Runner or LittleWhiteBox is enabled.
- Optimized memory usage when importing large files.
- When network instability occurs, specific connection errors are now displayed instead of the vague
error sending request for url. - Refactored the TauriTavern settings panel with Vue 3 to make future expansion easier.
- Added Simplified Chinese and Traditional Chinese translations for all new upstream strings from version 1.18.0.
- Added dynamic wallpaper switching, allowing wallpapers to change automatically according to the device’s day/night mode.
- Added slash commands for opening the log and sync panels:
/syncpaneland/lansyncopen the sync panel./frontendlogand/consolelogopen the frontend log panel./backendlogopens the backend log panel./llmlogopens the LLM API log panel.
Bug Fixes
- Tolerated cases where some extensions inject
custom_*request bodies as native JSON objects. - Fixed jitter in some popups when reduced motion is enabled.
- Made Skill import more tolerant, so a damaged Skill no longer blocks the entire flow.
- Fixed a very rare issue where upstream PromptManager could write
nullvalues intosettings.jsonand break startup. - Refactored the Android file export bridge so files are no longer saved into the app’s internal data directory.
- Removed unnecessary sanitization of character file names.
- Fixed an issue where updated saved model API keys were not picked up promptly by Agent runs.
- Fixed an issue where character creation could get stuck if avatar import failed.
- Fixed keyboard-related jitter in some third-party extension popups on mobile.
- Fixed an issue where world book renaming did not allow leading spaces.
- Fixed an issue where switching between windowed loading and full loading could incorrectly write chat records and cause previous chat history to be lost. Thanks to @1756141021.
- Fixed an issue where the
/hidecommand could not hide messages outside the currently loaded windowed slice. Thanks to @1756141021.
Development
- Migrated the frontend build system from Webpack to Rspack.
- Renamed Arm64 APK builds to
arm64-v8a, matching the standard ABI naming convention.
What’s Next
- Refactor frontend memory management to keep memory usage under control while supporting full loading.
- Refactor backup management for better control and storage efficiency.
- Take time to clean up technical debt.
- Update the README, documentation, GitHub contribution guide, and related project materials.
What's Changed
- fix(chat): accept object/array custom_* override fields by @yhny1001 in #79
- Fixing Linux experience-related issues by @Darkatse in #81
- fix(ci): use pnpm 10 for prerelease builds by @Darkatse in #83
- fix(chat): normalize OpenRouter reasoning effort by @yhny1001 in #85
- fix: prevent data loss when saving with stale cursor from mode switch by @1756141021 in #90
- feat: add /hide all and /hide before for windowed chats by @1756141021 in #91
- i18n: localize /hide all and /hide before strings in 16 locales by @1756141021 in #92
- fix: add input validation for tauri bridge interface by @MatrixNeoKozak in #95
- Bump version to 2.1.1 by @Darkatse in #98
New Contributors
- @1756141021 made their first contribution in #90
- @MatrixNeoKozak made their first contribution in #95
Full Changelog: v2.1.0...v2.1.1
v2.1.0 - 试试SubAgent吧!
SubAgent文档已经更新
Testflight Canary测试邀请链接 (内部测试,更新频繁,但是可能有Bug)
本次更改内容:
Agent系统
- Agent目前可以独立指定预设与模型,与当前实际选择状态彻底解耦
- 请注意,模型需要先在API连接管理中先保存过仅有模型的配置
- 新增SubAgent支持,主Agent可以派出子Agent完成次级任务,随后根据子Agent的汇报结果继续推进工作
- 子Agent可以设置独立的预设与模型
- 当前生效的Agent配置会在面板中着重显示,并可用下拉框进行切换。编辑其余配置不会影响实际生效的配置。
- workspace write file工具允许在已有文件后追加新的内容,而不用全部重写(append mode)
- 新增掷骰子工具dice roll,采用dnd基本掷骰规则,跑团玩家狂喜。此工具默认禁用
- Agent前端运行面板现在可以看到从头到尾所有的历史轮次调用了,不会被剪裁
- 修复了Agent 读取skill时强制限制最高80k tokens内容的问题,现在遵循Agent配置中的数值了
- 修复了Agent Result未正确处理,造成Agent性能下降的问题
- 不再强制要求Agent System Prompt为System Role,与DS缓存优化脚本等兼容
- 注意,Agent System Prompt不为System可能会造成效力下降,请自行权衡利弊
- Agent模式下直接输出内容不再立即失败,而是存放到
output/direct_output.md文档内,以便之后重新利用。这次失败请求的返回消息中会引导Agent使用工具而非直接输出。 - 修复了Agent模式下Swipe可以看到之前的被Swipe掉的最后一层楼的问题。
- 对请求成功但解析失败的Agent过程,允许进行重试。感谢@yhny1001
- 当Agent误将文件夹当作文件读取时不再立刻失败,允许进行一次重试。感谢@yhny1001
- 若Agent在提交过一次内容后发生指令漂移(例如输出的内容不合法),允许进行一次重试,而不是直接失败。感谢@yhny1001
- 当Agent运行失败后自动回滚消息,感谢@yhny1001
- 优化了内置的默认Agent系统提示词,感谢@makerlinck
- 增加了一些Agent犯蠢时候的兜底
Skill管理
- 将skill管理变为单独的扩展面板
- 引入
全局/预设/Agent配置/角色卡四级层级划分,多预设skill不再互相干扰 - 可以在前端直接进行skill内容修改
- 新增了SKILL复制导入以及从网络下载导入的选项
- 将SKILL默认导出格式更改为.zip
更新上游1.18.0
- 同步上游1.18.0更改,具体更改内容可查看
Bug修复
- 修复了正则的Rust后端加速会执行已经禁用的正则的问题
- 修复了iOS上无法删除背景的问题
- 修复Android端偶发的移动文件不稳定问题
- 修复更新1.18.0前端后部分界面输入法抬高适配失效的问题
- 恢复支持部分旧群聊文件,读取时不再报错
杂项
- 允许添加自定义模型 名称
- 允许只保存模型连接配置,将预设与模型解耦
- 可以直接导入SillyTavern网页备份的数据压缩包
- 新增Claude Opus 4.8模型
- 新增xhigh与max推理强度,自动适用于OpenAI或Claude的支持模型
- 接入AWS Bedrock渠道
- 重命名OpenRouter应用归属请求标头 - 允许对所有渠道添加附加参数,感谢@exynos967
- 可以使用 /trigger 激活agent模式,感谢@calm-prussian
- 可以使用 /llmlog 命令快速打开LLM API Log面板,感谢@Moeblack
- 数据迁移扩展允许导入.tar.gz压缩文件
下个版本会有什么
- 多Agent接力
- 同步功能小修,加入Agent文件同步
- 历史Agent运行回顾与管理
SubAgent Documentation Has Been Updated
Testflight Canary Test invitation link (internal testing, frequently updated, but may contain bugs)
Changes in this release:
Agent System
- Agents can now specify their own presets and models independently. They are no longer tied to the currently selected preset or model in the main chat.
- Note: the model must first be saved as a model-only configuration in API Connection Management.
- SubAgent support has been added. A main Agent can delegate secondary tasks to child Agents, then continue working based on the SubAgent reports.
- SubAgents can use their own presets and models.
- The currently active Agent Profile is now highlighted in the panel and can be switched with a dropdown. Editing other Profiles does not change the Profile currently used for runs.
- The
workspace.write_filetool can now append content to an existing file instead of rewriting the whole file. - Added the
dice.rolltool. It uses basic D&D-style dice notation and may be useful for tabletop and roleplay scenarios. This tool is disabled by default. - The Agent frontend run panel can now show the full run history from start to finish without tail-only truncation.
- Fixed the hard 80k-token cap when Agents read Skills. Skill reading now follows the values configured in the Agent Profile.
- Fixed incorrect Agent Result handling that could reduce Agent performance.
- Agent System Prompt is no longer forced to use the System role. This improves compatibility with cache optimization scripts and similar setups.
- Note: using a non-System role for Agent System Prompt may reduce its effect. Please choose based on your own setup.
- Direct text output in Agent Mode no longer fails immediately. It is saved to
output/direct_output.mdso it can be reused later. The failure response now guides the Agent to use tools instead of replying directly. - Fixed an issue where Agent Mode swipe generation could see the last discarded swipe layer.
- Agent runs can now retry when the request succeeds but response parsing fails. Thanks to @yhny1001.
- When an Agent mistakenly reads a folder as a file, the run no longer fails immediately and can retry once. Thanks to @yhny1001.
- If an Agent drifts after committing once, for example by producing invalid output, it can retry instead of failing immediately. Thanks to @yhny1001.
- Agent failure now rolls back the message automatically. Thanks to @yhny1001.
- Improved the built-in default Agent system prompt. Thanks to @makerlinck.
- Added more fallback handling for common Agent mistakes.
Skill Management
- Skill management has been moved into its own extension panel.
- Added four Skill scopes:
global,preset,Agent Profile, andcharacter card. Skills from different presets no longer interfere with each other. - Skill content can now be edited directly from the frontend.
- Added options to import Skills by copying them in, and to import Skills from a network download.
- The default Skill export format is now
.zip.
Upstream 1.18.0 Update
- Synced upstream changes from SillyTavern 1.18.0. For details, see:
Bug Fixes
- Fixed an issue where Rust backend regex acceleration could execute disabled regex rules.
- Fixed background deletion on iOS.
- Fixed occasional unstable file moves on Android.
- Fixed input method lift adaptation issues in some UI areas after updating the frontend to 1.18.0.
- Restored support for some older group chat files. They no longer fail during loading.
Miscellaneous
- Custom model names can now be added.
- Model connection configurations can now be saved without presets, allowing presets and models to stay decoupled.
- SillyTavern web backup archives can now be imported directly.
- Added the Claude Opus 4.8 model.
- Added
xhighandmaxreasoning effort levels. They can be applied to supported OpenAI or Claude models. - Added AWS Bedrock channel support.
- Renamed the OpenRouter application attribution request header.
- Additional parameters can now be added to all channels. Thanks to @exynos967.
/triggercan now activate Agent Mode. Thanks to @calm-prussian.- Added the
/llmlogcommand to quickly open the LLM API Log panel. Thanks to @Moeblack. - The data migration extension can now import
.tar.gzarchives.
What Is Coming Next
- Multi-Agent handoff.
- Sync improvements, including Agent file sync.
- Agent run history review and management.
What's Changed
- example: add recommend agent instruction of deepseek-v4-series_ZH and deepseek-v4-series_EN by @makerlinck in #43
- 【功能】【低优先级】新增
/llmlog斜杠命令,快捷打开 LLM API 日志窗口 by @Moeblack in #50 - feat(openai): 允许非自定义提供商添加附加参数 by @exynos967 in #64
- feat(diagnostics): log upstream body preview when chat completion JSON parse fails + reclassify as transient by @yhny1001 in #61
- fix(agent): translate directory access to recoverable error (#54) + emit run_rollback_targets on instruction drift (#55) [backend] by @yhny1001 in #62
- fix(agent): wire #55 frontend UI to userRetryable + run_rollback_targets by @yhny1001 in #63
- feat(agent): soft drift recovery for model.tool_call_required + strengthen workspace.commit hint by @yhny1001 in #68
- feat: 允许 /trigger 斜杠命令触发 Agent 模式 by @calm-prussian in #58
- Sync/upstream 1.18.0 by @Darkatse in #71
- fix(chat): custom_* 附加参数字段容忍 JSON null by @yhny1001 in #77
- feat(chat): 新增 AWS Bedrock 通道(7 大 provider + 自定义入口) by @yhny1001 in #76
- version 2.1.0 by @Darkatse in #78
New Contributors
- @makerlinck made their first contribution in #43
- @exynos967 made their first contribution in #64
- @yhny1001 made their first contribution in #61
- @calm-prussian made their first contribution in #58
Full Changelog: v2.0.0...v2.1.0
v2.0.0 - Welcome to Agent Roleplay!
TauriTavern 2.0.0 预览版发布
喜报,TauriTavern 正式引入Agent能力啦!
欢迎阅读Agent系统具体文档!
最近🦞这么火热,想必大家应该多多少少知道Agent是什么吧?
之前的TauriTavern仍然局限于原始SillyTavern的生成框架,调用LLM后只能等待AI生成One-Shot结果,若有任何不满或瑕疵只能重新生成。
这样的能力放在SillyTavern诞生的2023年或许合理,但是在AI Agent能力大幅跃进、Agent多轮调用/修改成为常态的当下已经是全方位落后了。
而且,这样的架构几乎已经走到了它的极限。社区内也多多少少出现了各种异步处理。那么,我们何不直接向前推一步,直接加入完整的Agent功能呢?
没错,TauriTavern就是这样做的
那么,引入Agent以后可以解决什么问题呢?
- 有了多轮修改能力,可以自行查杀八股,八股可以大大减少了
- 有了多次提交能力,变量也可以单独更新,再也不掉变量了
- 多次提交对于短对话更是重大利好,更有活人感!
- 加入了最新最in的SKILL能力。什么?你想让AI抄江南老贼的龙族?没问题哦~
- 更多玩法等待大家的思路哦~
TauriTavern的Agent思路很简单,基本上就是“万物皆文件”的抽象思路。每次Agent启动后都会在后台启动单独的文件夹,Agent可以在里面进行增删查改,例如手动搜索历史记录、搜索世界书激活消息、阅读SKILL,修改草稿和正文。输出结束后还能将长期记忆等写入persist文件夹,以便下轮Agent运行继续使用。
目前引入的Agent能力:
| Agent 工具 | 作用说明 |
|---|---|
chat.search |
只读搜索当前聊天,返回 message index、snippet 与 ref |
chat.read_messages |
只读按 message index 读取当前聊天消息,可读取字符范围 |
worldinfo.read_activated |
只读读取本轮 run 捕获的最终激活世界书条目 |
skill.list |
只读列出已安装 Skill 索引摘要 |
skill.search |
只读搜索单个可见 Skill 内的 UTF-8 文本文件,返回 snippet 与 ref |
skill.read |
只读读取已安装 Skill 内的 UTF-8 文本文件或范围 |
workspace.list_files |
只读列出模型可见 workspace 文件 |
workspace.search_files |
只读搜索模型可见 workspace UTF-8 文本文件,返回 snippet 与 ref |
workspace.read_file |
只读读取 UTF-8 文本或范围,完整读取记录 read-state |
workspace.write_file |
写 run workspace 文件,成功后 checkpoint |
workspace.apply_patch |
单文件精确替换,成功后 checkpoint |
workspace.commit |
将 workspace 文件提交到当前 chat message |
workspace.finish |
结束工具循环,进入 run 收尾 |
简单使用指南:
点击发送键左边的图标可以启动Agent模式,长按可以打开Agent Profile面板,也可以在这里导入SKILLS
Agent运行中可以点击键盘上方的运行面板,实时观看Agent在干什么
超级好玩的
下一步准备加入的东西:
1、规划模式/Plan Mode,为Agent运行添加强制流水线
2、多模型切换,可以Claude打大纲后Gemini撰写正文
3、Agent运行的回滚与断点继续
4、更细致的Agent提示词调控、优化Agent工具
5、添加Agent八股Harness
6、MCP系统
等等等等...
除了Agent之外的更新:
1、正则加入了Rust后端加速,将正则解析时间压缩到原来的1/5
2、修复了iOS上无法使用Vertex的问题
3、角色卡的作者注释部分可以正常显示更新了
4、优化了聊天记录过多时聊天记录管理器崩溃的问题
欢迎多多尝试,Agent真的超级好玩!
TauriTavern 2.0.0 Preview Release
Greeeat news: TauriTavern now officially introduces Agent capabilities!
Read the full Agent system documentation here!
With 🦞 being so popular lately, most of you have probably heard at least a little about what an Agent is, right?
Previously, TauriTavern was still limited by the original SillyTavern generation framework: after calling the LLM, you could only wait for the AI to produce a one-shot result. If anything felt unsatisfying or flawed, the only real option was to regenerate.
That may have made sense back in 2023, when SillyTavern was born. But now that AI Agent capabilities have advanced so dramatically, and multi-turn Agent calls and revisions have become the norm, that old model has fallen behind in every direction.
And frankly, that architecture has nearly reached its limit. The community has already seen various attempts at asynchronous processing. So why not take one clean step forward and introduce full Agent functionality directly?
That is exactly what TauriTavern has done.
So what problems can Agent support solve?
- With multi-turn revision, the AI can hunt down and eliminate repetitive boilerplate by itself, greatly reducing cliché output
- With multiple commits, variables can now be updated independently, so they no longer get lost
- Multiple commits are especially beneficial for short conversations, making responses feel much more alive
- The latest and trendiest SKILL system is now included. What? You want the AI to write in the spirit of a Harry Potter-style fantasy adventure? No problem at all~
- Many more possibilities are waiting for everyone’s imagination
TauriTavern’s Agent design is simple: it follows an “everything is a file” abstraction. Each time an Agent starts, a separate folder is launched in the background. Inside it, the Agent can create, delete, search, and modify files: manually search chat history, search activated World Info messages, read SKILLs, and edit both drafts and final text.
After output is complete, it can even write long-term memory and other data into the persist folder, so the next Agent run can continue using it.
Currently introduced Agent capabilities:
| Agent tool | Description |
|---|---|
chat.search |
Read-only search of the current chat, returning message index, snippet, and ref |
chat.read_messages |
Read-only access to current chat messages by message index, with optional character ranges |
worldinfo.read_activated |
Read-only access to the final activated World Info entries captured during this run |
skill.list |
Read-only listing of installed Skill index summaries |
skill.search |
Read-only search of UTF-8 text files within a single visible Skill, returning snippet and ref |
skill.read |
Read-only access to UTF-8 text files or ranges within installed Skills |
workspace.list_files |
Read-only listing of model-visible workspace files |
workspace.search_files |
Read-only search of model-visible UTF-8 workspace text files, returning snippet and ref |
workspace.read_file |
Read-only access to UTF-8 text or ranges; full reads are recorded in read-state |
workspace.write_file |
Writes a file to the run workspace and checkpoints on success |
workspace.apply_patch |
Precise single-file replacement, with checkpoint on success |
workspace.commit |
Commits workspace files to the current chat message |
workspace.finish |
Ends the tool loop and enters run finalization |
Quick Start Guide
Tap the icon to the left of the send button to enable Agent Mode. Long-press it to open the Agent Profile panel, where you can also import SKILLs.
While the Agent is running, you can tap the run panel above the keyboard to watch what the Agent is doing in real time.
It is ridiculously fun.
Coming Next
- Plan Mode, adding a mandatory pipeline to Agent runs
- Multi-model switching, such as using Claude to draft an outline and Gemini to write the final text
- Agent run rollback and checkpoint resume
- More fine-grained Agent prompt controls and tool optimization
- An Agent boilerplate-output harness
- MCP system
- And much, much more...
Updates Beyond Agent
- Regex now uses Rust backend acceleration, reducing regex parsing time to roughly one-fifth of the original
- Fixed an issue where Vertex could not be used on iOS
- Author’s notes in character cards now display and update correctly
- Optimized crashes in the chat history manager when handling large chat histories
Please give it a try. Agent is genuinely a lot of fun!
What's Changed
- 支持将提示词附着到已有聊天消息 by @Moeblack in #26
- feat: 添加 MiMo TTS 和 Grok TTS 支持 by @RAMU324E in #31
- Add Mimo And Grok TTS to Next/2.0.0 by @Darkatse in #33
- 无障碍 in #35
New Contributors
Full Changelog: v1.6.5...v2.0.0
v1.6.5
1.6.5 版本更新日志
Testflight 公开测试已上线
请注意,由于需遵循iOS的政策,TestFlight版本有明确的功能限制
功能新增:
-
对比酒馆的破坏性更改:当删除角色时,链接的世界书也会一并删除
- 添加对DeepSeek V4 系列以及其新特性的支持
- 添加对Claude 4.7 Opus以及其新特性的支持
- 支持为自定义Claude格式启用缓存
- 添加TTS与Translate扩展 - 大幅减少打包后的应用体积
界面新增:
- iOS同步时添加申请本地网络权限的弹窗
修复:
- 修复User导入恢复的小问题
- 修复Android预设编辑页面键盘无法正确抬高的问题
- 为iOS/macOS添加弹窗支持
- 为iOS添加requestIdleCallback函数支持
- 为Android 平板补齐键盘抬高修正
- 酒馆助手查看提示词时不会生成空白楼层了
- 修复自定义Claude端点的模型获取问题
- 优化管理聊天文件的性能,现在应该很流畅了
- 修复iPad某些情况下被错误识别为macOS,从而导致TauriTavern设置无法打开的问题
- 修复某些情况下角色卡
create_date格式非法时前端排序错误问题 - 修正了iOS端错误日志导出路径
- 将用户取消视为Warning而非Error,避免弹出错误弹窗
开发:
- 添加从Sillytavern迁移的一键打包脚本
- fastool添加支持iOS不同policy的打包与测试
- fastool目前支持自动收集打包产物
- 从主线程中删除不必要的Async抽象
Version 1.6.5 Changelog
TestFlight Public Beta Now Live!
Please note that, in compliance with iOS policies, the TestFlight version has specific functional limitations.
New Features:
-
Breaking Change Compare to SillyTavern: Deleting a character will now also delete their linked WorldInfo
- Added support for the DeepSeek V4 series and its new features
- Added support for Claude 4.7 Opus and its new features
- Added support for enabling caching for Custom Claude Messages Endpoint
- Added TTS and Translate extensions
- Significantly reduced the size of the App bundle
UI Improvements:
- Added a pdialog to request local network permissions during Sync on iOS
Bug Fixes:
- Fixed minor issues related to Persona import and restoration
- Fixed an issue on Android where the keyboard would not correctly shift the view on the preset editing page
- Added popup/dialog support for iOS/macOS
- Added support for the
requestIdleCallbackfunction on iOS - Implemented keyboard view-shifting corrections for Android tablets
- Tavern-Helper will no longer generate empty message when previewing prompts
- Fixed issues with fetching available models for custom Claude endpoints
- Optimized performance for managing chat files; the experience should now be much smoother
- Fixed an issue on iPad where the device was sometimes incorrectly identified as macOS, preventing the TauriTavern-Settings from opening
- Fixed front-end sorting errors that occurred in certain cases when a character card's
create_dateformat was invalid - Corrected the export path for error logs on iOS
- Classified user cancellations as Warnings rather than Errors to prevent unnecessary error popups
Development:
- Added a one-click packaging script for migrating from SillyTavern
- Added support to
fastoolfor packaging and testing with different iOS policies fastoolnow supports automatic collection of build artifacts- Removed unnecessary Async abstractions from the main thread
v1.6.4
1.6.4 版本更新日志
功能新增:
- 在设置中添加了前端刷新按钮
- 允许桌面客户端手动选择数据目录
- 采用原子写入防止settings.json写入中途崩溃
- 新增御三家原生API格式兼容( OpenAI Response / Claude Message / Gemini Interaction )
- 稍微减少打包后的应用体积
修复:
- 修复Android端Vertex AI认证问题
- 绑定世界书丢失时的行为对齐上游
- 修复部分前端运行时处于blob模式时的重建失败
- 修复快速回复(QR)的角色/聊天部分未能正常激活的问题
- 角色导入时间目前会选取PNG创建时间
- 修复iPad上横屏模式时未避让状态栏的问题
- 修复了数据导入时UTF-8编码的中文文件名乱码的问题
- 优化日志查看器的性能
- 现在iOS上jsonl聊天日志文件可以正常导入
- 将所有可能的保存入口统一串行化,避免绕开TauriTavern的保存契约导致失败
开发:
- 为macOS 添加程序签名
Version 1.6.4 Changelog
New Features:
- Added a frontend refresh button to the Settings menu.
- Enabled manual selection of the data directory for the desktop client.
- Implemented atomic writes to prevent data corruption in
settings.jsonduring unexpected crashes. - Added native API format compatibility for the "Big Three" models (OpenAI Response / Claude Message / Gemini Interaction).
- Slightly reduced the overall size of the bundled application package.
Fixes:
- Fixed Vertex AI authentication issues on the Android client.
- Aligned the behavior for handling missing WorldInfo with the upstream standard.
- Fixed instances where frontend rebuilds failed while operating in blob mode.
- Fixed an issue where the Character/Chat sections of the Quick Reply (QR) feature failed to activate correctly.
- Character import timestamps now default to the creation time of the source PNG file.
- Fixed an issue on iPad where the UI failed to properly avoid the status bar in landscape mode.
- Fixed garbled text issues with UTF-8 encoded Chinese filenames during data imports.
- Improved the performance of the Log Viewer.
- JSONL chat log files can now be imported successfully on iOS.
- Unified and serialized all potential save entry points to prevent failures caused by bypassing TauriTavern's established save protocols.
Development:
- Added code signing for the macOS application.
Full Changelog: v1.6.3...v1.6.4
v1.6.3
1.6.3 版本更新日志
TauriTavern文档网站上线!(内容咕咕咕中)
功能新增:
- 酒馆内存占用降低,约能减少20%内存占用
- 新增增强版Claude提示词缓存系统
- 重写后端的PNG读写,避免读取超大PNG时的长度报错
- 提升流式传输稳定性
- 新增NanoGPT、Chutes、Groq与Cohere平台后端支持
界面新增:
- 目前明确多次拒绝通知权限后不会再次询问
- 正确支持Android端媒体文件协议,支持视频背景扩展
修复:
- 修复Android端沉浸模型下重载后顶栏不再沉浸的错误
- 修复Android端Vertex AI调用报错
- 修复特定情况下,全局世界书选择器不能正确显示下拉框的问题
- 目前正则表达式重新加载后可以正常发出重新渲染信号
- 强制重新生成操作为单并发,避免PVP脚本问题
- 强制加载更多信息操作为单并发,避免楼层增殖问题
- 修复了某些页面无法滑动到底部的问题
- 调整移动端密钥选择框,避免遮挡键盘
- 自动过滤Claude 4.5模型之后的top_p参数
开发:
- 为TauriTavern添加了全局的扩展数据储存API,扩展数据的储存更加方便
- 为TauriTavern添加了移动端布局适配API,一行代码解决移动端布局适配
- 添加了调试版本的安装包,可以看到网页控制台
Version 1.6.3 Changelog
TauriTavern Documentation Website (WIP)
New Features:
- Reduced memory usage in the TauriTavern (approximately a 20% reduction).
- Added an enhanced caching system for Claude prompts.
- Refactor the backend logic for PNG reading and writing to prevent length limits errors when processing extremely large PNG files.
- Improved the stability of streaming operations.
- Added backend support for NanoGPT, Chutes, Groq, and Cohere platforms.
UI Enhancements:
- The application will no longer repeatedly request notification permissions after the user has explicitly declined them multiple times.
- Added proper support for Android media file protocols, enabling support for video backgrounds.
Bug Fixes:
- Fixed an issue on Android where the top bar would exit "immersive mode" after reloading the page.
- Fixed errors related to Vertex AI API calls on Android devices.
- Fixed an issue where the Global WorldInfo selector dropdown would fail to display correctly under specific circumstances.
- Regex now correctly trigger a re-render signal after being reloaded.
- The Regenerate action is now restricted to a single-flight operation to prevent issues with automatic retry extension.
- The "Show More Message" action is now restricted to a single-flight operation to prevent duplicate message entries.
- Fixed an issue where certain pages could not be scrolled to the bottom.
- Adjusted the positioning of the API key selection box on mobile devices to prevent it from being obscured by the on-screen keyboard.
- Automatically filters the
top_pparameter for models newer than Claude 4.5.
Developer Updates:
- Added a global extension data storage API for TauriTavern, making it easier to store extension-specific data.
- Added a mobile layout adaptation API for TauriTavern, allowing developers to handle mobile layout adjustments with a single line of code.
- Added a debug build package that enables access to the web console for easier debugging.
Full Changelog: v1.6.2...v1.6.3
v6.1.1 TwoTurtles
TwoTurtles 6.1.1 版本
两只乌龟,嗯... 跑得慢?
功能新增:
- 添加动态主题功能,可以根据设备主题自动切换日间/夜间主题
- 设置中添加
允许暴露API密钥选项 - 设置中添加
加载角色头像原图选项 - 将deepseek分词器添加到内置资源
修复:
- 全面修复移动端界面错位问题
- 将移动端键盘抬高应用至绝大多数编辑框
- 修复了一个可能导致扩展无法加载的问题
开发:
- 添加了更详细的前端日志来源查看
v1.6.0 Creator Edition
1.6.0 版本 Creator Edition 更新内容
新增!
TauriTavern 独立远程同步服务器
可部署在VPS/NAS等服务器,远程备份TauriTavern数据。也可与原版Sillytavern双向同步!
详情请看:https://github.com/Darkatse/TT-Sync
新增!
TauriTavern Creator Extension 创作者扩展
使用全新规范化TauriTavern专属API,超方便的监控世界书条目激活/前后端日志/记忆条目的插入!
架构清晰分层严谨,可直接作为扩展适配的模板
详情请看:https://github.com/Darkatse/TauriTavern-Creator-Extension
功能新增:
- 在设置中新增日志查看器,现在可以查看:
- 前端日志
- 后端日志
- LLM原始请求记录
- 设置中支持填入自定义代理,后端所有的请求都会遵循代理
- 桌面客户端现在可以记住上一次打开时窗口的大小与位置
- 添加对大部分创意工坊Discord认证的支持
- 添加/api/sd API的后端支持,补全大部分绘图插件所需
- 添加原生iOS下载与导出
- 添加iOS/macOS全屏API支持
- 后端补齐群聊功能的支持
- 添加Vertex AI支持
- 添加视频壁纸支持
- 申请通知权限之前现在会弹窗说明
界面新增:
- 将所有可见内容完全汉化
- 现在达到Github速率限制时会提示,并不再重试
修复:
- 修复iOS加载某些主题时面板错位问题
- 世界书等排序顺序对齐上游
- 移动端预设界面UI修复
- 推理强度参数对齐上游
- 修复导入数据后API密钥需要重写填写的问题
- 允许使用返回键退出Lan-Sync扫码配对界面
开发:
- 添加TauriTavern专属的开发与世界书API
- 由于全屏API所需,将iOS最低构建版本提升至16.0