让麦麦选择性"失忆",忘记之前的对话~
这个插件可以让管理员控制麦麦"忘记"对话记忆,实际上是清除聊天的消息历史记录。
- 💫 完全失忆 - 忘记所有对话(完全断片)
- 🌀 选择性失忆 - 忘记最近N条对话
- ⏰ 时间倒流 - 忘记N小时前的对话
- 💥 彻底失忆 - 清除所有数据,包括人物印象、群组信息、日记等(v1.1.0新增)
- 🔐 权限控制 - 只有管理员才能让麦麦失忆
/失忆 [子命令] [参数]
也可以使用:/忘记、/断片、/amnesia、/forget、/clear
| 命令 | 英文 | 参数 | 说明 |
|---|---|---|---|
全部 |
all |
无 | 让麦麦忘记当前聊天的所有对话 |
完全 |
total |
确认 |
|
最近 |
recent |
[数量] | 让麦麦忘记最近N条对话(默认10条) |
之前 |
before |
[小时] | 让麦麦忘记N小时前的对话(默认24小时) |
帮助 |
help |
无 | 显示使用帮助 |
# 清除当前聊天的所有记忆
/失忆 全部
/forget all
# 忘记最近的对话
/失忆 最近 20
/amnesia recent 20
# 忘记48小时前的对话
/失忆 之前 48
/forget before 48
# 完全失忆(需二次确认)
/失忆 完全
# 查看警告后,在30秒内通过以下任一方式确认:
/失忆 完全 确认 # 方式1:命令确认
确认 # 方式2:直接回复确认
# 查看帮助
/失忆 帮助这是最彻底的失忆模式,会清除麦麦的所有记忆数据,包括:
- ✅ 所有聊天记录 - Messages表
- ✅ 聊天流信息 - ChatStreams表
- ✅ 个人印象 - PersonInfo表(认识的所有人)
- ✅ 群组信息 - GroupInfo表(群组印象、话题)
- ✅ 表达风格 - Expression表(学习到的说话风格)
- ✅ 动作记录 - ActionRecords表
- ✅ 聊天历史概括 - ChatHistory表(长期记忆)
- ✅ 思考记录 - ThinkingBack表(记忆检索思考)
- ✅ 俚语黑话 - Jargon表(学习的俚语和黑话)
- ✅ 风格学习 - learnt_grammar、learnt_style
- 🔒 系统配置
- 🔒 插件功能
- 🔒 表情包资源
- 🔒 UUID(唯一标识)
- 🔒 统计数据 - Token使用量、费用统计、请求次数等(系统运营数据)
- 🔒 日记数据(由日记插件独立管理)
- 发送
/失忆 完全 - 查看警告信息,了解清除范围
- 在30秒内通过以下任一方式确认:
- 方式1:发送命令
/失忆 完全 确认 - 方式2:直接回复文字
确认
- 方式1:发送命令
- 等待清除完成,查看简化统计报告
确认机制说明:
- ⏰ 确认请求有30秒超时限制
- 🔒 必须在同一个聊天中确认
- 🚫 超时后需要重新发起请求
- ✅ 支持命令和直接回复两种确认方式
统计报告说明:
- 用户界面只显示总计数字(避免消息过长被截断)
- 详细统计数据会记录在日志中
- 重要:统计报告消息本身也会被清除,不留记录(真正的完全失忆)
- 示例输出:
💫✨ *完全失忆完成* ✨💫 我...我是谁?这里是哪里? 📊 清除了 XXX 项记忆数据 麦麦现在是全新的状态了... 一切都要重新开始呢~ 💫
在 config.toml 中配置有权限让麦麦失忆的用户:
[plugin]
enabled = true
permission = ["1334431750", "123456789"] # 管理员的用户ID列表| 特性 | 全部(all) | 完全(total) |
|---|---|---|
| 作用范围 | 当前聊天 | 所有数据 |
| 清除对象 | 聊天消息 | 所有记忆 |
| 其他聊天 | 不影响 | 全部清除 |
| 人物印象 | 保留 | 清除 |
| 群组信息 | 保留 | 清除 |
| 二次确认 | 无 | 需要 |
⚠️ 不可逆操作 - 失忆后无法恢复⚠️ 数据丢失 - 所有历史记忆将永久丢失⚠️ 谨慎使用 - 建议只给可信任的管理员权限
- 🎭 角色扮演 - 重新开始新的角色扮演场景
- 🔄 测试调试 - 测试对话时清除历史记录
- 🧹 定期清理 - 定期清理旧对话节省存储空间
- 🎪 娱乐互动 - "麦麦,把昨天的黑历史忘掉!"
- 🔥 完全重置 - 将麦麦恢复到初始状态
- ✨ 重大升级:状态机确认机制
- 🔐 实现双确认方式:命令确认 + 直接回复确认
- ⏰ 添加30秒确认超时机制
- 🛡️ 添加聊天上下文验证,防止跨聊天确认
- 🧹 自动清理过期确认请求(5分钟)
- ✨ 新增:EventHandler监听器
- 📢 高优先级拦截"确认"消息
- 🔗 与状态机共享确认状态
- ⚡ 拦截确认消息,防止后续处理
- 🔧 修复:延迟删除机制改进
- ✅ 修复
/失忆 最近只删除回复消息的问题 - ✅ 修复
/失忆 之前只删除回复消息的问题 - 📝 现在会删除2条消息(用户命令 + 麦麦回复)
- 🕐 延迟3秒清理,确保消息从会话上下文中完全移除
- ✅ 修复
- 🔧 修复:并发删除问题
- 移除基于时间的过滤条件
- 使用直接全量删除,避免并发竞争
- 🎨 优化:权限检查静默化
- 🔇 权限检查失败不再发送提示消息
- 避免打扰无权限用户
- 📝 文档更新:
- 更新使用步骤,说明双确认方式
- 添加确认机制详细说明
- 更新使用示例
- ✨ 新增:添加长期记忆和学习数据的清除
- ➕ 新增 ChatHistory(聊天历史概括/长期记忆)表的清除
- ➕ 新增 ThinkingBack(思考记录)表的清除
- ➕ 新增 Jargon(俚语黑话学习)表的清除
- 📝 更新文档说明清除范围
- 🔄 适配最新版本的 MaiBot 数据库结构(MemoryChest → ChatHistory)
- 🔧 重大修复:修复插件无法加载的错误
- ❌ 移除不存在的数据库模型引用(MemoryChest、MemoryConflict)
- 📝 更新清除范围文档,移除不存在的表
- 🔄 适配最新版本的 MaiBot 数据库结构
- 🔧 重大修复:彻底解决命令消息残留问题
- 🎯 采用两阶段删除策略:立即删除统计报告 + 延迟5秒删除用户命令
- 📝 原因:用户命令消息在插件执行完成后才被存储,需要延迟删除
- ⚡ 第一次清除:等待0.5秒后删除统计报告消息
- ⏰ 第二次清除:5秒后删除所有在cutoff时间前的消息(包括用户命令)
- 💡 通过后台任务实现延迟删除,不阻塞主流程
- ✅ 真正实现完全失忆,数据库不留任何痕迹
- 🔧 修复:保留统计数据不被清除
- 🔧 修复:延长等待时间(3秒)确保消息被记录后再清除
- 💾 统计数据(Token使用量、费用统计等)是系统运营数据,不应被清除
- 📊 只清除记忆相关数据,保留系统级统计信息
- 📝 更新文档说明清除范围和保留内容
- ✨ 新增:统计报告消息本身也不会被记录(真正的完全失忆)
- 🔧 发送统计报告后自动清除该消息记录
- 💾 确保完全失忆后数据库完全清空,不留任何痕迹
- 📝 更新文档说明
- 🔧 优化完全失忆的统计报告显示
- 📊 简化用户界面输出,只显示总计数字(避免消息被截断)
- 📝 详细统计数据移至日志记录
- 🐛 修复统计报告过长导致QQ消息截断的问题
- ✨ 新增"完全失忆"模式,支持清除所有记忆数据
- ✨ 新增二次确认机制,防止误操作
- ✨ 新增配置项控制是否清除日记
- ✨ 新增详细的清除统计报告
- 📝 更新文档和帮助信息
- 🎨 优化提示文本和交互体验
- 🎉 首次发布(改造自 context_clear_plugin)
- ✨ 更有趣的提示文本和交互体验
- 🌐 支持中英文命令
- 🎨 重新设计为"失忆"主题
MIT License
MaiBot Community