[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M698XEWJYPD7AB62DAQ3RMMC":3,"skill-same:01M698XEWJYPD7AB62DAQ3RMMC":68},{"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":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":47,"repositoryHtmlUrl":48,"repositoryHomepageUrl":49,"ownerHtmlUrl":50,"ownerBlogUrl":51,"ownerDescription":52,"updatedAt":53,"install":54,"resources":67},"01M698XEWJYPD7AB62DAQ3RMMC","filament-desktop-testing",null,"Execute unit tests and performance benchmarks for Filament on desktop platforms. Use this skill to run and filter tests or benchmarks locally.","google\u002Ffilament","google","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1342004?v=4","01M698VYEFDM0VJBZDYYJ2T83S","Google","01M698W8SGYAMBEGYBK16J57R1",20735,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Ffilament\u002Fblob\u002Fmain\u002Fskills\u002Ffilament_desktop_testing\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"testing","filament desktop testing","desktop","desktop testing","performance","unit tests","run","execute","use","benchmarks","tests","performance benchmarks","filter","unit","for","2026-11-10 10:12:30",false,"---\nname: filament-desktop-testing\ndescription: >\n  Execute unit tests and performance benchmarks for Filament on desktop platforms.\n  Use this skill to run and filter tests or benchmarks locally.\n---\n\n# Filament Desktop Testing and Benchmarking\n\nThis skill covers running tests and performance benchmarks on desktop platforms.\n\n## 1. Executing a Unit Test\n\nRun compiled unit test binaries directly from their respective build output directories.\n\n### Example: Running utils unit tests (Debug)\n```bash\n.\u002Fout\u002Fcmake-debug\u002Flibs\u002Futils\u002Ftest_utils\n```\n\n### Example: Running filament unit tests (Debug)\n```bash\n.\u002Fout\u002Fcmake-debug\u002Ffilament\u002Ftest\u002Ftest_filament\n```\n\n### Filtering Tests\nUse standard Google Test (`gtest`) command-line parameters to run a subset of tests:\n```bash\n.\u002Fout\u002Fcmake-debug\u002Ffilament\u002Ftest\u002Ftest_filament --gtest_filter=Suite.TestName\n```\n\n---\n\n## 2. Executing a Benchmark\n\nRun compiled performance benchmarks from the release build output directories.\n\n### Example: Running filament benchmarks (Release)\n```bash\n.\u002Fout\u002Fcmake-release\u002Ffilament\u002Fbenchmark\u002Fbenchmark_filament\n```\n\n### Filtering Benchmarks\nUse standard Google Benchmark parameters to filter specific benchmarks:\n```bash\n.\u002Fout\u002Fcmake-release\u002Ffilament\u002Fbenchmark\u002Fbenchmark_filament --benchmark_filter=lutGeneration\n```\n","# Filament Desktop Testing and Benchmarking\n\nThis skill covers running tests and performance benchmarks on desktop platforms.\n\n## 1. Executing a Unit Test\n\nRun compiled unit test binaries directly from their respective build output directories.\n\n### Example: Running utils unit tests (Debug)\n```bash\n.\u002Fout\u002Fcmake-debug\u002Flibs\u002Futils\u002Ftest_utils\n```\n\n### Example: Running filament unit tests (Debug)\n```bash\n.\u002Fout\u002Fcmake-debug\u002Ffilament\u002Ftest\u002Ftest_filament\n```\n\n### Filtering Tests\nUse standard Google Test (`gtest`) command-line parameters to run a subset of tests:\n```bash\n.\u002Fout\u002Fcmake-debug\u002Ffilament\u002Ftest\u002Ftest_filament --gtest_filter=Suite.TestName\n```\n\n---\n\n## 2. Executing a Benchmark\n\nRun compiled performance benchmarks from the release build output directories.\n\n### Example: Running filament benchmarks (Release)\n```bash\n.\u002Fout\u002Fcmake-release\u002Ffilament\u002Fbenchmark\u002Fbenchmark_filament\n```\n\n### Filtering Benchmarks\nUse standard Google Benchmark parameters to filter specific benchmarks:\n```bash\n.\u002Fout\u002Fcmake-release\u002Ffilament\u002Fbenchmark\u002Fbenchmark_filament --benchmark_filter=lutGeneration\n```\n",{"name":5,"description":7},"main","fd9ec7ff9510df148011c5326bcb50d4bfb811ca","skills\u002Ffilament_desktop_testing",2302,"https:\u002F\u002Fgithub.com\u002Fgoogle\u002Ffilament","https:\u002F\u002Fgoogle.github.io\u002Ffilament\u002F","https:\u002F\u002Fgithub.com\u002Fgoogle","https:\u002F\u002Fopensource.google\u002F","Google ❤️ Open Source","2026-11-12 02:10:33",{"source":8,"skillName":5,"commands":55,"prompt":65,"zipAvailable":66},[56,59,62],{"tool":57,"command":58},"npx","npx skills add google\u002Ffilament --skill filament-desktop-testing",{"tool":60,"command":61},"bunx","bunx skills add google\u002Ffilament --skill filament-desktop-testing",{"tool":63,"command":64},"pnpm","pnpm dlx skills add google\u002Ffilament --skill filament-desktop-testing","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fgoogle\u002Ffilament\u002Fblob\u002Fmain\u002Fskills\u002Ffilament_desktop_testing\u002FSKILL.md",true,[],[69,90,105,121,140,156],{"skillNo":70,"name":71,"nameZh":6,"description":72,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":75,"publishedAt":39},"01M698XTTZP1MWPYW9EVV7DF2Q","filament-math","Enforce correct mathematical primitives and naming conventions in Filament code. Use this skill when performing coordinate transformations, vector math, or projection setups.","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Ffilament\u002Fblob\u002Fmain\u002Ftools\u002Fai\u002Fagents\u002Fskills\u002Ffilament_math\u002FSKILL.md",[],[76,77,78,79,80,81,82,32,83,84,85,86,87,88,89],"filament math","math","when","code","vector","correct","primitives","coordinate","enforce","conventions","Mathematical","naming","naming conventions","performing",{"skillNo":91,"name":92,"nameZh":6,"description":93,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":39},"01M698XRXR5Q463GQ03RDBD9FR","filament-lifetime","Enforce correct Filament object creation and destruction lifecycles. Use this skill when initializing rendering pipelines or allocating\u002Fdeallocating GPU buffers and entities.","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Ffilament\u002Fblob\u002Fmain\u002Ftools\u002Fai\u002Fagents\u002Fskills\u002Ffilament_lifetime\u002FSKILL.md",[],[97,32,98,99,84,100,81,101,102,103,78,104],"filament lifetime","rendering","creation","pipelines","gpu","destruction","object","entities",{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":39},"01M698XQ0E9RE6RDFYKS2PF1S1","cherry-pick","Cherry-pick a commit onto another branch and open the PR. Use when the user asks to cherry-pick or backport a commit or PR to a release branch.","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Ffilament\u002Fblob\u002Fmain\u002Fthird_party\u002Fdawn\u002Fthird_party\u002Fdirectx-shader-compiler\u002Fsrc\u002F.github\u002Fskills\u002Fcherry-pick\u002FSKILL.md",[],[112,113,114,115,78,116,32,117,118,119,120],"pick","cherry pick","branch","open","user","backport","commit","pr","release",{"skillNo":122,"name":123,"nameZh":6,"description":124,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":125,"categories":126,"keywords":127,"publishedAt":39},"01M698XN2P44Y956SJRD7CPB22","verification-protocols","Standard verification pipeline to execute after modifying C++ source or header files. Use this skill to format includes, build the engine, and run core tests.","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Ffilament\u002Fblob\u002Fmain\u002Fskills\u002Fverification_protocols\u002FSKILL.md",[],[128,129,130,131,30,132,133,134,31,32,135,136,137,34,138,139],"protocols","verification","verification protocols","core","pipeline","format","engine","files","build","c++","source","standard",{"skillNo":141,"name":142,"nameZh":6,"description":143,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":144,"categories":145,"keywords":146,"publishedAt":39},"01M698XK6J428QZM1WGVWW50JE","preprocessor-guard-hygiene","Enforce preprocessor guard rules and macro-dependent inclusion hygiene in C++. Use this skill when modifying conditional imports or preprocessor directives.","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Ffilament\u002Fblob\u002Fmain\u002Fskills\u002Fpreprocessor_guard_hygiene\u002FSKILL.md",[],[147,148,149,150,78,151,152,153,154,137,84,32,155],"hygiene","guard","preprocessor guard hygiene","Rules","directives","conditional","imports","inclusion","macro",{"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":162,"publishedAt":39},"01M698XHA1J01F915DKYHXZ18C","header-self-containment","Enforce strict header self-containment so that every header file compiles independently. Use this skill when creating or modifying C++ header files.","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Ffilament\u002Fblob\u002Fmain\u002Fskills\u002Fheader_self_containment\u002FSKILL.md",[],[163,164,165,78,137,84,135,32,166],"header self containment","containment","self","file"]