opencode-skills-collection 4.0.53 → 4.0.54

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.
Files changed (1168) hide show
  1. package/bundled-skills/.antigravity-install-manifest.json +3 -2
  2. package/bundled-skills/00-andruia-consultant/SKILL.md +6 -0
  3. package/bundled-skills/007/SKILL.md +2 -610
  4. package/bundled-skills/007/references/detailed-guide.md +647 -0
  5. package/bundled-skills/10-andruia-skill-smith/SKILL.md +6 -0
  6. package/bundled-skills/20-andruia-niche-intelligence/SKILL.md +6 -0
  7. package/bundled-skills/2slides-ppt-generator/SKILL.md +2 -741
  8. package/bundled-skills/2slides-ppt-generator/references/detailed-guide.md +761 -0
  9. package/bundled-skills/ab-test-setup/SKILL.md +59 -27
  10. package/bundled-skills/ab-testing/SKILL.md +1 -1
  11. package/bundled-skills/acceptance-orchestrator/SKILL.md +6 -0
  12. package/bundled-skills/accint-commitments/SKILL.md +6 -0
  13. package/bundled-skills/accint-frames/SKILL.md +6 -0
  14. package/bundled-skills/accint-solve/SKILL.md +6 -0
  15. package/bundled-skills/advogado-criminal/SKILL.md +2 -912
  16. package/bundled-skills/advogado-criminal/references/detailed-guide.md +946 -0
  17. package/bundled-skills/advogado-especialista/SKILL.md +2 -1071
  18. package/bundled-skills/advogado-especialista/references/detailed-guide.md +1114 -0
  19. package/bundled-skills/agent-evaluation/SKILL.md +53 -1102
  20. package/bundled-skills/agent-evaluation/references/architecture-sketches.md +1112 -0
  21. package/bundled-skills/agent-memory/SKILL.md +6 -0
  22. package/bundled-skills/agent-memory-systems/SKILL.md +8 -1042
  23. package/bundled-skills/agent-memory-systems/references/detailed-guide.md +1088 -0
  24. package/bundled-skills/agent-squad/SKILL.md +1 -0
  25. package/bundled-skills/agent-tool-builder/SKILL.md +2 -624
  26. package/bundled-skills/agent-tool-builder/references/detailed-guide.md +650 -0
  27. package/bundled-skills/agentic-actions-auditor/SKILL.md +6 -0
  28. package/bundled-skills/agentmail/SKILL.md +1 -0
  29. package/bundled-skills/agentphone/SKILL.md +5 -1323
  30. package/bundled-skills/agentphone/references/detailed-guide.md +1333 -0
  31. package/bundled-skills/agents-v2-py/SKILL.md +23 -5
  32. package/bundled-skills/ai-agents-architect/SKILL.md +25 -25
  33. package/bundled-skills/ai-analyzer/SKILL.md +1 -0
  34. package/bundled-skills/ai-md/SKILL.md +25 -0
  35. package/bundled-skills/ai-md/references/detailed-guide.md +512 -0
  36. package/bundled-skills/ai-product/SKILL.md +2 -726
  37. package/bundled-skills/ai-product/references/detailed-guide.md +746 -0
  38. package/bundled-skills/ai-wrapper-product/SKILL.md +2 -641
  39. package/bundled-skills/ai-wrapper-product/references/detailed-guide.md +659 -0
  40. package/bundled-skills/airtable-automation/SKILL.md +6 -0
  41. package/bundled-skills/algolia-search/SKILL.md +2 -893
  42. package/bundled-skills/algolia-search/references/detailed-guide.md +901 -0
  43. package/bundled-skills/alpha-vantage/SKILL.md +1 -0
  44. package/bundled-skills/alternatives-pages/SKILL.md +7 -1
  45. package/bundled-skills/amazon-alexa/SKILL.md +2 -627
  46. package/bundled-skills/amazon-alexa/references/detailed-guide.md +644 -0
  47. package/bundled-skills/analytics/SKILL.md +1 -1
  48. package/bundled-skills/analytics-product/SKILL.md +57 -44
  49. package/bundled-skills/analytics-tracking/SKILL.md +21 -12
  50. package/bundled-skills/analyze-project/SKILL.md +1 -0
  51. package/bundled-skills/android-dev/SKILL.md +2 -490
  52. package/bundled-skills/android-dev/references/detailed-guide.md +506 -0
  53. package/bundled-skills/angular/SKILL.md +4 -783
  54. package/bundled-skills/angular/references/detailed-guide.md +801 -0
  55. package/bundled-skills/angular-best-practices/SKILL.md +4 -535
  56. package/bundled-skills/angular-best-practices/references/detailed-guide.md +549 -0
  57. package/bundled-skills/angular-state-management/SKILL.md +4 -608
  58. package/bundled-skills/angular-state-management/references/detailed-guide.md +618 -0
  59. package/bundled-skills/angular-ui-patterns/SKILL.md +2 -498
  60. package/bundled-skills/angular-ui-patterns/references/detailed-guide.md +513 -0
  61. package/bundled-skills/animejs-animation/SKILL.md +6 -0
  62. package/bundled-skills/anti-deception/SKILL.md +7 -1
  63. package/bundled-skills/antigravity-design-expert/SKILL.md +6 -0
  64. package/bundled-skills/antigravity-maintainer-batch-release/SKILL.md +7 -0
  65. package/bundled-skills/antigravity-workflows/SKILL.md +20 -3
  66. package/bundled-skills/antigravity-workflows/references/workflow-cards.md +78 -0
  67. package/bundled-skills/api-analyzer/SKILL.md +1 -1
  68. package/bundled-skills/api-designer/SKILL.md +1 -1
  69. package/bundled-skills/api-integration/SKILL.md +1 -1
  70. package/bundled-skills/api-onboarding/SKILL.md +1 -1
  71. package/bundled-skills/api-patterns/SKILL.md +19 -8
  72. package/bundled-skills/api-patterns/api-style.md +2 -2
  73. package/bundled-skills/api-patterns/auth.md +3 -2
  74. package/bundled-skills/api-patterns/graphql.md +1 -1
  75. package/bundled-skills/api-patterns/scripts/api_validator.py +9 -7
  76. package/bundled-skills/api-patterns/trpc.md +2 -2
  77. package/bundled-skills/api-patterns/versioning.md +1 -1
  78. package/bundled-skills/api-sdk-generator/SKILL.md +1 -1
  79. package/bundled-skills/api-security-best-practices/SKILL.md +179 -879
  80. package/bundled-skills/apify-actor-development/SKILL.md +1 -0
  81. package/bundled-skills/apify-actorization/SKILL.md +1 -0
  82. package/bundled-skills/apify-audience-analysis/SKILL.md +1 -0
  83. package/bundled-skills/apify-brand-reputation-monitoring/SKILL.md +1 -0
  84. package/bundled-skills/apify-competitor-intelligence/SKILL.md +1 -0
  85. package/bundled-skills/apify-content-analytics/SKILL.md +1 -0
  86. package/bundled-skills/apify-ecommerce/SKILL.md +1 -0
  87. package/bundled-skills/apify-influencer-discovery/SKILL.md +1 -0
  88. package/bundled-skills/apify-lead-generation/SKILL.md +1 -0
  89. package/bundled-skills/apify-market-research/SKILL.md +1 -0
  90. package/bundled-skills/apify-trend-analysis/SKILL.md +1 -0
  91. package/bundled-skills/apify-ultimate-scraper/SKILL.md +1 -0
  92. package/bundled-skills/appium-skill/SKILL.md +1 -1
  93. package/bundled-skills/apple-notes-search/SKILL.md +6 -0
  94. package/bundled-skills/application-performance-performance-optimization/SKILL.md +6 -0
  95. package/bundled-skills/applicationinsights-web-ts/SKILL.md +1 -1
  96. package/bundled-skills/ask-matt/SKILL.md +5 -0
  97. package/bundled-skills/ask-questions-if-underspecified/SKILL.md +1 -0
  98. package/bundled-skills/astropy/SKILL.md +1 -0
  99. package/bundled-skills/atlas-contract/SKILL.md +117 -0
  100. package/bundled-skills/atlas-contract/references/detailed-guide.md +572 -0
  101. package/bundled-skills/audio-transcriber/SKILL.md +2 -425
  102. package/bundled-skills/audio-transcriber/references/detailed-guide.md +430 -0
  103. package/bundled-skills/audit-context-building/SKILL.md +1 -0
  104. package/bundled-skills/auri-core/SKILL.md +5 -562
  105. package/bundled-skills/auri-core/references/detailed-guide.md +623 -0
  106. package/bundled-skills/auth-implementation-patterns/SKILL.md +14 -4
  107. package/bundled-skills/auth-implementation-patterns/resources/implementation-playbook.md +72 -180
  108. package/bundled-skills/automated-triage/SKILL.md +6 -0
  109. package/bundled-skills/autonomous-agent-patterns/SKILL.md +4 -741
  110. package/bundled-skills/autonomous-agent-patterns/references/detailed-guide.md +751 -0
  111. package/bundled-skills/autonomous-agents/SKILL.md +8 -1010
  112. package/bundled-skills/autonomous-agents/references/detailed-guide.md +1065 -0
  113. package/bundled-skills/awareness-stage-mapper/SKILL.md +6 -0
  114. package/bundled-skills/aws-agentic-ai/SKILL.md +7 -1
  115. package/bundled-skills/aws-cdk-development/SKILL.md +1 -1
  116. package/bundled-skills/aws-cost-operations/SKILL.md +1 -1
  117. package/bundled-skills/aws-mcp-setup/SKILL.md +1 -1
  118. package/bundled-skills/aws-serverless/SKILL.md +2 -1305
  119. package/bundled-skills/aws-serverless/references/detailed-guide.md +1340 -0
  120. package/bundled-skills/aws-serverless-eda/SKILL.md +1 -1
  121. package/bundled-skills/aws-skills/SKILL.md +6 -0
  122. package/bundled-skills/aws-sst-development/SKILL.md +7 -1
  123. package/bundled-skills/awt-e2e-testing/SKILL.md +7 -0
  124. package/bundled-skills/azure-functions/SKILL.md +2 -1321
  125. package/bundled-skills/azure-functions/references/detailed-guide.md +1356 -0
  126. package/bundled-skills/azure-maps-search-dotnet/SKILL.md +2 -482
  127. package/bundled-skills/azure-maps-search-dotnet/references/detailed-guide.md +496 -0
  128. package/bundled-skills/azure-search-documents-py/SKILL.md +2 -515
  129. package/bundled-skills/azure-search-documents-py/references/detailed-guide.md +548 -0
  130. package/bundled-skills/azure-storage-file-share-ts/SKILL.md +2 -481
  131. package/bundled-skills/azure-storage-file-share-ts/references/detailed-guide.md +500 -0
  132. package/bundled-skills/azure-storage-queue-ts/SKILL.md +2 -512
  133. package/bundled-skills/azure-storage-queue-ts/references/detailed-guide.md +530 -0
  134. package/bundled-skills/backend-development-feature-development/SKILL.md +6 -0
  135. package/bundled-skills/basecamp-automation/SKILL.md +6 -0
  136. package/bundled-skills/baseline-ui/SKILL.md +6 -0
  137. package/bundled-skills/bash-pro/SKILL.md +6 -0
  138. package/bundled-skills/bdi-mental-states/SKILL.md +1 -0
  139. package/bundled-skills/beautiful-prose/SKILL.md +1 -0
  140. package/bundled-skills/bill-gates/SKILL.md +2 -778
  141. package/bundled-skills/bill-gates/references/detailed-guide.md +784 -0
  142. package/bundled-skills/biopython/SKILL.md +1 -0
  143. package/bundled-skills/bitbucket-automation/SKILL.md +6 -0
  144. package/bundled-skills/blog-writing-guide/SKILL.md +6 -0
  145. package/bundled-skills/box-automation/SKILL.md +6 -0
  146. package/bundled-skills/brain-to-docs/SKILL.md +6 -0
  147. package/bundled-skills/brainstorming/SKILL.md +6 -0
  148. package/bundled-skills/brand-guidelines/SKILL.md +1 -0
  149. package/bundled-skills/brand-guidelines-anthropic/SKILL.md +23 -8
  150. package/bundled-skills/brand-guidelines-community/SKILL.md +23 -8
  151. package/bundled-skills/brand-perception-psychologist/SKILL.md +6 -0
  152. package/bundled-skills/brooks-audit/SKILL.md +1 -1
  153. package/bundled-skills/brooks-debt/SKILL.md +1 -1
  154. package/bundled-skills/brooks-harness/SKILL.md +1 -1
  155. package/bundled-skills/brooks-review/SKILL.md +7 -1
  156. package/bundled-skills/brooks-sweep/SKILL.md +1 -1
  157. package/bundled-skills/brooks-test/SKILL.md +1 -1
  158. package/bundled-skills/browser-automation/SKILL.md +18 -1044
  159. package/bundled-skills/browser-automation/references/detailed-guide.md +852 -0
  160. package/bundled-skills/bug-hunt-swarm/SKILL.md +7 -1
  161. package/bundled-skills/build/SKILL.md +5 -627
  162. package/bundled-skills/build/references/detailed-guide.md +637 -0
  163. package/bundled-skills/bun-development/SKILL.md +4 -678
  164. package/bundled-skills/bun-development/references/detailed-guide.md +691 -0
  165. package/bundled-skills/burpsuite-project-parser/SKILL.md +1 -0
  166. package/bundled-skills/c-pro/SKILL.md +6 -0
  167. package/bundled-skills/calendly-automation/SKILL.md +6 -0
  168. package/bundled-skills/cc-skill-backend-patterns/SKILL.md +2 -572
  169. package/bundled-skills/cc-skill-backend-patterns/references/detailed-guide.md +584 -0
  170. package/bundled-skills/cc-skill-coding-standards/SKILL.md +2 -510
  171. package/bundled-skills/cc-skill-coding-standards/references/detailed-guide.md +523 -0
  172. package/bundled-skills/cc-skill-continuous-learning/SKILL.md +49 -7
  173. package/bundled-skills/cc-skill-continuous-learning/config.json +1 -16
  174. package/bundled-skills/cc-skill-continuous-learning/evaluate-session.sh +56 -59
  175. package/bundled-skills/cc-skill-frontend-patterns/SKILL.md +2 -621
  176. package/bundled-skills/cc-skill-frontend-patterns/references/detailed-guide.md +633 -0
  177. package/bundled-skills/cc-skill-security-review/SKILL.md +4 -36
  178. package/bundled-skills/cc-skill-security-review/references/detailed-guide.md +40 -0
  179. package/bundled-skills/cc-skill-strategic-compact/SKILL.md +53 -7
  180. package/bundled-skills/cc-skill-strategic-compact/suggest-compact.sh +20 -51
  181. package/bundled-skills/changelog-updates/SKILL.md +6 -528
  182. package/bundled-skills/changelog-updates/references/detailed-guide.md +540 -0
  183. package/bundled-skills/chat-widget/SKILL.md +5 -879
  184. package/bundled-skills/chat-widget/references/detailed-guide.md +890 -0
  185. package/bundled-skills/cirq/SKILL.md +1 -0
  186. package/bundled-skills/citation-management/SKILL.md +3 -960
  187. package/bundled-skills/citation-management/references/detailed-guide.md +975 -0
  188. package/bundled-skills/ckw-design/SKILL.md +6 -0
  189. package/bundled-skills/claimable-postgres/SKILL.md +1 -1
  190. package/bundled-skills/clarity-gate/SKILL.md +3 -635
  191. package/bundled-skills/clarity-gate/references/detailed-guide.md +653 -0
  192. package/bundled-skills/claude-ally-health/SKILL.md +6 -0
  193. package/bundled-skills/claude-code-expert/SKILL.md +2 -527
  194. package/bundled-skills/claude-code-expert/references/detailed-guide.md +548 -0
  195. package/bundled-skills/claude-d3js-skill/SKILL.md +2 -798
  196. package/bundled-skills/claude-d3js-skill/references/detailed-guide.md +811 -0
  197. package/bundled-skills/claude-in-chrome-troubleshooting/SKILL.md +1 -0
  198. package/bundled-skills/claude-scientific-skills/SKILL.md +6 -0
  199. package/bundled-skills/claude-settings-audit/SKILL.md +1 -0
  200. package/bundled-skills/claude-speed-reader/SKILL.md +6 -0
  201. package/bundled-skills/claude-win11-speckit-update-skill/SKILL.md +6 -0
  202. package/bundled-skills/clean-code/SKILL.md +6 -0
  203. package/bundled-skills/clerk-auth/SKILL.md +2 -812
  204. package/bundled-skills/clerk-auth/references/detailed-guide.md +820 -0
  205. package/bundled-skills/clickup-automation/SKILL.md +6 -0
  206. package/bundled-skills/closed-loop-delivery/SKILL.md +6 -0
  207. package/bundled-skills/co-marketing/SKILL.md +1 -1
  208. package/bundled-skills/code-documentation-doc-generate/SKILL.md +16 -1
  209. package/bundled-skills/code-documentation-doc-generate/resources/implementation-playbook.md +33 -55
  210. package/bundled-skills/code-refactoring-context-restore/SKILL.md +40 -177
  211. package/bundled-skills/code-refactoring-tech-debt/SKILL.md +20 -9
  212. package/bundled-skills/code-simplifier/SKILL.md +1 -0
  213. package/bundled-skills/codebase-cleanup-tech-debt/SKILL.md +20 -9
  214. package/bundled-skills/cold-email/SKILL.md +6 -0
  215. package/bundled-skills/commit/SKILL.md +1 -0
  216. package/bundled-skills/community-building/SKILL.md +1 -1
  217. package/bundled-skills/competitor-alternatives/SKILL.md +2 -740
  218. package/bundled-skills/competitor-alternatives/references/detailed-guide.md +756 -0
  219. package/bundled-skills/competitor-profiling/SKILL.md +1 -1
  220. package/bundled-skills/competitor-tracking/SKILL.md +1 -1
  221. package/bundled-skills/comprehensive-review-full-review/SKILL.md +6 -0
  222. package/bundled-skills/comprehensive-review-pr-enhance/SKILL.md +1 -0
  223. package/bundled-skills/computer-use-agents/SKILL.md +2 -2131
  224. package/bundled-skills/computer-use-agents/references/detailed-guide.md +2158 -0
  225. package/bundled-skills/computer-vision-expert/SKILL.md +6 -0
  226. package/bundled-skills/conductor-setup/SKILL.md +1 -0
  227. package/bundled-skills/confluence-automation/SKILL.md +6 -0
  228. package/bundled-skills/constant-time-analysis/SKILL.md +1 -0
  229. package/bundled-skills/container-security-hardening/SKILL.md +4 -915
  230. package/bundled-skills/container-security-hardening/references/detailed-guide.md +927 -0
  231. package/bundled-skills/content-creator/SKILL.md +53 -23
  232. package/bundled-skills/content-creator/assets/content_calendar_template.md +5 -2
  233. package/bundled-skills/content-creator/references/brand_guidelines.md +7 -3
  234. package/bundled-skills/content-creator/references/content_frameworks.md +12 -7
  235. package/bundled-skills/content-creator/references/social_media_optimization.md +61 -317
  236. package/bundled-skills/content-creator/scripts/brand_voice_analyzer.py +14 -9
  237. package/bundled-skills/content-creator/scripts/seo_optimizer.py +31 -94
  238. package/bundled-skills/context-compression/SKILL.md +1 -0
  239. package/bundled-skills/context-degradation/SKILL.md +1 -0
  240. package/bundled-skills/context-fundamentals/SKILL.md +1 -0
  241. package/bundled-skills/context-management-context-restore/SKILL.md +40 -177
  242. package/bundled-skills/context-optimization/SKILL.md +1 -0
  243. package/bundled-skills/convex/SKILL.md +4 -766
  244. package/bundled-skills/convex/references/detailed-guide.md +772 -0
  245. package/bundled-skills/copilot-sdk/SKILL.md +4 -496
  246. package/bundled-skills/copilot-sdk/references/detailed-guide.md +516 -0
  247. package/bundled-skills/copy-editing/SKILL.md +6 -0
  248. package/bundled-skills/copywriting/SKILL.md +6 -0
  249. package/bundled-skills/copywriting-psychologist/SKILL.md +6 -0
  250. package/bundled-skills/create-branch/SKILL.md +1 -0
  251. package/bundled-skills/create-pr/SKILL.md +7 -0
  252. package/bundled-skills/cred-omega/SKILL.md +2 -847
  253. package/bundled-skills/cred-omega/references/detailed-guide.md +872 -0
  254. package/bundled-skills/cro/SKILL.md +1 -1
  255. package/bundled-skills/csharp-pro/SKILL.md +6 -0
  256. package/bundled-skills/cucumber-skill/SKILL.md +1 -1
  257. package/bundled-skills/customer-psychographic-profiler/SKILL.md +6 -0
  258. package/bundled-skills/customer-research/SKILL.md +1 -1
  259. package/bundled-skills/cv-generator/SKILL.md +4 -828
  260. package/bundled-skills/cv-generator/references/detailed-guide.md +845 -0
  261. package/bundled-skills/cypress-skill/SKILL.md +1 -1
  262. package/bundled-skills/daily-gift/SKILL.md +6 -0
  263. package/bundled-skills/debug-buttercup/SKILL.md +1 -0
  264. package/bundled-skills/debugger/SKILL.md +6 -0
  265. package/bundled-skills/debugging-code/SKILL.md +1 -1
  266. package/bundled-skills/deepapi/SKILL.md +4 -619
  267. package/bundled-skills/deepapi/references/detailed-guide.md +627 -0
  268. package/bundled-skills/delegating-to-agents/SKILL.md +6 -0
  269. package/bundled-skills/deployment-validation-config-validate/SKILL.md +4 -478
  270. package/bundled-skills/deployment-validation-config-validate/references/detailed-guide.md +484 -0
  271. package/bundled-skills/design-it/SKILL.md +6 -0
  272. package/bundled-skills/design-orchestration/SKILL.md +6 -0
  273. package/bundled-skills/design-spells/SKILL.md +6 -0
  274. package/bundled-skills/design-system/SKILL.md +7 -1
  275. package/bundled-skills/design-taste-frontend/SKILL.md +6 -0
  276. package/bundled-skills/design-thinking/SKILL.md +6 -0
  277. package/bundled-skills/design-ux/SKILL.md +7 -1
  278. package/bundled-skills/deterministic-design/SKILL.md +6 -0
  279. package/bundled-skills/developer-advocacy/SKILL.md +1 -1
  280. package/bundled-skills/developer-audience-context/SKILL.md +1 -1
  281. package/bundled-skills/developer-churn/SKILL.md +5 -625
  282. package/bundled-skills/developer-churn/references/detailed-guide.md +639 -0
  283. package/bundled-skills/developer-listening/SKILL.md +7 -1
  284. package/bundled-skills/developer-onboarding/SKILL.md +6 -474
  285. package/bundled-skills/developer-onboarding/references/detailed-guide.md +486 -0
  286. package/bundled-skills/developer-sandbox/SKILL.md +6 -414
  287. package/bundled-skills/developer-sandbox/references/detailed-guide.md +425 -0
  288. package/bundled-skills/developer-seo/SKILL.md +1 -1
  289. package/bundled-skills/developer-signup-flow/SKILL.md +1 -1
  290. package/bundled-skills/devrel-content/SKILL.md +1 -1
  291. package/bundled-skills/diagnosing-bugs/SKILL.md +5 -0
  292. package/bundled-skills/diary/SKILL.md +1 -0
  293. package/bundled-skills/differential-review/SKILL.md +1 -0
  294. package/bundled-skills/discord-automation/SKILL.md +6 -0
  295. package/bundled-skills/discord-bot-architect/SKILL.md +2 -1434
  296. package/bundled-skills/discord-bot-architect/references/detailed-guide.md +1465 -0
  297. package/bundled-skills/django-access-review/SKILL.md +1 -0
  298. package/bundled-skills/django-perf-review/SKILL.md +1 -0
  299. package/bundled-skills/doc-coauthoring/SKILL.md +6 -0
  300. package/bundled-skills/docs-architect/SKILL.md +6 -0
  301. package/bundled-skills/docs-as-marketing/SKILL.md +1 -1
  302. package/bundled-skills/documentation-generation-doc-generate/SKILL.md +16 -1
  303. package/bundled-skills/documentation-generation-doc-generate/resources/implementation-playbook.md +33 -55
  304. package/bundled-skills/doubt-driven-development/SKILL.md +1 -1
  305. package/bundled-skills/dropbox-automation/SKILL.md +6 -0
  306. package/bundled-skills/dwarf-expert/SKILL.md +1 -0
  307. package/bundled-skills/dx-optimizer/SKILL.md +6 -0
  308. package/bundled-skills/e2e-testing-patterns/SKILL.md +14 -4
  309. package/bundled-skills/e2e-testing-patterns/resources/implementation-playbook.md +22 -41
  310. package/bundled-skills/eas-update-insights/SKILL.md +1 -1
  311. package/bundled-skills/ecl-harness-engineer/SKILL.md +4 -681
  312. package/bundled-skills/ecl-harness-engineer/references/detailed-guide.md +691 -0
  313. package/bundled-skills/efficient-web-research/SKILL.md +1 -0
  314. package/bundled-skills/electron-development/SKILL.md +4 -820
  315. package/bundled-skills/electron-development/references/detailed-guide.md +828 -0
  316. package/bundled-skills/elixir-pro/SKILL.md +6 -0
  317. package/bundled-skills/elon-musk/SKILL.md +5 -1278
  318. package/bundled-skills/elon-musk/references/detailed-guide.md +1293 -0
  319. package/bundled-skills/email-sequence/SKILL.md +2 -915
  320. package/bundled-skills/email-sequence/references/detailed-guide.md +932 -0
  321. package/bundled-skills/email-systems/SKILL.md +2 -654
  322. package/bundled-skills/email-systems/references/detailed-guide.md +669 -0
  323. package/bundled-skills/emergency-card/SKILL.md +1 -0
  324. package/bundled-skills/emil-design-eng/SKILL.md +4 -673
  325. package/bundled-skills/emil-design-eng/references/detailed-guide.md +690 -0
  326. package/bundled-skills/emotional-arc-designer/SKILL.md +6 -0
  327. package/bundled-skills/enhance-prompt/SKILL.md +1 -0
  328. package/bundled-skills/error-debugging-error-analysis/SKILL.md +15 -0
  329. package/bundled-skills/error-debugging-error-analysis/resources/implementation-playbook.md +122 -1125
  330. package/bundled-skills/error-debugging-multi-agent-review/SKILL.md +42 -214
  331. package/bundled-skills/error-detective/SKILL.md +6 -0
  332. package/bundled-skills/error-diagnostics-error-analysis/SKILL.md +15 -0
  333. package/bundled-skills/error-diagnostics-error-analysis/resources/implementation-playbook.md +122 -1125
  334. package/bundled-skills/event-sourcing-architect/SKILL.md +6 -0
  335. package/bundled-skills/event-staffing-compliance/SKILL.md +6 -0
  336. package/bundled-skills/event-staffing-ordering/SKILL.md +6 -0
  337. package/bundled-skills/evolution/SKILL.md +1 -0
  338. package/bundled-skills/executing-plans/SKILL.md +6 -0
  339. package/bundled-skills/explain-like-socrates/SKILL.md +6 -0
  340. package/bundled-skills/expo-deployment/SKILL.md +1 -1
  341. package/bundled-skills/expo-examples/SKILL.md +1 -1
  342. package/bundled-skills/expo-module/SKILL.md +1 -1
  343. package/bundled-skills/expo-observe/SKILL.md +1 -1
  344. package/bundled-skills/expo-ui/SKILL.md +1 -1
  345. package/bundled-skills/expo-ui-jetpack-compose/SKILL.md +1 -0
  346. package/bundled-skills/expo-ui-swift-ui/SKILL.md +1 -0
  347. package/bundled-skills/fable-safe-prompt/SKILL.md +6 -0
  348. package/bundled-skills/fal-audio/SKILL.md +6 -0
  349. package/bundled-skills/fal-generate/SKILL.md +6 -0
  350. package/bundled-skills/fal-image-edit/SKILL.md +6 -0
  351. package/bundled-skills/fal-platform/SKILL.md +6 -0
  352. package/bundled-skills/fal-upscale/SKILL.md +6 -0
  353. package/bundled-skills/fal-workflow/SKILL.md +6 -0
  354. package/bundled-skills/family-health-analyzer/SKILL.md +1 -0
  355. package/bundled-skills/favicon/SKILL.md +1 -0
  356. package/bundled-skills/fda-food-safety-auditor/SKILL.md +1 -0
  357. package/bundled-skills/fda-medtech-compliance-auditor/SKILL.md +1 -0
  358. package/bundled-skills/ffuf-claude-skill/SKILL.md +6 -0
  359. package/bundled-skills/ffuf-web-fuzzing/SKILL.md +5 -492
  360. package/bundled-skills/ffuf-web-fuzzing/references/detailed-guide.md +510 -0
  361. package/bundled-skills/file-organizer/SKILL.md +6 -0
  362. package/bundled-skills/file-uploads/SKILL.md +6 -0
  363. package/bundled-skills/filesystem-context/SKILL.md +1 -0
  364. package/bundled-skills/find-bugs/SKILL.md +7 -0
  365. package/bundled-skills/firebase/SKILL.md +8 -651
  366. package/bundled-skills/firebase/references/detailed-guide.md +662 -0
  367. package/bundled-skills/fitness-analyzer/SKILL.md +1 -0
  368. package/bundled-skills/fix-review/SKILL.md +6 -0
  369. package/bundled-skills/fixing-metadata/SKILL.md +7 -1
  370. package/bundled-skills/food-database-query/SKILL.md +5 -772
  371. package/bundled-skills/food-database-query/references/detailed-guide.md +785 -0
  372. package/bundled-skills/form-cro/SKILL.md +6 -0
  373. package/bundled-skills/fp-async/SKILL.md +5 -716
  374. package/bundled-skills/fp-async/references/detailed-guide.md +726 -0
  375. package/bundled-skills/fp-backend/SKILL.md +5 -1313
  376. package/bundled-skills/fp-backend/references/detailed-guide.md +1323 -0
  377. package/bundled-skills/fp-data-transforms/SKILL.md +5 -1181
  378. package/bundled-skills/fp-data-transforms/references/detailed-guide.md +1190 -0
  379. package/bundled-skills/fp-either-ref/SKILL.md +1 -0
  380. package/bundled-skills/fp-errors/SKILL.md +5 -835
  381. package/bundled-skills/fp-errors/references/detailed-guide.md +846 -0
  382. package/bundled-skills/fp-option-ref/SKILL.md +1 -0
  383. package/bundled-skills/fp-pipe-ref/SKILL.md +1 -0
  384. package/bundled-skills/fp-pragmatic/SKILL.md +5 -500
  385. package/bundled-skills/fp-pragmatic/references/detailed-guide.md +510 -0
  386. package/bundled-skills/fp-react/SKILL.md +3 -761
  387. package/bundled-skills/fp-react/references/detailed-guide.md +775 -0
  388. package/bundled-skills/fp-refactor/SKILL.md +5 -1761
  389. package/bundled-skills/fp-refactor/references/detailed-guide.md +1775 -0
  390. package/bundled-skills/fp-taskeither-ref/SKILL.md +1 -0
  391. package/bundled-skills/fp-ts-errors/SKILL.md +4 -835
  392. package/bundled-skills/fp-ts-errors/references/detailed-guide.md +846 -0
  393. package/bundled-skills/fp-ts-pragmatic/SKILL.md +4 -500
  394. package/bundled-skills/fp-ts-pragmatic/references/detailed-guide.md +510 -0
  395. package/bundled-skills/fp-ts-react/SKILL.md +4 -763
  396. package/bundled-skills/fp-ts-react/references/detailed-guide.md +775 -0
  397. package/bundled-skills/fp-types-ref/SKILL.md +1 -0
  398. package/bundled-skills/framework-migration-legacy-modernize/SKILL.md +6 -0
  399. package/bundled-skills/free-tool-strategy/SKILL.md +2 -532
  400. package/bundled-skills/free-tool-strategy/references/detailed-guide.md +550 -0
  401. package/bundled-skills/freshdesk-automation/SKILL.md +6 -0
  402. package/bundled-skills/frontend-architecture/SKILL.md +1 -1
  403. package/bundled-skills/frontend-data-contracts/SKILL.md +1 -1
  404. package/bundled-skills/frontend-design/SKILL.md +33 -34
  405. package/bundled-skills/frontend-observability/SKILL.md +1 -1
  406. package/bundled-skills/frontend-optimistic-mutations/SKILL.md +1 -1
  407. package/bundled-skills/frontend-seo/SKILL.md +6 -675
  408. package/bundled-skills/frontend-seo/references/detailed-guide.md +688 -0
  409. package/bundled-skills/frontend-slides-frontend-slides/SKILL.md +7 -1
  410. package/bundled-skills/frontend-ui-dark-ts/SKILL.md +2 -561
  411. package/bundled-skills/frontend-ui-dark-ts/references/detailed-guide.md +573 -0
  412. package/bundled-skills/full-stack-orchestration-full-stack-feature/SKILL.md +6 -0
  413. package/bundled-skills/game-development/2d-games/SKILL.md +6 -0
  414. package/bundled-skills/game-development/mobile-games/SKILL.md +6 -0
  415. package/bundled-skills/game-development/vr-ar/SKILL.md +6 -0
  416. package/bundled-skills/gcp-cloud-run/SKILL.md +2 -1303
  417. package/bundled-skills/gcp-cloud-run/references/detailed-guide.md +1350 -0
  418. package/bundled-skills/gemini-api-dev/SKILL.md +1 -1
  419. package/bundled-skills/gemini-live-api-dev/SKILL.md +1 -1
  420. package/bundled-skills/gemini-omni-flash-api/SKILL.md +1 -1
  421. package/bundled-skills/geo-fundamentals/SKILL.md +6 -0
  422. package/bundled-skills/geoffrey-hinton/SKILL.md +5 -1235
  423. package/bundled-skills/geoffrey-hinton/references/detailed-guide.md +1324 -0
  424. package/bundled-skills/gh-review-requests/SKILL.md +1 -0
  425. package/bundled-skills/github-actions-advanced/SKILL.md +4 -971
  426. package/bundled-skills/github-actions-advanced/references/detailed-guide.md +991 -0
  427. package/bundled-skills/github-automation/SKILL.md +6 -0
  428. package/bundled-skills/github-workflow-automation/SKILL.md +4 -826
  429. package/bundled-skills/github-workflow-automation/references/detailed-guide.md +832 -0
  430. package/bundled-skills/gitlab-automation/SKILL.md +6 -0
  431. package/bundled-skills/gmail-automation/SKILL.md +1 -0
  432. package/bundled-skills/go-rod-master/SKILL.md +2 -496
  433. package/bundled-skills/go-rod-master/references/detailed-guide.md +508 -0
  434. package/bundled-skills/goal-analyzer/SKILL.md +5 -596
  435. package/bundled-skills/goal-analyzer/references/detailed-guide.md +602 -0
  436. package/bundled-skills/google-calendar-automation/SKILL.md +1 -0
  437. package/bundled-skills/google-docs-automation/SKILL.md +1 -0
  438. package/bundled-skills/google-drive-automation/SKILL.md +1 -0
  439. package/bundled-skills/google-sheets-automation/SKILL.md +1 -0
  440. package/bundled-skills/google-slides-automation/SKILL.md +1 -0
  441. package/bundled-skills/googlesheets-automation/SKILL.md +6 -0
  442. package/bundled-skills/gpt-taste/SKILL.md +6 -0
  443. package/bundled-skills/graphql/SKILL.md +8 -1031
  444. package/bundled-skills/graphql/references/detailed-guide.md +1044 -0
  445. package/bundled-skills/grill-me/SKILL.md +5 -0
  446. package/bundled-skills/grill-with-docs/SKILL.md +5 -0
  447. package/bundled-skills/grilling/SKILL.md +5 -0
  448. package/bundled-skills/growth-engine/SKILL.md +6 -0
  449. package/bundled-skills/handoff/SKILL.md +5 -0
  450. package/bundled-skills/haskell-pro/SKILL.md +6 -0
  451. package/bundled-skills/headline-psychologist/SKILL.md +6 -0
  452. package/bundled-skills/health-trend-analyzer/SKILL.md +1 -0
  453. package/bundled-skills/hig-components-content/SKILL.md +6 -0
  454. package/bundled-skills/hig-components-controls/SKILL.md +6 -0
  455. package/bundled-skills/hig-components-dialogs/SKILL.md +6 -0
  456. package/bundled-skills/hig-components-layout/SKILL.md +6 -0
  457. package/bundled-skills/hig-components-menus/SKILL.md +6 -0
  458. package/bundled-skills/hig-components-search/SKILL.md +6 -0
  459. package/bundled-skills/hig-components-status/SKILL.md +6 -0
  460. package/bundled-skills/hig-components-system/SKILL.md +6 -0
  461. package/bundled-skills/hig-foundations/SKILL.md +6 -0
  462. package/bundled-skills/hig-inputs/SKILL.md +6 -0
  463. package/bundled-skills/hig-patterns/SKILL.md +6 -0
  464. package/bundled-skills/hig-platforms/SKILL.md +6 -0
  465. package/bundled-skills/hig-technologies/SKILL.md +6 -0
  466. package/bundled-skills/high-end-visual-design/SKILL.md +6 -0
  467. package/bundled-skills/hosted-agents/SKILL.md +7 -0
  468. package/bundled-skills/hosted-agents-v2-py/SKILL.md +23 -5
  469. package/bundled-skills/html-injection-testing/SKILL.md +2 -453
  470. package/bundled-skills/html-injection-testing/references/detailed-guide.md +462 -0
  471. package/bundled-skills/hubspot-automation/SKILL.md +6 -0
  472. package/bundled-skills/hubspot-integration/SKILL.md +8 -807
  473. package/bundled-skills/hubspot-integration/references/detailed-guide.md +815 -0
  474. package/bundled-skills/hugging-face-cli/SKILL.md +7 -1
  475. package/bundled-skills/hugging-face-community-evals/SKILL.md +1 -1
  476. package/bundled-skills/hugging-face-datasets/SKILL.md +5 -430
  477. package/bundled-skills/hugging-face-datasets/references/detailed-guide.md +442 -0
  478. package/bundled-skills/hugging-face-evaluation/SKILL.md +5 -640
  479. package/bundled-skills/hugging-face-evaluation/references/detailed-guide.md +652 -0
  480. package/bundled-skills/hugging-face-jobs/SKILL.md +3 -801
  481. package/bundled-skills/hugging-face-jobs/references/detailed-guide.md +821 -0
  482. package/bundled-skills/hugging-face-model-trainer/SKILL.md +3 -681
  483. package/bundled-skills/hugging-face-model-trainer/references/detailed-guide.md +702 -0
  484. package/bundled-skills/hugging-face-paper-publisher/SKILL.md +5 -617
  485. package/bundled-skills/hugging-face-paper-publisher/references/detailed-guide.md +624 -0
  486. package/bundled-skills/hugging-face-papers/SKILL.md +1 -1
  487. package/bundled-skills/hugging-face-tool-builder/SKILL.md +1 -0
  488. package/bundled-skills/hugging-face-trackio/SKILL.md +1 -1
  489. package/bundled-skills/hugging-face-vision-trainer/SKILL.md +5 -534
  490. package/bundled-skills/hugging-face-vision-trainer/references/detailed-guide.md +549 -0
  491. package/bundled-skills/huggingface-best/SKILL.md +1 -1
  492. package/bundled-skills/huggingface-lora-space-builder/SKILL.md +1 -1
  493. package/bundled-skills/huggingface-spaces/SKILL.md +1 -1
  494. package/bundled-skills/huggingface-tool-builder/SKILL.md +1 -1
  495. package/bundled-skills/huggingface-zerogpu/SKILL.md +1 -1
  496. package/bundled-skills/hugo-to-markdown/SKILL.md +1 -1
  497. package/bundled-skills/hyperexecute-skill/SKILL.md +7 -1
  498. package/bundled-skills/iconsax-library/SKILL.md +6 -0
  499. package/bundled-skills/idea-refine/SKILL.md +1 -1
  500. package/bundled-skills/identity-mirror/SKILL.md +6 -0
  501. package/bundled-skills/ilya-sutskever/SKILL.md +2 -1126
  502. package/bundled-skills/ilya-sutskever/references/detailed-guide.md +1167 -0
  503. package/bundled-skills/image-generator/SKILL.md +4 -320
  504. package/bundled-skills/image-generator/references/detailed-guide.md +332 -0
  505. package/bundled-skills/implement/SKILL.md +6 -0
  506. package/bundled-skills/incident-responder/SKILL.md +6 -0
  507. package/bundled-skills/incident-response-incident-response/SKILL.md +6 -0
  508. package/bundled-skills/industrial-brutalist-ui/SKILL.md +6 -0
  509. package/bundled-skills/interactive-portfolio/SKILL.md +2 -482
  510. package/bundled-skills/interactive-portfolio/references/detailed-guide.md +500 -0
  511. package/bundled-skills/internal-comms/SKILL.md +20 -1
  512. package/bundled-skills/internal-comms/examples/3p-updates.md +5 -4
  513. package/bundled-skills/internal-comms/examples/company-newsletter.md +3 -2
  514. package/bundled-skills/internal-comms/examples/faq-answers.md +1 -0
  515. package/bundled-skills/internal-comms/examples/general-comms.md +1 -0
  516. package/bundled-skills/internal-comms-anthropic/SKILL.md +21 -2
  517. package/bundled-skills/internal-comms-anthropic/examples/3p-updates.md +5 -4
  518. package/bundled-skills/internal-comms-anthropic/examples/company-newsletter.md +3 -2
  519. package/bundled-skills/internal-comms-anthropic/examples/faq-answers.md +1 -0
  520. package/bundled-skills/internal-comms-anthropic/examples/general-comms.md +1 -0
  521. package/bundled-skills/internal-comms-community/SKILL.md +21 -2
  522. package/bundled-skills/internal-comms-community/examples/3p-updates.md +48 -0
  523. package/bundled-skills/internal-comms-community/examples/company-newsletter.md +66 -0
  524. package/bundled-skills/internal-comms-community/examples/faq-answers.md +31 -0
  525. package/bundled-skills/internal-comms-community/examples/general-comms.md +17 -0
  526. package/bundled-skills/ios-debugger-agent/SKILL.md +6 -0
  527. package/bundled-skills/issues/SKILL.md +1 -0
  528. package/bundled-skills/iterate-pr/SKILL.md +1 -0
  529. package/bundled-skills/javascript-mastery/SKILL.md +4 -625
  530. package/bundled-skills/javascript-mastery/references/detailed-guide.md +636 -0
  531. package/bundled-skills/javascript-pro/SKILL.md +6 -0
  532. package/bundled-skills/jest-skill/SKILL.md +1 -1
  533. package/bundled-skills/jira-automation/SKILL.md +6 -0
  534. package/bundled-skills/jobs-to-be-done-analyst/SKILL.md +6 -0
  535. package/bundled-skills/junit-5-skill/SKILL.md +1 -1
  536. package/bundled-skills/k6-load-testing/SKILL.md +2 -544
  537. package/bundled-skills/k6-load-testing/references/detailed-guide.md +563 -0
  538. package/bundled-skills/kaizen/SKILL.md +2 -711
  539. package/bundled-skills/kaizen/references/detailed-guide.md +720 -0
  540. package/bundled-skills/langfuse/SKILL.md +41 -468
  541. package/bundled-skills/langgraph/SKILL.md +2 -445
  542. package/bundled-skills/langgraph/references/detailed-guide.md +455 -0
  543. package/bundled-skills/laravel-expert/SKILL.md +6 -0
  544. package/bundled-skills/launch-strategy/SKILL.md +6 -0
  545. package/bundled-skills/lead-magnets/SKILL.md +6 -0
  546. package/bundled-skills/learn/SKILL.md +5 -0
  547. package/bundled-skills/legacy-modernizer/SKILL.md +6 -0
  548. package/bundled-skills/legal-advisor/SKILL.md +6 -0
  549. package/bundled-skills/leiloeiro-avaliacao/SKILL.md +2 -469
  550. package/bundled-skills/leiloeiro-avaliacao/references/detailed-guide.md +503 -0
  551. package/bundled-skills/leiloeiro-edital/SKILL.md +2 -468
  552. package/bundled-skills/leiloeiro-edital/references/detailed-guide.md +491 -0
  553. package/bundled-skills/leiloeiro-mercado/SKILL.md +2 -458
  554. package/bundled-skills/leiloeiro-mercado/references/detailed-guide.md +488 -0
  555. package/bundled-skills/leiloeiro-risco/SKILL.md +2 -457
  556. package/bundled-skills/leiloeiro-risco/references/detailed-guide.md +482 -0
  557. package/bundled-skills/lesson-generator/SKILL.md +5 -0
  558. package/bundled-skills/lightning-architecture-review/SKILL.md +6 -0
  559. package/bundled-skills/lightning-channel-factories/SKILL.md +6 -0
  560. package/bundled-skills/lightning-factory-explainer/SKILL.md +6 -0
  561. package/bundled-skills/linear-claude-skill/SKILL.md +4 -502
  562. package/bundled-skills/linear-claude-skill/references/detailed-guide.md +517 -0
  563. package/bundled-skills/linkedin-cli/SKILL.md +4 -513
  564. package/bundled-skills/linkedin-cli/references/detailed-guide.md +520 -0
  565. package/bundled-skills/lint-and-validate/SKILL.md +6 -0
  566. package/bundled-skills/linux-privilege-escalation/SKILL.md +2 -426
  567. package/bundled-skills/linux-privilege-escalation/references/detailed-guide.md +436 -0
  568. package/bundled-skills/linux-shell-scripting/SKILL.md +2 -473
  569. package/bundled-skills/linux-shell-scripting/references/detailed-guide.md +481 -0
  570. package/bundled-skills/llm-app-patterns/SKILL.md +16 -741
  571. package/bundled-skills/llm-app-patterns/references/detailed-guide.md +760 -0
  572. package/bundled-skills/llm-council/SKILL.md +4 -550
  573. package/bundled-skills/llm-council/references/detailed-guide.md +556 -0
  574. package/bundled-skills/llm-ops/SKILL.md +6 -0
  575. package/bundled-skills/local-legal-seo-audit/SKILL.md +6 -0
  576. package/bundled-skills/logic-diff/SKILL.md +1 -1
  577. package/bundled-skills/logic-explain/SKILL.md +7 -1
  578. package/bundled-skills/logic-fix-all/SKILL.md +1 -1
  579. package/bundled-skills/logic-locate/SKILL.md +1 -1
  580. package/bundled-skills/logic-review/SKILL.md +1 -1
  581. package/bundled-skills/loki-mode/SKILL.md +4 -696
  582. package/bundled-skills/loki-mode/references/detailed-guide.md +717 -0
  583. package/bundled-skills/longbridge-content/SKILL.md +1 -1
  584. package/bundled-skills/longbridge-fundamentals/SKILL.md +1 -1
  585. package/bundled-skills/longbridge-market-data/SKILL.md +1 -1
  586. package/bundled-skills/lookdev-auto/SKILL.md +6 -0
  587. package/bundled-skills/loopy/SKILL.md +1 -1
  588. package/bundled-skills/loss-aversion-designer/SKILL.md +6 -0
  589. package/bundled-skills/machine-learning-ops-ml-pipeline/SKILL.md +6 -0
  590. package/bundled-skills/magic-animator/SKILL.md +6 -0
  591. package/bundled-skills/magic-ui-generator/SKILL.md +6 -0
  592. package/bundled-skills/mailtrap-setting-up-sending-domain/SKILL.md +6 -0
  593. package/bundled-skills/makepad-animation/SKILL.md +1 -0
  594. package/bundled-skills/makepad-basics/SKILL.md +1 -0
  595. package/bundled-skills/makepad-deployment/SKILL.md +1 -0
  596. package/bundled-skills/makepad-dsl/SKILL.md +1 -0
  597. package/bundled-skills/makepad-event-action/SKILL.md +1 -0
  598. package/bundled-skills/makepad-font/SKILL.md +1 -0
  599. package/bundled-skills/makepad-layout/SKILL.md +1 -0
  600. package/bundled-skills/makepad-platform/SKILL.md +1 -0
  601. package/bundled-skills/makepad-reference/SKILL.md +1 -0
  602. package/bundled-skills/makepad-shaders/SKILL.md +1 -0
  603. package/bundled-skills/makepad-skills/SKILL.md +6 -0
  604. package/bundled-skills/makepad-splash/SKILL.md +1 -0
  605. package/bundled-skills/makepad-widgets/SKILL.md +1 -0
  606. package/bundled-skills/manage-skills/SKILL.md +1 -0
  607. package/bundled-skills/marketing-plan/SKILL.md +1 -1
  608. package/bundled-skills/matematico-tao/SKILL.md +2 -632
  609. package/bundled-skills/matematico-tao/references/detailed-guide.md +651 -0
  610. package/bundled-skills/matplotlib/SKILL.md +1 -0
  611. package/bundled-skills/maxia/SKILL.md +1 -0
  612. package/bundled-skills/mcp-builder/SKILL.md +46 -14
  613. package/bundled-skills/mcp-builder/reference/evaluation.md +69 -226
  614. package/bundled-skills/mcp-builder/reference/mcp_best_practices.md +8 -5
  615. package/bundled-skills/mcp-builder/reference/node_mcp_server.md +46 -144
  616. package/bundled-skills/mcp-builder/reference/python_mcp_server.md +42 -80
  617. package/bundled-skills/mcp-builder/scripts/connections.py +18 -11
  618. package/bundled-skills/mcp-builder/scripts/evaluation.py +88 -95
  619. package/bundled-skills/mcp-builder/scripts/example_evaluation.xml +1 -1
  620. package/bundled-skills/mcp-builder/scripts/requirements.txt +4 -2
  621. package/bundled-skills/mental-health-analyzer/SKILL.md +5 -974
  622. package/bundled-skills/mental-health-analyzer/references/detailed-guide.md +1014 -0
  623. package/bundled-skills/micro-saas-launcher/SKILL.md +2 -473
  624. package/bundled-skills/micro-saas-launcher/references/detailed-guide.md +491 -0
  625. package/bundled-skills/minecraft-bukkit-pro/SKILL.md +6 -0
  626. package/bundled-skills/minimalist-ui/SKILL.md +6 -0
  627. package/bundled-skills/moatmri/SKILL.md +6 -0
  628. package/bundled-skills/molykit/SKILL.md +1 -0
  629. package/bundled-skills/monday-automation/SKILL.md +6 -0
  630. package/bundled-skills/monopoly/SKILL.md +1 -0
  631. package/bundled-skills/monopoly/patterns/SKILL.md +1 -0
  632. package/bundled-skills/monopoly/scale-benchmarks/SKILL.md +1 -0
  633. package/bundled-skills/monopoly/security-checklist/SKILL.md +6 -0
  634. package/bundled-skills/monopoly/tech-matrix/SKILL.md +1 -0
  635. package/bundled-skills/monorepo-architect/SKILL.md +6 -0
  636. package/bundled-skills/monte-carlo-analyze-root-cause/SKILL.md +1 -1
  637. package/bundled-skills/monte-carlo-performance-diagnosis/SKILL.md +7 -1
  638. package/bundled-skills/monte-carlo-validation-notebook/SKILL.md +4 -601
  639. package/bundled-skills/monte-carlo-validation-notebook/references/detailed-guide.md +613 -0
  640. package/bundled-skills/moodle-external-api-development/SKILL.md +4 -517
  641. package/bundled-skills/moodle-external-api-development/references/detailed-guide.md +529 -0
  642. package/bundled-skills/multi-agent-architect/SKILL.md +1 -0
  643. package/bundled-skills/multi-agent-brainstorming/SKILL.md +6 -0
  644. package/bundled-skills/multi-agent-patterns/SKILL.md +1 -0
  645. package/bundled-skills/multi-platform-apps-multi-platform/SKILL.md +6 -0
  646. package/bundled-skills/n8n-code-javascript/SKILL.md +3 -667
  647. package/bundled-skills/n8n-code-javascript/references/detailed-guide.md +683 -0
  648. package/bundled-skills/n8n-code-python/SKILL.md +3 -664
  649. package/bundled-skills/n8n-code-python/references/detailed-guide.md +682 -0
  650. package/bundled-skills/n8n-expression-syntax/SKILL.md +5 -401
  651. package/bundled-skills/n8n-expression-syntax/references/detailed-guide.md +416 -0
  652. package/bundled-skills/n8n-mcp-tools-expert/SKILL.md +5 -485
  653. package/bundled-skills/n8n-mcp-tools-expert/references/detailed-guide.md +499 -0
  654. package/bundled-skills/n8n-node-configuration/SKILL.md +5 -775
  655. package/bundled-skills/n8n-node-configuration/references/detailed-guide.md +789 -0
  656. package/bundled-skills/n8n-validation-expert/SKILL.md +5 -679
  657. package/bundled-skills/n8n-validation-expert/references/detailed-guide.md +694 -0
  658. package/bundled-skills/n8n-workflow-patterns/SKILL.md +1 -0
  659. package/bundled-skills/nanobanana-ppt-skills/SKILL.md +6 -0
  660. package/bundled-skills/native-data-fetching/SKILL.md +2 -456
  661. package/bundled-skills/native-data-fetching/references/detailed-guide.md +465 -0
  662. package/bundled-skills/neon-ai-gateway/SKILL.md +1 -1
  663. package/bundled-skills/neon-functions/SKILL.md +1 -1
  664. package/bundled-skills/neon-object-storage/SKILL.md +1 -1
  665. package/bundled-skills/neon-postgres/SKILL.md +1 -1
  666. package/bundled-skills/neon-postgres-branches/SKILL.md +1 -1
  667. package/bundled-skills/neon-postgres-egress-optimizer/SKILL.md +1 -1
  668. package/bundled-skills/nerdzao-elite/SKILL.md +6 -0
  669. package/bundled-skills/nerdzao-elite-gemini-high/SKILL.md +6 -0
  670. package/bundled-skills/nestjs-expert/SKILL.md +2 -524
  671. package/bundled-skills/nestjs-expert/references/detailed-guide.md +539 -0
  672. package/bundled-skills/networkx/SKILL.md +1 -0
  673. package/bundled-skills/new-rails-project/SKILL.md +7 -0
  674. package/bundled-skills/newman-cicd-integration/SKILL.md +1 -1
  675. package/bundled-skills/nika/SKILL.md +1 -0
  676. package/bundled-skills/nosql-expert/SKILL.md +6 -0
  677. package/bundled-skills/not-a-vibe-coder/SKILL.md +7 -0
  678. package/bundled-skills/notion-template-business/SKILL.md +2 -505
  679. package/bundled-skills/notion-template-business/references/detailed-guide.md +523 -0
  680. package/bundled-skills/nutrition-analyzer/SKILL.md +5 -766
  681. package/bundled-skills/nutrition-analyzer/references/detailed-guide.md +775 -0
  682. package/bundled-skills/objection-preemptor/SKILL.md +6 -0
  683. package/bundled-skills/observability-and-instrumentation/SKILL.md +1 -1
  684. package/bundled-skills/observability-engineer/SKILL.md +16 -8
  685. package/bundled-skills/obsidian-bases/SKILL.md +4 -366
  686. package/bundled-skills/obsidian-bases/references/detailed-guide.md +380 -0
  687. package/bundled-skills/occupational-health-analyzer/SKILL.md +1 -0
  688. package/bundled-skills/odoo-accounting-setup/SKILL.md +1 -0
  689. package/bundled-skills/odoo-automated-tests/SKILL.md +1 -0
  690. package/bundled-skills/odoo-backup-strategy/SKILL.md +1 -0
  691. package/bundled-skills/odoo-docker-deployment/SKILL.md +1 -0
  692. package/bundled-skills/odoo-ecommerce-configurator/SKILL.md +1 -0
  693. package/bundled-skills/odoo-edi-connector/SKILL.md +1 -0
  694. package/bundled-skills/odoo-hr-payroll-setup/SKILL.md +1 -0
  695. package/bundled-skills/odoo-inventory-optimizer/SKILL.md +1 -0
  696. package/bundled-skills/odoo-l10n-compliance/SKILL.md +1 -0
  697. package/bundled-skills/odoo-manufacturing-advisor/SKILL.md +1 -0
  698. package/bundled-skills/odoo-migration-helper/SKILL.md +1 -0
  699. package/bundled-skills/odoo-module-developer/SKILL.md +1 -0
  700. package/bundled-skills/odoo-orm-expert/SKILL.md +1 -0
  701. package/bundled-skills/odoo-performance-tuner/SKILL.md +1 -0
  702. package/bundled-skills/odoo-project-timesheet/SKILL.md +1 -0
  703. package/bundled-skills/odoo-purchase-workflow/SKILL.md +1 -0
  704. package/bundled-skills/odoo-qweb-templates/SKILL.md +1 -0
  705. package/bundled-skills/odoo-rpc-api/SKILL.md +1 -0
  706. package/bundled-skills/odoo-sales-crm-expert/SKILL.md +1 -0
  707. package/bundled-skills/odoo-security-rules/SKILL.md +1 -0
  708. package/bundled-skills/odoo-shopify-integration/SKILL.md +1 -0
  709. package/bundled-skills/odoo-upgrade-advisor/SKILL.md +1 -0
  710. package/bundled-skills/odoo-woocommerce-bridge/SKILL.md +1 -0
  711. package/bundled-skills/odoo-xml-views-builder/SKILL.md +1 -0
  712. package/bundled-skills/odw/SKILL.md +6 -0
  713. package/bundled-skills/offers/SKILL.md +1 -1
  714. package/bundled-skills/onboarding/SKILL.md +1 -1
  715. package/bundled-skills/onboarding-psychologist/SKILL.md +6 -0
  716. package/bundled-skills/one-drive-automation/SKILL.md +6 -0
  717. package/bundled-skills/openapi-spec-generator/SKILL.md +1 -1
  718. package/bundled-skills/oral-health-analyzer/SKILL.md +8 -515
  719. package/bundled-skills/oral-health-analyzer/references/detailed-guide.md +529 -0
  720. package/bundled-skills/outlook-automation/SKILL.md +6 -0
  721. package/bundled-skills/pagespeed-enhancer/SKILL.md +4 -520
  722. package/bundled-skills/pagespeed-enhancer/references/detailed-guide.md +533 -0
  723. package/bundled-skills/paid-ads/SKILL.md +2 -541
  724. package/bundled-skills/paid-ads/references/detailed-guide.md +558 -0
  725. package/bundled-skills/parallel-search-mcp/SKILL.md +134 -0
  726. package/bundled-skills/payment-integration/SKILL.md +6 -0
  727. package/bundled-skills/paywall-upgrade-cro/SKILL.md +2 -560
  728. package/bundled-skills/paywall-upgrade-cro/references/detailed-guide.md +579 -0
  729. package/bundled-skills/performance-testing-review-multi-agent-review/SKILL.md +42 -214
  730. package/bundled-skills/personal-tool-builder/SKILL.md +2 -688
  731. package/bundled-skills/personal-tool-builder/references/detailed-guide.md +705 -0
  732. package/bundled-skills/phase-gated-debugging/SKILL.md +6 -0
  733. package/bundled-skills/photopea-embedded-editor/SKILL.md +3 -1218
  734. package/bundled-skills/photopea-embedded-editor/references/detailed-guide.md +1252 -0
  735. package/bundled-skills/php-pro/SKILL.md +6 -0
  736. package/bundled-skills/pi-custom-model/SKILL.md +6 -0
  737. package/bundled-skills/pipedrive-automation/SKILL.md +6 -0
  738. package/bundled-skills/pitch-psychologist/SKILL.md +6 -0
  739. package/bundled-skills/plaid-fintech/SKILL.md +8 -829
  740. package/bundled-skills/plaid-fintech/references/detailed-guide.md +837 -0
  741. package/bundled-skills/plotly/SKILL.md +1 -0
  742. package/bundled-skills/polars/SKILL.md +1 -0
  743. package/bundled-skills/popup-cro/SKILL.md +6 -0
  744. package/bundled-skills/posix-shell-pro/SKILL.md +6 -0
  745. package/bundled-skills/postgresql-cli/SKILL.md +1 -1
  746. package/bundled-skills/postman-collection-generator/SKILL.md +1 -1
  747. package/bundled-skills/postman-newman-automation/SKILL.md +1 -1
  748. package/bundled-skills/postman-openapi-converter/SKILL.md +1 -1
  749. package/bundled-skills/power-user-cultivation/SKILL.md +6 -572
  750. package/bundled-skills/power-user-cultivation/references/detailed-guide.md +585 -0
  751. package/bundled-skills/pr-writer/SKILL.md +1 -0
  752. package/bundled-skills/price-psychology-strategist/SKILL.md +6 -0
  753. package/bundled-skills/pricing/SKILL.md +1 -1
  754. package/bundled-skills/privacy-mask/SKILL.md +1 -1
  755. package/bundled-skills/product-decision-agent/SKILL.md +6 -0
  756. package/bundled-skills/product-inventor/SKILL.md +2 -627
  757. package/bundled-skills/product-inventor/references/detailed-guide.md +646 -0
  758. package/bundled-skills/product-manager/SKILL.md +6 -0
  759. package/bundled-skills/product-marketing/SKILL.md +1 -1
  760. package/bundled-skills/production-code-audit/SKILL.md +2 -264
  761. package/bundled-skills/production-code-audit/references/detailed-guide.md +277 -0
  762. package/bundled-skills/professional-proofreader/SKILL.md +6 -0
  763. package/bundled-skills/programmatic-seo/SKILL.md +6 -0
  764. package/bundled-skills/project-development/SKILL.md +1 -0
  765. package/bundled-skills/project-skill-audit/SKILL.md +6 -0
  766. package/bundled-skills/public-relations/SKILL.md +1 -1
  767. package/bundled-skills/pubmed-database/SKILL.md +1 -0
  768. package/bundled-skills/push-skill-to-github/SKILL.md +6 -0
  769. package/bundled-skills/pypict-skill/SKILL.md +6 -0
  770. package/bundled-skills/pytest-skill/SKILL.md +1 -1
  771. package/bundled-skills/qiskit/SKILL.md +1 -0
  772. package/bundled-skills/quant-analyst/SKILL.md +6 -0
  773. package/bundled-skills/radix-ui-design-system/SKILL.md +2 -693
  774. package/bundled-skills/radix-ui-design-system/references/detailed-guide.md +711 -0
  775. package/bundled-skills/rag-engineer/SKILL.md +6 -0
  776. package/bundled-skills/rclone-cli/SKILL.md +1 -1
  777. package/bundled-skills/react-flow-architect/SKILL.md +2 -507
  778. package/bundled-skills/react-flow-architect/references/detailed-guide.md +517 -0
  779. package/bundled-skills/react-patterns/SKILL.md +6 -0
  780. package/bundled-skills/read-all-adrs/SKILL.md +6 -0
  781. package/bundled-skills/readme/SKILL.md +4 -822
  782. package/bundled-skills/readme/references/detailed-guide.md +829 -0
  783. package/bundled-skills/redesign-existing-projects/SKILL.md +6 -0
  784. package/bundled-skills/redis-cli/SKILL.md +1 -1
  785. package/bundled-skills/referral-program/SKILL.md +2 -508
  786. package/bundled-skills/referral-program/references/detailed-guide.md +524 -0
  787. package/bundled-skills/rehabilitation-analyzer/SKILL.md +5 -629
  788. package/bundled-skills/rehabilitation-analyzer/references/detailed-guide.md +641 -0
  789. package/bundled-skills/remotion/SKILL.md +1 -0
  790. package/bundled-skills/research-prompt/SKILL.md +6 -0
  791. package/bundled-skills/resolving-merge-conflicts/SKILL.md +6 -0
  792. package/bundled-skills/review-and-simplify-changes/SKILL.md +7 -1
  793. package/bundled-skills/review-swarm/SKILL.md +7 -1
  794. package/bundled-skills/risk-manager/SKILL.md +6 -0
  795. package/bundled-skills/robius-app-architecture/SKILL.md +1 -0
  796. package/bundled-skills/robius-event-action/SKILL.md +1 -0
  797. package/bundled-skills/robius-matrix-integration/SKILL.md +1 -0
  798. package/bundled-skills/robius-state-management/SKILL.md +1 -0
  799. package/bundled-skills/robius-widget-patterns/SKILL.md +1 -0
  800. package/bundled-skills/robot-framework-skill/SKILL.md +1 -1
  801. package/bundled-skills/ruby-pro/SKILL.md +6 -0
  802. package/bundled-skills/saga-orchestration/SKILL.md +4 -482
  803. package/bundled-skills/saga-orchestration/references/detailed-guide.md +491 -0
  804. package/bundled-skills/sales-automator/SKILL.md +6 -0
  805. package/bundled-skills/salesforce-development/SKILL.md +2 -985
  806. package/bundled-skills/salesforce-development/references/detailed-guide.md +994 -0
  807. package/bundled-skills/sam-altman/SKILL.md +5 -1040
  808. package/bundled-skills/sam-altman/references/detailed-guide.md +1102 -0
  809. package/bundled-skills/scala-pro/SKILL.md +6 -0
  810. package/bundled-skills/scanning-tools/SKILL.md +2 -546
  811. package/bundled-skills/scanning-tools/references/detailed-guide.md +555 -0
  812. package/bundled-skills/scanpy/SKILL.md +1 -0
  813. package/bundled-skills/scarcity-urgency-psychologist/SKILL.md +6 -0
  814. package/bundled-skills/scientific-writing/SKILL.md +3 -691
  815. package/bundled-skills/scientific-writing/references/detailed-guide.md +702 -0
  816. package/bundled-skills/scikit-learn/SKILL.md +3 -462
  817. package/bundled-skills/scikit-learn/references/detailed-guide.md +475 -0
  818. package/bundled-skills/scroll-experience/SKILL.md +2 -560
  819. package/bundled-skills/scroll-experience/references/detailed-guide.md +578 -0
  820. package/bundled-skills/sdk-dx/SKILL.md +6 -517
  821. package/bundled-skills/sdk-dx/references/detailed-guide.md +530 -0
  822. package/bundled-skills/seaborn/SKILL.md +5 -661
  823. package/bundled-skills/seaborn/references/detailed-guide.md +677 -0
  824. package/bundled-skills/search-specialist/SKILL.md +6 -0
  825. package/bundled-skills/security/aws-compliance-checker/SKILL.md +4 -492
  826. package/bundled-skills/security/aws-compliance-checker/references/detailed-guide.md +502 -0
  827. package/bundled-skills/security-bluebook-builder/SKILL.md +7 -0
  828. package/bundled-skills/security-scanning-security-hardening/SKILL.md +6 -0
  829. package/bundled-skills/security-scanning-security-sast/SKILL.md +2 -463
  830. package/bundled-skills/security-scanning-security-sast/references/detailed-guide.md +476 -0
  831. package/bundled-skills/segment-cdp/SKILL.md +8 -822
  832. package/bundled-skills/segment-cdp/references/detailed-guide.md +830 -0
  833. package/bundled-skills/selenium-skill/SKILL.md +1 -1
  834. package/bundled-skills/semgrep-rule-creator/SKILL.md +1 -0
  835. package/bundled-skills/semgrep-rule-variant-creator/SKILL.md +1 -0
  836. package/bundled-skills/sendgrid-automation/SKILL.md +6 -0
  837. package/bundled-skills/seo-audit/SKILL.md +33 -44
  838. package/bundled-skills/seo-content/SKILL.md +6 -0
  839. package/bundled-skills/seo-content-auditor/SKILL.md +6 -0
  840. package/bundled-skills/seo-content-writer/SKILL.md +6 -0
  841. package/bundled-skills/seo-forensic-incident-response/SKILL.md +6 -0
  842. package/bundled-skills/seo-fundamentals/SKILL.md +6 -0
  843. package/bundled-skills/seo-programmatic/SKILL.md +6 -0
  844. package/bundled-skills/sequence-psychologist/SKILL.md +6 -0
  845. package/bundled-skills/server-management/SKILL.md +6 -0
  846. package/bundled-skills/service-mesh-expert/SKILL.md +6 -0
  847. package/bundled-skills/setup-help/SKILL.md +6 -0
  848. package/bundled-skills/sexual-health-analyzer/SKILL.md +8 -1109
  849. package/bundled-skills/sexual-health-analyzer/references/detailed-guide.md +1123 -0
  850. package/bundled-skills/sharp-coder/SKILL.md +1 -0
  851. package/bundled-skills/sharp-edges/SKILL.md +1 -0
  852. package/bundled-skills/shodan-reconnaissance/SKILL.md +2 -356
  853. package/bundled-skills/shodan-reconnaissance/references/detailed-guide.md +366 -0
  854. package/bundled-skills/shopify-apps/SKILL.md +2 -1477
  855. package/bundled-skills/shopify-apps/references/detailed-guide.md +1512 -0
  856. package/bundled-skills/short/SKILL.md +6 -0
  857. package/bundled-skills/signup-flow-cro/SKILL.md +6 -0
  858. package/bundled-skills/simplify-code/SKILL.md +6 -0
  859. package/bundled-skills/skill-creator/SKILL.md +2 -568
  860. package/bundled-skills/skill-creator/references/detailed-guide.md +581 -0
  861. package/bundled-skills/skill-creator-ms/SKILL.md +2 -601
  862. package/bundled-skills/skill-creator-ms/references/detailed-guide.md +614 -0
  863. package/bundled-skills/skill-improver/SKILL.md +1 -0
  864. package/bundled-skills/skill-router/SKILL.md +1 -0
  865. package/bundled-skills/skill-scanner/SKILL.md +1 -0
  866. package/bundled-skills/skill-security-audit/SKILL.md +87 -0
  867. package/bundled-skills/skill-seekers/SKILL.md +6 -0
  868. package/bundled-skills/skill-writer/SKILL.md +1 -0
  869. package/bundled-skills/skin-health-analyzer/SKILL.md +8 -696
  870. package/bundled-skills/skin-health-analyzer/references/detailed-guide.md +710 -0
  871. package/bundled-skills/slack-automation/SKILL.md +6 -0
  872. package/bundled-skills/slack-bot-builder/SKILL.md +2 -1372
  873. package/bundled-skills/slack-bot-builder/references/detailed-guide.md +1395 -0
  874. package/bundled-skills/sleep-analyzer/SKILL.md +5 -764
  875. package/bundled-skills/sleep-analyzer/references/detailed-guide.md +773 -0
  876. package/bundled-skills/smartui-skill/SKILL.md +1 -1
  877. package/bundled-skills/smtp-penetration-testing/SKILL.md +2 -346
  878. package/bundled-skills/smtp-penetration-testing/references/detailed-guide.md +355 -0
  879. package/bundled-skills/social-content/SKILL.md +2 -797
  880. package/bundled-skills/social-content/references/detailed-guide.md +816 -0
  881. package/bundled-skills/social-proof-architect/SKILL.md +6 -0
  882. package/bundled-skills/software-architecture/SKILL.md +6 -0
  883. package/bundled-skills/spec-to-code-compliance/SKILL.md +7 -0
  884. package/bundled-skills/speckit-updater/SKILL.md +1 -0
  885. package/bundled-skills/speed/SKILL.md +7 -0
  886. package/bundled-skills/sred-project-organizer/SKILL.md +1 -0
  887. package/bundled-skills/sred-work-summary/SKILL.md +1 -0
  888. package/bundled-skills/statsmodels/SKILL.md +3 -586
  889. package/bundled-skills/statsmodels/references/detailed-guide.md +600 -0
  890. package/bundled-skills/steve-jobs/SKILL.md +2 -564
  891. package/bundled-skills/steve-jobs/references/detailed-guide.md +574 -0
  892. package/bundled-skills/stitch-loop/SKILL.md +1 -0
  893. package/bundled-skills/stripe-automation/SKILL.md +6 -0
  894. package/bundled-skills/stripe-integration/SKILL.md +60 -79
  895. package/bundled-skills/styleseed-design-review/SKILL.md +1 -1
  896. package/bundled-skills/subagent-orchestrator/SKILL.md +1 -0
  897. package/bundled-skills/subject-line-psychologist/SKILL.md +6 -0
  898. package/bundled-skills/supabase/SKILL.md +1 -1
  899. package/bundled-skills/supabase-automation/SKILL.md +6 -0
  900. package/bundled-skills/superpowers-lab/SKILL.md +6 -0
  901. package/bundled-skills/supply-chain-risk-auditor/SKILL.md +7 -0
  902. package/bundled-skills/swiftui-expert-skill/SKILL.md +1 -1
  903. package/bundled-skills/sympy/SKILL.md +3 -426
  904. package/bundled-skills/sympy/references/detailed-guide.md +439 -0
  905. package/bundled-skills/systematic-debugging/CREATION-LOG.md +3 -0
  906. package/bundled-skills/systematic-debugging/SKILL.md +30 -34
  907. package/bundled-skills/systematic-debugging/condition-based-waiting.md +9 -6
  908. package/bundled-skills/systematic-debugging/defense-in-depth.md +13 -7
  909. package/bundled-skills/systematic-debugging/find-polluter.sh +77 -57
  910. package/bundled-skills/systematic-debugging/root-cause-tracing.md +7 -5
  911. package/bundled-skills/systematic-debugging/test-academic.md +3 -0
  912. package/bundled-skills/systematic-debugging/test-pressure-1.md +3 -0
  913. package/bundled-skills/systematic-debugging/test-pressure-2.md +3 -0
  914. package/bundled-skills/systematic-debugging/test-pressure-3.md +3 -0
  915. package/bundled-skills/tcm-constitution-analyzer/SKILL.md +5 -655
  916. package/bundled-skills/tcm-constitution-analyzer/references/detailed-guide.md +660 -0
  917. package/bundled-skills/tdd-workflows-tdd-cycle/SKILL.md +6 -0
  918. package/bundled-skills/technical-tutorials/SKILL.md +5 -483
  919. package/bundled-skills/technical-tutorials/references/detailed-guide.md +496 -0
  920. package/bundled-skills/telegram/SKILL.md +2 -541
  921. package/bundled-skills/telegram/references/detailed-guide.md +569 -0
  922. package/bundled-skills/telegram-mini-app/SKILL.md +2 -643
  923. package/bundled-skills/telegram-mini-app/references/detailed-guide.md +661 -0
  924. package/bundled-skills/temporal-python-pro/SKILL.md +6 -0
  925. package/bundled-skills/terraform-skill/SKILL.md +4 -417
  926. package/bundled-skills/terraform-skill/references/detailed-guide.md +430 -0
  927. package/bundled-skills/test-driven-development/SKILL.md +21 -124
  928. package/bundled-skills/test-driven-development/testing-anti-patterns.md +6 -6
  929. package/bundled-skills/test-framework-migration-skill/SKILL.md +7 -1
  930. package/bundled-skills/threat-modeling-expert/SKILL.md +6 -0
  931. package/bundled-skills/threejs-animation/SKILL.md +5 -551
  932. package/bundled-skills/threejs-animation/references/detailed-guide.md +566 -0
  933. package/bundled-skills/threejs-fundamentals/SKILL.md +5 -525
  934. package/bundled-skills/threejs-fundamentals/references/detailed-guide.md +535 -0
  935. package/bundled-skills/threejs-geometry/SKILL.md +5 -572
  936. package/bundled-skills/threejs-geometry/references/detailed-guide.md +587 -0
  937. package/bundled-skills/threejs-interaction/SKILL.md +5 -666
  938. package/bundled-skills/threejs-interaction/references/detailed-guide.md +679 -0
  939. package/bundled-skills/threejs-lighting/SKILL.md +1 -0
  940. package/bundled-skills/threejs-loaders/SKILL.md +5 -637
  941. package/bundled-skills/threejs-loaders/references/detailed-guide.md +651 -0
  942. package/bundled-skills/threejs-materials/SKILL.md +3 -535
  943. package/bundled-skills/threejs-materials/references/detailed-guide.md +560 -0
  944. package/bundled-skills/threejs-postprocessing/SKILL.md +5 -617
  945. package/bundled-skills/threejs-postprocessing/references/detailed-guide.md +630 -0
  946. package/bundled-skills/threejs-shaders/SKILL.md +5 -679
  947. package/bundled-skills/threejs-shaders/references/detailed-guide.md +695 -0
  948. package/bundled-skills/threejs-skills/SKILL.md +4 -683
  949. package/bundled-skills/threejs-skills/references/detailed-guide.md +693 -0
  950. package/bundled-skills/threejs-textures/SKILL.md +5 -630
  951. package/bundled-skills/threejs-textures/references/detailed-guide.md +649 -0
  952. package/bundled-skills/to-issues/SKILL.md +5 -0
  953. package/bundled-skills/to-prd/SKILL.md +5 -0
  954. package/bundled-skills/todoist-automation/SKILL.md +6 -0
  955. package/bundled-skills/tools-page-seo-optimizer/SKILL.md +2 -580
  956. package/bundled-skills/tools-page-seo-optimizer/references/detailed-guide.md +602 -0
  957. package/bundled-skills/top-web-vulnerabilities/SKILL.md +2 -513
  958. package/bundled-skills/top-web-vulnerabilities/references/detailed-guide.md +523 -0
  959. package/bundled-skills/train-sentence-transformers/SKILL.md +1 -1
  960. package/bundled-skills/transformers-js/SKILL.md +5 -669
  961. package/bundled-skills/transformers-js/references/detailed-guide.md +683 -0
  962. package/bundled-skills/travel-health-analyzer/SKILL.md +1 -0
  963. package/bundled-skills/trello-automation/SKILL.md +6 -0
  964. package/bundled-skills/trigger-dev/SKILL.md +2 -937
  965. package/bundled-skills/trigger-dev/references/detailed-guide.md +950 -0
  966. package/bundled-skills/trust-calibrator/SKILL.md +6 -0
  967. package/bundled-skills/tutorial-engineer/SKILL.md +6 -0
  968. package/bundled-skills/twilio-communications/SKILL.md +2 -1549
  969. package/bundled-skills/twilio-communications/references/detailed-guide.md +1574 -0
  970. package/bundled-skills/typescript-pro/SKILL.md +6 -0
  971. package/bundled-skills/ui-a11y/SKILL.md +6 -0
  972. package/bundled-skills/ui-component/SKILL.md +6 -0
  973. package/bundled-skills/ui-motion/SKILL.md +7 -1
  974. package/bundled-skills/ui-pattern/SKILL.md +6 -0
  975. package/bundled-skills/ui-review/SKILL.md +6 -0
  976. package/bundled-skills/ui-skills/SKILL.md +6 -0
  977. package/bundled-skills/ui-tokens/SKILL.md +6 -0
  978. package/bundled-skills/uniprot-database/SKILL.md +1 -0
  979. package/bundled-skills/unslop-commit/SKILL.md +1 -1
  980. package/bundled-skills/unslop-file/SKILL.md +1 -1
  981. package/bundled-skills/unslop-review/SKILL.md +1 -1
  982. package/bundled-skills/unsplash-integration/SKILL.md +6 -0
  983. package/bundled-skills/update-swiftui-apis/SKILL.md +1 -1
  984. package/bundled-skills/upstash-qstash/SKILL.md +2 -919
  985. package/bundled-skills/upstash-qstash/references/detailed-guide.md +932 -0
  986. package/bundled-skills/usage-based-pricing/SKILL.md +5 -395
  987. package/bundled-skills/usage-based-pricing/references/detailed-guide.md +407 -0
  988. package/bundled-skills/ux-audit/SKILL.md +6 -0
  989. package/bundled-skills/ux-flow/SKILL.md +6 -0
  990. package/bundled-skills/ux-persuasion-engineer/SKILL.md +6 -0
  991. package/bundled-skills/variant-analysis/SKILL.md +1 -0
  992. package/bundled-skills/varlock/SKILL.md +1 -0
  993. package/bundled-skills/varlock-claude-skill/SKILL.md +6 -0
  994. package/bundled-skills/vector-database-engineer/SKILL.md +6 -0
  995. package/bundled-skills/vercel-deployment/SKILL.md +2 -650
  996. package/bundled-skills/vercel-deployment/references/detailed-guide.md +660 -0
  997. package/bundled-skills/vexor/SKILL.md +6 -0
  998. package/bundled-skills/vexor-cli/SKILL.md +1 -0
  999. package/bundled-skills/visual-emotion-engineer/SKILL.md +6 -0
  1000. package/bundled-skills/vizcom/SKILL.md +6 -0
  1001. package/bundled-skills/voice-agents/SKILL.md +2 -867
  1002. package/bundled-skills/voice-agents/references/detailed-guide.md +890 -0
  1003. package/bundled-skills/voice-ai-development/SKILL.md +2 -583
  1004. package/bundled-skills/voice-ai-development/references/detailed-guide.md +594 -0
  1005. package/bundled-skills/voice-ai-engine-development/SKILL.md +2 -702
  1006. package/bundled-skills/voice-ai-engine-development/references/detailed-guide.md +720 -0
  1007. package/bundled-skills/warren-buffett/SKILL.md +2 -577
  1008. package/bundled-skills/warren-buffett/references/detailed-guide.md +583 -0
  1009. package/bundled-skills/web-performance-optimization/SKILL.md +2 -214
  1010. package/bundled-skills/web-performance-optimization/references/detailed-guide.md +226 -0
  1011. package/bundled-skills/web-scraper/SKILL.md +2 -728
  1012. package/bundled-skills/web-scraper/references/detailed-guide.md +792 -0
  1013. package/bundled-skills/webflow-automation/SKILL.md +6 -0
  1014. package/bundled-skills/weightloss-analyzer/SKILL.md +1 -0
  1015. package/bundled-skills/wellally-tech/SKILL.md +5 -367
  1016. package/bundled-skills/wellally-tech/references/detailed-guide.md +379 -0
  1017. package/bundled-skills/wiki-architect/SKILL.md +6 -0
  1018. package/bundled-skills/wiki-changelog/SKILL.md +6 -0
  1019. package/bundled-skills/wiki-onboarding/SKILL.md +6 -0
  1020. package/bundled-skills/wiki-qa/SKILL.md +6 -0
  1021. package/bundled-skills/wiki-researcher/SKILL.md +6 -0
  1022. package/bundled-skills/windows-privilege-escalation/SKILL.md +131 -0
  1023. package/bundled-skills/windows-privilege-escalation/references/detailed-guide.md +397 -0
  1024. package/bundled-skills/wireshark-analysis/SKILL.md +2 -419
  1025. package/bundled-skills/wireshark-analysis/references/detailed-guide.md +429 -0
  1026. package/bundled-skills/wjttc-builder/SKILL.md +1 -1
  1027. package/bundled-skills/wjttc-tester/SKILL.md +1 -1
  1028. package/bundled-skills/wordpress/SKILL.md +2 -572
  1029. package/bundled-skills/wordpress/references/detailed-guide.md +582 -0
  1030. package/bundled-skills/wordpress-penetration-testing/SKILL.md +68 -0
  1031. package/bundled-skills/wordpress-penetration-testing/references/detailed-guide.md +555 -0
  1032. package/bundled-skills/wordpress-plugin-development/SKILL.md +2 -474
  1033. package/bundled-skills/wordpress-plugin-development/references/detailed-guide.md +485 -0
  1034. package/bundled-skills/wordpress-theme-development/SKILL.md +2 -479
  1035. package/bundled-skills/wordpress-theme-development/references/detailed-guide.md +490 -0
  1036. package/bundled-skills/wordpress-woocommerce-development/SKILL.md +2 -605
  1037. package/bundled-skills/wordpress-woocommerce-development/references/detailed-guide.md +615 -0
  1038. package/bundled-skills/workflow-automation/SKILL.md +2 -875
  1039. package/bundled-skills/workflow-automation/references/detailed-guide.md +902 -0
  1040. package/bundled-skills/writing-great-skills/SKILL.md +5 -0
  1041. package/bundled-skills/x-article-publisher-skill/SKILL.md +6 -0
  1042. package/bundled-skills/x402-express-wrapper/SKILL.md +1 -0
  1043. package/bundled-skills/xss-html-injection/SKILL.md +2 -389
  1044. package/bundled-skills/xss-html-injection/references/detailed-guide.md +399 -0
  1045. package/bundled-skills/yann-lecun/SKILL.md +2 -1431
  1046. package/bundled-skills/yann-lecun/references/detailed-guide.md +1484 -0
  1047. package/bundled-skills/yann-lecun-filosofia/SKILL.md +6 -0
  1048. package/bundled-skills/yann-lecun-tecnico/SKILL.md +2 -485
  1049. package/bundled-skills/yann-lecun-tecnico/references/detailed-guide.md +502 -0
  1050. package/bundled-skills/youtube-seo-optimizer/SKILL.md +4 -884
  1051. package/bundled-skills/youtube-seo-optimizer/references/detailed-guide.md +907 -0
  1052. package/bundled-skills/zapier-make-patterns/SKILL.md +2 -728
  1053. package/bundled-skills/zapier-make-patterns/references/detailed-guide.md +752 -0
  1054. package/bundled-skills/zipai-optimizer/SKILL.md +7 -0
  1055. package/bundled-skills/zoom-automation/SKILL.md +6 -0
  1056. package/package.json +1 -1
  1057. package/skills_index.json +541 -383
  1058. package/bundled-skills/docs/AUDIT.md +0 -3
  1059. package/bundled-skills/docs/BUNDLES.md +0 -3
  1060. package/bundled-skills/docs/CATEGORIZATION_IMPLEMENTATION.md +0 -3
  1061. package/bundled-skills/docs/CI_DRIFT_FIX.md +0 -3
  1062. package/bundled-skills/docs/COMMUNITY_GUIDELINES.md +0 -3
  1063. package/bundled-skills/docs/DATE_TRACKING_IMPLEMENTATION.md +0 -3
  1064. package/bundled-skills/docs/EXAMPLES.md +0 -3
  1065. package/bundled-skills/docs/FAQ.md +0 -3
  1066. package/bundled-skills/docs/GETTING_STARTED.md +0 -3
  1067. package/bundled-skills/docs/KIRO_INTEGRATION.md +0 -3
  1068. package/bundled-skills/docs/QUALITY_BAR.md +0 -3
  1069. package/bundled-skills/docs/README.md +0 -51
  1070. package/bundled-skills/docs/SECURITY_GUARDRAILS.md +0 -3
  1071. package/bundled-skills/docs/SEC_SKILLS.md +0 -3
  1072. package/bundled-skills/docs/SKILLS_DATE_TRACKING.md +0 -3
  1073. package/bundled-skills/docs/SKILL_ANATOMY.md +0 -3
  1074. package/bundled-skills/docs/SKILL_TEMPLATE.md +0 -3
  1075. package/bundled-skills/docs/SMART_AUTO_CATEGORIZATION.md +0 -3
  1076. package/bundled-skills/docs/SOURCES.md +0 -3
  1077. package/bundled-skills/docs/USAGE.md +0 -3
  1078. package/bundled-skills/docs/VISUAL_GUIDE.md +0 -3
  1079. package/bundled-skills/docs/WORKFLOWS.md +0 -3
  1080. package/bundled-skills/docs/contributors/community-guidelines.md +0 -4
  1081. package/bundled-skills/docs/contributors/examples.md +0 -760
  1082. package/bundled-skills/docs/contributors/quality-bar.md +0 -104
  1083. package/bundled-skills/docs/contributors/security-guardrails.md +0 -70
  1084. package/bundled-skills/docs/contributors/skill-anatomy.md +0 -637
  1085. package/bundled-skills/docs/contributors/skill-template.md +0 -93
  1086. package/bundled-skills/docs/integrations/jetski-cortex.md +0 -282
  1087. package/bundled-skills/docs/integrations/jetski-gemini-loader/README.md +0 -103
  1088. package/bundled-skills/docs/integrations/jetski-gemini-loader/loader.mjs +0 -154
  1089. package/bundled-skills/docs/integrations/jetski-gemini-loader/package.json +0 -1
  1090. package/bundled-skills/docs/maintainers/aas-agent-first-control-plane-preview-profile.md +0 -63
  1091. package/bundled-skills/docs/maintainers/aas-agent-first-control-plane-v1-design.md +0 -304
  1092. package/bundled-skills/docs/maintainers/aas-agent-first-control-plane-v1-goal.md +0 -171
  1093. package/bundled-skills/docs/maintainers/aas-agent-first-control-plane-v1-worklog.md +0 -104
  1094. package/bundled-skills/docs/maintainers/audit.md +0 -89
  1095. package/bundled-skills/docs/maintainers/backups/README-2026-06-02.md +0 -687
  1096. package/bundled-skills/docs/maintainers/categorization-implementation.md +0 -160
  1097. package/bundled-skills/docs/maintainers/ci-drift-fix.md +0 -64
  1098. package/bundled-skills/docs/maintainers/date-tracking-implementation.md +0 -66
  1099. package/bundled-skills/docs/maintainers/full-repo-audit-2026-05-23.md +0 -289
  1100. package/bundled-skills/docs/maintainers/legacy-redirect-bridge.md +0 -46
  1101. package/bundled-skills/docs/maintainers/merge-batch.md +0 -81
  1102. package/bundled-skills/docs/maintainers/merging-prs.md +0 -79
  1103. package/bundled-skills/docs/maintainers/pr-autonomy.md +0 -102
  1104. package/bundled-skills/docs/maintainers/provenance-identity-exceptions.json +0 -14
  1105. package/bundled-skills/docs/maintainers/release-notes-7.2.0.md +0 -32
  1106. package/bundled-skills/docs/maintainers/release-process.md +0 -124
  1107. package/bundled-skills/docs/maintainers/repo-growth-seo.md +0 -133
  1108. package/bundled-skills/docs/maintainers/rollback-procedure.md +0 -43
  1109. package/bundled-skills/docs/maintainers/security-findings-triage-2026-03-15.csv +0 -34
  1110. package/bundled-skills/docs/maintainers/security-findings-triage-2026-03-15.md +0 -60
  1111. package/bundled-skills/docs/maintainers/security-findings-triage-2026-03-18-addendum.md +0 -22
  1112. package/bundled-skills/docs/maintainers/security-findings-triage-2026-03-29-addendum.md +0 -48
  1113. package/bundled-skills/docs/maintainers/security-findings-triage-2026-03-29-refresh.csv +0 -34
  1114. package/bundled-skills/docs/maintainers/security-findings-triage-2026-03-29-refresh.md +0 -86
  1115. package/bundled-skills/docs/maintainers/skills-date-tracking.md +0 -228
  1116. package/bundled-skills/docs/maintainers/skills-import-2026-03-21.md +0 -81
  1117. package/bundled-skills/docs/maintainers/skills-update-guide.md +0 -92
  1118. package/bundled-skills/docs/maintainers/smart-auto-categorization.md +0 -218
  1119. package/bundled-skills/docs/plugin-submissions/aas-agent-mcp-builder/README.md +0 -19
  1120. package/bundled-skills/docs/plugin-submissions/aas-agent-mcp-builder/evaluation-cases.json +0 -74
  1121. package/bundled-skills/docs/plugin-submissions/aas-agent-mcp-builder/evaluation-results.json +0 -86
  1122. package/bundled-skills/docs/plugin-submissions/aas-agent-mcp-builder/submission.json +0 -41
  1123. package/bundled-skills/docs/sources/LICENSE-MICROSOFT +0 -21
  1124. package/bundled-skills/docs/sources/microsoft-skills-attribution.json +0 -709
  1125. package/bundled-skills/docs/sources/sources.md +0 -179
  1126. package/bundled-skills/docs/users/aas-core.md +0 -225
  1127. package/bundled-skills/docs/users/agent-overload-recovery.md +0 -54
  1128. package/bundled-skills/docs/users/agentic-awesome-skills-vs-awesome-claude-skills.md +0 -44
  1129. package/bundled-skills/docs/users/ai-agent-skills.md +0 -48
  1130. package/bundled-skills/docs/users/best-claude-code-skills-github.md +0 -62
  1131. package/bundled-skills/docs/users/best-cursor-skills-github.md +0 -62
  1132. package/bundled-skills/docs/users/bundles.md +0 -1067
  1133. package/bundled-skills/docs/users/claude-code-skills.md +0 -89
  1134. package/bundled-skills/docs/users/codex-cli-skills.md +0 -88
  1135. package/bundled-skills/docs/users/cursor-skills.md +0 -56
  1136. package/bundled-skills/docs/users/discovery-manifest.md +0 -65
  1137. package/bundled-skills/docs/users/faq.md +0 -521
  1138. package/bundled-skills/docs/users/gemini-cli-skills.md +0 -56
  1139. package/bundled-skills/docs/users/getting-started.md +0 -233
  1140. package/bundled-skills/docs/users/kiro-integration.md +0 -304
  1141. package/bundled-skills/docs/users/local-config.md +0 -152
  1142. package/bundled-skills/docs/users/plugins.md +0 -201
  1143. package/bundled-skills/docs/users/security-and-antivirus.md +0 -63
  1144. package/bundled-skills/docs/users/security-skills.md +0 -1722
  1145. package/bundled-skills/docs/users/skills-library-overview.md +0 -87
  1146. package/bundled-skills/docs/users/skills-vs-mcp-tools.md +0 -108
  1147. package/bundled-skills/docs/users/specialized-plugin-roadmap.md +0 -101
  1148. package/bundled-skills/docs/users/usage.md +0 -465
  1149. package/bundled-skills/docs/users/visual-guide.md +0 -515
  1150. package/bundled-skills/docs/users/walkthrough.md +0 -46
  1151. package/bundled-skills/docs/users/windows-truncation-recovery.md +0 -135
  1152. package/bundled-skills/docs/users/workflows.md +0 -215
  1153. package/bundled-skills/docs/vietnamese/AAS_CORE.vi.md +0 -28
  1154. package/bundled-skills/docs/vietnamese/BUNDLES.vi.md +0 -124
  1155. package/bundled-skills/docs/vietnamese/CONTRIBUTING.vi.md +0 -242
  1156. package/bundled-skills/docs/vietnamese/EXAMPLES.vi.md +0 -56
  1157. package/bundled-skills/docs/vietnamese/FAQ.vi.md +0 -195
  1158. package/bundled-skills/docs/vietnamese/GETTING_STARTED.vi.md +0 -123
  1159. package/bundled-skills/docs/vietnamese/QUALITY_BAR.vi.md +0 -69
  1160. package/bundled-skills/docs/vietnamese/README.vi.md +0 -191
  1161. package/bundled-skills/docs/vietnamese/SECURITY.vi.md +0 -19
  1162. package/bundled-skills/docs/vietnamese/SECURITY_GUARDRAILS.vi.md +0 -51
  1163. package/bundled-skills/docs/vietnamese/SKILLS_README.vi.md +0 -106
  1164. package/bundled-skills/docs/vietnamese/SKILL_ANATOMY.vi.md +0 -633
  1165. package/bundled-skills/docs/vietnamese/SOURCES.vi.md +0 -21
  1166. package/bundled-skills/docs/vietnamese/TRANSLATION_PLAN.vi.md +0 -65
  1167. package/bundled-skills/docs/vietnamese/VISUAL_GUIDE.vi.md +0 -511
  1168. package/bundled-skills/docs/walkthrough.md +0 -3
