Generated banner for Memory Merger
Generated logo for Memory Merger

Memory Merger

GitHubOfficialOriginally contributed by @PEZ as prompts/memory-merger.prompt.md; moved into a skill by pull request #761Distributed by GitHub

  • Skill
  • Workflow
  • Agent tooling
  • MIT
  • No issues found

From the author

Merges mature lessons from a domain memory file into its instruction file. Syntax: `/memory-merger >domain [scope]` where scope is `global` (default), `user`, `workspace`, or `ws`.
— the description by PEZ

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

Memory Merger is a workflow skill designed to help users manage and consolidate accumulated knowledge within an agent's memory. It processes domain-specific memory files by merging their contents into corresponding instruction files. The tool operates across global or workspace scopes, ensuring that lessons learned are preserved, redundant information is minimized, and the resulting instructions are structured for clarity.

What it does

  • Identifies and reads domain-specific memory and instruction files
  • Proposes specific memory sections for user review and approval
  • Applies a structured process to merge content while removing redundancies
  • Updates instruction files with consolidated content
  • Cleans up memory files by removing successfully merged sections
  • Supports both global and workspace-level instruction management

When to use it

  • When a domain-specific memory file has accumulated enough lessons to warrant consolidation
  • When you want to move learned patterns from a temporary memory file into permanent instructions
  • When you need to organize project-specific or global guidance for better accessibility
  • When you want to reduce redundancy between existing memory and instruction files

Advantages

  • Ensures systematic preservation of domain knowledge
  • Reduces clutter by consolidating overlapping guidance
  • Provides a structured review process before modifying instruction files
  • Maintains consistent instruction formatting across global or workspace scopes

Usage examples

“/memory-merger >git-workflow”
The agent identifies global git-workflow memory files, proposes sections for merger, and updates the primary git-workflow instructions upon approval.
“/memory-merger >clojure workspace”
The agent targets the workspace-specific clojure memory files to merge lessons into the project's instruction set.

Install

  1. Download the skill as a ZIP:

    https://autogineer.com/agent-skills/github/memory-merger/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip memory-merger.zip -d .agents/skills

Documentation by PEZ

Memory Merger

You consolidate mature learnings from a domain's memory file into its instruction file, ensuring knowledge preservation with minimal redundancy.

Use the todo list to track your progress through the process steps and keep the user informed.

Scopes

Memory instructions can be stored in two scopes:

  • Global (global or user) - Stored in <global-prompts> (vscode-userdata:/User/prompts/) and apply to all VS Code projects

  • Workspace (workspace or ws) - Stored in <workspace-instructions> (<workspace-root>/.github/instructions/) and apply only to the current project

Default scope is global.

Throughout this prompt, <global-prompts> and <workspace-instructions> refer to these directories.

Syntax

/memory-merger >domain-name [scope]
  • >domain-name - Required. The domain to merge (e.g., >clojure, >git-workflow, >prompt-engineering)

  • [scope] - Optional. One of: global, user (both mean global), workspace, or ws. Defaults to global

Examples:

  • /memory-merger >prompt-engineering - merges global prompt engineering memories

  • /memory-merger >clojure workspace - merges workspace clojure memories

  • /memory-merger >git-workflow ws - merges workspace git-workflow memories

Process

1. Parse Input and Read Files
  • Extract domain and scope from user input

  • Determine file paths:

    • Global: <global-prompts>/{domain}-memory.instructions.md → <global-prompts>/{domain}.instructions.md

    • Workspace: <workspace-instructions>/{domain}-memory.instructions.md → <workspace-instructions>/{domain}.instructions.md

  • The user can have mistyped the domain, if you don't find the memory file, glob the directory and determine if there may be a match there. Ask the user for input if in doubt.

  • Read both files (memory file must exist; instruction file may not)

2. Analyze and Propose

Review all memory sections and present them for merger consideration:

## Proposed Memories for Merger

### Memory: [Headline]
**Content:** [Key points]
**Location:** [Where it fits in instructions]

[More memories]...

Say: "Please review these memories. Approve all with 'go' or specify which to skip."

STOP and wait for user input.

3. Define Quality Bar

Establish 10/10 criteria for what constitutes awesome merged resulting instructions:

  1. Zero knowledge loss - Every detail, example, and nuance preserved

  2. Minimal redundancy - Overlapping guidance consolidated

  3. Maximum scannability - Clear hierarchy, parallel structure, strategic bold, logical grouping

4. Merge and Iterate

Develop the final merged instructions without updating files yet:

  1. Draft the merged instructions incorporating approved memories

  2. Evaluate against quality bar

  3. Refine structure, wording, organization

  4. Repeat until the merged instructions meet 10/10 criteria

5. Update Files

Once the final merged instructions meet 10/10 criteria:

  • Create or update the instruction file with the final merged content

    • Include proper frontmatter if creating new file

    • Merge applyTo patterns from both memory and instruction files if both exist, ensuring comprehensive coverage without duplication

  • Remove merged sections from the memory file

Example

User: "/memory-merger >clojure"

Agent:
1. Reads clojure-memory.instructions.md and clojure.instructions.md
2. Proposes 3 memories for merger
3. [STOPS]

User: "go"

Agent:
4. Defines quality bar for 10/10
5. Merges new instructions candidate, iterates to 10/10
6. Updates clojure.instructions.md
7. Cleans clojure-memory.instructions.md

Files

Requirements and compatibility

Written for: GitHub Copilot

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Security

No issues found by our static scan· No issues found

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Originally contributed by
GitHub avatar of PEZ@PEZas prompts/memory-merger.prompt.mdmoved into a skill by pull request #761
Publisher
GitHub (Official)
Distributed by
GitHub
Source
github/awesome-copilot · skills/memory-merger · commit 797337f
Licence
MIT License (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced
Contributors
PEZ

AutoGineer is not affiliated with or endorsed by PEZ or GitHub.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download memory-merger.zip