17 KiB
17 KiB
version, last-updated, status
| version | last-updated | status |
|---|---|---|
| 1.0 | 2026-02-24 | design |
Agent 自我进化架构 - 总览
产品定位
Qiming Agent 是一个可以自我进化的 AI 助手桌面应用。与传统 Agent 不同,它不仅能执行任务,还能从经验中学习,实现持续成长。
核心愿景
让 Agent 不是静态工具,而是可以成长的伙伴。第 100 次使用比第 1 次更聪明。
核心原则
1. 双层环境架构
┌─────────────────────────────────────────────────────────────┐
│ 用户界面层 │
│ - 简洁、友好、零门槛 │
│ - 用户不需要知道底层细节 │
└─────────────────────────────────────────────────────────────┘
↕
┌─────────────────────────────────────────────────────────────┐
│ Agent 运行环境层 │
│ - 受限但有弹性 │
│ - 可以安装工具、自我迭代 │
│ - 与用户环境隔离 │
└─────────────────────────────────────────────────────────────┘
2. 三区隔离模型
┌──────────────────────────────────────────────────────────────────┐
│ 应用核心区 (App Core) │
│ ───────────────────────── │
│ - 内容: Electron, Node.js, uv, 核心引擎 │
│ - 特点: 完全受控,不可变 │
│ - 目的: 保证应用稳定性 │
│ - Agent 权限: 只读 │
├──────────────────────────────────────────────────────────────────┤
│ Agent 工作区 (Agent Workspace) │
│ ──────────────────────── │
│ - 内容: 工具、依赖、缓存、临时文件 │
│ - 特点: Agent 可写,受应用管理 │
│ - 目的: Agent 自我迭代的空间 │
│ - Agent 权限: 完全控制 │
├──────────────────────────────────────────────────────────────────┤
│ 用户系统区 (User System) │
│ ──────────────────── │
│ - 内容: 系统工具、用户配置 │
│ - 特点: 只读访问,受污染风险 │
│ - 目的: 兼容性回退 │
│ - Agent 权限: 只读调用 │
└──────────────────────────────────────────────────────────────────┘
3. Agent 自由度边界
| 能力 | 允许 | 限制 | 原因 |
|---|---|---|---|
| 安装 npm 包 | ✅ 到工作区 | ❌ 到全局 | 避免污染用户环境 |
| 安装 Python 包 | ✅ 通过 uv | ❌ 系统 pip | 隔离环境 |
| 修改配置 | ✅ 工作区内 | ❌ 应用配置 | 保护核心 |
| 执行系统命令 | ✅ 只读工具 | ❌ 写入操作 | 安全考虑 |
| 自我升级 | ✅ 工作区依赖 | ❌ 引擎核心 | 稳定性优先 |
架构概览
系统架构图
┌─────────────────────────────────────────────────────────────────────────┐
│ AGENT 自我进化系统 │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌───────────────────────────────────────────────────────────────────┐ │
│ │ 感知层 (Perceive) │ │
│ │ • 收集任务输入、环境状态、用户反馈 │ │
│ └───────────────────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌───────────────────────────────────────────────────────────────────┐ │
│ │ 记忆层 (Recall) │ │
│ │ • 查询 EvoMap 决策图谱、历史经验、可用技能 │ │
│ └───────────────────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌───────────────────────────────────────────────────────────────────┐ │
│ │ 规划层 (Plan) │ │
│ │ • 生成多个候选方案,按置信度排序 │ │
│ └───────────────────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌───────────────────────────────────────────────────────────────────┐ │
│ │ 执行层 (Act) │ │
│ │ • 执行选定的方案,实时监控 │ │
│ └───────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ┌───────────┴───────────┐ │
│ │ │ │
│ ┌───▼────┐ ┌───▼────┐ │
│ │ 成功 │ │ 失败 │ │
│ └───┬────┘ └───┬────┘ │
│ │ │ │
│ ▼ ▼ │
│ ┌─────────────────────────────┐ ┌─────────────────────────────┐ │
│ │ 强化学习 (Reinforce) │ │ 自我修复 (Repair) │ │
│ │ • 编码成功记忆 │ │ • 分析失败原因 │ │
│ │ • 更新 EvoMap 置信度 │ │ • 查询备选方案 │ │
│ │ • 提取/优化技能 │ │ • 尝试备选方案 │ │
│ │ • 更新 Soul.md │ │ • 记录失败教训 │ │
│ └──────────────┬──────────────┘ └──────────────┬──────────────┘ │
│ │ │ │
│ └────────────┬───────────────────┘ │
│ ▼ │
│ ┌───────────────────────────────────────────────────────────────────┐ │
│ │ 反思层 (Reflect) │ │
│ │ • 定期反思(每 N 次任务或每天) │ │
│ │ • 发现模式、生成洞察、提炼原则 │ │
│ └───────────────────────────────────────────────────────────────────┘ │
│ ↓ │
│ 更新记忆/EvoMap/Soul │
│ ↓ │
│ 下次任务更聪明 │
│ │
└─────────────────────────────────────────────────────────────────────────┘
核心组件关系
┌─────────────────────────────────────────────────────────────────────────┐
│ 核心组件 │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Memory │◄────►│ EvoMap │◄────►│ Skills │ │
│ │ 记忆系统 │ │ 进化图谱 │ │ 技能库 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │ │ │ │
│ └──────────────────────┼──────────────────────┘ │
│ ▼ │
│ ┌──────────────┐ │
│ │ Soul.md │ │
│ │ 灵魂文件 │ │
│ └──────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────┘
用户体验对比
| 维度 | 传统 Agent | 自我进化 Agent |
|---|---|---|
| 学习 | 每次重新探索 | 记住有效方法 |
| 错误 | 重复犯错 | 从失败中学习 |
| 效率 | 随时间不变 | 越用越快 |
| 能力 | 固定能力 | 持续成长 |
用户可见的变化
第 1 次使用:
Agent: "让我分析这个日志..."
[使用 grep,耗时 5s]
Agent: "完成,发现 23 个错误"
第 10 次使用:
Agent: "分析日志中..."
[使用专用技能,耗时 2s]
Agent: "完成,发现 23 个错误"
第 N 次使用:
Agent: "又是这个项目,我已经知道你的偏好了..."
[自动应用最佳方案]
安全与控制
用户控制权
interface EvolutionControl {
settings: {
allowSelfRepair: boolean; // 允许自我修复
allowSkillCreation: boolean; // 允许创造新技能
allowToolInstallation: boolean;// 允许安装工具
maxMemorySize: string; // 记忆大小限制
learningMode: 'aggressive' | 'balanced' | 'conservative';
};
actions: {
resetLearning(): void; // 重置学习
exportSkills(): Skill[]; // 导出技能
importSkills(skills: Skill[]): void; // 导入技能
reviewInsights(): Insight[]; // 审查洞察
};
}
安全边界
- 工具安装 → 用户确认或白名单
- 系统修改 → 沙箱限制
- 网络访问 → 透明日志
- 技能执行 → 可审计
数据目录结构
~/.qimingclaw/
├── soul/ # Agent 自我认知
│ ├── soul.md # 主灵魂文件
│ ├── principles.md # 学习到的原则
│ └── anti-patterns.md # 避免的陷阱
│
├── memory/ # 记忆存储
│ ├── short-term.md # 当前会话记忆
│ ├── successes/ # 成功经验
│ ├── failures/ # 失败教训
│ ├── insights/ # 洞察
│ └── index.json # 检索索引
│
├── skills/ # 技能库
│ ├── core/ # 核心技能(内置)
│ └── learned/ # 学到的技能
│
└── evo-map/ # 进化图谱
├── decisions/ # 决策树
└── patterns/ # 模式库
核心思想总结
Agent 不是静态工具,而是可以成长的伙伴
通过:
- Memory: 记住经验
- Skill Creator: 创造能力
- EvoMap: 智慧决策
- Soul.md: 自我认知
实现:
- 越用越快
- 越用越懂你
- 越用越强
相关文档
- 核心组件 - Memory、Skill Creator、EvoMap、Soul.md 详细设计
- 循环流程 - 七层循环、接口定义、数据流
- 存储实现 - Markdown 格式、索引机制、读写接口
- 隔离策略 - 三区模型、环境变量、安全边界
- OpenClaw 参考 - openclaw 架构参考