@hybridlabor-api/bdb-antigravity-skills 1.0.0

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 (792) hide show
  1. package/GEMINI.md +29 -0
  2. package/README.md +64 -0
  3. package/installer.sh +97 -0
  4. package/mcp_config.json +32 -0
  5. package/package.json +20 -0
  6. package/skills/global_config/MCP_Manage/SKILL.md +39 -0
  7. package/skills/global_config/agent-manager-skill/SKILL.md +47 -0
  8. package/skills/global_config/agent-memory-mcp/SKILL.md +92 -0
  9. package/skills/global_config/agent-orchestrator/SKILL.md +321 -0
  10. package/skills/global_config/agent-orchestrator/references/capability-taxonomy.md +85 -0
  11. package/skills/global_config/agent-orchestrator/references/orchestration-patterns.md +129 -0
  12. package/skills/global_config/agent-orchestrator/scripts/match_skills.py +329 -0
  13. package/skills/global_config/agent-orchestrator/scripts/orchestrate.py +304 -0
  14. package/skills/global_config/agent-orchestrator/scripts/requirements.txt +1 -0
  15. package/skills/global_config/agent-orchestrator/scripts/scan_registry.py +508 -0
  16. package/skills/global_config/agent-tool-builder/SKILL.md +714 -0
  17. package/skills/global_config/ai-agent-development/SKILL.md +178 -0
  18. package/skills/global_config/ai-product/SKILL.md +753 -0
  19. package/skills/global_config/api-design-principles/SKILL.md +45 -0
  20. package/skills/global_config/api-design-principles/assets/api-design-checklist.md +155 -0
  21. package/skills/global_config/api-design-principles/assets/rest-api-template.py +182 -0
  22. package/skills/global_config/api-design-principles/references/graphql-schema-design.md +583 -0
  23. package/skills/global_config/api-design-principles/references/rest-best-practices.md +408 -0
  24. package/skills/global_config/api-design-principles/resources/implementation-playbook.md +513 -0
  25. package/skills/global_config/api-patterns/SKILL.md +90 -0
  26. package/skills/global_config/api-patterns/api-style.md +42 -0
  27. package/skills/global_config/api-patterns/auth.md +24 -0
  28. package/skills/global_config/api-patterns/documentation.md +26 -0
  29. package/skills/global_config/api-patterns/graphql.md +41 -0
  30. package/skills/global_config/api-patterns/rate-limiting.md +31 -0
  31. package/skills/global_config/api-patterns/response.md +37 -0
  32. package/skills/global_config/api-patterns/rest.md +40 -0
  33. package/skills/global_config/api-patterns/scripts/api_validator.py +211 -0
  34. package/skills/global_config/api-patterns/security-testing.md +122 -0
  35. package/skills/global_config/api-patterns/trpc.md +41 -0
  36. package/skills/global_config/api-patterns/versioning.md +22 -0
  37. package/skills/global_config/apify-lead-generation/SKILL.md +131 -0
  38. package/skills/global_config/apify-lead-generation/reference/scripts/run_actor.js +363 -0
  39. package/skills/global_config/apify-ultimate-scraper/SKILL.md +241 -0
  40. package/skills/global_config/apify-ultimate-scraper/reference/scripts/run_actor.js +363 -0
  41. package/skills/global_config/architect-review/SKILL.md +177 -0
  42. package/skills/global_config/bash-linux/SKILL.md +209 -0
  43. package/skills/global_config/bdbrainstorm/SKILL.md +37 -0
  44. package/skills/global_config/browser-automation/SKILL.md +1116 -0
  45. package/skills/global_config/clean-code/SKILL.md +99 -0
  46. package/skills/global_config/cloudflare-workers-expert/SKILL.md +94 -0
  47. package/skills/global_config/concise-planning/SKILL.md +73 -0
  48. package/skills/global_config/copywriting/SKILL.md +254 -0
  49. package/skills/global_config/crewai/SKILL.md +458 -0
  50. package/skills/global_config/database-design/SKILL.md +62 -0
  51. package/skills/global_config/database-design/database-selection.md +43 -0
  52. package/skills/global_config/database-design/indexing.md +39 -0
  53. package/skills/global_config/database-design/migrations.md +48 -0
  54. package/skills/global_config/database-design/optimization.md +36 -0
  55. package/skills/global_config/database-design/orm-selection.md +30 -0
  56. package/skills/global_config/database-design/schema-design.md +56 -0
  57. package/skills/global_config/database-design/scripts/schema_validator.py +172 -0
  58. package/skills/global_config/debugger/SKILL.md +58 -0
  59. package/skills/global_config/deep-research/SKILL.md +120 -0
  60. package/skills/global_config/design-spells/SKILL.md +41 -0
  61. package/skills/global_config/design-taste-frontend/SKILL.md +247 -0
  62. package/skills/global_config/docker-expert/SKILL.md +418 -0
  63. package/skills/global_config/documentation/SKILL.md +265 -0
  64. package/skills/global_config/drizzle-orm-expert/SKILL.md +368 -0
  65. package/skills/global_config/executing-plans/SKILL.md +87 -0
  66. package/skills/global_config/frontend-design/LICENSE.txt +177 -0
  67. package/skills/global_config/frontend-design/SKILL.md +282 -0
  68. package/skills/global_config/frontend-dev-guidelines/SKILL.md +369 -0
  69. package/skills/global_config/frontend-dev-guidelines/resources/common-patterns.md +331 -0
  70. package/skills/global_config/frontend-dev-guidelines/resources/complete-examples.md +872 -0
  71. package/skills/global_config/frontend-dev-guidelines/resources/component-patterns.md +502 -0
  72. package/skills/global_config/frontend-dev-guidelines/resources/data-fetching.md +767 -0
  73. package/skills/global_config/frontend-dev-guidelines/resources/file-organization.md +502 -0
  74. package/skills/global_config/frontend-dev-guidelines/resources/loading-and-error-states.md +501 -0
  75. package/skills/global_config/frontend-dev-guidelines/resources/performance.md +406 -0
  76. package/skills/global_config/frontend-dev-guidelines/resources/routing-guide.md +364 -0
  77. package/skills/global_config/frontend-dev-guidelines/resources/styling-guide.md +428 -0
  78. package/skills/global_config/frontend-dev-guidelines/resources/typescript-standards.md +418 -0
  79. package/skills/global_config/gemini-api-dev/SKILL.md +138 -0
  80. package/skills/global_config/gemini-api-integration/SKILL.md +193 -0
  81. package/skills/global_config/geo-fundamentals/SKILL.md +165 -0
  82. package/skills/global_config/geo-fundamentals/scripts/geo_checker.py +289 -0
  83. package/skills/global_config/git-advanced-workflows/SKILL.md +420 -0
  84. package/skills/global_config/git-pr-review/SKILL.md +179 -0
  85. package/skills/global_config/github/SKILL.md +80 -0
  86. package/skills/global_config/github/agents/openai.yaml +4 -0
  87. package/skills/global_config/github-actions-templates/SKILL.md +353 -0
  88. package/skills/global_config/github-workflow-automation/SKILL.md +854 -0
  89. package/skills/global_config/go-concurrency-patterns/SKILL.md +41 -0
  90. package/skills/global_config/go-concurrency-patterns/resources/implementation-playbook.md +654 -0
  91. package/skills/global_config/go-playwright/SKILL.md +76 -0
  92. package/skills/global_config/go-playwright/resources/implementation-playbook.md +110 -0
  93. package/skills/global_config/golang-pro/SKILL.md +181 -0
  94. package/skills/global_config/google-sheets-automation/SKILL.md +149 -0
  95. package/skills/global_config/landing-page-generator/SKILL.md +213 -0
  96. package/skills/global_config/landing-page-generator/references/conversion-patterns.md +176 -0
  97. package/skills/global_config/landing-page-generator/references/frameworks.md +177 -0
  98. package/skills/global_config/landing-page-generator/references/landing-page-patterns.md +98 -0
  99. package/skills/global_config/landing-page-generator/references/seo-checklist.md +109 -0
  100. package/skills/global_config/landing-page-generator/scripts/landing_page_scaffolder.py +568 -0
  101. package/skills/global_config/linear-claude-skill/SKILL.md +523 -0
  102. package/skills/global_config/llm-app-patterns/SKILL.md +768 -0
  103. package/skills/global_config/llm-application-dev-ai-assistant/SKILL.md +43 -0
  104. package/skills/global_config/llm-application-dev-ai-assistant/resources/implementation-playbook.md +1236 -0
  105. package/skills/global_config/llm-prompt-optimizer/SKILL.md +187 -0
  106. package/skills/global_config/llm-structured-output/SKILL.md +212 -0
  107. package/skills/global_config/local-llm-expert/SKILL.md +88 -0
  108. package/skills/global_config/microservices-patterns/SKILL.md +43 -0
  109. package/skills/global_config/microservices-patterns/resources/implementation-playbook.md +607 -0
  110. package/skills/global_config/modern-javascript-patterns/SKILL.md +43 -0
  111. package/skills/global_config/modern-javascript-patterns/resources/implementation-playbook.md +910 -0
  112. package/skills/global_config/monorepo-management/SKILL.md +43 -0
  113. package/skills/global_config/monorepo-management/resources/implementation-playbook.md +621 -0
  114. package/skills/global_config/n8n-code-javascript/SKILL.md +706 -0
  115. package/skills/global_config/n8n-code-python/SKILL.md +755 -0
  116. package/skills/global_config/n8n-expression-syntax/SKILL.md +528 -0
  117. package/skills/global_config/n8n-mcp-tools-expert/SKILL.md +654 -0
  118. package/skills/global_config/n8n-workflow-patterns/SKILL.md +423 -0
  119. package/skills/global_config/neon-postgres/SKILL.md +619 -0
  120. package/skills/global_config/nextjs-app-router-patterns/SKILL.md +41 -0
  121. package/skills/global_config/nextjs-app-router-patterns/resources/implementation-playbook.md +543 -0
  122. package/skills/global_config/nextjs-best-practices/SKILL.md +213 -0
  123. package/skills/global_config/notion-automation/SKILL.md +224 -0
  124. package/skills/global_config/obsidian-markdown/SKILL.md +209 -0
  125. package/skills/global_config/obsidian-markdown/references/CALLOUTS.md +58 -0
  126. package/skills/global_config/obsidian-markdown/references/EMBEDS.md +63 -0
  127. package/skills/global_config/obsidian-markdown/references/PROPERTIES.md +61 -0
  128. package/skills/global_config/openapi-spec-generation/SKILL.md +41 -0
  129. package/skills/global_config/openapi-spec-generation/resources/implementation-playbook.md +1027 -0
  130. package/skills/global_config/os-scripting/SKILL.md +433 -0
  131. package/skills/global_config/planning-with-files/SKILL.md +189 -0
  132. package/skills/global_config/planning-with-files/examples.md +202 -0
  133. package/skills/global_config/planning-with-files/reference.md +218 -0
  134. package/skills/global_config/planning-with-files/scripts/check-complete.sh +44 -0
  135. package/skills/global_config/planning-with-files/scripts/init-session.sh +120 -0
  136. package/skills/global_config/planning-with-files/templates/findings.md +95 -0
  137. package/skills/global_config/planning-with-files/templates/progress.md +114 -0
  138. package/skills/global_config/planning-with-files/templates/task_plan.md +132 -0
  139. package/skills/global_config/playwright-skill/API_REFERENCE.md +653 -0
  140. package/skills/global_config/playwright-skill/SKILL.md +469 -0
  141. package/skills/global_config/playwright-skill/lib/helpers.js +441 -0
  142. package/skills/global_config/playwright-skill/package.json +26 -0
  143. package/skills/global_config/playwright-skill/run.js +228 -0
  144. package/skills/global_config/posix-shell-pro/SKILL.md +308 -0
  145. package/skills/global_config/postgres-best-practices/AGENTS.md +1490 -0
  146. package/skills/global_config/postgres-best-practices/README.md +119 -0
  147. package/skills/global_config/postgres-best-practices/SKILL.md +63 -0
  148. package/skills/global_config/postgres-best-practices/metadata.json +13 -0
  149. package/skills/global_config/postgres-best-practices/rules/_contributing.md +171 -0
  150. package/skills/global_config/postgres-best-practices/rules/_sections.md +39 -0
  151. package/skills/global_config/postgres-best-practices/rules/_template.md +34 -0
  152. package/skills/global_config/postgres-best-practices/rules/advanced-full-text-search.md +55 -0
  153. package/skills/global_config/postgres-best-practices/rules/advanced-jsonb-indexing.md +49 -0
  154. package/skills/global_config/postgres-best-practices/rules/conn-idle-timeout.md +46 -0
  155. package/skills/global_config/postgres-best-practices/rules/conn-limits.md +44 -0
  156. package/skills/global_config/postgres-best-practices/rules/conn-pooling.md +41 -0
  157. package/skills/global_config/postgres-best-practices/rules/conn-prepared-statements.md +46 -0
  158. package/skills/global_config/postgres-best-practices/rules/data-batch-inserts.md +54 -0
  159. package/skills/global_config/postgres-best-practices/rules/data-n-plus-one.md +53 -0
  160. package/skills/global_config/postgres-best-practices/rules/data-pagination.md +50 -0
  161. package/skills/global_config/postgres-best-practices/rules/data-upsert.md +50 -0
  162. package/skills/global_config/postgres-best-practices/rules/lock-advisory.md +56 -0
  163. package/skills/global_config/postgres-best-practices/rules/lock-deadlock-prevention.md +68 -0
  164. package/skills/global_config/postgres-best-practices/rules/lock-short-transactions.md +50 -0
  165. package/skills/global_config/postgres-best-practices/rules/lock-skip-locked.md +54 -0
  166. package/skills/global_config/postgres-best-practices/rules/monitor-explain-analyze.md +45 -0
  167. package/skills/global_config/postgres-best-practices/rules/monitor-pg-stat-statements.md +55 -0
  168. package/skills/global_config/postgres-best-practices/rules/monitor-vacuum-analyze.md +55 -0
  169. package/skills/global_config/postgres-best-practices/rules/query-composite-indexes.md +44 -0
  170. package/skills/global_config/postgres-best-practices/rules/query-covering-indexes.md +40 -0
  171. package/skills/global_config/postgres-best-practices/rules/query-index-types.md +45 -0
  172. package/skills/global_config/postgres-best-practices/rules/query-missing-indexes.md +43 -0
  173. package/skills/global_config/postgres-best-practices/rules/query-partial-indexes.md +45 -0
  174. package/skills/global_config/postgres-best-practices/rules/schema-data-types.md +46 -0
  175. package/skills/global_config/postgres-best-practices/rules/schema-foreign-key-indexes.md +59 -0
  176. package/skills/global_config/postgres-best-practices/rules/schema-lowercase-identifiers.md +55 -0
  177. package/skills/global_config/postgres-best-practices/rules/schema-partitioning.md +55 -0
  178. package/skills/global_config/postgres-best-practices/rules/schema-primary-keys.md +61 -0
  179. package/skills/global_config/postgres-best-practices/rules/security-privileges.md +54 -0
  180. package/skills/global_config/postgres-best-practices/rules/security-rls-basics.md +50 -0
  181. package/skills/global_config/postgres-best-practices/rules/security-rls-performance.md +57 -0
  182. package/skills/global_config/postgresql/SKILL.md +233 -0
  183. package/skills/global_config/prisma-expert/SKILL.md +366 -0
  184. package/skills/global_config/product-manager-toolkit/SKILL.md +362 -0
  185. package/skills/global_config/product-manager-toolkit/references/prd_templates.md +317 -0
  186. package/skills/global_config/product-manager-toolkit/scripts/customer_interview_analyzer.py +441 -0
  187. package/skills/global_config/product-manager-toolkit/scripts/rice_prioritizer.py +296 -0
  188. package/skills/global_config/programmatic-seo/SKILL.md +356 -0
  189. package/skills/global_config/prompt-engineer/README.md +659 -0
  190. package/skills/global_config/prompt-engineer/SKILL.md +281 -0
  191. package/skills/global_config/prompt-engineering-patterns/SKILL.md +221 -0
  192. package/skills/global_config/prompt-engineering-patterns/assets/few-shot-examples.json +106 -0
  193. package/skills/global_config/prompt-engineering-patterns/assets/prompt-template-library.md +246 -0
  194. package/skills/global_config/prompt-engineering-patterns/references/chain-of-thought.md +399 -0
  195. package/skills/global_config/prompt-engineering-patterns/references/few-shot-learning.md +369 -0
  196. package/skills/global_config/prompt-engineering-patterns/references/prompt-optimization.md +414 -0
  197. package/skills/global_config/prompt-engineering-patterns/references/prompt-templates.md +470 -0
  198. package/skills/global_config/prompt-engineering-patterns/references/system-prompts.md +189 -0
  199. package/skills/global_config/prompt-engineering-patterns/scripts/optimize-prompt.py +279 -0
  200. package/skills/global_config/python-patterns/SKILL.md +451 -0
  201. package/skills/global_config/python-performance-optimization/SKILL.md +44 -0
  202. package/skills/global_config/python-performance-optimization/resources/implementation-playbook.md +868 -0
  203. package/skills/global_config/python-pro/SKILL.md +161 -0
  204. package/skills/global_config/rag-engineer/SKILL.md +341 -0
  205. package/skills/global_config/rag-implementation/SKILL.md +201 -0
  206. package/skills/global_config/react-best-practices/AGENTS.md +2249 -0
  207. package/skills/global_config/react-best-practices/README.md +123 -0
  208. package/skills/global_config/react-best-practices/SKILL.md +131 -0
  209. package/skills/global_config/react-best-practices/metadata.json +15 -0
  210. package/skills/global_config/react-best-practices/rules/_sections.md +46 -0
  211. package/skills/global_config/react-best-practices/rules/_template.md +28 -0
  212. package/skills/global_config/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  213. package/skills/global_config/react-best-practices/rules/advanced-use-latest.md +49 -0
  214. package/skills/global_config/react-best-practices/rules/async-api-routes.md +38 -0
  215. package/skills/global_config/react-best-practices/rules/async-defer-await.md +80 -0
  216. package/skills/global_config/react-best-practices/rules/async-dependencies.md +36 -0
  217. package/skills/global_config/react-best-practices/rules/async-parallel.md +28 -0
  218. package/skills/global_config/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  219. package/skills/global_config/react-best-practices/rules/bundle-barrel-imports.md +59 -0
  220. package/skills/global_config/react-best-practices/rules/bundle-conditional.md +31 -0
  221. package/skills/global_config/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  222. package/skills/global_config/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  223. package/skills/global_config/react-best-practices/rules/bundle-preload.md +50 -0
  224. package/skills/global_config/react-best-practices/rules/client-event-listeners.md +74 -0
  225. package/skills/global_config/react-best-practices/rules/client-swr-dedup.md +56 -0
  226. package/skills/global_config/react-best-practices/rules/js-batch-dom-css.md +82 -0
  227. package/skills/global_config/react-best-practices/rules/js-cache-function-results.md +80 -0
  228. package/skills/global_config/react-best-practices/rules/js-cache-property-access.md +28 -0
  229. package/skills/global_config/react-best-practices/rules/js-cache-storage.md +70 -0
  230. package/skills/global_config/react-best-practices/rules/js-combine-iterations.md +32 -0
  231. package/skills/global_config/react-best-practices/rules/js-early-exit.md +50 -0
  232. package/skills/global_config/react-best-practices/rules/js-hoist-regexp.md +45 -0
  233. package/skills/global_config/react-best-practices/rules/js-index-maps.md +37 -0
  234. package/skills/global_config/react-best-practices/rules/js-length-check-first.md +49 -0
  235. package/skills/global_config/react-best-practices/rules/js-min-max-loop.md +82 -0
  236. package/skills/global_config/react-best-practices/rules/js-set-map-lookups.md +24 -0
  237. package/skills/global_config/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  238. package/skills/global_config/react-best-practices/rules/rendering-activity.md +26 -0
  239. package/skills/global_config/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  240. package/skills/global_config/react-best-practices/rules/rendering-conditional-render.md +40 -0
  241. package/skills/global_config/react-best-practices/rules/rendering-content-visibility.md +38 -0
  242. package/skills/global_config/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  243. package/skills/global_config/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  244. package/skills/global_config/react-best-practices/rules/rendering-svg-precision.md +28 -0
  245. package/skills/global_config/react-best-practices/rules/rerender-defer-reads.md +39 -0
  246. package/skills/global_config/react-best-practices/rules/rerender-dependencies.md +45 -0
  247. package/skills/global_config/react-best-practices/rules/rerender-derived-state.md +29 -0
  248. package/skills/global_config/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  249. package/skills/global_config/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  250. package/skills/global_config/react-best-practices/rules/rerender-memo.md +44 -0
  251. package/skills/global_config/react-best-practices/rules/rerender-transitions.md +40 -0
  252. package/skills/global_config/react-best-practices/rules/server-after-nonblocking.md +73 -0
  253. package/skills/global_config/react-best-practices/rules/server-cache-lru.md +41 -0
  254. package/skills/global_config/react-best-practices/rules/server-cache-react.md +26 -0
  255. package/skills/global_config/react-best-practices/rules/server-parallel-fetching.md +79 -0
  256. package/skills/global_config/react-best-practices/rules/server-serialization.md +38 -0
  257. package/skills/global_config/react-component-performance/SKILL.md +139 -0
  258. package/skills/global_config/react-component-performance/agents/openai.yaml +4 -0
  259. package/skills/global_config/react-component-performance/references/examples.md +88 -0
  260. package/skills/global_config/react-patterns/SKILL.md +216 -0
  261. package/skills/global_config/readme/SKILL.md +848 -0
  262. package/skills/global_config/remotion/SKILL.md +404 -0
  263. package/skills/global_config/schema-markup/SKILL.md +363 -0
  264. package/skills/global_config/senior-frontend/SKILL.md +495 -0
  265. package/skills/global_config/senior-frontend/references/frontend_best_practices.md +806 -0
  266. package/skills/global_config/senior-frontend/references/nextjs_optimization_guide.md +724 -0
  267. package/skills/global_config/senior-frontend/references/react_patterns.md +746 -0
  268. package/skills/global_config/senior-frontend/scripts/bundle_analyzer.py +407 -0
  269. package/skills/global_config/senior-frontend/scripts/component_generator.py +329 -0
  270. package/skills/global_config/senior-frontend/scripts/frontend_scaffolder.py +1005 -0
  271. package/skills/global_config/senior-fullstack/SKILL.md +220 -0
  272. package/skills/global_config/senior-fullstack/references/architecture_patterns.md +103 -0
  273. package/skills/global_config/senior-fullstack/references/development_workflows.md +103 -0
  274. package/skills/global_config/senior-fullstack/references/tech_stack_guide.md +103 -0
  275. package/skills/global_config/senior-fullstack/scripts/code_quality_analyzer.py +114 -0
  276. package/skills/global_config/senior-fullstack/scripts/fullstack_scaffolder.py +114 -0
  277. package/skills/global_config/senior-fullstack/scripts/project_scaffolder.py +114 -0
  278. package/skills/global_config/seo/SKILL.md +143 -0
  279. package/skills/global_config/seo/references/cwv-thresholds.md +108 -0
  280. package/skills/global_config/seo/references/eeat-framework.md +214 -0
  281. package/skills/global_config/seo/references/quality-gates.md +155 -0
  282. package/skills/global_config/seo/references/schema-types.md +118 -0
  283. package/skills/global_config/seo-audit/SKILL.md +492 -0
  284. package/skills/global_config/seo-technical/SKILL.md +179 -0
  285. package/skills/global_config/shadcn/SKILL.md +254 -0
  286. package/skills/global_config/shadcn/agents/openai.yml +5 -0
  287. package/skills/global_config/shadcn/assets/shadcn-small.png +0 -0
  288. package/skills/global_config/shadcn/assets/shadcn.png +0 -0
  289. package/skills/global_config/shadcn/cli.md +255 -0
  290. package/skills/global_config/shadcn/customization.md +202 -0
  291. package/skills/global_config/shadcn/evals/evals.json +47 -0
  292. package/skills/global_config/shadcn/mcp.md +94 -0
  293. package/skills/global_config/shadcn/rules/base-vs-radix.md +306 -0
  294. package/skills/global_config/shadcn/rules/composition.md +195 -0
  295. package/skills/global_config/shadcn/rules/forms.md +192 -0
  296. package/skills/global_config/shadcn/rules/icons.md +101 -0
  297. package/skills/global_config/shadcn/rules/styling.md +162 -0
  298. package/skills/global_config/simplify-code/SKILL.md +183 -0
  299. package/skills/global_config/slack-automation/SKILL.md +197 -0
  300. package/skills/global_config/software-architecture/SKILL.md +86 -0
  301. package/skills/global_config/spline-3d-integration/SKILL.md +90 -0
  302. package/skills/global_config/spline-3d-integration/examples/interactive-scene.tsx +198 -0
  303. package/skills/global_config/spline-3d-integration/examples/react-spline-wrapper.tsx +124 -0
  304. package/skills/global_config/spline-3d-integration/examples/vanilla-embed.html +146 -0
  305. package/skills/global_config/spline-3d-integration/guides/COMMON_PROBLEMS.md +262 -0
  306. package/skills/global_config/spline-3d-integration/guides/PERFORMANCE.md +163 -0
  307. package/skills/global_config/spline-3d-integration/guides/REACT_INTEGRATION.md +212 -0
  308. package/skills/global_config/spline-3d-integration/guides/VANILLA_INTEGRATION.md +203 -0
  309. package/skills/global_config/subagent-driven-development/SKILL.md +247 -0
  310. package/skills/global_config/subagent-driven-development/code-quality-reviewer-prompt.md +20 -0
  311. package/skills/global_config/subagent-driven-development/implementer-prompt.md +78 -0
  312. package/skills/global_config/subagent-driven-development/spec-reviewer-prompt.md +61 -0
  313. package/skills/global_config/systematic-debugging/CREATION-LOG.md +119 -0
  314. package/skills/global_config/systematic-debugging/SKILL.md +303 -0
  315. package/skills/global_config/systematic-debugging/condition-based-waiting-example.ts +158 -0
  316. package/skills/global_config/systematic-debugging/condition-based-waiting.md +115 -0
  317. package/skills/global_config/systematic-debugging/defense-in-depth.md +122 -0
  318. package/skills/global_config/systematic-debugging/find-polluter.sh +63 -0
  319. package/skills/global_config/systematic-debugging/root-cause-tracing.md +169 -0
  320. package/skills/global_config/systematic-debugging/test-academic.md +14 -0
  321. package/skills/global_config/systematic-debugging/test-pressure-1.md +58 -0
  322. package/skills/global_config/systematic-debugging/test-pressure-2.md +68 -0
  323. package/skills/global_config/systematic-debugging/test-pressure-3.md +69 -0
  324. package/skills/global_config/tailwind-patterns/SKILL.md +279 -0
  325. package/skills/global_config/tanstack-query-expert/SKILL.md +247 -0
  326. package/skills/global_config/tdd-workflow/SKILL.md +159 -0
  327. package/skills/global_config/test-driven-development/SKILL.md +378 -0
  328. package/skills/global_config/test-driven-development/testing-anti-patterns.md +299 -0
  329. package/skills/global_config/threejs-skills/SKILL.md +720 -0
  330. package/skills/global_config/tmux/SKILL.md +375 -0
  331. package/skills/global_config/turborepo-caching/SKILL.md +427 -0
  332. package/skills/global_config/typescript-pro/SKILL.md +58 -0
  333. package/skills/global_config/ui-component/SKILL.md +104 -0
  334. package/skills/global_config/ui-page/SKILL.md +100 -0
  335. package/skills/global_config/ui-pattern/SKILL.md +92 -0
  336. package/skills/global_config/ui-review/SKILL.md +90 -0
  337. package/skills/global_config/ui-tokens/SKILL.md +73 -0
  338. package/skills/global_config/ui-ux-pro-max/SKILL.md +361 -0
  339. package/skills/global_config/ui-ux-pro-max/data/charts.csv +26 -0
  340. package/skills/global_config/ui-ux-pro-max/data/colors.csv +97 -0
  341. package/skills/global_config/ui-ux-pro-max/data/icons.csv +101 -0
  342. package/skills/global_config/ui-ux-pro-max/data/landing.csv +31 -0
  343. package/skills/global_config/ui-ux-pro-max/data/products.csv +97 -0
  344. package/skills/global_config/ui-ux-pro-max/data/prompts.csv +24 -0
  345. package/skills/global_config/ui-ux-pro-max/data/react-performance.csv +45 -0
  346. package/skills/global_config/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  347. package/skills/global_config/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  348. package/skills/global_config/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  349. package/skills/global_config/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  350. package/skills/global_config/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  351. package/skills/global_config/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  352. package/skills/global_config/ui-ux-pro-max/data/stacks/react.csv +54 -0
  353. package/skills/global_config/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  354. package/skills/global_config/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  355. package/skills/global_config/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  356. package/skills/global_config/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  357. package/skills/global_config/ui-ux-pro-max/data/styles.csv +59 -0
  358. package/skills/global_config/ui-ux-pro-max/data/typography.csv +58 -0
  359. package/skills/global_config/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  360. package/skills/global_config/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  361. package/skills/global_config/ui-ux-pro-max/data/web-interface.csv +31 -0
  362. package/skills/global_config/ui-ux-pro-max/scripts/__pycache__/core.cpython-313.pyc +0 -0
  363. package/skills/global_config/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-313.pyc +0 -0
  364. package/skills/global_config/ui-ux-pro-max/scripts/core.py +257 -0
  365. package/skills/global_config/ui-ux-pro-max/scripts/design_system.py +487 -0
  366. package/skills/global_config/ui-ux-pro-max/scripts/search.py +76 -0
  367. package/skills/global_config/using-neon/SKILL.md +90 -0
  368. package/skills/global_config/ux-audit/SKILL.md +66 -0
  369. package/skills/global_config/ux-feedback/SKILL.md +68 -0
  370. package/skills/global_config/ux-flow/SKILL.md +72 -0
  371. package/skills/global_config/ux-persuasion-engineer/SKILL.md +119 -0
  372. package/skills/global_config/vector-database-engineer/SKILL.md +68 -0
  373. package/skills/global_config/vercel-ai-sdk-expert/SKILL.md +227 -0
  374. package/skills/global_config/vercel-deployment/SKILL.md +682 -0
  375. package/skills/global_config/wcag-audit-patterns/SKILL.md +49 -0
  376. package/skills/global_config/wcag-audit-patterns/resources/implementation-playbook.md +541 -0
  377. package/skills/global_config/web-artifacts-builder/LICENSE.txt +202 -0
  378. package/skills/global_config/web-artifacts-builder/SKILL.md +84 -0
  379. package/skills/global_config/web-artifacts-builder/scripts/bundle-artifact.sh +54 -0
  380. package/skills/global_config/web-artifacts-builder/scripts/init-artifact.sh +322 -0
  381. package/skills/global_config/web-artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  382. package/skills/global_config/web-performance-optimization/SKILL.md +654 -0
  383. package/skills/global_config/web-scraper/SKILL.md +757 -0
  384. package/skills/global_config/web-scraper/references/data-transforms.md +397 -0
  385. package/skills/global_config/web-scraper/references/extraction-patterns.md +475 -0
  386. package/skills/global_config/web-scraper/references/output-templates.md +481 -0
  387. package/skills/global_config/webapp-testing/LICENSE.txt +202 -0
  388. package/skills/global_config/webapp-testing/SKILL.md +106 -0
  389. package/skills/global_config/webapp-testing/scripts/with_server.py +106 -0
  390. package/skills/global_config/writing-plans/SKILL.md +127 -0
  391. package/skills/global_config/zustand-store-ts/SKILL.md +79 -0
  392. package/skills/global_legacy/agent-manager-skill/SKILL.md +47 -0
  393. package/skills/global_legacy/agent-memory-mcp/SKILL.md +92 -0
  394. package/skills/global_legacy/agent-orchestrator/SKILL.md +321 -0
  395. package/skills/global_legacy/agent-orchestrator/references/capability-taxonomy.md +85 -0
  396. package/skills/global_legacy/agent-orchestrator/references/orchestration-patterns.md +129 -0
  397. package/skills/global_legacy/agent-orchestrator/scripts/match_skills.py +329 -0
  398. package/skills/global_legacy/agent-orchestrator/scripts/orchestrate.py +304 -0
  399. package/skills/global_legacy/agent-orchestrator/scripts/requirements.txt +1 -0
  400. package/skills/global_legacy/agent-orchestrator/scripts/scan_registry.py +508 -0
  401. package/skills/global_legacy/agent-tool-builder/SKILL.md +714 -0
  402. package/skills/global_legacy/ai-agent-development/SKILL.md +178 -0
  403. package/skills/global_legacy/ai-product/SKILL.md +753 -0
  404. package/skills/global_legacy/api-design-principles/SKILL.md +45 -0
  405. package/skills/global_legacy/api-design-principles/assets/api-design-checklist.md +155 -0
  406. package/skills/global_legacy/api-design-principles/assets/rest-api-template.py +182 -0
  407. package/skills/global_legacy/api-design-principles/references/graphql-schema-design.md +583 -0
  408. package/skills/global_legacy/api-design-principles/references/rest-best-practices.md +408 -0
  409. package/skills/global_legacy/api-design-principles/resources/implementation-playbook.md +513 -0
  410. package/skills/global_legacy/api-patterns/SKILL.md +90 -0
  411. package/skills/global_legacy/api-patterns/api-style.md +42 -0
  412. package/skills/global_legacy/api-patterns/auth.md +24 -0
  413. package/skills/global_legacy/api-patterns/documentation.md +26 -0
  414. package/skills/global_legacy/api-patterns/graphql.md +41 -0
  415. package/skills/global_legacy/api-patterns/rate-limiting.md +31 -0
  416. package/skills/global_legacy/api-patterns/response.md +37 -0
  417. package/skills/global_legacy/api-patterns/rest.md +40 -0
  418. package/skills/global_legacy/api-patterns/scripts/api_validator.py +211 -0
  419. package/skills/global_legacy/api-patterns/security-testing.md +122 -0
  420. package/skills/global_legacy/api-patterns/trpc.md +41 -0
  421. package/skills/global_legacy/api-patterns/versioning.md +22 -0
  422. package/skills/global_legacy/apify-lead-generation/SKILL.md +131 -0
  423. package/skills/global_legacy/apify-lead-generation/reference/scripts/run_actor.js +363 -0
  424. package/skills/global_legacy/apify-ultimate-scraper/SKILL.md +241 -0
  425. package/skills/global_legacy/apify-ultimate-scraper/reference/scripts/run_actor.js +363 -0
  426. package/skills/global_legacy/architect-review/SKILL.md +177 -0
  427. package/skills/global_legacy/bash-linux/SKILL.md +209 -0
  428. package/skills/global_legacy/brainstorming/SKILL.md +237 -0
  429. package/skills/global_legacy/browser-automation/SKILL.md +1116 -0
  430. package/skills/global_legacy/clean-code/SKILL.md +99 -0
  431. package/skills/global_legacy/cloudflare-workers-expert/SKILL.md +94 -0
  432. package/skills/global_legacy/concise-planning/SKILL.md +73 -0
  433. package/skills/global_legacy/copywriting/SKILL.md +254 -0
  434. package/skills/global_legacy/crewai/SKILL.md +458 -0
  435. package/skills/global_legacy/database-design/SKILL.md +62 -0
  436. package/skills/global_legacy/database-design/database-selection.md +43 -0
  437. package/skills/global_legacy/database-design/indexing.md +39 -0
  438. package/skills/global_legacy/database-design/migrations.md +48 -0
  439. package/skills/global_legacy/database-design/optimization.md +36 -0
  440. package/skills/global_legacy/database-design/orm-selection.md +30 -0
  441. package/skills/global_legacy/database-design/schema-design.md +56 -0
  442. package/skills/global_legacy/database-design/scripts/schema_validator.py +172 -0
  443. package/skills/global_legacy/debugger/SKILL.md +58 -0
  444. package/skills/global_legacy/deep-research/SKILL.md +120 -0
  445. package/skills/global_legacy/design-spells/SKILL.md +41 -0
  446. package/skills/global_legacy/design-taste-frontend/SKILL.md +247 -0
  447. package/skills/global_legacy/docker-expert/SKILL.md +418 -0
  448. package/skills/global_legacy/documentation/SKILL.md +265 -0
  449. package/skills/global_legacy/drizzle-orm-expert/SKILL.md +368 -0
  450. package/skills/global_legacy/executing-plans/SKILL.md +87 -0
  451. package/skills/global_legacy/frontend-design/LICENSE.txt +177 -0
  452. package/skills/global_legacy/frontend-design/SKILL.md +282 -0
  453. package/skills/global_legacy/frontend-dev-guidelines/SKILL.md +369 -0
  454. package/skills/global_legacy/frontend-dev-guidelines/resources/common-patterns.md +331 -0
  455. package/skills/global_legacy/frontend-dev-guidelines/resources/complete-examples.md +872 -0
  456. package/skills/global_legacy/frontend-dev-guidelines/resources/component-patterns.md +502 -0
  457. package/skills/global_legacy/frontend-dev-guidelines/resources/data-fetching.md +767 -0
  458. package/skills/global_legacy/frontend-dev-guidelines/resources/file-organization.md +502 -0
  459. package/skills/global_legacy/frontend-dev-guidelines/resources/loading-and-error-states.md +501 -0
  460. package/skills/global_legacy/frontend-dev-guidelines/resources/performance.md +406 -0
  461. package/skills/global_legacy/frontend-dev-guidelines/resources/routing-guide.md +364 -0
  462. package/skills/global_legacy/frontend-dev-guidelines/resources/styling-guide.md +428 -0
  463. package/skills/global_legacy/frontend-dev-guidelines/resources/typescript-standards.md +418 -0
  464. package/skills/global_legacy/gemini-api-dev/SKILL.md +138 -0
  465. package/skills/global_legacy/gemini-api-integration/SKILL.md +193 -0
  466. package/skills/global_legacy/geo-fundamentals/SKILL.md +165 -0
  467. package/skills/global_legacy/geo-fundamentals/scripts/geo_checker.py +289 -0
  468. package/skills/global_legacy/git-advanced-workflows/SKILL.md +420 -0
  469. package/skills/global_legacy/git-pr-review/SKILL.md +179 -0
  470. package/skills/global_legacy/github/SKILL.md +80 -0
  471. package/skills/global_legacy/github/agents/openai.yaml +4 -0
  472. package/skills/global_legacy/github-actions-templates/SKILL.md +353 -0
  473. package/skills/global_legacy/github-workflow-automation/SKILL.md +854 -0
  474. package/skills/global_legacy/go-concurrency-patterns/SKILL.md +41 -0
  475. package/skills/global_legacy/go-concurrency-patterns/resources/implementation-playbook.md +654 -0
  476. package/skills/global_legacy/go-playwright/SKILL.md +76 -0
  477. package/skills/global_legacy/go-playwright/resources/implementation-playbook.md +110 -0
  478. package/skills/global_legacy/golang-pro/SKILL.md +181 -0
  479. package/skills/global_legacy/google-sheets-automation/SKILL.md +149 -0
  480. package/skills/global_legacy/landing-page-generator/SKILL.md +213 -0
  481. package/skills/global_legacy/landing-page-generator/references/conversion-patterns.md +176 -0
  482. package/skills/global_legacy/landing-page-generator/references/frameworks.md +177 -0
  483. package/skills/global_legacy/landing-page-generator/references/landing-page-patterns.md +98 -0
  484. package/skills/global_legacy/landing-page-generator/references/seo-checklist.md +109 -0
  485. package/skills/global_legacy/landing-page-generator/scripts/landing_page_scaffolder.py +568 -0
  486. package/skills/global_legacy/linear-claude-skill/SKILL.md +523 -0
  487. package/skills/global_legacy/llm-app-patterns/SKILL.md +768 -0
  488. package/skills/global_legacy/llm-application-dev-ai-assistant/SKILL.md +43 -0
  489. package/skills/global_legacy/llm-application-dev-ai-assistant/resources/implementation-playbook.md +1236 -0
  490. package/skills/global_legacy/llm-prompt-optimizer/SKILL.md +187 -0
  491. package/skills/global_legacy/llm-structured-output/SKILL.md +212 -0
  492. package/skills/global_legacy/local-llm-expert/SKILL.md +88 -0
  493. package/skills/global_legacy/microservices-patterns/SKILL.md +43 -0
  494. package/skills/global_legacy/microservices-patterns/resources/implementation-playbook.md +607 -0
  495. package/skills/global_legacy/modern-javascript-patterns/SKILL.md +43 -0
  496. package/skills/global_legacy/modern-javascript-patterns/resources/implementation-playbook.md +910 -0
  497. package/skills/global_legacy/monorepo-management/SKILL.md +43 -0
  498. package/skills/global_legacy/monorepo-management/resources/implementation-playbook.md +621 -0
  499. package/skills/global_legacy/n8n-code-javascript/SKILL.md +706 -0
  500. package/skills/global_legacy/n8n-code-python/SKILL.md +755 -0
  501. package/skills/global_legacy/n8n-expression-syntax/SKILL.md +528 -0
  502. package/skills/global_legacy/n8n-mcp-tools-expert/SKILL.md +654 -0
  503. package/skills/global_legacy/n8n-workflow-patterns/SKILL.md +423 -0
  504. package/skills/global_legacy/neon-postgres/SKILL.md +619 -0
  505. package/skills/global_legacy/nextjs-app-router-patterns/SKILL.md +41 -0
  506. package/skills/global_legacy/nextjs-app-router-patterns/resources/implementation-playbook.md +543 -0
  507. package/skills/global_legacy/nextjs-best-practices/SKILL.md +213 -0
  508. package/skills/global_legacy/notion-automation/SKILL.md +224 -0
  509. package/skills/global_legacy/obsidian-markdown/SKILL.md +209 -0
  510. package/skills/global_legacy/obsidian-markdown/references/CALLOUTS.md +58 -0
  511. package/skills/global_legacy/obsidian-markdown/references/EMBEDS.md +63 -0
  512. package/skills/global_legacy/obsidian-markdown/references/PROPERTIES.md +61 -0
  513. package/skills/global_legacy/openapi-spec-generation/SKILL.md +41 -0
  514. package/skills/global_legacy/openapi-spec-generation/resources/implementation-playbook.md +1027 -0
  515. package/skills/global_legacy/os-scripting/SKILL.md +433 -0
  516. package/skills/global_legacy/planning-with-files/SKILL.md +189 -0
  517. package/skills/global_legacy/planning-with-files/examples.md +202 -0
  518. package/skills/global_legacy/planning-with-files/reference.md +218 -0
  519. package/skills/global_legacy/planning-with-files/scripts/check-complete.sh +44 -0
  520. package/skills/global_legacy/planning-with-files/scripts/init-session.sh +120 -0
  521. package/skills/global_legacy/planning-with-files/templates/findings.md +95 -0
  522. package/skills/global_legacy/planning-with-files/templates/progress.md +114 -0
  523. package/skills/global_legacy/planning-with-files/templates/task_plan.md +132 -0
  524. package/skills/global_legacy/playwright-skill/API_REFERENCE.md +653 -0
  525. package/skills/global_legacy/playwright-skill/SKILL.md +469 -0
  526. package/skills/global_legacy/playwright-skill/lib/helpers.js +441 -0
  527. package/skills/global_legacy/playwright-skill/package.json +26 -0
  528. package/skills/global_legacy/playwright-skill/run.js +228 -0
  529. package/skills/global_legacy/posix-shell-pro/SKILL.md +308 -0
  530. package/skills/global_legacy/postgres-best-practices/AGENTS.md +1490 -0
  531. package/skills/global_legacy/postgres-best-practices/README.md +119 -0
  532. package/skills/global_legacy/postgres-best-practices/SKILL.md +63 -0
  533. package/skills/global_legacy/postgres-best-practices/metadata.json +13 -0
  534. package/skills/global_legacy/postgres-best-practices/rules/_contributing.md +171 -0
  535. package/skills/global_legacy/postgres-best-practices/rules/_sections.md +39 -0
  536. package/skills/global_legacy/postgres-best-practices/rules/_template.md +34 -0
  537. package/skills/global_legacy/postgres-best-practices/rules/advanced-full-text-search.md +55 -0
  538. package/skills/global_legacy/postgres-best-practices/rules/advanced-jsonb-indexing.md +49 -0
  539. package/skills/global_legacy/postgres-best-practices/rules/conn-idle-timeout.md +46 -0
  540. package/skills/global_legacy/postgres-best-practices/rules/conn-limits.md +44 -0
  541. package/skills/global_legacy/postgres-best-practices/rules/conn-pooling.md +41 -0
  542. package/skills/global_legacy/postgres-best-practices/rules/conn-prepared-statements.md +46 -0
  543. package/skills/global_legacy/postgres-best-practices/rules/data-batch-inserts.md +54 -0
  544. package/skills/global_legacy/postgres-best-practices/rules/data-n-plus-one.md +53 -0
  545. package/skills/global_legacy/postgres-best-practices/rules/data-pagination.md +50 -0
  546. package/skills/global_legacy/postgres-best-practices/rules/data-upsert.md +50 -0
  547. package/skills/global_legacy/postgres-best-practices/rules/lock-advisory.md +56 -0
  548. package/skills/global_legacy/postgres-best-practices/rules/lock-deadlock-prevention.md +68 -0
  549. package/skills/global_legacy/postgres-best-practices/rules/lock-short-transactions.md +50 -0
  550. package/skills/global_legacy/postgres-best-practices/rules/lock-skip-locked.md +54 -0
  551. package/skills/global_legacy/postgres-best-practices/rules/monitor-explain-analyze.md +45 -0
  552. package/skills/global_legacy/postgres-best-practices/rules/monitor-pg-stat-statements.md +55 -0
  553. package/skills/global_legacy/postgres-best-practices/rules/monitor-vacuum-analyze.md +55 -0
  554. package/skills/global_legacy/postgres-best-practices/rules/query-composite-indexes.md +44 -0
  555. package/skills/global_legacy/postgres-best-practices/rules/query-covering-indexes.md +40 -0
  556. package/skills/global_legacy/postgres-best-practices/rules/query-index-types.md +45 -0
  557. package/skills/global_legacy/postgres-best-practices/rules/query-missing-indexes.md +43 -0
  558. package/skills/global_legacy/postgres-best-practices/rules/query-partial-indexes.md +45 -0
  559. package/skills/global_legacy/postgres-best-practices/rules/schema-data-types.md +46 -0
  560. package/skills/global_legacy/postgres-best-practices/rules/schema-foreign-key-indexes.md +59 -0
  561. package/skills/global_legacy/postgres-best-practices/rules/schema-lowercase-identifiers.md +55 -0
  562. package/skills/global_legacy/postgres-best-practices/rules/schema-partitioning.md +55 -0
  563. package/skills/global_legacy/postgres-best-practices/rules/schema-primary-keys.md +61 -0
  564. package/skills/global_legacy/postgres-best-practices/rules/security-privileges.md +54 -0
  565. package/skills/global_legacy/postgres-best-practices/rules/security-rls-basics.md +50 -0
  566. package/skills/global_legacy/postgres-best-practices/rules/security-rls-performance.md +57 -0
  567. package/skills/global_legacy/postgresql/SKILL.md +233 -0
  568. package/skills/global_legacy/prisma-expert/SKILL.md +366 -0
  569. package/skills/global_legacy/product-manager-toolkit/SKILL.md +362 -0
  570. package/skills/global_legacy/product-manager-toolkit/references/prd_templates.md +317 -0
  571. package/skills/global_legacy/product-manager-toolkit/scripts/customer_interview_analyzer.py +441 -0
  572. package/skills/global_legacy/product-manager-toolkit/scripts/rice_prioritizer.py +296 -0
  573. package/skills/global_legacy/programmatic-seo/SKILL.md +356 -0
  574. package/skills/global_legacy/prompt-engineer/README.md +659 -0
  575. package/skills/global_legacy/prompt-engineer/SKILL.md +281 -0
  576. package/skills/global_legacy/prompt-engineering-patterns/SKILL.md +221 -0
  577. package/skills/global_legacy/prompt-engineering-patterns/assets/few-shot-examples.json +106 -0
  578. package/skills/global_legacy/prompt-engineering-patterns/assets/prompt-template-library.md +246 -0
  579. package/skills/global_legacy/prompt-engineering-patterns/references/chain-of-thought.md +399 -0
  580. package/skills/global_legacy/prompt-engineering-patterns/references/few-shot-learning.md +369 -0
  581. package/skills/global_legacy/prompt-engineering-patterns/references/prompt-optimization.md +414 -0
  582. package/skills/global_legacy/prompt-engineering-patterns/references/prompt-templates.md +470 -0
  583. package/skills/global_legacy/prompt-engineering-patterns/references/system-prompts.md +189 -0
  584. package/skills/global_legacy/prompt-engineering-patterns/scripts/optimize-prompt.py +279 -0
  585. package/skills/global_legacy/python-patterns/SKILL.md +451 -0
  586. package/skills/global_legacy/python-performance-optimization/SKILL.md +44 -0
  587. package/skills/global_legacy/python-performance-optimization/resources/implementation-playbook.md +868 -0
  588. package/skills/global_legacy/python-pro/SKILL.md +161 -0
  589. package/skills/global_legacy/rag-engineer/SKILL.md +341 -0
  590. package/skills/global_legacy/rag-implementation/SKILL.md +201 -0
  591. package/skills/global_legacy/react-best-practices/AGENTS.md +2249 -0
  592. package/skills/global_legacy/react-best-practices/README.md +123 -0
  593. package/skills/global_legacy/react-best-practices/SKILL.md +131 -0
  594. package/skills/global_legacy/react-best-practices/metadata.json +15 -0
  595. package/skills/global_legacy/react-best-practices/rules/_sections.md +46 -0
  596. package/skills/global_legacy/react-best-practices/rules/_template.md +28 -0
  597. package/skills/global_legacy/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  598. package/skills/global_legacy/react-best-practices/rules/advanced-use-latest.md +49 -0
  599. package/skills/global_legacy/react-best-practices/rules/async-api-routes.md +38 -0
  600. package/skills/global_legacy/react-best-practices/rules/async-defer-await.md +80 -0
  601. package/skills/global_legacy/react-best-practices/rules/async-dependencies.md +36 -0
  602. package/skills/global_legacy/react-best-practices/rules/async-parallel.md +28 -0
  603. package/skills/global_legacy/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  604. package/skills/global_legacy/react-best-practices/rules/bundle-barrel-imports.md +59 -0
  605. package/skills/global_legacy/react-best-practices/rules/bundle-conditional.md +31 -0
  606. package/skills/global_legacy/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  607. package/skills/global_legacy/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  608. package/skills/global_legacy/react-best-practices/rules/bundle-preload.md +50 -0
  609. package/skills/global_legacy/react-best-practices/rules/client-event-listeners.md +74 -0
  610. package/skills/global_legacy/react-best-practices/rules/client-swr-dedup.md +56 -0
  611. package/skills/global_legacy/react-best-practices/rules/js-batch-dom-css.md +82 -0
  612. package/skills/global_legacy/react-best-practices/rules/js-cache-function-results.md +80 -0
  613. package/skills/global_legacy/react-best-practices/rules/js-cache-property-access.md +28 -0
  614. package/skills/global_legacy/react-best-practices/rules/js-cache-storage.md +70 -0
  615. package/skills/global_legacy/react-best-practices/rules/js-combine-iterations.md +32 -0
  616. package/skills/global_legacy/react-best-practices/rules/js-early-exit.md +50 -0
  617. package/skills/global_legacy/react-best-practices/rules/js-hoist-regexp.md +45 -0
  618. package/skills/global_legacy/react-best-practices/rules/js-index-maps.md +37 -0
  619. package/skills/global_legacy/react-best-practices/rules/js-length-check-first.md +49 -0
  620. package/skills/global_legacy/react-best-practices/rules/js-min-max-loop.md +82 -0
  621. package/skills/global_legacy/react-best-practices/rules/js-set-map-lookups.md +24 -0
  622. package/skills/global_legacy/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  623. package/skills/global_legacy/react-best-practices/rules/rendering-activity.md +26 -0
  624. package/skills/global_legacy/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  625. package/skills/global_legacy/react-best-practices/rules/rendering-conditional-render.md +40 -0
  626. package/skills/global_legacy/react-best-practices/rules/rendering-content-visibility.md +38 -0
  627. package/skills/global_legacy/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  628. package/skills/global_legacy/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  629. package/skills/global_legacy/react-best-practices/rules/rendering-svg-precision.md +28 -0
  630. package/skills/global_legacy/react-best-practices/rules/rerender-defer-reads.md +39 -0
  631. package/skills/global_legacy/react-best-practices/rules/rerender-dependencies.md +45 -0
  632. package/skills/global_legacy/react-best-practices/rules/rerender-derived-state.md +29 -0
  633. package/skills/global_legacy/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  634. package/skills/global_legacy/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  635. package/skills/global_legacy/react-best-practices/rules/rerender-memo.md +44 -0
  636. package/skills/global_legacy/react-best-practices/rules/rerender-transitions.md +40 -0
  637. package/skills/global_legacy/react-best-practices/rules/server-after-nonblocking.md +73 -0
  638. package/skills/global_legacy/react-best-practices/rules/server-cache-lru.md +41 -0
  639. package/skills/global_legacy/react-best-practices/rules/server-cache-react.md +26 -0
  640. package/skills/global_legacy/react-best-practices/rules/server-parallel-fetching.md +79 -0
  641. package/skills/global_legacy/react-best-practices/rules/server-serialization.md +38 -0
  642. package/skills/global_legacy/react-component-performance/SKILL.md +139 -0
  643. package/skills/global_legacy/react-component-performance/agents/openai.yaml +4 -0
  644. package/skills/global_legacy/react-component-performance/references/examples.md +88 -0
  645. package/skills/global_legacy/react-patterns/SKILL.md +216 -0
  646. package/skills/global_legacy/readme/SKILL.md +848 -0
  647. package/skills/global_legacy/remotion/SKILL.md +404 -0
  648. package/skills/global_legacy/schema-markup/SKILL.md +363 -0
  649. package/skills/global_legacy/senior-frontend/SKILL.md +495 -0
  650. package/skills/global_legacy/senior-frontend/references/frontend_best_practices.md +806 -0
  651. package/skills/global_legacy/senior-frontend/references/nextjs_optimization_guide.md +724 -0
  652. package/skills/global_legacy/senior-frontend/references/react_patterns.md +746 -0
  653. package/skills/global_legacy/senior-frontend/scripts/bundle_analyzer.py +407 -0
  654. package/skills/global_legacy/senior-frontend/scripts/component_generator.py +329 -0
  655. package/skills/global_legacy/senior-frontend/scripts/frontend_scaffolder.py +1005 -0
  656. package/skills/global_legacy/senior-fullstack/SKILL.md +220 -0
  657. package/skills/global_legacy/senior-fullstack/references/architecture_patterns.md +103 -0
  658. package/skills/global_legacy/senior-fullstack/references/development_workflows.md +103 -0
  659. package/skills/global_legacy/senior-fullstack/references/tech_stack_guide.md +103 -0
  660. package/skills/global_legacy/senior-fullstack/scripts/code_quality_analyzer.py +114 -0
  661. package/skills/global_legacy/senior-fullstack/scripts/fullstack_scaffolder.py +114 -0
  662. package/skills/global_legacy/senior-fullstack/scripts/project_scaffolder.py +114 -0
  663. package/skills/global_legacy/seo/SKILL.md +143 -0
  664. package/skills/global_legacy/seo/references/cwv-thresholds.md +108 -0
  665. package/skills/global_legacy/seo/references/eeat-framework.md +214 -0
  666. package/skills/global_legacy/seo/references/quality-gates.md +155 -0
  667. package/skills/global_legacy/seo/references/schema-types.md +118 -0
  668. package/skills/global_legacy/seo-audit/SKILL.md +492 -0
  669. package/skills/global_legacy/seo-technical/SKILL.md +179 -0
  670. package/skills/global_legacy/shadcn/SKILL.md +254 -0
  671. package/skills/global_legacy/shadcn/agents/openai.yml +5 -0
  672. package/skills/global_legacy/shadcn/assets/shadcn-small.png +0 -0
  673. package/skills/global_legacy/shadcn/assets/shadcn.png +0 -0
  674. package/skills/global_legacy/shadcn/cli.md +255 -0
  675. package/skills/global_legacy/shadcn/customization.md +202 -0
  676. package/skills/global_legacy/shadcn/evals/evals.json +47 -0
  677. package/skills/global_legacy/shadcn/mcp.md +94 -0
  678. package/skills/global_legacy/shadcn/rules/base-vs-radix.md +306 -0
  679. package/skills/global_legacy/shadcn/rules/composition.md +195 -0
  680. package/skills/global_legacy/shadcn/rules/forms.md +192 -0
  681. package/skills/global_legacy/shadcn/rules/icons.md +101 -0
  682. package/skills/global_legacy/shadcn/rules/styling.md +162 -0
  683. package/skills/global_legacy/simplify-code/SKILL.md +183 -0
  684. package/skills/global_legacy/slack-automation/SKILL.md +197 -0
  685. package/skills/global_legacy/software-architecture/SKILL.md +86 -0
  686. package/skills/global_legacy/spline-3d-integration/SKILL.md +90 -0
  687. package/skills/global_legacy/spline-3d-integration/examples/interactive-scene.tsx +198 -0
  688. package/skills/global_legacy/spline-3d-integration/examples/react-spline-wrapper.tsx +124 -0
  689. package/skills/global_legacy/spline-3d-integration/examples/vanilla-embed.html +146 -0
  690. package/skills/global_legacy/spline-3d-integration/guides/COMMON_PROBLEMS.md +262 -0
  691. package/skills/global_legacy/spline-3d-integration/guides/PERFORMANCE.md +163 -0
  692. package/skills/global_legacy/spline-3d-integration/guides/REACT_INTEGRATION.md +212 -0
  693. package/skills/global_legacy/spline-3d-integration/guides/VANILLA_INTEGRATION.md +203 -0
  694. package/skills/global_legacy/subagent-driven-development/SKILL.md +247 -0
  695. package/skills/global_legacy/subagent-driven-development/code-quality-reviewer-prompt.md +20 -0
  696. package/skills/global_legacy/subagent-driven-development/implementer-prompt.md +78 -0
  697. package/skills/global_legacy/subagent-driven-development/spec-reviewer-prompt.md +61 -0
  698. package/skills/global_legacy/systematic-debugging/CREATION-LOG.md +119 -0
  699. package/skills/global_legacy/systematic-debugging/SKILL.md +303 -0
  700. package/skills/global_legacy/systematic-debugging/condition-based-waiting-example.ts +158 -0
  701. package/skills/global_legacy/systematic-debugging/condition-based-waiting.md +115 -0
  702. package/skills/global_legacy/systematic-debugging/defense-in-depth.md +122 -0
  703. package/skills/global_legacy/systematic-debugging/find-polluter.sh +63 -0
  704. package/skills/global_legacy/systematic-debugging/root-cause-tracing.md +169 -0
  705. package/skills/global_legacy/systematic-debugging/test-academic.md +14 -0
  706. package/skills/global_legacy/systematic-debugging/test-pressure-1.md +58 -0
  707. package/skills/global_legacy/systematic-debugging/test-pressure-2.md +68 -0
  708. package/skills/global_legacy/systematic-debugging/test-pressure-3.md +69 -0
  709. package/skills/global_legacy/tailwind-patterns/SKILL.md +279 -0
  710. package/skills/global_legacy/tanstack-query-expert/SKILL.md +247 -0
  711. package/skills/global_legacy/tdd-workflow/SKILL.md +159 -0
  712. package/skills/global_legacy/test-driven-development/SKILL.md +378 -0
  713. package/skills/global_legacy/test-driven-development/testing-anti-patterns.md +299 -0
  714. package/skills/global_legacy/threejs-skills/SKILL.md +720 -0
  715. package/skills/global_legacy/tmux/SKILL.md +375 -0
  716. package/skills/global_legacy/turborepo-caching/SKILL.md +427 -0
  717. package/skills/global_legacy/typescript-pro/SKILL.md +58 -0
  718. package/skills/global_legacy/ui-component/SKILL.md +104 -0
  719. package/skills/global_legacy/ui-page/SKILL.md +100 -0
  720. package/skills/global_legacy/ui-pattern/SKILL.md +92 -0
  721. package/skills/global_legacy/ui-review/SKILL.md +90 -0
  722. package/skills/global_legacy/ui-tokens/SKILL.md +73 -0
  723. package/skills/global_legacy/ui-ux-pro-max/SKILL.md +361 -0
  724. package/skills/global_legacy/ui-ux-pro-max/data/charts.csv +26 -0
  725. package/skills/global_legacy/ui-ux-pro-max/data/colors.csv +97 -0
  726. package/skills/global_legacy/ui-ux-pro-max/data/icons.csv +101 -0
  727. package/skills/global_legacy/ui-ux-pro-max/data/landing.csv +31 -0
  728. package/skills/global_legacy/ui-ux-pro-max/data/products.csv +97 -0
  729. package/skills/global_legacy/ui-ux-pro-max/data/prompts.csv +24 -0
  730. package/skills/global_legacy/ui-ux-pro-max/data/react-performance.csv +45 -0
  731. package/skills/global_legacy/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  732. package/skills/global_legacy/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  733. package/skills/global_legacy/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  734. package/skills/global_legacy/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  735. package/skills/global_legacy/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  736. package/skills/global_legacy/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  737. package/skills/global_legacy/ui-ux-pro-max/data/stacks/react.csv +54 -0
  738. package/skills/global_legacy/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  739. package/skills/global_legacy/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  740. package/skills/global_legacy/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  741. package/skills/global_legacy/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  742. package/skills/global_legacy/ui-ux-pro-max/data/styles.csv +59 -0
  743. package/skills/global_legacy/ui-ux-pro-max/data/typography.csv +58 -0
  744. package/skills/global_legacy/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  745. package/skills/global_legacy/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  746. package/skills/global_legacy/ui-ux-pro-max/data/web-interface.csv +31 -0
  747. package/skills/global_legacy/ui-ux-pro-max/scripts/core.py +257 -0
  748. package/skills/global_legacy/ui-ux-pro-max/scripts/design_system.py +487 -0
  749. package/skills/global_legacy/ui-ux-pro-max/scripts/search.py +76 -0
  750. package/skills/global_legacy/using-neon/SKILL.md +90 -0
  751. package/skills/global_legacy/ux-audit/SKILL.md +66 -0
  752. package/skills/global_legacy/ux-feedback/SKILL.md +68 -0
  753. package/skills/global_legacy/ux-flow/SKILL.md +72 -0
  754. package/skills/global_legacy/ux-persuasion-engineer/SKILL.md +119 -0
  755. package/skills/global_legacy/vector-database-engineer/SKILL.md +68 -0
  756. package/skills/global_legacy/vercel-ai-sdk-expert/SKILL.md +227 -0
  757. package/skills/global_legacy/vercel-deployment/SKILL.md +682 -0
  758. package/skills/global_legacy/wcag-audit-patterns/SKILL.md +49 -0
  759. package/skills/global_legacy/wcag-audit-patterns/resources/implementation-playbook.md +541 -0
  760. package/skills/global_legacy/web-artifacts-builder/LICENSE.txt +202 -0
  761. package/skills/global_legacy/web-artifacts-builder/SKILL.md +84 -0
  762. package/skills/global_legacy/web-artifacts-builder/scripts/bundle-artifact.sh +54 -0
  763. package/skills/global_legacy/web-artifacts-builder/scripts/init-artifact.sh +322 -0
  764. package/skills/global_legacy/web-artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  765. package/skills/global_legacy/web-performance-optimization/SKILL.md +654 -0
  766. package/skills/global_legacy/web-scraper/SKILL.md +757 -0
  767. package/skills/global_legacy/web-scraper/references/data-transforms.md +397 -0
  768. package/skills/global_legacy/web-scraper/references/extraction-patterns.md +475 -0
  769. package/skills/global_legacy/web-scraper/references/output-templates.md +481 -0
  770. package/skills/global_legacy/webapp-testing/LICENSE.txt +202 -0
  771. package/skills/global_legacy/webapp-testing/SKILL.md +106 -0
  772. package/skills/global_legacy/webapp-testing/scripts/with_server.py +106 -0
  773. package/skills/global_legacy/writing-plans/SKILL.md +127 -0
  774. package/skills/global_legacy/zustand-store-ts/SKILL.md +79 -0
  775. package/skills/workspace_agents/firecrawl/SKILL.md +148 -0
  776. package/skills/workspace_agents/firecrawl/rules/install.md +82 -0
  777. package/skills/workspace_agents/firecrawl/rules/security.md +26 -0
  778. package/skills/workspace_agents/firecrawl-agent/SKILL.md +57 -0
  779. package/skills/workspace_agents/firecrawl-build/SKILL.md +38 -0
  780. package/skills/workspace_agents/firecrawl-build-interact/SKILL.md +67 -0
  781. package/skills/workspace_agents/firecrawl-build-onboarding/SKILL.md +102 -0
  782. package/skills/workspace_agents/firecrawl-build-onboarding/references/auth-flow.md +39 -0
  783. package/skills/workspace_agents/firecrawl-build-onboarding/references/project-setup.md +20 -0
  784. package/skills/workspace_agents/firecrawl-build-onboarding/references/sdk-installation.md +17 -0
  785. package/skills/workspace_agents/firecrawl-build-scrape/SKILL.md +68 -0
  786. package/skills/workspace_agents/firecrawl-build-search/SKILL.md +68 -0
  787. package/skills/workspace_agents/firecrawl-crawl/SKILL.md +58 -0
  788. package/skills/workspace_agents/firecrawl-download/SKILL.md +69 -0
  789. package/skills/workspace_agents/firecrawl-interact/SKILL.md +83 -0
  790. package/skills/workspace_agents/firecrawl-map/SKILL.md +50 -0
  791. package/skills/workspace_agents/firecrawl-scrape/SKILL.md +68 -0
  792. package/skills/workspace_agents/firecrawl-search/SKILL.md +59 -0