@@ -0,0 +1,1512 @@
1
+ # Shopify Apps - Detailed Guide
2
+
3
+ > This file contains the detailed procedure and reference material extracted from `SKILL.md` for focused loading. The root skill defines activation, examples, safety constraints, and limitations.
4
+
5
+ ## Patterns
6
+
7
+ ### React Router App Setup
8
+
9
+ Modern Shopify app template with React Router
10
+
11
+ **When to use**: Starting a new Shopify app
12
+
13
+ ### Template
14
+
15
+ # Create new Shopify app with CLI
16
+ npm init @shopify/app@latest my-shopify-app
17
+
18
+ # Project structure
19
+ # my-shopify-app/
20
+ # ├── app/
21
+ # │ ├── routes/
22
+ # │ │ ├── app._index.tsx # Main app page
23
+ # │ │ ├── app.tsx # App layout with providers
24
+ # │ │ ├── auth.$.tsx # Auth callback
25
+ # │ │ └── webhooks.tsx # Webhook handler
26
+ # │ ├── shopify.server.ts # Server configuration
27
+ # │ └── root.tsx # Root layout
28
+ # ├── extensions/ # App extensions
29
+ # ├── shopify.app.toml # App configuration
30
+ # └── package.json
31
+
32
+ // shopify.app.toml
33
+ name = "my-shopify-app"
34
+ client_id = "your-client-id"
35
+ application_url = "https://your-app.example.com"
36
+
37
+ [access_scopes]
38
+ scopes = "read_products,write_products,read_orders"
39
+
40
+ [webhooks]
41
+ api_version = "2024-10"
42
+
43
+ [webhooks.subscriptions]
44
+ topics = ["orders/create", "products/update"]
45
+ uri = "/webhooks"
46
+
47
+ [auth]
48
+ redirect_urls = ["https://your-app.example.com/auth/callback"]
49
+
50
+ // app/shopify.server.ts
51
+ import "@shopify/shopify-app-remix/adapters/node";
52
+ import {
53
+ LATEST_API_VERSION,
54
+ shopifyApp,
55
+ DeliveryMethod,
56
+ } from "@shopify/shopify-app-remix/server";
57
+ import { PrismaSessionStorage } from "@shopify/shopify-app-session-storage-prisma";
58
+ import prisma from "./db.server";
59
+
60
+ const shopify = shopifyApp({
61
+ apiKey: process.env.SHOPIFY_API_KEY!,
62
+ apiSecretKey: process.env.SHOPIFY_API_SECRET!,
63
+ scopes: process.env.SCOPES?.split(","),
64
+ appUrl: process.env.SHOPIFY_APP_URL!,
65
+ authPathPrefix: "/auth",
66
+ sessionStorage: new PrismaSessionStorage(prisma),
67
+ distribution: AppDistribution.AppStore,
68
+ future: {
69
+ unstable_newEmbeddedAuthStrategy: true,
70
+ },
71
+ ...(process.env.SHOP_CUSTOM_DOMAIN
72
+ ? { customShopDomains: [process.env.SHOP_CUSTOM_DOMAIN] }
73
+ : {}),
74
+ });
75
+
76
+ export default shopify;
77
+ export const apiVersion = LATEST_API_VERSION;
78
+ export const authenticate = shopify.authenticate;
79
+ export const sessionStorage = shopify.sessionStorage;
80
+
81
+ ### Notes
82
+
83
+ - React Router replaced Remix as recommended template (late 2024)
84
+ - unstable_newEmbeddedAuthStrategy enabled by default for new apps
85
+ - Webhooks configured in shopify.app.toml, not code
86
+ - Run 'shopify app deploy' to apply configuration changes
87
+
88
+ ### Embedded App with App Bridge
89
+
90
+ Render app embedded in Shopify Admin
91
+
92
+ **When to use**: Building embedded admin app
93
+
94
+ ### Template
95
+
96
+ // app/routes/app.tsx - App layout with providers
97
+ import { Link, Outlet, useLoaderData, useRouteError } from "@remix-run/react";
98
+ import { AppProvider } from "@shopify/shopify-app-remix/react";
99
+ import polarisStyles from "@shopify/polaris/build/esm/styles.css?url";
100
+
101
+ export const links = () => [{ rel: "stylesheet", href: polarisStyles }];
102
+
103
+ export async function loader({ request }: LoaderFunctionArgs) {
104
+ await authenticate.admin(request);
105
+ return json({ apiKey: process.env.SHOPIFY_API_KEY! });
106
+ }
107
+
108
+ export default function App() {
109
+ const { apiKey } = useLoaderData<typeof loader>();
110
+
111
+ return (
112
+ <AppProvider isEmbeddedApp apiKey={apiKey}>
113
+ <ui-nav-menu>
114
+ <Link to="/app" rel="home">Home</Link>
115
+ <Link to="/app/products">Products</Link>
116
+ <Link to="/app/settings">Settings</Link>
117
+ </ui-nav-menu>
118
+ <Outlet />
119
+ </AppProvider>
120
+ );
121
+ }
122
+
123
+ export function ErrorBoundary() {
124
+ const error = useRouteError();
125
+ return (
126
+ <AppProvider isEmbeddedApp>
127
+ <Page>
128
+ <Card>
129
+ <Text as="p" variant="bodyMd">
130
+ Something went wrong. Please try again.
131
+ </Text>
132
+ </Card>
133
+ </Page>
134
+ </AppProvider>
135
+ );
136
+ }
137
+
138
+ // app/routes/app._index.tsx - Main app page
139
+ import {
140
+ Page,
141
+ Layout,
142
+ Card,
143
+ Text,
144
+ BlockStack,
145
+ Button,
146
+ } from "@shopify/polaris";
147
+ import { TitleBar } from "@shopify/app-bridge-react";
148
+
149
+ export async function loader({ request }: LoaderFunctionArgs) {
150
+ const { admin } = await authenticate.admin(request);
151
+
152
+ // GraphQL query
153
+ const response = await admin.graphql(`
154
+ query {
155
+ shop {
156
+ name
157
+ email
158
+ }
159
+ }
160
+ `);
161
+
162
+ const { data } = await response.json();
163
+ return json({ shop: data.shop });
164
+ }
165
+
166
+ export default function Index() {
167
+ const { shop } = useLoaderData<typeof loader>();
168
+
169
+ return (
170
+ <Page>
171
+ <TitleBar title="My Shopify App" />
172
+ <Layout>
173
+ <Layout.Section>
174
+ <Card>
175
+ <BlockStack gap="200">
176
+ <Text as="h2" variant="headingMd">
177
+ Welcome to {shop.name}!
178
+ </Text>
179
+ <Text as="p" variant="bodyMd">
180
+ Your app is now connected to this store.
181
+ </Text>
182
+ <Button variant="primary">
183
+ Get Started
184
+ </Button>
185
+ </BlockStack>
186
+ </Card>
187
+ </Layout.Section>
188
+ </Layout>
189
+ </Page>
190
+ );
191
+ }
192
+
193
+ ### Notes
194
+
195
+ - App Bridge required for Built for Shopify (July 2025)
196
+ - Polaris components match Shopify Admin design
197
+ - TitleBar and navigation from App Bridge
198
+ - Always authenticate requests with authenticate.admin()
199
+
200
+ ### Webhook Handling
201
+
202
+ Secure webhook processing with HMAC verification
203
+
204
+ **When to use**: Receiving Shopify webhooks
205
+
206
+ ### Template
207
+
208
+ // app/routes/webhooks.tsx
209
+ import type { ActionFunctionArgs } from "@remix-run/node";
210
+ import { authenticate } from "../shopify.server";
211
+ import db from "../db.server";
212
+
213
+ export const action = async ({ request }: ActionFunctionArgs) => {
214
+ // Authenticate webhook (verifies HMAC signature)
215
+ const { topic, shop, payload, admin } = await authenticate.webhook(request);
216
+
217
+ console.log(`Received ${topic} webhook for ${shop}`);
218
+
219
+ // Process based on topic
220
+ switch (topic) {
221
+ case "ORDERS_CREATE":
222
+ // Queue for async processing
223
+ await queueOrderProcessing(payload);
224
+ break;
225
+
226
+ case "PRODUCTS_UPDATE":
227
+ await handleProductUpdate(shop, payload);
228
+ break;
229
+
230
+ case "APP_UNINSTALLED":
231
+ // Clean up shop data
232
+ await db.session.deleteMany({ where: { shop } });
233
+ await db.shopData.delete({ where: { shop } });
234
+ break;
235
+
236
+ case "CUSTOMERS_DATA_REQUEST":
237
+ case "CUSTOMERS_REDACT":
238
+ case "SHOP_REDACT":
239
+ // GDPR webhooks - mandatory
240
+ await handleGDPRWebhook(topic, payload);
241
+ break;
242
+
243
+ default:
244
+ console.log(`Unhandled webhook topic: ${topic}`);
245
+ }
246
+
247
+ // CRITICAL: Return 200 immediately
248
+ // Shopify expects response within 5 seconds
249
+ return new Response(null, { status: 200 });
250
+ };
251
+
252
+ // Process asynchronously after responding
253
+ async function queueOrderProcessing(payload: any) {
254
+ // Use a job queue (BullMQ, etc.)
255
+ await jobQueue.add("process-order", {
256
+ orderId: payload.id,
257
+ orderData: payload,
258
+ });
259
+ }
260
+
261
+ async function handleProductUpdate(shop: string, payload: any) {
262
+ // Quick sync operation only
263
+ await db.product.upsert({
264
+ where: { shopifyId: payload.id },
265
+ update: {
266
+ title: payload.title,
267
+ updatedAt: new Date(),
268
+ },
269
+ create: {
270
+ shopifyId: payload.id,
271
+ shop,
272
+ title: payload.title,
273
+ },
274
+ });
275
+ }
276
+
277
+ async function handleGDPRWebhook(topic: string, payload: any) {
278
+ // GDPR compliance - required for all apps
279
+ switch (topic) {
280
+ case "CUSTOMERS_DATA_REQUEST":
281
+ // Return customer data within 30 days
282
+ break;
283
+ case "CUSTOMERS_REDACT":
284
+ // Delete customer data
285
+ break;
286
+ case "SHOP_REDACT":
287
+ // Delete all shop data (48 hours after uninstall)
288
+ break;
289
+ }
290
+ }
291
+
292
+ ### Notes
293
+
294
+ - Respond within 5 seconds or webhook fails
295
+ - Use job queues for heavy processing
296
+ - GDPR webhooks are mandatory for App Store
297
+ - HMAC verification handled by authenticate.webhook()
298
+
299
+ ### GraphQL Admin API
300
+
301
+ Query and mutate shop data with GraphQL
302
+
303
+ **When to use**: Interacting with Shopify Admin API
304
+
305
+ ### Template
306
+
307
+ // GraphQL queries with authenticated admin client
308
+ export async function loader({ request }: LoaderFunctionArgs) {
309
+ const { admin } = await authenticate.admin(request);
310
+
311
+ // Query products with pagination
312
+ const response = await admin.graphql(`
313
+ query GetProducts($first: Int!, $after: String) {
314
+ products(first: $first, after: $after) {
315
+ edges {
316
+ node {
317
+ id
318
+ title
319
+ status
320
+ totalInventory
321
+ priceRangeV2 {
322
+ minVariantPrice {
323
+ amount
324
+ currencyCode
325
+ }
326
+ }
327
+ images(first: 1) {
328
+ edges {
329
+ node {
330
+ url
331
+ altText
332
+ }
333
+ }
334
+ }
335
+ }
336
+ cursor
337
+ }
338
+ pageInfo {
339
+ hasNextPage
340
+ endCursor
341
+ }
342
+ }
343
+ }
344
+ `, {
345
+ variables: {
346
+ first: 10,
347
+ after: null,
348
+ },
349
+ });
350
+
351
+ const { data } = await response.json();
352
+ return json({ products: data.products });
353
+ }
354
+
355
+ // Mutations
356
+ export async function action({ request }: ActionFunctionArgs) {
357
+ const { admin } = await authenticate.admin(request);
358
+ const formData = await request.formData();
359
+ const productId = formData.get("productId");
360
+ const newTitle = formData.get("title");
361
+
362
+ const response = await admin.graphql(`
363
+ mutation UpdateProduct($input: ProductInput!) {
364
+ productUpdate(input: $input) {
365
+ product {
366
+ id
367
+ title
368
+ }
369
+ userErrors {
370
+ field
371
+ message
372
+ }
373
+ }
374
+ }
375
+ `, {
376
+ variables: {
377
+ input: {
378
+ id: productId,
379
+ title: newTitle,
380
+ },
381
+ },
382
+ });
383
+
384
+ const { data } = await response.json();
385
+
386
+ if (data.productUpdate.userErrors.length > 0) {
387
+ return json({
388
+ errors: data.productUpdate.userErrors,
389
+ }, { status: 400 });
390
+ }
391
+
392
+ return json({ product: data.productUpdate.product });
393
+ }
394
+
395
+ // Bulk operations for large datasets
396
+ async function bulkUpdateProducts(admin: AdminApiContext) {
397
+ // Create bulk operation
398
+ const response = await admin.graphql(`
399
+ mutation {
400
+ bulkOperationRunMutation(
401
+ mutation: "mutation call($input: ProductInput!) {
402
+ productUpdate(input: $input) { product { id } }
403
+ }",
404
+ stagedUploadPath: "path-to-staged-upload"
405
+ ) {
406
+ bulkOperation {
407
+ id
408
+ status
409
+ }
410
+ userErrors {
411
+ message
412
+ }
413
+ }
414
+ }
415
+ `);
416
+
417
+ // Poll for completion or use webhook
418
+ // BULK_OPERATIONS_FINISH webhook
419
+ }
420
+
421
+ ### Notes
422
+
423
+ - GraphQL required for new public apps (April 2025)
424
+ - Rate limit: 1000 points per 60 seconds
425
+ - Use bulk operations for >250 items
426
+ - Direct API access available from App Bridge
427
+
428
+ ### Billing API Integration
429
+
430
+ Implement subscription billing for your app
431
+
432
+ **When to use**: Monetizing Shopify app
433
+
434
+ ### Template
435
+
436
+ // app/routes/app.billing.tsx
437
+ import { json, redirect } from "@remix-run/node";
438
+ import { Page, Card, Button, BlockStack, Text } from "@shopify/polaris";
439
+ import { authenticate } from "../shopify.server";
440
+
441
+ const PLANS = {
442
+ basic: {
443
+ name: "Basic",
444
+ amount: 9.99,
445
+ currencyCode: "USD",
446
+ interval: "EVERY_30_DAYS",
447
+ },
448
+ pro: {
449
+ name: "Pro",
450
+ amount: 29.99,
451
+ currencyCode: "USD",
452
+ interval: "EVERY_30_DAYS",
453
+ },
454
+ };
455
+
456
+ export async function loader({ request }: LoaderFunctionArgs) {
457
+ const { admin, billing } = await authenticate.admin(request);
458
+
459
+ // Check current subscription
460
+ const response = await admin.graphql(`
461
+ query {
462
+ currentAppInstallation {
463
+ activeSubscriptions {
464
+ id
465
+ name
466
+ status
467
+ lineItems {
468
+ plan {
469
+ pricingDetails {
470
+ ... on AppRecurringPricing {
471
+ price {
472
+ amount
473
+ currencyCode
474
+ }
475
+ interval
476
+ }
477
+ }
478
+ }
479
+ }
480
+ }
481
+ }
482
+ }
483
+ `);
484
+
485
+ const { data } = await response.json();
486
+ return json({
487
+ subscription: data.currentAppInstallation.activeSubscriptions[0],
488
+ });
489
+ }
490
+
491
+ export async function action({ request }: ActionFunctionArgs) {
492
+ const { admin, session } = await authenticate.admin(request);
493
+ const formData = await request.formData();
494
+ const planKey = formData.get("plan") as keyof typeof PLANS;
495
+ const plan = PLANS[planKey];
496
+
497
+ // Create subscription charge
498
+ const response = await admin.graphql(`
499
+ mutation CreateSubscription($name: String!, $lineItems: [AppSubscriptionLineItemInput!]!, $returnUrl: URL!, $test: Boolean) {
500
+ appSubscriptionCreate(
501
+ name: $name
502
+ lineItems: $lineItems
503
+ returnUrl: $returnUrl
504
+ test: $test
505
+ ) {
506
+ appSubscription {
507
+ id
508
+ status
509
+ }
510
+ confirmationUrl
511
+ userErrors {
512
+ field
513
+ message
514
+ }
515
+ }
516
+ }
517
+ `, {
518
+ variables: {
519
+ name: plan.name,
520
+ lineItems: [
521
+ {
522
+ plan: {
523
+ appRecurringPricingDetails: {
524
+ price: {
525
+ amount: plan.amount,
526
+ currencyCode: plan.currencyCode,
527
+ },
528
+ interval: plan.interval,
529
+ },
530
+ },
531
+ },
532
+ ],
533
+ returnUrl: `https://${session.shop}/admin/apps/${process.env.SHOPIFY_API_KEY}`,
534
+ test: process.env.NODE_ENV !== "production",
535
+ },
536
+ });
537
+
538
+ const { data } = await response.json();
539
+
540
+ if (data.appSubscriptionCreate.userErrors.length > 0) {
541
+ return json({
542
+ errors: data.appSubscriptionCreate.userErrors,
543
+ }, { status: 400 });
544
+ }
545
+
546
+ // Redirect merchant to approve charge
547
+ return redirect(data.appSubscriptionCreate.confirmationUrl);
548
+ }
549
+
550
+ export default function Billing() {
551
+ const { subscription } = useLoaderData<typeof loader>();
552
+ const submit = useSubmit();
553
+
554
+ return (
555
+ <Page title="Billing">
556
+ <Card>
557
+ {subscription ? (
558
+ <BlockStack gap="200">
559
+ <Text as="p" variant="bodyMd">
560
+ Current plan: {subscription.name}
561
+ </Text>
562
+ <Text as="p" variant="bodyMd">
563
+ Status: {subscription.status}
564
+ </Text>
565
+ </BlockStack>
566
+ ) : (
567
+ <BlockStack gap="400">
568
+ <Text as="h2" variant="headingMd">
569
+ Choose a Plan
570
+ </Text>
571
+ <Button onClick={() => submit({ plan: "basic" }, { method: "post" })}>
572
+ Basic - $9.99/month
573
+ </Button>
574
+ <Button onClick={() => submit({ plan: "pro" }, { method: "post" })}>
575
+ Pro - $29.99/month
576
+ </Button>
577
+ </BlockStack>
578
+ )}
579
+ </Card>
580
+ </Page>
581
+ );
582
+ }
583
+
584
+ ### Notes
585
+
586
+ - Use test: true for development stores
587
+ - Merchant must approve subscription
588
+ - One recurring + one usage charge per app max
589
+ - 30-day billing cycle for recurring charges
590
+
591
+ ### App Extension Development
592
+
593
+ Extend Shopify checkout, admin, or storefront
594
+
595
+ **When to use**: Building app extensions
596
+
597
+ ### Template
598
+
599
+ # shopify.extension.toml (in extensions/my-extension/)
600
+ api_version = "2024-10"
601
+
602
+ [[extensions]]
603
+ type = "ui_extension"
604
+ name = "Product Customizer"
605
+ handle = "product-customizer"
606
+
607
+ [[extensions.targeting]]
608
+ target = "admin.product-details.block.render"
609
+ module = "./src/AdminBlock.tsx"
610
+
611
+ [extensions.capabilities]
612
+ api_access = true
613
+
614
+ [extensions.settings]
615
+ [[extensions.settings.fields]]
616
+ key = "show_preview"
617
+ type = "boolean"
618
+ name = "Show Preview"
619
+
620
+ // extensions/my-extension/src/AdminBlock.tsx
621
+ import {
622
+ reactExtension,
623
+ useApi,
624
+ useSettings,
625
+ BlockStack,
626
+ Text,
627
+ Button,
628
+ InlineStack,
629
+ } from "@shopify/ui-extensions-react/admin";
630
+
631
+ export default reactExtension(
632
+ "admin.product-details.block.render",
633
+ () => <ProductCustomizer />
634
+ );
635
+
636
+ function ProductCustomizer() {
637
+ const { data, extension } = useApi<"admin.product-details.block.render">();
638
+ const settings = useSettings();
639
+
640
+ const productId = data?.selected?.[0]?.id;
641
+
642
+ const handleCustomize = async () => {
643
+ // API calls from extension
644
+ const result = await fetch("/api/customize", {
645
+ method: "POST",
646
+ body: JSON.stringify({ productId }),
647
+ });
648
+ };
649
+
650
+ return (
651
+ <BlockStack gap="base">
652
+ <Text fontWeight="bold">Product Customizer</Text>
653
+ <Text>
654
+ Customize product: {productId}
655
+ </Text>
656
+ {settings.show_preview && (
657
+ <Text size="small">Preview enabled</Text>
658
+ )}
659
+ <InlineStack gap="base">
660
+ <Button onPress={handleCustomize}>
661
+ Apply Customization
662
+ </Button>
663
+ </InlineStack>
664
+ </BlockStack>
665
+ );
666
+ }
667
+
668
+ // Checkout UI Extension
669
+ // [[extensions.targeting]]
670
+ // target = "purchase.checkout.block.render"
671
+
672
+ // extensions/checkout-ext/src/Checkout.tsx
673
+ import {
674
+ reactExtension,
675
+ Banner,
676
+ useCartLines,
677
+ useTotalAmount,
678
+ } from "@shopify/ui-extensions-react/checkout";
679
+
680
+ export default reactExtension(
681
+ "purchase.checkout.block.render",
682
+ () => <CheckoutBanner />
683
+ );
684
+
685
+ function CheckoutBanner() {
686
+ const cartLines = useCartLines();
687
+ const total = useTotalAmount();
688
+
689
+ if (total.amount > 100) {
690
+ return (
691
+ <Banner status="success">
692
+ You qualify for free shipping!
693
+ </Banner>
694
+ );
695
+ }
696
+
697
+ return null;
698
+ }
699
+
700
+ ### Notes
701
+
702
+ - Extensions run in sandboxed iframe
703
+ - Use @shopify/ui-extensions-react for React
704
+ - Limited APIs compared to full app
705
+ - Deploy with 'shopify app deploy'
706
+
707
+
708
+ ## Sharp Edges
709
+
710
+ ### Webhook Must Respond Within 5 Seconds
711
+
712
+ Severity: HIGH
713
+
714
+ Situation: Receiving webhooks from Shopify
715
+
716
+ Symptoms:
717
+ Webhook deliveries marked as failed.
718
+ "Your app didn't respond in time" in Shopify logs.
719
+ Missing order/product updates.
720
+ Webhooks retried repeatedly then cancelled.
721
+
722
+ Why this breaks:
723
+ Shopify expects a 2xx response within 5 seconds. If your app processes
724
+ the webhook data before responding, you'll timeout.
725
+
726
+ Shopify retries failed webhooks up to 19 times over 48 hours.
727
+ After continued failures, webhooks may be cancelled entirely.
728
+
729
+ Heavy processing (API calls, database operations) must happen
730
+ after the response is sent.
731
+
732
+ Recommended fix:
733
+
734
+
735
+ ## Respond immediately, process asynchronously
736
+
737
+ ```typescript
738
+ // app/routes/webhooks.tsx
739
+ export const action = async ({ request }: ActionFunctionArgs) => {
740
+ const { topic, shop, payload } = await authenticate.webhook(request);
741
+
742
+ // Queue for async processing
743
+ await jobQueue.add("process-webhook", {
744
+ topic,
745
+ shop,
746
+ payload,
747
+ });
748
+
749
+ // CRITICAL: Return 200 immediately
750
+ return new Response(null, { status: 200 });
751
+ };
752
+
753
+ // Worker process handles the actual work
754
+ // workers/webhook-processor.ts
755
+ import { Worker } from "bullmq";
756
+
757
+ const worker = new Worker("process-webhook", async (job) => {
758
+ const { topic, shop, payload } = job.data;
759
+
760
+ switch (topic) {
761
+ case "ORDERS_CREATE":
762
+ await processOrder(shop, payload);
763
+ break;
764
+ // ... other handlers
765
+ }
766
+ });
767
+ ```
768
+
769
+
770
+ ## For simple operations, be quick
771
+
772
+ ```typescript
773
+ // Simple database update is OK if fast
774
+ export const action = async ({ request }: ActionFunctionArgs) => {
775
+ const { topic, payload } = await authenticate.webhook(request);
776
+
777
+ // Quick database update (< 1 second)
778
+ await db.product.update({
779
+ where: { shopifyId: payload.id },
780
+ data: { title: payload.title },
781
+ });
782
+
783
+ return new Response(null, { status: 200 });
784
+ };
785
+ ```
786
+
787
+
788
+ ## Monitor webhook performance
789
+
790
+ ```typescript
791
+ // Log response times
792
+ const start = Date.now();
793
+
794
+ await handleWebhook(payload);
795
+
796
+ const duration = Date.now() - start;
797
+ console.log(`Webhook processed in ${duration}ms`);
798
+
799
+ // Alert if approaching timeout
800
+ if (duration > 3000) {
801
+ console.warn("Webhook processing taking too long!");
802
+ }
803
+ ```
804
+
805
+ ### API Rate Limits Cause 429 Errors
806
+
807
+ Severity: HIGH
808
+
809
+ Situation: Making API calls to Shopify
810
+
811
+ Symptoms:
812
+ HTTP 429 Too Many Requests errors.
813
+ "Throttled" responses.
814
+ App becomes unresponsive.
815
+ Operations fail silently or partially.
816
+
817
+ Why this breaks:
818
+ Shopify enforces strict rate limits:
819
+ - REST: 2 requests per second per store
820
+ - GraphQL: 1000 points per 60 seconds
821
+
822
+ Exceeding limits causes immediate 429 errors.
823
+ Continuous violations can result in temporary bans.
824
+
825
+ Bulk operations count against limits.
826
+
827
+ Recommended fix:
828
+
829
+
830
+ ## Check rate limit headers
831
+
832
+ ```typescript
833
+ // REST API
834
+ // X-Shopify-Shop-Api-Call-Limit: 39/40
835
+
836
+ // GraphQL - check response extensions
837
+ const response = await admin.graphql(`...`);
838
+ const { data, extensions } = await response.json();
839
+
840
+ const cost = extensions?.cost;
841
+ // {
842
+ // "requestedQueryCost": 42,
843
+ // "actualQueryCost": 42,
844
+ // "throttleStatus": {
845
+ // "maximumAvailable": 1000,
846
+ // "currentlyAvailable": 958,
847
+ // "restoreRate": 50
848
+ // }
849
+ // }
850
+ ```
851
+
852
+
853
+ ## Implement retry with exponential backoff
854
+
855
+ ```typescript
856
+ async function shopifyRequest(
857
+ fn: () => Promise<Response>,
858
+ maxRetries = 3
859
+ ): Promise<Response> {
860
+ let lastError: Error;
861
+
862
+ for (let attempt = 0; attempt < maxRetries; attempt++) {
863
+ try {
864
+ const response = await fn();
865
+
866
+ if (response.status === 429) {
867
+ // Get retry-after header or default
868
+ const retryAfter = parseInt(
869
+ response.headers.get("Retry-After") || "2"
870
+ );
871
+ await sleep(retryAfter * 1000 * Math.pow(2, attempt));
872
+ continue;
873
+ }
874
+
875
+ return response;
876
+ } catch (error) {
877
+ lastError = error as Error;
878
+ }
879
+ }
880
+
881
+ throw lastError!;
882
+ }
883
+ ```
884
+
885
+
886
+ ## Use bulk operations for large datasets
887
+
888
+ ```typescript
889
+ // Instead of 1000 individual calls, use bulk mutation
890
+ const response = await admin.graphql(`
891
+ mutation {
892
+ bulkOperationRunMutation(
893
+ mutation: "mutation($input: ProductInput!) {
894
+ productUpdate(input: $input) { product { id } }
895
+ }",
896
+ stagedUploadPath: "..."
897
+ ) {
898
+ bulkOperation { id status }
899
+ userErrors { message }
900
+ }
901
+ }
902
+ `);
903
+ ```
904
+
905
+
906
+ ## Queue requests
907
+
908
+ ```typescript
909
+ import { RateLimiter } from "limiter";
910
+
911
+ // 2 requests per second for REST
912
+ const limiter = new RateLimiter({
913
+ tokensPerInterval: 2,
914
+ interval: "second",
915
+ });
916
+
917
+ async function rateLimitedRequest(fn: () => Promise<any>) {
918
+ await limiter.removeTokens(1);
919
+ return fn();
920
+ }
921
+ ```
922
+
923
+ ### Protected Customer Data Requires Special Permission
924
+
925
+ Severity: HIGH
926
+
927
+ Situation: Accessing customer PII in webhooks or API
928
+
929
+ Symptoms:
930
+ Webhook deliveries fail for orders/customers.
931
+ Customer data fields are null or empty.
932
+ App works in development but fails in production.
933
+ "Protected customer data access" errors.
934
+
935
+ Why this breaks:
936
+ Since April 2024, accessing protected customer data (PII) requires
937
+ explicit approval from Shopify. This is separate from OAuth scopes.
938
+
939
+ Protected data includes:
940
+ - Customer names, emails, addresses
941
+ - Order customer information
942
+ - Subscription customer details
943
+
944
+ Even with read_orders scope, you won't receive customer data
945
+ in webhooks without protected data access.
946
+
947
+ Recommended fix:
948
+
949
+
950
+ ## Request protected customer data access
951
+
952
+ 1. Go to Partner Dashboard > App > API access
953
+ 2. Under "Protected customer data access"
954
+ 3. Request access for needed data types
955
+ 4. Justify your use case
956
+ 5. Wait for Shopify approval (can take days)
957
+
958
+
959
+ ## Check your data access level
960
+
961
+ ```typescript
962
+ // Query your app's data access
963
+ const response = await admin.graphql(`
964
+ query {
965
+ currentAppInstallation {
966
+ accessScopes {
967
+ handle
968
+ }
969
+ }
970
+ }
971
+ `);
972
+ ```
973
+
974
+
975
+ ## Handle missing data gracefully
976
+
977
+ ```typescript
978
+ // Webhook payload may have redacted fields
979
+ async function processOrder(payload: any) {
980
+ const customerEmail = payload.customer?.email;
981
+
982
+ if (!customerEmail) {
983
+ // Customer data not available
984
+ // Either no protected access or data redacted
985
+ console.log("Customer data not available");
986
+ return;
987
+ }
988
+
989
+ await sendOrderConfirmation(customerEmail);
990
+ }
991
+ ```
992
+
993
+
994
+ ## Use customer account API for direct access
995
+
996
+ ```typescript
997
+ // If customer is logged in, can access their data
998
+ // through Customer Account API (different from Admin API)
999
+ ```
1000
+
1001
+ ### Duplicate Webhook Definitions Cause Conflicts
1002
+
1003
+ Severity: MEDIUM
1004
+
1005
+ Situation: Configuring webhooks in both TOML and code
1006
+
1007
+ Symptoms:
1008
+ Duplicate webhook deliveries.
1009
+ Some webhooks fire twice.
1010
+ Webhook subscriptions fail to register.
1011
+ Unpredictable webhook behavior.
1012
+
1013
+ Why this breaks:
1014
+ Shopify apps can define webhooks in two places:
1015
+ 1. shopify.app.toml (declarative, recommended)
1016
+ 2. afterAuth hook in code (imperative, legacy)
1017
+
1018
+ If you define the same webhook in both places, you get:
1019
+ - Duplicate subscriptions
1020
+ - Race conditions during registration
1021
+ - Conflicts during app updates
1022
+
1023
+ Recommended fix:
1024
+
1025
+
1026
+ ## Use TOML only (recommended)
1027
+
1028
+ ```toml
1029
+ # shopify.app.toml
1030
+ [webhooks]
1031
+ api_version = "2024-10"
1032
+
1033
+ [webhooks.subscriptions]
1034
+ topics = [
1035
+ "orders/create",
1036
+ "orders/updated",
1037
+ "products/create",
1038
+ "products/update",
1039
+ "app/uninstalled"
1040
+ ]
1041
+ uri = "/webhooks"
1042
+ ```
1043
+
1044
+
1045
+ ## Remove code-based registration
1046
+
1047
+ ```typescript
1048
+ // DON'T do this if using TOML
1049
+ const shopify = shopifyApp({
1050
+ // ...
1051
+ hooks: {
1052
+ afterAuth: async ({ session }) => {
1053
+ // Remove webhook registration from here
1054
+ // Let TOML handle it
1055
+ },
1056
+ },
1057
+ });
1058
+ ```
1059
+
1060
+
1061
+ ## Deploy to apply TOML changes
1062
+
1063
+ ```bash
1064
+ # Webhooks registered on deploy
1065
+ shopify app deploy
1066
+ ```
1067
+
1068
+
1069
+ ## Check current subscriptions
1070
+
1071
+ ```typescript
1072
+ const response = await admin.graphql(`
1073
+ query {
1074
+ webhookSubscriptions(first: 50) {
1075
+ edges {
1076
+ node {
1077
+ id
1078
+ topic
1079
+ endpoint {
1080
+ ... on WebhookHttpEndpoint {
1081
+ callbackUrl
1082
+ }
1083
+ }
1084
+ }
1085
+ }
1086
+ }
1087
+ }
1088
+ `);
1089
+ ```
1090
+
1091
+ ### Webhook URL Trailing Slash Causes 404
1092
+
1093
+ Severity: MEDIUM
1094
+
1095
+ Situation: Setting up webhook endpoints
1096
+
1097
+ Symptoms:
1098
+ Webhooks return 404 Not Found.
1099
+ Webhook delivery fails immediately.
1100
+ Works in local dev but fails in production.
1101
+ Logs show request to /webhooks/ not /webhooks.
1102
+
1103
+ Why this breaks:
1104
+ Shopify automatically adds a trailing slash to webhook URLs.
1105
+ If your server doesn't handle both /webhooks and /webhooks/,
1106
+ the webhook will 404.
1107
+
1108
+ Common with frameworks that are strict about trailing slashes.
1109
+
1110
+ Recommended fix:
1111
+
1112
+
1113
+ ## Handle both URL formats
1114
+
1115
+ ```typescript
1116
+ // Remix/React Router - both work by default
1117
+ // app/routes/webhooks.tsx handles /webhooks
1118
+
1119
+ // Express - add middleware
1120
+ app.use((req, res, next) => {
1121
+ if (req.path.endsWith('/') && req.path.length > 1) {
1122
+ const query = req.url.slice(req.path.length);
1123
+ const safePath = req.path.slice(0, -1);
1124
+ res.redirect(301, safePath + query);
1125
+ }
1126
+ next();
1127
+ });
1128
+ ```
1129
+
1130
+
1131
+ ## Configure web server
1132
+
1133
+ ```nginx
1134
+ # Nginx - strip trailing slashes
1135
+ location ~ ^(.+)/$ {
1136
+ return 301 $1;
1137
+ }
1138
+
1139
+ # Or rewrite to handler
1140
+ location /webhooks {
1141
+ try_files $uri $uri/ @webhooks;
1142
+ }
1143
+ location @webhooks {
1144
+ proxy_pass http://app:3000/webhooks;
1145
+ }
1146
+ ```
1147
+
1148
+
1149
+ ## Test both formats
1150
+
1151
+ ```bash
1152
+ # Test without slash
1153
+ curl -X POST https://your-app.com/webhooks
1154
+
1155
+ # Test with slash
1156
+ curl -X POST https://your-app.com/webhooks/
1157
+ ```
1158
+
1159
+ ### REST API Required Migration to GraphQL (April 2025)
1160
+
1161
+ Severity: HIGH
1162
+
1163
+ Situation: Building new public apps or maintaining existing
1164
+
1165
+ Symptoms:
1166
+ App store submission rejected for REST API usage.
1167
+ Deprecation warnings in console.
1168
+ Some REST endpoints stop working.
1169
+ Missing features only in GraphQL.
1170
+
1171
+ Why this breaks:
1172
+ As of October 2024, REST Admin API is legacy.
1173
+ Starting April 2025, new public apps MUST use GraphQL.
1174
+
1175
+ REST endpoints will continue working for existing apps,
1176
+ but new features are GraphQL-only.
1177
+
1178
+ Metafields, bulk operations, and many new features
1179
+ require GraphQL.
1180
+
1181
+ Recommended fix:
1182
+
1183
+
1184
+ ## Use GraphQL for all new code
1185
+
1186
+ ```typescript
1187
+ // REST (legacy)
1188
+ const response = await fetch(
1189
+ `https://${shop}/admin/api/2024-10/products.json`,
1190
+ {
1191
+ headers: { "X-Shopify-Access-Token": token },
1192
+ }
1193
+ );
1194
+
1195
+ // GraphQL (recommended)
1196
+ const response = await admin.graphql(`
1197
+ query {
1198
+ products(first: 10) {
1199
+ edges {
1200
+ node {
1201
+ id
1202
+ title
1203
+ }
1204
+ }
1205
+ }
1206
+ }
1207
+ `);
1208
+ ```
1209
+
1210
+
1211
+ ## Migrate existing REST calls
1212
+
1213
+ ```typescript
1214
+ // REST: GET /products/{id}.json
1215
+ // GraphQL equivalent:
1216
+ const response = await admin.graphql(`
1217
+ query GetProduct($id: ID!) {
1218
+ product(id: $id) {
1219
+ id
1220
+ title
1221
+ status
1222
+ variants(first: 10) {
1223
+ edges {
1224
+ node {
1225
+ id
1226
+ price
1227
+ inventoryQuantity
1228
+ }
1229
+ }
1230
+ }
1231
+ }
1232
+ }
1233
+ `, {
1234
+ variables: { id: `gid://shopify/Product/${productId}` },
1235
+ });
1236
+ ```
1237
+
1238
+
1239
+ ## Use GraphQL for webhooks too
1240
+
1241
+ ```toml
1242
+ # shopify.app.toml
1243
+ [webhooks]
1244
+ api_version = "2024-10" # Use latest GraphQL version
1245
+ ```
1246
+
1247
+ ### App Bridge Required for Built for Shopify (July 2025)
1248
+
1249
+ Severity: HIGH
1250
+
1251
+ Situation: Building embedded Shopify apps
1252
+
1253
+ Symptoms:
1254
+ App rejected from "Built for Shopify" program.
1255
+ App not appearing correctly in admin.
1256
+ Navigation and chrome issues.
1257
+ Warning about App Bridge version.
1258
+
1259
+ Why this breaks:
1260
+ Effective July 2025, all apps seeking "Built for Shopify" status
1261
+ must use the latest version of App Bridge and be embedded.
1262
+
1263
+ Apps using old App Bridge versions or not embedded will
1264
+ lose built for Shopify benefits (better placement, badges).
1265
+
1266
+ Shopify now serves App Bridge and Polaris via unversioned
1267
+ script tags that auto-update.
1268
+
1269
+ Recommended fix:
1270
+
1271
+
1272
+ ## Use latest App Bridge via script tag
1273
+
1274
+ ```html
1275
+ <!-- Automatically stays up to date -->
1276
+ <script src="https://cdn.shopify.com/shopifycloud/app-bridge.js"></script>
1277
+ ```
1278
+
1279
+
1280
+ ## Use AppProvider in React
1281
+
1282
+ ```typescript
1283
+ // app/routes/app.tsx
1284
+ import { AppProvider } from "@shopify/shopify-app-remix/react";
1285
+
1286
+ export default function App() {
1287
+ return (
1288
+ <AppProvider isEmbeddedApp apiKey={apiKey}>
1289
+ <Outlet />
1290
+ </AppProvider>
1291
+ );
1292
+ }
1293
+ ```
1294
+
1295
+
1296
+ ## Enable embedded auth strategy
1297
+
1298
+ ```typescript
1299
+ // shopify.server.ts
1300
+ const shopify = shopifyApp({
1301
+ // ...
1302
+ future: {
1303
+ unstable_newEmbeddedAuthStrategy: true,
1304
+ },
1305
+ });
1306
+ ```
1307
+
1308
+
1309
+ ## Check embedded status
1310
+
1311
+ ```typescript
1312
+ import { useAppBridge } from "@shopify/app-bridge-react";
1313
+
1314
+ function MyComponent() {
1315
+ const app = useAppBridge();
1316
+ const isEmbedded = app.hostOrigin !== window.location.origin;
1317
+ }
1318
+ ```
1319
+
1320
+ ### Missing GDPR Webhooks Block App Store Approval
1321
+
1322
+ Severity: HIGH
1323
+
1324
+ Situation: Submitting app to Shopify App Store
1325
+
1326
+ Symptoms:
1327
+ App submission rejected.
1328
+ "GDPR webhooks not implemented" error.
1329
+ Manual review fails for compliance.
1330
+ Data request webhooks not handled.
1331
+
1332
+ Why this breaks:
1333
+ Shopify requires all apps to handle three GDPR webhooks:
1334
+ 1. customers/data_request - Provide customer data
1335
+ 2. customers/redact - Delete customer data
1336
+ 3. shop/redact - Delete all shop data
1337
+
1338
+ These are automatically subscribed when you create an app.
1339
+ You MUST implement handlers even if you don't store data.
1340
+
1341
+ Recommended fix:
1342
+
1343
+
1344
+ ## Implement all GDPR handlers
1345
+
1346
+ ```typescript
1347
+ // app/routes/webhooks.tsx
1348
+ export const action = async ({ request }: ActionFunctionArgs) => {
1349
+ const { topic, payload, shop } = await authenticate.webhook(request);
1350
+
1351
+ switch (topic) {
1352
+ case "CUSTOMERS_DATA_REQUEST":
1353
+ await handleDataRequest(shop, payload);
1354
+ break;
1355
+
1356
+ case "CUSTOMERS_REDACT":
1357
+ await handleCustomerRedact(shop, payload);
1358
+ break;
1359
+
1360
+ case "SHOP_REDACT":
1361
+ await handleShopRedact(shop, payload);
1362
+ break;
1363
+ }
1364
+
1365
+ return new Response(null, { status: 200 });
1366
+ };
1367
+
1368
+ async function handleDataRequest(shop: string, payload: any) {
1369
+ const customerId = payload.customer.id;
1370
+
1371
+ // Return customer data within 30 days
1372
+ // Usually send to data_request.destination_url
1373
+ const customerData = await db.customer.findUnique({
1374
+ where: { shopifyId: customerId, shop },
1375
+ });
1376
+
1377
+ if (customerData) {
1378
+ // Send to provided URL or email
1379
+ await sendDataToMerchant(payload.data_request, customerData);
1380
+ }
1381
+ }
1382
+
1383
+ async function handleCustomerRedact(shop: string, payload: any) {
1384
+ const customerId = payload.customer.id;
1385
+
1386
+ // Delete customer's personal data
1387
+ await db.customer.deleteMany({
1388
+ where: { shopifyId: customerId, shop },
1389
+ });
1390
+
1391
+ await db.order.updateMany({
1392
+ where: { customerId, shop },
1393
+ data: { customerEmail: null, customerName: null },
1394
+ });
1395
+ }
1396
+
1397
+ async function handleShopRedact(shop: string, payload: any) {
1398
+ // Shop uninstalled 48+ hours ago
1399
+ // Delete ALL data for this shop
1400
+ await db.session.deleteMany({ where: { shop } });
1401
+ await db.customer.deleteMany({ where: { shop } });
1402
+ await db.order.deleteMany({ where: { shop } });
1403
+ await db.settings.deleteMany({ where: { shop } });
1404
+ }
1405
+ ```
1406
+
1407
+
1408
+ ## Even if you store nothing
1409
+
1410
+ ```typescript
1411
+ // You must still respond 200
1412
+ case "CUSTOMERS_DATA_REQUEST":
1413
+ case "CUSTOMERS_REDACT":
1414
+ case "SHOP_REDACT":
1415
+ // No data stored, but must acknowledge
1416
+ console.log(`GDPR ${topic} for ${shop} - no data stored`);
1417
+ break;
1418
+ ```
1419
+
1420
+
1421
+ ## Validation Checks
1422
+
1423
+ ### Hardcoded Shopify API Secret
1424
+
1425
+ Severity: ERROR
1426
+
1427
+ API secrets must never be hardcoded
1428
+
1429
+ Message: Hardcoded Shopify API secret. Use environment variables.
1430
+
1431
+ ### Hardcoded Shopify API Key
1432
+
1433
+ Severity: ERROR
1434
+
1435
+ API keys should use environment variables
1436
+
1437
+ Message: Hardcoded Shopify API key. Use environment variables.
1438
+
1439
+ ### Missing HMAC Verification
1440
+
1441
+ Severity: ERROR
1442
+
1443
+ Webhook endpoints must verify HMAC signature
1444
+
1445
+ Message: Webhook handler without HMAC verification. Use authenticate.webhook().
1446
+
1447
+ ### Synchronous Webhook Processing
1448
+
1449
+ Severity: WARNING
1450
+
1451
+ Webhook handlers should respond quickly
1452
+
1453
+ Message: Multiple await calls in webhook handler. Consider async processing.
1454
+
1455
+ ### Missing Webhook Response
1456
+
1457
+ Severity: ERROR
1458
+
1459
+ Webhooks must return 200 status
1460
+
1461
+ Message: Webhook handler may not return proper response.
1462
+
1463
+ ### Duplicate Webhook Registration
1464
+
1465
+ Severity: WARNING
1466
+
1467
+ Webhooks should be defined in TOML only
1468
+
1469
+ Message: Code-based webhook registration. Define webhooks in shopify.app.toml.
1470
+
1471
+ ### REST API Usage
1472
+
1473
+ Severity: INFO
1474
+
1475
+ REST API is deprecated, use GraphQL
1476
+
1477
+ Message: REST API usage detected. Consider migrating to GraphQL.
1478
+
1479
+ ### Missing Rate Limit Handling
1480
+
1481
+ Severity: WARNING
1482
+
1483
+ API calls should handle 429 responses
1484
+
1485
+ Message: API call without rate limit handling. Implement retry logic.
1486
+
1487
+ ### In-Memory Session Storage
1488
+
1489
+ Severity: WARNING
1490
+
1491
+ In-memory sessions don't scale
1492
+
1493
+ Message: In-memory session storage. Use PrismaSessionStorage or similar.
1494
+
1495
+ ### Missing Session Validation
1496
+
1497
+ Severity: ERROR
1498
+
1499
+ Routes should validate session
1500
+
1501
+ Message: Loader without authentication. Use authenticate.admin(request).
1502
+
1503
+
1504
+ ## Collaboration
1505
+
1506
+ ### Delegation Triggers
1507
+
1508
+ - user needs payment processing -> stripe-integration (Shopify Payments or Stripe integration)
1509
+ - user needs custom authentication -> auth-specialist (Beyond Shopify OAuth)
1510
+ - user needs email/SMS notifications -> twilio-communications (Customer notifications outside Shopify)
1511
+ - user needs AI features -> llm-architect (Product descriptions, chatbots)
1512
+ - user needs serverless deployment -> aws-serverless (Lambda or Vercel deployment)