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
@@ -3,6 +3,7 @@ name: fp-errors
3
3
  description: Stop throwing everywhere - handle errors as values using Either and TaskEither for cleaner, more predictable code
4
4
  risk: critical
5
5
  source: community
6
+ date_added: "2026-09-04"
6
7
  version: 1.0.0
7
8
  author: kadu
8
9
  tags:
@@ -21,6 +22,10 @@ This skill teaches you how to handle errors without try/catch spaghetti. No acad
21
22
 
22
23
  The core idea: **Errors are just data**. Instead of throwing them into the void and hoping someone catches them, return them as values that TypeScript can track.
23
24
 
25
+ ## Detailed Guide
26
+
27
+ Read [the detailed guide](references/detailed-guide.md) before executing this skill. It retains the complete procedure and reference material. Treat its safety, prerequisites, and validation requirements as mandatory. For focused work, load the relevant sections; for end-to-end work, read the guide completely.
28
+
24
29
  ## When to Use
25
30
  - You need to replace exception-heavy code with `Either` or `TaskEither`.
26
31
  - The task involves validation, domain errors, or clearer error contracts in TypeScript.
@@ -28,841 +33,6 @@ The core idea: **Errors are just data**. Instead of throwing them into the void
28
33
 
29
34
  ---
30
35
 