@@ -0,0 +1,475 @@
1
+ # Extraction Patterns Reference
2
+
3
+ CSS selectors, JavaScript snippets, and domain-specific tips for
4
+ common web scraping scenarios.
5
+
6
+ ---
7
+
8
+ ## CSS Selector Patterns
9
+
10
+ ### Tables
11
+
12
+ ```css
13
+ /* Standard HTML tables */
14
+ table /* All tables */
15
+ table.data-table /* Class-based */
16
+ table[id*="result"] /* ID contains "result" */
17
+ table thead th /* Header cells */
18
+ table tbody tr /* Data rows */
19
+ table tbody tr td /* Data cells */
20
+ table tbody tr td:nth-child(2) /* Specific column (2nd) */
21
+
22
+ /* Grid layouts acting as tables */
23
+ [role="table"] /* ARIA table role */
24
+ [role="row"] /* ARIA row */
25
+ [role="gridcell"] /* ARIA grid cell */
26
+ .table-responsive table /* Bootstrap responsive wrapper */
27
+ ```
28
+
29
+ ### Product Listings
30
+
31
+ ```css
32
+ /* E-commerce product grids */
33
+ .product-card, .product-item, .product-tile
34
+ [data-product-id] /* Data attribute markers */
35
+ .product-name, .product-title, h2.title
36
+ .price, .product-price, [data-price]
37
+ .price--sale, .price--original /* Sale vs original price */
38
+ .rating, .stars, [data-rating]
39
+ .availability, .stock-status
40
+ .product-image img, .product-thumb img
41
+
42
+ /* Common e-commerce patterns */
43
+ .search-results .result-item
44
+ .catalog-grid .catalog-item
45
+ .listing .listing-item
46
+ ```
47
+
48
+ ### Search Results
49
+
50
+ ```css
51
+ /* Generic search result patterns */
52
+ .search-result, .result-item, .search-entry
53
+ .result-title a, .result-link
54
+ .result-snippet, .result-description
55
+ .result-url, .result-source
56
+ .result-date, .result-timestamp
57
+ .pagination a, .page-numbers a, [aria-label="Next"]
58
+ ```
59
+
60
+ ### Contact / Directory
61
+
62
+ ```css
63
+ /* People and contact cards */
64
+ .team-member, .staff-card, .person, .contact-card
65
+ .member-name, .person-name, h3.name
66
+ .member-title, .job-title, .role
67
+ .member-email a[href^="mailto:"]
68
+ .member-phone a[href^="tel:"]
69
+ .member-bio, .person-description
70
+ .vcard /* hCard microformat */
71
+ ```
72
+
73
+ ### FAQ / Accordion
74
+
75
+ ```css
76
+ /* FAQ and accordion patterns */
77
+ .faq-item, .accordion-item, [itemtype*="FAQPage"] [itemprop="mainEntity"]
78
+ .faq-question, .accordion-header, [itemprop="name"], summary
79
+ .faq-answer, .accordion-body, .accordion-content, [itemprop="acceptedAnswer"]
80
+ details, details > summary /* Native HTML accordion */
81
+ [role="tabpanel"] /* Tab-based FAQ */
82
+ ```
83
+
84
+ ### Pricing Tables
85
+
86
+ ```css
87
+ /* SaaS pricing page patterns */
88
+ .pricing-table, .pricing-card, .plan-card, .pricing-tier
89
+ .plan-name, .tier-name, .pricing-title
90
+ .plan-price, .pricing-amount, .price-value
91
+ .plan-period, .billing-cycle /* monthly/annually */
92
+ .plan-features li, .feature-list li
93
+ .plan-cta, .pricing-button
94
+ [class*="popular"], [class*="recommended"], [class*="featured"] /* highlighted plan */
95
+ ```
96
+
97
+ ### Job Listings
98
+
99
+ ```css
100
+ /* Job board patterns */
101
+ .job-listing, .job-card, .job-posting, [itemtype*="JobPosting"]
102
+ .job-title, [itemprop="title"]
103
+ .company-name, [itemprop="hiringOrganization"]
104
+ .job-location, [itemprop="jobLocation"]
105
+ .job-salary, [itemprop="baseSalary"]
106
+ .job-type, .employment-type
107
+ .job-date, [itemprop="datePosted"]
108
+ ```
109
+
110
+ ### Events
111
+
112
+ ```css
113
+ /* Event listing patterns */
114
+ .event-card, .event-item, [itemtype*="Event"]
115
+ .event-title, [itemprop="name"]
116
+ .event-date, [itemprop="startDate"], time[datetime]
117
+ .event-location, [itemprop="location"]
118
+ .event-description, [itemprop="description"]
119
+ .event-speaker, .speaker-name
120
+ ```
121
+
122
+ ### Navigation / Pagination
123
+
124
+ ```css
125
+ /* Pagination controls */
126
+ .pagination, .pager, nav[aria-label*="pagination"]
127
+ .pagination .next, a[rel="next"]
128
+ .pagination .prev, a[rel="prev"]
129
+ .page-numbers, .page-link
130
+ button[data-page], a[data-page]
131
+ .load-more, button.show-more
132
+ ```
133
+
134
+ ### Articles / Blog Posts
135
+
136
+ ```css
137
+ /* Article content */
138
+ article, .post, .entry, .article-content
139
+ article h1, .post-title, .entry-title
140
+ .author, .byline, [rel="author"]
141
+ time, .date, .published, .post-date
142
+ .post-content, .entry-content, .article-body
143
+ .tags a, .categories a, .post-tags a
144
+ ```
145
+
146
+ ---
147
+
148
+ ## JavaScript Extraction Snippets
149
+
150
+ ### Generic Table Extractor
151
+
152
+ ```javascript
153
+ function extractTable(selector) {
154
+ const table = document.querySelector(selector || 'table');
155
+ if (!table) return { error: 'No table found' };
156
+
157
+ const headers = Array.from(
158
+ table.querySelectorAll('thead th, tr:first-child th, tr:first-child td')
159
+ ).map(el => el.textContent.trim());
160
+
161
+ const rows = Array.from(table.querySelectorAll('tbody tr, tr:not(:first-child)'))
162
+ .map(tr => {
163
+ const cells = Array.from(tr.querySelectorAll('td'))
164
+ .map(td => td.textContent.trim());
165
+ return cells.length > 0 ? cells : null;
166
+ })
167
+ .filter(Boolean);
168
+
169
+ return { headers, rows, rowCount: rows.length };
170
+ }
171
+ JSON.stringify(extractTable());
172
+ ```
173
+
174
+ ### Multi-Table Extractor
175
+
176
+ ```javascript
177
+ function extractAllTables() {
178
+ const tables = document.querySelectorAll('table');
179
+ return Array.from(tables).map((table, idx) => {
180
+ const caption = table.querySelector('caption')?.textContent?.trim()
181
+ || table.getAttribute('aria-label') || `Table ${idx + 1}`;
182
+ const headers = Array.from(
183
+ table.querySelectorAll('thead th, tr:first-child th')
184
+ ).map(el => el.textContent.trim());
185
+ const rows = Array.from(table.querySelectorAll('tbody tr'))
186
+ .map(tr => Array.from(tr.querySelectorAll('td')).map(td => td.textContent.trim()))
187
+ .filter(r => r.length > 0);
188
+ return { caption, headers, rows, rowCount: rows.length };
189
+ });
190
+ }
191
+ JSON.stringify(extractAllTables());
192
+ ```
193
+
194
+ ### Generic List Extractor
195
+
196
+ ```javascript
197
+ function extractList(containerSelector, itemSelector, fieldMap) {
198
+ // fieldMap: { fieldName: { selector: 'CSS', attr: 'href'|'src'|null } }
199
+ const container = document.querySelector(containerSelector);
200
+ if (!container) return { error: 'Container not found' };
201
+
202
+ const items = Array.from(container.querySelectorAll(itemSelector));
203
+ const data = items.map(item => {
204
+ const record = {};
205
+ for (const [key, config] of Object.entries(fieldMap)) {
206
+ const sel = typeof config === 'string' ? config : config.selector;
207
+ const attr = typeof config === 'object' ? config.attr : null;
208
+ const el = item.querySelector(sel);
209
+ if (!el) { record[key] = null; continue; }
210
+ record[key] = attr ? el.getAttribute(attr) : el.textContent.trim();
211
+ }
212
+ return record;
213
+ });
214
+ return { data, itemCount: data.length };
215
+ }
216
+
217
+ // Example usage:
218
+ JSON.stringify(extractList('.results', '.result-item', {
219
+ title: '.result-title',
220
+ description: '.result-snippet',
221
+ url: { selector: '.result-title a', attr: 'href' },
222
+ date: '.result-date'
223
+ }));
224
+ ```
225
+
226
+ ### JSON-LD Structured Data Extractor
227
+
228
+ Many pages embed structured data that's easier to parse than DOM:
229
+
230
+ ```javascript
231
+ function extractJsonLd(targetType) {
232
+ const scripts = document.querySelectorAll('script[type="application/ld+json"]');
233
+ const allData = Array.from(scripts).map(s => {
234
+ try { return JSON.parse(s.textContent); } catch { return null; }
235
+ }).filter(Boolean);
236
+
237
+ // Flatten @graph arrays
238
+ const flat = allData.flatMap(d => d['@graph'] || [d]);
239
+
240
+ if (targetType) {
241
+ return flat.filter(d =>
242
+ d['@type'] === targetType ||
243
+ (Array.isArray(d['@type']) && d['@type'].includes(targetType))
244
+ );
245
+ }
246
+ return flat;
247
+ }
248
+ // Extract products: extractJsonLd('Product')
249
+ // Extract articles: extractJsonLd('Article')
250
+ // Extract all: extractJsonLd()
251
+ JSON.stringify(extractJsonLd());
252
+ ```
253
+
254
+ Common JSON-LD types and their useful fields:
255
+ - `Product`: name, offers.price, offers.priceCurrency, aggregateRating, brand.name
256
+ - `Article`: headline, author.name, datePublished, description, wordCount
257
+ - `Organization`: name, address, telephone, email, url
258
+ - `BreadcrumbList`: itemListElement[].name (navigation path)
259
+ - `FAQPage`: mainEntity[].name (question), mainEntity[].acceptedAnswer.text
260
+ - `JobPosting`: title, hiringOrganization.name, jobLocation, baseSalary
261
+ - `Event`: name, startDate, endDate, location, performer
262
+
263
+ ### OpenGraph / Meta Tag Extractor
264
+
265
+ ```javascript
266
+ function extractMeta() {
267
+ const meta = {};
268
+ document.querySelectorAll('meta[property^="og:"], meta[name^="twitter:"]')
269
+ .forEach(el => {
270
+ const key = el.getAttribute('property') || el.getAttribute('name');
271
+ meta[key] = el.getAttribute('content');
272
+ });
273
+ meta.title = document.title;
274
+ meta.description = document.querySelector('meta[name="description"]')
275
+ ?.getAttribute('content');
276
+ meta.canonical = document.querySelector('link[rel="canonical"]')
277
+ ?.getAttribute('href');
278
+ return meta;
279
+ }
280
+ JSON.stringify(extractMeta());
281
+ ```
282
+
283
+ ### Pricing Plan Extractor
284
+
285
+ ```javascript
286
+ function extractPricingPlans() {
287
+ const cards = document.querySelectorAll(
288
+ '.pricing-card, .plan-card, .pricing-tier, [class*="pricing"] [class*="card"]'
289
+ );
290
+ return Array.from(cards).map(card => ({
291
+ name: card.querySelector('[class*="name"], [class*="title"], h2, h3')
292
+ ?.textContent?.trim() || null,
293
+ price: card.querySelector('[class*="price"], [class*="amount"]')
294
+ ?.textContent?.trim() || null,
295
+ period: card.querySelector('[class*="period"], [class*="billing"]')
296
+ ?.textContent?.trim() || null,
297
+ features: Array.from(card.querySelectorAll('[class*="feature"] li, ul li'))
298
+ .map(li => li.textContent.trim()),
299
+ highlighted: card.matches('[class*="popular"], [class*="recommended"], [class*="featured"]'),
300
+ ctaText: card.querySelector('a, button')?.textContent?.trim() || null,
301
+ ctaUrl: card.querySelector('a')?.href || null,
302
+ }));
303
+ }
304
+ JSON.stringify(extractPricingPlans());
305
+ ```
306
+
307
+ ### FAQ Extractor
308
+
309
+ ```javascript
310
+ function extractFAQ() {
311
+ // Try JSON-LD first
312
+ const ldFaq = extractJsonLd('FAQPage');
313
+ if (ldFaq.length > 0 && ldFaq[0].mainEntity) {
314
+ return ldFaq[0].mainEntity.map(q => ({
315
+ question: q.name,
316
+ answer: q.acceptedAnswer?.text || null
317
+ }));
318
+ }
319
+
320
+ // Try <details>/<summary> pattern
321
+ const details = document.querySelectorAll('details');
322
+ if (details.length > 0) {
323
+ return Array.from(details).map(d => ({
324
+ question: d.querySelector('summary')?.textContent?.trim() || null,
325
+ answer: Array.from(d.children).filter(c => c.tagName !== 'SUMMARY')
326
+ .map(c => c.textContent.trim()).join(' ')
327
+ }));
328
+ }
329
+
330
+ // Try accordion pattern
331
+ const items = document.querySelectorAll(
332
+ '.faq-item, .accordion-item, [class*="faq"] [class*="item"]'
333
+ );
334
+ return Array.from(items).map(item => ({
335
+ question: item.querySelector(
336
+ '[class*="question"], [class*="header"], [class*="title"], h3, h4'
337
+ )?.textContent?.trim() || null,
338
+ answer: item.querySelector(
339
+ '[class*="answer"], [class*="body"], [class*="content"], p'
340
+ )?.textContent?.trim() || null
341
+ }));
342
+ }
343
+ JSON.stringify(extractFAQ());
344
+ ```
345
+
346
+ ### Link Extractor
347
+
348
+ ```javascript
349
+ function extractLinks(scope) {
350
+ const container = scope ? document.querySelector(scope) : document;
351
+ const links = Array.from(container.querySelectorAll('a[href]'))
352
+ .map(a => ({
353
+ text: a.textContent.trim(),
354
+ href: a.href,
355
+ title: a.title || null
356
+ }))
357
+ .filter(l => l.text && l.href && !l.href.startsWith('javascript:'));
358
+ return { links, count: links.length };
359
+ }
360
+ JSON.stringify(extractLinks());
361
+ ```
362
+
363
+ ### Image Extractor
364
+
365
+ ```javascript
366
+ function extractImages(scope) {
367
+ const container = scope ? document.querySelector(scope) : document;
368
+ const images = Array.from(container.querySelectorAll('img'))
369
+ .map(img => ({
370
+ src: img.src,
371
+ alt: img.alt || null,
372
+ width: img.naturalWidth,
373
+ height: img.naturalHeight
374
+ }))
375
+ .filter(i => i.src && !i.src.includes('data:image/gif'));
376
+ return { images, count: images.length };
377
+ }
378
+ JSON.stringify(extractImages());
379
+ ```
380
+
381
+ ### Scroll-and-Collect Pattern
382
+
383
+ For pages with lazy-loaded content, use this pattern with Browser automation:
384
+
385
+ ```javascript
386
+ // Count items before scroll
387
+ function countItems(selector) {
388
+ return document.querySelectorAll(selector).length;
389
+ }
390
+ ```
391
+
392
+ Then in the workflow:
393
+ 1. `javascript_tool`: `countItems('.item')` -> get initial count
394
+ 2. `computer(action="scroll", scroll_direction="down")`
395
+ 3. `computer(action="wait", duration=2)`
396
+ 4. `javascript_tool`: `countItems('.item')` -> get new count
397
+ 5. If new count > old count, repeat from step 2
398
+ 6. If count unchanged after 2 scrolls, all items loaded
399
+ 7. Extract all items at once
400
+
401
+ ---
402
+
403
+ ## Domain-Specific Tips
404
+
405
+ ### E-Commerce Sites
406
+ - Check for JSON-LD `Product` schema first - often has cleaner data than DOM
407
+ - Prices may have hidden original/sale price elements
408
+ - Availability often encoded in data attributes (`data-available="true"`)
409
+ - Product variants (size, color) may require click interactions
410
+ - Review data often loaded lazily - scroll to reviews section first
411
+ - Many sites have internal APIs at `/api/products` - check Network tab
412
+
413
+ ### Wikipedia
414
+ - Tables use class `.wikitable` - always prefer this selector
415
+ - Infoboxes use class `.infobox`
416
+ - References in `<sup class="reference">` - exclude from text extraction
417
+ - Table cells may contain complex nested HTML - use `.textContent.trim()`
418
+ - Sortable tables have class `.sortable` with sort buttons in headers
419
+
420
+ ### News Sites
421
+ - Article body often in `<article>` or `[itemprop="articleBody"]`
422
+ - Paywall indicators: `.paywall`, `.subscribe-wall`, truncated with "Read more"
423
+ - Publication date in `<time>` element or `[itemprop="datePublished"]`
424
+ - Author in `[itemprop="author"]` or `.byline`
425
+ - JSON-LD `NewsArticle` often has complete metadata
426
+
427
+ ### Government / Data Portals
428
+ - Often use HTML tables without JavaScript
429
+ - May have download links for CSV/Excel - check for `.csv`, `.xlsx` links
430
+ - Data dictionaries may be on separate pages
431
+ - Look for API endpoints in page source (`/api/`, `.json` links)
432
+ - CORS may block direct API access; use Bash curl instead
433
+
434
+ ### Social Media (Public Profiles)
435
+ - Content is almost always JS-rendered - use Browser automation
436
+ - Rate limiting is aggressive - keep requests minimal
437
+ - Infinite scroll is the norm - set clear item limits
438
+ - Structure changes frequently - prefer text extraction over selectors
439
+
440
+ ### SaaS Pricing Pages
441
+ - Pricing often changes dynamically (monthly vs annual toggle)
442
+ - May need to click "Annual" toggle to see annual prices
443
+ - Feature comparison tables often use checkmarks (Unicode or SVG)
444
+ - Check for hidden elements toggled by billing period selector
445
+
446
+ ### Job Boards
447
+ - Most use JSON-LD `JobPosting` schema
448
+ - Salary ranges often hidden behind "View salary" buttons
449
+ - Location may include remote/hybrid indicators
450
+ - Filters are URL-parameter based - useful for pagination
451
+
452
+ ---
453
+
454
+ ## Anti-Patterns to Avoid
455
+
456
+ | Anti-Pattern | Why It Fails | Better Approach |
457
+ |:-------------|:-------------|:----------------|
458
+ | Selectors with generated hashes (`.css-1a2b3c`) | Change on every deploy | Use semantic selectors, ARIA roles, data attributes |
459
+ | Deeply nested paths (`div > div > div > span`) | Fragile on layout changes | Use closest meaningful class or attribute |
460
+ | Index-based (`:nth-child(3)`) for dynamic lists | Order may change | Use content-based identification |
461
+ | Selecting by inline styles | Presentation, not semantics | Use classes, IDs, or data attributes |
462
+ | Hardcoded wait times for JS content | Too short or too long | Check for content presence in a loop |
463
+ | Single selector for variant pages | Different pages differ | Test selector on multiple pages first |
464
+
465
+ ## Robust Selector Priority
466
+
467
+ Prefer selectors in this order (most stable to least):
468
+
469
+ 1. `[data-testid="..."]`, `[data-id="..."]` - test/data attributes
470
+ 2. `#unique-id` - unique IDs
471
+ 3. `[role="..."]`, `[aria-label="..."]` - ARIA attributes
472
+ 4. `[itemprop="..."]`, `[itemtype="..."]` - microdata / schema.org
473
+ 5. `.semantic-class` - meaningful class names
474
+ 6. `tag.class` - element type + class
475
+ 7. Structural selectors - last resort