{"id":"2014ce61-cf21-49d4-8800-4b8dc5b428c0","shortId":"872bB7","kind":"skill","title":"memory-merger","tagline":"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`.","description":"# Memory Merger\n\nYou consolidate mature learnings from a domain's memory file into its instruction file, ensuring knowledge preservation with minimal redundancy.\n\n**Use the todo list** to track your progress through the process steps and keep the user informed.\n\n## Scopes\n\nMemory instructions can be stored in two scopes:\n\n- **Global** (`global` or `user`) - Stored in `<global-prompts>` (`vscode-userdata:/User/prompts/`) and apply to all VS Code projects\n- **Workspace** (`workspace` or `ws`) - Stored in `<workspace-instructions>` (`<workspace-root>/.github/instructions/`) and apply only to the current project\n\nDefault scope is **global**.\n\nThroughout this prompt, `<global-prompts>` and `<workspace-instructions>` refer to these directories.\n\n## Syntax\n\n```\n/memory-merger >domain-name [scope]\n```\n\n- `>domain-name` - Required. The domain to merge (e.g., `>clojure`, `>git-workflow`, `>prompt-engineering`)\n- `[scope]` - Optional. One of: `global`, `user` (both mean global), `workspace`, or `ws`. Defaults to `global`\n\n**Examples:**\n- `/memory-merger >prompt-engineering` - merges global prompt engineering memories\n- `/memory-merger >clojure workspace` - merges workspace clojure memories\n- `/memory-merger >git-workflow ws` - merges workspace git-workflow memories\n\n## Process\n\n### 1. Parse Input and Read Files\n\n- **Extract** domain and scope from user input\n- **Determine** file paths:\n  - Global: `<global-prompts>/{domain}-memory.instructions.md` → `<global-prompts>/{domain}.instructions.md`\n  - Workspace: `<workspace-instructions>/{domain}-memory.instructions.md` → `<workspace-instructions>/{domain}.instructions.md`\n- 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.\n- **Read** both files (memory file must exist; instruction file may not)\n\n### 2. Analyze and Propose\n\nReview all memory sections and present them for merger consideration:\n\n```\n## Proposed Memories for Merger\n\n### Memory: [Headline]\n**Content:** [Key points]\n**Location:** [Where it fits in instructions]\n\n[More memories]...\n```\n\nSay: \"Please review these memories. Approve all with 'go' or specify which to skip.\"\n\n**STOP and wait for user input.**\n\n### 3. Define Quality Bar\n\nEstablish 10/10 criteria for what constitutes awesome merged resulting instructions:\n1. **Zero knowledge loss** - Every detail, example, and nuance preserved\n2. **Minimal redundancy** - Overlapping guidance consolidated\n3. **Maximum scannability** - Clear hierarchy, parallel structure, strategic bold, logical grouping\n\n### 4. Merge and Iterate\n\nDevelop the final merged instructions **without updating files yet**:\n\n1. Draft the merged instructions incorporating approved memories\n2. Evaluate against quality bar\n3. Refine structure, wording, organization\n4. Repeat until the merged instructions meet 10/10 criteria\n\n### 5. Update Files\n\nOnce the final merged instructions meet 10/10 criteria:\n\n- **Create or update** the instruction file with the final merged content\n  - Include proper frontmatter if creating new file\n  - **Merge `applyTo` patterns** from both memory and instruction files if both exist, ensuring comprehensive coverage without duplication\n- **Remove** merged sections from the memory file\n\n## Example\n\n```\nUser: \"/memory-merger >clojure\"\n\nAgent:\n1. Reads clojure-memory.instructions.md and clojure.instructions.md\n2. Proposes 3 memories for merger\n3. [STOPS]\n\nUser: \"go\"\n\nAgent:\n4. Defines quality bar for 10/10\n5. Merges new instructions candidate, iterates to 10/10\n6. Updates clojure.instructions.md\n7. Cleans clojure-memory.instructions.md\n```","tags":["memory","merger","awesome","copilot","github","agent-skills","agents","custom-agents","github-copilot","hacktoberfest","prompt-engineering"],"capabilities":["skill","source-github","skill-memory-merger","topic-agent-skills","topic-agents","topic-awesome","topic-custom-agents","topic-github-copilot","topic-hacktoberfest","topic-prompt-engineering"],"categories":["awesome-copilot"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/github/awesome-copilot/memory-merger","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add github/awesome-copilot","source_repo":"https://github.com/github/awesome-copilot","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 33270 github stars · SKILL.md body (3,659 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T18:52:16.861Z","embedding":null,"createdAt":"2026-04-18T20:24:49.452Z","updatedAt":"2026-05-18T18:52:16.861Z","lastSeenAt":"2026-05-18T18:52:16.861Z","tsv":"'/.github/instructions':100 '/memory-merger':17,121,158,167,174,445 '/user/prompts':86 '1':186,323,363,448 '10/10':314,388,399,469,477 '2':258,333,371,453 '3':309,339,376,455,459 '4':350,381,464 '5':390,470 '6':478 '7':481 'agent':447,463 'analyz':259 'appli':88,102 'applyto':420 'approv':294,369 'ask':239 'awesom':319 'bar':312,375,467 'bold':347 'candid':474 'clean':482 'clear':342 'clojur':135,168,172,446 'clojure-memory.instructions.md':450,483 'clojure.instructions.md':452,480 'code':92 'comprehens':432 'consider':271 'consolid':32,338 'constitut':318 'content':278,411 'coverag':433 'creat':401,416 'criteria':315,389,400 'current':106 'default':24,108,154 'defin':310,465 'detail':328 'determin':199,231 'develop':354 'directori':119,229 'domain':9,18,37,123,127,131,193,203,205,208,210,218 'domain-nam':122,126 'doubt':246 'draft':364 'duplic':435 'e.g':134 'engin':141,161,165 'ensur':45,431 'establish':313 'evalu':372 'everi':327 'exampl':157,329,443 'exist':253,430 'extract':192 'file':11,15,40,44,191,200,226,249,251,255,361,392,406,418,427,442 'final':356,395,409 'find':223 'fit':284 'frontmatt':414 'git':137,176,182 'git-workflow':136,175,181 'glob':227 'global':23,77,78,111,146,150,156,163,202 'go':297,462 'group':349 'guidanc':337 'headlin':277 'hierarchi':343 'includ':412 'incorpor':368 'inform':67 'input':188,198,243,308 'instruct':14,43,70,254,286,322,358,367,386,397,405,426,473 'instructions.md':206,211 'iter':353,475 'keep':64 'key':279 'knowledg':46,325 'learn':34 'lesson':6 'list':54 'locat':281 'logic':348 'loss':326 'match':237 'matur':5,33 'maximum':340 'may':234,256 'mean':149 'meet':387,398 'memori':2,10,29,39,69,166,173,184,225,250,264,273,276,288,293,370,424,441,456 'memory-merg':1 'memory.instructions.md':204,209 'merg':4,133,162,170,179,320,351,357,366,385,396,410,419,437,471 'merger':3,30,270,275,458 'minim':49,334 'mistyp':216 'must':252 'name':124,128 'new':417,472 'nuanc':331 'one':144 'option':143 'organ':380 'overlap':336 'parallel':344 'pars':187 'path':201 'pattern':421 'pleas':290 'point':280 'present':267 'preserv':47,332 'process':61,185 'progress':58 'project':93,107 'prompt':114,140,160,164 'prompt-engin':139,159 'proper':413 'propos':261,272,454 'qualiti':311,374,466 'read':190,247,449 'redund':50,335 'refer':116 'refin':377 'remov':436 'repeat':382 'requir':129 'result':321 'review':262,291 'say':289 'scannabl':341 'scope':19,21,68,76,109,125,142,195 'section':265,438 'skill' 'skill-memory-merger' 'skip':302 'source-github' 'specifi':299 'step':62 'stop':303,460 'store':73,81,98 'strateg':346 'structur':345,378 'syntax':16,120 'throughout':112 'todo':53 'topic-agent-skills' 'topic-agents' 'topic-awesome' 'topic-custom-agents' 'topic-github-copilot' 'topic-hacktoberfest' 'topic-prompt-engineering' 'track':56 'two':75 'updat':360,391,403,479 'use':51 'user':25,66,80,147,197,213,241,307,444,461 'userdata':85 'vs':91 'vscode':84 'vscode-userdata':83 'wait':305 'without':359,434 'word':379 'workflow':138,177,183 'workspac':26,94,95,151,169,171,180,207 'ws':28,97,153,178 'yet':362 'zero':324","prices":[{"id":"ee925321-b350-42d8-a117-cdcab84823a2","listingId":"2014ce61-cf21-49d4-8800-4b8dc5b428c0","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"github","category":"awesome-copilot","install_from":"skills.sh"},"createdAt":"2026-04-18T20:24:49.452Z"}],"sources":[{"listingId":"2014ce61-cf21-49d4-8800-4b8dc5b428c0","source":"github","sourceId":"github/awesome-copilot/memory-merger","sourceUrl":"https://github.com/github/awesome-copilot/tree/main/skills/memory-merger","isPrimary":false,"firstSeenAt":"2026-04-18T21:50:10.689Z","lastSeenAt":"2026-05-18T18:52:16.861Z"},{"listingId":"2014ce61-cf21-49d4-8800-4b8dc5b428c0","source":"skills_sh","sourceId":"github/awesome-copilot/memory-merger","sourceUrl":"https://skills.sh/github/awesome-copilot/memory-merger","isPrimary":true,"firstSeenAt":"2026-04-18T20:24:49.452Z","lastSeenAt":"2026-05-07T22:40:15.917Z"}],"details":{"listingId":"2014ce61-cf21-49d4-8800-4b8dc5b428c0","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"github","slug":"memory-merger","github":{"repo":"github/awesome-copilot","stars":33270,"topics":["agent-skills","agents","ai","awesome","custom-agents","github-copilot","hacktoberfest","prompt-engineering"],"license":"mit","html_url":"https://github.com/github/awesome-copilot","pushed_at":"2026-05-18T01:26:59Z","description":"Community-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot.","skill_md_sha":"d6ff27b62e10110c93eb92212b64fd1df6c82810","skill_md_path":"skills/memory-merger/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/github/awesome-copilot/tree/main/skills/memory-merger"},"layout":"multi","source":"github","category":"awesome-copilot","frontmatter":{"name":"memory-merger","description":"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`."},"skills_sh_url":"https://skills.sh/github/awesome-copilot/memory-merger"},"updatedAt":"2026-05-18T18:52:16.861Z"}}