资讯详情

Evolver GEP资产为什么升级不覆盖?GEP_ASSETS_DIR与本地资产保护完整指南

📅 2026/9/16 20:00:46 | 华诺云谱 👁 阅读
Evolver GEP资产为什么升级不覆盖?GEP_ASSETS_DIR与本地资产保护完整指南
Evolver GEP资产为什么升级不覆盖GEP_ASSETS_DIR与本地资产保护完整指南【免费下载链接】evolverThe GEP-powered self-evolving engine for AI agents. Auditable evolution with Genes, Capsules, and Events. | evomap.ai项目地址: https://gitcode.com/GitHub_Trending/evolv/evolver在 evolver 这个基于 GEPGenome Evolution Protocol的 AI 智能体自进化引擎中Genes、Capsules 和 Events 三类资产是智能体进化记忆的核心。很多用户担心升级版本后自己积累在genes.json里的基因会不会被官方文件覆盖答案是——不会。本文带你从源码层面理解GEP_ASSETS_DIR的配置方式以及 Evolver 通过目录分离 只增不改 强制更新保护清单实现本地资产保护的具体机制。先搞懂GEP 资产有两套家Evolver 把资产分成了两个互不干扰的位置位置路径归属谁可以改内置资产assets/gep/官方随包发布只读升级时可更新运行时资产workspace/.evolver/gep/你的本地运行数据只属于你升级永不触碰运行时资产目录包含以下文件genes.json/genes.jsonl—— 基因库进化策略单元capsules.json/capsules.jsonl—— 胶囊库成功的完整执行方案events.jsonl—— 进化事件日志可审计链路candidates.jsonl、failed_capsules.json等辅助文件内置资产中官方提供了启动种子文件 assets/gep/genes.seed.json里面预置了gene_gep_repair_from_errors错误修复、gene_gep_optimize_prompt_and_assets提示词优化等基础基因仅用于开箱即用。路径解析逻辑在 src/gep/paths.js#L194-L201默认资产目录是workspace/.evolver/gep/而内置目录由getEvolverInstallRoot()指向安装包内的assets/gep/两者从根上就隔离开了。升级不覆盖GEP 资产保护的 4 层机制1️⃣ 首次运行种子化只在文件不存在时写入核心逻辑在 src/gep/assetStore.js#L349-L385 的ensureGenesSeeded()本地genes.json不存在→ 从官方种子整体拷贝一份日志提示Seeded ... from genes.seed.json本地genes.json已存在→ 直接跳过绝不覆盖。这就是首次填充、后续尊重的原则你的基因库从诞生那一刻起就归你所有。2️⃣ 后续升级只增不改按 ID 去重追加如果你本地库看起来是旧版内置种子命中 2 个以上历史种子基因 ID 标记升级时 Evolver 会把新增的升级基因追加到末尾但严格遵循已存在的基因 ID 一律跳过selectBundledUpgradeGenes按 ID 去重你手动修改过的基因、自己蒸馏出的基因一个字节都不会被改动空库、手动编写的小型测试库完全不受影响。整个过程由文件锁withFileLocksrc/gep/assetStore.js#L95-L102保护配合原子写入先写.tmp再rename即使守护进程、CLI 脚本、cron 多进程同时写也不会损坏文件。3️⃣ 旧版文件迁移只拷贝、不删除如果你曾使用过早期版本、资产还躺在assets/gep/里migrateLegacyRuntimeAssets()src/gep/assetStore.js#L285-L308会在首次运行时把genes.json、capsules.json、events.jsonl等 8 类旧文件复制到.evolver/gep/且目标文件已存在则跳过不覆盖原始文件原样保留不做任何删除设置过GEP_ASSETS_DIR时自动跳过迁移以你的自定义目录为准。4️⃣ 强制更新保护清单.evolver目录整体保留Evolver 支持从 Hub 强制拉取新版本代码src/forceUpdate.js替换代码文件时会遇到一个保护清单src/forceUpdate.js#L403.env / .env.local / USER.md / .evolver/也就是说无论版本代码怎么更新你整个.evolver/gep/资产目录都不在替换范围内。回归测试 test/forceUpdateKeepList.test.js 明确验证了升级后.evolver/config.json必须保留、旧代码文件必须被替换资产保护行为是被测试覆盖的长期承诺。GEP_ASSETS_DIR 配置把资产库放到你想要的位置默认情况下资产在workspace/.evolver/gep/如果想把运行时资产库放到别处比如集中管理多个智能体、或备份到独立磁盘只需设置环境变量GEP_ASSETS_DIR# .env 或 shell 环境 GEP_ASSETS_DIR/data/my-evolver-assets设置后的效果src/gep/paths.js#L194-L201所有基因、胶囊、事件文件都读写到新目录旧版assets/gep/迁移逻辑自动停用避免误拷贝只读路径解析也会优先尊重你的自定义目录。配合EVOLVER_SESSION_SCOPE还可以在目录下自动加一层scopes/scope/子目录实现多会话资产隔离。万一资产丢了怎么办Hub 一键恢复官方文档README.md#L402-L414专门有一节说明如果你曾用旧版本、本地资产被意外清空只要 Promote/发布过资产就能用一条命令从 Hub 找回A2A_HUB_URLhttps://evomap.ai evolver sync --scopeall --exportbackup.gepx它会把你发布过的和你购买/推广获得的资产全部重新拉取并写回genes.json/capsules.json同时打包成便携的.gepx备份文件。注意从未上传 Hub 的纯本地资产没有远端副本只能从.evolver/gep/或磁盘快照恢复——所以定期备份资产目录是好习惯。常见问题速答Q升级后assets/gep/里的文件变了我的资产会受影响吗不会。assets/gep/只是官方内置资产的存放地你的运行数据在.evolver/gep/两者职责分离详见 README.md#L390-L414。Q我想清空资产重新开始删除或改名workspace/.evolver/gep/或GEP_ASSETS_DIR指向的目录即可下次启动会自动重新种子化。Q怎么验证保护机制真的生效了项目自带测试用例 test/assetStore.test.js验证生产路径将用户可修改资产留在GEP_ASSETS_DIR与 test/forceUpdateKeepList.test.js验证强制更新保留.envolver/可以直接参考断言内容。总结Evolver 对 GEP 资产的保护可以浓缩为一句话内置资产归官方运行时资产归用户升级永远只做加法。通过目录分离、按 ID 去重追加、只拷贝不删除的旧版迁移以及强制更新保护清单这 4 层机制加上GEP_ASSETS_DIR的灵活重定向能力你的进化记忆在版本迭代中始终安全、可审计、可备份。【免费下载链接】evolverThe GEP-powered self-evolving engine for AI agents. Auditable evolution with Genes, Capsules, and Events. | evomap.ai项目地址: https://gitcode.com/GitHub_Trending/evolv/evolver创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。