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`,看看那个手绘风格的演示页面。*

*也许,它也能帮你从"救火队员",变成"设计师"。*

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