[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6GY47FBSTCTBC3560HT0C0C":3,"skill-same:01M6GY47FBSTCTBC3560HT0C0C":82},{"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":19,"publishedAt":40,"linkOnly":41,"markdownContent":42,"markdownBody":43,"frontMatter":44,"refName":45,"commitSha":46,"skillDirectory":47,"forksCount":48,"repositoryHtmlUrl":49,"repositoryHomepageUrl":6,"ownerHtmlUrl":50,"ownerBlogUrl":51,"ownerDescription":52,"updatedAt":53,"install":54,"resources":67},"01M6GY47FBSTCTBC3560HT0C0C","curate-a-reading-path-for-a-new-domain",null,"Use when someone must get up to speed in an unfamiliar field. Builds a short ordered path of primary sources with a reason and a time budget each, instead of dumping a link list on them.","jiayaoqijia\u002Fcryptoskill","jiayaoqijia","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1453879?v=4","01M6GMYTX7Q7S504VC6E756ENR","YQ","01M6GMYV1QKJ1CC75MTTGT9PR0",80,"MIT","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-curate-a-reading-path-for-a-new-domain\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-curate-a-reading-path-for-a-new-domain\u002FSKILL.md",[],[20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39],"new","curate","for","domain","curate a reading path for a new domain","path","reading","link","when","reason","with","sources","Budget","get","speed","time","up","use","list","short","2026-11-10 10:12:30",false,"---\nname: curate-a-reading-path-for-a-new-domain\ndescription: Use when someone must get up to speed in an unfamiliar field. Builds a short ordered path of primary sources with a reason and a time budget each, instead of dumping a link list on them.\n---\n\n# Curate a Reading Path for a New Domain\n\nA list of links is not a curriculum. An ordered path where each item earns its place, primary sources first and a stated time budget, gets a newcomer to working understanding without drowning them.\n\n## Procedure\n\n1. Cap the path at 5-8 items. More is abandonment dressed as thoroughness.\n2. Lead with the primary source: the spec, the RFC, or the original paper, not a blog summary of it. For HTTP caching that is `RFC 9111`.\n3. For each item give three fields: why it sits here, what to extract, and a time budget (`skim 15m` vs `read 90m`).\n4. Order by dependency: each item should use only concepts from earlier ones.\n5. Mark a stopping point: \"after item 4 you can do X; items 5-8 are for when you hit Y\".\n6. Include one item that shows the field's current debate or known failure, so the learner does not take the rest as settled.\n7. Store it as `reading-path.md` in the project so it is versioned, not lost in a chat thread.\n8. Give the reader one small task that forces them to use the material: a config to write, a request to trace.\n9. Re-vet the links every quarter; a moved spec or dead blog rots the path quietly.\n10. Note the assumed starting knowledge so the path is not pitched above or below the reader.\n11. Tag each item as primary or secondary so the reader knows what to trust most.\n12. Add a one-line 'after this you can...' outcome to each item.\n13. Keep a dated changelog of edits to the path, so its trustworthiness is visible.\n14. State the reader's assumed background in one line at the top of the path.\n15. Give each item a 'skip if you already know X' note so experts do not read everything.\n16. Add a 'you are done when you can...' line at the end so the path has a finish.\n\n## Pitfalls\n\n- Nine blog posts where one spec plus one critique would do.\n- Summaries of primary sources that silently drop the caveats the learner needs later.\n- No time budgets, so the learner spends a whole day on a skim item.\n- Ordering by popularity instead of by concept dependency.\n- Never checking the links, so two of the five are 404 by the time a new joiner reads them.\n- A path with no task, so the reading never converts into skill.\n- Mixing three difficulty levels so a beginner stalls on item two.\n- A path whose items all come from one author, hiding disagreement in the field.\n- Including a paywalled source with no open alternative.\n- A path with no stated prerequisites, pitched at the wrong reader.\n- No skip notes, so a senior wastes hours on the basics.\n- An open-ended path that never signals completion.\n\n## Verification\n\n    grep -c '^[0-9]' reading-path.md ; grep -c 'primary' reading-path.md\n    # passes when item count is 5-8 and at least one is marked 'primary source'\n\nReport to the user: the ordered list with each item's extraction goal and time budget.\n","# Curate a Reading Path for a New Domain\n\nA list of links is not a curriculum. An ordered path where each item earns its place, primary sources first and a stated time budget, gets a newcomer to working understanding without drowning them.\n\n## Procedure\n\n1. Cap the path at 5-8 items. More is abandonment dressed as thoroughness.\n2. Lead with the primary source: the spec, the RFC, or the original paper, not a blog summary of it. For HTTP caching that is `RFC 9111`.\n3. For each item give three fields: why it sits here, what to extract, and a time budget (`skim 15m` vs `read 90m`).\n4. Order by dependency: each item should use only concepts from earlier ones.\n5. Mark a stopping point: \"after item 4 you can do X; items 5-8 are for when you hit Y\".\n6. Include one item that shows the field's current debate or known failure, so the learner does not take the rest as settled.\n7. Store it as `reading-path.md` in the project so it is versioned, not lost in a chat thread.\n8. Give the reader one small task that forces them to use the material: a config to write, a request to trace.\n9. Re-vet the links every quarter; a moved spec or dead blog rots the path quietly.\n10. Note the assumed starting knowledge so the path is not pitched above or below the reader.\n11. Tag each item as primary or secondary so the reader knows what to trust most.\n12. Add a one-line 'after this you can...' outcome to each item.\n13. Keep a dated changelog of edits to the path, so its trustworthiness is visible.\n14. State the reader's assumed background in one line at the top of the path.\n15. Give each item a 'skip if you already know X' note so experts do not read everything.\n16. Add a 'you are done when you can...' line at the end so the path has a finish.\n\n## Pitfalls\n\n- Nine blog posts where one spec plus one critique would do.\n- Summaries of primary sources that silently drop the caveats the learner needs later.\n- No time budgets, so the learner spends a whole day on a skim item.\n- Ordering by popularity instead of by concept dependency.\n- Never checking the links, so two of the five are 404 by the time a new joiner reads them.\n- A path with no task, so the reading never converts into skill.\n- Mixing three difficulty levels so a beginner stalls on item two.\n- A path whose items all come from one author, hiding disagreement in the field.\n- Including a paywalled source with no open alternative.\n- A path with no stated prerequisites, pitched at the wrong reader.\n- No skip notes, so a senior wastes hours on the basics.\n- An open-ended path that never signals completion.\n\n## Verification\n\n    grep -c '^[0-9]' reading-path.md ; grep -c 'primary' reading-path.md\n    # passes when item count is 5-8 and at least one is marked 'primary source'\n\nReport to the user: the ordered list with each item's extraction goal and time budget.\n",{"name":5,"description":7},"main","3df1d0d67b30ff15236561f8c0f9f06d33f42dfd","skills\u002Fpayments\u002F0xklen-curate-a-reading-path-for-a-new-domain",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-11 08:47:40",{"source":8,"skillName":5,"commands":55,"prompt":65,"zipAvailable":66},[56,59,62],{"tool":57,"command":58},"npx","npx skills add jiayaoqijia\u002Fcryptoskill --skill curate-a-reading-path-for-a-new-domain",{"tool":60,"command":61},"bunx","bunx skills add jiayaoqijia\u002Fcryptoskill --skill curate-a-reading-path-for-a-new-domain",{"tool":63,"command":64},"pnpm","pnpm dlx skills add jiayaoqijia\u002Fcryptoskill --skill curate-a-reading-path-for-a-new-domain","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-curate-a-reading-path-for-a-new-domain\u002FSKILL.md",true,[68,72,78],{"path":69,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":71,"sourceHtmlUrl":16},"LICENSE","许可证",1063,{"path":73,"resourceType":74,"resourceTypeDesc":75,"sizeBytes":76,"sourceHtmlUrl":77},"SOURCE.md","REFERENCE","参考文档",364,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-curate-a-reading-path-for-a-new-domain\u002FSOURCE.md",{"path":79,"resourceType":74,"resourceTypeDesc":75,"sizeBytes":80,"sourceHtmlUrl":81},"TRUST.auto.yaml",2217,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fpayments\u002F0xklen-curate-a-reading-path-for-a-new-domain\u002FTRUST.auto.yaml",[83,111,133,151,164,174],{"skillNo":84,"name":85,"nameZh":6,"description":86,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":87,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":40},"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",[],[91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110],"performance","recipe performance","recipe","mm","sentry","harness","app","deterministic","recipes","flow","cold","critical","analysis","tasks","react","browser","layout","screen","network","metamask",{"skillNo":112,"name":113,"nameZh":6,"description":114,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":115,"licenseFileUrl":116,"sourceHtmlUrl":117,"categories":118,"keywords":119,"publishedAt":40},"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",[],[120,121,122,123,124,125,126,127,128,129,22,130,131,132],"mexc spot websocket","spot","websocket","api","workflows","public","listen","streams","depth","keys","api keys","maintenance","protobuf",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":115,"licenseFileUrl":137,"sourceHtmlUrl":138,"categories":139,"keywords":140,"publishedAt":40},"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",[],[141,121,142,143,144,145,146,130,22,129,147,148,149,125,150,124,123],"mexc spot rest","REST","admin","signing","Wallet","requests","actions","secure","data","orders",{"skillNo":152,"name":153,"nameZh":6,"description":154,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":115,"licenseFileUrl":155,"sourceHtmlUrl":156,"categories":157,"keywords":158,"publishedAt":40},"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",[],[159,160,122,161,162,131,22,163,128,127,125,124],"mexc futures websocket","futures","position","ping","subscriptions",{"skillNo":165,"name":166,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":167,"sourceHtmlUrl":168,"categories":169,"keywords":170,"publishedAt":40},"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",[],[171,172,173],"refresh","0xklen version and refresh sanctions lists","version",{"skillNo":175,"name":176,"nameZh":6,"description":177,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":178,"sourceHtmlUrl":179,"categories":180,"keywords":181,"publishedAt":40},"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",[],[182,183,184,185,186,187,188,37,189,190,191],"tests","cover","verify tests cover changed lines","verify","coverage","pr","exercise","patch","code","share"]