EvoMind 记忆与进化引擎
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_fee73aa5/evomind。
技能介绍
要解决什么问题
长对话 Agent 往往把「记住用户偏好、复用成功做法」交给外部向量库或 prompt 片段,会话一关就丢上下文,同类任务还要重新试错。EvoMind 把记忆当成可编程模块:不是文档,是代码——MemoryCore 用本地 SQLite 把事实、技能与会话态分层存放,并支持跨层检索与定期整理。
五层架构如何协作
| 层 | 职责 |
|---|------|
| L1 | 关键事实持久化,remember() / recall_l1(),单条体积与总量受控(≤20KB 触发归档) |
| L2 | 成功方案固化为可加载技能:skill_save()、skill_load()、skill_find() |
| L3 | 会话级临时数据,带 TTL 的 cache_set() / cache_get() |
| L4 | 每日策展 curate(),日志 curator_log(),含冗余技能检测(Jaccard ≥ 0.6) |
| L5 | FTS5 全文索引,统一 recall() 与 stats() 跨 L1/L2/L5 召回 |
典型闭环是:执行 → 结果写入 L2/L1 → 下次 skill_load() 或 recall() 拉回 → L4 合并重复、归档溢出条目。依赖仅 Python 标准库与内置 sqlite3,适合嵌入自有 Agent 运行时而非替代整套 RAG 平台。
适用边界
- L1 有容量与自动归档策略,不适合把整库文档原样塞进 L1。
- 策展与去重是启发式(Jaccard 阈值),不能替代人工审核关键技能。
- 架构在 Hermes Agent 等生产环境验证过,但你的部署仍需自行定义「什么算事实、什么算技能」的写入策略与权限隔离。
使用场景
- 自研 Python Agent 在用户关闭会话后再次打开时,需用 `recall_l1()` 拉回上次写入 L1 的偏好与约束,而不是重问一遍。
- 一次故障或代码审查流程跑通后,Agent 用 `skill_save()` 把步骤固化到 L2,下次同类任务先 `skill_find()` 再 `skill_load()`。
- 多轮工具调用中间态只需保留到本轮结束,用 L3 的 `cache_set()` 设 TTL,避免把临时结果写进长期事实层。
- 维护已积累 dozens 条 L2 技能时,定期执行 `curate()`,依据 Jaccard≥0.6 发现重复方案并查看 `curator_log()` 再人工合并。
适合人员
- 在自有 Agent 运行时里嵌入记忆、且希望仅依赖标准库与 SQLite 的后端或框架维护者
- 要把「一次成功的多步任务」变成可加载技能、并靠 save/load 形成迭代改进的 Agent 应用开发者
- 长会话产品里需区分长期事实、固化技能与会话缓存三层数据的产品或 Agent 工程师
- 已在或计划对接 Hermes 类生产 Agent、需要可编程五层记忆而非纯 prompt 片段的团队