[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6XGFXKHTTAP9FYAM5H45YXA":3,"skill-same:01M6XGFXKHTTAP9FYAM5H45YXA":57},{"skillNo":4,"name":5,"nameZh":6,"description":5,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":32,"linkOnly":33,"markdownContent":34,"markdownBody":35,"frontMatter":36,"refName":37,"commitSha":38,"skillDirectory":39,"forksCount":13,"repositoryHtmlUrl":40,"repositoryHomepageUrl":6,"ownerHtmlUrl":41,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":42,"install":43,"resources":56},"01M6XGFXKHTTAP9FYAM5H45YXA","expo-ui-jetpack-compose",null,"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\u002Fcopilot\u002Fexpo-ui-jetpack-compose\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[23,24,25,26,27,28,29,30,31],"expo ui jetpack compose","ui","jetpack compose","compose","expo","jetpack","expo ui","community","unknown","2026-11-10 10:12:30",false,"---\nname: expo-ui-jetpack-compose\ndescription: expo-ui-jetpack-compose\nrisk: unknown\nsource: community\n---\n\n---\nname: expo-ui-jetpack-compose\ndescription: `@expo\u002Fui\u002Fjetpack-compose` package lets you use Jetpack Compose Views and modifiers in your app.\n---\n\n> The instructions in this skill apply to SDK 55 only. For other SDK versions, refer to the Expo UI Jetpack Compose docs for that version for the most accurate information.\n\n## Installation\n\n```bash\nnpx expo install @expo\u002Fui\n```\n\nA native rebuild is required after installation (`npx expo run:android`).\n\n## Instructions\n\n- Expo UI's API mirrors Jetpack Compose's API. Use Jetpack Compose and Material Design 3 knowledge to decide which components or modifiers to use.\n- Components are imported from `@expo\u002Fui\u002Fjetpack-compose`, modifiers from `@expo\u002Fui\u002Fjetpack-compose\u002Fmodifiers`.\n- When about to use a component, fetch its docs to confirm the API - https:\u002F\u002Fdocs.expo.dev\u002Fversions\u002Fv55.0.0\u002Fsdk\u002Fui\u002Fjetpack-compose\u002F{component-name}\u002Findex.md\n- When unsure about a modifier's API, refer to the docs - https:\u002F\u002Fdocs.expo.dev\u002Fversions\u002Fv55.0.0\u002Fsdk\u002Fui\u002Fjetpack-compose\u002Fmodifiers\u002Findex.md\n- Every Jetpack Compose tree must be wrapped in `Host`. Use `\u003CHost matchContents>` for intrinsic sizing, or `\u003CHost style={{ flex: 1 }}>` when you need explicit size (e.g. as a parent of `LazyColumn`). Example:\n\n```jsx\nimport { Host, Column, Button, Text } from \"@expo\u002Fui\u002Fjetpack-compose\";\nimport { fillMaxWidth, paddingAll } from \"@expo\u002Fui\u002Fjetpack-compose\u002Fmodifiers\";\n\n\u003CHost matchContents>\n  \u003CColumn verticalArrangement={{ spacedBy: 8 }} modifiers={[fillMaxWidth(), paddingAll(16)]}>\n    \u003CText style={{ typography: \"titleLarge\" }}>Hello\u003C\u002FText>\n    \u003CButton onPress={() => alert(\"Pressed!\")}>Press me\u003C\u002FButton>\n  \u003C\u002FColumn>\n\u003C\u002FHost>;\n```\n\n## Key Components\n\n- **LazyColumn** — Use instead of react-native `ScrollView`\u002F`FlatList` for scrollable lists. Wrap in `\u003CHost style={{ flex: 1 }}>`.\n- **Icon** — Use `\u003CIcon source={require('.\u002Ficon.xml')} size={24} \u002F>` with Android XML vector drawables from [Material Symbols](https:\u002F\u002Ffonts.google.com\u002Ficons).\n","---\nname: expo-ui-jetpack-compose\ndescription: `@expo\u002Fui\u002Fjetpack-compose` package lets you use Jetpack Compose Views and modifiers in your app.\n---\n\n> The instructions in this skill apply to SDK 55 only. For other SDK versions, refer to the Expo UI Jetpack Compose docs for that version for the most accurate information.\n\n## Installation\n\n```bash\nnpx expo install @expo\u002Fui\n```\n\nA native rebuild is required after installation (`npx expo run:android`).\n\n## Instructions\n\n- Expo UI's API mirrors Jetpack Compose's API. Use Jetpack Compose and Material Design 3 knowledge to decide which components or modifiers to use.\n- Components are imported from `@expo\u002Fui\u002Fjetpack-compose`, modifiers from `@expo\u002Fui\u002Fjetpack-compose\u002Fmodifiers`.\n- When about to use a component, fetch its docs to confirm the API - https:\u002F\u002Fdocs.expo.dev\u002Fversions\u002Fv55.0.0\u002Fsdk\u002Fui\u002Fjetpack-compose\u002F{component-name}\u002Findex.md\n- When unsure about a modifier's API, refer to the docs - https:\u002F\u002Fdocs.expo.dev\u002Fversions\u002Fv55.0.0\u002Fsdk\u002Fui\u002Fjetpack-compose\u002Fmodifiers\u002Findex.md\n- Every Jetpack Compose tree must be wrapped in `Host`. Use `\u003CHost matchContents>` for intrinsic sizing, or `\u003CHost style={{ flex: 1 }}>` when you need explicit size (e.g. as a parent of `LazyColumn`). Example:\n\n```jsx\nimport { Host, Column, Button, Text } from \"@expo\u002Fui\u002Fjetpack-compose\";\nimport { fillMaxWidth, paddingAll } from \"@expo\u002Fui\u002Fjetpack-compose\u002Fmodifiers\";\n\n\u003CHost matchContents>\n  \u003CColumn verticalArrangement={{ spacedBy: 8 }} modifiers={[fillMaxWidth(), paddingAll(16)]}>\n    \u003CText style={{ typography: \"titleLarge\" }}>Hello\u003C\u002FText>\n    \u003CButton onPress={() => alert(\"Pressed!\")}>Press me\u003C\u002FButton>\n  \u003C\u002FColumn>\n\u003C\u002FHost>;\n```\n\n## Key Components\n\n- **LazyColumn** — Use instead of react-native `ScrollView`\u002F`FlatList` for scrollable lists. Wrap in `\u003CHost style={{ flex: 1 }}>`.\n- **Icon** — Use `\u003CIcon source={require('.\u002Ficon.xml')} size={24} \u002F>` with Android XML vector drawables from [Material Symbols](https:\u002F\u002Ffonts.google.com\u002Ficons).\n",{"name":5,"risk":31,"source":30,"description":5},"main","7a38d8e7073e61c16eda85681cb32fb68a8657a5","skills-store\u002Fcopilot\u002Fexpo-ui-jetpack-compose","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router","https:\u002F\u002Fgithub.com\u002Fsapsapshen","2026-04-14 21:12:12",{"source":7,"skillName":5,"commands":44,"prompt":54,"zipAvailable":55},[45,48,51],{"tool":46,"command":47},"npx","npx skills add sapsapshen\u002Fai-memory-router --skill expo-ui-jetpack-compose",{"tool":49,"command":50},"bunx","bunx skills add sapsapshen\u002Fai-memory-router --skill expo-ui-jetpack-compose",{"tool":52,"command":53},"pnpm","pnpm dlx skills add sapsapshen\u002Fai-memory-router --skill expo-ui-jetpack-compose","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fcopilot\u002Fexpo-ui-jetpack-compose\u002FSKILL.md",true,[],[58,80,106,116,129,148],{"skillNo":59,"name":60,"nameZh":6,"description":61,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":62,"categories":63,"keywords":67,"publishedAt":32},"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",[64],{"categoryNo":65,"categoryName":66,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000037","律师与法务",[68,69,70,71,72,73,74,75,76,77,78,79],"wechat search","wechat","search","capabilities","openclaw","design","web search","compliance","web","official","fetch","with",{"skillNo":81,"name":82,"nameZh":6,"description":83,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":84,"categories":85,"keywords":86,"publishedAt":32},"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",[],[87,88,89,90,91,92,70,93,94,95,96,97,98,99,100,101,102,103,104,105],"trend","trend tap","tap","api keys","Bash","time","trending","hacker","aggregator","do","when","brew","live","data","google","install","read","across","api",{"skillNo":107,"name":108,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":112,"publishedAt":32},"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",[],[113,114,87,98,99,100,101,91,70,103,115,104,105,97,95,94,93,102,92,90],"trend radar","radar","pulse",{"skillNo":117,"name":118,"nameZh":6,"description":119,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":120,"categories":121,"keywords":122,"publishedAt":32},"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",[],[123,124,125,126,127,128],"news","tech","tech news daily","daily","rss","翻译",{"skillNo":130,"name":131,"nameZh":6,"description":132,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":133,"categories":134,"keywords":140,"publishedAt":32},"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",[135],{"categoryNo":136,"categoryName":137,"taxonomyType":138,"taxonomyTypeDesc":139},"01JBSEEDCAT000000000000021","资料检索与研究","SCENARIO","使用场景",[131,76,141,142,143,79,98,144,145,146,89,147,102],"Audio","cli","youtube","images","https","files","pdfs",{"skillNo":149,"name":150,"nameZh":6,"description":151,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":152,"categories":153,"keywords":154,"publishedAt":32},"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",[],[150,155,156,157,102,158,145,159,160,161,162,163],"status","play","go","latest","github","discover","control","cmd","volume"]