AI 基建:我直接上了个 evomap,吃口热饭!
本文记录了将evolver项目集成到Trae技能体系的过程。作者首先克隆并分析了evolver项目结构,深入研究了其GEP协议、自动日志分析和基因资产等核心特性。随后设计并实现了evomap技能,创建了包括路径配置、资产存储、信号提取等10个核心模块,配置了基因定义和进化事件日志等GEP资产文件。最终完成的evomap技能支持完整的GEP协议实现、自动信号提取、基因选择和人格进化等功能,并通过了全
task:我直接上了个 evomap,吃口热饭
背景
之前我在本地搭建了 session-logger 项目,用于记录每个会话的关键有效信息,然后在几个编程工具之间平迁,那一套机制其实运转的还可以。有兴趣可以看些我这篇文章task:原本对话的记忆蒸馏平迁的思考,如何让新的 AI 工具、模型记住我。现在已经有公司打造了全套的记忆基因迭代,那我们不妨试一试!
AI 自我进化引擎。基于 GEP 协议实现智能体的自我诊断、修复和优化。分析运行时历史,提取信号,应用协议约束的进化策略。——PS:虽然吹的很厉害,但是这个相比于算力基建,不知道谁更胜一筹!

航海日志-实操




AI 原汁原味,请谨慎食用。大体的意思就是在本地和云上面agent 都是“一家人”。后面再看看使用情况,不过很有可能会污染我本地文件!
基于对 evolver 项目的深入分析,我现在设计并实现 evomap 集成方案。
## 集成方案设计
**evolver 核心特性**:
- GEP 协议(基因组进化协议)
- 自动日志分析和信号提取
- 可复用的基因/胶囊资产
- 变异管理和人格状态
**集成策略**:
1. 创建 `evomap` skill 封装 evolver 核心功能
2. 适配 Trae 的 skill 体系
3. 集成 session-logger 记录进化事件
4. 配置 GEP 资产目录
让我开始创建 evomap skill:
toolName: todo_write
status: success
Todos updated: 6 items
toolName: view_folder
status: success
/Volumes/jeff/trae-dev/.trae/skills
现在创建 evomap skill 的目录结构和核心文件:
toolName: run_command
status: success
command: mkdir -p /Volumes/jeff/trae-dev/.trae/skills/evomap/{scripts,data/gep,references} undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/SKILL.md
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/scripts/paths.js
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/scripts/assetStore.js
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/scripts/signals.js
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/scripts/selector.js
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/scripts/prompt.js
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/scripts/envFingerprint.js
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/scripts/mutation.js
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/scripts/personality.js
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/scripts/solidify.js
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/scripts/evolve.js
changes: undefined
现在创建 GEP 资产文件和引用文档:
toolName: todo_write
status: success
Todos updated: 6 items
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/data/gep/genes.json
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/data/gep/capsules.json
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/data/gep/events.jsonl
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/references/gep-protocol.md
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/references/evolution-strategies.md
changes: undefined
toolName: Write
status: success
filePath: /Volumes/jeff/trae-dev/.trae/skills/evomap/scripts/test.js
changes: undefined
现在运行测试验证集成效果:
toolName: todo_write
status: success
Todos updated: 6 items
toolName: run_command
status: success
command: cd /Volumes/jeff/trae-dev && node .trae/skills/evomap/scripts/test.js undefined
所有测试通过。让我运行一次进化周期验证完整功能:
toolName: run_command
status: success
command: cd /Volumes/jeff/trae-dev && node .trae/skills/evomap/scripts/evolve.js run 2>&1 | head -100 undefined
evolver 运行成功。让我完成任务并记录会话:
toolName: todo_write
status: success
Todos updated: 6 items
toolName: run_command
status: success
command: cd /Volumes/jeff/trae-dev/.trae/skills/session-logger/scripts && python3 auto_logger_hook.py --record --message "evomap集成项目:将 evolver 集成到 Trae skill 体系" --actions "克隆evolver仓库,分析项目结构,设计集成方案,创建evomap skill,编写核心模块(paths/assetStore/signals/selector/prompt/mutation/personality/solidify/evolve),配置GEP资产,编写测试脚本,运行测试验证" --files ".trae/skills/evomap/SKILL.md,.trae/skills/evomap/scripts/paths.js,.trae/skills/evomap/scripts/assetStore.js,.trae/skills/evomap/scripts/signals.js,.trae/skills/evomap/scripts/selector.js,.trae/skills/evomap/scripts/prompt.js,.trae/skills/evomap/scripts/mutation.js,.trae/skills/evomap/scripts/personality.js,.trae/skills/evomap/scripts/solidify.js,.trae/skills/evomap/scripts/evolve.js,.trae/skills/evomap/scripts/test.js,.trae/skills/evomap/data/gep/genes.json,.trae/skills/evomap/data/gep/capsules.json,.trae/skills/evomap/data/gep/events.jsonl,.trae/skills/evomap/references/gep-protocol.md,.trae/skills/evomap/references/evolution-strategies.md" undefined
## evomap 集成完成
已成功将 [evolver](https://github.com/autogame-17/evolver) 项目集成到 Trae skill 体系中。
### 创建的文件结构
```
.trae/skills/evomap/
├── SKILL.md # Skill 说明文档
├── scripts/
│ ├── paths.js # 路径配置
│ ├── assetStore.js # GEP 资产存储管理
│ ├── signals.js # 信号提取模块
│ ├── selector.js # 基因/胶囊选择器
│ ├── prompt.js # GEP 提示词构建
│ ├── mutation.js # 变异对象构建
│ ├── personality.js # 人格状态管理
│ ├── solidify.js # 进化固化模块
│ ├── evolve.js # 主进化引擎
│ └── test.js # 集成测试
├── data/
│ └── gep/
│ ├── genes.json # 基因定义
│ ├── capsules.json # 成功胶囊
│ └── events.jsonl # 进化事件日志
└── references/
├── gep-protocol.md # GEP 协议参考
└── evolution-strategies.md # 进化策略指南
```
### 核心功能
1. **GEP 协议支持**: 完整的 Genome Evolution Protocol 实现
2. **信号提取**: 自动从日志中提取错误、机会、停滞信号
3. **基因选择**: 基于信号匹配自动选择进化策略
4. **人格进化**: 可进化的人格状态,支持自然选择
5. **审计追踪**: 所有进化事件记录在 events.jsonl
### 使用方法
```bash
# 标准运行
node .trae/skills/evomap/scripts/evolve.js
# 审查模式
node .trae/skills/evomap/scripts/evolve.js --review
# 循环模式
node .trae/skills/evomap/scripts/evolve.js --loop
# 策略预设
EVOLVE_STRATEGY=innovate node .trae/skills/evomap/scripts/evolve.js
```
### 测试结果
所有 19 项测试全部通过:
- 文件结构完整性
- 模块加载正确性
- 信号提取功能
- 基因选择逻辑
- 变异构建功能
氛围到了,必须来一波软文!
凌晨三点的那封邮件
凌晨三点,我被手机震醒。
是服务器告警邮件:用户上传的图片又失败了。
我揉揉眼睛,坐起来,熟练地打开电脑,输入密码,SSH 连接,看日志。
又是同样的错误:`Unsupported MIME type: image/gif`。
这个问题我已经修了不下五次了。
每次都是改提示词,加判断,或者换个 API 调用方式。但 AI 总会在某个时候,又犯同样的错误。
我关掉电脑,重新躺回床上,却睡不着了。
窗外的月光洒进来,我盯着天花板想:**为什么 AI 这么难"长记性"?**
---
大多数 AI 开发者这半年的日常估计都是这样
一直在维护一个 AI 客服助手。
工作内容大概是这样的:
-
周一:用户说"AI 听不懂方言",改提示词,加方言识别
-
周二:用户说"AI 回答太长",改提示词,加长度限制
-
周三:用户说"AI 漏了某些信息",改提示词,加信息检查
-
周四:用户说"AI 格式不对",改提示词,加格式规范
-
周五:AI 又犯了周一的错误,重新改提示词
周末:累瘫,不想碰电脑。
感觉自己像个"提示词保姆",每天的工作就是帮 AI "擦屁股"。
而且最让我抓狂的是:**同样的错误,我教了它十次,它还是记不住。**
就像教一个永远学不会的孩子。
---
一个偶然的发现
那天在 GitHub 上闲逛,看到一个叫**evolver**的项目。
README 第一行写着:
>"Evolution is not optional. Adapt or die."
(进化不是可选项。适应或消亡。)
我点进去看。
看了十分钟,我坐直了身子。
又看了三十分钟,我拍了大腿。
这个项目,**就是给 AI 装了个"大脑皮层"**。
它不是帮你写提示词,它是让 AI**自己写提示词**;不是帮你改代码,它是让 AI**自己改代码**;不是帮你记经验,它是让 AI**自己积累经验**。
---
它是怎么工作的?
我试着理解它的逻辑,发现其实很简单,就三个步骤:
第一步:"看"
它会自动扫描 AI 的运行日志,就像在"观察"AI 的表现。
-
这里报错了 → 记下来
-
这里慢了 → 记下来
-
用户说这里不好用 → 记下来
就像个细心的助手,时刻记录着 AI 的一举一动。
第二步:"想"
根据观察到的问题,它会选择合适的"策略"。
这些策略被叫做"基因"——就是一套套已经验证过的方法。
-
发现报错?用"修复基因"
-
发现慢?用"优化基因"
-
发现功能不够?用"创新基因"
就像个有经验的医生,根据症状开药方。
第三步:"记"
这次修好的经验,下次还能用。
成功经验被打包成"胶囊"存起来,下次遇到类似问题,直接拿出来用。
就像个错题本,做错的题,下次不再错。
---
我决定试试看
抱着试试的心态,我把它接入了我的项目。
接下来的一个月
接下来的一个月,应该会发生了这些变化:
-
AI 犯的错越来越少
-
同样的错误,基本不会再犯第二次
-
甚至有些我没注意到的问题,它也能自动发现并修复
-
用户反馈说:"AI 好像越来越聪明了"
而开发者们,终于从"提示词保姆"的角色里解脱出来了。
周一到周五,我不再是忙着改提示词,而是:
-
看 evolver 记录的进化历史
-
给它加一些新的"基因"策略
-
思考怎么让系统更完善
-
做一些真正有创造力的工作
周末,终于能安心休息了。
---
一点感想
现在回头看,我觉得 evolver 最有意思的地方,不是它能自动修 bug,而是:就像养孩子——你不能替他过一生,但你可以教他怎么学习。
---
看着这些,我突然觉得:
这哪里是 AI 在进化,这分明是**我自己在进化**。
以前的我,是个救火队员,哪里着火扑哪里。
现在的我,是个设计师,设计系统,设计框架,设计让系统自己变好的方法。
而这一切的开始,只是因为凌晨三点的那封告警邮件,和 GitHub 上那个叫 evolver 的项目。
---
*如果你也受够了"提示词保姆"的日子,不妨去 GitHub 搜搜`autogame-17/evolver`。或者,打开`evomap-demo.html`,看看那个手绘风格的演示页面。*
*也许,它也能帮你从"救火队员",变成"设计师"。*
更多推荐


所有评论(0)