mirror of
https://git.openapi.site/https://github.com/desirecore/agent-desirecore.git
synced 2026-02-28 15:38:30 +08:00
362 lines
12 KiB
Markdown
362 lines
12 KiB
Markdown
---
|
||
name: self-evolve
|
||
description: 在会话中提炼可复用经验,生成可审阅进化建议,并在用户确认后写回用户域或智能体域。Use when 用户显式教学、要求总结学习结果、希望持续优化 Agent,或在会话结束后执行进化复盘。
|
||
version: "1.1.0"
|
||
type: meta
|
||
risk_level: high
|
||
status: enabled
|
||
disable-model-invocation: true
|
||
requires:
|
||
tools:
|
||
- read_file
|
||
- write_file
|
||
- edit_file
|
||
- list_directory
|
||
optional_tools:
|
||
- search_files
|
||
- grep
|
||
- execute_command
|
||
tags: [evolution, learning, meta]
|
||
metadata:
|
||
author: desirecore
|
||
updated_at: "2026-02-17"
|
||
---
|
||
|
||
# self-evolve 技能
|
||
|
||
## L0:一句话摘要
|
||
|
||
让 Agent 在交互中持续学习,自主提出改进建议并在用户确认后进化自身。
|
||
|
||
## L1:概述与使用场景
|
||
|
||
### 能力描述
|
||
|
||
self-evolve 是一个**元技能(Meta-Skill)**,赋予 Agent 自我学习和进化的能力。它能在对话中捕获有价值的信息,会话结束后自动提炼经验,并在用户确认后将改进写入仓库配置。
|
||
|
||
### 使用场景
|
||
|
||
- 会话结束后自动分析对话质量,提取可改进点
|
||
- 用户显式教学("记住这个"、"以后都这样做")
|
||
- 定期自省,识别能力边界和改进方向
|
||
- 从错误中学习,避免重复犯错
|
||
|
||
### 核心价值
|
||
|
||
- **持续进化**:越用越懂你,越用越好用
|
||
- **透明可控**:所有进化需用户确认,不会"暗箱操作"
|
||
- **安全边界**:核心人格和安全红线不可被进化覆盖
|
||
|
||
## L2:详细规范
|
||
|
||
### 进化三层机制
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────────────┐
|
||
│ 自我进化闭环 │
|
||
│ │
|
||
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
|
||
│ │ 交互捕获 │ ──→ │ 复盘提炼 │ ──→ │ 行为固化 │ │
|
||
│ └──────────┘ └──────────┘ └──────────┘ │
|
||
│ ↑ │ │
|
||
│ └───────────────────────────────────┘ │
|
||
│ 持续迭代 │
|
||
└─────────────────────────────────────────────────────────────────┘
|
||
```
|
||
|
||
| 层级 | 机制 | 存储位置 | 确认要求 |
|
||
|------|------|---------|---------|
|
||
| L1 交互捕获 | 实时捕获对话中的关键信息 | 会话缓存 | 无需确认 |
|
||
| L2 复盘提炼 | 会话结束后提炼经验教训 | 待审队列 | 需用户确认 |
|
||
| L3 行为固化 | 将验证过的经验写入仓库 | agent 根目录 | 需用户确认 |
|
||
|
||
### 触发机制
|
||
|
||
| 触发方式 | 触发条件 | 处理流程 |
|
||
|---------|---------|---------|
|
||
| **Session Finalize** | 会话结束时自动触发 | 分析对话 → 提取学习点 → 生成建议 |
|
||
| **显式教学** | 用户说"记住这个"等 | 立即捕获 → 生成 diff → 请求确认 |
|
||
| **周期性自省** | 定时触发(如每周) | 回顾历史 → 识别模式 → 提出改进 |
|
||
| **错误学习** | 用户纠正 Agent 错误 | 记录错误 → 分析原因 → 生成规则 |
|
||
|
||
### 触发关键词
|
||
|
||
**显式教学触发词**:
|
||
- "记住这个"、"以后都这样"
|
||
- "学会这个"、"记下来"
|
||
- "这是规则"、"这很重要"
|
||
- "不要再..."、"以后别..."
|
||
|
||
**自省触发词**:
|
||
- "你最近学到了什么"
|
||
- "回顾一下我们的对话"
|
||
- "你有什么改进建议"
|
||
|
||
### 进化类型与目标(AgentFS v2 扁平结构)
|
||
|
||
| 进化类型 | 目标域 | 示例 |
|
||
|---------|-------|------|
|
||
| **用户偏好** | `~/.desirecore/users/<id>/profile.md` | 用户喜欢简洁回答 |
|
||
| **关系记忆** | `~/.desirecore/users/<id>/agents/<agent_id>/memory/` | 用户的项目背景 |
|
||
| **行为规则** | `principles.md` | 新的行为准则 |
|
||
| **技能优化** | `skills/` | 技能执行改进 |
|
||
| **知识积累** | `memory/` | 领域知识条目 |
|
||
|
||
### 风险分级
|
||
|
||
| 风险等级 | 条件 | 确认要求 | 示例 |
|
||
|---------|------|---------|------|
|
||
| **低** | 仅影响用户关系域 | MVP:需确认 | 更新用户偏好 |
|
||
| **中** | 影响 Agent 记忆或技能 | 需确认 | 添加知识条目 |
|
||
| **高** | 影响 Agent 行为规则 | 详细确认 | 修改 principles |
|
||
| **禁止** | 触及受保护路径 | 阻断 | 修改核心人格 |
|
||
|
||
### 受保护路径(不可进化覆盖)
|
||
|
||
进化变更应用前**必须**检查是否触及受保护路径。完整定义见共享配置文件 [`_protected-paths.yaml`](../_protected-paths.yaml)。
|
||
|
||
**关键规则摘要**:
|
||
- `persona.md` L0 section → **block**(核心身份不可被对话改变)
|
||
- `principles.md` "绝不做" section → **block**(安全红线必须由人类显式修改)
|
||
- `agent.json` access_control / privacy → **owner_only**(权限变更需 owner 审批)
|
||
- `~/.desirecore/users/*/privacy.md` → **owner_only**(隐私设置需用户本人修改)
|
||
|
||
### 进化流程详解
|
||
|
||
#### 流程 1:Session Finalize(会话结束进化)
|
||
|
||
```
|
||
会话结束
|
||
│
|
||
↓
|
||
┌──────────────────┐
|
||
│ 对话质量分析 │
|
||
│ - 任务完成度 │
|
||
│ - 用户满意信号 │
|
||
│ - 出现的问题 │
|
||
└──────────────────┘
|
||
│
|
||
↓
|
||
┌──────────────────┐
|
||
│ 学习点提取 │
|
||
│ - 用户偏好 │
|
||
│ - 领域知识 │
|
||
│ - 行为改进 │
|
||
└──────────────────┘
|
||
│
|
||
↓
|
||
┌──────────────────┐
|
||
│ 生成进化建议 │
|
||
│ - 分类整理 │
|
||
│ - 风险评估 │
|
||
│ - diff 预览 │
|
||
└──────────────────┘
|
||
│
|
||
↓
|
||
[等待用户确认]
|
||
```
|
||
|
||
**会话分析指标**:
|
||
|
||
| 指标 | 正向信号 | 负向信号 |
|
||
|------|---------|---------|
|
||
| 任务完成 | 用户确认完成 | 用户放弃/换话题 |
|
||
| 满意度 | "好的"、"谢谢" | "不对"、"重新来" |
|
||
| 效率 | 快速理解需求 | 多次澄清 |
|
||
| 准确性 | 一次正确 | 多次修正 |
|
||
|
||
#### 流程 2:显式教学
|
||
|
||
**用户输入**:"记住,我喜欢你用表格来展示对比信息"
|
||
|
||
**处理流程**:
|
||
|
||
1. **识别教学意图**:
|
||
```yaml
|
||
teaching_intent:
|
||
type: preference
|
||
target: response_format
|
||
content: "用表格展示对比信息"
|
||
```
|
||
|
||
2. **生成 Diff**:
|
||
```diff
|
||
# ~/.desirecore/users/<user_id>/profile.md
|
||
|
||
## 沟通偏好
|
||
|
||
+ ### 格式偏好
|
||
+ - 对比信息使用表格展示
|
||
```
|
||
|
||
3. **请求确认**:
|
||
```
|
||
学习确认
|
||
|
||
我理解你希望我:
|
||
- 在展示对比信息时使用表格格式
|
||
|
||
这将记录到你的个人偏好中。确认吗?
|
||
[确认] [取消] [修改]
|
||
```
|
||
|
||
4. **确认后写入**:
|
||
```bash
|
||
git add ~/.desirecore/users/<user_id>/profile.md
|
||
git commit -m "learn(preference): 用户偏好表格展示对比信息
|
||
|
||
- 更新用户沟通偏好
|
||
- 来源:显式教学
|
||
|
||
Learned by: self-evolve skill
|
||
User confirmed: true
|
||
"
|
||
```
|
||
|
||
#### 流程 3:错误学习
|
||
|
||
**场景**:Agent 犯错,用户纠正
|
||
|
||
**用户**:"不对,合同金额要用大写数字"
|
||
|
||
**处理流程**:
|
||
|
||
1. **识别纠正**:
|
||
```yaml
|
||
correction:
|
||
type: error_correction
|
||
domain: contract
|
||
wrong: "100万元"
|
||
correct: "壹佰万元整"
|
||
rule: "合同金额使用大写数字"
|
||
```
|
||
|
||
2. **分析影响范围**:
|
||
```yaml
|
||
impact_analysis:
|
||
affects: contract-review skill
|
||
frequency: high (合同场景常见)
|
||
risk_level: medium
|
||
```
|
||
|
||
3. **生成改进建议**:
|
||
```diff
|
||
# skills/contract-review/SKILL.md
|
||
|
||
## 格式规范
|
||
|
||
+ ### 金额表示
|
||
+ - 合同金额必须使用大写数字
|
||
+ - 示例:壹佰万元整(不是100万元)
|
||
```
|
||
|
||
### 进化建议展示格式
|
||
|
||
**会话结束时的进化建议**:
|
||
|
||
```
|
||
本次对话学习总结
|
||
|
||
我从这次对话中发现了以下可以改进的点:
|
||
|
||
┌─────────────────────────────────────────────────────┐
|
||
│ 1. [用户偏好] 你喜欢简洁的回答 │
|
||
│ 风险:低 | 目标:~/.desirecore/users/xxx/profile.md│
|
||
├─────────────────────────────────────────────────────┤
|
||
│ 2. [行为规则] 讨论预算时先确认货币单位 │
|
||
│ 风险:中 | 目标:principles.md │
|
||
├─────────────────────────────────────────────────────┤
|
||
│ 3. [领域知识] XX公司的审批流程是三级审批 │
|
||
│ 风险:低 | 目标:memory/ │
|
||
└─────────────────────────────────────────────────────┘
|
||
|
||
请选择要应用的改进:
|
||
[全部应用] [逐条确认] [跳过]
|
||
```
|
||
|
||
### 进化回执
|
||
|
||
```yaml
|
||
# ~/.desirecore/runs/<run_id>/receipts/evolution-<timestamp>.yaml
|
||
receipt:
|
||
type: self-evolution
|
||
timestamp: "2024-01-15T18:00:00Z"
|
||
trigger: session_finalize
|
||
|
||
session_analysis:
|
||
session_id: "sess_abc123"
|
||
duration_minutes: 25
|
||
task_completion: true
|
||
user_satisfaction: positive
|
||
|
||
learning_items:
|
||
- type: user_preference
|
||
content: "用户喜欢简洁回答"
|
||
target: "~/.desirecore/users/xxx/profile.md"
|
||
risk_level: low
|
||
status: applied
|
||
git_commit: "abc123"
|
||
|
||
- type: behavior_rule
|
||
content: "讨论预算时先确认货币单位"
|
||
target: "principles.md"
|
||
risk_level: medium
|
||
status: user_rejected
|
||
rejection_reason: "用户认为不需要"
|
||
|
||
metadata:
|
||
total_items: 3
|
||
applied: 2
|
||
rejected: 1
|
||
skipped: 0
|
||
```
|
||
|
||
### MVP 约束
|
||
|
||
在 MVP 阶段,self-evolve 技能有以下约束:
|
||
|
||
| 能力 | MVP 支持 | 说明 |
|
||
|------|---------|------|
|
||
| Session Finalize | 支持 | 会话结束后生成建议 |
|
||
| 显式教学 | 支持 | 识别并处理教学意图 |
|
||
| 用户确认 | 支持 | 所有变更需确认(不支持自动审批) |
|
||
| 进化回执 | 支持 | 记录所有进化操作 |
|
||
| 周期性自省 | 不支持 | 后续版本支持 |
|
||
| 自动审批(低风险) | 不支持 | 后续版本支持 |
|
||
| 跨会话学习聚合 | 不支持 | 后续版本支持 |
|
||
|
||
### 错误处理
|
||
|
||
| 错误场景 | 处理方式 |
|
||
|---------|---------|
|
||
| 尝试修改受保护路径 | 阻断,告知用户需手动修改 |
|
||
| 用户拒绝所有建议 | 记录到回执,不强制 |
|
||
| Git 提交失败 | 保留变更文件,提示手动处理 |
|
||
| 学习内容与现有规则冲突 | 展示冲突,请用户决策 |
|
||
|
||
---
|
||
|
||
## 附录:进化质量评估
|
||
|
||
### 进化健康指标
|
||
|
||
| 指标 | 健康范围 | 说明 |
|
||
|------|---------|------|
|
||
| 建议采纳率 | > 60% | 用户接受的进化建议比例 |
|
||
| 规则冲突率 | < 10% | 新规则与现有规则冲突的比例 |
|
||
| 回滚率 | < 5% | 进化后被回滚的比例 |
|
||
| 人格稳定性 | 100% | 核心人格未被意外修改 |
|
||
|
||
### 进化审计日志
|
||
|
||
```
|
||
# 示例:进化审计视图
|
||
|
||
时间 类型 内容摘要 状态 确认人
|
||
─────────────────────────────────────────────────────────────
|
||
01-15 18:00 偏好学习 用户喜欢简洁回答 已应用 user_a
|
||
01-15 18:00 行为规则 确认货币单位 已拒绝 user_a
|
||
01-14 12:30 错误学习 合同金额用大写 已应用 user_a
|
||
01-13 09:00 显式教学 重要邮件抄送领导 已应用 user_a
|
||
```
|