[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6GXKC4CYC1R4YCD4HSK2CCD":3,"skill-same:01M6GXKC4CYC1R4YCD4HSK2CCD":80},{"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":16,"sourceHtmlUrl":17,"categories":18,"keywords":24,"publishedAt":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":43,"commitSha":44,"skillDirectory":45,"forksCount":46,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":49,"ownerDescription":50,"updatedAt":51,"install":52,"resources":65},"01M6GXKC4CYC1R4YCD4HSK2CCD","audit-what-the-agent-remembers",null,"Use when you want a full inventory of stored memory before trusting it. Enumerates entries, dates, and use counts so dead weight and gaps are visible.","jiayaoqijia\u002Fcryptoskill","jiayaoqijia","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1453879?v=4","01M6GMYTX7Q7S504VC6E756ENR","YQ","01M6GMYV1QKJ1CC75MTTGT9PR0",81,"MIT","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-audit-what-the-agent-remembers\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-audit-what-the-agent-remembers\u002FSKILL.md",[19],{"categoryNo":20,"categoryName":21,"taxonomyType":22,"taxonomyTypeDesc":23},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[25,26,27,28,29,30,31,32,33,34,35,36,37],"audit","what the","audit what the agent remembers","memory","inventory","use","entries","full","it","you","gaps","dates","when","2026-11-10 10:12:30",false,"---\nname: audit-what-the-agent-remembers\ndescription: Use when you want a full inventory of stored memory before trusting it. Enumerates entries, dates, and use counts so dead weight and gaps are visible.\n---\n\n# Audit What the Agent Remembers\n\nYou cannot reason about memory you have not listed. An audit enumerates every stored fact with its age and whether it was ever used, turning a black box into a table.\n\n## Procedure\n\n1. Enumerate the store: `find ~\u002F.hermes\u002Fmemories -type f -name '*.md' | sort`.\n2. Dump every entry with its date: `grep -rn \"^20[0-9][0-9]-\" ~\u002F.hermes\u002Fmemories\u002F`.\n3. Count by age bucket and print the histogram; a healthy store is mostly recent, with a small aged tail.\n4. Flag entries with no date — they cannot be aged or pruned, so they are the first gap.\n5. Flag entries with no source — unverifiable by construction.\n6. Cross-check for the same key appearing twice: `grep -oE '^[a-z-]+ *=' ... | sort | uniq -d`.\n7. List entries never referenced since creation, if use is tracked; the never-used set is the pruning queue.\n8. Compare the store against the questions you actually ask — a store full of facts you never query is misrouted (see `route-a-fact-to-memory-session-or-skill`).\n9. Write the audit to `notes\u002Fmemory-audit.md`: counts, undated, unsourced, duplicated, unused.\n10. Report the four numbers before making any change; audit first, prune second.\n\n## Pitfalls\n\n- Auditing by memory of what you stored instead of dumping the store to a file.\n- Counting entries by file and missing that one file holds forty facts.\n- Ignoring undated entries in the histogram, so the age picture is wrong.\n- Treating a large store as healthy when most entries are never read.\n- Deleting during the audit rather than after it, so the inventory is incomplete.\n\n- Reporting totals without the file they came from, so the audit cannot be re-run.\n- Auditing only the memory store and ignoring skills and session notes that also hold facts.\n- Skipping the duplicate check, so a fact counted once is actually stored three times.\n\n## Verification\n\n    wc -l notes\u002Fmemory-audit.md; grep -c \"undated\\|unsourced\\|duplicate\\|unused\" notes\u002Fmemory-audit.md\n    # passes when the four counts are present and sum to the total entry count\n\nReport to the user: total entries, and the counts of undated, unsourced, duplicated, and unused.\n","# Audit What the Agent Remembers\n\nYou cannot reason about memory you have not listed. An audit enumerates every stored fact with its age and whether it was ever used, turning a black box into a table.\n\n## Procedure\n\n1. Enumerate the store: `find ~\u002F.hermes\u002Fmemories -type f -name '*.md' | sort`.\n2. Dump every entry with its date: `grep -rn \"^20[0-9][0-9]-\" ~\u002F.hermes\u002Fmemories\u002F`.\n3. Count by age bucket and print the histogram; a healthy store is mostly recent, with a small aged tail.\n4. Flag entries with no date — they cannot be aged or pruned, so they are the first gap.\n5. Flag entries with no source — unverifiable by construction.\n6. Cross-check for the same key appearing twice: `grep -oE '^[a-z-]+ *=' ... | sort | uniq -d`.\n7. List entries never referenced since creation, if use is tracked; the never-used set is the pruning queue.\n8. Compare the store against the questions you actually ask — a store full of facts you never query is misrouted (see `route-a-fact-to-memory-session-or-skill`).\n9. Write the audit to `notes\u002Fmemory-audit.md`: counts, undated, unsourced, duplicated, unused.\n10. Report the four numbers before making any change; audit first, prune second.\n\n## Pitfalls\n\n- Auditing by memory of what you stored instead of dumping the store to a file.\n- Counting entries by file and missing that one file holds forty facts.\n- Ignoring undated entries in the histogram, so the age picture is wrong.\n- Treating a large store as healthy when most entries are never read.\n- Deleting during the audit rather than after it, so the inventory is incomplete.\n\n- Reporting totals without the file they came from, so the audit cannot be re-run.\n- Auditing only the memory store and ignoring skills and session notes that also hold facts.\n- Skipping the duplicate check, so a fact counted once is actually stored three times.\n\n## Verification\n\n    wc -l notes\u002Fmemory-audit.md; grep -c \"undated\\|unsourced\\|duplicate\\|unused\" notes\u002Fmemory-audit.md\n    # passes when the four counts are present and sum to the total entry count\n\nReport to the user: total entries, and the counts of undated, unsourced, duplicated, and unused.\n",{"name":5,"description":7},"main","3df1d0d67b30ff15236561f8c0f9f06d33f42dfd","skills\u002Fpayments\u002F0xklen-audit-what-the-agent-remembers",17,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia","https:\u002F\u002Feth2030.com","Hardcore infra. Building @alt-research and applied cryptography.","2026-11-13 02:31:19",{"source":8,"skillName":5,"commands":53,"prompt":63,"zipAvailable":64},[54,57,60],{"tool":55,"command":56},"npx","npx skills add jiayaoqijia\u002Fcryptoskill --skill audit-what-the-agent-remembers",{"tool":58,"command":59},"bunx","bunx skills add jiayaoqijia\u002Fcryptoskill --skill audit-what-the-agent-remembers",{"tool":61,"command":62},"pnpm","pnpm dlx skills add jiayaoqijia\u002Fcryptoskill --skill audit-what-the-agent-remembers","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-audit-what-the-agent-remembers\u002FSKILL.md",true,[66,70,76],{"path":67,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":69,"sourceHtmlUrl":16},"LICENSE","许可证",1063,{"path":71,"resourceType":72,"resourceTypeDesc":73,"sizeBytes":74,"sourceHtmlUrl":75},"SOURCE.md","REFERENCE","参考文档",356,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-audit-what-the-agent-remembers\u002FSOURCE.md",{"path":77,"resourceType":72,"resourceTypeDesc":73,"sizeBytes":78,"sourceHtmlUrl":79},"TRUST.auto.yaml",2217,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-audit-what-the-agent-remembers\u002FTRUST.auto.yaml",[81,109,132,150,163,173],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":85,"sourceHtmlUrl":86,"categories":87,"keywords":88,"publishedAt":38},"01M712C436EQYE43342Q4E7GG1","recipe-performance","Diagnose a specific MetaMask user flow's real-app performance and Sentry critical-user-flow telemetry with deterministic mm-harness recipes. Use for CUF boundaries, cold\u002Fwarm\u002Fbackground-resume behavior, latency regressions, lifecycle tags, duplicate or blocking network requests, long tasks, layout\u002Fpaint cost, screen redraws, React rerenders, or browser trace analysis where tests alone cannot prove the real app.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fwallets\u002Fmetamask-official-recipe-performance\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fwallets\u002Fmetamask-official-recipe-performance\u002FSKILL.md",[],[89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108],"performance","recipe performance","recipe","mm","sentry","harness","app","deterministic","recipes","flow","cold","critical","analysis","tasks","react","browser","layout","screen","network","metamask",{"skillNo":110,"name":111,"nameZh":6,"description":112,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":113,"licenseFileUrl":114,"sourceHtmlUrl":115,"categories":116,"keywords":117,"publishedAt":38},"01M70XT2F8A5CQZ81JBP98KSW3","mexc-spot-websocket","MEXC Spot WebSocket workflows for public streams, protobuf handling, depth maintenance, listen keys, and private streams without exposing API keys.","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-websocket\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-websocket\u002FSKILL.md",[],[118,119,120,121,122,123,124,125,126,127,128,129,130,131],"mexc spot websocket","spot","websocket","api","workflows","public","listen","streams","depth","keys","for","api keys","maintenance","protobuf",{"skillNo":133,"name":134,"nameZh":6,"description":135,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":113,"licenseFileUrl":136,"sourceHtmlUrl":137,"categories":138,"keywords":139,"publishedAt":38},"01M70XT0MBXN3WZY1BKN0CPNKR","mexc-spot-rest","MEXC Spot REST workflows for public data, signed account requests, orders, wallet\u002Fadmin actions, and secure signing without exposing API keys.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-rest\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-spot-rest\u002FSKILL.md",[],[140,119,141,142,143,144,145,129,128,127,146,147,148,123,149,122,121],"mexc spot rest","REST","admin","signing","Wallet","requests","actions","secure","data","orders",{"skillNo":151,"name":152,"nameZh":6,"description":153,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":113,"licenseFileUrl":154,"sourceHtmlUrl":155,"categories":156,"keywords":157,"publishedAt":38},"01M70XSYSVZ2N0N91XCAR2CAK0","mexc-futures-websocket","MEXC Futures WebSocket workflows for public streams, private account\u002Forder\u002Fposition streams, ping\u002Fpong, subscriptions, and depth maintenance.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-futures-websocket\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fexchanges\u002Fmncrftfrcnm-mexc-futures-websocket\u002FSKILL.md",[],[158,159,120,160,161,130,128,162,126,125,123,122],"mexc futures websocket","futures","position","ping","subscriptions",{"skillNo":164,"name":165,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":166,"sourceHtmlUrl":167,"categories":168,"keywords":169,"publishedAt":38},"01M6H0ZWHVE5W04WG2DKQE2SQC","0xklen-version-and-refresh-sanctions-lists","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-version-and-refresh-sanctions-lists\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-version-and-refresh-sanctions-lists\u002FSKILL.md",[],[170,171,172],"refresh","0xklen version and refresh sanctions lists","version",{"skillNo":174,"name":175,"nameZh":6,"description":176,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":177,"sourceHtmlUrl":178,"categories":179,"keywords":180,"publishedAt":38},"01M6H0Z28Q3R8J0S799GJQWXM3","verify-tests-cover-changed-lines","Use when a PR adds code that the existing suite may not exercise. Measures patch coverage — the share of newly changed lines hit by tests — before approving.","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-verify-tests-cover-changed-lines\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-verify-tests-cover-changed-lines\u002FSKILL.md",[],[181,182,183,184,185,186,187,30,188,189,190],"tests","cover","verify tests cover changed lines","verify","coverage","pr","exercise","patch","code","share"]