[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6PJB8PFAZ769AEFE47W5985":3,"skill-same:01M6PJB8PFAZ769AEFE47W5985":105},{"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":18,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":47,"commitSha":48,"skillDirectory":49,"forksCount":14,"repositoryHtmlUrl":50,"repositoryHomepageUrl":6,"ownerHtmlUrl":51,"ownerBlogUrl":52,"ownerDescription":6,"updatedAt":53,"install":54,"resources":67},"01M6PJB8PFAZ769AEFE47W5985","redis-core",null,"Core Redis modeling guidance — choose the right data structure (String, Hash, List, Set, Sorted Set, JSON, Stream, Vector Set) and use consistent colon-separated key names. Use when designing a Redis data model, caching objects, deciding between Hash and JSON, building counters, leaderboards, membership sets, or session stores, or when reviewing\u002Fcleaning up Redis key naming.","headmktlucca-ui\u002Fneuroads-lp","headmktlucca-ui","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F247379838?v=4","01M6PDVAV6M1W96D1SR1PDF8CS","NeuroAds","01M6PDVAZ4P281GNDKD45CYTF5",0,"MIT","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fredis-core\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"redis core","redis","core","use","data model","stream","naming","modeling","structure","objects","guidance","up","session","list","choose","model","json","SET","data","vector","2026-11-10 10:12:30",false,"---\nname: redis-core\ndescription: Core Redis modeling guidance — choose the right data structure (String, Hash, List, Set, Sorted Set, JSON, Stream, Vector Set) and use consistent colon-separated key names. Use when designing a Redis data model, caching objects, deciding between Hash and JSON, building counters, leaderboards, membership sets, or session stores, or when reviewing\u002Fcleaning up Redis key naming.\nlicense: MIT\nmetadata:\n  author: Redis, Inc.\n  version: \"0.1.0\"\n---\n\n# Redis Core\n\nFoundational guidance for modeling data in Redis. Covers data-type selection and key-name conventions — the two decisions that most directly drive memory, performance, and maintainability.\n\n## When to apply\n\n- Caching objects, sessions, or per-user state.\n- Counters, leaderboards, recent-items lists, unique-membership sets.\n- Reviewing or refactoring Redis key names.\n- Deciding between a Redis Hash and a JSON document for an entity.\n\n## 1. Choose the right data structure\n\nPick the type that matches the *access pattern*, not just the shape of the data.\n\n| Use case | Recommended type | Why |\n|---|---|---|\n| Simple values, counters | String | Atomic `INCR`\u002F`DECR`, `SET`\u002F`GET` |\n| Object with independently updated fields | Hash | Per-field reads\u002Fwrites, no whole-object rewrite |\n| Queue, recent-N items | List | O(1) push\u002Fpop at ends |\n| Unique items, membership checks | Set | O(1) `SADD`\u002F`SISMEMBER`\u002F`SCARD` |\n| Rankings, score-based ranges | Sorted Set | Score-ordered; `ZADD`\u002F`ZRANGE`\u002F`ZRANK` |\n| Nested \u002F hierarchical data | JSON | Path-level updates, nested arrays, RQE indexing |\n| Event log, fan-out messaging | Stream | Persistent, consumer groups |\n| Vector similarity | Vector Set | Native vector storage with HNSW |\n\n**Common anti-pattern:** stuffing a flat object into a serialized string. Updating one field means fetch + parse + mutate + rewrite. Use a Hash instead.\n\nSee [references\u002Fchoose-data-structure.md](references\u002Fchoose-data-structure.md) for full rationale and Python\u002FJava examples.\n\n## 2. Use consistent key names\n\nUse `colon-separated` segments with a stable hierarchy:\n\n```\n{entity}:{id}:{attribute}\nuser:1001:profile\nuser:1001:settings\norder:2024:items\nsession:abc123\narticle:987:likes\ngame:space-invaders:leaderboard\n```\n\nRules of thumb:\n\n- **Lowercase, colon-separated.** No spaces, no mixed casing (`User_1001_Profile` is bad).\n- **Keep keys short but readable** — keys live in memory and appear in every command.\n- **Don't use full URLs or long strings as keys.** Extract a short identifier, or use a hash digest of the URL.\n- **Prefix for multi-tenancy** (`tenant:42:user:7:cart`) so scans and ACLs can target a tenant cleanly.\n- **Be consistent.** Pick one convention per service and apply it across all keys.\n\nSee [references\u002Fkey-naming.md](references\u002Fkey-naming.md) for cleanup examples and edge cases.\n\n## References\n\n- [Redis: Choosing the right data type](https:\u002F\u002Fredis.io\u002Fdocs\u002Flatest\u002Fdevelop\u002Fdata-types\u002Fcompare-data-types\u002F)\n- [Redis: Keys](https:\u002F\u002Fredis.io\u002Fdocs\u002Flatest\u002Fdevelop\u002Fuse\u002Fkeyspace\u002F)\n","# Redis Core\n\nFoundational guidance for modeling data in Redis. Covers data-type selection and key-name conventions — the two decisions that most directly drive memory, performance, and maintainability.\n\n## When to apply\n\n- Caching objects, sessions, or per-user state.\n- Counters, leaderboards, recent-items lists, unique-membership sets.\n- Reviewing or refactoring Redis key names.\n- Deciding between a Redis Hash and a JSON document for an entity.\n\n## 1. Choose the right data structure\n\nPick the type that matches the *access pattern*, not just the shape of the data.\n\n| Use case | Recommended type | Why |\n|---|---|---|\n| Simple values, counters | String | Atomic `INCR`\u002F`DECR`, `SET`\u002F`GET` |\n| Object with independently updated fields | Hash | Per-field reads\u002Fwrites, no whole-object rewrite |\n| Queue, recent-N items | List | O(1) push\u002Fpop at ends |\n| Unique items, membership checks | Set | O(1) `SADD`\u002F`SISMEMBER`\u002F`SCARD` |\n| Rankings, score-based ranges | Sorted Set | Score-ordered; `ZADD`\u002F`ZRANGE`\u002F`ZRANK` |\n| Nested \u002F hierarchical data | JSON | Path-level updates, nested arrays, RQE indexing |\n| Event log, fan-out messaging | Stream | Persistent, consumer groups |\n| Vector similarity | Vector Set | Native vector storage with HNSW |\n\n**Common anti-pattern:** stuffing a flat object into a serialized string. Updating one field means fetch + parse + mutate + rewrite. Use a Hash instead.\n\nSee [references\u002Fchoose-data-structure.md](references\u002Fchoose-data-structure.md) for full rationale and Python\u002FJava examples.\n\n## 2. Use consistent key names\n\nUse `colon-separated` segments with a stable hierarchy:\n\n```\n{entity}:{id}:{attribute}\nuser:1001:profile\nuser:1001:settings\norder:2024:items\nsession:abc123\narticle:987:likes\ngame:space-invaders:leaderboard\n```\n\nRules of thumb:\n\n- **Lowercase, colon-separated.** No spaces, no mixed casing (`User_1001_Profile` is bad).\n- **Keep keys short but readable** — keys live in memory and appear in every command.\n- **Don't use full URLs or long strings as keys.** Extract a short identifier, or use a hash digest of the URL.\n- **Prefix for multi-tenancy** (`tenant:42:user:7:cart`) so scans and ACLs can target a tenant cleanly.\n- **Be consistent.** Pick one convention per service and apply it across all keys.\n\nSee [references\u002Fkey-naming.md](references\u002Fkey-naming.md) for cleanup examples and edge cases.\n\n## References\n\n- [Redis: Choosing the right data type](https:\u002F\u002Fredis.io\u002Fdocs\u002Flatest\u002Fdevelop\u002Fdata-types\u002Fcompare-data-types\u002F)\n- [Redis: Keys](https:\u002F\u002Fredis.io\u002Fdocs\u002Flatest\u002Fdevelop\u002Fuse\u002Fkeyspace\u002F)\n",{"name":5,"license":15,"metadata":44,"description":7},{"author":45,"version":46},"Redis, Inc.","0.1.0","main","7a940b8e5af16c95e5c190a524421d32fc7445a9",".agent\u002Fskills\u002Fredis-core","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui","https:\u002F\u002Fneuroads.com.br","2026-08-12 00:42:44",{"source":8,"skillName":5,"commands":55,"prompt":65,"zipAvailable":66},[56,59,62],{"tool":57,"command":58},"npx","npx skills add headmktlucca-ui\u002Fneuroads-lp --skill redis-core",{"tool":60,"command":61},"bunx","bunx skills add headmktlucca-ui\u002Fneuroads-lp --skill redis-core",{"tool":63,"command":64},"pnpm","pnpm dlx skills add headmktlucca-ui\u002Fneuroads-lp --skill redis-core","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fredis-core\u002FSKILL.md",true,[68,74,78,82,86,90,94,97,101],{"path":69,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":72,"sourceHtmlUrl":73},"evals\u002Fcore\u002Fbaselines\u002Faggregate-benchmark.json","REFERENCE","参考文档",15872,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fredis-core\u002Fevals\u002Fcore\u002Fbaselines\u002Faggregate-benchmark.json",{"path":75,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":76,"sourceHtmlUrl":77},"evals\u002Fcore\u002Fbaselines\u002Faggregate-benchmark.md",2656,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fredis-core\u002Fevals\u002Fcore\u002Fbaselines\u002Faggregate-benchmark.md",{"path":79,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":80,"sourceHtmlUrl":81},"evals\u002Fcore\u002Fbaselines\u002Fbaseline.json",375,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fredis-core\u002Fevals\u002Fcore\u002Fbaselines\u002Fbaseline.json",{"path":83,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":84,"sourceHtmlUrl":85},"evals\u002Fcore\u002Fbaselines\u002Fmodel-matrix.json",575,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fredis-core\u002Fevals\u002Fcore\u002Fbaselines\u002Fmodel-matrix.json",{"path":87,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":88,"sourceHtmlUrl":89},"evals\u002Fcore\u002Fbaselines\u002FREADME.md",580,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fredis-core\u002Fevals\u002Fcore\u002Fbaselines\u002FREADME.md",{"path":91,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":92,"sourceHtmlUrl":93},"evals\u002Fcore\u002Fevals.json",4637,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fredis-core\u002Fevals\u002Fcore\u002Fevals.json",{"path":95,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":84,"sourceHtmlUrl":96},"evals\u002Fcore\u002Fmodel-matrix.json","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fredis-core\u002Fevals\u002Fcore\u002Fmodel-matrix.json",{"path":98,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":99,"sourceHtmlUrl":100},"references\u002Fchoose-data-structure.md",2330,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fredis-core\u002Freferences\u002Fchoose-data-structure.md",{"path":102,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":103,"sourceHtmlUrl":104},"references\u002Fkey-naming.md",1516,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fredis-core\u002Freferences\u002Fkey-naming.md",[106,131,156,182,200,235],{"skillNo":107,"name":108,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":120,"publishedAt":39},"01M6PTDCZTXTGSTX4RFK901YSZ","xunit-skill","Generates xUnit.net tests in C#. Covers Fact\u002FTheory, constructor injection, IClassFixture, and FluentAssertions. Use when user mentions \"xUnit\", \"[Fact]\", \"[Theory]\", \"Assert.Equal\", \"C# xUnit\". Triggers on: \"xUnit\", \"[Fact]\", \"[Theory]\", \"Assert.Equal C#\", \"xUnit.net\".","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fxunit-skill\u002FSKILL.md",[112,117],{"categoryNo":113,"categoryName":114,"taxonomyType":115,"taxonomyTypeDesc":116},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",{"categoryNo":118,"categoryName":119,"taxonomyType":115,"taxonomyTypeDesc":116},"01JBSEEDCAT000000000000023","Skill与智能体开发",[121,122,123,124,125,22,126,127,128,129,130],"xunit","xunit skill","testing","injection","user","tests","triggers","unit","unit-testing","C#",{"skillNo":132,"name":133,"nameZh":6,"description":134,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":139,"publishedAt":39},"01M6PTCB59ZTG5FTMWGPYEMMBP","xcuitest-skill","Generates XCUITest UI tests for iOS\u002FiPadOS apps in Swift. Apple's native testing framework for reliable, fast UI automation. Supports local simulators and TestMu AI cloud real devices. Use when user mentions \"XCUITest\", \"XCTest\", \"iOS UI test\", \"Swift test\", \"XCUIApplication\". Triggers on: \"XCUITest\", \"XCTest UI\", \"iOS UI test\", \"Swift UI test\", \"XCUIApplication\", \"TestMu\".","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fxcuitest-skill\u002FSKILL.md",[137,138],{"categoryNo":113,"categoryName":114,"taxonomyType":115,"taxonomyTypeDesc":116},{"categoryNo":118,"categoryName":119,"taxonomyType":115,"taxonomyTypeDesc":116},[140,141,123,142,143,144,145,146,22,147,148,149,150,151,126,127,152,153,154,155],"xcuitest","xcuitest skill","automation","test","testing framework","ios","devices","mobile","mobile-testing","ui test","local","apple","apps","native","for","objective",{"skillNo":157,"name":158,"nameZh":6,"description":159,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":160,"categories":161,"keywords":166,"publishedAt":39},"01M6PTATMNTY9NF4J7KSR76YK6","world-builder","Create and manage generative game zones for Dorothy's Pokemon-style world. Use this skill when creating, updating, or designing game worlds via MCP tools.","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fworld-builder\u002FSKILL.md",[162,165],{"categoryNo":163,"categoryName":164,"taxonomyType":115,"taxonomyTypeDesc":116},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":118,"categoryName":119,"taxonomyType":115,"taxonomyTypeDesc":116},[167,168,169,170,171,172,173,174,22,175,176,177,178,179,180,154,181],"builder","world","world builder","MCP","create","mcp tools","Tools","game","pokemon","manage","style","via","theme","zone","generative",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":186,"categories":187,"keywords":190,"publishedAt":39},"01M6PT9Z92JTSQEHE1QR0NNW5F","webdriverio-skill","Generates WebdriverIO (WDIO) automation tests in JavaScript or TypeScript. Supports local and TestMu AI cloud. Use when user mentions \"WebdriverIO\", \"WDIO\", \"wdio.conf\", \"browser.url\", \"$\", \"$$\". Triggers on: \"WebdriverIO\", \"WDIO\", \"wdio\", \"browser.$\".","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fwebdriverio-skill\u002FSKILL.md",[188,189],{"categoryNo":113,"categoryName":114,"taxonomyType":115,"taxonomyTypeDesc":116},{"categoryNo":118,"categoryName":119,"taxonomyType":115,"taxonomyTypeDesc":116},[191,123,192,142,193,194,195,196,125,22,197,150,126,127,198,199],"webdriverio skill","typescript","javascript","browser","cloud","e2e","e2e-testing","URL","conf",{"skillNo":201,"name":202,"nameZh":6,"description":203,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":204,"categories":205,"keywords":215,"publishedAt":39},"01M6PT9NVK36ZWCQ69YXK3FR4K","web-design-guidelines","Web platform design and accessibility guidelines. Use when building web interfaces, auditing accessibility, implementing responsive layouts, or reviewing web UI code. Triggers on tasks involving HTML, CSS, web components, WCAG compliance, responsive design, or web performance.","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fweb\u002FSKILL.md",[206,209,210],{"categoryNo":207,"categoryName":208,"taxonomyType":115,"taxonomyTypeDesc":116},"01JBSEEDCAT000000000000009","前端开发",{"categoryNo":163,"categoryName":164,"taxonomyType":115,"taxonomyTypeDesc":116},{"categoryNo":211,"categoryName":212,"taxonomyType":213,"taxonomyTypeDesc":214},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,127,234],"design","web","guidelines","web design guidelines","web design","css","performance","components","web components","tasks","code","web performance","ui","platform design","html","responsive design","responsive","platform","implementing",{"skillNo":236,"name":237,"nameZh":6,"description":238,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":239,"categories":240,"keywords":243,"publishedAt":39},"01M6PT9A3JKRE3X34276F2FW5R","watchos-design-guidelines","Apple Human Interface Guidelines for Apple Watch. Use when building watchOS apps, complications, or workout features. Triggers on tasks involving Watch UI, Digital Crown, glanceable interfaces, or wrist-based interactions.","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fwatchos\u002FSKILL.md",[241,242],{"categoryNo":163,"categoryName":164,"taxonomyType":115,"taxonomyTypeDesc":116},{"categoryNo":211,"categoryName":212,"taxonomyType":213,"taxonomyTypeDesc":214},[216,218,244,225,228,22,245,246,151,233,247,127,152,248,154,249,250],"watchos design guidelines","workout","human","watch","interface","platform-design","features"]