refactor: 重构/prompt/目录为/resource/ - 更符合资源引用协议语义

- 重命名核心目录: /prompt/ → /resource/
- 更新PackageDiscovery中所有硬编码路径引用
- 重新生成package.registry.json,61个资源全部更新为@package://resource/路径
- 批量更新文档中的路径引用,保持一致性
- 目录结构保持不变:domain/, core/, protocol/, tool/子目录结构完全一致

重构原因: 随着tool协议的加入,prompt目录名称不再准确描述系统本质
重构价值: 为未来资源生态扩展奠定清晰的命名基础

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
sean
2025-06-28 15:02:34 +08:00
parent 8452eb4ec5
commit 54b77e7096
83 changed files with 318 additions and 373 deletions

View File

@ -30,7 +30,7 @@ ResourceRegistry.js (248行) + resource.registry.json (167行) + 内存协议注
**当前协议处理问题**
```javascript
// 问题1协议前缀不统一
"@package://prompt/core/role.md" // 正确
"@package://resource/core/role.md" // 正确
"@packages://promptx/prompt/core/" // 错误变换
// 问题2循环依赖
@ -341,7 +341,7 @@ class ResourceManager {
registry['role:java'] = '/path/to/file'
// 现在:保持协议一致性
registry['role:java'] = '@package://prompt/domain/java/java.role.md'
registry['role:java'] = '@package://resource/domain/java/java.role.md'
resolver.resolve('@package://...') // 统一解析
```
@ -370,7 +370,7 @@ const filePath = await resolver.resolve(reference) // 所有协议
### 4. 完全兼容现有格式
```javascript
// resource.registry.json 继续工作
"java-backend-developer": "@package://prompt/domain/java/java.role.md"
"java-backend-developer": "@package://resource/domain/java/java.role.md"
// 代码继续工作
await resourceManager.loadResource('java-backend-developer')

View File

@ -202,7 +202,7 @@ npx dpml-prompt@snapshot hello
// 这是系统内部实现细节,用户不需要感知
@prompt://core/execution/think.md
@memory://declarative.md
@package://prompt/domain/scrum/role.md
@package://resource/domain/scrum/role.md
```
#### 为什么不使用MCP Prompts

View File

@ -75,7 +75,7 @@
**在`src/resource.registry.json`中的配置**
```json
"nuwa": {
"file": "@package://prompt/core/nuwa/nuwa.role.md",
"file": "@package://resource/core/nuwa/nuwa.role.md",
"name": "🎨 女娲",
"description": "专业角色创造顾问通过对话收集需求为用户量身定制AI助手角色"
}
@ -91,7 +91,7 @@
**SimplifiedRoleDiscovery处理流程**
1. ✅ 从系统注册表正确加载nuwa角色配置
2. ✅ 路径解析:`@package://prompt/core/nuwa/nuwa.role.md` → 实际文件路径
2. ✅ 路径解析:`@package://resource/core/nuwa/nuwa.role.md` → 实际文件路径
3. ✅ DPML格式验证通过`<role>`标签检查
4. ✅ 元数据提取正确获取name和description

View File

@ -146,8 +146,8 @@ DPML (Deepractice Prompt Markup Language) 采用三层协议架构,从底层
@package://lib/commands/hello.js
# 包提示词资源
@package://prompt/core/execution/think.md
@package://prompt/domain/scrum/role/product-owner.md
@package://resource/core/execution/think.md
@package://resource/domain/scrum/role/product-owner.md
# 包配置和模板
@package://jest.config.js
@ -194,25 +194,25 @@ DPML (Deepractice Prompt Markup Language) 采用三层协议架构,从底层
```bash
# 核心协议文档
@prompt://protocols
# → @package://prompt/protocol/**/*.md
# → @package://resource/protocol/**/*.md
# 核心提示词模块
@prompt://core
# → @package://prompt/core/**/*.md
# → @package://resource/core/**/*.md
# 领域提示词
@prompt://domain/scrum
# → @package://prompt/domain/scrum/**/*.md
# → @package://resource/domain/scrum/**/*.md
# 特定角色提示词
@prompt://domain/scrum/role/product-owner
# → @package://prompt/domain/scrum/role/product-owner.role.md
# → @package://resource/domain/scrum/role/product-owner.role.md
```
**注册表映射:**
- `protocols``@package://prompt/protocol/**/*.md`
- `core``@package://prompt/core/**/*.md`
- `domain``@package://prompt/domain/**/*.md`
- `protocols``@package://resource/protocol/**/*.md`
- `core``@package://resource/core/**/*.md`
- `domain``@package://resource/domain/**/*.md`
- `bootstrap``@package://bootstrap.md`
#### 2. `@memory://` - 记忆系统协议
@ -248,7 +248,7 @@ DPML (Deepractice Prompt Markup Language) 采用三层协议架构,从底层
// 1. 协议分层解析
@prompt://core
上层协议解析
@package://prompt/core/**/*.md
@package://resource/core/**/*.md
中层协议解析
@file://[NPM包路径]/prompt/core/**/*.md
底层协议执行
@ -352,7 +352,7 @@ promptx remember "重要决策" @file://[项目根]/.memory/declarative.md
# 上层 → 中层 → 底层
@prompt://core
@package://prompt/core/**/*.md
@package://resource/core/**/*.md
@file:///usr/local/lib/node_modules/promptx/prompt/core/**/*.md
```

View File

@ -257,7 +257,7 @@ sequenceDiagram
Note over RM: 2. 解析逻辑协议 thought
RM->>RR: resolve("thought:remember")
RR->>RM: "@package://prompt/core/thought/remember.thought.md"
RR->>RM: "@package://resource/core/thought/remember.thought.md"
Note over RM: 3. 解析基础协议 @package
RM->>RM: 委托给PackageProtocol

View File

@ -161,7 +161,7 @@ async loadRoleRegistry() {
if (Object.keys(this.roleRegistry).length === 0) {
this.roleRegistry = {
assistant: {
file: '@package://prompt/domain/assistant/assistant.role.md',
file: '@package://resource/domain/assistant/assistant.role.md',
name: '🙋 智能助手',
description: '通用助理角色,提供基础的助理服务和记忆支持'
}

View File

@ -434,7 +434,7 @@ class SimplePackageProtocol {
{
"role": {
"assistant": {
"file": "@package://prompt/domain/assistant/assistant.role.md",
"file": "@package://resource/domain/assistant/assistant.role.md",
"name": "🙋 智能助手"
}
}

View File

@ -74,7 +74,7 @@ flowchart TB
"role": {
"registry": {
"角色ID": {
"file": "@package://prompt/domain/角色名/角色名.role.md",
"file": "@package://resource/domain/角色名/角色名.role.md",
"name": "🎭 角色显示名称",
"description": "角色功能描述"
}
@ -87,7 +87,7 @@ flowchart TB
**示例**:
```json
"assistant": {
"file": "@package://prompt/domain/assistant/assistant.role.md",
"file": "@package://resource/domain/assistant/assistant.role.md",
"name": "🙋 智能助手",
"description": "通用助理角色,提供基础的助理服务和记忆支持"
}