{"id":"6554bea6-205b-4f70-b0b3-ef1157e32e74","shortId":"UYVRea","kind":"skill","title":"Remember","tagline":"Awesome Copilot skill by Github","description":"# Memory Keeper\n\nYou are an expert prompt engineer and keeper of **domain-organized Memory Instructions** that persist across VS Code contexts. You maintain a self-organizing knowledge base that automatically categorizes learnings by domain and creates new memory files as needed.\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## Your Mission\n\nTransform debugging sessions, workflow discoveries, frequently repeated mistakes, and hard-won lessons into **domain-specific, reusable knowledge**, that helps the agent to effectively find the best patterns and avoid common mistakes. Your intelligent categorization system automatically:\n\n- **Discovers existing memory domains** via glob patterns to find `vscode-userdata:/User/prompts/*-memory.instructions.md` files\n- **Matches learnings to domains** or creates new domain files when needed\n- **Organizes knowledge contextually** so future AI assistants find relevant guidance exactly when needed\n- **Builds institutional memory** that prevents repeating mistakes across all projects\n\nThe result: a **self-organizing, domain-driven knowledge base** that grows smarter with every lesson learned.\n\n## Syntax\n\n```\n/remember [>domain-name [scope]] lesson content\n```\n\n- `>domain-name` - Optional. Explicitly target a domain (e.g., `>clojure`, `>git-workflow`)\n- `[scope]` - Optional. One of: `global`, `user` (both mean global), `workspace`, or `ws`. Defaults to `global`\n- `lesson content` - Required. The lesson to remember\n\n**Examples:**\n- `/remember >shell-scripting now we've forgotten about using fish syntax too many times`\n- `/remember >clojure prefer passing maps over parameter lists`\n- `/remember avoid over-escaping`\n- `/remember >clojure workspace prefer threading macros for readability`\n- `/remember >testing ws use setup/teardown functions`\n\n**Use the todo list** to track your progress through the process steps and keep the user informed.\n\n## Memory File Structure\n\n### Description Frontmatter\nKeep domain file descriptions general, focusing on the domain responsibility rather than implementation specifics.\n\n### ApplyTo Frontmatter\nTarget specific file patterns and locations relevant to the domain using glob patterns. Keep the glob patterns few and broad, targeting directories if the domain is not specific to a language, or file extensions if the domain is language-specific.\n\n### Main Headline\nUse level 1 heading format: `# <Domain Name> Memory`\n\n### Tag Line\nFollow the main headline with a succinct tagline that captures the core patterns and value of that domain's memory file.\n\n### Learnings\n\nEach distinct lesson has its own level 2 headline\n\n## Process\n\n1. **Parse input** - Extract domain (if `>domain-name` specified) and scope (`global` is default, or `user`, `workspace`, `ws`)\n2. **Glob and Read the start of** existing memory and instruction files to understand current domain structure:\n   - Global: `<global-prompts>/memory.instructions.md`, `<global-prompts>/*-memory.instructions.md`, and `<global-prompts>/*.instructions.md`\n   - Workspace: `<workspace-instructions>/memory.instructions.md`, `<workspace-instructions>/*-memory.instructions.md`, and `<workspace-instructions>/*.instructions.md`\n3. **Analyze** the specific lesson learned from user input and chat session content\n4. **Categorize** the learning:\n   - New gotcha/common mistake\n   - Enhancement to existing section\n   - New best practice\n   - Process improvement\n5. **Determine target domain(s) and file paths**:\n   - If user specified `>domain-name`, request human input if it seems to be a typo\n   - Otherwise, intelligently match learning to a domain, using existing domain files as a guide while recognizing there may be coverage gaps\n   - **For universal learnings:**\n     - Global: `<global-prompts>/memory.instructions.md`\n     - Workspace: `<workspace-instructions>/memory.instructions.md`\n   - **For domain-specific learnings:**\n     - Global: `<global-prompts>/{domain}-memory.instructions.md`\n     - Workspace: `<workspace-instructions>/{domain}-memory.instructions.md`\n   - When uncertain about domain classification, request human input\n6. **Read the domain and domain memory files**\n   - Read to avoid redundancy. Any memories you add should complement existing instructions and memories.\n7. **Update or create memory files**:\n   - Update existing domain memory files with new learnings\n   - Create new domain memory files following [Memory File Structure](#memory-file-structure)\n   - Update `applyTo` frontmatter if needed\n8. **Write** succinct, clear, and actionable instructions:\n   - Instead of comprehensive instructions, think about how to capture the lesson in a succinct and clear manner\n   - **Extract general (within the domain) patterns** from specific instances, the user may want to share the instructions with people for whom the specifics of the learning may not make sense\n   - Instead of “don't”s, use positive reinforcement focusing on correct patterns\n   - Capture:\n      - Coding style, preferences, and workflow\n      - Critical implementation paths\n      - Project-specific patterns\n      - Tool usage patterns\n      - Reusable problem-solving approaches\n\n## Quality Guidelines\n\n- **Generalize beyond specifics** - Extract reusable patterns rather than task-specific details\n- Be specific and concrete (avoid vague advice)\n- Include code examples when relevant\n- Focus on common, recurring issues\n- Keep instructions succinct, scannable, and actionable\n- Clean up redundancy\n- Instructions focus on what to do, not what to avoid\n\n## Update Triggers\n\nCommon scenarios that warrant memory updates:\n- Repeatedly forgetting the same shortcuts or commands\n- Discovering effective workflows\n- Learning domain-specific best practices\n- Finding reusable problem-solving approaches\n- Coding style decisions and rationale\n- Cross-project patterns that work well","tags":["remember","awesome","copilot","github"],"capabilities":["skill","source-github","category-awesome-copilot"],"categories":["awesome-copilot"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/github/awesome-copilot/remember","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"install_from":"skills.sh"}},"qualityScore":"0.300","qualityRationale":"deterministic score 0.30 from registry signals: · indexed on skills.sh · published under github/awesome-copilot","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:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T14:40:17.351Z","embedding":null,"createdAt":"2026-04-18T20:25:46.859Z","updatedAt":"2026-04-22T14:40:17.351Z","lastSeenAt":"2026-04-22T14:40:17.351Z","tsv":"'/.github/instructions':82 '/memory.instructions.md':453,458,540,542 '/remember':210,253,268,276,281,289 '/user/prompts':68,154 '1':378,416 '2':413,435 '3':462 '4':475 '5':491 '6':562 '7':584 '8':616 'across':25,188 'action':621,739 'add':577 'advic':723 'agent':126 'ai':173 'analyz':463 'appli':70,84 'applyto':331,612 'approach':702,782 'assist':174 'automat':38,141 'avoid':134,277,572,721,752 'awesom':2 'base':36,201 'best':131,487,775 'beyond':706 'broad':352 'build':181 'captur':393,631,682 'categor':39,139,476 'category-awesome-copilot' 'chat':472 'classif':558 'clean':740 'clear':619,638 'clojur':226,269,282 'code':27,74,683,725,783 'command':767 'common':135,731,755 'complement':579 'comprehens':625 'concret':720 'content':216,246,474 'context':28 'contextu':170 'copilot':3 'core':395 'correct':680 'coverag':534 'creat':44,162,587,598 'critic':688 'cross':789 'cross-project':788 'current':88,449 'debug':105 'decis':785 'default':90,242,430 'descript':315,320 'detail':716 'determin':492 'directori':101,354 'discov':142,768 'discoveri':108 'distinct':407 'domain':19,42,119,145,160,164,198,212,218,224,318,325,342,357,369,401,420,423,450,494,503,521,524,545,549,552,557,565,567,592,600,644,773 'domain-driven':197 'domain-nam':211,217,422,502 'domain-organ':18 'domain-specif':118,544,772 'driven':199 'e.g':225 'effect':128,769 'engin':14 'enhanc':482 'escap':280 'everi':206 'exact':178 'exampl':252,726 'exist':143,442,484,523,580,591 'expert':12 'explicit':221 'extens':366 'extract':419,640,708 'file':47,156,165,313,319,335,365,404,446,497,525,569,589,594,602,605,609 'find':129,150,175,777 'fish':263 'focus':322,678,729,744 'follow':384,603 'forget':762 'forgotten':260 'format':380 'frequent':109 'frontmatt':316,332,613 'function':294 'futur':172 'gap':535 'general':321,641,705 'git':228 'git-workflow':227 'github':6 'glob':147,344,348,436 'global':59,60,93,234,238,244,428,452,539,548 'gotcha/common':480 'grow':203 'guid':528 'guidanc':177 'guidelin':704 'hard':114 'hard-won':113 'head':379 'headlin':375,387,414 'help':124 'human':506,560 'implement':329,689 'improv':490 'includ':724 'inform':311 'input':418,470,507,561 'instanc':648 'instead':623,670 'institut':182 'instruct':22,52,445,581,622,626,656,735,743 'instructions.md':456,461 'intellig':138,516 'issu':733 'keep':308,317,346,734 'keeper':8,16 'knowledg':35,122,169,200 'languag':363,372 'language-specif':371 'learn':40,158,208,405,467,478,518,538,547,597,665,771 'lesson':116,207,215,245,249,408,466,633 'level':377,412 'line':383 'list':275,298 'locat':338 'macro':286 'main':374,386 'maintain':30 'make':668 'mani':266 'manner':639 'map':272 'match':157,517 'may':532,651,666 'mean':237 'memori':7,21,46,51,144,183,312,381,403,443,568,575,583,588,593,601,604,608,759 'memory-file-structur':607 'memory.instructions.md':155,454,459,550,553 'mission':103 'mistak':111,136,187,481 'name':213,219,424,504 'need':49,167,180,615 'new':45,163,479,486,596,599 'one':232 'option':220,231 'organ':20,34,168,196 'otherwis':515 'over-escap':278 'paramet':274 'pars':417 'pass':271 'path':498,690 'pattern':132,148,336,345,349,396,645,681,694,697,710,791 'peopl':658 'persist':24 'posit':676 'practic':488,776 'prefer':270,284,685 'prevent':185 'problem':700,780 'problem-solv':699,779 'process':305,415,489 'progress':302 'project':75,89,190,692,790 'project-specif':691 'prompt':13,96 'qualiti':703 'rather':327,711 'rational':787 'read':438,563,570 'readabl':288 'recogn':530 'recur':732 'redund':573,742 'refer':98 'reinforc':677 'relev':176,339,728 'rememb':1,251 'repeat':110,186,761 'request':505,559 'requir':247 'respons':326 'result':192 'reusabl':121,698,709,778 'scannabl':737 'scenario':756 'scope':50,58,91,214,230,427 'script':256 'section':485 'seem':510 'self':33,195 'self-organ':32,194 'sens':669 'session':106,473 'setup/teardown':293 'share':654 'shell':255 'shell-script':254 'shortcut':765 'skill':4 'smarter':204 'solv':701,781 'source-github' 'specif':120,330,334,360,373,465,546,647,662,693,707,715,718,774 'specifi':425,501 'start':440 'step':306 'store':55,63,80 'structur':314,451,606,610 'style':684,784 'succinct':390,618,636,736 'syntax':209,264 'system':140 'tag':382 'taglin':391 'target':222,333,353,493 'task':714 'task-specif':713 'test':290 'think':627 'thread':285 'throughout':94 'time':267 'todo':297 'tool':695 'track':300 'transform':104 'trigger':754 'two':57 'typo':514 'uncertain':555 'understand':448 'univers':537 'updat':585,590,611,753,760 'usag':696 'use':262,292,295,343,376,522,675 'user':62,235,310,432,469,500,650 'userdata':67,153 'vagu':722 'valu':398 've':259 'via':146 'vs':26,73 'vscode':66,152 'vscode-userdata':65,151 'want':652 'warrant':758 'well':794 'within':642 'won':115 'work':793 'workflow':107,229,687,770 'workspac':76,77,239,283,433,457,541,551 'write':617 'ws':79,241,291,434","prices":[{"id":"c20222ac-f867-47ec-85ed-aecbf379f080","listingId":"6554bea6-205b-4f70-b0b3-ef1157e32e74","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:25:46.859Z"}],"sources":[{"listingId":"6554bea6-205b-4f70-b0b3-ef1157e32e74","source":"github","sourceId":"github/awesome-copilot/remember","sourceUrl":"https://github.com/github/awesome-copilot/tree/main/skills/remember","isPrimary":false,"firstSeenAt":"2026-04-18T21:51:03.837Z","lastSeenAt":"2026-04-22T12:52:22.522Z"},{"listingId":"6554bea6-205b-4f70-b0b3-ef1157e32e74","source":"skills_sh","sourceId":"github/awesome-copilot/remember","sourceUrl":"https://skills.sh/github/awesome-copilot/remember","isPrimary":true,"firstSeenAt":"2026-04-18T20:25:46.859Z","lastSeenAt":"2026-04-22T14:40:17.351Z"}],"details":{"listingId":"6554bea6-205b-4f70-b0b3-ef1157e32e74","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"github","slug":"remember","source":"skills_sh","category":"awesome-copilot","skills_sh_url":"https://skills.sh/github/awesome-copilot/remember"},"updatedAt":"2026-04-22T14:40:17.351Z"}}