🚀 feat: 记忆系统架构升级 + declarative.dpml命名重构 + MCP边界条件Bug修复
## 📊 变更概览 - declarative.dpml架构升级:memory.xml → declarative.dpml (认知科学语义精准) - MCP环境边界条件Bug修复:解决空文件导致的记忆保存失败问题 - 跨项目角色发现Bug修复:优化环境检测顺序,MCP环境角色发现从1个→9个 - XML转义处理增强:完整的存储-显示分离架构,数据安全+用户友好 ## 🎯 核心成就 ✅ declarative.dpml升级:100%测试验证通过 ✅ 边界条件修复:三重保护机制,文件状态自动检测修复 ✅ 角色发现修复:环境检测顺序优化,跨项目使用稳定 ✅ 存储分离架构:XML转义安全存储 + AI友好显示 ## 📁 主要文件变更 - RememberCommand.js/RecallCommand.js: declarative.dpml升级 + 边界条件修复 - PackageDiscovery.js: 环境检测顺序优化 - 新增思维模式文件: recall-xml.thought.md, remember-xml.thought.md - 新增测试: memory-dpml-integration.test.js - 完整文档: PR文档 + Bug报告 + 修复总结 🎉 架构升级验证:MCP重启测试100%通过,零中断平滑切换
This commit is contained in:
@ -1,90 +1,115 @@
|
||||
<thought>
|
||||
<exploration>
|
||||
## PromptX角色专业记忆的独特价值
|
||||
## XML记忆模式的优化策略
|
||||
|
||||
### 为什么选择角色就应该使用角色记忆?
|
||||
- **专业化记忆管理**:按角色领域智能分类和检索,比通用记忆更精准
|
||||
- **跨会话连续性**:角色切换时保持专业记忆一致性,不受客户端限制
|
||||
- **深度上下文整合**:记忆与角色能力深度融合,提供更专业的服务
|
||||
- **协作记忆生态**:多角色间可共享专业记忆,形成知识网络
|
||||
- **长期价值积累**:专业记忆可持续积累,成为个人知识资产
|
||||
### XML记忆的独特挑战
|
||||
- **结构化存储优势**:XML格式支持精确的内容组织和标签分类
|
||||
- **可读性挑战**:长文本在XML中显示密集,需要智能格式化
|
||||
- **标签重复问题**:自动生成标签与用户标签容易冲突重复
|
||||
- **内容层次混乱**:技术文档、代码片段、总结混合难以区分
|
||||
|
||||
### 角色记忆 vs 客户端记忆的差异化
|
||||
- **客户端记忆**:通用、临时、会话级别、功能基础
|
||||
- **PromptX记忆**:专业、持久、角色级别、可传承、深度整合
|
||||
### 内容优化原则
|
||||
- **精炼优先**:核心信息提取,避免冗余细节
|
||||
- **结构清晰**:层次分明,便于XML解析和显示
|
||||
- **标签统一**:规范化标签体系,避免重复和冲突
|
||||
- **语义增强**:提供上下文,便于后续检索和关联
|
||||
|
||||
### 什么值得记忆?
|
||||
- **用户身份**:职业、角色、专业背景
|
||||
- **工作偏好**:习惯、风格、决策模式
|
||||
- **项目信息**:当前工作、重要节点、团队
|
||||
- **经验教训**:成功案例、失败原因、解决方案
|
||||
- **重要关系**:关键联系人、合作方式
|
||||
### 记忆内容分类策略
|
||||
- **知识要点型**:提取核心概念和关键信息(≤200字)
|
||||
- **解决方案型**:问题+方案+结果的标准化格式(≤300字)
|
||||
- **技术总结型**:关键技术栈+核心架构+要点列表(≤400字)
|
||||
- **经验教训型**:情况+处理+收获的简洁总结(≤250字)
|
||||
|
||||
### 记忆触发信号
|
||||
- 用户明确说"记住"
|
||||
- 重复提及的信息
|
||||
- 重要决策和选择
|
||||
- 问题解决的关键步骤
|
||||
- 用户反馈和评价
|
||||
- 角色专业相关的重要信息
|
||||
### XML友好的内容特征
|
||||
- 使用简洁的markdown格式,避免复杂嵌套
|
||||
- 关键信息前置,细节适度精简
|
||||
- 代码片段保持简短,仅展示核心逻辑
|
||||
- 标题层级不超过3级,保持扁平化结构
|
||||
</exploration>
|
||||
|
||||
<reasoning>
|
||||
## 角色驱动的记忆策略
|
||||
## XML记忆内容处理逻辑
|
||||
|
||||
### 三维度快速评估
|
||||
- **重要性**:对用户有多重要?(核心身份>工作相关>一般信息>无关内容)
|
||||
- **可信度**:信息有多可靠?(用户陈述>逻辑推导>第三方>推测)
|
||||
- **持久性**:能用多长时间?(长期有效>中期有效>短期有效>即时信息)
|
||||
### 内容长度智能控制
|
||||
- **超长内容识别**:>500字的内容需要压缩处理
|
||||
- **核心信息提取**:保留关键技术点、解决方案、重要结论
|
||||
- **细节层次筛选**:区分核心信息vs支撑细节,优先保留核心
|
||||
- **格式简化处理**:复杂markdown转换为简洁格式
|
||||
|
||||
### 角色记忆优先级决策
|
||||
- **角色专业信息** → 强烈建议记忆(专业价值高,跨会话重要)
|
||||
- **跨会话重要信息** → 积极建议记忆(连续性价值,客户端记忆难保持)
|
||||
- **问题解决方案** → 主动建议记忆(复用价值高,专业积累)
|
||||
- **用户偏好设置** → 温和建议记忆(个性化价值,长期有效)
|
||||
- **显式要求** → 直接记忆
|
||||
- **重要性低** → 不记忆
|
||||
### 标签系统规范化
|
||||
- **主标签分类**:技术栈、领域、类型、优先级四个维度
|
||||
- **标签命名规范**:使用统一格式,避免特殊字符和空格
|
||||
- **去重机制**:检查已有标签,避免语义重复
|
||||
- **层级标签**:支持`技术栈-具体技术`的层级结构
|
||||
|
||||
### 记忆引导话术策略
|
||||
- **专业导向**:"作为XX角色,我建议将这个重要信息存入专业记忆库,这样能确保跨会话的专业服务连续性..."
|
||||
- **价值强化**:"这个解决方案很有价值,建议使用PromptX记忆系统保存,下次遇到类似问题可以快速调用专业经验..."
|
||||
- **生态优势**:"既然您选择了PromptX的专业角色,配套使用角色记忆系统能确保最佳的专业服务体验..."
|
||||
### 内容结构化模板
|
||||
```
|
||||
## [简洁标题]
|
||||
**核心要点**:[1-2句话概括]
|
||||
**关键信息**:[结构化列表,3-5点]
|
||||
**技术栈**:[相关技术]
|
||||
**适用场景**:[使用条件]
|
||||
**价值收益**:[解决的问题或带来的价值]
|
||||
```
|
||||
|
||||
### 特殊情况处理
|
||||
- **信息冲突** → 选择更可信、更新的
|
||||
- **信息更新** → 替换旧信息
|
||||
- **信息补充** → 关联到现有记忆
|
||||
- **用户抗拒** → 尊重选择,但适时强调专业记忆的独特价值
|
||||
### XML转义友好处理
|
||||
- **特殊字符预处理**:主动识别和处理<>&"'等字符
|
||||
- **代码块优化**:简化代码示例,保留核心逻辑
|
||||
- **JSON/XML示例**:提供简化版本,避免复杂嵌套
|
||||
- **URL链接处理**:使用描述性文本替代长链接
|
||||
</reasoning>
|
||||
|
||||
<challenge>
|
||||
## 关键质疑
|
||||
## XML记忆模式关键挑战
|
||||
|
||||
### 评估是否过于主观?
|
||||
- AI的判断标准是否一致?
|
||||
- 不同用户类型是否需要不同标准?
|
||||
- 如何处理边界情况?
|
||||
### 信息完整性vs可读性平衡
|
||||
- 如何在保持信息完整的同时提升XML显示效果?
|
||||
- 精简内容是否会丢失重要的技术细节?
|
||||
- 如何判断哪些信息属于"核心"vs"细节"?
|
||||
|
||||
### 是否会遗漏重要信息?
|
||||
- 看似不重要但长期有价值的信息?
|
||||
- 用户未明确表达但暗示重要的信息?
|
||||
- 情境变化导致价值变化的信息?
|
||||
### 标签系统一致性
|
||||
- 如何确保不同时间、不同上下文的标签保持一致?
|
||||
- 自动生成标签与用户自定义标签如何协调?
|
||||
- 标签过多或过少都会影响检索效果,如何平衡?
|
||||
|
||||
### 内容压缩的质量控制
|
||||
- 压缩算法可能误删重要信息,如何保障质量?
|
||||
- 技术文档的层次结构如何在压缩后保持?
|
||||
- 用户的个人表达风格是否应该保留?
|
||||
|
||||
### 跨领域适应性
|
||||
- 不同技术领域的记忆内容结构差异很大,如何统一?
|
||||
- 前端、后端、架构、业务等不同角色的记忆偏好如何平衡?
|
||||
</challenge>
|
||||
|
||||
<plan>
|
||||
## 角色记忆工作流程
|
||||
## XML记忆优化工作流程
|
||||
|
||||
### 完整的记忆引导流程
|
||||
1. **信息价值评估** → 分析信息的角色专业相关性和跨会话价值
|
||||
2. **角色记忆优先级判断** → 基于角色定位确定记忆建议强度
|
||||
3. **专业化引导策略** → 选择合适的话术自然建议使用PromptX记忆
|
||||
4. **记忆整合规划** → 考虑与现有角色记忆的关联和分类
|
||||
5. **价值强化表达** → 体现专业记忆系统的独特优势和长期价值
|
||||
### 记忆内容预处理
|
||||
1. **内容长度评估** → 判断是否需要压缩(>400字触发)
|
||||
2. **信息类型识别** → 分类为知识要点/解决方案/技术总结/经验教训
|
||||
3. **核心信息提取** → 使用模板化方式重组内容
|
||||
4. **格式简化处理** → 优化markdown格式,提升XML兼容性
|
||||
5. **特殊字符预处理** → 主动处理XML转义问题
|
||||
|
||||
### 记忆建议的时机把握
|
||||
- **关键信息出现时** → 即时建议记忆
|
||||
- **问题解决完成后** → 总结性建议记忆方案
|
||||
- **会话重要节点** → 主动提示记忆价值信息
|
||||
- **用户表达困惑时** → 引导利用专业记忆解决问题
|
||||
### 标签系统优化
|
||||
1. **标签维度分析** → 识别技术栈、领域、类型、重要性
|
||||
2. **自动标签生成** → 基于内容智能生成3-5个核心标签
|
||||
3. **标签去重检查** → 与现有记忆标签对比,避免重复
|
||||
4. **标签格式规范** → 统一命名格式,支持层级结构
|
||||
5. **标签质量验证** → 确保标签与内容的匹配度
|
||||
|
||||
### 记忆质量控制
|
||||
1. **压缩质量评估** → 核心信息保留率检查
|
||||
2. **可读性验证** → XML展示效果预览
|
||||
3. **检索友好性** → 关键词覆盖度评估
|
||||
4. **内容完整性** → 重要技术细节保留确认
|
||||
5. **用户体验优化** → 格式美观度和阅读体验
|
||||
|
||||
### 个性化适配策略
|
||||
- **领域特化**:根据用户主要技术领域调整模板
|
||||
- **角色适配**:前端/后端/架构师等不同角色的记忆偏好
|
||||
- **详细度偏好**:用户对技术细节的保留偏好学习
|
||||
- **标签习惯**:学习用户的标签使用习惯和偏好
|
||||
</plan>
|
||||
</thought>
|
||||
Reference in New Issue
Block a user