OrnnSkills:让你的 AI Agent 技能自动进化
“我本机安装的通用 skill,在不同项目里会自动长成更适合这个项目的版本”
问题:通用 Skill 的”水土不服”
如果你经常使用 AI Agent(如 Claude、Codex、OpenCode 等)辅助开发,一定遇到过这样的困扰:
场景一:通用技能不够精准
你安装了一个”React 组件开发”的通用 skill,但在你的企业内部项目中,它需要遵循特定的组件命名规范、必须使用内部的 UI 库、还要集成公司的日志系统。每次使用,你都得手动补充这些上下文。
场景二:项目差异导致重复劳动
你有 5 个项目都在用同一个 skill,但每个项目的代码风格、技术栈版本、目录结构都不同。你不得不在每个项目里都手动调整 skill,或者维护 5 个不同的 skill 版本。
场景三:技能优化缺乏反馈闭环
你发现某个 skill 在特定场景下表现不佳,想要优化它。但你不知道这个 skill 在所有项目中的使用情况,也缺乏真实的执行数据来指导优化方向。
解决方案:OrnnSkills 智能技能演化系统
OrnnSkills 是一个后台常驻的元 Agent,它不会替代你的主 Agent 执行任务,而是持续观察主 Agent 的真实执行,并为每个项目维护一份来自全局 Skill 的影子副本(Shadow Skill),再基于真实执行数据对这份影子副本进行小步、自动、可回滚的持续优化。
核心设计理念
1. 用户无感,自动适配
OrnnSkills 的设计目标是让用户几乎无感地获得技能自动适配的效果:
- ✅ 不需要理解 branch、merge、draft 等复杂概念
- ✅ 不需要手动管理 skills 分支体系
- ✅ 每个项目自动维护更适配的影子 skill
- ✅ 优化出问题,一键回滚
2. 单实体演化,不做多分支管理
对于同一个 origin skill,在某个项目里只维护一个 shadow skill 和它的演化日志。不默认创建多个 branch,避免管理复杂度爆炸。
3. 本地隔离,安全可控
所有自动优化优先作用于项目级 shadow skill,绝不污染全局 origin skill。你的原始 skill 始终保持纯净。
4. 小步快跑,持续积累
系统不追求一次性大改,而是通过大量小步 patch 持续提升 shadow skill 的项目适配性。每一次优化都是基于真实的执行 trace 数据。
架构解析:Shadow Skill 是如何工作的
┌─────────────────────────────────────────────────────────────┐
│ Main Agent Runtime │
│ (Codex/OpenCode/Claude) │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ TraceSkillObserver │
│ - 监听 trace 事件 │
│ - 实时映射 trace 到 skill │
│ - 按 skill 聚合 traces │
│ - 触发评估回调 │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ TraceSkillMapper │
│ - 6 种映射策略 │
│ - 路径提取 │
│ - 语义推断 │
│ - 置信度计算 │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ OptimizationPipeline │
│ - 获取按 skill 分组的 traces │
│ - 调用 Evaluator 评估 │
│ - 生成优化任务 │
│ - 触发 Patch Generator │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ Shadow Skill Manager │
│ ├─ Origin Registry (全局 skill 扫描) │
│ ├─ Shadow Registry (项目 skill 管理) │
│ ├─ Evolution Evaluator (优化评估) │
│ ├─ Patch Generator (补丁生成) │
│ └─ Journal Manager (演化日志) │
└─────────────────────────────────────────────────────────────┘
智能 Trace-Skill 映射
系统使用 6 种策略将 trace 智能映射到对应的 skill:
| 策略 | 触发条件 | 置信度 | 说明 |
|---|---|---|---|
| 策略1 | tool_call 读取 skill 文件 | 0.95 | 最可靠的映射方式 |
| 策略2 | tool_call 执行 skill 相关操作 | 0.85 | 从工具参数推断 |
| 策略3 | file_change 修改 skill 文件 | 0.9 | 文件变化明确指向 skill |
| 策略4 | metadata 包含 skill_id | 0.98 | 显式的 skill 标识 |
| 策略5 | assistant_output 引用 skill | 0.6 | 从输出内容推断 |
| 策略6 | user_input 请求 skill | 0.5 | 从用户输入推断 |
通过多策略融合和置信度加权,系统能够准确识别每个 trace 对应的 skill,为后续优化提供数据基础。
自动优化闭环:让 Skill 越用越聪明
OrnnSkills 实现了完整的自动优化闭环:
Trace 采集 → Trace-Skill 映射 → 评估分析 → 生成任务 → 执行优化 → 记录日志
自动优化策略
系统会自动执行以下类型的优化:
- ✅ append_context: 补充项目特定上下文
- ✅ tighten_trigger: 收紧适用条件
- ✅ add_fallback: 补写高频 fallback
- ✅ prune_noise: 删除低价值噪音描述
以下操作默认不自动执行(需要人工确认):
- ❌ 大段重写整个 skill
- ❌ 删除大量核心步骤
- ❌ 改变 skill 的总体目标
- ❌ 回写到全局 origin
快速上手
安装
npm install -g ornn-skills
初始化配置
ornn init
查看项目 shadow skills 状态
ornn skills status
查看某个 skill 的演化日志
ornn skills log <skill-id>
回滚到指定版本
ornn skills rollback <skill-id> --to rev_8
冻结/解冻自动优化
ornn skills freeze <skill-id> # 暂停自动优化
ornn skills unfreeze <skill-id> # 恢复自动优化
项目结构
OrnnSkills 在每个项目下创建 .ornn 目录来管理 shadow skills:
your-project/
└── .ornn/
├── skills/
│ └── <skill-id>/
│ ├── current.md # 当前 shadow skill 内容
│ ├── meta.json # 元数据
│ ├── journal.ndjson # 演化日志
│ └── snapshots/ # 快照
│ ├── rev_0005.md
│ └── rev_0010.md
├── state/
│ ├── sessions.db # SQLite 数据库
│ ├── traces.ndjson # 原始 trace
│ └── runtime_state.json # 运行时状态
└── config/
└── settings.toml # 项目配置
适用场景
1. 多项目开发团队
你的团队有多个项目,每个项目都有自己的技术栈和代码规范。OrnnSkills 可以让同一个通用 skill 在不同项目中自动适配,无需维护多个版本。
2. 企业内部工具链
企业内部有自己的组件库、工具链、开发规范。OrnnSkills 可以自动将这些上下文注入到 skill 中,让 AI Agent 生成的代码更符合企业标准。
3. 个人开发者
你同时在维护多个开源项目或个人项目,每个项目风格不同。OrnnSkills 帮你自动管理 skill 的适配,让你专注于编码本身。
4. AI Agent 技能市场
你是 skill 作者,想要了解自己的 skill 在实际使用中的表现。OrnnSkills 可以收集真实的执行数据,帮助你持续改进 skill 质量。
为什么选择 OrnnSkills?
| 特性 | OrnnSkills | 传统 Skill 管理 |
|---|---|---|
| 自动适配 | ✅ 后台自动优化 | ❌ 手动维护多个版本 |
| 项目隔离 | ✅ Shadow Skill 机制 | ❌ 全局 skill 互相影响 |
| 可回滚 | ✅ 完整演化日志 | ❌ 难以追溯历史 |
| 用户无感 | ✅ 零配置自动运行 | ❌ 需要手动管理分支 |
| 数据驱动 | ✅ 基于真实 trace 优化 | ❌ 凭经验手动调整 |
技术亮点
- TypeScript 全栈: 类型安全,开发体验好
- SQLite 本地存储: 无需外部数据库,开箱即用
- 模块化架构: 易于扩展和定制
- 完整 CLI 支持: 命令行操作,适合自动化集成
- 置信度系统: 智能评估优化可靠性
未来规划
- Skill 市场集成
- 团队协作功能
- 可视化演化分析
- 更多优化策略
- IDE 插件支持
结语
OrnnSkills 不仅仅是一个工具,更是一种全新的 AI Agent 技能管理理念。我们相信,未来的 AI Agent 技能应该是活的——它们会在真实的使用场景中不断学习、进化,变得越来越懂你、懂你的项目。
让技能自动进化,让开发更加高效。
📦 GitHub: github.com/yourusername/ornn-skills
📖 文档: 完整文档
💬 讨论: GitHub Discussions
License: MIT