[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71JR06K3YMPRTQDDSQ4XN0D":3,"skill-same:01M71JR06K3YMPRTQDDSQ4XN0D":104},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":55,"commitSha":56,"skillDirectory":57,"forksCount":58,"repositoryHtmlUrl":59,"repositoryHomepageUrl":6,"ownerHtmlUrl":60,"ownerBlogUrl":61,"ownerDescription":62,"updatedAt":63,"install":64,"resources":77},"01M71JR06K3YMPRTQDDSQ4XN0D","use-universal-memory",null,"Operational hub for using Universal Memory context, facts, host sync, and skills lifecycle.","YanAmorelli\u002Funiversal-memory","YanAmorelli","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F73948655?v=4","01M71JQYECQ185WC2PS2PCGQCW","Yan Liao Amorelli","01M71JQYF08VM2TKF1A7EDVPG9",6,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory\u002Fblob\u002Fmain\u002F.umem\u002Fskills\u002Fuse-universal-memory\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"use","use universal memory","memory","learned","operational","work","with","facts","when","preferences","host","knowledge","implementing","lifecycle","session","project","for","planning","conversation","recording","2026-11-10 10:12:30",false,"---\nname: \"use-universal-memory\"\ndescription: \"Operational hub for using Universal Memory context, facts, host sync, and skills lifecycle.\"\ntriggers:\n  - \"at the start of a work session or conversation\"\n  - \"before implementing, investigating, reviewing, or planning in a repository with .umem\"\n  - \"when the user mentions memory, facts, context, skills, AGENTS.md, CLAUDE.md, host sync, or learned preferences\"\n  - \"before recording durable project or global knowledge\"\n  - \"before creating, updating, activating, or deactivating a UMEM skill\"\n---\n\n# Use Universal Memory\n\n## Purpose\n\nUniversal Memory (`umem`) is the repository memory and skill layer. This skill is the\nsingle UMEM guide and router: use it to load current memory context, interpret UMEM\nstate, decide whether deeper instructions are needed, and route directly to the focused\nreference for the task.\n\nKeep this as one guide-style skill. Do not split UMEM into separate skills for startup,\nfacts, host sync, or skill lifecycle work unless the user explicitly approves that design\nchange.\n\n## Desired Outcomes\n\n- Agents begin repository work with current UMEM context and relevant active skills.\n- Users get behavior informed by durable project facts and global preferences without\n  host files becoming memory dumps.\n- Memory mutations are deliberate, safe, scoped correctly, and synced when they should\n  affect future host instructions.\n- References are loaded only on demand, preserving Agent Skills progressive disclosure.\n\n## Data Sources\n\n- `.umem\u002F` project storage and generated project skills.\n- `AGENTS.md` and `CLAUDE.md` managed UMEM bootstrap instructions.\n- CLI output from `umem bootstrap` and targeted read or mutation commands.\n- MCP tool results when available; treat them as equivalent automation surfaces over the\n  CLI behavior contract.\n- `references\u002F` files in this skill for deeper task-specific procedures.\n\n## Mandatory Startup\n\nAt the start of a conversation or session, load UMEM context before planning,\nediting, investigating, reviewing, or activating another workflow:\n\n```bash\numem bootstrap --format json\n```\n\nThen inspect any relevant active skill:\n\n```bash\numem skills detail \u003Cskill-id-or-name> --format json\n```\n\nPrefer MCP `bootstrap()` when it is available; otherwise use the CLI command above. Use the\nCLI examples in the references as the canonical behavior contract.\n\n## Workflow And State Interpretation\n\n- If bootstrap reports UMEM unavailable or the project uninitialized, say so explicitly and\n  continue without external memory instead of inventing context.\n- Treat `data.context` as active repository guidance for the current\n  work session.\n- Treat global context as cross-project user preference; do not let it override explicit\n  project constraints or user instructions for the current task.\n- Treat `data.skills.list` as discovery metadata. Inspect only relevant active skills with\n  `skills detail`, and load deeper skill files only when the current task calls for them.\n- Do not repeat the full startup sequence on every user message in the same conversation;\n  query only the specific UMEM state needed after the initial preflight.\n- Preserve relative paths in specs, docs, code, and reports.\n\n## Latent Skill Decision Loop\n\n- During substantial work and before the final response, consider whether you observed a\n  repeated, durable workflow that would help future agents.\n- If a reusable methodology, checklist, transformation, review pattern, or domain workflow\n  recurs, call `track_latent_skill` or `umem skills track` with a short name,\n  description, tags, and a sanitized evidence summary.\n- If the user explicitly asks to create a new skill from scratch, use direct\n  `create_skill` or `umem skills create`; do not create a latent candidate first.\n- If the user points to an existing local or native skill directory, use\n  `import_skill` or `umem skills import \u003Cpath>`; do not recreate it with `create`,\n  `track`, `promote`, or `generate`.\n- If no durable repeated workflow was observed, do not call `track_latent_skill` just to\n  satisfy a checklist.\n- Never track secrets, raw logs, raw prompts, private customer data, uncertain patterns, or\n  one-off preferences as latent skill evidence. Route durable preferences to memory facts.\n\n## Reference Routing\n\n- For startup, health, context loading, and active-skill discovery, read\n  `references\u002Fstartup-and-context.md`.\n- For remembering, listing, and purging facts, read `references\u002Fmemory-facts.md`.\n- For skill creation, import, sync, latent tracking, proposal, generation, listing,\n  detail, activation, deactivation, and update, read `references\u002Fskills-lifecycle.md`.\n- For host instruction setup, validation, and sync, read\n  `references\u002Fhost-instructions-sync.md`.\n- For CLI\u002FMCP payload parity and error behavior, read `references\u002Fcli-mcp-parity.md`.\n- For durable recording rules, security guardrails, and final response footer behavior,\n  read `references\u002Fguardrails-and-recording.md`.\n\n## Response And Recording Constraints\n\n- Keep host instruction files compact; they should point to UMEM, not store memory dumps.\n- Record only curated, durable facts or skills. Do not persist raw logs, secrets,\n  credentials, transient steps, or uncertain information.\n- Use project scope for repository-specific knowledge and global scope for cross-project\n  user preferences.\n- After any memory mutation that should affect host instructions, run host sync with\n  apply enabled.\n- Before the final response, decide whether a durable fact, skill pattern, architectural\n  decision, or obsolete memory should be recorded or cleaned up.\n- End the final response with either `[UMEM: Remembered \"...\"]` or\n  `[UMEM: No new facts\u002Fskills to record]`.\n","# Use Universal Memory\n\n## Purpose\n\nUniversal Memory (`umem`) is the repository memory and skill layer. This skill is the\nsingle UMEM guide and router: use it to load current memory context, interpret UMEM\nstate, decide whether deeper instructions are needed, and route directly to the focused\nreference for the task.\n\nKeep this as one guide-style skill. Do not split UMEM into separate skills for startup,\nfacts, host sync, or skill lifecycle work unless the user explicitly approves that design\nchange.\n\n## Desired Outcomes\n\n- Agents begin repository work with current UMEM context and relevant active skills.\n- Users get behavior informed by durable project facts and global preferences without\n  host files becoming memory dumps.\n- Memory mutations are deliberate, safe, scoped correctly, and synced when they should\n  affect future host instructions.\n- References are loaded only on demand, preserving Agent Skills progressive disclosure.\n\n## Data Sources\n\n- `.umem\u002F` project storage and generated project skills.\n- `AGENTS.md` and `CLAUDE.md` managed UMEM bootstrap instructions.\n- CLI output from `umem bootstrap` and targeted read or mutation commands.\n- MCP tool results when available; treat them as equivalent automation surfaces over the\n  CLI behavior contract.\n- `references\u002F` files in this skill for deeper task-specific procedures.\n\n## Mandatory Startup\n\nAt the start of a conversation or session, load UMEM context before planning,\nediting, investigating, reviewing, or activating another workflow:\n\n```bash\numem bootstrap --format json\n```\n\nThen inspect any relevant active skill:\n\n```bash\numem skills detail \u003Cskill-id-or-name> --format json\n```\n\nPrefer MCP `bootstrap()` when it is available; otherwise use the CLI command above. Use the\nCLI examples in the references as the canonical behavior contract.\n\n## Workflow And State Interpretation\n\n- If bootstrap reports UMEM unavailable or the project uninitialized, say so explicitly and\n  continue without external memory instead of inventing context.\n- Treat `data.context` as active repository guidance for the current\n  work session.\n- Treat global context as cross-project user preference; do not let it override explicit\n  project constraints or user instructions for the current task.\n- Treat `data.skills.list` as discovery metadata. Inspect only relevant active skills with\n  `skills detail`, and load deeper skill files only when the current task calls for them.\n- Do not repeat the full startup sequence on every user message in the same conversation;\n  query only the specific UMEM state needed after the initial preflight.\n- Preserve relative paths in specs, docs, code, and reports.\n\n## Latent Skill Decision Loop\n\n- During substantial work and before the final response, consider whether you observed a\n  repeated, durable workflow that would help future agents.\n- If a reusable methodology, checklist, transformation, review pattern, or domain workflow\n  recurs, call `track_latent_skill` or `umem skills track` with a short name,\n  description, tags, and a sanitized evidence summary.\n- If the user explicitly asks to create a new skill from scratch, use direct\n  `create_skill` or `umem skills create`; do not create a latent candidate first.\n- If the user points to an existing local or native skill directory, use\n  `import_skill` or `umem skills import \u003Cpath>`; do not recreate it with `create`,\n  `track`, `promote`, or `generate`.\n- If no durable repeated workflow was observed, do not call `track_latent_skill` just to\n  satisfy a checklist.\n- Never track secrets, raw logs, raw prompts, private customer data, uncertain patterns, or\n  one-off preferences as latent skill evidence. Route durable preferences to memory facts.\n\n## Reference Routing\n\n- For startup, health, context loading, and active-skill discovery, read\n  `references\u002Fstartup-and-context.md`.\n- For remembering, listing, and purging facts, read `references\u002Fmemory-facts.md`.\n- For skill creation, import, sync, latent tracking, proposal, generation, listing,\n  detail, activation, deactivation, and update, read `references\u002Fskills-lifecycle.md`.\n- For host instruction setup, validation, and sync, read\n  `references\u002Fhost-instructions-sync.md`.\n- For CLI\u002FMCP payload parity and error behavior, read `references\u002Fcli-mcp-parity.md`.\n- For durable recording rules, security guardrails, and final response footer behavior,\n  read `references\u002Fguardrails-and-recording.md`.\n\n## Response And Recording Constraints\n\n- Keep host instruction files compact; they should point to UMEM, not store memory dumps.\n- Record only curated, durable facts or skills. Do not persist raw logs, secrets,\n  credentials, transient steps, or uncertain information.\n- Use project scope for repository-specific knowledge and global scope for cross-project\n  user preferences.\n- After any memory mutation that should affect host instructions, run host sync with\n  apply enabled.\n- Before the final response, decide whether a durable fact, skill pattern, architectural\n  decision, or obsolete memory should be recorded or cleaned up.\n- End the final response with either `[UMEM: Remembered \"...\"]` or\n  `[UMEM: No new facts\u002Fskills to record]`.\n",{"name":5,"triggers":49,"description":7},[50,51,52,53,54],"at the start of a work session or conversation","before implementing, investigating, reviewing, or planning in a repository with .umem","when the user mentions memory, facts, context, skills, AGENTS.md, CLAUDE.md, host sync, or learned preferences","before recording durable project or global knowledge","before creating, updating, activating, or deactivating a UMEM skill","main","9874620e900eb700ff5442a48907088c3da88e15",".umem\u002Fskills\u002Fuse-universal-memory",0,"https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory","https:\u002F\u002Fgithub.com\u002FYanAmorelli","https:\u002F\u002Famorelliaoyan.com","AI developer building useful things, breaking a few along the way, and proudly supporting the greatest soccer team in the\r\n  world: Club de Regatas Vasco da Gam","2026-11-07 02:48:55",{"source":8,"skillName":5,"commands":65,"prompt":75,"zipAvailable":76},[66,69,72],{"tool":67,"command":68},"npx","npx skills add YanAmorelli\u002Funiversal-memory --skill use-universal-memory",{"tool":70,"command":71},"bunx","bunx skills add YanAmorelli\u002Funiversal-memory --skill use-universal-memory",{"tool":73,"command":74},"pnpm","pnpm dlx skills add YanAmorelli\u002Funiversal-memory --skill use-universal-memory","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory\u002Fblob\u002Fmain\u002F.umem\u002Fskills\u002Fuse-universal-memory\u002FSKILL.md",true,[78,84,88,92,96,100],{"path":79,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":82,"sourceHtmlUrl":83},"references\u002Fcli-mcp-parity.md","REFERENCE","参考文档",5778,"https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory\u002Fblob\u002Fmain\u002F.umem\u002Fskills\u002Fuse-universal-memory\u002Freferences\u002Fcli-mcp-parity.md",{"path":85,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":86,"sourceHtmlUrl":87},"references\u002Fguardrails-and-recording.md",2758,"https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory\u002Fblob\u002Fmain\u002F.umem\u002Fskills\u002Fuse-universal-memory\u002Freferences\u002Fguardrails-and-recording.md",{"path":89,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":90,"sourceHtmlUrl":91},"references\u002Fhost-instructions-sync.md",1812,"https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory\u002Fblob\u002Fmain\u002F.umem\u002Fskills\u002Fuse-universal-memory\u002Freferences\u002Fhost-instructions-sync.md",{"path":93,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":94,"sourceHtmlUrl":95},"references\u002Fmemory-facts.md",2979,"https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory\u002Fblob\u002Fmain\u002F.umem\u002Fskills\u002Fuse-universal-memory\u002Freferences\u002Fmemory-facts.md",{"path":97,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":98,"sourceHtmlUrl":99},"references\u002Fskills-lifecycle.md",20862,"https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory\u002Fblob\u002Fmain\u002F.umem\u002Fskills\u002Fuse-universal-memory\u002Freferences\u002Fskills-lifecycle.md",{"path":101,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":102,"sourceHtmlUrl":103},"references\u002Fstartup-and-context.md",1949,"https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory\u002Fblob\u002Fmain\u002F.umem\u002Fskills\u002Fuse-universal-memory\u002Freferences\u002Fstartup-and-context.md",[105,119,127,137],{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":44},"01M71JR7WQ4ZNJ4R2NYGG12YEA","Review Helper","Review implementation changes safely.","https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Fvalid-review-helper\u002FSKILL.md",[],[112,113,114,115,116,117,118],"helper","review helper","review","implementation","changes","review changes","review implementation",{"skillNo":120,"name":121,"nameZh":6,"description":122,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":123,"categories":124,"keywords":125,"publishedAt":44},"01M71JR71TJRF1JWZM0XXBCVCT","Broken Helper","Incomplete skill.","https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Finvalid-placeholder\u002FSKILL.md",[],[126,121,112],"broken",{"skillNo":128,"name":129,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":132,"publishedAt":44},"01M71JR52QNPVWXNVX6W75YJ9X","universal-memory","https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory\u002Fblob\u002Fmain\u002Fsrc\u002Funiversal_memory\u002Fresources\u002Fskills\u002Funiversal-memory\u002FSKILL.md",[],[26,133,31,134,34,135,37,136,40,28],"universal memory","context","sync","hub",{"skillNo":138,"name":129,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":139,"categories":140,"keywords":141,"publishedAt":44},"01M71JR2PG6KES4E030EVY1JJ4","https:\u002F\u002Fgithub.com\u002FYanAmorelli\u002Funiversal-memory\u002Fblob\u002Fmain\u002Fskills\u002Funiversal-memory\u002FSKILL.md",[],[26,133,31,134,34,135,37,136,40,28]]