[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71NT37NFQVQW3TS70905KRY":3,"skill-same:01M71NT37NFQVQW3TS70905KRY":74},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":13,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":49,"install":50,"resources":63},"01M71NT37NFQVQW3TS70905KRY","codex-expo-run-actions",null,"Wire Expo projects into the Codex app with project-local run scripts and .codex\u002Fenvironments\u002Fenvironment.toml actions. Use when the user wants the Codex app Run button, build\u002Frun actions, action buttons, or a stable Expo start\u002Frun workflow from Codex.","Thamielis\u002F.agents","Thamielis","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F52717133?v=4","01M71NG040Z4RAKTDW6JVQTZA0","01M71NG04N9WFE1H3RH0BF6VDY",0,"MIT","https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fplugins\u002Fexpo\u002Fskills\u002Fcodex-expo-run-actions\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],"codex","run","expo","codex expo run actions","actions","button","scripts","buttons","build","with","workflow","run workflow","when","use","local","toml","environment","project","projects","app","2026-11-10 10:56:23",false,"---\nname: codex-expo-run-actions\ndescription: Wire Expo projects into the Codex app with project-local run scripts and .codex\u002Fenvironments\u002Fenvironment.toml actions. Use when the user wants the Codex app Run button, build\u002Frun actions, action buttons, or a stable Expo start\u002Frun workflow from Codex.\nversion: 1.0.0\nlicense: MIT\n---\n\n# Codex Run Actions for Expo\n\nUse this skill to connect an Expo project to the Codex app action bar.\n\nThe goal is one project-local script plus `.codex\u002Fenvironments\u002Fenvironment.toml`,\nso the user can press `Run` in the Codex app and see the Expo CLI \u002F Metro logs in\nan action terminal.\n\n## Workflow\n\n1. Confirm the current workspace is an Expo app.\n   - Look for `package.json`.\n   - Look for `app.json`, `app.config.js`, `app.config.ts`, or `expo` in `package.json`.\n   - Do not wire the Codex action at a monorepo root if the Expo app is in a child package.\n\n2. Discover the package runner.\n   - Prefer the package manager declared in `packageManager`.\n   - Otherwise infer from lockfiles.\n   - The generated run script should still have a safe fallback to `npx expo`.\n\n3. Create or update `script\u002Fbuild_and_run.sh`.\n   - Use the reference file for the script shape.\n   - Default no-argument mode starts the Expo dev server: `expo start`.\n   - Keep the dev server in the foreground so the Codex action terminal owns logs and Ctrl-C behavior.\n   - Support optional modes for direct buttons:\n     - `--ios` starts Expo and opens iOS simulator.\n     - `--android` starts Expo and opens Android.\n     - `--web` starts Expo for web.\n     - `--dev-client` starts in dev-client mode.\n     - `--tunnel` starts a tunnel.\n     - `--export-web` exports web.\n\n4. Write `.codex\u002Fenvironments\u002Fenvironment.toml`.\n   - Always add or update one primary action named `Run`.\n   - Wire `Run` to `.\u002Fscript\u002Fbuild_and_run.sh`.\n   - Add direct `Run iOS`, `Run Android`, `Run Web`, or `Run Dev Client`\n     actions only when the user asks for those buttons or the project clearly needs them.\n   - If the environment file already exists, update the existing matching action instead of duplicating it.\n\n5. Use the action script as the default local run path.\n   - After wiring, run `.\u002Fscript\u002Fbuild_and_run.sh --help` or a short non-server mode if you need to sanity-check syntax.\n   - Do not start a long-lived Metro server during a setup-only task unless the user asked you to run the app.\n\n## References\n\n- `references\u002Fexpo-run-button-bootstrap.md`: canonical Expo `script\u002Fbuild_and_run.sh` and Codex environment action examples.\n\n## Guardrails\n\n- Try Expo Go \u002F `expo start` first; do not default the Codex Run button to `expo run:ios`, `expo run:android`, prebuild, or EAS Build.\n- Do not wire cloud actions such as `eas build`, `eas submit`, or store deployment into Codex buttons unless the user explicitly asks and accepts the auth \u002F time \u002F cost tradeoff.\n- Do not create a nested git repo.\n- Do not put secrets in `.codex\u002Fenvironments\u002Fenvironment.toml` or in the run script.\n- Do not background Metro from the run script; the action terminal should show the active server logs.\n- Do not hard-code npm if the project uses pnpm, yarn, or bun.\n\n## Output Expectations\n\nWhen setup changes are made, summarize:\n\n- the Expo app root you wired\n- the run script path\n- the Codex environment file path\n- the actions added or updated\n- how to launch the same path from shell\n","# Codex Run Actions for Expo\n\nUse this skill to connect an Expo project to the Codex app action bar.\n\nThe goal is one project-local script plus `.codex\u002Fenvironments\u002Fenvironment.toml`,\nso the user can press `Run` in the Codex app and see the Expo CLI \u002F Metro logs in\nan action terminal.\n\n## Workflow\n\n1. Confirm the current workspace is an Expo app.\n   - Look for `package.json`.\n   - Look for `app.json`, `app.config.js`, `app.config.ts`, or `expo` in `package.json`.\n   - Do not wire the Codex action at a monorepo root if the Expo app is in a child package.\n\n2. Discover the package runner.\n   - Prefer the package manager declared in `packageManager`.\n   - Otherwise infer from lockfiles.\n   - The generated run script should still have a safe fallback to `npx expo`.\n\n3. Create or update `script\u002Fbuild_and_run.sh`.\n   - Use the reference file for the script shape.\n   - Default no-argument mode starts the Expo dev server: `expo start`.\n   - Keep the dev server in the foreground so the Codex action terminal owns logs and Ctrl-C behavior.\n   - Support optional modes for direct buttons:\n     - `--ios` starts Expo and opens iOS simulator.\n     - `--android` starts Expo and opens Android.\n     - `--web` starts Expo for web.\n     - `--dev-client` starts in dev-client mode.\n     - `--tunnel` starts a tunnel.\n     - `--export-web` exports web.\n\n4. Write `.codex\u002Fenvironments\u002Fenvironment.toml`.\n   - Always add or update one primary action named `Run`.\n   - Wire `Run` to `.\u002Fscript\u002Fbuild_and_run.sh`.\n   - Add direct `Run iOS`, `Run Android`, `Run Web`, or `Run Dev Client`\n     actions only when the user asks for those buttons or the project clearly needs them.\n   - If the environment file already exists, update the existing matching action instead of duplicating it.\n\n5. Use the action script as the default local run path.\n   - After wiring, run `.\u002Fscript\u002Fbuild_and_run.sh --help` or a short non-server mode if you need to sanity-check syntax.\n   - Do not start a long-lived Metro server during a setup-only task unless the user asked you to run the app.\n\n## References\n\n- `references\u002Fexpo-run-button-bootstrap.md`: canonical Expo `script\u002Fbuild_and_run.sh` and Codex environment action examples.\n\n## Guardrails\n\n- Try Expo Go \u002F `expo start` first; do not default the Codex Run button to `expo run:ios`, `expo run:android`, prebuild, or EAS Build.\n- Do not wire cloud actions such as `eas build`, `eas submit`, or store deployment into Codex buttons unless the user explicitly asks and accepts the auth \u002F time \u002F cost tradeoff.\n- Do not create a nested git repo.\n- Do not put secrets in `.codex\u002Fenvironments\u002Fenvironment.toml` or in the run script.\n- Do not background Metro from the run script; the action terminal should show the active server logs.\n- Do not hard-code npm if the project uses pnpm, yarn, or bun.\n\n## Output Expectations\n\nWhen setup changes are made, summarize:\n\n- the Expo app root you wired\n- the run script path\n- the Codex environment file path\n- the actions added or updated\n- how to launch the same path from shell\n",{"name":5,"license":14,"version":43,"description":7},"1.0.0","main","dd673a28ba66191245f0e384c525b1dcff1c427a","plugins\u002Fexpo\u002Fskills\u002Fcodex-expo-run-actions","https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents","https:\u002F\u002Fgithub.com\u002FThamielis","2026-06-08 04:03:12",{"source":8,"skillName":5,"commands":51,"prompt":61,"zipAvailable":62},[52,55,58],{"tool":53,"command":54},"npx","npx skills add Thamielis\u002F.agents --skill codex-expo-run-actions",{"tool":56,"command":57},"bunx","bunx skills add Thamielis\u002F.agents --skill codex-expo-run-actions",{"tool":59,"command":60},"pnpm","pnpm dlx skills add Thamielis\u002F.agents --skill codex-expo-run-actions","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fplugins\u002Fexpo\u002Fskills\u002Fcodex-expo-run-actions\u002FSKILL.md",true,[64,70],{"path":65,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":68,"sourceHtmlUrl":69},"agents\u002Fopenai.yaml","REFERENCE","参考文档",394,"https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fplugins\u002Fexpo\u002Fskills\u002Fcodex-expo-run-actions\u002Fagents\u002Fopenai.yaml",{"path":71,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":72,"sourceHtmlUrl":73},"references\u002Fexpo-run-button-bootstrap.md",4972,"https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fplugins\u002Fexpo\u002Fskills\u002Fcodex-expo-run-actions\u002Freferences\u002Fexpo-run-button-bootstrap.md",[75,108,133,163,194,219],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":79,"licenseFileUrl":80,"sourceHtmlUrl":81,"categories":82,"keywords":91,"publishedAt":107},"01M71QFD7835D0JG8MS43NRRVE","webapp-testing","Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.","Apache-2.0","https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fskills\u002Fwebapp-testing\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fskills\u002Fwebapp-testing\u002FSKILL.md",[83,88],{"categoryNo":84,"categoryName":85,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",{"categoryNo":89,"categoryName":90,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000009","前端开发",[92,93,94,32,95,96,97,98,99,100,101,102,103,27,104,105,106],"webapp","testing","webapp testing","frontend","debugging","logs","browser","ui","screenshots","for","applications","toolkit","playwright","web","behavior","2026-11-10 13:02:02",{"skillNo":109,"name":110,"nameZh":6,"description":111,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":79,"licenseFileUrl":112,"sourceHtmlUrl":113,"categories":114,"keywords":116,"publishedAt":107},"01M71QF1RVYQPZ2HPHXYWBC27K","web-artifacts-builder","Suite of tools for creating elaborate, multi-component Codex.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn\u002Fui). Use for complex artifacts requiring state management, routing, or shadcn\u002Fui components - not for simple single-file HTML\u002FJSX artifacts.","https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fskills\u002Fweb-artifacts-builder\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fskills\u002Fweb-artifacts-builder\u002FSKILL.md",[115],{"categoryNo":89,"categoryName":90,"taxonomyType":86,"taxonomyTypeDesc":87},[117,118,119,105,120,121,122,101,123,124,95,125,31,126,127,128,129,130,131,132],"builder","artifacts builder","artifacts","web artifacts builder","single-file","css","Tailwind","ui components","single","file","components","react","multi","state","routing","state management",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":145,"publishedAt":107},"01M71QEMXGG7MTTMSRVE3YFCXC","visual-explainer","Generate beautiful, self-contained HTML pages that visually explain systems, code changes, plans, and data. Use when the user asks for a diagram, architecture overview, diff review, plan review, project recap, comparison table, or any visual explanation of technical concepts. Also use proactively when you are about to render a complex ASCII table (4+ rows or 3+ columns) — present it as a styled HTML page instead.","https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fskills\u002Fvisual-explainer\u002FSKILL.md",[139,140],{"categoryNo":89,"categoryName":90,"taxonomyType":86,"taxonomyTypeDesc":87},{"categoryNo":141,"categoryName":142,"taxonomyType":143,"taxonomyTypeDesc":144},"01JBSEEDCAT000000000000033","数据分析师","PROFESSION","适用职业",[146,147,148,35,149,150,151,152,153,154,155,156,157,158,159,101,160,161,162,31],"visual","visual explainer","explainer","files","image","you","architecture","plan","generate","present","concepts","table","as","view","ascii table","ascii","surf",{"skillNo":164,"name":165,"nameZh":6,"description":166,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":167,"categories":168,"keywords":175,"publishedAt":107},"01M71QDJVMVM82514TRK7VHXC5","transloadit-media-processing","Process media files (video, audio, images, documents) using Transloadit. Use when asked to encode video to HLS\u002FMP4, generate thumbnails, resize or watermark images, extract audio, concatenate clips, add subtitles, OCR documents, or run any media processing pipeline. Covers 86+ processing robots for file transformation at scale.","https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fskills\u002Ftransloadit-media-processing\u002FSKILL.md",[169,172],{"categoryNo":170,"categoryName":171,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000016","图像与多媒体",{"categoryNo":173,"categoryName":174,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000023","Skill与智能体开发",[176,177,178,179,180,181,182,183,184,185,149,186,187,188,30,189,190,191,192,193],"Media","processing","transloadit media processing","media processing","transloadit","images","Video","ocr","Audio","pipeline","MCP","free","documents","mcp server","thumbnails","server","mcp-server","cli",{"skillNo":195,"name":196,"nameZh":6,"description":197,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":79,"licenseFileUrl":198,"sourceHtmlUrl":199,"categories":200,"keywords":204,"publishedAt":107},"01M71QDEJ4M9TP6VZRNK3J9NKX","theme-factory","Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors\u002Ffonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.","https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fskills\u002Ftheme-factory\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fskills\u002Ftheme-factory\u002FSKILL.md",[201],{"categoryNo":202,"categoryName":203,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000015","视觉设计",[205,206,207,208,209,101,210,211,212,213,151,119,214,103,215,216,27,217,154,218],"theme","theme factory","factory","SET","slides","landing","pages","new","themes","apply","can","fonts","artifact","fly",{"skillNo":220,"name":221,"nameZh":6,"description":222,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":223,"categories":224,"keywords":228,"publishedAt":107},"01M71QD9QXM9M9RWQX40E981D4","terraform-azurerm-set-diff-analyzer","Analyze Terraform plan JSON output for AzureRM Provider to distinguish between false-positive diffs (order-only changes in Set-type attributes) and actual resource changes. Use when reviewing terraform plan output for Azure resources like Application Gateway, Load Balancer, Firewall, Front Door, NSG, and other resources with Set-type attributes that cause spurious diffs due to internal ordering changes.","https:\u002F\u002Fgithub.com\u002FThamielis\u002F.agents\u002Fblob\u002Fmain\u002Fskills\u002Fterraform-azurerm-set-diff-analyzer\u002FSKILL.md",[225],{"categoryNo":226,"categoryName":227,"taxonomyType":86,"taxonomyTypeDesc":87},"01JBSEEDCAT000000000000011","运维与部署",[208,229,230,231,232,233,234,235,236,101,237,238,239,240,241,242,243,244,31,245],"diff","terraform azurerm set diff analyzer","analyzer","terraform","gateway","firewall","resources","attributes","provider","resource changes","balancer","front","azure","diffs","load balancer","only","load"]