Repository navigation
v0.12.0 第二步:导入续传、麦麦表情 / 说法、世界书、批量记忆、恢复备份 + 抖音群聊 + 审查修正
第二步:导入续传、麦麦表情 / 说法、世界书、批量记忆、恢复备份 + 抖音群聊 + 审查修正
新功能
- 聊天记录导入断点续传:导到一半重启 / 崩溃,任务标成「中断」,设置页可「继续」(跳过已完成的段)或「放弃」;同一份文件再次预览时提示「上次导到一半」。
- 较早的聊天按时间段总结:以前每人只提炼最近 12 段、更早的直接丢;现在更早的部分按时间切成最多 4 个时间段做「那段时间大概聊了什么」的总结(超预算时先砍它们)。
- 导入麦麦的表情包、表达方式和黑话:认新旧两种库结构,先预览再导入;表情包进
_stickers/,黑话按群归属、没群的进「全局」分组(所有聊天都带)。 - 单独导入 SillyTavern 世界书:多本、开关 / 删除 / 试一试;正则、整词、次要关键词四种逻辑、概率、常驻、扫描深度、条数和字数预算;角色卡自带的世界书也走同一套匹配。
- 记忆批量操作:记忆页加搜索、按来源筛选、批量模式(勾选或按筛选),删除 / 恢复 / 改重要度 / 类型 / 私密,先 dryRun 显示条数,不带筛选拒绝「全部」。
- 设置页从备份恢复:先校验,标待恢复,重启 DSH 生效;换之前当前库另存一份(留 3 份可换回),重启前可取消。
- 抖音群聊按人区分:群消息按发言的人分别认人,规矩和 QQ 群一样——没人叫她只看不说,被叫到且开了「群里被叫到时回」(默认关)才回。
修的问题(审查发现)
- P0 备份恢复丢 WAL:换回去丢最后一次 checkpoint 之后的数据 → 另存后合并 WAL,合并不了就连 -wal 一起换。
- P0 续传时模型全挂被标「完成」→ 第一段没回或连着 3 段没回就停、标出错、可再继续。
- P0 世界书正则 ReDoS:一条 30 字消息卡死插件几十秒 → vm 限时 30ms,超时停用并记日志。
import_job清理(导完清 plan、留最近 20 份)、超长单行截断、空时间段不烧调用、聊天日志留 50 句(世界书扫描深度 50 名副其实)。
升级注意
- soul.db 新表
import_job(自动建);新配置lore.*、douyin.groupReply / callNames / groups(都有默认值,不用动)。 - 世界书命中条目排列从「卡里原顺序」改成「按优先级(order 大的先)」。
- 以前被当成私信的抖音群,旧会话和那个「群名的人」不会自动删,可在记忆 / 会话里手动清。
- 0.11.3 只发了 Git(tag + GitHub Release),npm 跳过;这版从 0.11.2 直接跳到 0.12.0,内容包含 0.11.3 的修复合集。
测试
新增 test/import-resume.mjs、maibot-extras.mjs、worldinfo.mjs、memory-bulk.mjs、backup-restore.mjs、douyin-group.mjs、review-fixes.mjs(全进 npm test,全绿)。