31
- ## 1. Stop Throwing Everywhere
32
-
33
- ### The Problem with Exceptions
34
-
35
- Exceptions are invisible in your types. They break the contract between functions.
36
-
37
- ```typescript
38
- // What this function signature promises:
39
- function getUser(id: string): User
40
-
41
- // What it actually does:
42
- function getUser(id: string): User {
43
- if (!id) throw new Error('ID required')
44
- const user = db.find(id)
45
- if (!user) throw new Error('User not found')
46
- return user
47
- }
48
-
49
- // The caller has no idea this can fail
50
- const user = getUser(id) // Might explode!
51
- ```
52
-
53
- You end up with code like this:
54
-
55
- ```typescript
56
- // MESSY: try/catch everywhere
57
- function processOrder(orderId: string) {
58
- let order
59
- try {
60
- order = getOrder(orderId)
61
- } catch (e) {
62
- console.error('Failed to get order')
63
- return null
64
- }
65
-
66
- let user
67
- try {
68
- user = getUser(order.userId)
69
- } catch (e) {
70
- console.error('Failed to get user')
71
- return null
72
- }
73
-
74
- let payment
75
- try {
76
- payment = chargeCard(user.cardId, order.total)
77
- } catch (e) {
78
- console.error('Payment failed')
79
- return null
80
- }
81
-
82
- return { order, user, payment }
83
- }
84
- ```
85
-
86
- ### The Solution: Return Errors as Values
87
-
88
- ```typescript
89
- import * as E from 'fp-ts/Either'
90
- import { pipe } from 'fp-ts/function'
91
-
92
- // Now TypeScript KNOWS this can fail
93
- function getUser(id: string): E.Either<string, User> {
94
- if (!id) return E.left('ID required')
95
- const user = db.find(id)
96
- if (!user) return E.left('User not found')
97
- return E.right(user)
98
- }
99
-
100
- // The caller is forced to handle both cases
101
- const result = getUser(id)
102
- // result is Either<string, User> - error OR success, never both
103
- ```
104
-
105
- ---
106
-
107
- ## 2. The Result Pattern (Either)
108
-
109
- `Either<E, A>` is simple: it holds either an error (`E`) or a value (`A`).
110
-
111
- - `Left` = error case
112
- - `Right` = success case (think "right" as in "correct")
113
-
114
- ```typescript
115
- import * as E from 'fp-ts/Either'
116
-
117
- // Creating values
118
- const success = E.right(42) // Right(42)
119
- const failure = E.left('Oops') // Left('Oops')
120
-
121
- // Checking what you have
122
- if (E.isRight(result)) {
123
- console.log(result.right) // The success value
124
- } else {
125
- console.log(result.left) // The error
126
- }
127
-
128
- // Better: pattern match with fold
129
- const message = pipe(
130
- result,
131
- E.fold(
132
- (error) => `Failed: ${error}`,
133
- (value) => `Got: ${value}`
134
- )
135
- )
136
- ```
137
-
138
- ### Converting Throwing Code to Either
139
-
140
- ```typescript
141
- // Wrap any throwing function with tryCatch
142
- const parseJSON = (json: string): E.Either<Error, unknown> =>
143
- E.tryCatch(
144
- () => JSON.parse(json),
145
- (e) => (e instanceof Error ? e : new Error(String(e)))
146
- )
147
-
148
- parseJSON('{"valid": true}') // Right({ valid: true })
149
- parseJSON('not json') // Left(SyntaxError: ...)
150
-
151
- // For functions you'll reuse, use tryCatchK
152
- const safeParseJSON = E.tryCatchK(
153
- JSON.parse,
154
- (e) => (e instanceof Error ? e : new Error(String(e)))
155
- )
156
- ```
157
-
158
- ### Common Either Operations
159
-
160
- ```typescript
161
- import * as E from 'fp-ts/Either'
162
- import { pipe } from 'fp-ts/function'
163
-
164
- // Transform the success value
165
- const doubled = pipe(
166
- E.right(21),
167
- E.map(n => n * 2)
168
- ) // Right(42)
169
-
170
- // Transform the error
171
- const betterError = pipe(
172
- E.left('bad'),
173
- E.mapLeft(e => `Error: ${e}`)
174
- ) // Left('Error: bad')
175
-
176
- // Provide a default for errors
177
- const value = pipe(
178
- E.left('failed'),
179
- E.getOrElse(() => 0)
180
- ) // 0
181
-
182
- // Convert nullable to Either
183
- const fromNullable = E.fromNullable('not found')
184
- fromNullable(user) // Right(user) if exists, Left('not found') if null/undefined
185
- ```
186
-
187
- ---
188
-
189
- ## 3. Chaining Operations That Might Fail
190
-
191
- The real power comes from chaining. Each step can fail, but you write it as a clean pipeline.
192
-
193
- ### Before: Nested Try/Catch Hell
194
-
195
- ```typescript
196
- // MESSY: Each step can fail, nested try/catch everywhere
197
- function processUserOrder(userId: string, productId: string): Result | null {
198
- let user
199
- try {
200
- user = getUser(userId)
201
- } catch (e) {
202
- logError('User fetch failed', e)
203
- return null
204
- }
205
-
206
- if (!user.isActive) {
207
- logError('User not active')
208
- return null
209
- }
210
-
211
- let product
212
- try {
213
- product = getProduct(productId)
214
- } catch (e) {
215
- logError('Product fetch failed', e)
216
- return null
217
- }
218
-
219
- if (product.stock < 1) {
220
- logError('Out of stock')
221
- return null
222
- }
223
-
224
- let order
225
- try {
226
- order = createOrder(user, product)
227
- } catch (e) {
228
- logError('Order creation failed', e)
229
- return null
230
- }
231
-
232
- return order
233
- }
234
- ```
235
-
236
- ### After: Clean Chain with Either
237
-
238
- ```typescript
239
- import * as E from 'fp-ts/Either'
240
- import { pipe } from 'fp-ts/function'
241
-
242
- // Each function returns Either<Error, T>
243
- const getUser = (id: string): E.Either<string, User> => { ... }
244
- const getProduct = (id: string): E.Either<string, Product> => { ... }
245
- const createOrder = (user: User, product: Product): E.Either<string, Order> => { ... }
246
-
247
- // Chain them together - first error stops the chain
248
- const processUserOrder = (userId: string, productId: string): E.Either<string, Order> =>
249
- pipe(
250
- getUser(userId),
251
- E.filterOrElse(
252
- user => user.isActive,
253
- () => 'User not active'
254
- ),
255
- E.chain(user =>
256
- pipe(
257
- getProduct(productId),
258
- E.filterOrElse(
259
- product => product.stock >= 1,
260
- () => 'Out of stock'
261
- ),
262
- E.chain(product => createOrder(user, product))
263
- )
264
- )
265
- )
266
-
267
- // Or use Do notation for cleaner access to intermediate values
268
- const processUserOrder = (userId: string, productId: string): E.Either<string, Order> =>
269
- pipe(
270
- E.Do,
271
- E.bind('user', () => getUser(userId)),
272
- E.filterOrElse(
273
- ({ user }) => user.isActive,
274
- () => 'User not active'
275
- ),
276
- E.bind('product', () => getProduct(productId)),
277
- E.filterOrElse(
278
- ({ product }) => product.stock >= 1,
279
- () => 'Out of stock'
280
- ),
281
- E.chain(({ user, product }) => createOrder(user, product))
282
- )
283
- ```
284
-
285
- ### Different Error Types? Use chainW
286
-
287
- ```typescript
288
- type ValidationError = { type: 'validation'; message: string }
289
- type DbError = { type: 'db'; message: string }
290
-
291
- const validateInput = (id: string): E.Either<ValidationError, string> => { ... }
292
- const fetchFromDb = (id: string): E.Either<DbError, User> => { ... }
293
-
294
- // chainW (W = "wider") automatically unions the error types
295
- const process = (id: string): E.Either<ValidationError | DbError, User> =>
296
- pipe(
297
- validateInput(id),
298
- E.chainW(validId => fetchFromDb(validId))
299
- )
300
- ```
301
-
302
- ---
303
-
304
- ## 4. Collecting Multiple Errors
305
-
306
- Sometimes you want ALL errors, not just the first one. Form validation is the classic example.
307
-
308
- ### Before: Collecting Errors Manually
309
-
310
- ```typescript
311
- // MESSY: Manual error accumulation
312
- function validateForm(form: FormData): { valid: boolean; errors: string[] } {
313
- const errors: string[] = []
314
-
315
- if (!form.email) {
316
- errors.push('Email required')
317
- } else if (!form.email.includes('@')) {
318
- errors.push('Invalid email')
319
- }
320
-
321
- if (!form.password) {
322
- errors.push('Password required')
323
- } else if (form.password.length < 8) {
324
- errors.push('Password too short')
325
- }
326
-
327
- if (!form.age) {
328
- errors.push('Age required')
329
- } else if (form.age < 18) {
330
- errors.push('Must be 18+')
331
- }
332
-
333
- return { valid: errors.length === 0, errors }
334
- }
335
- ```
336
-
337
- ### After: Validation with Error Accumulation
338
-
339
- ```typescript
340
- import * as E from 'fp-ts/Either'
341
- import * as NEA from 'fp-ts/NonEmptyArray'
342
- import { sequenceS } from 'fp-ts/Apply'
343
- import { pipe } from 'fp-ts/function'
344
-
345
- // Errors as a NonEmptyArray (always at least one)
346
- type Errors = NEA.NonEmptyArray<string>
347
-
348
- // Create the applicative that accumulates errors
349
- const validation = E.getApplicativeValidation(NEA.getSemigroup<string>())
350
-
351
- // Validators that return Either<Errors, T>
352
- const validateEmail = (email: string): E.Either<Errors, string> =>
353
- !email ? E.left(NEA.of('Email required'))
354
- : !email.includes('@') ? E.left(NEA.of('Invalid email'))
355
- : E.right(email)
356
-
357
- const validatePassword = (password: string): E.Either<Errors, string> =>
358
- !password ? E.left(NEA.of('Password required'))
359
- : password.length < 8 ? E.left(NEA.of('Password too short'))
360
- : E.right(password)
361
-
362
- const validateAge = (age: number | undefined): E.Either<Errors, number> =>
363
- age === undefined ? E.left(NEA.of('Age required'))
364
- : age < 18 ? E.left(NEA.of('Must be 18+'))
365
- : E.right(age)
366
-
367
- // Combine all validations - collects ALL errors
368
- const validateForm = (form: FormData) =>
369
- sequenceS(validation)({
370
- email: validateEmail(form.email),
371
- password: validatePassword(form.password),
372
- age: validateAge(form.age)
373
- })
374
-
375
- // Usage
376
- validateForm({ email: '', password: '123', age: 15 })
377
- // Left(['Email required', 'Password too short', 'Must be 18+'])
378
-
379
- validateForm({ email: 'a@b.com', password: 'longpassword', age: 25 })
380
- // Right({ email: 'a@b.com', password: 'longpassword', age: 25 })
381
- ```
382
-
383
- ### Field-Level Errors for Forms
384
-
385
- ```typescript
386
- interface FieldError {
387
- field: string
388
- message: string
389
- }
390
-
391
- type FormErrors = NEA.NonEmptyArray<FieldError>
392
-
393
- const fieldError = (field: string, message: string): FormErrors =>
394
- NEA.of({ field, message })
395
-
396
- const formValidation = E.getApplicativeValidation(NEA.getSemigroup<FieldError>())
397
-
398
- // Now errors know which field they belong to
399
- const validateEmail = (email: string): E.Either<FormErrors, string> =>
400
- !email ? E.left(fieldError('email', 'Required'))
401
- : !email.includes('@') ? E.left(fieldError('email', 'Invalid format'))
402
- : E.right(email)
403
-
404
- // Easy to display in UI
405
- const getFieldError = (errors: FormErrors, field: string): string | undefined =>
406
- errors.find(e => e.field === field)?.message
407
- ```
408
-
409
- ---
410
-
411
- ## 5. Async Operations (TaskEither)
412
-
413
- For async operations that can fail, use `TaskEither`. It's like `Either` but for promises.
414
-
415
- - `TaskEither<E, A>` = a function that returns `Promise<Either<E, A>>`
416
- - Lazy: nothing runs until you execute it
417
-
418
- ```typescript
419
- import * as TE from 'fp-ts/TaskEither'
420
- import { pipe } from 'fp-ts/function'
421
-
422
- // Wrap any async operation
423
- const fetchUser = (id: string): TE.TaskEither<Error, User> =>
424
- TE.tryCatch(
425
- () => fetch(`/api/users/${id}`).then(r => r.json()),
426
- (e) => (e instanceof Error ? e : new Error(String(e)))
427
- )
428
-
429
- // Chain async operations - just like Either
430
- const getUserPosts = (userId: string): TE.TaskEither<Error, Post[]> =>
431
- pipe(
432
- fetchUser(userId),
433
- TE.chain(user => fetchPosts(user.id))
434
- )
435
-
436
- // Execute when ready
437
- const result = await getUserPosts('123')() // Returns Either<Error, Post[]>
438
- ```
439
-
440
- ### Before: Promise Chain with Error Handling
441
-
442
- ```typescript
443
- // MESSY: try/catch mixed with promise chains
444
- async function loadDashboard(userId: string) {
445
- try {
446
- const user = await fetchUser(userId)
447
- if (!user) throw new Error('User not found')
448
-
449
- let posts, notifications, settings
450
- try {
451
- [posts, notifications, settings] = await Promise.all([
452
- fetchPosts(user.id),
453
- fetchNotifications(user.id),
454
- fetchSettings(user.id)
455
- ])
456
- } catch (e) {
457
- // Which one failed? Who knows!
458
- console.error('Failed to load data', e)
459
- return null
460
- }
461
-
462
- return { user, posts, notifications, settings }
463
- } catch (e) {
464
- console.error('Failed to load user', e)
465
- return null
466
- }
467
- }
468
- ```
469
-
470
- ### After: Clean TaskEither Pipeline
471
-
472
- ```typescript
473
- import * as TE from 'fp-ts/TaskEither'
474
- import { sequenceS } from 'fp-ts/Apply'
475
- import { pipe } from 'fp-ts/function'
476
-
477
- const loadDashboard = (userId: string) =>
478
- pipe(
479
- fetchUser(userId),
480
- TE.chain(user =>
481
- pipe(
482
- // Parallel fetch with sequenceS
483
- sequenceS(TE.ApplyPar)({
484
- posts: fetchPosts(user.id),
485
- notifications: fetchNotifications(user.id),
486
- settings: fetchSettings(user.id)
487
- }),
488
- TE.map(data => ({ user, ...data }))
489
- )
490
- )
491
- )
492
-
493
- // Execute and handle both cases
494
- pipe(
495
- loadDashboard('123'),
496
- TE.fold(
497
- (error) => T.of(renderError(error)),
498
- (data) => T.of(renderDashboard(data))
499
- )
500
- )()
501
- ```
502
-
503
- ### Retry Failed Operations
504
-
505
- ```typescript
506
- import * as T from 'fp-ts/Task'
507
- import * as TE from 'fp-ts/TaskEither'
508
- import { pipe } from 'fp-ts/function'
509
-
510
- const retry = <E, A>(
511
- task: TE.TaskEither<E, A>,
512
- attempts: number,
513
- delayMs: number
514
- ): TE.TaskEither<E, A> =>
515
- pipe(
516
- task,
517
- TE.orElse((error) =>
518
- attempts > 1
519
- ? pipe(
520
- T.delay(delayMs)(T.of(undefined)),
521
- T.chain(() => retry(task, attempts - 1, delayMs * 2))
522
- )
523
- : TE.left(error)
524
- )
525
- )
526
-
527
- // Retry up to 3 times with exponential backoff
528
- const fetchWithRetry = retry(fetchUser('123'), 3, 1000)
529
- ```
530
-
531
- ### Fallback to Alternative
532
-
533
- ```typescript
534
- // Try cache first, fall back to API
535
- const getUserData = (id: string) =>
536
- pipe(
537
- fetchFromCache(id),
538
- TE.orElse(() => fetchFromApi(id)),
539
- TE.orElse(() => TE.right(defaultUser)) // Last resort default
540
- )
541
- ```
542
-
543
- ---
544
-
545
- ## 6. Converting Between Patterns
546
-
547
- Real codebases have throwing functions, nullable values, and promises. Here's how to work with them.
548
-
549
- ### From Nullable to Either
550
-
551
- ```typescript
552
- import * as E from 'fp-ts/Either'
553
- import * as O from 'fp-ts/Option'
554
-
555
- // Direct conversion
556
- const user = users.find(u => u.id === id) // User | undefined
557
- const result = E.fromNullable('User not found')(user)
558
-
559
- // From Option
560
- const maybeUser: O.Option<User> = O.fromNullable(user)
561
- const eitherUser = pipe(
562
- maybeUser,
563
- E.fromOption(() => 'User not found')
564
- )
565
- ```
566
-
567
- ### From Throwing Function to Either
568
-
569
- ```typescript
570
- // Wrap at the boundary
571
- const safeParse = <T>(schema: ZodSchema<T>) => (data: unknown): E.Either<ZodError, T> =>
572
- E.tryCatch(
573
- () => schema.parse(data),
574
- (e) => e as ZodError
575
- )
576
-
577
- // Use throughout your code
578
- const parseUser = safeParse(UserSchema)
579
- const result = parseUser(rawData) // Either<ZodError, User>
580
- ```
581
-
582
- ### From Promise to TaskEither
583
-
584
- ```typescript
585
- import * as TE from 'fp-ts/TaskEither'
586
-
587
- // Wrap external async functions
588
- const fetchJson = <T>(url: string): TE.TaskEither<Error, T> =>
589
- TE.tryCatch(
590
- () => fetch(url).then(r => r.json()),
591
- (e) => new Error(`Fetch failed: ${e}`)
592
- )
593
-
594
- // Wrap axios, prisma, any async library
595
- const getUserFromDb = (id: string): TE.TaskEither<DbError, User> =>
596
- TE.tryCatch(
597
- () => prisma.user.findUniqueOrThrow({ where: { id } }),
598
- (e) => ({ code: 'DB_ERROR', cause: e })
599
- )
600
- ```
601
-
602
- ### Back to Promise (Escape Hatch)
603
-
604
- Sometimes you need a plain Promise for external APIs.
605
-
606
- ```typescript
607
- import * as TE from 'fp-ts/TaskEither'
608
- import * as E from 'fp-ts/Either'
609
-
610
- const myTaskEither: TE.TaskEither<Error, User> = fetchUser('123')
611
-
612
- // Option 1: Get the Either (preserves both cases)
613
- const either: E.Either<Error, User> = await myTaskEither()
614
-
615
- // Option 2: Throw on error (for legacy code)
616
- const toThrowingPromise = <E, A>(te: TE.TaskEither<E, A>): Promise<A> =>
617
- te().then(E.fold(
618
- (error) => Promise.reject(error),
619
- (value) => Promise.resolve(value)
620
- ))
621
-
622
- const user = await toThrowingPromise(fetchUser('123')) // Throws if Left
623
-
624
- // Option 3: Default on error
625
- const user = await pipe(
626
- fetchUser('123'),
627
- TE.getOrElse(() => T.of(defaultUser))
628
- )()
629
- ```
630
-
631
- ---
632
-
633
- ## Real Scenarios
634
-
635
- ### Parse User Input Safely
636
-
637
- ```typescript
638
- interface ParsedInput {
639
- id: number
640
- name: string
641
- tags: string[]
642
- }
643
-
644
- const parseInput = (raw: unknown): E.Either<string, ParsedInput> =>
645
- pipe(
646
- E.Do,
647
- E.bind('obj', () =>
648
- typeof raw === 'object' && raw !== null
649
- ? E.right(raw as Record<string, unknown>)
650
- : E.left('Input must be an object')
651
- ),
652
- E.bind('id', ({ obj }) =>
653
- typeof obj.id === 'number'
654
- ? E.right(obj.id)
655
- : E.left('id must be a number')
656
- ),
657
- E.bind('name', ({ obj }) =>
658
- typeof obj.name === 'string' && obj.name.length > 0
659
- ? E.right(obj.name)
660
- : E.left('name must be a non-empty string')
661
- ),
662
- E.bind('tags', ({ obj }) =>
663
- Array.isArray(obj.tags) && obj.tags.every(t => typeof t === 'string')
664
- ? E.right(obj.tags as string[])
665
- : E.left('tags must be an array of strings')
666
- ),
667
- E.map(({ id, name, tags }) => ({ id, name, tags }))
668
- )
669
-
670
- // Usage
671
- parseInput({ id: 1, name: 'test', tags: ['a', 'b'] })
672
- // Right({ id: 1, name: 'test', tags: ['a', 'b'] })
673
-
674
- parseInput({ id: 'wrong', name: '', tags: null })
675
- // Left('id must be a number')
676
- ```
677
-
678
- ### API Call with Full Error Handling
679
-
680
- ```typescript
681
- interface ApiError {
682
- code: string
683
- message: string
684
- status?: number
685
- }
686
-
687
- const createApiError = (message: string, code = 'UNKNOWN', status?: number): ApiError =>
688
- ({ code, message, status })
689
-
690
- const fetchWithErrorHandling = <T>(url: string): TE.TaskEither<ApiError, T> =>
691
- pipe(
692
- TE.tryCatch(
693
- () => fetch(url),
694
- () => createApiError('Network error', 'NETWORK')
695
- ),
696
- TE.chain(response =>
697
- response.ok
698
- ? TE.tryCatch(
699
- () => response.json() as Promise<T>,
700
- () => createApiError('Invalid JSON', 'PARSE')
701
- )
702
- : TE.left(createApiError(
703
- `HTTP ${response.status}`,
704
- response.status === 404 ? 'NOT_FOUND' : 'HTTP_ERROR',
705
- response.status
706
- ))
707
- )
708
- )
709
-
710
- // Usage with pattern matching on error codes
711
- const handleUserFetch = (userId: string) =>
712
- pipe(
713
- fetchWithErrorHandling<User>(`/api/users/${userId}`),
714
- TE.fold(
715
- (error) => {
716
- switch (error.code) {
717
- case 'NOT_FOUND': return T.of(showNotFoundPage())
718
- case 'NETWORK': return T.of(showOfflineMessage())
719
- default: return T.of(showGenericError(error.message))
720
- }
721
- },
722
- (user) => T.of(showUserProfile(user))
723
- )
724
- )
725
- ```
726
-
727
- ### Process List Where Some Items Might Fail
728
-
729
- ```typescript
730
- import * as A from 'fp-ts/Array'
731
- import * as E from 'fp-ts/Either'
732
- import { pipe } from 'fp-ts/function'
733
-
734
- interface ProcessResult<T> {
735
- successes: T[]
736
- failures: Array<{ item: unknown; error: string }>
737
- }
738
-
739
- // Process all, collect successes and failures separately
740
- const processAllCollectErrors = <T, R>(
741
- items: T[],
742
- process: (item: T) => E.Either<string, R>
743
- ): ProcessResult<R> => {
744
- const results = items.map((item, index) =>
745
- pipe(
746
- process(item),
747
- E.mapLeft(error => ({ item, error, index }))
748
- )
749
- )
750
-
751
- return {
752
- successes: pipe(results, A.filterMap(E.toOption)),
753
- failures: pipe(
754
- results,
755
- A.filterMap(r => E.isLeft(r) ? O.some(r.left) : O.none)
756
- )
757
- }
758
- }
759
-
760
- // Usage
761
- const parseNumbers = (inputs: string[]) =>
762
- processAllCollectErrors(inputs, input => {
763
- const n = parseInt(input, 10)
764
- return isNaN(n) ? E.left(`Invalid number: ${input}`) : E.right(n)
765
- })
766
-
767
- parseNumbers(['1', 'abc', '3', 'def'])
768
- // {
769
- // successes: [1, 3],
770
- // failures: [
771
- // { item: 'abc', error: 'Invalid number: abc', index: 1 },
772
- // { item: 'def', error: 'Invalid number: def', index: 3 }
773
- // ]
774
- // }
775
- ```
776
-
777
- ### Bulk Operations with Partial Success
778
-
779
- ```typescript
780
- import * as TE from 'fp-ts/TaskEither'
781
- import * as T from 'fp-ts/Task'
782
- import { pipe } from 'fp-ts/function'
783
-
784
- interface BulkResult<T> {
785
- succeeded: T[]
786
- failed: Array<{ id: string; error: string }>
787
- }
788
-
789
- const bulkProcess = <T>(
790
- ids: string[],
791
- process: (id: string) => TE.TaskEither<string, T>
792
- ): T.Task<BulkResult<T>> =>
793
- pipe(
794
- ids,
795
- A.map(id =>
796
- pipe(
797
- process(id),
798
- TE.fold(
799
- (error) => T.of({ type: 'failed' as const, id, error }),
800
- (result) => T.of({ type: 'succeeded' as const, result })
801
- )
802
- )
803
- ),
804
- T.sequenceArray,
805
- T.map(results => ({
806
- succeeded: results
807
- .filter((r): r is { type: 'succeeded'; result: T } => r.type === 'succeeded')
808
- .map(r => r.result),
809
- failed: results
810
- .filter((r): r is { type: 'failed'; id: string; error: string } => r.type === 'failed')
811
- .map(({ id, error }) => ({ id, error }))
812
- }))
813
- )
814
-
815
- // Usage
816
- const deleteUsers = (userIds: string[]) =>
817
- bulkProcess(userIds, id =>
818
- pipe(
819
- deleteUser(id),
820
- TE.mapLeft(e => e.message)
821
- )
822
- )
823
-
824
- // All operations run, you get a report of what worked and what didn't
825
- ```
826
-
827
- ---
828
-
829
- ## Quick Reference
830
-
831
- | Pattern | Use When | Example |
832
- |---------|----------|---------|
833
- | `E.right(value)` | Creating a success | `E.right(42)` |
834
- | `E.left(error)` | Creating a failure | `E.left('not found')` |
835
- | `E.tryCatch(fn, onError)` | Wrapping throwing code | `E.tryCatch(() => JSON.parse(s), toError)` |
836
- | `E.fromNullable(error)` | Converting nullable | `E.fromNullable('missing')(maybeValue)` |
837
- | `E.map(fn)` | Transform success | `pipe(result, E.map(x => x * 2))` |
838
- | `E.mapLeft(fn)` | Transform error | `pipe(result, E.mapLeft(addContext))` |
839
- | `E.chain(fn)` | Chain operations | `pipe(getA(), E.chain(a => getB(a.id)))` |
840
- | `E.chainW(fn)` | Chain with different error type | `pipe(validate(), E.chainW(save))` |
841
- | `E.fold(onError, onSuccess)` | Handle both cases | `E.fold(showError, showData)` |
842
- | `E.getOrElse(onError)` | Extract with default | `E.getOrElse(() => 0)` |
843
- | `E.filterOrElse(pred, onFalse)` | Validate with error | `E.filterOrElse(x => x > 0, () => 'must be positive')` |
844
- | `sequenceS(validation)({...})` | Collect all errors | Form validation |
845
-
846
- ### TaskEither Equivalents
847
-
848
- All Either operations have TaskEither equivalents:
849
- - `TE.right`, `TE.left`, `TE.tryCatch`
850
- - `TE.map`, `TE.mapLeft`, `TE.chain`, `TE.chainW`
851
- - `TE.fold`, `TE.getOrElse`, `TE.filterOrElse`
852
- - `TE.orElse` for fallbacks
853
-
854
- ---
855
-
856
- ## Summary
857
-
858
- 1. **Return errors as values** - Use Either/TaskEither instead of throwing
859
- 2. **Chain with confidence** - `chain` stops at first error automatically
860
- 3. **Collect all errors when needed** - Use validation applicative for forms
861
- 4. **Wrap at boundaries** - Convert throwing/Promise code at the edges
862
- 5. **Match at the end** - Use `fold` to handle both cases when you're ready to act
863
-
864
- The payoff: TypeScript tracks your errors, no more forgotten try/catch, clear control flow, and composable error handling.
865
-
866
36
  ## Limitations
867
37
  - Use this skill only when the task clearly matches the scope described above.
868
38
  - Do not treat the output as a substitute for environment-specific validation, testing, or expert review.