[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M716GYE9EVVNE9F7FCWTR6XM":3,"skill-same:01M716GYE9EVVNE9F7FCWTR6XM":65},{"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":45,"commitSha":46,"skillDirectory":47,"forksCount":14,"repositoryHtmlUrl":48,"repositoryHomepageUrl":6,"ownerHtmlUrl":49,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":50,"install":51,"resources":64},"01M716GYE9EVVNE9F7FCWTR6XM","makepad-platform",null,"CRITICAL: Use for Makepad cross-platform support. Triggers on:\nmakepad platform, makepad os, makepad macos, makepad windows, makepad linux,\nmakepad android, makepad ios, makepad web, makepad wasm, makepad metal,\nmakepad d3d11, makepad opengl, makepad webgl, OsType, CxOs,\nmakepad 跨平台, makepad 平台支持","sapsapshen\u002Fai-memory-router","sapsapshen","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F20347959?v=4","01M6XDQEF1DP50DKF37H81J3J5","shenmian","01M6XDQEJPE41Y3DT2763X8ZJN",0,"MIT","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fcursor\u002Fmakepad-platform\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"platform","makepad platform","use","unknown","for","critical","os","triggers","cross-platform","community","android","ios","windows","web","support","linux","webgl","wasm","opengl","metal","2026-11-10 10:12:30",false,"---\nname: makepad-platform\ndescription: |\n  CRITICAL: Use for Makepad cross-platform support. Triggers on:\n  makepad platform, makepad os, makepad macos, makepad windows, makepad linux,\n  makepad android, makepad ios, makepad web, makepad wasm, makepad metal,\n  makepad d3d11, makepad opengl, makepad webgl, OsType, CxOs,\n  makepad 跨平台, makepad 平台支持\nrisk: unknown\nsource: community\n---\n\n# Makepad Platform Skill\n\n> **Version:** makepad-widgets (dev branch) | **Last Updated:** 2026-01-19\n>\n> Check for updates: https:\u002F\u002Fcrates.io\u002Fcrates\u002Fmakepad-widgets\n\nYou are an expert at Makepad cross-platform development. Help users by:\n- **Understanding platforms**: Explain supported platforms and backends\n- **Platform-specific code**: Help with conditional compilation and platform APIs\n\n## Documentation\n\nRefer to the local files for detailed documentation:\n- `.\u002Freferences\u002Fplatform-support.md` - Platform details and OsType\n\n## IMPORTANT: Documentation Completeness Check\n\n**Before answering questions, Claude MUST:**\n\n1. Read the relevant reference file(s) listed above\n2. If file read fails or file is empty:\n   - Inform user: \"本地文档不完整，建议运行 `\u002Fsync-crate-skills makepad --force` 更新文档\"\n   - Still answer based on SKILL.md patterns + built-in knowledge\n3. If reference file exists, incorporate its content into the answer\n\n## Supported Platforms\n\n| Platform | Graphics Backend | OS Module |\n|----------|------------------|-----------|\n| macOS | Metal | `apple\u002Fmetal_*.rs`, `apple\u002Fcocoa_*.rs` |\n| iOS | Metal | `apple\u002Fmetal_*.rs`, `apple\u002Fios_*.rs` |\n| Windows | D3D11 | `mswindows\u002Fd3d11_*.rs`, `mswindows\u002Fwin32_*.rs` |\n| Linux | OpenGL | `linux\u002Fopengl_*.rs`, `linux\u002Fx11*.rs`, `linux\u002Fwayland*.rs` |\n| Web | WebGL2 | `web\u002F*.rs`, `web_browser\u002F*.rs` |\n| Android | OpenGL ES | `android\u002F*.rs` |\n| OpenHarmony | OHOS | `open_harmony\u002F*.rs` |\n| OpenXR | VR\u002FAR | `open_xr\u002F*.rs` |\n\n## OsType Enum\n\n```rust\npub enum OsType {\n    Unknown,\n    Windows,\n    Macos,\n    Linux { custom_window_chrome: bool },\n    Ios,\n    Android(AndroidParams),\n    OpenHarmony,\n    Web(WebParams),\n    OpenXR,\n}\n\n\u002F\u002F Check platform in code\nfn handle_event(&mut self, cx: &mut Cx, event: &Event) {\n    match cx.os_type() {\n        OsType::Macos => { \u002F* macOS-specific *\u002F }\n        OsType::Windows => { \u002F* Windows-specific *\u002F }\n        OsType::Web(_) => { \u002F* Web-specific *\u002F }\n        _ => {}\n    }\n}\n```\n\n## Platform Detection\n\n```rust\n\u002F\u002F In Cx\nimpl Cx {\n    pub fn os_type(&self) -> OsType;\n    pub fn gpu_info(&self) -> &GpuInfo;\n    pub fn xr_capabilities(&self) -> &XrCapabilities;\n    pub fn cpu_cores(&self) -> usize;\n}\n```\n\n## Conditional Compilation\n\n```rust\n\u002F\u002F Compile-time platform detection\n#[cfg(target_os = \"macos\")]\nfn macos_only() { }\n\n#[cfg(target_os = \"windows\")]\nfn windows_only() { }\n\n#[cfg(target_os = \"linux\")]\nfn linux_only() { }\n\n#[cfg(target_arch = \"wasm32\")]\nfn web_only() { }\n\n#[cfg(target_os = \"android\")]\nfn android_only() { }\n\n#[cfg(target_os = \"ios\")]\nfn ios_only() { }\n```\n\n## Platform-Specific Features\n\n### Desktop (macOS\u002FWindows\u002FLinux)\n- Window management (resize, minimize, maximize)\n- File dialogs\n- System menu\n- Drag and drop\n- Multiple monitors\n\n### Mobile (iOS\u002FAndroid)\n- Touch input\n- Virtual keyboard\n- Screen orientation\n- App lifecycle (foreground\u002Fbackground)\n\n### Web (WebGL2)\n- DOM integration\n- Browser events\n- Local storage\n- HTTP requests\n\n## Entry Point\n\n```rust\n\u002F\u002F App entry macro\napp_main!(App);\n\npub struct App {\n    ui: WidgetRef,\n}\n\nimpl LiveRegister for App {\n    fn live_register(cx: &mut Cx) {\n        \u002F\u002F Register components\n        crate::makepad_widgets::live_design(cx);\n    }\n}\n\nimpl AppMain for App {\n    fn handle_event(&mut self, cx: &mut Cx, event: &Event) {\n        \u002F\u002F Handle app events\n        self.ui.handle_event(cx, event, &mut Scope::empty());\n    }\n}\n```\n\n## When Answering Questions\n\n1. Makepad compiles to native code for each platform (no runtime interpreter)\n2. Shaders are compiled at build time for each graphics backend\n3. Platform-specific code is in `platform\u002Fsrc\u002Fos\u002F` directory\n4. Use `cx.os_type()` for runtime platform detection\n5. Use `#[cfg(target_os = \"...\")]` for compile-time platform detection\n","# Makepad Platform Skill\n\n> **Version:** makepad-widgets (dev branch) | **Last Updated:** 2026-01-19\n>\n> Check for updates: https:\u002F\u002Fcrates.io\u002Fcrates\u002Fmakepad-widgets\n\nYou are an expert at Makepad cross-platform development. Help users by:\n- **Understanding platforms**: Explain supported platforms and backends\n- **Platform-specific code**: Help with conditional compilation and platform APIs\n\n## Documentation\n\nRefer to the local files for detailed documentation:\n- `.\u002Freferences\u002Fplatform-support.md` - Platform details and OsType\n\n## IMPORTANT: Documentation Completeness Check\n\n**Before answering questions, Claude MUST:**\n\n1. Read the relevant reference file(s) listed above\n2. If file read fails or file is empty:\n   - Inform user: \"本地文档不完整，建议运行 `\u002Fsync-crate-skills makepad --force` 更新文档\"\n   - Still answer based on SKILL.md patterns + built-in knowledge\n3. If reference file exists, incorporate its content into the answer\n\n## Supported Platforms\n\n| Platform | Graphics Backend | OS Module |\n|----------|------------------|-----------|\n| macOS | Metal | `apple\u002Fmetal_*.rs`, `apple\u002Fcocoa_*.rs` |\n| iOS | Metal | `apple\u002Fmetal_*.rs`, `apple\u002Fios_*.rs` |\n| Windows | D3D11 | `mswindows\u002Fd3d11_*.rs`, `mswindows\u002Fwin32_*.rs` |\n| Linux | OpenGL | `linux\u002Fopengl_*.rs`, `linux\u002Fx11*.rs`, `linux\u002Fwayland*.rs` |\n| Web | WebGL2 | `web\u002F*.rs`, `web_browser\u002F*.rs` |\n| Android | OpenGL ES | `android\u002F*.rs` |\n| OpenHarmony | OHOS | `open_harmony\u002F*.rs` |\n| OpenXR | VR\u002FAR | `open_xr\u002F*.rs` |\n\n## OsType Enum\n\n```rust\npub enum OsType {\n    Unknown,\n    Windows,\n    Macos,\n    Linux { custom_window_chrome: bool },\n    Ios,\n    Android(AndroidParams),\n    OpenHarmony,\n    Web(WebParams),\n    OpenXR,\n}\n\n\u002F\u002F Check platform in code\nfn handle_event(&mut self, cx: &mut Cx, event: &Event) {\n    match cx.os_type() {\n        OsType::Macos => { \u002F* macOS-specific *\u002F }\n        OsType::Windows => { \u002F* Windows-specific *\u002F }\n        OsType::Web(_) => { \u002F* Web-specific *\u002F }\n        _ => {}\n    }\n}\n```\n\n## Platform Detection\n\n```rust\n\u002F\u002F In Cx\nimpl Cx {\n    pub fn os_type(&self) -> OsType;\n    pub fn gpu_info(&self) -> &GpuInfo;\n    pub fn xr_capabilities(&self) -> &XrCapabilities;\n    pub fn cpu_cores(&self) -> usize;\n}\n```\n\n## Conditional Compilation\n\n```rust\n\u002F\u002F Compile-time platform detection\n#[cfg(target_os = \"macos\")]\nfn macos_only() { }\n\n#[cfg(target_os = \"windows\")]\nfn windows_only() { }\n\n#[cfg(target_os = \"linux\")]\nfn linux_only() { }\n\n#[cfg(target_arch = \"wasm32\")]\nfn web_only() { }\n\n#[cfg(target_os = \"android\")]\nfn android_only() { }\n\n#[cfg(target_os = \"ios\")]\nfn ios_only() { }\n```\n\n## Platform-Specific Features\n\n### Desktop (macOS\u002FWindows\u002FLinux)\n- Window management (resize, minimize, maximize)\n- File dialogs\n- System menu\n- Drag and drop\n- Multiple monitors\n\n### Mobile (iOS\u002FAndroid)\n- Touch input\n- Virtual keyboard\n- Screen orientation\n- App lifecycle (foreground\u002Fbackground)\n\n### Web (WebGL2)\n- DOM integration\n- Browser events\n- Local storage\n- HTTP requests\n\n## Entry Point\n\n```rust\n\u002F\u002F App entry macro\napp_main!(App);\n\npub struct App {\n    ui: WidgetRef,\n}\n\nimpl LiveRegister for App {\n    fn live_register(cx: &mut Cx) {\n        \u002F\u002F Register components\n        crate::makepad_widgets::live_design(cx);\n    }\n}\n\nimpl AppMain for App {\n    fn handle_event(&mut self, cx: &mut Cx, event: &Event) {\n        \u002F\u002F Handle app events\n        self.ui.handle_event(cx, event, &mut Scope::empty());\n    }\n}\n```\n\n## When Answering Questions\n\n1. Makepad compiles to native code for each platform (no runtime interpreter)\n2. Shaders are compiled at build time for each graphics backend\n3. Platform-specific code is in `platform\u002Fsrc\u002Fos\u002F` directory\n4. Use `cx.os_type()` for runtime platform detection\n5. Use `#[cfg(target_os = \"...\")]` for compile-time platform detection\n",{"name":5,"risk":22,"source":28,"description":44},"CRITICAL: Use for Makepad cross-platform support. Triggers on:\nmakepad platform, makepad os, makepad macos, makepad windows, makepad linux,\nmakepad android, makepad ios, makepad web, makepad wasm, makepad metal,\nmakepad d3d11, makepad opengl, makepad webgl, OsType, CxOs,\nmakepad 跨平台, makepad 平台支持\n","main","7a38d8e7073e61c16eda85681cb32fb68a8657a5","skills-store\u002Fcursor\u002Fmakepad-platform","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router","https:\u002F\u002Fgithub.com\u002Fsapsapshen","2026-04-14 21:12:12",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add sapsapshen\u002Fai-memory-router --skill makepad-platform",{"tool":57,"command":58},"bunx","bunx skills add sapsapshen\u002Fai-memory-router --skill makepad-platform",{"tool":60,"command":61},"pnpm","pnpm dlx skills add sapsapshen\u002Fai-memory-router --skill makepad-platform","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fcursor\u002Fmakepad-platform\u002FSKILL.md",true,[],[66,89,115,125,138,157],{"skillNo":67,"name":68,"nameZh":6,"description":69,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":70,"categories":71,"keywords":77,"publishedAt":39},"01M71ATQRKG48SH06FQ697T5G9","wechat-search","Search WeChat Official Account articles using OpenClaw's web search and fetch capabilities with compliance-focused design.","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Fwechat-search-release\u002FSKILL.md",[72],{"categoryNo":73,"categoryName":74,"taxonomyType":75,"taxonomyTypeDesc":76},"01JBSEEDCAT000000000000037","律师与法务","PROFESSION","适用职业",[78,79,80,81,82,83,84,85,32,86,87,88],"wechat search","wechat","search","capabilities","openclaw","design","web search","compliance","official","fetch","with",{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":95,"publishedAt":39},"01M71ATNAVGZB35PFYM2GC5N00","trend-tap","Real-time trending topics aggregator across 7 platforms (X\u002FTwitter, Reddit, Google Trends, Hacker News, Zhihu, Bilibili, Weibo). Trigger: when user says 'trend', 'trends', 'trend tap', '热点', '热搜', or asks what is trending\u002Fhot. Do NOT use web_search — this skill already fetches live data from all platforms with zero API keys.","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Ftrend-tap\u002FSKILL.md",[],[96,97,98,99,100,101,80,102,103,104,105,106,107,108,109,110,111,112,113,114],"trend","trend tap","tap","api keys","Bash","time","trending","hacker","aggregator","do","when","brew","live","data","google","install","read","across","api",{"skillNo":116,"name":117,"nameZh":6,"description":118,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":119,"categories":120,"keywords":121,"publishedAt":39},"01M71ATJ9AM5KM15AA8PS302EB","trend-radar","Real-time trending topics aggregator across 7 platforms (X\u002FTwitter, Reddit, Google Trends, Hacker News, Zhihu, Bilibili, Weibo). Trigger: when user says 'trend', 'trends', 'trend pulse', '热点', '热搜', or asks what is trending\u002Fhot. Do NOT use web_search — this skill already fetches live data from all platforms with zero API keys.","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Ftrend-radar\u002FSKILL.md",[],[122,123,96,107,108,109,110,100,80,112,124,113,114,106,104,103,102,111,101,99],"trend radar","radar","pulse",{"skillNo":126,"name":127,"nameZh":6,"description":128,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":129,"categories":130,"keywords":131,"publishedAt":39},"01M71ATGF095N3EJM9G8SD0BB5","tech-news-daily","每日科技新闻汇——从全球多个 RSS 源抓取最新科技新闻，翻译（英→中）、去重、排版成每日简报。当用户询问科技新闻、科技新鲜事、每日科技、技术动态、Daily Tech News 或类似表达时触发此技能。","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Ftech-news-daily\u002FSKILL.md",[],[132,133,134,135,136,137],"news","tech","tech news daily","daily","rss","翻译",{"skillNo":139,"name":140,"nameZh":6,"description":141,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":142,"categories":143,"keywords":149,"publishedAt":39},"01M71ATFAEAMQ17M70NQNY7SR8","summarize","Summarize URLs or files with the summarize CLI (web, PDFs, images, audio, YouTube).","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Fsummarize\u002FSKILL.md",[144],{"categoryNo":145,"categoryName":146,"taxonomyType":147,"taxonomyTypeDesc":148},"01JBSEEDCAT000000000000021","资料检索与研究","SCENARIO","使用场景",[140,32,150,151,152,88,107,153,154,155,98,156,111],"Audio","cli","youtube","images","https","files","pdfs",{"skillNo":158,"name":159,"nameZh":6,"description":160,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":161,"categories":162,"keywords":163,"publishedAt":39},"01M71ATDNS3R0M4H936PACQAWZ","sonoscli","Control Sonos speakers (discover\u002Fstatus\u002Fplay\u002Fvolume\u002Fgroup).","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Fsonoscli\u002FSKILL.md",[],[159,164,165,166,111,167,154,168,169,170,171,172],"status","play","go","latest","github","discover","control","cmd","volume"]