[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6BXMENSSVMGFX3VR4T71X14":3,"skill-same:01M6BXMENSSVMGFX3VR4T71X14":63},{"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":28,"linkOnly":29,"markdownContent":30,"markdownBody":31,"frontMatter":32,"refName":33,"commitSha":34,"skillDirectory":35,"forksCount":36,"repositoryHtmlUrl":37,"repositoryHomepageUrl":38,"ownerHtmlUrl":39,"ownerBlogUrl":40,"ownerDescription":41,"updatedAt":42,"install":43,"resources":56},"01M6BXMENSSVMGFX3VR4T71X14","2048-cross-platform-parity",null,"Coordinate gameplay, persistence, UX, or accessibility changes that must remain consistent across the web, iOS, and Android 2048 clients.","hoangsonww\u002F2048-Game","hoangsonww","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F124531104?v=4","01M6BXM9A0QGHQBDAT7AVC5SCQ","dav nguyxn","01M6BXM9DMJZ81EY08ZWXN2A5D",22,"MIT","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002F2048-cross-platform-parity\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27],"cross platform","2048","2048 cross platform parity","android","web","accessibility","ux","persistence","ios","2026-11-10 10:12:30",false,"---\nname: 2048-cross-platform-parity\ndescription: Coordinate gameplay, persistence, UX, or accessibility changes that must remain consistent across the web, iOS, and Android 2048 clients.\n---\n\n# 2048 cross-platform parity\n\nRead `AGENTS.md`, `docs\u002Farchitecture.md`, and the relevant platform skills. Write down the observable behavior before editing, then locate its engine\u002FViewModel, presentation, persistence, and tests in every affected client.\n\nPreserve the shared rules contract while using native presentation patterns: SVG and browser semantics on web, SF Symbols and SwiftUI accessibility on iOS, Material icons and Compose semantics on Android. Pixel identity is not required; equivalent capability, hierarchy, and feedback are.\n\nServer-driven surfaces are a parity surface of their own. A node type must exist on both native clients before a payload uses it, the two bundled payloads stay byte-identical, and every call site keeps its native fallback. Surfaces describe content only — rules, styling, and behaviour stay in code.\n\nAdd parallel deterministic cases for rule changes and platform-appropriate UI coverage for flow changes. Run `make check` and each affected `make test-*` target. Report any unavailable toolchain or intentional divergence explicitly instead of treating one passing client as proof for all three.\n","# 2048 cross-platform parity\n\nRead `AGENTS.md`, `docs\u002Farchitecture.md`, and the relevant platform skills. Write down the observable behavior before editing, then locate its engine\u002FViewModel, presentation, persistence, and tests in every affected client.\n\nPreserve the shared rules contract while using native presentation patterns: SVG and browser semantics on web, SF Symbols and SwiftUI accessibility on iOS, Material icons and Compose semantics on Android. Pixel identity is not required; equivalent capability, hierarchy, and feedback are.\n\nServer-driven surfaces are a parity surface of their own. A node type must exist on both native clients before a payload uses it, the two bundled payloads stay byte-identical, and every call site keeps its native fallback. Surfaces describe content only — rules, styling, and behaviour stay in code.\n\nAdd parallel deterministic cases for rule changes and platform-appropriate UI coverage for flow changes. Run `make check` and each affected `make test-*` target. Report any unavailable toolchain or intentional divergence explicitly instead of treating one passing client as proof for all three.\n",{"name":5,"description":7},"main","cc419901510ce53f8ac8ee3160e4a436a773c6de",".agents\u002Fskills\u002F2048-cross-platform-parity",14,"https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game","https:\u002F\u002Fthe-2048.netlify.app","https:\u002F\u002Fgithub.com\u002Fhoangsonww","sonnguyenhoang.com","swe @ tiktok & unc-ch graduate","2026-09-28 03:40:00",{"source":8,"skillName":5,"commands":44,"prompt":54,"zipAvailable":55},[45,48,51],{"tool":46,"command":47},"npx","npx skills add hoangsonww\u002F2048-Game --skill 2048-cross-platform-parity",{"tool":49,"command":50},"bunx","bunx skills add hoangsonww\u002F2048-Game --skill 2048-cross-platform-parity",{"tool":52,"command":53},"pnpm","pnpm dlx skills add hoangsonww\u002F2048-Game --skill 2048-cross-platform-parity","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002F2048-cross-platform-parity\u002FSKILL.md",true,[57],{"path":58,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":61,"sourceHtmlUrl":62},"agents\u002Fopenai.yaml","REFERENCE","参考文档",266,"https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002F2048-cross-platform-parity\u002Fagents\u002Fopenai.yaml",[64,81,92,101,107,117],{"skillNo":65,"name":66,"nameZh":6,"description":67,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":68,"categories":69,"keywords":70,"publishedAt":28},"01M6BXN2EQG3T79V5M5QHXEM5A","2048-web-development","Implement or review the 2048 browser client, responsive UI, accessibility, PWA metadata, screenshots, or SEO.","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002F2048-web-development\u002FSKILL.md",[],[23,71,72,20,73,74,75,76,24,77,78,79,80],"development","web development","2048 web development","screenshots","review","implement","browser","metadata","ui","seo",{"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":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":28},"01M6BXMZZ4AZZM96QGQ7J4B4TZ","2048-release-readiness","Verify tests, builds, screenshots, metadata, documentation, and release readiness for all 2048 clients.","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002F2048-release-readiness\u002FSKILL.md",[],[88,20,89,78,90,74,91],"release","2048 release readiness","verify","documentation",{"skillNo":93,"name":94,"nameZh":6,"description":95,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":96,"categories":97,"keywords":98,"publishedAt":28},"01M6BXMXJACB2F5PTQBXY4DBJB","2048-ios-development","Implement or review the SwiftUI 2048 client, ViewModel, persistence, accessibility, tests, or simulator flows.","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002F2048-ios-development\u002FSKILL.md",[],[99,71,27,20,75,76,24,26,100],"2048 ios development","swiftui",{"skillNo":102,"name":5,"nameZh":6,"description":103,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":104,"categories":105,"keywords":106,"publishedAt":28},"01M6BXMTZ4P5CSWTHCD91XXG8X","Coordinate behavior and UX changes across the web, iOS, and Android 2048 clients.","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002F2048-cross-platform-parity\u002FSKILL.md",[],[19,20,21,22,23,25,27],{"skillNo":108,"name":109,"nameZh":6,"description":110,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":111,"categories":112,"keywords":113,"publishedAt":28},"01M6BXMRQBDQQF17ENG2AMSQ00","2048-android-development","Implement or review the Compose 2048 client, ViewModel, persistence, Gradle build, or emulator flows.","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002F2048-android-development\u002FSKILL.md",[],[20,114,115,71,22,26,76,75,116],"android development","2048 android development","gradle build",{"skillNo":118,"name":66,"nameZh":6,"description":119,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":120,"categories":121,"keywords":122,"publishedAt":28},"01M6BXMP72XE29HMXDXKBEK2A3","Implement or review the 2048 browser client, including its rules engine, responsive UI, accessibility, PWA metadata, screenshots, or SEO.","https:\u002F\u002Fgithub.com\u002Fhoangsonww\u002F2048-Game\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002F2048-web-development\u002FSKILL.md",[],[23,72,73,20,71,24,78,77,80,76,75,74,79,123],"engine"]