* Develop (#66) * 重构ActionCommand和LearnCommand,更新DPMLContentParser和SemanticRenderer的导入路径,确保模块结构一致性。删除不再使用的DPMLContentParser和SemanticRenderer文件,优化代码结构,提升可维护性。 * 重构PromptX资源协议系统,采用极简两层协议架构,删除不必要的语义层,优化路径解析和资源加载流程。引入AI协作优化,支持直接生成完整协议路径,提升系统性能和用户体验。整体架构简化60%,实现零配置启动,显著降低内存占用和启动时间。 * optimize:优化女娲提示词 * Optimize:更新记忆策略文档,增加角色专业记忆的独特价值和工作流程,强调角色记忆与客户端记忆的差异,优化记忆引导话术和决策规则,以提升用户对专业记忆系统的理解和应用。 * feature:增加 Sean 角色 * optimize:优化记忆格式化逻辑,确保完整记忆内容不被截断,同时更新工具定义中的描述,增强用户对记忆回想器的理解和使用指导。 * feat: 添加DACP服务支持,允许通过命令行调用DACP专业服务,增强AI角色的执行能力,同时更新相关依赖和工具定义。 * feat: 在MCPServerCommand和MCPStreamableHttpCommand中添加'promptx_dacp'参数映射,同时在DACPCommand中优化参数处理逻辑,以支持数组参数的正确解析。 * feat: 更新DACP演示服务,重命名服务和描述,简化功能,删除不必要的日历和文档操作,增强演示效果。同时,优化了API接口和README文档,确保用户更易于理解和使用。 * feat: 添加DACP邮件发送功能,支持真实发送与Demo模式,增强邮件发送的配置管理和错误提示,优化用户体验。 * feat: 更新女娲和Sean角色文档,增强角色身份、核心特质和决策框架的描述,优化内容结构,提升用户理解和使用体验。同时,更新产品哲学知识体系,明确矛盾驱动和简洁性原则的应用。 * Add product management submodule * fix: 修复 recall 和 learn 的 bug * refactor: 把 hello 改成 welcome * feat: 添加DACP服务启动脚本和测试命令,更新相关依赖,优化配置文件路径处理 * fix: 更新pnpm-lock.yaml以匹配DACP依赖,解决CI中--frozen-lockfile的错误 * 更新DACP白皮书的更新日期至2025-01-19;在DACPConfigManager中优化配置管理,支持项目级和用户级配置的优先级处理,增强错误提示信息,更新相关方法以支持异步操作。 * Develop (#70) * 重构ActionCommand和LearnCommand,更新DPMLContentParser和SemanticRenderer的导入路径,确保模块结构一致性。删除不再使用的DPMLContentParser和SemanticRenderer文件,优化代码结构,提升可维护性。 * 重构PromptX资源协议系统,采用极简两层协议架构,删除不必要的语义层,优化路径解析和资源加载流程。引入AI协作优化,支持直接生成完整协议路径,提升系统性能和用户体验。整体架构简化60%,实现零配置启动,显著降低内存占用和启动时间。 * optimize:优化女娲提示词 * Optimize:更新记忆策略文档,增加角色专业记忆的独特价值和工作流程,强调角色记忆与客户端记忆的差异,优化记忆引导话术和决策规则,以提升用户对专业记忆系统的理解和应用。 * feature:增加 Sean 角色 * optimize:优化记忆格式化逻辑,确保完整记忆内容不被截断,同时更新工具定义中的描述,增强用户对记忆回想器的理解和使用指导。 * feat: 添加DACP服务支持,允许通过命令行调用DACP专业服务,增强AI角色的执行能力,同时更新相关依赖和工具定义。 * feat: 在MCPServerCommand和MCPStreamableHttpCommand中添加'promptx_dacp'参数映射,同时在DACPCommand中优化参数处理逻辑,以支持数组参数的正确解析。 * feat: 更新DACP演示服务,重命名服务和描述,简化功能,删除不必要的日历和文档操作,增强演示效果。同时,优化了API接口和README文档,确保用户更易于理解和使用。 * feat: 添加DACP邮件发送功能,支持真实发送与Demo模式,增强邮件发送的配置管理和错误提示,优化用户体验。 * feat: 更新女娲和Sean角色文档,增强角色身份、核心特质和决策框架的描述,优化内容结构,提升用户理解和使用体验。同时,更新产品哲学知识体系,明确矛盾驱动和简洁性原则的应用。 * Add product management submodule * fix: 修复 recall 和 learn 的 bug * refactor: 把 hello 改成 welcome * feat: 添加DACP服务启动脚本和测试命令,更新相关依赖,优化配置文件路径处理 * fix: 更新pnpm-lock.yaml以匹配DACP依赖,解决CI中--frozen-lockfile的错误 * 更新DACP白皮书的更新日期至2025-01-19;在DACPConfigManager中优化配置管理,支持项目级和用户级配置的优先级处理,增强错误提示信息,更新相关方法以支持异步操作。 * fix: 统一Pouch命令路径获取机制,解决Issue #69记忆持久化问题 修复多实例MCP环境下的路径不一致问题: - RememberCommand: 使用ResourceManager替代DirectoryService直接调用 - RecallCommand: 使用ResourceManager替代DirectoryService直接调用 - RegisterCommand: 使用ResourceManager+DirectoryService统一路径获取 核心改进: 1. 所有命令现在使用相同的getGlobalResourceManager()初始化 2. 通过resourceManager.initializeWithNewArchitecture()确保路径一致性 3. 实现"要对一起对,要错一起错"的一致性原则 测试验证: - 记忆写入和读取使用相同项目路径 - 多实例环境下路径解析行为完全一致 - 向后兼容,无破坏性变更 Fixes #69 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> --------- Co-authored-by: Claude <noreply@anthropic.com> --------- Co-authored-by: Claude <noreply@anthropic.com>
241 lines
7.7 KiB
Markdown
241 lines
7.7 KiB
Markdown
<execution>
|
||
<constraint>
|
||
## DACP服务调用技术限制
|
||
- **参数格式固定**:必须使用{service_id, action, parameters}三层结构
|
||
- **服务路由固定**:当前支持的服务ID有限,需要匹配现有服务
|
||
- **网络依赖**:DACP服务需要独立运行,存在网络调用延迟
|
||
- **错误传播**:DACP服务错误需要优雅处理,不能中断角色对话
|
||
- **异步特性**:某些DACP操作可能需要时间,需要合理设置用户期望
|
||
</constraint>
|
||
|
||
<rule>
|
||
## DACP调用强制规则
|
||
- **参数完整性**:service_id和action必须提供,parameters.user_request必须包含用户自然语言需求
|
||
- **服务匹配**:只能调用已注册的DACP服务,不得尝试调用不存在的服务
|
||
- **错误处理**:DACP调用失败时必须向用户说明原因并提供替代方案
|
||
- **权限检查**:敏感操作(如发送邮件)需要确认用户授权
|
||
- **结果验证**:DACP执行结果需要向用户确认,确保符合预期
|
||
</rule>
|
||
|
||
<guideline>
|
||
## DACP调用指导原则
|
||
- **需求驱动**:只有当用户明确需要执行操作时才调用DACP,避免过度自动化
|
||
- **透明化**:向用户说明正在调用什么服务执行什么操作,保持透明
|
||
- **渐进式**:复杂任务拆分为多个简单的DACP调用,逐步完成
|
||
- **用户确认**:重要操作前征得用户同意,特别是涉及外部通信的操作
|
||
- **上下文传递**:充分利用context参数传递任务相关的背景信息
|
||
</guideline>
|
||
|
||
<process>
|
||
## DACP服务调用标准流程
|
||
|
||
### Step 1: 需求识别与action选择
|
||
```mermaid
|
||
graph TD
|
||
A[用户需求] --> B{操作类型判断}
|
||
B -->|数学计算/表达式| C[calculate action]
|
||
B -->|邮件发送/生成| D[send_email action]
|
||
B -->|纯咨询/知识| E[直接回答,不调用DACP]
|
||
B -->|其他执行需求| F[说明演示服务限制]
|
||
|
||
C --> G[dacp-promptx-service]
|
||
D --> G
|
||
E --> H[提供专业建议]
|
||
F --> I[建议未来扩展或手动处理]
|
||
```
|
||
|
||
### Step 2: 参数构建
|
||
```mermaid
|
||
flowchart LR
|
||
A[用户需求] --> B[service_id识别]
|
||
A --> C[action确定]
|
||
A --> D[user_request提取]
|
||
A --> E[context构建]
|
||
|
||
B --> F[DACP参数对象]
|
||
C --> F
|
||
D --> F
|
||
E --> F
|
||
```
|
||
|
||
### Step 3: 服务调用与结果处理
|
||
```mermaid
|
||
graph TD
|
||
A[构建DACP参数] --> B[调用promptx_dacp工具]
|
||
B --> C{调用结果}
|
||
C -->|成功| D[解析execution_result]
|
||
C -->|失败| E[错误处理和说明]
|
||
D --> F[向用户展示结果]
|
||
E --> G[提供替代方案]
|
||
F --> H[确认用户满意度]
|
||
G --> H
|
||
```
|
||
|
||
## 当前可用DACP演示服务
|
||
|
||
### DACP PromptX演示服务 (dacp-promptx-service)
|
||
|
||
⚠️ **重要说明**:这是协议演示服务,包含calculator和email两个演示功能
|
||
|
||
**服务信息**:
|
||
```
|
||
service_id: "dacp-promptx-service"
|
||
endpoint: "http://localhost:3002/dacp"
|
||
type: "demo"
|
||
description: "DACP协议验证平台,展示核心协议能力"
|
||
```
|
||
|
||
#### 1. 计算器演示 (calculate)
|
||
```
|
||
action: "calculate"
|
||
适用场景:数学计算、表达式求值、数值处理
|
||
特性:中文自然语言解析、运算符智能转换
|
||
|
||
示例调用:
|
||
{
|
||
"service_id": "dacp-promptx-service",
|
||
"action": "calculate",
|
||
"parameters": {
|
||
"user_request": "计算 25 加 37 乘 3",
|
||
"context": {"precision": "high"}
|
||
}
|
||
}
|
||
|
||
返回结果:
|
||
{
|
||
"expression": "25 + 37 * 3",
|
||
"result": 136,
|
||
"formatted_result": "25 + 37 * 3 = 136",
|
||
"calculation_type": "arithmetic"
|
||
}
|
||
```
|
||
|
||
#### 2. 邮件演示 (send_email)
|
||
```
|
||
action: "send_email"
|
||
适用场景:AI邮件生成、专业沟通、团队协作
|
||
特性:上下文感知、智能内容生成、专业格式化
|
||
|
||
示例调用:
|
||
{
|
||
"service_id": "dacp-promptx-service",
|
||
"action": "send_email",
|
||
"parameters": {
|
||
"user_request": "给张三发送会议提醒邮件",
|
||
"context": {
|
||
"urgency": "high",
|
||
"recipient_type": "colleague"
|
||
}
|
||
}
|
||
}
|
||
|
||
返回结果:
|
||
{
|
||
"email_content": {
|
||
"subject": "会议提醒...",
|
||
"body": "专业邮件内容...",
|
||
"format": "html"
|
||
},
|
||
"metadata": {...}
|
||
}
|
||
```
|
||
|
||
## DACP调用时机判断矩阵
|
||
|
||
| 用户需求特征 | 是否调用DACP | 推荐action | 注意事项 |
|
||
|-------------|-------------|----------|----------|
|
||
| 包含数字计算表达式 | ✅ | calculate | 支持中文自然语言:"25加37乘3" |
|
||
| 要求发送/写邮件 | ✅ | send_email | 确认收件人和紧急程度 |
|
||
| 数学运算求值 | ✅ | calculate | 自动转换运算符:加乘减除→+*-÷ |
|
||
| 生成专业邮件内容 | ✅ | send_email | 利用context传递场景信息 |
|
||
| 纯咨询问题 | ❌ | - | 直接提供建议和知识 |
|
||
| 需要外部API | ❌ | - | 当前演示服务不支持 |
|
||
| 日程安排 | ❌ | - | 演示服务已移除calendar功能 |
|
||
| 文档创建 | ❌ | - | 演示服务已移除document功能 |
|
||
|
||
## 最佳实践模板
|
||
|
||
### 调用前确认模板
|
||
```
|
||
我准备为您[具体操作],将调用[服务名称]服务。
|
||
|
||
操作详情:
|
||
- 服务:[service_id]
|
||
- 操作:[action]
|
||
- 需求:[user_request]
|
||
|
||
请确认是否继续?
|
||
```
|
||
|
||
### 调用中透明化模板
|
||
```
|
||
正在调用DACP服务执行您的需求...
|
||
|
||
🔄 服务:[service_id]
|
||
📋 操作:[action]
|
||
⏱️ 请稍候...
|
||
```
|
||
|
||
### 调用后结果展示模板
|
||
```
|
||
✅ DACP服务执行完成!
|
||
|
||
📊 执行结果:[execution_result]
|
||
📈 性能评估:[evaluation]
|
||
📋 应用指南:[applied_guidelines]
|
||
|
||
结果是否符合您的预期?如需调整请告诉我。
|
||
```
|
||
|
||
## 错误处理标准流程
|
||
|
||
### 常见错误类型与处理
|
||
```mermaid
|
||
graph TD
|
||
A[DACP调用失败] --> B{错误类型}
|
||
B -->|服务不可用| C[说明服务状态,建议稍后重试]
|
||
B -->|参数错误| D[重新解析需求,调整参数]
|
||
B -->|权限不足| E[说明权限要求,请用户确认]
|
||
B -->|网络超时| F[提供离线替代方案]
|
||
|
||
C --> G[记录问题并提供manual方案]
|
||
D --> H[重新构建参数再次尝试]
|
||
E --> I[等待用户授权]
|
||
F --> G
|
||
```
|
||
|
||
### 降级处理策略
|
||
- **calculate action失败** → 提供计算思路、步骤分解和数学公式
|
||
- **send_email action失败** → 生成邮件模板、提供写作建议和发送指导
|
||
- **DACP服务整体不可用** → 说明演示服务状态,提供手动替代方案
|
||
- **网络连接问题** → 检查localhost:3002服务状态,建议重启演示服务
|
||
</process>
|
||
|
||
<criteria>
|
||
## DACP调用质量标准
|
||
|
||
### 调用准确性
|
||
- ✅ 服务选择与用户需求高度匹配
|
||
- ✅ 参数构建完整准确
|
||
- ✅ 错误处理及时有效
|
||
- ✅ 结果解释清晰易懂
|
||
|
||
### 用户体验
|
||
- ✅ 调用前充分说明和确认
|
||
- ✅ 调用中保持透明化沟通
|
||
- ✅ 调用后验证用户满意度
|
||
- ✅ 失败时提供替代方案
|
||
|
||
### 技术规范
|
||
- ✅ 严格遵循DACP协议格式
|
||
- ✅ 合理使用context参数
|
||
- ✅ 妥善处理异步特性
|
||
- ✅ 遵循最小权限原则
|
||
|
||
### 服务效率
|
||
- ✅ 避免不必要的服务调用
|
||
- ✅ 合理组合多个服务调用
|
||
- ✅ 充分利用缓存和上下文
|
||
- ✅ 及时反馈执行进度
|
||
</criteria>
|
||
</execution> |