[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6ESA1NFVQ08MF91EADG8GYN":3,"skill-same:01M6ESA1NFVQ08MF91EADG8GYN":84},{"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":23,"publishedAt":37,"linkOnly":38,"markdownContent":39,"markdownBody":40,"frontMatter":41,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":47,"repositoryHtmlUrl":48,"repositoryHomepageUrl":49,"ownerHtmlUrl":50,"ownerBlogUrl":51,"ownerDescription":52,"updatedAt":53,"install":54,"resources":67},"01M6ESA1NFVQ08MF91EADG8GYN","unity-localize-content",null,"Implement Unity localized strings, assets and locale changes with stable table identities and owned asynchronous lifetimes.","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\u002Funity-localize-content\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[24,25,26,27,28,29,30,31,32,33,34,35,36],"content","localize","unity","unity localize content","implement","asynchronous","table","assets","lifetimes","with","strings","locale","changes","2026-11-10 10:12:30",false,"---\nname: unity-localize-content\ndescription: Implement Unity localized strings, assets and locale changes with stable table identities and owned asynchronous lifetimes.\nengines: [UNITY]\n---\n\n# Unity Localize Content\n\n## When to use\n\nLocalize an existing Unity game's text, fonts, images or audio, including changing locale during loading. This skill owns content resolution; the selected UI workflow owns layout and focus.\n\n## Activation and inputs\n\nRun `commands\u002Fresolve-engine.sh` and `commands\u002Fresolve-skill.sh unity-localize-content`; require effective `UNITY` compatibility before production edits or tool launches. Honor task override evidence and its output scope. A skill request does not select an engine.\n\nInspect the actual Editor, Localization and Addressables versions, configured locales, table collections, UI stack, fallback policy and target platforms. Use installed package documentation; do not add packages, locales or remote providers implicitly. Record observations and evidence under the resolved `.hephaera\u002F.cache\u002F` task directory.\n\n## Workflow\n\n1. Inventory existing content and bindings before changes. Preserve Canvas\u002Fscreen hierarchy, unrelated listeners, shared table GUIDs and entry IDs. Add or repair the smallest owned binding; do not rebuild the scene to localize one label.\n2. Define locale startup and persistence, required coverage and missing-key behavior. Await initialization before resolving content; handle unavailable settings, locale and tables as explicit errors or the project's declared fallback.\n3. Use stable table\u002Fentry references. Separate translated text from gameplay keys; retain stable IDs through imports and CSV round trips. Review placeholders, Smart String arguments, plurals and escaped markup with translators.\n4. Give each displayed binding an owner and request generation. A late result from an older locale, closed screen or replaced asset must not overwrite current content. Detach only owned callbacks and release only owned resource references on disable, cancellation or replacement.\n5. Review text expansion, shaping, bidirectionality and font\u002Ffallback coverage through the chosen TMP\u002FTextCore stack. Localize accessible labels, input prompts and media alternatives as well as visible captions.\n6. Verify offline and target-player behavior, including cold loads and rapid locale changes. Do not use blocking localization calls on web targets or assume an Editor cache proves build inclusion.\n\nRead [locale and resource ownership](references\u002Flocale-lifecycle.md) for async bindings, asset handles, import identity and test design.\n\n## Output and verification\n\nDeliver version-qualified bindings and tables, locale\u002Ffallback and handle-ownership decisions, coverage findings and a target layout matrix. Test missing keys, format errors, plural categories, A→B→A during loading, screen teardown, unrelated listener survival, font misses and remote\u002Foffline failures.\n\nRecord expected\u002Fobserved results, environment and evidence; mark unavailable player\u002Fdevice checks blocked or not run. Successful string lookup cannot certify translation quality, font shaping or accessible presentation. Cloud translation, external exports and service activation require their own authorization.\n","# Unity Localize Content\n\n## When to use\n\nLocalize an existing Unity game's text, fonts, images or audio, including changing locale during loading. This skill owns content resolution; the selected UI workflow owns layout and focus.\n\n## Activation and inputs\n\nRun `commands\u002Fresolve-engine.sh` and `commands\u002Fresolve-skill.sh unity-localize-content`; require effective `UNITY` compatibility before production edits or tool launches. Honor task override evidence and its output scope. A skill request does not select an engine.\n\nInspect the actual Editor, Localization and Addressables versions, configured locales, table collections, UI stack, fallback policy and target platforms. Use installed package documentation; do not add packages, locales or remote providers implicitly. Record observations and evidence under the resolved `.hephaera\u002F.cache\u002F` task directory.\n\n## Workflow\n\n1. Inventory existing content and bindings before changes. Preserve Canvas\u002Fscreen hierarchy, unrelated listeners, shared table GUIDs and entry IDs. Add or repair the smallest owned binding; do not rebuild the scene to localize one label.\n2. Define locale startup and persistence, required coverage and missing-key behavior. Await initialization before resolving content; handle unavailable settings, locale and tables as explicit errors or the project's declared fallback.\n3. Use stable table\u002Fentry references. Separate translated text from gameplay keys; retain stable IDs through imports and CSV round trips. Review placeholders, Smart String arguments, plurals and escaped markup with translators.\n4. Give each displayed binding an owner and request generation. A late result from an older locale, closed screen or replaced asset must not overwrite current content. Detach only owned callbacks and release only owned resource references on disable, cancellation or replacement.\n5. Review text expansion, shaping, bidirectionality and font\u002Ffallback coverage through the chosen TMP\u002FTextCore stack. Localize accessible labels, input prompts and media alternatives as well as visible captions.\n6. Verify offline and target-player behavior, including cold loads and rapid locale changes. Do not use blocking localization calls on web targets or assume an Editor cache proves build inclusion.\n\nRead [locale and resource ownership](references\u002Flocale-lifecycle.md) for async bindings, asset handles, import identity and test design.\n\n## Output and verification\n\nDeliver version-qualified bindings and tables, locale\u002Ffallback and handle-ownership decisions, coverage findings and a target layout matrix. Test missing keys, format errors, plural categories, A→B→A during loading, screen teardown, unrelated listener survival, font misses and remote\u002Foffline failures.\n\nRecord expected\u002Fobserved results, environment and evidence; mark unavailable player\u002Fdevice checks blocked or not run. Successful string lookup cannot certify translation quality, font shaping or accessible presentation. Cloud translation, external exports and service activation require their own authorization.\n",{"name":5,"engines":42,"description":7},[43],"UNITY","main","f819d9a9c7d641d8c7e14b59560a4fd358ec4630","skills\u002Funity-localize-content",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":55,"prompt":65,"zipAvailable":66},[56,59,62],{"tool":57,"command":58},"npx","npx skills add TimothyMeadows\u002FHephaera --skill unity-localize-content",{"tool":60,"command":61},"bunx","bunx skills add TimothyMeadows\u002FHephaera --skill unity-localize-content",{"tool":63,"command":64},"pnpm","pnpm dlx skills add TimothyMeadows\u002FHephaera --skill unity-localize-content","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera\u002Fblob\u002Fmain\u002Fskills\u002Funity-localize-content\u002FSKILL.md",true,[68,74,80],{"path":69,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":72,"sourceHtmlUrl":73},"agents\u002Fopenai.yaml","REFERENCE","参考文档",296,"https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera\u002Fblob\u002Fmain\u002Fskills\u002Funity-localize-content\u002Fagents\u002Fopenai.yaml",{"path":75,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":78,"sourceHtmlUrl":79},"customize.toml","OTHER","其他",1731,"https:\u002F\u002Fgithub.com\u002Fdeveloperworks\u002Frust-supervisor\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fbmad-validate-prd\u002Fcustomize.toml",{"path":81,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":82,"sourceHtmlUrl":83},"references\u002Flocale-lifecycle.md",4118,"https:\u002F\u002Fgithub.com\u002FTimothyMeadows\u002FHephaera\u002Fblob\u002Fmain\u002Fskills\u002Funity-localize-content\u002Freferences\u002Flocale-lifecycle.md",[85,109,132,151,170,189],{"skillNo":86,"name":87,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":89,"categories":90,"keywords":91,"publishedAt":37},"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",[],[92,93,94,95,96,33,97,98,99,100,101,102,103,104,105,106,107,108],"game","verify","lifecycle","verify web3 game lifecycle","web3","evidence","readiness","release readiness","Wallet","recovery","properties","release","contract","canonical","asset","ownership","trading",{"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":15,"licenseFileUrl":6,"sourceHtmlUrl":113,"categories":114,"keywords":115,"publishedAt":37},"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",[],[92,116,93,117,31,118,119,120,121,122,123,124,125,126,127,128,101,129,130,131],"onchain","game assets","verify onchain game assets","chain","for","inventory","reservations","design","erc721","use","Rules","collection","on-chain","at","blocks","reconcile",{"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":15,"licenseFileUrl":6,"sourceHtmlUrl":136,"categories":137,"keywords":138,"publishedAt":37},"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",[],[92,139,117,31,140,96,141,142,143,144,119,145,94,146,147,148,149,106,150],"plan","plan web3 game assets","supply","opt","immutable","rights","dependencies","token","base","define","ethereum","identity",{"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":15,"licenseFileUrl":6,"sourceHtmlUrl":155,"categories":156,"keywords":157,"publishedAt":37},"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",[],[92,158,159,160,161,100,162,163,164,165,166,167,168,169],"integrate game wallets","integrate","wallets","siwe","keys","authentication","player","scoped","connection","authority","application","handoff",{"skillNo":171,"name":172,"nameZh":6,"description":173,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":174,"categories":175,"keywords":176,"publishedAt":37},"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",[],[92,177,159,106,108,178,179,120,165,180,125,181,182,33,183,184,185,186,187,188],"integrate game asset trading","reconciliation","idempotent operations","retries","listing","idempotent","nft","approvals","operations","marketplace","integration","intents",{"skillNo":190,"name":191,"nameZh":6,"description":192,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":193,"categories":194,"keywords":195,"publishedAt":37},"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",[],[92,196,197,198,199,120,200,164,201,104,202,125,126,203,33,204,205,93,206,207],"evm","build","build evm game contracts","contracts","deployment","collections","host","author","admin","signing","mint","tooling"]