多用户隔离型长期记忆 Multi-user Long Term Memory

🧠 千人千面的智能记忆中枢

为多个用户维护独立长期记忆,自动按 sender_id 识别身份,实现跨会话个性化上下文保持

收藏
8k
安装
2.7k
版本
1.0.0
CLS 安全性认证2026-07-14
点击查看完整报告 >

使用说明

核心用法

Multi-User Long-Term Memory 是一套用户隔离的记忆管理系统,通过解析 sender_id| 前的部分作为唯一用户名,为不同用户创建独立的 Markdown 记忆文件。开发者可通过 get/save/append/init 四个 API 实现用户偏好的持久化存储与检索。

显著优点

1. 精准用户隔离:基于 sender_id 前缀的命名规则确保多用户场景下记忆严格分离,避免信息串扰
2. 跨会话连续性:用户数据持久化存储于 users/{username}.md,支持长期跟踪用户偏好与历史上下文

3. 轻量易集成:简洁的四个 API 设计,零配置即可实现个性化记忆功能

4. 可读性强:采用 Markdown 格式存储,便于人工审阅与调试

潜在局限

  • 标识依赖风险:若上游系统 sender_id 格式变更或 | 符号使用不一致,将导致用户识别错误
  • 无内置加密:记忆文件以明文 Markdown 存储,敏感信息需额外处理
  • 并发控制缺失:文档未提及文件锁机制,高并发写入可能存在竞态条件
  • 容量管理空白:缺乏自动清理或容量限制策略,长期运行可能累积大量历史数据

适合人群

多租户 AI 应用开发者、需要个性化长期对话记忆的客服机器人、教育类自适应学习系统

常规风险

  • 隐私合规:需确保用户知情同意记忆收集,符合 GDPR/个人信息保护法规
  • 数据迁移:用户名规则变更将导致历史记忆"丢失"(实际为映射关系断裂)
  • 注入风险:若 content 未做过滤,可能存在 Markdown/HTML 注入,影响渲染安全

安全解读

核心功能

该 Skill 通过解析 sender_id| 符号前的部分作为唯一用户名,为每个用户创建独立的 Markdown 格式记忆文件。提供 getsaveappendinit 四个核心 API,支持读取、覆盖写入、追加内容以及初始化用户记忆文件。

显著优点

  • 极简依赖架构:零外部依赖,仅使用 Node.js 内置 fspath 模块,攻击面极窄
  • 智能用户识别:通过 | 符号分割 sender_id,天然适配多数即时通讯平台(如飞书、Slack、Discord)的用户 ID 格式
  • 透明存储格式:Markdown 纯文本存储,无需专用工具即可查看、编辑、备份用户数据
  • 代码质量优秀:通过 S+ 安全认证,输入经过正则过滤 [^a-zA-Z0-9_-],有效防御路径遍历攻击

潜在局限

1. 错误处理薄弱:文件操作(mkdirSync、readFileSync、writeFileSync)未包裹 try-catch,异常会直接抛出
2. 数据隔离隐患:相同用户名的不同会话强制共享记忆,若 sender_id 命名方案设计不当,可能导致多租户环境下的数据混淆

3. 无生命周期管理:缺乏自动过期、条目数量限制或归档机制,长期运行可能导致记忆文件膨胀

4. 明文存储风险:用户偏好以明文 Markdown 存储,无加密选项,不适合存储敏感凭证或受监管数据

适合人群

  • 开发单用户或中小规模多用户 AI 应用的开发者
  • 需要快速实现用户偏好记忆的对话系统架构师
  • 对依赖最小化有强要求的生产环境(金融、政务内网等)

常规风险

  • 隐私合规:用户数据本地持久化存储,需确保用户知情同意,符合 GDPR/CCPA 要求
  • 数据备份责任:users/ 目录下的 .md 文件需纳入常规备份策略,避免意外丢失
  • 并发写入冲突:多实例部署时,同一用户的并发 save/append 操作可能导致数据竞争(Node.js 单进程可缓解,集群模式需注意)

改进建议

建议使用者自行封装错误处理层,按需实现数据过期清理,并在生产环境评估加密存储需求。

多用户隔离型长期记忆 Multi-user Long Term Memory 内容

references文件夹
users文件夹
手动下载zip · 5.9 kB
user-memory.jstext/javascript
请选择文件