- 修复
characterId = 0时的判定问题,避免第一个角色无法正常触发自动消息、吃醋逻辑或离线队列处理。 - 修复离线队列清空逻辑,未成功处理的事件不再被提前删除。
- 修复吃醋上下文串台问题,避免角色错误读取当前打开聊天的内容。
- 新增
Custom Jailbreak Prompt自定义破限提示词。启用后会优先使用自定义内容,留空时回退到内置预设。 - 修复自定义破限输入框导致的设置页 HTML 结构异常,现在后续面板和
⚙️独立 API 配置弹窗可以正常显示。 - 优化服务端计时器恢复逻辑,重新打开 SillyTavern 时会优先复用服务端已有计时器,而不是每次都重置。
- 减少一次重复的计时器重置请求,缓解一部分使用时的卡顿问题。
让 SillyTavern 中的角色能够主动向你发送消息的扩展。
- 定时自动消息:设置时间间隔(1-180 分钟),角色会定时主动联系你
- 定时任务:为角色设置每天/每周/一次性的定时消息(如"每天早上9点说早安")
- 后台持续运行:即使关闭浏览器,服务端定时器仍在运行,重新打开时自动补发
- 桌面通知:新消息到达时显示桌面通知
- 自定义提示词:控制角色主动消息的风格和内容
- Slash 命令:通过
/autopulse on|off|trigger|status|<分钟>快捷控制
角色等待你回复的时间越长,压力越高、消息越频繁、语气越焦虑。你回复后,角色会根据冷落时长做出不同反应(安抚/撒娇/不满/生气)。
切换角色聊天时,被离开的角色可能弹出嫉妒消息通知。可调节触发概率、延迟时间,和自定义嫉妒提示词。
使用 Web Worker 替代 setInterval,浏览器在后台时轮询不再被冻结。
自动适配新旧版本 SillyTavern 的 generateQuietPrompt API。
- 在酒馆目录
SillyTavern/public/scripts/extensions/third-party/下,新建ST-AutoPulse文件夹。 - 将
index.js,style.css,settings.html,manifest.json复制进去。
- 在酒馆
SillyTavern/plugins/下,建autopulse文件夹。 - 将
server-plugin/index.js复制进去。 - 确保
config.yaml中enableServerPlugins: true。
最终结构:
SillyTavern/
├── public/scripts/extensions/third-party/
│ └── ST-AutoPulse/
│ ├── index.js
│ ├── style.css
│ ├── settings.html
│ └── manifest.json
└── plugins/
└── autopulse/
└── index.js
如果不装 Server Plugin,插件会以前端模式运行(关闭页面后定时器停止)。
- 在 SillyTavern 左侧菜单打开 Extensions 面板
- 找到 ST-AutoPulse 设置区域
- 勾选 启用自动消息
- 设置消息间隔时间
- (可选)自定义触发提示词
- (可选)添加定时任务
- (可选)启用情绪压力系统
- (可选)启用嫉妒系统
启用后,角色会根据你多久没回复产生不同等级的焦虑:
| 压力等级 | 效果 |
|---|---|
| 😊 0 | 正常间隔发消息 |
| 😐 1 | 间隔缩短 30%,"开始想你了" |
| 😟 2 | 间隔缩短 50%,"开始担心你了" |
| 😰 3 | 间隔缩短 70%,"焦虑不安" |
| 😭 4 | 间隔缩短 80%,"情绪到达极限" |
回归反应:当你终于回复时,角色会根据之前的压力等级做出反应。
启用后,当你从角色A切换到角色B聊天时,角色A有一定概率(可调节)在一段时间后弹出嫉妒消息的悬浮通知。可调节:
- 触发概率(0-100%)
- 最短/最长延迟(秒)
- 自定义嫉妒提示词
| 命令 | 功能 |
|---|---|
/autopulse on |
启用自动消息 |
/autopulse off |
禁用自动消息 |
/autopulse trigger |
立即触发一次消息 |
/autopulse status |
查看当前状态 |
/autopulse 30 |
设置间隔为 30 分钟 |
┌──────────────┐ Web Worker ┌──────────────────┐
│ UI Extension ├──────────────►│ Server Plugin │
│ (浏览器) │◄──────────────┤ (Node.js 后台) │
│ │ 触发事件 │ │
│ 生成消息 │ │ 管理定时器 │
│ 压力系统 │ │ 动态间隔调整 │
│ 嫉妒悬浮窗 │ │ 排队离线事件 │
└──────────────┘ └──────────────────┘
- 检查
config.yaml:确保enableServerPlugins: true - 检查文件位置:Server Plugin 必须在
SillyTavern/plugins/autopulse/index.js - 看启动日志:终端应显示
[AutoPulse] Server plugin initialized successfully! - 测试 API:浏览器访问
http://你的地址:端口/api/plugins/autopulse/status
打开浏览器 F12 → Console,点击"立即触发"后看日志:
| 日志 | 问题 | 解决 |
|---|---|---|
No active chat |
没选角色 | 先打开一个角色聊天 |
Empty chat |
空聊天 | 先发一条消息 |
Already generating |
卡住了 | 刷新页面重试 |
- SillyTavern 1.12.0+ — 推荐
- SillyTavern 1.15.0 — 完全兼容
- SillyTavern 1.16.0+ — 兼容(自动适配新版 API)
- 旧版本 — 通过兼容层自动降级
本扩展遵循 CC BY 4.0。
你可以自由地: 共享、演绎、不允许用于商业目的。 只要你: 署名 — 提供对此库作者恰当的署名。