151 lines
3.9 KiB
Markdown
151 lines
3.9 KiB
Markdown
---
|
||
name: Self-Evolving Skill
|
||
description: "元认知自我学习系统——自动技能进化。"
|
||
homepage: https://github.com/whtoo/self-evolving-bot
|
||
|
||
---
|
||
|
||
|
||
# Self-Evolving Skill
|
||
|
||
元认知自学习系统 - 基于预测编码和价值驱动的Skill自动演化。
|
||
|
||
## 功能
|
||
|
||
- **ResidualPyramid金字塔分解,量化认知缺口
|
||
-**: 残差 **自适应反思触发**: 基于残差能量自动判断何时需要学习
|
||
- **经验回放**: 缓存已学模式,降低重复触发
|
||
- **价值门控**: 只有提升长期价值才接受变异
|
||
- **持久化**: 经验自动保存/加载
|
||
|
||
## 安装
|
||
|
||
```bash
|
||
# 技能已安装到 ~/.openclaw/skills/self-evolving-skill
|
||
# 或使用ClawHub
|
||
clawhub install self-evolving-skill
|
||
```
|
||
|
||
## 架构
|
||
|
||
```
|
||
self-evolving-skill/
|
||
├── core/ # Python核心
|
||
│ ├── residual_pyramid.py # 残差金字塔(SVD分解)
|
||
│ ├── reflection_trigger.py # 自适应触发器
|
||
│ ├── experience_replay.py # 经验回放缓存
|
||
│ ├── skill_engine.py # 核心引擎+ValueGate
|
||
│ ├── storage.py # 持久化
|
||
│ └── mcp_server.py # MCP服务器
|
||
├── src/ # TypeScript SDK
|
||
│ ├── index.ts # 主入口
|
||
│ ├── cli.ts # CLI
|
||
│ └── mcp-tools.ts # 工具定义
|
||
├── skills/ # OpenClaw Skill
|
||
│ └── self-evolving-skill/ # 技能封装
|
||
├── MCP_CONFIG.md # MCP配置
|
||
└── README.md # 文档
|
||
```
|
||
|
||
## MCP工具
|
||
|
||
| 工具 | 描述 | 参数 |
|
||
|------|------|------|
|
||
| `skill_create` | 创建Skill | `name`, `description` |
|
||
| `skill_execute` | 执行并学习 | `skill_id`, `context`, `success`, `value` |
|
||
| `skill_analyze` | 分析嵌入 | `embedding` |
|
||
| `skill_list` | 列出Skills | - |
|
||
| `skill_stats` | 系统统计 | - |
|
||
| `skill_save` | 持久化保存 | `skill_id` |
|
||
| `skill_load` | 加载 | `skill_id` |
|
||
|
||
## 使用方式
|
||
|
||
### CLI
|
||
|
||
```bash
|
||
# 列出所有Skill
|
||
openclaw skill self-evolving-skill list
|
||
|
||
# 创建Skill
|
||
openclaw skill self-evolving-skill create --name "MySkill"
|
||
|
||
# 执行
|
||
openclaw skill self-evolving-skill execute <id> --success
|
||
|
||
# 分析
|
||
openclaw skill self-evolving-skill analyze --embedding '[0.1,0.2,...]'
|
||
|
||
# 统计
|
||
openclaw skill self-evolving-skill stats
|
||
```
|
||
|
||
### MCP服务器
|
||
|
||
```bash
|
||
# 启动MCP服务器
|
||
cd ~/.openclaw/skills/self-evolving-skill
|
||
./run_mcp.sh
|
||
|
||
# 或使用适配器
|
||
python3 mcporter_adapter.py skill_list '{}'
|
||
```
|
||
|
||
### 编程
|
||
|
||
```typescript
|
||
import { SelfEvolvingSkillEngine } from 'self-evolving-skill';
|
||
|
||
const engine = new SelfEvolvingSkillEngine();
|
||
await engine.init();
|
||
|
||
const { skillId } = await engine.createSkill({ name: 'Analyzer' });
|
||
const stats = await engine.stats();
|
||
```
|
||
|
||
## 核心算法
|
||
|
||
### 1. 残差金字塔分解
|
||
|
||
```python
|
||
pyramid = ResidualPyramid(max_layers=5, use_pca=True)
|
||
decomposition = pyramid.decompose(embedding)
|
||
|
||
# 输出:
|
||
# - residual_ratio: 残差能量比率
|
||
# - suggested_abstraction: POLICY / SUB_SKILL / PREDICATE
|
||
# - novelty_score: 综合新颖性
|
||
```
|
||
|
||
### 2. 三层跃迁规则
|
||
|
||
| 覆盖率 | 抽象层级 | 操作 |
|
||
|--------|---------|------|
|
||
| >80% | POLICY | 调整策略权重 |
|
||
| 40-80% | SUB_SKILL | 生成子Skill |
|
||
| <40% | PREDICATE | 归纳新谓词 |
|
||
|
||
### 3. 自适应阈值
|
||
|
||
```python
|
||
trigger = ReflectionTrigger(
|
||
min_energy_ratio=0.10, # 初始阈值
|
||
value_gain_threshold=0.20, # 触发阈值
|
||
target_trigger_rate=0.15 # 目标15%触发率
|
||
)
|
||
```
|
||
|
||
## 文件位置
|
||
|
||
| 路径 | 说明 |
|
||
|------|------|
|
||
| `~/.openclaw/skills/self-evolving-skill` | 技能根目录 |
|
||
| `~/.openclaw/mcp_servers/self-evolving-skill.json` | MCP服务器配置 |
|
||
| `~/.openclaw/workspace/self-evolving-skill/storage` | 数据存储 |
|
||
|
||
## 相关文档
|
||
|
||
- [README.md](./README.md) - 完整文档
|
||
- [MCP_CONFIG.md](./MCP_CONFIG.md) - MCP配置说明
|
||
- [MEMORY.md](../MEMORY.md) - 研究笔记
|