Memory Cache

🗄️ Redis 高速缓存,跨会话状态共享

data-storage榜 #1

基于 Redis 的高性能临时存储,支持跨会话状态共享与 API 结果缓存,强制命名空间隔离保障安全。

收藏
8.4k
安装
2.3k
版本
1.1.5
CLS 安全性认证2026-07-01
点击查看完整报告 >

使用说明

核心用法

Memory Cache 是一个以 Redis 为后端的高性能临时存储技能,专为 Agent 场景设计。核心能力包括:

1. 键值操作:支持 set/get/delete 基础操作,所有命令通过 scripts/cache.sh 包装脚本执行,自动管理 Python 虚拟环境与依赖安装
2. 搜索与维护:提供 scan 命令实现非阻塞式键扫描,支持 TTL 过期时间设置与查询

3. 命名空间强制隔离:所有键必须以 mema: 为前缀,内置三类语义分区:

  • mema:context:* 短期会话状态
  • mema:cache:* 易失性 API 缓存
  • mema:state:* 长期应用状态

显著优点

  • 即开即用:自动虚拟环境初始化,零系统依赖污染
  • 跨会话共享:突破单 Agent 内存限制,实现多会话状态持久化
  • 性能优化:Redis 原生性能,TTL 机制避免存储膨胀
  • 安全防护:硬编码命名空间锁,防止误操作非授权键空间

潜在局限

  • 外部依赖强:必须预置 Redis 服务,环境配置失败即不可用
  • 命名空间刚性mema: 前缀强制约束,无法灵活适配既有键体系
  • 无集群支持:单实例 Redis 架构,未提及 Sentinel/Cluster 高可用方案
  • 调试透明度低:包装脚本封装 Python 逻辑,故障排查需穿透多层

适合人群

  • 多 Agent 协作场景需要共享上下文的开发者
  • 频繁调用昂贵 API 需结果复用的工作流
  • 有 Redis 运维基础、追求性能优先的技术团队

常规风险

  • 数据持久性:Redis 默认内存存储,未配置 AOF/RDB 时存在丢数据风险
  • TTL 管理缺失:依赖手动设置过期,长期状态键可能累积为内存泄漏
  • 权限边界模糊:虽有命名空间锁,但 Redis URL 凭据暴露于 .env 文件,多用户环境需额外管控

安全解读

核心功能

memory-cache 是一款为 Agent 设计的高性能临时存储 Skill,以 Redis 为后端,提供键值存储、TTL 过期管理和安全的命名空间隔离。它解决了多轮对话中的上下文丢失、昂贵 API 调用重复触发以及跨会话状态持久化等核心痛点。

显著优点

1. 安全架构严谨:强制 mema: 前缀的命名空间锁定,通过正则表达式严格验证键名格式,有效防止越权操作 Redis 中的其他数据。
2. 依赖精简可信:仅依赖 redis-py 和 python-dotenv 两个官方维护库,无已知 CVE,无 typosquatting 风险。

3. 零危险函数:代码中完全规避 eval()、exec()、os.system() 等高危调用,所有操作通过受控接口完成。

4. 隔离式部署:自动初始化虚拟环境,依赖隔离在 Skill 目录内,避免系统级冲突。

潜在局限

  • 基础设施依赖:必须自行部署和维护 Redis 实例,增加运维复杂度。
  • 无内置加密:依赖 Redis 原生配置实现传输加密,需手动配置 rediss:// 或 VPN。
  • 值内容无验证:仅限制大小(512MB),不验证内容类型,恶意构造的大值可能导致内存压力。
  • 单点故障风险:未内置 Redis 集群或哨兵模式的自动故障转移逻辑。

适合人群

  • 需要跨会话持久化对话上下文的 AI Agent 开发者
  • 希望缓存昂贵 API 结果(如图像生成、复杂计算)以降低成本的用户
  • 具备基础 Redis 运维能力的技术团队

常规风险与建议

  • 配置泄露.env 文件需设置 chmod 600 权限
  • 未授权访问:生产环境必须启用 Redis 密码认证
  • 内存耗尽:建议配置 maxmemoryallkeys-lru 驱逐策略
  • 传输安全:网络部署时启用 TLS 或 VPN 隔离

Memory Cache 内容

references文件夹
scripts文件夹
手动下载zip · 5.2 kB
key-standards.mdtext/markdown
请选择文件