[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6ES02KBESYC73YNXBE3HS3W":3,"skill-same:01M6ES02KBESYC73YNXBE3HS3W":226},{"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":28,"publishedAt":53,"linkOnly":54,"markdownContent":55,"markdownBody":56,"frontMatter":57,"refName":60,"commitSha":61,"skillDirectory":62,"forksCount":63,"repositoryHtmlUrl":64,"repositoryHomepageUrl":65,"ownerHtmlUrl":66,"ownerBlogUrl":67,"ownerDescription":68,"updatedAt":69,"install":70,"resources":83},"01M6ES02KBESYC73YNXBE3HS3W","design-ui-from-constraints",null,"Turn product goals and explicit constraints into a coherent UI direction and variant plan. Use when a user needs layout, hierarchy, typography, color, interaction, responsive, and accessibility decisions before implementation or visual generation.","TimothyMeadows\u002FHephaera","TimothyMeadows","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F4072037?v=4","01M6ERVE3WV9X55S1NT4W5FDGA","Timothy D Meadows II","01M6ERVE8H7CBATH6KYFDKG5CJ",4,"MIT","https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera\u002Fblob\u002Fmain\u002Fskills\u002Fdesign-ui-from-constraints\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],"design","ui","constraints","design ui from constraints","design ui","when","hierarchy","variant","color","direction","interaction","layout","responsive","generation","visual","coherent","goals","implementation","typography","use","decisions","plan","product","accessibility","2026-11-10 10:12:30",false,"---\nname: design-ui-from-constraints\ndescription: Turn product goals and explicit constraints into a coherent UI direction and variant plan. Use when a user needs layout, hierarchy, typography, color, interaction, responsive, and accessibility decisions before implementation or visual generation.\nengines: [AGNOSTIC]\n---\n\n# Design Ui From Constraints\n\n## When to use\n\n- A UI request is underspecified or driven only by vague aesthetic language.\n- Several controlled variants are needed without random rerolls.\n- A frontend handoff needs measurable visual acceptance criteria.\n\n## Workflow\n\n1. Define the user goal, audience, primary task, platform, content density, brand constraints, and implementation limits.\n2. Specify format, layout hierarchy, typography roles, color roles, imagery, interaction, motion, and accessibility.\n3. Create a constraints card listing what must remain fixed and what may vary.\n4. Produce controlled variants that change one or two major dimensions at a time.\n5. Select a direction using task clarity, originality, feasibility, responsive behavior, and accessibility.\n6. Translate the choice into implementation and validation criteria.\n\nFor game interfaces, compose `build-game-ui` to specify safe areas, localization and text-scale variations, screen\u002Fmodal input ownership, focus restoration, binding-aware prompts, and HUD lifecycle. Resolve the selected engine's UI skill with `resolve-skill.sh` before implementation. Browser examples apply only to an actual browser surface; a native game interface requires its own runtime evidence.\n\n## Output\n\n- A design brief and constraints card.\n- A small variant matrix with meaningful tradeoffs.\n- A selected direction with component, responsive, motion, and acceptance guidance.\n\n## Guardrails\n\n- Do not use random variation as a substitute for a design decision.\n- Do not rely on generated typography for final readable text.\n- Do not choose visual novelty over task clarity or accessibility.\n","# Design Ui From Constraints\n\n## When to use\n\n- A UI request is underspecified or driven only by vague aesthetic language.\n- Several controlled variants are needed without random rerolls.\n- A frontend handoff needs measurable visual acceptance criteria.\n\n## Workflow\n\n1. Define the user goal, audience, primary task, platform, content density, brand constraints, and implementation limits.\n2. Specify format, layout hierarchy, typography roles, color roles, imagery, interaction, motion, and accessibility.\n3. Create a constraints card listing what must remain fixed and what may vary.\n4. Produce controlled variants that change one or two major dimensions at a time.\n5. Select a direction using task clarity, originality, feasibility, responsive behavior, and accessibility.\n6. Translate the choice into implementation and validation criteria.\n\nFor game interfaces, compose `build-game-ui` to specify safe areas, localization and text-scale variations, screen\u002Fmodal input ownership, focus restoration, binding-aware prompts, and HUD lifecycle. Resolve the selected engine's UI skill with `resolve-skill.sh` before implementation. Browser examples apply only to an actual browser surface; a native game interface requires its own runtime evidence.\n\n## Output\n\n- A design brief and constraints card.\n- A small variant matrix with meaningful tradeoffs.\n- A selected direction with component, responsive, motion, and acceptance guidance.\n\n## Guardrails\n\n- Do not use random variation as a substitute for a design decision.\n- Do not rely on generated typography for final readable text.\n- Do not choose visual novelty over task clarity or accessibility.\n",{"name":5,"engines":58,"description":7},[59],"AGNOSTIC","main","f819d9a9c7d641d8c7e14b59560a4fd358ec4630","skills\u002Fdesign-ui-from-constraints",3,"https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera","https:\u002F\u002Fhephaera.com\u002F","https:\u002F\u002Fgithub.com\u002FTimothyMeadows","http:\u002F\u002Fwww.timothymeadows.com","Software & AI Systems Architect | Distributed Systems & Agentic Platforms","2026-11-08 22:51:22",{"source":8,"skillName":5,"commands":71,"prompt":81,"zipAvailable":82},[72,75,78],{"tool":73,"command":74},"npx","npx skills add TimothyMeadows\u002FHephaera --skill design-ui-from-constraints",{"tool":76,"command":77},"bunx","bunx skills add TimothyMeadows\u002FHephaera --skill design-ui-from-constraints",{"tool":79,"command":80},"pnpm","pnpm dlx skills add TimothyMeadows\u002FHephaera --skill design-ui-from-constraints","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera\u002Fblob\u002Fmain\u002Fskills\u002Fdesign-ui-from-constraints\u002FSKILL.md",true,[84,90,94,98,102,106,110,114,118,122,126,130,134,138,142,146,150,154,158,162,166,170,174,178,182,186,190,194,198,202,206,210,214,218,222],{"path":85,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":88,"sourceHtmlUrl":89},"adapters.md","REFERENCE","参考文档",919,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fadapters.md",{"path":91,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":92,"sourceHtmlUrl":93},"agents\u002Fopenai.yaml",251,"https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera\u002Fblob\u002Fmain\u002Fskills\u002Fdesign-ui-from-constraints\u002Fagents\u002Fopenai.yaml",{"path":95,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":96,"sourceHtmlUrl":97},"api.md",896,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fapi.md",{"path":99,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":100,"sourceHtmlUrl":101},"check.md",16950,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fcheck.md",{"path":103,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":104,"sourceHtmlUrl":105},"classify.md",1024,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fclassify.md",{"path":107,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":108,"sourceHtmlUrl":109},"context.md",7022,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fcontext.md",{"path":111,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":112,"sourceHtmlUrl":113},"contract-lint.md",3659,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fcontract-lint.md",{"path":115,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":116,"sourceHtmlUrl":117},"crash-evidence.md",2137,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fcrash-evidence.md",{"path":119,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":120,"sourceHtmlUrl":121},"dashboard.md",6167,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fdashboard.md",{"path":123,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":124,"sourceHtmlUrl":125},"docs.md",2516,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fdocs.md",{"path":127,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":128,"sourceHtmlUrl":129},"doctor.md",8072,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fdoctor.md",{"path":131,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":132,"sourceHtmlUrl":133},"evidence.md",1863,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fevidence.md",{"path":135,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":136,"sourceHtmlUrl":137},"explain.md",10328,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fexplain.md",{"path":139,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":140,"sourceHtmlUrl":141},"flow.md",971,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fflow.md",{"path":143,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":144,"sourceHtmlUrl":145},"handoff.md",2077,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fhandoff.md",{"path":147,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":148,"sourceHtmlUrl":149},"help.md",3629,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fhelp.md",{"path":151,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":152,"sourceHtmlUrl":153},"impact.md",863,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fimpact.md",{"path":155,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":156,"sourceHtmlUrl":157},"index.md",9256,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Findex.md",{"path":159,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":160,"sourceHtmlUrl":161},"init.md",14963,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Finit.md",{"path":163,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":164,"sourceHtmlUrl":165},"line-endings.md",1715,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fline-endings.md",{"path":167,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":168,"sourceHtmlUrl":169},"map.md",4999,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fmap.md",{"path":171,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":172,"sourceHtmlUrl":173},"next.md",1921,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fnext.md",{"path":175,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":176,"sourceHtmlUrl":177},"onboard.md",2261,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fonboard.md",{"path":179,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":180,"sourceHtmlUrl":181},"quality.md",1016,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fquality.md",{"path":183,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":184,"sourceHtmlUrl":185},"run.md",7366,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Frun.md",{"path":187,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":188,"sourceHtmlUrl":189},"script-pack.md",1063,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fscript-pack.md",{"path":191,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":192,"sourceHtmlUrl":193},"search.md",6146,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fsearch.md",{"path":195,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":196,"sourceHtmlUrl":197},"status.md",3172,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fstatus.md",{"path":199,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":200,"sourceHtmlUrl":201},"tech.md",985,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Ftech.md",{"path":203,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":204,"sourceHtmlUrl":205},"update.md",10608,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fupdate.md",{"path":207,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":208,"sourceHtmlUrl":209},"upgrade.md",1330,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fupgrade.md",{"path":211,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":212,"sourceHtmlUrl":213},"verify.md",8778,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fverify.md",{"path":215,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":216,"sourceHtmlUrl":217},"version-sources.md",1794,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fversion-sources.md",{"path":219,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":220,"sourceHtmlUrl":221},"version.md",1997,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fversion.md",{"path":223,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":224,"sourceHtmlUrl":225},"workspace.md",2471,"https:\u002F\u002Fgithub.com\u002F0disoft\u002Fmustflow\u002Fblob\u002Fmain\u002Fdocs-site\u002Fsrc\u002Fcontent\u002Fdocs\u002Fhi\u002Fcommands\u002Fworkspace.md",[227,252,274,292,311,330],{"skillNo":228,"name":229,"nameZh":6,"description":230,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":231,"categories":232,"keywords":233,"publishedAt":53},"01M70V3EJ7JDFDFJ3XTKRGKRBP","verify-web3-game-lifecycle","Verify a game's selected Web3 asset, wallet, ownership and trading lifecycle with contract properties, canonical recovery, actual target evidence and separate release readiness.","https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera\u002Fblob\u002Fmain\u002Fskills\u002Fverify-web3-game-lifecycle\u002FSKILL.md",[],[234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],"game","verify","lifecycle","verify web3 game lifecycle","web3","with","evidence","readiness","release readiness","Wallet","recovery","properties","release","contract","canonical","asset","ownership","trading",{"skillNo":253,"name":254,"nameZh":6,"description":255,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":256,"categories":257,"keywords":258,"publishedAt":53},"01M70V3CS767H4M1FP4C2A7K51","verify-onchain-game-assets","Verify exact on-chain game collection ownership and quantities at canonical blocks, reconcile inventory events, and design honest match admission. Use for ERC721\u002FERC1155 inventory, reorg recovery, reservations, or transfer-during-match rules.","https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera\u002Fblob\u002Fmain\u002Fskills\u002Fverify-onchain-game-assets\u002FSKILL.md",[],[234,259,235,260,261,262,263,264,265,266,29,267,48,268,269,270,244,271,272,273],"onchain","game assets","assets","verify onchain game assets","chain","for","inventory","reservations","erc721","Rules","collection","on-chain","at","blocks","reconcile",{"skillNo":275,"name":276,"nameZh":6,"description":277,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":278,"categories":279,"keywords":280,"publishedAt":53},"01M70TZYWE48MTM8CGGDMWSJDN","plan-web3-game-assets","Define an opt-in Ethereum, Base or Immutable game-asset lifecycle, including token identity, supply, rights, custody, game eligibility and chain-specific dependencies.","https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera\u002Fblob\u002Fmain\u002Fskills\u002Fplan-web3-game-assets\u002FSKILL.md",[],[234,50,260,261,281,238,282,283,284,285,263,286,236,287,288,289,290,249,291],"plan web3 game assets","supply","opt","immutable","rights","dependencies","token","base","define","ethereum","identity",{"skillNo":293,"name":294,"nameZh":6,"description":295,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":296,"categories":297,"keywords":298,"publishedAt":53},"01M70TYYZ7SPZ7PE6A6GQ5RXQ9","integrate-game-wallets","Integrate explicit player-wallet connection, scoped SIWE authentication, authority invalidation and reviewed target-specific handoff without application-held player keys.","https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera\u002Fblob\u002Fmain\u002Fskills\u002Fintegrate-game-wallets\u002FSKILL.md",[],[234,299,300,301,302,243,303,304,305,306,307,308,309,310],"integrate game wallets","integrate","wallets","siwe","keys","authentication","player","scoped","connection","authority","application","handoff",{"skillNo":312,"name":313,"nameZh":6,"description":314,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":315,"categories":316,"keywords":317,"publishedAt":53},"01M70TYX656BP1R0KWMYRX437R","integrate-game-asset-trading","Integrate explicitly selected game asset settlement with exact unsigned intents, scoped approvals, idempotent operations and canonical receipt reconciliation. Use for NFT listing, buying, cancellation, retries or marketplace integration.","https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera\u002Fblob\u002Fmain\u002Fskills\u002Fintegrate-game-asset-trading\u002FSKILL.md",[],[234,318,300,249,251,319,320,264,306,321,48,322,323,239,324,325,326,327,328,329],"integrate game asset trading","reconciliation","idempotent operations","retries","listing","idempotent","nft","approvals","operations","marketplace","integration","intents",{"skillNo":331,"name":332,"nameZh":6,"description":333,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":334,"categories":335,"keywords":336,"publishedAt":53},"01M70TWV3J83RAJMA7BC62CPAH","build-evm-game-contracts","Author and verify host-owned EVM game collections and explicit mint, burn, craft or admin rules with pinned Solidity tooling. Use for contract source and deployment candidates; deployment and player signing require separate authorization.","https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera\u002Fblob\u002Fmain\u002Fskills\u002Fbuild-evm-game-contracts\u002FSKILL.md",[],[234,337,338,339,340,264,341,305,342,247,343,48,268,344,239,345,346,235,347,348],"evm","build","build evm game contracts","contracts","deployment","collections","host","author","admin","signing","mint","tooling"]