Memory Cache

🗄️ Redis 高性能临时存储与状态共享

开发运维榜 #5

基于 Redis 的高性能临时存储,用于保存上下文、缓存 API 结果及跨会话状态共享,严格遵循 key 命名规范。

收藏
5.2k
安装
2.3k
版本
1.1.2
CLS 安全性认证2026-05-13
点击查看完整报告 >

使用说明

核心用法

memory-cache 是一个基于 Redis 的高性能临时存储 skill,主要用于三类场景:保存短期会话状态(mema:context:*)、缓存昂贵的 API 结果(mema:cache:*)、以及实现跨会话的状态持久化(mema:state:*)。

核心操作通过 scripts/cache 脚本完成:

  • 写入cache set mema:<category>:<name> <value> [--ttl N] 支持可选的过期时间
  • 读取cache get mema:<category>:<name> 获取指定 key
  • 扫描cache scan [pattern] 使用 Redis SCAN 命令安全遍历 keys

显著优点

1. 命名空间隔离:强制 mema: 前缀避免与其他 Redis 数据库冲突
2. 连接健壮性:内置连接重试和超时处理机制

3. 轻量部署:通过 venv 自动管理依赖,首次运行自动初始化

4. TTL 支持:可为缓存数据设置过期时间,避免内存膨胀

潜在局限

  • 外部依赖:必须配置可用的 Redis 服务(REDIS_URL
  • 非持久化设计:定位为临时存储,不适合作为长期数据库使用
  • 键名约束:严格的命名规范增加了使用成本,但也保障了隔离性
  • 无内置加密:Redis 连接安全性依赖部署环境的网络配置

适合人群

需要快速实现会话状态管理、API 结果缓存或 agent 间数据共享的开发者,尤其适合已有 Redis 基础设施的团队。

常规风险

  • 未正确配置 REDIS_URL 将导致服务不可用
  • 大量无 TTL 的缓存 key 可能造成 Redis 内存耗尽
  • 跨会话的 mema:state:* 数据需自行管理清理策略

安全解读

核心用法

memory-cache 是一个轻量级的Redis缓存管理Skill,专为多会话Agent场景设计。用户通过命令行脚本执行set/get/scan操作,所有键必须遵循mema:<category>:<name>命名规范,内置三大命名空间:

  • mema:context:* — 短期会话状态
  • mema:cache:* — 易失性API缓存数据
  • mema:state:* — 跨会话持久化存储

首次运行自动初始化Python虚拟环境并安装依赖,配置通过REDIS_URL环境变量完成。

显著优点

  • 安全隔离:强制mema:前缀避免Redis数据库键冲突
  • 连接可靠:内置连接重试与超时处理机制
  • 依赖精简:仅依赖redis-py和python-dotenv两个主流库,零CVE漏洞
  • 隐私合规:配置从环境变量读取,无敏感数据收集,通过GDPR/CCPA六项合规检查
  • 行为透明:无外发网络请求,仅与声明的Redis服务通信

局限与注意事项

  • T3来源风险:维护者为个人开发者(1999azzar),虽代码无恶意,但建议用户自行审查
  • 许可证缺失:未声明开源许可证,商业使用存在法律不确定性
  • 文档待完善:缺少Redis安全配置建议与详细错误处理说明
  • 功能边界:纯Redis封装,无高级缓存策略(如LRU、分布式锁)

适合人群

  • 需要快速共享状态的多Agent协作场景
  • 希望缓存昂贵API结果以降低成本的用户
  • 具备Redis运维能力、愿意审查代码的技术团队

常规风险

| 风险类型 | 等级 | 说明 |
|---------|------|------|
| 代码安全 | 低 | 静态分析95分,无危险函数 |
| 供应链 | 低 | 依赖无CVE,建议定期更新 |
| 来源可信度 | 中 | T3级别,需人工审查 |
| 许可风险 | 中 | 未声明License |

部署建议:适用于可信内网环境,生产使用前建议补充LICENSE文件并审计代码逻辑。

Memory Cache 内容

scripts文件夹
手动下载zip · 4.0 kB
cache_manager.pytext/plain
请选择文件