自愈缓存系统
Self-Healing Cache System
缓存的操作序列在回放时自动检测选择器变化并通过 LLM 重新定位,实现缓存自修复
子问题
1.操作序列录制与回放
2.选择器变化检测
3.缓存条目自动更新
4.变量化模板支持
5.流式执行结果的缓存拦截与假流构造
6.服务端-客户端缓存条目跨进程传输
7.缓存条目体积优化(截图裁剪、敏感信息过滤)
各项目的解法1 solutions
Signals
横向对比
| 维度 | Stagehand |
|---|---|
| 缓存粒度 | 双层:ActCache 单动作 + AgentCache 完整序列(7 种步骤类型) |
| 自愈机制 | 选择器失败 → captureHybridSnapshot + LLM 推理新选择器 → 重试 → 更新缓存 |
| 缓存键策略 | SHA256(instruction + URL + variableKeys),变量只取 key 不取 value |
| 存储后端 | 文件系统 JSON + 内存 Map 双后端,CacheStorage 抽象层 |
| 流式支持 | wrapStreamForCaching 拦截流结果录制,createCachedStreamResult 构造假流 |
| 安全防护 | SENSITIVE_CONFIG_KEYS 过滤 API Key,pruneAgentResult 删除 base64 截图 |
最佳实践
1.缓存键包含 URL+指令+变量键的 SHA256 哈希
2.self-heal 成功后静默更新缓存条目避免重复修复
3.缓存条目带 version 字段支持格式演进
4.waitForCachedSelector 超时后非阻塞继续执行