Skip to content

feat(story-summary): 增加单聊天启用开关 - #81

Merged
Hhhhenrry-HA merged 1 commit into
RT15548:mainfrom
yyxyz0120:feat/story-summary-chat-toggle
Aug 3, 2026
Merged

feat(story-summary): 增加单聊天启用开关#81
Hhhhenrry-HA merged 1 commit into
RT15548:mainfrom
yyxyz0120:feat/story-summary-chat-toggle

Conversation

@yyxyz0120

@yyxyz0120 yyxyz0120 commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

功能说明

  • 保留扩展设置中的“剧情总结”总开关,作为模块的全局主开关
  • 在剧情总结面板顶部增加“当前聊天启用”开关,并将状态保存到当前聊天的元数据中
  • 当前聊天关闭后,停止自动总结、长期记忆注入、消息隐藏和后台向量维护
  • 保留剧情总结面板的入口和已有总结数据,方便玩家随时重新启用

测试

  • npm run test:story-summary:chat-toggle
  • npm run test:story-summary:runtime
  • 对本次修改的 JavaScript 文件运行 ESLint
  • 乱码检查
  • git diff --check

备注

仓库级相对导入检查依赖完整的 SillyTavern 宿主目录。当前仓库是独立扩展检出,因此该检查会因缺少宿主文件而失败,与本次修改无关。

@yyxyz0120 yyxyz0120 changed the title feat(story-summary): add per-chat enable toggle feat(story-summary): 增加单聊天启用开关 Jul 31, 2026
@Hhhhenrry-HA

Copy link
Copy Markdown
Collaborator

感谢贡献!想先确认一下单聊天独立开关的产品定位和实际使用场景:目前已有剧情总结全局开关,这个开关主要希望解决哪类“全局开启、仅当前聊天关闭”的需求?
另外,本 PR 将数据读取也绑定到了开关:
getStorySummaryMemoryText() 、getStorySummaryForEna() 返回空会影响电子书和Ena使用既有总结的行为。
这两处是预期设计吗?(看起来不是很明确)

@yyxyz0120

Copy link
Copy Markdown
Contributor Author

感谢贡献!想先确认一下单聊天独立开关的产品定位和实际使用场景:目前已有剧情总结全局开关,这个开关主要希望解决哪类“全局开启、仅当前聊天关闭”的需求? 另外,本 PR 将数据读取也绑定到了开关: getStorySummaryMemoryText() 、getStorySummaryForEna() 返回空会影响电子书和Ena使用既有总结的行为。 这两处是预期设计吗?(看起来不是很明确)

感谢提醒。这个开关主要是为了解决不同角色卡/聊天对剧情总结注入的兼容性差异。
例如“命定”这类卡,虽然可以正常生成和保存小白X的剧情总结数据,但角色卡自身的提示词设计并不适配小白X总结内容的读取和注入。因此,在支持剧情总结和不适配剧情总结的角色卡之间切换时,我希望只切换当前聊天的开关,而不需要反复修改扩展的全局开关;其他聊天仍然可以保持剧情总结启用。

getStorySummaryMemoryText() 和 getStorySummaryForEna() 随当前聊天开关返回空,是有意设计,不是遗漏。这里的开关定义为“当前聊天是否接入小白X的剧情总结体系”:关闭后,除了停止自动/手动总结、长期记忆注入、消息隐藏和后台向量维护,也不会再向 Ena、电纸书等其他模块暴露当前聊天的总结内容。

关闭开关不会删除已有的总结数据;重新启用当前聊天后,原有数据仍然可以继续使用。

如果只希望控制提示词注入,而保留 Ena 或电纸书读取已有总结,那么可以把开关范围缩小。但针对上述不适配总结注入的角色卡,我倾向于保留目前这种“当前聊天整体退出剧情总结体系”的语义。

@Hhhhenrry-HA
Hhhhenrry-HA merged commit e51c44d into RT15548:main Aug 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants