AI工厂.进化Skill ai-factory.evolve

这是一个用于自我改进AI工厂技能的技能,通过分析项目上下文、积累的补丁和代码库模式,识别常见错误并增强现有技能,防止未来问题,使AI在项目中更智能。关键词:AI技能改进,自我学习,项目分析,补丁驱动,代码库模式,技能进化。

AI应用 0 次安装 0 次浏览 更新于 3/18/2026

name: ai-factory.evolve description: 基于项目上下文、积累的补丁和代码库模式自我改进AI Factory技能。分析出错原因、有效方法,并增强技能以防止未来问题。当您想让AI为项目更智能时使用。 argument-hint: ‘[技能名称或"全部"]’ allowed-tools: 读取 写入 编辑 全局搜索 搜索 Bash(git *) 询问用户问题 问题 disable-model-invocation: true

进化 - 技能自我改进

分析项目上下文、补丁和代码库以改进现有技能。每次运行使AI Factory更智能。

核心思想

补丁(过去的错误) + 项目上下文 + 代码库模式
    ↓
分析重复问题、技术特定陷阱、项目惯例
    ↓
使用项目特定规则、防护措施和模式增强技能

工作流程

步骤0:加载上下文

读取 .ai-factory/DESCRIPTION.md 以了解:

  • 技术栈
  • 架构
  • 惯例

步骤1:收集情报

1.1:读取所有补丁

全局搜索:.ai-factory/patches/*.md

读取每个补丁。对于每个,提取:

  • 问题类别(空检查、异步、验证、类型、API、数据库等)
  • 根本原因模式(犯了什么类型的错误)
  • 预防规则(应该采取什么不同做法)
  • 标签

1.2:聚合模式

按标签和类别分组补丁。识别:

  • 重复问题 — 同一标签出现3次以上?这是系统性问题
  • 技术特定陷阱 — 与栈相关的问题(例如,React重渲染、Laravel N+1)
  • 缺失的防护措施 — 哪些检查/模式可以防止这些bug

1.3:读取代码库惯例

扫描项目以查找模式:

  • 代码检查器配置(.eslintrcphpstan.neonruff.toml 等)
  • 现有测试模式(测试文件结构、使用的断言)
  • 错误处理模式(try/catch样式、错误类型)
  • 日志模式(使用的日志记录器、格式、级别)
  • 导入惯例、文件结构

步骤2:读取当前技能

确定要进化的技能:

  • 如果 $ARGUMENTS 包含特定技能名称 → 仅进化该技能
  • 如果 $ARGUMENTS 是“全部”或空 → 进化所有已安装技能

读取每个目标技能的 SKILL.md

全局搜索:{{skills_dir}}/*/SKILL.md

如果技能尚未安装(无 {{skills_dir}}/),从源读取:

全局搜索:skills/*/SKILL.md

步骤3:分析差距

对于每个技能,基于收集的情报识别缺失内容:

3.1:补丁驱动的差距

比较补丁模式与技能指令:

  • /ai-factory.fix 是否提及补丁中最常见的错误类别?如果没有 → 添加
  • /ai-factory.implement 是否警告在补丁中发现的陷阱?如果没有 → 添加防护
  • /ai-factory.task 是否包含问题区域的日志/验证要求?如果没有 → 增强
  • /ai-factory.review 是否检查导致bug的模式?如果没有 → 添加检查项

3.2:技术栈差距

比较项目技术栈与技能指令:

  • 技能引用通用模式但项目使用特定框架? → 添加框架特定指导
  • 项目使用TypeScript但技能显示JS示例? → 更新示例
  • 项目使用特定ORM(Prisma、Eloquent)? → 添加ORM特定模式

3.3:惯例差距

比较项目惯例与技能指令:

  • 项目有特定错误处理模式? → 技能应强制执行
  • 项目使用特定日志记录器? → 技能应引用
  • 项目有特定文件结构? → 技能应遵循

步骤4:生成改进

对于每个发现的差距,创建具体改进:

## 改进:[技能名称]

### 什么
[要做的具体更改]

### 为什么
[哪些补丁/模式驱动此更改]

### 在哪里
[SKILL.md中要修改的确切部分]

### 更改
[要添加/修改的实际文本]

改进的质量规则:

  • 每个改进必须可追溯到补丁、惯例或技术栈事实
  • 无通用建议 — 仅项目特定增强
  • 改进必须最小化和聚焦 — 不要重写整个技能
  • 保留现有技能结构 — 添加,不要替换

步骤5:呈现与应用

5.1:向用户呈现改进

## 技能进化报告

基于:
- X 个补丁分析
- Y 个重复模式发现
- Z 个技术栈特定洞察

### 提议的改进

#### /ai-factory.fix
1. **添加空检查防护** — 5个补丁涉及空引用
   → 添加到步骤2:“在访问嵌套属性前检查可选/可空字段”

2. **添加异步/等待模式** — 3个补丁涉及未处理承诺
   → 添加到重要规则:“始终使用try/catch与async/await”

#### /ai-factory.implement
1. **添加Prisma特定警告** — 2个补丁来自不正确Prisma查询
   → 添加到日志记录:“在DEBUG模式下记录所有Prisma查询”

#### /ai-factory.review
1. **添加检查项** — 未检查可选链
   → 添加到正确性:“可空关系的可选链”

应用这些改进?
- [ ] 是,应用全部
- [ ] 让我选择哪些
- [ ] 否,仅保存报告

5.2:应用批准的改进

对于每个批准的改进:

  1. 读取目标 SKILL.md
  2. 使用 编辑 应用更改
  3. 保持更改最小化和精准

5.3:保存进化日志

创建 .ai-factory/evolutions/YYYY-MM-DD-HH.mm.md

mkdir -p .ai-factory/evolutions
# 进化:YYYY-MM-DD HH:mm

## 情报摘要
- 补丁分析:X
- 重复模式:[列表]
- 技术栈:[从DESCRIPTION.md]

## 应用的改进

### [技能名称]
- [更改描述] ← 由补丁驱动:[补丁文件名]

### [技能名称]
- [更改描述] ← 驱动自:[技术栈 / 惯例]

## 识别的模式
- [模式]:[频率] 次出现
- [模式]:[频率] 次出现

步骤6:建议后续行动

## 进化完成

改进的技能:X
应用的改进:Y

### 推荐

1. **运行 `/ai-factory.review`** 在最近代码上以验证改进
2. **下次进化** — 在5-10个更多修复后再次运行 `/ai-factory.evolve`
3. **考虑新技能** — 如果模式X持续重复,创建专用技能:
   `/ai-factory.skill-generator <技能名称>`

上下文清理

读取所有补丁和技能后上下文较重。所有改进已保存 — 建议释放空间:

询问用户问题:在继续前释放上下文?

选项:
1. /clear — 完全重置(推荐)
2. /compact — 压缩历史
3. 保持原样

每个技能可以学习的内容

技能 从何学习 示例增强
/ai-factory.fix 补丁 → 常见错误 “在访问Y前检查X”
/ai-factory.implement 补丁 → 预防规则 “创建模型时,始终验证Z”
/ai-factory.task 补丁 → 日志差距 “为可空字段添加验证任务”
/ai-factory.review 补丁 → 遗漏问题 “检查:所有可选关系是否空安全?”
/ai-factory.commit 代码库 → 惯例 “使用项目的提交前缀格式”
/ai-factory.feature 代码库 → 模式 “基于项目惯例的默认分支前缀”

重要规则

  1. 可追溯 — 每个改进必须链接到补丁、惯例或技术事实
  2. 最小化 — 添加规则,不要重写技能
  3. 可逆 — 用户批准前不应用更改
  4. 累积 — 每次进化基于先前进化
  5. 无幻觉 — 仅建议有证据支持的改进
  6. 保留结构 — 不更改技能工作流程,仅丰富它

示例

示例1:空引用模式后的10个修复

/ai-factory.evolve fix

→ 发现6/10个补丁标记 #空检查
→ 改进:添加到 /ai-factory.fix 步骤2:
  “优先检查:查找没有空防护访问的可选/可空字段。这是此项目中的首要bug来源。”
→ 改进:添加到 /ai-factory.review 检查清单:
  “- [ ] 所有可空数据库字段在UI/API层有空检查”

示例2:有N+1问题的Laravel项目

/ai-factory.evolve 全部

→ 栈:Laravel + Eloquent(从DESCRIPTION.md)
→ 发现3个补丁标记 #n-plus-one #数据库
→ 改进:添加到 /ai-factory.implement 日志记录:
  “启用查询日志记录:在DEBUG模式下使用DB::enableQueryLog()”
→ 改进:添加到 /ai-factory.review 检查清单:
  “- [ ] 使用预加载处理相关模型(无N+1)”
→ 改进:添加到 /ai-factory.task 描述:
  “在数据库相关任务中包含‘使用->with()处理关系’”

示例3:无补丁的首次运行

/ai-factory.evolve

→ 无补丁发现(首次运行)
→ 仅分析项目上下文...
→ 栈:Next.js 14 + Prisma + TypeScript
→ 改进:添加到 /ai-factory.implement:
  “对突变使用服务器操作,对外部API使用API路由”
→ 改进:添加到 /ai-factory.fix:
  “对于Prisma错误,首先检查schema.prisma中的字段类型”
→ 改进:添加到 /ai-factory.review:
  “- [ ] 服务器组件不使用仅客户端的钩子”

请勿:

  • 请勿重写整个技能
  • 请勿移除现有规则
  • 请勿添加通用建议(“写清洁代码”)
  • 请勿创建新技能(建议使用 /ai-factory.skill-generator 代替)
  • 请勿未经用户批准应用更改
  • 请勿进化未安装在项目中的技能