--- version: 1.0 last-updated: 2026-02-24 status: 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: "又是这个项目,我已经知道你的偏好了..." [自动应用最佳方案] ``` --- ## 安全与控制 ### 用户控制权 ```typescript 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[]; // 审查洞察 }; } ``` ### 安全边界 1. **工具安装** → 用户确认或白名单 2. **系统修改** → 沙箱限制 3. **网络访问** → 透明日志 4. **技能执行** → 可审计 --- ## 数据目录结构 ``` ~/.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: 自我认知 实现: - 越用越快 - 越用越懂你 - 越用越强 ``` --- ## 相关文档 - [核心组件](./COMPONENTS.md) - Memory、Skill Creator、EvoMap、Soul.md 详细设计 - [循环流程](./LOOP.md) - 七层循环、接口定义、数据流 - [存储实现](./STORAGE.md) - Markdown 格式、索引机制、读写接口 - [隔离策略](./ISOLATION.md) - 三区模型、环境变量、安全边界 - [OpenClaw 参考](./REF-OPENCLAW.md) - openclaw 架构参考