opencode-skills-collection 3.1.12 → 3.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundled-skills/.antigravity-install-manifest.json +192 -1
- package/bundled-skills/ab-testing/SKILL.md +368 -0
- package/bundled-skills/ab-testing/evals/evals.json +105 -0
- package/bundled-skills/ab-testing/references/sample-size-guide.md +263 -0
- package/bundled-skills/ab-testing/references/test-templates.md +277 -0
- package/bundled-skills/accint-commitments/SKILL.md +32 -0
- package/bundled-skills/accint-frames/SKILL.md +35 -0
- package/bundled-skills/accint-solve/SKILL.md +22 -192
- package/bundled-skills/add-app-clip/SKILL.md +297 -0
- package/bundled-skills/add-app-clip/agents/openai.yaml +4 -0
- package/bundled-skills/add-app-clip/references/native-module.md +96 -0
- package/bundled-skills/agent-memory/SKILL.md +84 -0
- package/bundled-skills/alternatives-pages/README.md +46 -0
- package/bundled-skills/alternatives-pages/SKILL.md +376 -0
- package/bundled-skills/analytics/SKILL.md +324 -0
- package/bundled-skills/analytics/evals/evals.json +90 -0
- package/bundled-skills/analytics/references/event-library.md +260 -0
- package/bundled-skills/analytics/references/ga4-implementation.md +300 -0
- package/bundled-skills/analytics/references/gtm-implementation.md +390 -0
- package/bundled-skills/anti-deception/SKILL.md +50 -0
- package/bundled-skills/api-analyzer/SKILL.md +101 -0
- package/bundled-skills/api-and-interface-design/SKILL.md +307 -0
- package/bundled-skills/api-designer/SKILL.md +167 -0
- package/bundled-skills/api-integration/SKILL.md +175 -0
- package/bundled-skills/api-onboarding/README.md +47 -0
- package/bundled-skills/api-onboarding/SKILL.md +473 -0
- package/bundled-skills/api-sdk-generator/SKILL.md +223 -0
- package/bundled-skills/appium-skill/SKILL.md +317 -0
- package/bundled-skills/applicationinsights-web-ts/SKILL.md +477 -0
- package/bundled-skills/automated-triage/SKILL.md +189 -0
- package/bundled-skills/aws-agentic-ai/SKILL.md +141 -0
- package/bundled-skills/aws-cdk-development/SKILL.md +275 -0
- package/bundled-skills/aws-cost-operations/SKILL.md +273 -0
- package/bundled-skills/aws-mcp-setup/SKILL.md +192 -0
- package/bundled-skills/aws-serverless-eda/SKILL.md +394 -0
- package/bundled-skills/aws-sst-development/SKILL.md +175 -0
- package/bundled-skills/azure-ai-language-conversations-py/SKILL.md +112 -0
- package/bundled-skills/azure-servicebus-rust/SKILL.md +182 -0
- package/bundled-skills/azure-storage-queue-rust/SKILL.md +178 -0
- package/bundled-skills/baseline-ui/SKILL.md +15 -10
- package/bundled-skills/brooks-audit/SKILL.md +49 -0
- package/bundled-skills/brooks-audit/architecture-guide.md +195 -0
- package/bundled-skills/brooks-audit/onboarding-guide.md +89 -0
- package/bundled-skills/brooks-debt/SKILL.md +42 -0
- package/bundled-skills/brooks-debt/debt-guide.md +125 -0
- package/bundled-skills/brooks-harness/SKILL.md +139 -0
- package/bundled-skills/brooks-review/SKILL.md +42 -0
- package/bundled-skills/brooks-review/pr-review-guide.md +163 -0
- package/bundled-skills/brooks-sweep/SKILL.md +44 -0
- package/bundled-skills/brooks-sweep/sweep-guide.md +264 -0
- package/bundled-skills/brooks-test/SKILL.md +41 -0
- package/bundled-skills/brooks-test/test-guide.md +147 -0
- package/bundled-skills/bug-hunt-swarm/SKILL.md +189 -0
- package/bundled-skills/bug-hunt-swarm/agents/openai.yaml +4 -0
- package/bundled-skills/building-native-ui/SKILL.md +77 -18
- package/bundled-skills/building-native-ui/agents/openai.yaml +4 -0
- package/bundled-skills/building-native-ui/references/animations.md +220 -0
- package/bundled-skills/building-native-ui/references/controls.md +270 -0
- package/bundled-skills/building-native-ui/references/form-sheet.md +253 -0
- package/bundled-skills/building-native-ui/references/gradients.md +106 -0
- package/bundled-skills/building-native-ui/references/icons.md +213 -0
- package/bundled-skills/building-native-ui/references/media.md +198 -0
- package/bundled-skills/building-native-ui/references/route-structure.md +229 -0
- package/bundled-skills/building-native-ui/references/search.md +248 -0
- package/bundled-skills/building-native-ui/references/storage.md +121 -0
- package/bundled-skills/building-native-ui/references/tabs.md +433 -0
- package/bundled-skills/building-native-ui/references/toolbar-and-headers.md +284 -0
- package/bundled-skills/building-native-ui/references/visual-effects.md +197 -0
- package/bundled-skills/building-native-ui/references/webgpu-three.md +605 -0
- package/bundled-skills/building-native-ui/references/zoom-transitions.md +158 -0
- package/bundled-skills/changelog-updates/README.md +53 -0
- package/bundled-skills/changelog-updates/SKILL.md +552 -0
- package/bundled-skills/ci-cd-and-automation/SKILL.md +403 -0
- package/bundled-skills/claimable-postgres/SKILL.md +91 -59
- package/bundled-skills/co-marketing/SKILL.md +301 -0
- package/bundled-skills/co-marketing/evals/evals.json +84 -0
- package/bundled-skills/code-review-and-quality/SKILL.md +394 -0
- package/bundled-skills/code-showcase-core-components/SKILL.md +281 -0
- package/bundled-skills/code-showcase-react-ui-patterns/SKILL.md +306 -0
- package/bundled-skills/code-showcase-systematic-debugging/SKILL.md +167 -0
- package/bundled-skills/code-showcase-testing-patterns/SKILL.md +276 -0
- package/bundled-skills/code-simplification/SKILL.md +344 -0
- package/bundled-skills/community-building/README.md +102 -0
- package/bundled-skills/community-building/SKILL.md +415 -0
- package/bundled-skills/competitor-profiling/SKILL.md +427 -0
- package/bundled-skills/competitor-profiling/evals/evals.json +85 -0
- package/bundled-skills/competitor-profiling/references/templates.md +167 -0
- package/bundled-skills/competitor-profiling/references/tool-reference.md +179 -0
- package/bundled-skills/competitor-tracking/README.md +40 -0
- package/bundled-skills/competitor-tracking/SKILL.md +322 -0
- package/bundled-skills/context-engineering/SKILL.md +302 -0
- package/bundled-skills/cro/SKILL.md +202 -0
- package/bundled-skills/cro/evals/evals.json +111 -0
- package/bundled-skills/cro/references/experiments.md +248 -0
- package/bundled-skills/cro/references/form.md +422 -0
- package/bundled-skills/cucumber-skill/SKILL.md +235 -0
- package/bundled-skills/customer-research/SKILL.md +287 -0
- package/bundled-skills/customer-research/evals/evals.json +162 -0
- package/bundled-skills/customer-research/references/source-guides.md +401 -0
- package/bundled-skills/cypress-skill/SKILL.md +235 -0
- package/bundled-skills/debugging-and-error-recovery/SKILL.md +313 -0
- package/bundled-skills/debugging-code/SKILL.md +284 -0
- package/bundled-skills/debugging-code/references/advanced-techniques.md +50 -0
- package/bundled-skills/debugging-code/references/installing-debuggers.md +67 -0
- package/bundled-skills/debugging-code/scripts/install-dap.sh +87 -0
- package/bundled-skills/deprecation-and-migration/SKILL.md +219 -0
- package/bundled-skills/design-philosophy/SKILL.md +40 -0
- package/bundled-skills/design-philosophy/reference.md +19 -0
- package/bundled-skills/design-spatial/SKILL.md +271 -0
- package/bundled-skills/design-spatial/scripts/layout-audit.js +138 -0
- package/bundled-skills/design-system/SKILL.md +140 -0
- package/bundled-skills/design-system/references/motion-choreography.md +111 -0
- package/bundled-skills/design-thinking/SKILL.md +109 -0
- package/bundled-skills/design-ux/SKILL.md +75 -0
- package/bundled-skills/dev-to-hashnode/README.md +62 -0
- package/bundled-skills/dev-to-hashnode/SKILL.md +399 -0
- package/bundled-skills/developer-advocacy/README.md +102 -0
- package/bundled-skills/developer-advocacy/SKILL.md +423 -0
- package/bundled-skills/developer-audience-context/README.md +61 -0
- package/bundled-skills/developer-audience-context/SKILL.md +271 -0
- package/bundled-skills/developer-audience-context/references/example-apitest.md +175 -0
- package/bundled-skills/developer-audience-context/references/template.md +152 -0
- package/bundled-skills/developer-churn/README.md +80 -0
- package/bundled-skills/developer-churn/SKILL.md +652 -0
- package/bundled-skills/developer-listening/README.md +30 -0
- package/bundled-skills/developer-listening/SKILL.md +232 -0
- package/bundled-skills/developer-newsletter/README.md +84 -0
- package/bundled-skills/developer-newsletter/SKILL.md +376 -0
- package/bundled-skills/developer-onboarding/README.md +35 -0
- package/bundled-skills/developer-onboarding/SKILL.md +530 -0
- package/bundled-skills/developer-sandbox/README.md +47 -0
- package/bundled-skills/developer-sandbox/SKILL.md +504 -0
- package/bundled-skills/developer-seo/README.md +36 -0
- package/bundled-skills/developer-seo/SKILL.md +296 -0
- package/bundled-skills/developer-signup-flow/README.md +36 -0
- package/bundled-skills/developer-signup-flow/SKILL.md +397 -0
- package/bundled-skills/devrel-content/README.md +81 -0
- package/bundled-skills/devrel-content/SKILL.md +428 -0
- package/bundled-skills/docs/integrations/jetski-cortex.md +3 -3
- package/bundled-skills/docs/integrations/jetski-gemini-loader/README.md +1 -1
- package/bundled-skills/docs/maintainers/repo-growth-seo.md +3 -3
- package/bundled-skills/docs/maintainers/skills-update-guide.md +1 -1
- package/bundled-skills/docs/users/bundles.md +1 -1
- package/bundled-skills/docs/users/claude-code-skills.md +1 -1
- package/bundled-skills/docs/users/faq.md +1 -1
- package/bundled-skills/docs/users/gemini-cli-skills.md +1 -1
- package/bundled-skills/docs/users/getting-started.md +1 -1
- package/bundled-skills/docs/users/kiro-integration.md +1 -1
- package/bundled-skills/docs/users/usage.md +8 -8
- package/bundled-skills/docs/users/visual-guide.md +8 -8
- package/bundled-skills/docs-as-marketing/README.md +37 -0
- package/bundled-skills/docs-as-marketing/SKILL.md +398 -0
- package/bundled-skills/documentation-and-adrs/SKILL.md +291 -0
- package/bundled-skills/doubt-driven-development/SKILL.md +256 -0
- package/bundled-skills/eas-update-insights/SKILL.md +232 -0
- package/bundled-skills/eas-update-insights/agents/openai.yaml +4 -0
- package/bundled-skills/eas-update-insights/references/channel-insights-schema.md +47 -0
- package/bundled-skills/eas-update-insights/references/update-insights-schema.md +69 -0
- package/bundled-skills/expo-api-routes/SKILL.md +9 -5
- package/bundled-skills/expo-api-routes/agents/openai.yaml +4 -0
- package/bundled-skills/expo-brownfield/SKILL.md +71 -0
- package/bundled-skills/expo-brownfield/agents/openai.yaml +4 -0
- package/bundled-skills/expo-brownfield/references/brownfield-integrated.md +526 -0
- package/bundled-skills/expo-brownfield/references/brownfield-isolated.md +402 -0
- package/bundled-skills/expo-brownfield/references/comparison.md +63 -0
- package/bundled-skills/expo-brownfield/references/troubleshooting.md +88 -0
- package/bundled-skills/expo-cicd-workflows/SKILL.md +18 -16
- package/bundled-skills/expo-cicd-workflows/agents/openai.yaml +4 -0
- package/bundled-skills/expo-cicd-workflows/scripts/fetch.js +109 -0
- package/bundled-skills/expo-cicd-workflows/scripts/package.json +11 -0
- package/bundled-skills/expo-cicd-workflows/scripts/validate.js +84 -0
- package/bundled-skills/expo-deployment/SKILL.md +157 -53
- package/bundled-skills/expo-deployment/agents/openai.yaml +4 -0
- package/bundled-skills/expo-deployment/references/app-store-metadata.md +497 -0
- package/bundled-skills/expo-deployment/references/ios-app-store.md +371 -0
- package/bundled-skills/expo-deployment/references/play-store.md +246 -0
- package/bundled-skills/expo-deployment/references/testflight.md +58 -0
- package/bundled-skills/expo-deployment/references/workflows.md +160 -0
- package/bundled-skills/expo-dev-client/SKILL.md +25 -14
- package/bundled-skills/expo-dev-client/agents/openai.yaml +4 -0
- package/bundled-skills/expo-examples/SKILL.md +111 -0
- package/bundled-skills/expo-examples/references/catalog.md +105 -0
- package/bundled-skills/expo-module/SKILL.md +152 -0
- package/bundled-skills/expo-module/agents/openai.yaml +4 -0
- package/bundled-skills/expo-module/references/config-plugin.md +90 -0
- package/bundled-skills/expo-module/references/create-expo-module.md +206 -0
- package/bundled-skills/expo-module/references/lifecycle.md +127 -0
- package/bundled-skills/expo-module/references/module-config.md +48 -0
- package/bundled-skills/expo-module/references/native-module.md +286 -0
- package/bundled-skills/expo-module/references/native-view.md +171 -0
- package/bundled-skills/expo-observe/SKILL.md +44 -0
- package/bundled-skills/expo-observe/references/metrics.md +47 -0
- package/bundled-skills/expo-observe/references/queries.md +342 -0
- package/bundled-skills/expo-observe/references/setup.md +255 -0
- package/bundled-skills/expo-tailwind-setup/SKILL.md +13 -10
- package/bundled-skills/expo-tailwind-setup/agents/openai.yaml +4 -0
- package/bundled-skills/expo-ui/SKILL.md +61 -0
- package/bundled-skills/expo-ui/agents/openai.yaml +4 -0
- package/bundled-skills/expo-ui/references/drop-in-replacements.md +27 -0
- package/bundled-skills/expo-ui/references/jetpack-compose.md +73 -0
- package/bundled-skills/expo-ui/references/swift-ui.md +73 -0
- package/bundled-skills/expo-ui/references/universal.md +73 -0
- package/bundled-skills/expo-ui/scripts/list-components.js +193 -0
- package/bundled-skills/faf-context/SKILL.md +106 -0
- package/bundled-skills/faf-go/SKILL.md +336 -0
- package/bundled-skills/fixing-accessibility/SKILL.md +16 -5
- package/bundled-skills/fixing-metadata/SKILL.md +18 -8
- package/bundled-skills/fixing-motion-performance/SKILL.md +17 -6
- package/bundled-skills/formik-patterns/SKILL.md +379 -0
- package/bundled-skills/free-tier-strategy/README.md +39 -0
- package/bundled-skills/free-tier-strategy/SKILL.md +462 -0
- package/bundled-skills/frontend-architecture/SKILL.md +419 -0
- package/bundled-skills/frontend-data-contracts/SKILL.md +331 -0
- package/bundled-skills/frontend-observability/SKILL.md +434 -0
- package/bundled-skills/frontend-optimistic-mutations/SKILL.md +278 -0
- package/bundled-skills/frontend-seo/SKILL.md +710 -0
- package/bundled-skills/frontend-slides-frontend-slides/SKILL.md +397 -0
- package/bundled-skills/frontend-ui-engineering/SKILL.md +341 -0
- package/bundled-skills/gemini-api-dev/SKILL.md +96 -53
- package/bundled-skills/gemini-live-api-dev/SKILL.md +339 -0
- package/bundled-skills/gemini-omni-flash-api/SKILL.md +335 -0
- package/bundled-skills/gemini-omni-flash-api/scripts/upload_file.py +218 -0
- package/bundled-skills/gemini-omni-flash-api/scripts/video/generate_video.py +439 -0
- package/bundled-skills/gemini-omni-flash-api/scripts/video/inspect_video.py +197 -0
- package/bundled-skills/gemini-omni-flash-api/scripts/video/prep_video.py +255 -0
- package/bundled-skills/git-workflow-and-versioning/SKILL.md +313 -0
- package/bundled-skills/github-presence/README.md +67 -0
- package/bundled-skills/github-presence/SKILL.md +484 -0
- package/bundled-skills/graphql-schema/SKILL.md +309 -0
- package/bundled-skills/hf-mcp/SKILL.md +195 -0
- package/bundled-skills/hf-mem/SKILL.md +92 -0
- package/bundled-skills/hugging-face-cli/SKILL.md +155 -115
- package/bundled-skills/hugging-face-community-evals/SKILL.md +14 -7
- package/bundled-skills/hugging-face-dataset-viewer/SKILL.md +30 -37
- package/bundled-skills/hugging-face-gradio/SKILL.md +14 -7
- package/bundled-skills/hugging-face-model-trainer/SKILL.md +36 -10
- package/bundled-skills/hugging-face-model-trainer/scripts/convert_to_gguf.py +30 -52
- package/bundled-skills/hugging-face-model-trainer/scripts/hf_benchmarks.py +659 -0
- package/bundled-skills/hugging-face-paper-publisher/SKILL.md +13 -6
- package/bundled-skills/hugging-face-papers/SKILL.md +12 -5
- package/bundled-skills/hugging-face-trackio/SKILL.md +11 -5
- package/bundled-skills/hugging-face-vision-trainer/SKILL.md +11 -5
- package/bundled-skills/huggingface-best/SKILL.md +143 -0
- package/bundled-skills/huggingface-local-models/SKILL.md +130 -0
- package/bundled-skills/huggingface-local-models/references/hardware.md +38 -0
- package/bundled-skills/huggingface-local-models/references/hub-discovery.md +178 -0
- package/bundled-skills/huggingface-local-models/references/quantization.md +256 -0
- package/bundled-skills/huggingface-lora-space-builder/SKILL.md +409 -0
- package/bundled-skills/huggingface-lora-space-builder/references/adapting-to-the-lora.md +113 -0
- package/bundled-skills/huggingface-lora-space-builder/references/base-models/krea-2.md +63 -0
- package/bundled-skills/huggingface-lora-space-builder/references/base-models/ltx.md +205 -0
- package/bundled-skills/huggingface-lora-space-builder/references/base-models/qwen-image.md +144 -0
- package/bundled-skills/huggingface-lora-space-builder/references/creative-mode.md +262 -0
- package/bundled-skills/huggingface-lora-space-builder/references/tasks.md +124 -0
- package/bundled-skills/huggingface-lora-space-builder/references/zerogpu-and-publishing.md +194 -0
- package/bundled-skills/huggingface-spaces/SKILL.md +247 -0
- package/bundled-skills/huggingface-spaces/references/buckets.md +89 -0
- package/bundled-skills/huggingface-spaces/references/debugging.md +234 -0
- package/bundled-skills/huggingface-spaces/references/gradio.md +171 -0
- package/bundled-skills/huggingface-spaces/references/grants.md +56 -0
- package/bundled-skills/huggingface-spaces/references/inference-providers.md +85 -0
- package/bundled-skills/huggingface-spaces/references/known-errors.md +232 -0
- package/bundled-skills/huggingface-spaces/references/requirements.md +153 -0
- package/bundled-skills/huggingface-spaces/references/zerogpu.md +276 -0
- package/bundled-skills/huggingface-tool-builder/SKILL.md +137 -0
- package/bundled-skills/huggingface-tool-builder/references/baseline_hf_api.py +57 -0
- package/bundled-skills/huggingface-tool-builder/references/baseline_hf_api.sh +40 -0
- package/bundled-skills/huggingface-tool-builder/references/baseline_hf_api.tsx +57 -0
- package/bundled-skills/huggingface-tool-builder/references/find_models_by_paper.sh +230 -0
- package/bundled-skills/huggingface-tool-builder/references/hf_enrich_models.sh +96 -0
- package/bundled-skills/huggingface-tool-builder/references/hf_model_card_frontmatter.sh +188 -0
- package/bundled-skills/huggingface-tool-builder/references/hf_model_papers_auth.sh +171 -0
- package/bundled-skills/huggingface-zerogpu/SKILL.md +306 -0
- package/bundled-skills/huggingface-zerogpu/references/concurrency.md +79 -0
- package/bundled-skills/huggingface-zerogpu/references/cuda-and-deps.md +66 -0
- package/bundled-skills/huggingface-zerogpu/references/how-quota-works.md +74 -0
- package/bundled-skills/huggingface-zerogpu/references/how-zerogpu-works.md +50 -0
- package/bundled-skills/hugo-to-markdown/SKILL.md +201 -0
- package/bundled-skills/hugo-to-markdown/agents/openai.yaml +4 -0
- package/bundled-skills/hugo-to-markdown/references/conversion-workflow.md +143 -0
- package/bundled-skills/hugo-to-markdown/references/front-matter-and-content.md +145 -0
- package/bundled-skills/hugo-to-markdown/references/links-assets-and-validation.md +106 -0
- package/bundled-skills/hugo-to-markdown/references/shortcodes-and-render-hooks.md +281 -0
- package/bundled-skills/hugo-to-markdown/scripts/check_standard_markdown.py +70 -0
- package/bundled-skills/hugo-to-markdown/scripts/inventory_hugo_rules.py +188 -0
- package/bundled-skills/hyperexecute-skill/SKILL.md +65 -0
- package/bundled-skills/idea-refine/SKILL.md +195 -0
- package/bundled-skills/idea-refine/examples.md +238 -0
- package/bundled-skills/idea-refine/frameworks.md +99 -0
- package/bundled-skills/idea-refine/refinement-criteria.md +113 -0
- package/bundled-skills/idea-refine/scripts/idea-refine.sh +15 -0
- package/bundled-skills/implement/SKILL.md +32 -0
- package/bundled-skills/incremental-implementation/SKILL.md +262 -0
- package/bundled-skills/jest-skill/SKILL.md +182 -0
- package/bundled-skills/junit-5-skill/SKILL.md +236 -0
- package/bundled-skills/logic-diff/SKILL.md +50 -0
- package/bundled-skills/logic-diff/logic-diff-guide.md +75 -0
- package/bundled-skills/logic-explain/SKILL.md +50 -0
- package/bundled-skills/logic-explain/logic-explain-guide.md +74 -0
- package/bundled-skills/logic-fix-all/SKILL.md +87 -0
- package/bundled-skills/logic-fix-all/guide-phases-0-2-consent-scope-health.md +113 -0
- package/bundled-skills/logic-fix-all/guide-phases-3-5-review-locate-clarify.md +47 -0
- package/bundled-skills/logic-fix-all/guide-phases-6-9-fix-iterate-report.md +143 -0
- package/bundled-skills/logic-fix-all/logic-fix-all-guide.md +60 -0
- package/bundled-skills/logic-locate/SKILL.md +52 -0
- package/bundled-skills/logic-locate/logic-locate-guide.md +85 -0
- package/bundled-skills/logic-review/SKILL.md +100 -0
- package/bundled-skills/logic-review/logic-review-guide.md +296 -0
- package/bundled-skills/longbridge-content/SKILL.md +87 -0
- package/bundled-skills/longbridge-fundamentals/SKILL.md +134 -0
- package/bundled-skills/longbridge-market-data/SKILL.md +129 -0
- package/bundled-skills/loopy/SKILL.md +289 -0
- package/bundled-skills/loopy/agents/openai.yaml +4 -0
- package/bundled-skills/loopy/references/audit.md +61 -0
- package/bundled-skills/loopy/references/debrief.md +43 -0
- package/bundled-skills/loopy/references/discover.md +72 -0
- package/bundled-skills/loopy/references/publish.md +65 -0
- package/bundled-skills/loopy/references/run.md +73 -0
- package/bundled-skills/marketing-plan/SKILL.md +283 -0
- package/bundled-skills/marketing-plan/evals/evals.json +96 -0
- package/bundled-skills/marketing-plan/references/aarrr-framework.md +180 -0
- package/bundled-skills/marketing-plan/references/budget-planning.md +168 -0
- package/bundled-skills/marketing-plan/references/client-types.md +373 -0
- package/bundled-skills/marketing-plan/references/current-state-rubric.md +255 -0
- package/bundled-skills/marketing-plan/references/example-quietude.md +972 -0
- package/bundled-skills/marketing-plan/references/funding-stage-unlocks.md +230 -0
- package/bundled-skills/marketing-plan/references/growth-patterns.md +148 -0
- package/bundled-skills/marketing-plan/references/idea-cross-reference.md +265 -0
- package/bundled-skills/marketing-plan/references/measurement-framework.md +213 -0
- package/bundled-skills/marketing-plan/references/methodology.md +363 -0
- package/bundled-skills/marketing-plan/references/ops-stack-mapping.md +197 -0
- package/bundled-skills/marketing-plan/references/plan-template.md +494 -0
- package/bundled-skills/marketing-plan/references/team-and-agency-model.md +278 -0
- package/bundled-skills/monte-carlo-analyze-root-cause/SKILL.md +229 -0
- package/bundled-skills/monte-carlo-asset-health/SKILL.md +200 -0
- package/bundled-skills/monte-carlo-monitoring-advisor/SKILL.md +317 -0
- package/bundled-skills/monte-carlo-performance-diagnosis/SKILL.md +153 -0
- package/bundled-skills/monte-carlo-remediation/SKILL.md +359 -0
- package/bundled-skills/monte-carlo-storage-cost-analysis/SKILL.md +162 -0
- package/bundled-skills/native-data-fetching/SKILL.md +11 -8
- package/bundled-skills/native-data-fetching/agents/openai.yaml +4 -0
- package/bundled-skills/native-data-fetching/references/expo-router-loaders.md +341 -0
- package/bundled-skills/neon-ai-gateway/SKILL.md +237 -0
- package/bundled-skills/neon-functions/SKILL.md +465 -0
- package/bundled-skills/neon-functions/references/ai-sdk.md +139 -0
- package/bundled-skills/neon-functions/references/hono-websockets.md +145 -0
- package/bundled-skills/neon-functions/references/mastra-studio.md +132 -0
- package/bundled-skills/neon-functions/references/mcp.md +137 -0
- package/bundled-skills/neon-functions/references/sentry.md +131 -0
- package/bundled-skills/neon-functions/references/sse.md +143 -0
- package/bundled-skills/neon-object-storage/SKILL.md +200 -0
- package/bundled-skills/neon-postgres/SKILL.md +234 -469
- package/bundled-skills/neon-postgres-branches/SKILL.md +292 -0
- package/bundled-skills/neon-postgres-egress-optimizer/SKILL.md +256 -0
- package/bundled-skills/newman-cicd-integration/SKILL.md +330 -0
- package/bundled-skills/observability-and-instrumentation/SKILL.md +216 -0
- package/bundled-skills/odw/SKILL.md +57 -0
- package/bundled-skills/offers/SKILL.md +168 -0
- package/bundled-skills/offers/references/bonus-stacking.md +150 -0
- package/bundled-skills/offers/references/examples.md +215 -0
- package/bundled-skills/offers/references/guarantee-design.md +172 -0
- package/bundled-skills/offers/references/offer-anatomy.md +203 -0
- package/bundled-skills/offers/references/offer-formats.md +240 -0
- package/bundled-skills/offers/references/scarcity-urgency.md +175 -0
- package/bundled-skills/offers/references/value-equation.md +134 -0
- package/bundled-skills/onboarding/SKILL.md +235 -0
- package/bundled-skills/onboarding/evals/evals.json +92 -0
- package/bundled-skills/onboarding/references/experiments.md +258 -0
- package/bundled-skills/open-source-marketing/README.md +100 -0
- package/bundled-skills/open-source-marketing/SKILL.md +466 -0
- package/bundled-skills/openapi-spec-generator/SKILL.md +335 -0
- package/bundled-skills/performance-optimization/SKILL.md +363 -0
- package/bundled-skills/planning-and-task-breakdown/SKILL.md +240 -0
- package/bundled-skills/polis-protocol-a-self-optimizing-city-of-agents/SKILL.md +170 -0
- package/bundled-skills/postgresql-cli/SKILL.md +498 -0
- package/bundled-skills/postgresql-cli/references/cli-options-and-variables.md +444 -0
- package/bundled-skills/postgresql-cli/references/meta-commands-core.md +466 -0
- package/bundled-skills/postgresql-cli/references/meta-commands-formatting.md +154 -0
- package/bundled-skills/postgresql-cli/references/meta-commands-inspection.md +134 -0
- package/bundled-skills/postgresql-cli/references/tips-advanced.md +289 -0
- package/bundled-skills/postgresql-cli/references/tips-workflows.md +407 -0
- package/bundled-skills/postman-collection-generator/SKILL.md +184 -0
- package/bundled-skills/postman-newman-automation/SKILL.md +311 -0
- package/bundled-skills/postman-openapi-converter/SKILL.md +174 -0
- package/bundled-skills/power-user-cultivation/README.md +78 -0
- package/bundled-skills/power-user-cultivation/SKILL.md +598 -0
- package/bundled-skills/pricing/SKILL.md +246 -0
- package/bundled-skills/pricing/evals/evals.json +90 -0
- package/bundled-skills/pricing/references/research-methods.md +152 -0
- package/bundled-skills/pricing/references/tier-structure.md +232 -0
- package/bundled-skills/privacy-mask/SKILL.md +96 -0
- package/bundled-skills/product-marketing/SKILL.md +256 -0
- package/bundled-skills/product-marketing/evals/evals.json +85 -0
- package/bundled-skills/public-relations/SKILL.md +146 -0
- package/bundled-skills/public-relations/references/journalist-pitching.md +368 -0
- package/bundled-skills/public-relations/references/media-outlets.md +207 -0
- package/bundled-skills/public-relations/references/newsjacking.md +218 -0
- package/bundled-skills/public-relations/references/press-platforms.md +188 -0
- package/bundled-skills/puppeteer-skill/SKILL.md +143 -0
- package/bundled-skills/pytest-skill/SKILL.md +201 -0
- package/bundled-skills/rclone-cli/SKILL.md +351 -0
- package/bundled-skills/rclone-cli/references/bisync.md +2003 -0
- package/bundled-skills/rclone-cli/references/cache.md +726 -0
- package/bundled-skills/rclone-cli/references/chunker.md +484 -0
- package/bundled-skills/rclone-cli/references/combine.md +187 -0
- package/bundled-skills/rclone-cli/references/commands/rclone.md +1169 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_about.md +89 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_archive.md +49 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_archive_create.md +97 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_archive_extract.md +83 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_archive_list.md +98 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_authorize.md +53 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_backend.md +82 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_bisync.md +160 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_cat.md +122 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_check.md +134 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_checksum.md +120 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_cleanup.md +49 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_completion.md +40 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_completion_bash.md +70 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_completion_fish.md +57 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_completion_powershell.md +49 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_completion_zsh.md +57 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config.md +56 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_create.md +150 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_delete.md +33 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_disconnect.md +40 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_dump.md +33 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_edit.md +39 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_encryption.md +36 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_encryption_check.md +43 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_encryption_remove.md +44 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_encryption_set.md +54 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_file.md +33 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_password.md +49 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_paths.md +33 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_providers.md +33 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_reconnect.md +40 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_redacted.md +45 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_show.md +33 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_string.md +57 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_touch.md +33 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_update.md +150 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_config_userinfo.md +38 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_convmv.md +440 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_copy.md +258 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_copyto.md +219 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_copyurl.md +91 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_cryptcheck.md +141 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_cryptdecode.md +51 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_dedupe.md +166 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_delete.md +117 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_deletefile.md +50 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_gendocs.md +39 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_gitannex.md +113 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_hashsum.md +120 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_link.md +60 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_listremotes.md +55 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_ls.md +114 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_lsd.md +127 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_lsf.md +241 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_lsjson.md +195 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_lsl.md +115 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_md5sum.md +96 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_mkdir.md +43 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_mount.md +1105 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_move.md +223 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_moveto.md +218 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_ncdu.md +140 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_nfsmount.md +1111 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_obscure.md +60 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_purge.md +58 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_rc.md +111 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_rcat.md +79 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_rcd.md +219 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_rmdir.md +52 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_rmdirs.md +66 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_selfupdate.md +91 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_serve.md +61 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_serve_dlna.md +619 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_serve_docker.md +653 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_serve_ftp.md +698 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_serve_http.md +837 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_serve_nfs.md +670 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_serve_restic.md +246 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_serve_s3.md +867 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_serve_sftp.md +745 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_serve_webdav.md +896 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_settier.md +63 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_sha1sum.md +99 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_size.md +94 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_sync.md +252 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_test.md +51 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_test_changenotify.md +34 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_test_histogram.md +41 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_test_info.md +51 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_test_makefile.md +39 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_test_makefiles.md +47 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_test_memory.md +33 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_test_speed.md +66 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_touch.md +110 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_tree.md +121 -0
- package/bundled-skills/rclone-cli/references/commands/rclone_version.md +83 -0
- package/bundled-skills/rclone-cli/references/crypt.md +844 -0
- package/bundled-skills/rclone-cli/references/docker.md +615 -0
- package/bundled-skills/rclone-cli/references/faq.md +364 -0
- package/bundled-skills/rclone-cli/references/filtering.md +991 -0
- package/bundled-skills/rclone-cli/references/flags.md +1221 -0
- package/bundled-skills/rclone-cli/references/hasher.md +383 -0
- package/bundled-skills/rclone-cli/references/install.md +686 -0
- package/bundled-skills/rclone-cli/references/overview.md +620 -0
- package/bundled-skills/rclone-cli/references/providers/alias.md +141 -0
- package/bundled-skills/rclone-cli/references/providers/archive.md +287 -0
- package/bundled-skills/rclone-cli/references/providers/azureblob.md +1140 -0
- package/bundled-skills/rclone-cli/references/providers/azurefiles.md +834 -0
- package/bundled-skills/rclone-cli/references/providers/b2.md +879 -0
- package/bundled-skills/rclone-cli/references/providers/box.md +573 -0
- package/bundled-skills/rclone-cli/references/providers/cloudinary.md +259 -0
- package/bundled-skills/rclone-cli/references/providers/compress.md +222 -0
- package/bundled-skills/rclone-cli/references/providers/drime.md +319 -0
- package/bundled-skills/rclone-cli/references/providers/drive.md +2032 -0
- package/bundled-skills/rclone-cli/references/providers/dropbox.md +661 -0
- package/bundled-skills/rclone-cli/references/providers/fichier.md +230 -0
- package/bundled-skills/rclone-cli/references/providers/filefabric.md +298 -0
- package/bundled-skills/rclone-cli/references/providers/filelu.md +256 -0
- package/bundled-skills/rclone-cli/references/providers/filen.md +243 -0
- package/bundled-skills/rclone-cli/references/providers/filescom.md +209 -0
- package/bundled-skills/rclone-cli/references/providers/ftp.md +621 -0
- package/bundled-skills/rclone-cli/references/providers/gofile.md +274 -0
- package/bundled-skills/rclone-cli/references/providers/googlecloudstorage.md +846 -0
- package/bundled-skills/rclone-cli/references/providers/googlephotos.md +676 -0
- package/bundled-skills/rclone-cli/references/providers/hdfs.md +263 -0
- package/bundled-skills/rclone-cli/references/providers/hidrive.md +487 -0
- package/bundled-skills/rclone-cli/references/providers/http.md +323 -0
- package/bundled-skills/rclone-cli/references/providers/iclouddrive.md +212 -0
- package/bundled-skills/rclone-cli/references/providers/internetarchive.md +355 -0
- package/bundled-skills/rclone-cli/references/providers/internxt.md +189 -0
- package/bundled-skills/rclone-cli/references/providers/jottacloud.md +604 -0
- package/bundled-skills/rclone-cli/references/providers/koofr.md +395 -0
- package/bundled-skills/rclone-cli/references/providers/linkbox.md +117 -0
- package/bundled-skills/rclone-cli/references/providers/local.md +749 -0
- package/bundled-skills/rclone-cli/references/providers/mailru.md +470 -0
- package/bundled-skills/rclone-cli/references/providers/mega.md +361 -0
- package/bundled-skills/rclone-cli/references/providers/memory.md +109 -0
- package/bundled-skills/rclone-cli/references/providers/netstorage.md +371 -0
- package/bundled-skills/rclone-cli/references/providers/onedrive.md +1322 -0
- package/bundled-skills/rclone-cli/references/providers/opendrive.md +222 -0
- package/bundled-skills/rclone-cli/references/providers/oracleobjectstorage/_index.md +932 -0
- package/bundled-skills/rclone-cli/references/providers/oracleobjectstorage/tutorial_mount.md +503 -0
- package/bundled-skills/rclone-cli/references/providers/pcloud.md +373 -0
- package/bundled-skills/rclone-cli/references/providers/pikpak.md +373 -0
- package/bundled-skills/rclone-cli/references/providers/pixeldrain.md +182 -0
- package/bundled-skills/rclone-cli/references/providers/premiumizeme.md +253 -0
- package/bundled-skills/rclone-cli/references/providers/protondrive.md +397 -0
- package/bundled-skills/rclone-cli/references/providers/putio.md +246 -0
- package/bundled-skills/rclone-cli/references/providers/qingstor.md +346 -0
- package/bundled-skills/rclone-cli/references/providers/quatrix.md +295 -0
- package/bundled-skills/rclone-cli/references/providers/s3.md +9687 -0
- package/bundled-skills/rclone-cli/references/providers/seafile.md +432 -0
- package/bundled-skills/rclone-cli/references/providers/sftp.md +1277 -0
- package/bundled-skills/rclone-cli/references/providers/shade.md +267 -0
- package/bundled-skills/rclone-cli/references/providers/sharefile.md +357 -0
- package/bundled-skills/rclone-cli/references/providers/sia.md +223 -0
- package/bundled-skills/rclone-cli/references/providers/smb.md +309 -0
- package/bundled-skills/rclone-cli/references/providers/storj.md +503 -0
- package/bundled-skills/rclone-cli/references/providers/sugarsync.md +305 -0
- package/bundled-skills/rclone-cli/references/providers/swift.md +744 -0
- package/bundled-skills/rclone-cli/references/providers/ulozto.md +283 -0
- package/bundled-skills/rclone-cli/references/providers/webdav.md +565 -0
- package/bundled-skills/rclone-cli/references/providers/yandex.md +283 -0
- package/bundled-skills/rclone-cli/references/providers/zoho.md +305 -0
- package/bundled-skills/rclone-cli/references/rc.md +2725 -0
- package/bundled-skills/rclone-cli/references/union.md +336 -0
- package/bundled-skills/rclone-cli/references/usage.md +3555 -0
- package/bundled-skills/rclone-cli/scripts/install.sh +204 -0
- package/bundled-skills/redis-cli/SKILL.md +392 -0
- package/bundled-skills/redis-cli/references/advanced-features.md +338 -0
- package/bundled-skills/redis-cli/references/connection-and-options.md +258 -0
- package/bundled-skills/redis-cli/references/data-query-commands.md +417 -0
- package/bundled-skills/redis-cli/references/inspection-and-monitoring.md +309 -0
- package/bundled-skills/redis-cli/references/key-management.md +252 -0
- package/bundled-skills/redis-cli/references/module-data-types.md +429 -0
- package/bundled-skills/redis-cli/references/server-administration.md +366 -0
- package/bundled-skills/repo-maintainer/SKILL.md +480 -0
- package/bundled-skills/resolving-merge-conflicts/SKILL.md +32 -0
- package/bundled-skills/review-and-simplify-changes/SKILL.md +202 -0
- package/bundled-skills/review-swarm/SKILL.md +185 -0
- package/bundled-skills/review-swarm/agents/openai.yaml +4 -0
- package/bundled-skills/riffkit/SKILL.md +122 -0
- package/bundled-skills/robot-framework-skill/SKILL.md +153 -0
- package/bundled-skills/sdk-dx/README.md +39 -0
- package/bundled-skills/sdk-dx/SKILL.md +541 -0
- package/bundled-skills/security-and-hardening/SKILL.md +474 -0
- package/bundled-skills/selenium-skill/SKILL.md +258 -0
- package/bundled-skills/shipping-and-launch/SKILL.md +323 -0
- package/bundled-skills/smartui-skill/SKILL.md +149 -0
- package/bundled-skills/source-driven-development/SKILL.md +207 -0
- package/bundled-skills/spec-driven-development/SKILL.md +217 -0
- package/bundled-skills/styleseed-design-review/SKILL.md +126 -0
- package/bundled-skills/supabase/CHANGELOG.md +35 -0
- package/bundled-skills/supabase/SKILL.md +149 -0
- package/bundled-skills/supabase/assets/feedback-issue-template.md +17 -0
- package/bundled-skills/supabase/references/skill-feedback.md +17 -0
- package/bundled-skills/supabase-postgres-best-practices/CHANGELOG.md +29 -0
- package/bundled-skills/supabase-postgres-best-practices/SKILL.md +74 -0
- package/bundled-skills/supabase-postgres-best-practices/references/_contributing.md +170 -0
- package/bundled-skills/supabase-postgres-best-practices/references/_sections.md +39 -0
- package/bundled-skills/supabase-postgres-best-practices/references/_template.md +34 -0
- package/bundled-skills/supabase-postgres-best-practices/references/advanced-full-text-search.md +55 -0
- package/bundled-skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md +49 -0
- package/bundled-skills/supabase-postgres-best-practices/references/conn-idle-timeout.md +46 -0
- package/bundled-skills/supabase-postgres-best-practices/references/conn-limits.md +44 -0
- package/bundled-skills/supabase-postgres-best-practices/references/conn-pooling.md +41 -0
- package/bundled-skills/supabase-postgres-best-practices/references/conn-prepared-statements.md +46 -0
- package/bundled-skills/supabase-postgres-best-practices/references/data-batch-inserts.md +54 -0
- package/bundled-skills/supabase-postgres-best-practices/references/data-n-plus-one.md +53 -0
- package/bundled-skills/supabase-postgres-best-practices/references/data-pagination.md +50 -0
- package/bundled-skills/supabase-postgres-best-practices/references/data-upsert.md +50 -0
- package/bundled-skills/supabase-postgres-best-practices/references/lock-advisory.md +56 -0
- package/bundled-skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md +68 -0
- package/bundled-skills/supabase-postgres-best-practices/references/lock-short-transactions.md +50 -0
- package/bundled-skills/supabase-postgres-best-practices/references/lock-skip-locked.md +54 -0
- package/bundled-skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md +45 -0
- package/bundled-skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md +55 -0
- package/bundled-skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md +55 -0
- package/bundled-skills/supabase-postgres-best-practices/references/query-composite-indexes.md +44 -0
- package/bundled-skills/supabase-postgres-best-practices/references/query-covering-indexes.md +40 -0
- package/bundled-skills/supabase-postgres-best-practices/references/query-index-types.md +48 -0
- package/bundled-skills/supabase-postgres-best-practices/references/query-missing-indexes.md +43 -0
- package/bundled-skills/supabase-postgres-best-practices/references/query-partial-indexes.md +45 -0
- package/bundled-skills/supabase-postgres-best-practices/references/schema-constraints.md +80 -0
- package/bundled-skills/supabase-postgres-best-practices/references/schema-data-types.md +46 -0
- package/bundled-skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md +59 -0
- package/bundled-skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md +55 -0
- package/bundled-skills/supabase-postgres-best-practices/references/schema-partitioning.md +55 -0
- package/bundled-skills/supabase-postgres-best-practices/references/schema-primary-keys.md +61 -0
- package/bundled-skills/supabase-postgres-best-practices/references/security-privileges.md +54 -0
- package/bundled-skills/supabase-postgres-best-practices/references/security-rls-basics.md +50 -0
- package/bundled-skills/supabase-postgres-best-practices/references/security-rls-performance.md +63 -0
- package/bundled-skills/swiftui-expert-skill/SKILL.md +175 -242
- package/bundled-skills/swiftui-expert-skill/references/accessibility-patterns.md +215 -0
- package/bundled-skills/swiftui-expert-skill/references/animation-advanced.md +428 -0
- package/bundled-skills/swiftui-expert-skill/references/animation-basics.md +284 -0
- package/bundled-skills/swiftui-expert-skill/references/animation-transitions.md +326 -0
- package/bundled-skills/swiftui-expert-skill/references/charts-accessibility.md +135 -0
- package/bundled-skills/swiftui-expert-skill/references/charts.md +602 -0
- package/bundled-skills/swiftui-expert-skill/references/focus-patterns.md +299 -0
- package/bundled-skills/swiftui-expert-skill/references/image-optimization.md +203 -0
- package/bundled-skills/swiftui-expert-skill/references/latest-apis.md +528 -0
- package/bundled-skills/swiftui-expert-skill/references/layout-best-practices.md +266 -0
- package/bundled-skills/swiftui-expert-skill/references/liquid-glass.md +423 -0
- package/bundled-skills/swiftui-expert-skill/references/list-patterns.md +467 -0
- package/bundled-skills/swiftui-expert-skill/references/localization.md +194 -0
- package/bundled-skills/swiftui-expert-skill/references/macos-scenes.md +318 -0
- package/bundled-skills/swiftui-expert-skill/references/macos-views.md +357 -0
- package/bundled-skills/swiftui-expert-skill/references/macos-window-styling.md +303 -0
- package/bundled-skills/swiftui-expert-skill/references/performance-patterns.md +417 -0
- package/bundled-skills/swiftui-expert-skill/references/previews.md +313 -0
- package/bundled-skills/swiftui-expert-skill/references/scroll-patterns.md +293 -0
- package/bundled-skills/swiftui-expert-skill/references/sheet-navigation-patterns.md +363 -0
- package/bundled-skills/swiftui-expert-skill/references/soft-deprecation.md +39 -0
- package/bundled-skills/swiftui-expert-skill/references/state-management.md +492 -0
- package/bundled-skills/swiftui-expert-skill/references/text-patterns.md +34 -0
- package/bundled-skills/swiftui-expert-skill/references/trace-analysis.md +295 -0
- package/bundled-skills/swiftui-expert-skill/references/trace-recording.md +134 -0
- package/bundled-skills/swiftui-expert-skill/references/view-structure.md +854 -0
- package/bundled-skills/swiftui-expert-skill/scripts/analyze_trace.py +301 -0
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/__init__.py +1 -0
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/causes.py +187 -0
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/correlate.py +179 -0
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/events.py +291 -0
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/hangs.py +108 -0
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/hitches.py +145 -0
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/summary.py +243 -0
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/swiftui.py +195 -0
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/time_profiler.py +135 -0
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/xctrace.py +117 -0
- package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/xml_utils.py +224 -0
- package/bundled-skills/swiftui-expert-skill/scripts/record_trace.py +252 -0
- package/bundled-skills/technical-tutorials/README.md +90 -0
- package/bundled-skills/technical-tutorials/SKILL.md +581 -0
- package/bundled-skills/test-framework-migration-skill/SKILL.md +122 -0
- package/bundled-skills/testng-skill/SKILL.md +163 -0
- package/bundled-skills/train-sentence-transformers/SKILL.md +118 -0
- package/bundled-skills/train-sentence-transformers/references/base_model_selection.md +79 -0
- package/bundled-skills/train-sentence-transformers/references/dataset_formats.md +128 -0
- package/bundled-skills/train-sentence-transformers/references/evaluators_cross_encoder.md +116 -0
- package/bundled-skills/train-sentence-transformers/references/evaluators_sentence_transformer.md +151 -0
- package/bundled-skills/train-sentence-transformers/references/evaluators_sparse_encoder.md +121 -0
- package/bundled-skills/train-sentence-transformers/references/hardware_guide.md +105 -0
- package/bundled-skills/train-sentence-transformers/references/hf_jobs_execution.md +173 -0
- package/bundled-skills/train-sentence-transformers/references/losses_cross_encoder.md +137 -0
- package/bundled-skills/train-sentence-transformers/references/losses_sentence_transformer.md +246 -0
- package/bundled-skills/train-sentence-transformers/references/losses_sparse_encoder.md +106 -0
- package/bundled-skills/train-sentence-transformers/references/model_architectures.md +178 -0
- package/bundled-skills/train-sentence-transformers/references/prompts_and_instructions.md +160 -0
- package/bundled-skills/train-sentence-transformers/references/training_args.md +269 -0
- package/bundled-skills/train-sentence-transformers/references/troubleshooting.md +225 -0
- package/bundled-skills/train-sentence-transformers/scripts/mine_hard_negatives.py +199 -0
- package/bundled-skills/train-sentence-transformers/scripts/train_cross_encoder_distillation_example.py +254 -0
- package/bundled-skills/train-sentence-transformers/scripts/train_cross_encoder_example.py +253 -0
- package/bundled-skills/train-sentence-transformers/scripts/train_cross_encoder_listwise_example.py +282 -0
- package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_distillation_example.py +303 -0
- package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_example.py +227 -0
- package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_make_multilingual_example.py +308 -0
- package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_matryoshka_example.py +212 -0
- package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_multi_dataset_example.py +258 -0
- package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_static_embedding_example.py +273 -0
- package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_with_lora_example.py +275 -0
- package/bundled-skills/train-sentence-transformers/scripts/train_sparse_encoder_distillation_example.py +262 -0
- package/bundled-skills/train-sentence-transformers/scripts/train_sparse_encoder_example.py +237 -0
- package/bundled-skills/transformers-js/SKILL.md +83 -29
- package/bundled-skills/transformers-js/references/CONFIGURATION.md +55 -7
- package/bundled-skills/transformers-js/references/EXAMPLES.md +98 -83
- package/bundled-skills/transformers-js/references/MODEL_REGISTRY.md +197 -0
- package/bundled-skills/transformers-js/references/PIPELINE_OPTIONS.md +31 -19
- package/bundled-skills/transformers-js/references/TEXT_GENERATION.md +18 -18
- package/bundled-skills/trl-training/SKILL.md +327 -0
- package/bundled-skills/tune-monitor/SKILL.md +268 -0
- package/bundled-skills/ui-a11y/SKILL.md +76 -68
- package/bundled-skills/ui-component/SKILL.md +54 -82
- package/bundled-skills/ui-lint/SKILL.md +111 -0
- package/bundled-skills/ui-motion/SKILL.md +181 -0
- package/bundled-skills/ui-page/SKILL.md +80 -90
- package/bundled-skills/ui-pattern/SKILL.md +50 -68
- package/bundled-skills/ui-review/SKILL.md +95 -77
- package/bundled-skills/ui-score/SKILL.md +145 -0
- package/bundled-skills/ui-setup/SKILL.md +196 -88
- package/bundled-skills/ui-skills-root/SKILL.md +72 -0
- package/bundled-skills/ui-tokens/SKILL.md +44 -52
- package/bundled-skills/ui-update/SKILL.md +167 -0
- package/bundled-skills/unslop-commit/SKILL.md +113 -0
- package/bundled-skills/unslop-file/SKILL.md +157 -0
- package/bundled-skills/unslop-review/SKILL.md +102 -0
- package/bundled-skills/update-swiftui-apis/SKILL.md +120 -0
- package/bundled-skills/update-swiftui-apis/references/scan-manifest.md +230 -0
- package/bundled-skills/upgrading-expo/SKILL.md +107 -82
- package/bundled-skills/upgrading-expo/agents/openai.yaml +4 -0
- package/bundled-skills/upgrading-expo/references/expo-av-to-audio.md +132 -0
- package/bundled-skills/upgrading-expo/references/expo-av-to-video.md +160 -0
- package/bundled-skills/upgrading-expo/references/native-tabs.md +124 -0
- package/bundled-skills/upgrading-expo/references/new-architecture.md +79 -0
- package/bundled-skills/upgrading-expo/references/react-19.md +79 -0
- package/bundled-skills/upgrading-expo/references/react-compiler.md +59 -0
- package/bundled-skills/upgrading-expo/references/react-navigation-to-expo-router.md +61 -0
- package/bundled-skills/usage-based-pricing/README.md +40 -0
- package/bundled-skills/usage-based-pricing/SKILL.md +547 -0
- package/bundled-skills/use-dom/SKILL.md +428 -0
- package/bundled-skills/use-dom/agents/openai.yaml +4 -0
- package/bundled-skills/ux-audit/SKILL.md +112 -44
- package/bundled-skills/ux-copy/SKILL.md +105 -73
- package/bundled-skills/ux-feedback/SKILL.md +106 -58
- package/bundled-skills/ux-flow/SKILL.md +51 -50
- package/bundled-skills/vitest-skill/SKILL.md +165 -0
- package/bundled-skills/weaviate/scripts/weaviate_conn.py +16 -6
- package/bundled-skills/webdriverio-skill/SKILL.md +157 -0
- package/bundled-skills/wjttc-builder/SKILL.md +355 -0
- package/bundled-skills/wjttc-tester/SKILL.md +190 -0
- package/package.json +1 -1
- package/skills_index.json +4320 -132
|
@@ -0,0 +1,342 @@
|
|
|
1
|
+
# EAS Observe CLI
|
|
2
|
+
|
|
3
|
+
EAS Observe collects app performance telemetry and custom events from Expo apps and exposes them through five EAS CLI commands. Pass the `--help` flag to any command for the latest API.
|
|
4
|
+
|
|
5
|
+
## Commands Overview
|
|
6
|
+
|
|
7
|
+
| Command | Purpose |
|
|
8
|
+
|---------|---------|
|
|
9
|
+
| `eas observe:metrics-summary` | Per-version statistical aggregates for app-startup performance metrics (median, p90, etc.) |
|
|
10
|
+
| `eas observe:metrics` | Individual performance metric samples ordered by value or timestamp (paginated) |
|
|
11
|
+
| `eas observe:routes` | Per-route statistical aggregates for navigation metrics (Cold TTR, Warm TTR, Nav TTI) |
|
|
12
|
+
| `eas observe:events` | Custom events emitted by the app via `logEvent` — name summary, all events, or filtered by event name (paginated) |
|
|
13
|
+
| `eas observe:versions` | App version hierarchy with build numbers, OTA update IDs, and event counts |
|
|
14
|
+
|
|
15
|
+
All five commands share these common flags:
|
|
16
|
+
|
|
17
|
+
- `--platform ios` or `--platform android` — filter by platform (default: both)
|
|
18
|
+
- `--start <ISO date>` and `--end <ISO date>` — explicit time range
|
|
19
|
+
- `--days <N>` — show data from the last N days (mutually exclusive with `--start`/`--end`)
|
|
20
|
+
- `--project-id <id>` — run against a specific project without needing a project directory. When passed, the command will not try to create a new EAS project where one is unneeded.
|
|
21
|
+
- `--json` — machine-readable output (implies `--non-interactive`)
|
|
22
|
+
- `--non-interactive` — fail instead of prompting
|
|
23
|
+
|
|
24
|
+
Default time range is the last 60 days when none of `--days`, `--start`, `--end` is given.
|
|
25
|
+
|
|
26
|
+
## Supported Metrics
|
|
27
|
+
|
|
28
|
+
### App-startup metrics
|
|
29
|
+
|
|
30
|
+
Used by `observe:metrics-summary` and `observe:metrics`.
|
|
31
|
+
|
|
32
|
+
| Alias | Full name | Display |
|
|
33
|
+
|-------|-----------|---------|
|
|
34
|
+
| `tti` | `expo.app_startup.tti` | Startup TTI (time to interactive) |
|
|
35
|
+
| `ttr` | `expo.app_startup.ttr` | Startup TTR (time to render) |
|
|
36
|
+
| `cold_launch` | `expo.app_startup.cold_launch_time` | Cold Launch |
|
|
37
|
+
| `warm_launch` | `expo.app_startup.warm_launch_time` | Warm Launch |
|
|
38
|
+
| `bundle_load` | `expo.app_startup.bundle_load_time` | Bundle Load |
|
|
39
|
+
| `update_download` | `expo.updates.download_time` | Update Download |
|
|
40
|
+
|
|
41
|
+
### Navigation metrics
|
|
42
|
+
|
|
43
|
+
Used by `observe:routes`. Measured per route name.
|
|
44
|
+
|
|
45
|
+
| Alias | Full name | Display |
|
|
46
|
+
|-------|-----------|---------|
|
|
47
|
+
| `cold_ttr` | `expo.navigation.cold_ttr` | Nav Cold TTR |
|
|
48
|
+
| `warm_ttr` | `expo.navigation.warm_ttr` | Nav Warm TTR |
|
|
49
|
+
| `nav_tti` | `expo.navigation.tti` | Nav TTI |
|
|
50
|
+
|
|
51
|
+
## `eas observe:metrics-summary`
|
|
52
|
+
|
|
53
|
+
Shows per-version statistical aggregates for one or more metrics, with separate tables per platform.
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
# All default metrics, last 60 days, both platforms
|
|
57
|
+
eas observe:metrics-summary
|
|
58
|
+
|
|
59
|
+
# Single metric
|
|
60
|
+
eas observe:metrics-summary --metric tti
|
|
61
|
+
|
|
62
|
+
# Multiple metrics — each renders as its own table
|
|
63
|
+
eas observe:metrics-summary --metric tti --metric cold_launch
|
|
64
|
+
|
|
65
|
+
# Choose which statistics to display
|
|
66
|
+
eas observe:metrics-summary --metric tti --stat median --stat p90 --stat eventCount
|
|
67
|
+
|
|
68
|
+
# Narrow time range and platform
|
|
69
|
+
eas observe:metrics-summary --metric tti --days 14 --platform ios
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
**Stat flags:** `min`, `max`, `median` (alias `med`), `average` (alias `avg`), `p80`, `p90`, `p99`, `eventCount` (alias `count`).
|
|
73
|
+
|
|
74
|
+
**Default stats:** `median` + `eventCount` in the table; all stats in JSON.
|
|
75
|
+
|
|
76
|
+
**Table layout:**
|
|
77
|
+
- One table per metric (with merged value + event count cells, e.g. `0.45s (150)`)
|
|
78
|
+
- Each table shows iOS and Android in separate sections
|
|
79
|
+
- App Version column includes build numbers in parentheses (e.g. `1.2.0 (42)`)
|
|
80
|
+
- Footer row per platform shows total events per metric
|
|
81
|
+
- **Update IDs are omitted from the table** to keep output readable when a version has many updates; they are included in the JSON output as an array per version
|
|
82
|
+
|
|
83
|
+
**JSON output shape:**
|
|
84
|
+
```json
|
|
85
|
+
{
|
|
86
|
+
"versions": [
|
|
87
|
+
{
|
|
88
|
+
"appVersion": "1.2.0",
|
|
89
|
+
"platform": "IOS",
|
|
90
|
+
"buildNumbers": ["42"],
|
|
91
|
+
"updateIds": ["abc-def-...", "..."],
|
|
92
|
+
"metrics": {
|
|
93
|
+
"expo.app_startup.tti": { "median": 0.45, "p90": 0.9, "...": "..." }
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
],
|
|
97
|
+
"totalEventCounts": {
|
|
98
|
+
"expo.app_startup.tti": { "IOS": 1234, "ANDROID": 890 }
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## `eas observe:metrics`
|
|
104
|
+
|
|
105
|
+
Shows individual performance metric samples, paginated. The metric is a positional argument, not a flag. If omitted and running interactively, prompts for selection; in non-interactive mode it throws an error.
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
# Interactive: prompts for metric
|
|
109
|
+
eas observe:metrics
|
|
110
|
+
|
|
111
|
+
# Specify metric as positional arg
|
|
112
|
+
eas observe:metrics tti
|
|
113
|
+
|
|
114
|
+
# Filter by version or update, sort by slowest
|
|
115
|
+
eas observe:metrics tti --app-version 1.2.0 --sort slowest --limit 20
|
|
116
|
+
|
|
117
|
+
# Pagination — pass the endCursor from the previous run
|
|
118
|
+
eas observe:metrics tti --after <cursor>
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
**Sample-specific flags:**
|
|
122
|
+
- `--sort <oldest|newest|slowest|fastest>` — defaults to `oldest`
|
|
123
|
+
- `--limit <N>` — samples per page (default 10, max 100)
|
|
124
|
+
- `--after <cursor>` — pagination cursor from the previous run
|
|
125
|
+
- `--app-version <version>` — filter by app version string
|
|
126
|
+
- `--update-id <id>` — filter by EAS update ID
|
|
127
|
+
|
|
128
|
+
**Table layout:**
|
|
129
|
+
- Summary header shows the metric name, time range, and total sample count across all versions (e.g. `TTI samples for the last 60 days — 1,234 total events`)
|
|
130
|
+
- Columns: Value, App Version (with build number), Update (only when any sample has one), Platform, Device, Country, Timestamp
|
|
131
|
+
- When `hasNextPage` is true, prints `Next page: --after <endCursor>` hint below the table
|
|
132
|
+
- JSON output also includes `sessionId`, `easClientId`, and a `customParams` object per sample
|
|
133
|
+
|
|
134
|
+
## `eas observe:routes`
|
|
135
|
+
|
|
136
|
+
Shows per-route statistical aggregates for navigation metrics (Cold TTR, Warm TTR, Nav TTI), grouped by route name with separate sections per platform.
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
# All three navigation metrics, default stats, last 60 days, both platforms
|
|
140
|
+
eas observe:routes
|
|
141
|
+
|
|
142
|
+
# Single metric, last 7 days, iOS only
|
|
143
|
+
eas observe:routes --metric nav_tti --days 7 --platform ios
|
|
144
|
+
|
|
145
|
+
# Multiple metrics and stats
|
|
146
|
+
eas observe:routes --metric cold_ttr --metric warm_ttr --stat median --stat p90 --stat count
|
|
147
|
+
|
|
148
|
+
# Filter to a single build
|
|
149
|
+
eas observe:routes --app-version 1.2.0 --build-number 42
|
|
150
|
+
|
|
151
|
+
# Narrow to specific routes (repeat the flag for multiple routes)
|
|
152
|
+
eas observe:routes --route-name /new --route-name /settings
|
|
153
|
+
|
|
154
|
+
# Pagination — each platform has its own cursor; pass the relevant endCursor
|
|
155
|
+
eas observe:routes --after <cursor>
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
**Routes-specific flags:**
|
|
159
|
+
- `--metric <cold_ttr|warm_ttr|nav_tti>` — navigation metric(s) to display, can be repeated. Defaults to all three.
|
|
160
|
+
- `--stat <median|p90|count>` — statistic(s) per metric. Aliases: `med` → `median`, `event_count` / `eventCount` → `count`.
|
|
161
|
+
- `--limit <N>` — routes per page (default **50**, max **200**, different from `metrics`/`events` which default to 10).
|
|
162
|
+
- `--after <cursor>` — pagination cursor from the previous run.
|
|
163
|
+
- `--app-version <version>` — filter by app version string.
|
|
164
|
+
- `--build-number <number>` — filter by app build number (routes-only).
|
|
165
|
+
- `--route-name <name>` — filter by route name. Repeatable; only the listed routes are returned across both platforms. Duplicates are de-duplicated; omitting the flag returns all routes.
|
|
166
|
+
- `--update-id <id>` — filter by EAS update ID.
|
|
167
|
+
|
|
168
|
+
**Default stats:** `median` + `count` in the table; `median`, `p90`, `count` in JSON.
|
|
169
|
+
|
|
170
|
+
**Table layout:**
|
|
171
|
+
- Summary header with the chosen stats and time range, e.g. `Med, P90 values (navigation count) for the last 7 days`.
|
|
172
|
+
- Separate iOS and Android sections.
|
|
173
|
+
- First column is **Route**, followed by one column per metric/stat. With both display stats and `count`, cells are merged like `0.32s (1240)`.
|
|
174
|
+
- Each platform has its own pagination hint: `Next page (iOS): --after <endCursor>`.
|
|
175
|
+
|
|
176
|
+
**JSON output shape:**
|
|
177
|
+
```json
|
|
178
|
+
{
|
|
179
|
+
"routes": [
|
|
180
|
+
{
|
|
181
|
+
"routeName": "(tabs)/home",
|
|
182
|
+
"platform": "IOS",
|
|
183
|
+
"metrics": {
|
|
184
|
+
"expo.navigation.cold_ttr": { "median": 0.32, "p90": 0.85, "count": 1240 },
|
|
185
|
+
"expo.navigation.tti": { "median": 0.55, "p90": 1.10, "count": 1240 }
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
],
|
|
189
|
+
"pageInfoByPlatform": {
|
|
190
|
+
"IOS": { "hasNextPage": true, "endCursor": "..." },
|
|
191
|
+
"ANDROID": { "hasNextPage": false, "endCursor": null }
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
## `eas observe:events`
|
|
197
|
+
|
|
198
|
+
Shows custom events emitted by the app via the `logEvent` API in `expo-observe`. Behavior depends on what is passed:
|
|
199
|
+
|
|
200
|
+
| Invocation | Result |
|
|
201
|
+
|---|---|
|
|
202
|
+
| `observe:events` | Summary table of available event names with counts |
|
|
203
|
+
| `observe:events --all-events` | Full list of events across **all** event names |
|
|
204
|
+
| `observe:events <event-name>` | Full list of events filtered by that event name |
|
|
205
|
+
|
|
206
|
+
```bash
|
|
207
|
+
# List the available custom event names and their counts (last 60 days)
|
|
208
|
+
eas observe:events
|
|
209
|
+
|
|
210
|
+
# All events across all names, last 7 days, iOS only
|
|
211
|
+
eas observe:events --all-events --days 7 --platform ios
|
|
212
|
+
|
|
213
|
+
# Only events with the given name
|
|
214
|
+
eas observe:events login_failed --limit 50
|
|
215
|
+
|
|
216
|
+
# Drill into a single session
|
|
217
|
+
eas observe:events --all-events --session-id <session-id>
|
|
218
|
+
|
|
219
|
+
# Pagination
|
|
220
|
+
eas observe:events login_failed --after <cursor>
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
**Events-specific flags:**
|
|
224
|
+
- `--all-events` — when no event name argument is given, list all events instead of the name summary. Cannot be combined with an event name argument.
|
|
225
|
+
- `--session-id <id>` — filter to events from a single session (events-only)
|
|
226
|
+
- `--app-version <version>` — filter by app version string
|
|
227
|
+
- `--update-id <id>` — filter by EAS update ID
|
|
228
|
+
- `--limit <N>` — events per page (default 10, max 100)
|
|
229
|
+
- `--after <cursor>` — pagination cursor
|
|
230
|
+
|
|
231
|
+
**Table layout (event listings):**
|
|
232
|
+
- Summary header: `<event-name> events <time range>` or `Custom events <time range>` for `--all-events`, with a total event count when available
|
|
233
|
+
- Columns: Timestamp, Event (only when listing across multiple names), Severity (only when at least one event in the page has a severity), App Version (with build number), Platform, Device, Country
|
|
234
|
+
- `Next page: --after <endCursor>` hint below the table when there is a next page
|
|
235
|
+
|
|
236
|
+
**Empty-result helper:** if a specific event name is queried and returns no events, the command prints a yellow `No events found matching "<name>"` warning followed by the available event names + counts in the same time range — useful for fixing typos.
|
|
237
|
+
|
|
238
|
+
**Truncation note:** the event-names summary may flag `Result is truncated; not all event names are shown.` when there are more names than the server returns in a single response.
|
|
239
|
+
|
|
240
|
+
**JSON output shape (event listing):**
|
|
241
|
+
```json
|
|
242
|
+
{
|
|
243
|
+
"events": [
|
|
244
|
+
{
|
|
245
|
+
"id": "...",
|
|
246
|
+
"eventName": "login_failed",
|
|
247
|
+
"timestamp": "2026-...",
|
|
248
|
+
"sessionId": "...",
|
|
249
|
+
"severityNumber": 13,
|
|
250
|
+
"severityText": "WARN",
|
|
251
|
+
"properties": [{ "key": "reason", "value": "bad_password", "type": "string" }],
|
|
252
|
+
"appVersion": "1.2.0",
|
|
253
|
+
"appBuildNumber": "42",
|
|
254
|
+
"appUpdateId": null,
|
|
255
|
+
"appEasBuildId": null,
|
|
256
|
+
"deviceModel": "...",
|
|
257
|
+
"deviceOs": "iOS",
|
|
258
|
+
"deviceOsVersion": "17.4",
|
|
259
|
+
"countryCode": "US",
|
|
260
|
+
"environment": "production",
|
|
261
|
+
"easClientId": "..."
|
|
262
|
+
}
|
|
263
|
+
],
|
|
264
|
+
"pageInfo": { "hasNextPage": true, "endCursor": "..." }
|
|
265
|
+
}
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
The name-summary mode returns `{ "names": [{ "eventName": "...", "count": 123 }], "isTruncated": false }`.
|
|
269
|
+
|
|
270
|
+
## `eas observe:versions`
|
|
271
|
+
|
|
272
|
+
Shows app version hierarchy with build numbers, OTA update IDs, and event counts per version.
|
|
273
|
+
|
|
274
|
+
```bash
|
|
275
|
+
# Both platforms, last 60 days
|
|
276
|
+
eas observe:versions
|
|
277
|
+
|
|
278
|
+
# iOS only, last 14 days
|
|
279
|
+
eas observe:versions --days 14 --platform ios
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
No metric-related flags. Output shows separate iOS and Android tables with columns: **App Version, First Seen, Events, Users, Builds (count), Updates (count)**.
|
|
283
|
+
|
|
284
|
+
JSON output returns the full nested hierarchy with `buildNumbers[].easBuilds[]` and `updates[].easBuilds[]`, including `firstSeenAt`, `eventCount`, and `uniqueUserCount` at every level.
|
|
285
|
+
|
|
286
|
+
## Common Workflows
|
|
287
|
+
|
|
288
|
+
**"What are my app's startup times right now?"**
|
|
289
|
+
```bash
|
|
290
|
+
eas observe:metrics-summary --days 7 --stat median --stat p90
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
**"Which TTI samples were slowest this week?"**
|
|
294
|
+
```bash
|
|
295
|
+
eas observe:metrics tti --sort slowest --days 7 --limit 20
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
**"How fast are over-the-air updates downloading in the field?"**
|
|
299
|
+
```bash
|
|
300
|
+
eas observe:metrics-summary --metric update_download --days 7
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
**"Which screens are slowest to navigate to?"**
|
|
304
|
+
```bash
|
|
305
|
+
eas observe:routes --metric nav_tti --stat median --stat p90 --days 7
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
**"How does navigation perform on just the routes I care about?"**
|
|
309
|
+
```bash
|
|
310
|
+
eas observe:routes --route-name /home --route-name /checkout --days 7
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
**"What custom events is my app emitting?"**
|
|
314
|
+
```bash
|
|
315
|
+
eas observe:events --days 7
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
**"Show me every error event from one user's session."**
|
|
319
|
+
```bash
|
|
320
|
+
eas observe:events --all-events --session-id <session-id>
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
**"What versions of my app are in the field?"**
|
|
324
|
+
```bash
|
|
325
|
+
eas observe:versions
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
**"Show me metrics for a specific project without needing to be in the repo"**
|
|
329
|
+
```bash
|
|
330
|
+
eas observe:metrics-summary --project-id <uuid> --metric tti
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
**"Get JSON for scripting"**
|
|
334
|
+
```bash
|
|
335
|
+
eas observe:metrics-summary --metric tti --json --non-interactive
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
## Notes
|
|
339
|
+
|
|
340
|
+
- Requires the user to be logged in (`eas login`).
|
|
341
|
+
- When `--project-id` is provided, the command does not require running inside an EAS project directory; otherwise the project ID is read from the local `app.config` / `app.json`. If using this option, ensure that you are logged in as a user that has access to the specified project.
|
|
342
|
+
- `observe:metrics-summary` does not print update IDs in the table but still returns them in JSON for scripting or piping into other commands.
|
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
# Set up EAS Observe in an existing project
|
|
2
|
+
|
|
3
|
+
EAS Observe collects app-startup performance metrics (cold launch, warm launch, bundle load, TTR, TTI) from production Expo apps. This reference summarizes the steps to add `expo-observe` to an existing project.
|
|
4
|
+
|
|
5
|
+
> Source: https://docs.expo.dev/eas/observe/get-started/ — consult this page for the latest guidance.
|
|
6
|
+
|
|
7
|
+
## SDK 55 vs SDK 56+ at a glance
|
|
8
|
+
|
|
9
|
+
The library exports differ between SDK versions. Pick the right one for the project's SDK before copying any snippet below.
|
|
10
|
+
|
|
11
|
+
| Concern | SDK 55 | SDK 56 and later |
|
|
12
|
+
|---|---|---|
|
|
13
|
+
| Root layout HOC | `AppMetricsRoot.wrap(...)` | `ObserveRoot.wrap(...)` |
|
|
14
|
+
| `markInteractive()` API | Global: `AppMetrics.markInteractive()` | Hook: `const { markInteractive } = useObserve()` |
|
|
15
|
+
| Import source | `expo-observe` | `expo-observe` (same package) |
|
|
16
|
+
|
|
17
|
+
Everything else — package name, build process, dashboard, debug-mode behavior — is the same across versions.
|
|
18
|
+
|
|
19
|
+
## Prerequisites
|
|
20
|
+
|
|
21
|
+
Before installing, confirm all of the following:
|
|
22
|
+
|
|
23
|
+
1. **An Expo account.** Sign up at [expo.dev/signup](https://expo.dev/signup) if needed.
|
|
24
|
+
2. **Expo SDK 55 or later.** Run `npx expo-doctor` to check, and `npx expo install --fix` to update dependencies. SDK 56+ unlocks the newer `ObserveRoot` / `useObserve` API.
|
|
25
|
+
3. **An EAS project.** The app must have `extra.eas.projectId` set in its app config. If not, run `eas init` to create one.
|
|
26
|
+
|
|
27
|
+
## Step 1 — Install the library
|
|
28
|
+
|
|
29
|
+
From the project root:
|
|
30
|
+
|
|
31
|
+
```sh
|
|
32
|
+
npx expo install --fix
|
|
33
|
+
npx expo install expo-observe
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Step 2 — Wrap the root layout
|
|
37
|
+
|
|
38
|
+
The HOC automatically measures **Time to First Render (TTR)**. Apply it to the file that exports the app's root component. The HOC name depends on the SDK version.
|
|
39
|
+
|
|
40
|
+
**SDK 55** — use `AppMetricsRoot`:
|
|
41
|
+
|
|
42
|
+
```tsx
|
|
43
|
+
// app/_layout.tsx
|
|
44
|
+
import { Stack } from 'expo-router';
|
|
45
|
+
import { AppMetricsRoot } from 'expo-observe';
|
|
46
|
+
|
|
47
|
+
function RootLayout() {
|
|
48
|
+
return <Stack />;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export default AppMetricsRoot.wrap(RootLayout);
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
**SDK 56 and later** — use `ObserveRoot`:
|
|
55
|
+
|
|
56
|
+
```tsx
|
|
57
|
+
// app/_layout.tsx
|
|
58
|
+
import { Stack } from 'expo-router';
|
|
59
|
+
import { ObserveRoot } from 'expo-observe';
|
|
60
|
+
|
|
61
|
+
function RootLayout() {
|
|
62
|
+
return <Stack />;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export default ObserveRoot.wrap(RootLayout);
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
**Without Expo Router** (`App.tsx`): wrap the default-exported `App` component the same way — `export default AppMetricsRoot.wrap(App);` on SDK 55, or `export default ObserveRoot.wrap(App);` on SDK 56+.
|
|
69
|
+
|
|
70
|
+
## Step 3 — Mark the app as interactive
|
|
71
|
+
|
|
72
|
+
TTI is **not** collected automatically. Signal it once the screen is genuinely ready for the user — i.e. after splash-screen-blocking work like update checks, authentication, initial data fetching, or splash animations finishes. Place the call in a `useEffect` that runs once that work resolves.
|
|
73
|
+
|
|
74
|
+
**SDK 55** — call the global `AppMetrics.markInteractive()`:
|
|
75
|
+
|
|
76
|
+
```tsx
|
|
77
|
+
// app/_layout.tsx
|
|
78
|
+
import { Stack } from 'expo-router';
|
|
79
|
+
import * as SplashScreen from 'expo-splash-screen';
|
|
80
|
+
import { AppMetrics, AppMetricsRoot } from 'expo-observe';
|
|
81
|
+
import { useEffect, useState } from 'react';
|
|
82
|
+
|
|
83
|
+
SplashScreen.preventAutoHideAsync();
|
|
84
|
+
|
|
85
|
+
function RootLayout() {
|
|
86
|
+
const [isReady, setIsReady] = useState(false);
|
|
87
|
+
|
|
88
|
+
useEffect(() => {
|
|
89
|
+
async function prepare() {
|
|
90
|
+
try {
|
|
91
|
+
await authenticateUser();
|
|
92
|
+
await fetchInitialData();
|
|
93
|
+
} catch (e) {
|
|
94
|
+
console.warn(e);
|
|
95
|
+
} finally {
|
|
96
|
+
setIsReady(true);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
prepare();
|
|
100
|
+
}, []);
|
|
101
|
+
|
|
102
|
+
useEffect(() => {
|
|
103
|
+
if (isReady) {
|
|
104
|
+
SplashScreen.hide();
|
|
105
|
+
AppMetrics.markInteractive();
|
|
106
|
+
}
|
|
107
|
+
}, [isReady]);
|
|
108
|
+
|
|
109
|
+
if (!isReady) return null;
|
|
110
|
+
return <Stack />;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export default AppMetricsRoot.wrap(RootLayout);
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
**SDK 56 and later** — use the `useObserve()` hook to get a bound `markInteractive`:
|
|
117
|
+
|
|
118
|
+
```tsx
|
|
119
|
+
// app/_layout.tsx
|
|
120
|
+
import { Stack } from 'expo-router';
|
|
121
|
+
import * as SplashScreen from 'expo-splash-screen';
|
|
122
|
+
import { ObserveRoot, useObserve } from 'expo-observe';
|
|
123
|
+
import { useEffect, useState } from 'react';
|
|
124
|
+
|
|
125
|
+
SplashScreen.preventAutoHideAsync();
|
|
126
|
+
|
|
127
|
+
function RootLayout() {
|
|
128
|
+
const [isReady, setIsReady] = useState(false);
|
|
129
|
+
const { markInteractive } = useObserve();
|
|
130
|
+
|
|
131
|
+
useEffect(() => {
|
|
132
|
+
async function prepare() {
|
|
133
|
+
try {
|
|
134
|
+
await authenticateUser();
|
|
135
|
+
await fetchInitialData();
|
|
136
|
+
} catch (e) {
|
|
137
|
+
console.warn(e);
|
|
138
|
+
} finally {
|
|
139
|
+
setIsReady(true);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
prepare();
|
|
143
|
+
}, []);
|
|
144
|
+
|
|
145
|
+
useEffect(() => {
|
|
146
|
+
if (isReady) {
|
|
147
|
+
SplashScreen.hide();
|
|
148
|
+
markInteractive();
|
|
149
|
+
}
|
|
150
|
+
}, [isReady, markInteractive]);
|
|
151
|
+
|
|
152
|
+
if (!isReady) return null;
|
|
153
|
+
return <Stack />;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
export default ObserveRoot.wrap(RootLayout);
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
**Without Expo Router:** the structure is the same in `App.tsx`. Use `SplashScreen.hideAsync()` instead of `SplashScreen.hide()` and replace `<Stack />` with the app's root tree.
|
|
160
|
+
|
|
161
|
+
### Multiple entry screens
|
|
162
|
+
|
|
163
|
+
`markInteractive()` is safe to call repeatedly — only the **first** call per session is recorded. If the app has more than one entry screen (onboarding, login, deep-link targets), call `markInteractive()` on **each one**. Otherwise TTI will be missing for sessions that open via a deep link to a screen without the call.
|
|
164
|
+
|
|
165
|
+
## Step 4 — Build the app
|
|
166
|
+
|
|
167
|
+
Metrics are collected from real builds, not from `expo start`:
|
|
168
|
+
|
|
169
|
+
```sh
|
|
170
|
+
eas build
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
> By default, metrics collected from **debug builds** are not dispatched. A build is treated as a debug build when either the native app is a debug build or the JS bundle is a development bundle (`__DEV__` is `true`). To dispatch anyway while testing the integration, set `dispatchInDebug: true` when calling `configure()` — see [Enable metrics in development](https://docs.expo.dev/eas/observe/configuration/#enable-metrics-in-development). This has no effect on release builds.
|
|
174
|
+
|
|
175
|
+
## Step 5 — View the metrics
|
|
176
|
+
|
|
177
|
+
Open the **Observe** tab in the EAS dashboard at `https://expo.dev/accounts/[account]/projects/[project]/observe` to view metrics from the app.
|
|
178
|
+
|
|
179
|
+
To query metrics from the terminal with the EAS CLI, see [`./queries.md`](./queries.md). For interpreting the metrics themselves, see [`./metrics.md`](./metrics.md).
|
|
180
|
+
|
|
181
|
+
## Optional — per-route navigation metrics (SDK 56+)
|
|
182
|
+
|
|
183
|
+
By default `expo-observe` records app-wide startup metrics only. To additionally get **per-route / per-screen** navigation metrics (`cold_ttr`, `warm_ttr`, and a per-navigation `tti`, each tagged with the route/screen), enable one of the navigation integrations. These require **SDK 56 or later**; on earlier SDKs they are silent no-ops. Query the resulting data with `eas observe:routes` (see [`./queries.md`](./queries.md)).
|
|
184
|
+
|
|
185
|
+
Pick the integration that matches the app's router:
|
|
186
|
+
|
|
187
|
+
### Expo Router
|
|
188
|
+
|
|
189
|
+
Docs: https://docs.expo.dev/eas/observe/integrations/expo-router/
|
|
190
|
+
|
|
191
|
+
1. Enable the integration at module scope, **before any screen mounts** (it cannot be toggled at runtime — calling `configure()` after mount throws):
|
|
192
|
+
|
|
193
|
+
```tsx
|
|
194
|
+
// app/_layout.tsx
|
|
195
|
+
import { Observe } from 'expo-observe';
|
|
196
|
+
|
|
197
|
+
Observe.configure({
|
|
198
|
+
integrations: { 'expo-router': true },
|
|
199
|
+
});
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
2. Call `useObserve()` inside each screen to get a `markInteractive` scoped to the current route, and call it from a `useEffect` once the screen is interactive:
|
|
203
|
+
|
|
204
|
+
```tsx
|
|
205
|
+
import { useObserve } from 'expo-observe';
|
|
206
|
+
import { useEffect } from 'react';
|
|
207
|
+
|
|
208
|
+
export default function Home() {
|
|
209
|
+
const { markInteractive } = useObserve();
|
|
210
|
+
useEffect(() => {
|
|
211
|
+
markInteractive();
|
|
212
|
+
}, [markInteractive]);
|
|
213
|
+
return (/* screen content */);
|
|
214
|
+
}
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
Events are tagged with the route **pattern** (e.g. `/(tabs)/sessions/[sessionId]`) so the dashboard buckets distinct param values together; the resolved `url` and `routeParams` are also included. Requires `expo-router` installed at runtime, or the integration no-ops.
|
|
218
|
+
|
|
219
|
+
### React Navigation
|
|
220
|
+
|
|
221
|
+
Docs: https://docs.expo.dev/eas/observe/integrations/react-navigation/
|
|
222
|
+
|
|
223
|
+
Requires `@react-navigation/native` 7.0.0 or later. Same `useObserve()` screen usage as above, plus **two** extra changes:
|
|
224
|
+
|
|
225
|
+
1. Enable the integration at module scope, before mount:
|
|
226
|
+
|
|
227
|
+
```tsx
|
|
228
|
+
// App.tsx
|
|
229
|
+
import { Observe } from 'expo-observe';
|
|
230
|
+
|
|
231
|
+
Observe.configure({
|
|
232
|
+
integrations: { 'react-navigation': true },
|
|
233
|
+
});
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
2. Replace the top-level `<NavigationContainer>` with `<ObserveNavigationContainer>` — a drop-in replacement that accepts the same props and forwards the same ref. If you pass a `linking` config it is used to resolve a human-readable screen path; otherwise the metric falls back to `route.name`.
|
|
237
|
+
|
|
238
|
+
```tsx
|
|
239
|
+
import { ObserveNavigationContainer } from 'expo-observe/integrations/react-navigation';
|
|
240
|
+
|
|
241
|
+
export default function App() {
|
|
242
|
+
return <ObserveNavigationContainer>{/* navigators */}</ObserveNavigationContainer>;
|
|
243
|
+
}
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
In both integrations, `useObserve()` is safe to leave in place even when the integration is disabled or the router package is absent — it falls back to the global `markInteractive`.
|
|
247
|
+
|
|
248
|
+
## Quick checklist
|
|
249
|
+
|
|
250
|
+
- [ ] SDK ≥ 55, EAS project linked.
|
|
251
|
+
- [ ] `expo-observe` installed via `npx expo install`.
|
|
252
|
+
- [ ] Root component exported through `AppMetricsRoot.wrap(...)` (SDK 55) or `ObserveRoot.wrap(...)` (SDK 56+).
|
|
253
|
+
- [ ] `markInteractive()` called from every entry screen once it is genuinely interactive — global `AppMetrics.markInteractive()` on SDK 55, or `useObserve()` hook on SDK 56+.
|
|
254
|
+
- [ ] (Optional, SDK 56+) Per-route metrics enabled via `Observe.configure({ integrations: { ... } })`, plus `<ObserveNavigationContainer>` for React Navigation.
|
|
255
|
+
- [ ] New build produced with `eas build` and metrics visible in the Observe dashboard.
|
|
@@ -2,19 +2,21 @@
|
|
|
2
2
|
name: expo-tailwind-setup
|
|
3
3
|
description: Set up Tailwind CSS v4 in Expo with react-native-css and NativeWind v5 for universal styling
|
|
4
4
|
risk: unknown
|
|
5
|
-
source:
|
|
6
|
-
|
|
5
|
+
source: https://github.com/expo/skills/tree/main/plugins/expo/skills/expo-tailwind-setup
|
|
6
|
+
source_repo: expo/skills
|
|
7
|
+
source_type: official
|
|
8
|
+
date_added: 2026-07-01
|
|
7
9
|
license: MIT
|
|
10
|
+
license_source: https://github.com/expo/skills/blob/main/LICENSE
|
|
8
11
|
---
|
|
9
12
|
|
|
10
13
|
# Tailwind CSS Setup for Expo with react-native-css
|
|
14
|
+
## When to Use
|
|
11
15
|
|
|
12
|
-
|
|
16
|
+
Use this skill when you need set up Tailwind CSS v4 in Expo with react-native-css and NativeWind v5 for universal styling.
|
|
13
17
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
- The task involves configuring Metro, PostCSS, global CSS, or package versions for Expo + Tailwind.
|
|
17
|
-
- You want one styling setup that works across iOS, Android, and web in an Expo project.
|
|
18
|
+
|
|
19
|
+
This guide covers setting up Tailwind CSS v4 in Expo using react-native-css and NativeWind v5 for universal styling across iOS, Android, and Web.
|
|
18
20
|
|
|
19
21
|
## Overview
|
|
20
22
|
|
|
@@ -487,6 +489,7 @@ type Props = React.ComponentProps<typeof RNView> & { className?: string };
|
|
|
487
489
|
```
|
|
488
490
|
|
|
489
491
|
## Limitations
|
|
490
|
-
|
|
491
|
-
-
|
|
492
|
-
-
|
|
492
|
+
|
|
493
|
+
- Use this skill only when the task clearly matches its upstream product or API scope.
|
|
494
|
+
- Verify commands, API behavior, pricing, quotas, credentials, and deployment effects against current official documentation before making changes.
|
|
495
|
+
- Do not treat generated examples as a substitute for environment-specific tests, security review, or user approval for destructive or costly actions.
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
interface:
|
|
2
|
+
display_name: "Expo Tailwind Setup"
|
|
3
|
+
short_description: "Set up Tailwind CSS v4, react-native-css, NativeWind v5, and CSS wrappers in Expo"
|
|
4
|
+
default_prompt: "Use $expo-tailwind-setup to install and configure Tailwind CSS v4 with Expo, NativeWind v5, react-native-css, Metro, PostCSS, global CSS, typed component wrappers, and theme variables."
|