chore: import zh skill memory-merger
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
# WeHub 来源说明
|
||||
|
||||
- Skill 名称:`memory-merger`
|
||||
- 中文类目:把工作流/记忆沉淀为持久化 AI 指令
|
||||
- 上游仓库:`github__awesome-copilot`
|
||||
- 上游路径:`skills/memory-merger/SKILL.md`
|
||||
- 上游链接:https://github.com/github/awesome-copilot/blob/HEAD/skills/memory-merger/SKILL.md
|
||||
- 本仓库为 WeHub 中文 Skill 汉化包,基于 skill 市场筛选 Top200 清单整理
|
||||
- 原作者、版权和许可证信息以上游仓库为准
|
||||
@@ -0,0 +1,108 @@
|
||||
---
|
||||
name: memory-merger
|
||||
description: '将领域记忆文件中的成熟经验合并到其指令文件中。语法:`/memory-merger >domain [scope]`,其中 scope 为 `global`(默认)、`user`、`workspace` 或 `ws`。'
|
||||
---
|
||||
|
||||
# Memory Merger
|
||||
|
||||
你将某个领域的记忆文件中积累的经验教训整合到其指令文件中,确保在最小冗余的前提下保存知识。
|
||||
|
||||
**使用任务列表**来跟踪你在各个处理步骤上的进度,并让用户了解最新情况。
|
||||
|
||||
## 作用域
|
||||
|
||||
记忆指令可以存储在两个作用域中:
|
||||
|
||||
- **全局**(`global` 或 `user`)——存储在 `<global-prompts>`(`vscode-userdata:/User/prompts/`)中,适用于所有 VS Code 项目
|
||||
- **工作区**(`workspace` 或 `ws`)——存储在 `<workspace-instructions>`(`<workspace-root>/.github/instructions/`)中,仅适用于当前项目
|
||||
|
||||
默认作用域为 **全局**。
|
||||
|
||||
在整个提示词中,`<global-prompts>` 和 `<workspace-instructions>` 均指上述目录。
|
||||
|
||||
## 语法
|
||||
|
||||
```
|
||||
/memory-merger >domain-name [scope]
|
||||
```
|
||||
|
||||
- `>domain-name` —— 必填。要合并的领域名称(例如 `>clojure`、`>git-workflow`、`>prompt-engineering`)
|
||||
- `[scope]` —— 可选。可选值:`global`、`user`(两者均表示全局)、`workspace` 或 `ws`。默认为 `global`
|
||||
|
||||
**示例:**
|
||||
- `/memory-merger >prompt-engineering` —— 合并全局的 prompt engineering 记忆
|
||||
- `/memory-merger >clojure workspace` —— 合并工作区的 clojure 记忆
|
||||
- `/memory-merger >git-workflow ws` —— 合并工作区的 git-workflow 记忆
|
||||
|
||||
## 处理流程
|
||||
|
||||
### 1. 解析输入并读取文件
|
||||
|
||||
- **提取**用户输入中的领域和作用域
|
||||
- **确定**文件路径:
|
||||
- 全局:`<global-prompts>/{domain}-memory.instructions.md` → `<global-prompts>/{domain}.instructions.md`
|
||||
- 工作区:`<workspace-instructions>/{domain}-memory.instructions.md` → `<workspace-instructions>/{domain}.instructions.md`
|
||||
- 用户可能输错领域名称,如果找不到记忆文件,请在该目录下进行 glob 搜索,判断是否存在可能的匹配项。如有疑问,请向用户确认。
|
||||
- **读取**两个文件(记忆文件必须存在;指令文件可能不存在)
|
||||
|
||||
### 2. 分析并提出建议
|
||||
|
||||
审阅所有记忆章节,并将其展示出来供合并考虑:
|
||||
|
||||
```
|
||||
## 建议合并的记忆
|
||||
|
||||
### 记忆:[标题]
|
||||
**内容:** [关键要点]
|
||||
**位置:** [在指令中的合适位置]
|
||||
|
||||
[更多记忆]...
|
||||
```
|
||||
|
||||
请说:"请审阅这些记忆。输入 'go' 批准全部,或指定要跳过的条目。"
|
||||
|
||||
**停下来等待用户输入。**
|
||||
|
||||
### 3. 定义质量标准
|
||||
|
||||
制定 10/10 标准,定义何为优秀的合并后指令:
|
||||
1. **零知识丢失** —— 每个细节、示例和细微之处都得以保留
|
||||
2. **最小冗余** —— 重叠的指导内容被合并精简
|
||||
3. **最高可扫描性** —— 清晰的层级结构、平行句式、有策略地加粗、逻辑分组
|
||||
|
||||
### 4. 合并与迭代
|
||||
|
||||
**在更新文件之前**,先拟定最终的合并后指令:
|
||||
|
||||
1. 起草合并后的指令,纳入已批准的记忆
|
||||
2. 对照质量标准进行评估
|
||||
3. 优化结构、措辞和排版
|
||||
4. 重复上述步骤,直到合并后的指令达到 10/10 标准
|
||||
|
||||
### 5. 更新文件
|
||||
|
||||
一旦最终的合并后指令达到 10/10 标准:
|
||||
|
||||
- **创建或更新**指令文件,写入最终的合并内容
|
||||
- 如果是新建文件,请包含正确的 frontmatter
|
||||
- 如果记忆文件和指令文件均存在,则**合并两者的 `applyTo` 模式**,确保覆盖全面且不重复
|
||||
- **删除**记忆文件中已合并的章节
|
||||
|
||||
## 示例
|
||||
|
||||
```
|
||||
用户:"/memory-merger >clojure"
|
||||
|
||||
Agent:
|
||||
1. 读取 clojure-memory.instructions.md 和 clojure.instructions.md
|
||||
2. 提出 3 条待合并的记忆
|
||||
3. [停止]
|
||||
|
||||
用户:"go"
|
||||
|
||||
Agent:
|
||||
4. 制定 10/10 质量标准
|
||||
5. 合并新的指令候选版本,迭代至 10/10
|
||||
6. 更新 clojure.instructions.md
|
||||
7. 清理 clojure-memory.instructions.md
|
||||
```
|
||||
Reference in New Issue
Block a user