opencode-skills-collection 3.1.12 → 3.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (760) hide show
  1. package/bundled-skills/.antigravity-install-manifest.json +192 -1
  2. package/bundled-skills/ab-testing/SKILL.md +368 -0
  3. package/bundled-skills/ab-testing/evals/evals.json +105 -0
  4. package/bundled-skills/ab-testing/references/sample-size-guide.md +263 -0
  5. package/bundled-skills/ab-testing/references/test-templates.md +277 -0
  6. package/bundled-skills/accint-commitments/SKILL.md +32 -0
  7. package/bundled-skills/accint-frames/SKILL.md +35 -0
  8. package/bundled-skills/accint-solve/SKILL.md +22 -192
  9. package/bundled-skills/add-app-clip/SKILL.md +297 -0
  10. package/bundled-skills/add-app-clip/agents/openai.yaml +4 -0
  11. package/bundled-skills/add-app-clip/references/native-module.md +96 -0
  12. package/bundled-skills/agent-memory/SKILL.md +84 -0
  13. package/bundled-skills/alternatives-pages/README.md +46 -0
  14. package/bundled-skills/alternatives-pages/SKILL.md +376 -0
  15. package/bundled-skills/analytics/SKILL.md +324 -0
  16. package/bundled-skills/analytics/evals/evals.json +90 -0
  17. package/bundled-skills/analytics/references/event-library.md +260 -0
  18. package/bundled-skills/analytics/references/ga4-implementation.md +300 -0
  19. package/bundled-skills/analytics/references/gtm-implementation.md +390 -0
  20. package/bundled-skills/anti-deception/SKILL.md +50 -0
  21. package/bundled-skills/api-analyzer/SKILL.md +101 -0
  22. package/bundled-skills/api-and-interface-design/SKILL.md +307 -0
  23. package/bundled-skills/api-designer/SKILL.md +167 -0
  24. package/bundled-skills/api-integration/SKILL.md +175 -0
  25. package/bundled-skills/api-onboarding/README.md +47 -0
  26. package/bundled-skills/api-onboarding/SKILL.md +473 -0
  27. package/bundled-skills/api-sdk-generator/SKILL.md +223 -0
  28. package/bundled-skills/appium-skill/SKILL.md +317 -0
  29. package/bundled-skills/applicationinsights-web-ts/SKILL.md +477 -0
  30. package/bundled-skills/automated-triage/SKILL.md +189 -0
  31. package/bundled-skills/aws-agentic-ai/SKILL.md +141 -0
  32. package/bundled-skills/aws-cdk-development/SKILL.md +275 -0
  33. package/bundled-skills/aws-cost-operations/SKILL.md +273 -0
  34. package/bundled-skills/aws-mcp-setup/SKILL.md +192 -0
  35. package/bundled-skills/aws-serverless-eda/SKILL.md +394 -0
  36. package/bundled-skills/aws-sst-development/SKILL.md +175 -0
  37. package/bundled-skills/azure-ai-language-conversations-py/SKILL.md +112 -0
  38. package/bundled-skills/azure-servicebus-rust/SKILL.md +182 -0
  39. package/bundled-skills/azure-storage-queue-rust/SKILL.md +178 -0
  40. package/bundled-skills/baseline-ui/SKILL.md +15 -10
  41. package/bundled-skills/brooks-audit/SKILL.md +49 -0
  42. package/bundled-skills/brooks-audit/architecture-guide.md +195 -0
  43. package/bundled-skills/brooks-audit/onboarding-guide.md +89 -0
  44. package/bundled-skills/brooks-debt/SKILL.md +42 -0
  45. package/bundled-skills/brooks-debt/debt-guide.md +125 -0
  46. package/bundled-skills/brooks-harness/SKILL.md +139 -0
  47. package/bundled-skills/brooks-review/SKILL.md +42 -0
  48. package/bundled-skills/brooks-review/pr-review-guide.md +163 -0
  49. package/bundled-skills/brooks-sweep/SKILL.md +44 -0
  50. package/bundled-skills/brooks-sweep/sweep-guide.md +264 -0
  51. package/bundled-skills/brooks-test/SKILL.md +41 -0
  52. package/bundled-skills/brooks-test/test-guide.md +147 -0
  53. package/bundled-skills/bug-hunt-swarm/SKILL.md +189 -0
  54. package/bundled-skills/bug-hunt-swarm/agents/openai.yaml +4 -0
  55. package/bundled-skills/building-native-ui/SKILL.md +77 -18
  56. package/bundled-skills/building-native-ui/agents/openai.yaml +4 -0
  57. package/bundled-skills/building-native-ui/references/animations.md +220 -0
  58. package/bundled-skills/building-native-ui/references/controls.md +270 -0
  59. package/bundled-skills/building-native-ui/references/form-sheet.md +253 -0
  60. package/bundled-skills/building-native-ui/references/gradients.md +106 -0
  61. package/bundled-skills/building-native-ui/references/icons.md +213 -0
  62. package/bundled-skills/building-native-ui/references/media.md +198 -0
  63. package/bundled-skills/building-native-ui/references/route-structure.md +229 -0
  64. package/bundled-skills/building-native-ui/references/search.md +248 -0
  65. package/bundled-skills/building-native-ui/references/storage.md +121 -0
  66. package/bundled-skills/building-native-ui/references/tabs.md +433 -0
  67. package/bundled-skills/building-native-ui/references/toolbar-and-headers.md +284 -0
  68. package/bundled-skills/building-native-ui/references/visual-effects.md +197 -0
  69. package/bundled-skills/building-native-ui/references/webgpu-three.md +605 -0
  70. package/bundled-skills/building-native-ui/references/zoom-transitions.md +158 -0
  71. package/bundled-skills/changelog-updates/README.md +53 -0
  72. package/bundled-skills/changelog-updates/SKILL.md +552 -0
  73. package/bundled-skills/ci-cd-and-automation/SKILL.md +403 -0
  74. package/bundled-skills/claimable-postgres/SKILL.md +91 -59
  75. package/bundled-skills/co-marketing/SKILL.md +301 -0
  76. package/bundled-skills/co-marketing/evals/evals.json +84 -0
  77. package/bundled-skills/code-review-and-quality/SKILL.md +394 -0
  78. package/bundled-skills/code-showcase-core-components/SKILL.md +281 -0
  79. package/bundled-skills/code-showcase-react-ui-patterns/SKILL.md +306 -0
  80. package/bundled-skills/code-showcase-systematic-debugging/SKILL.md +167 -0
  81. package/bundled-skills/code-showcase-testing-patterns/SKILL.md +276 -0
  82. package/bundled-skills/code-simplification/SKILL.md +344 -0
  83. package/bundled-skills/community-building/README.md +102 -0
  84. package/bundled-skills/community-building/SKILL.md +415 -0
  85. package/bundled-skills/competitor-profiling/SKILL.md +427 -0
  86. package/bundled-skills/competitor-profiling/evals/evals.json +85 -0
  87. package/bundled-skills/competitor-profiling/references/templates.md +167 -0
  88. package/bundled-skills/competitor-profiling/references/tool-reference.md +179 -0
  89. package/bundled-skills/competitor-tracking/README.md +40 -0
  90. package/bundled-skills/competitor-tracking/SKILL.md +322 -0
  91. package/bundled-skills/context-engineering/SKILL.md +302 -0
  92. package/bundled-skills/cro/SKILL.md +202 -0
  93. package/bundled-skills/cro/evals/evals.json +111 -0
  94. package/bundled-skills/cro/references/experiments.md +248 -0
  95. package/bundled-skills/cro/references/form.md +422 -0
  96. package/bundled-skills/cucumber-skill/SKILL.md +235 -0
  97. package/bundled-skills/customer-research/SKILL.md +287 -0
  98. package/bundled-skills/customer-research/evals/evals.json +162 -0
  99. package/bundled-skills/customer-research/references/source-guides.md +401 -0
  100. package/bundled-skills/cypress-skill/SKILL.md +235 -0
  101. package/bundled-skills/debugging-and-error-recovery/SKILL.md +313 -0
  102. package/bundled-skills/debugging-code/SKILL.md +284 -0
  103. package/bundled-skills/debugging-code/references/advanced-techniques.md +50 -0
  104. package/bundled-skills/debugging-code/references/installing-debuggers.md +67 -0
  105. package/bundled-skills/debugging-code/scripts/install-dap.sh +87 -0
  106. package/bundled-skills/deprecation-and-migration/SKILL.md +219 -0
  107. package/bundled-skills/design-philosophy/SKILL.md +40 -0
  108. package/bundled-skills/design-philosophy/reference.md +19 -0
  109. package/bundled-skills/design-spatial/SKILL.md +271 -0
  110. package/bundled-skills/design-spatial/scripts/layout-audit.js +138 -0
  111. package/bundled-skills/design-system/SKILL.md +140 -0
  112. package/bundled-skills/design-system/references/motion-choreography.md +111 -0
  113. package/bundled-skills/design-thinking/SKILL.md +109 -0
  114. package/bundled-skills/design-ux/SKILL.md +75 -0
  115. package/bundled-skills/dev-to-hashnode/README.md +62 -0
  116. package/bundled-skills/dev-to-hashnode/SKILL.md +399 -0
  117. package/bundled-skills/developer-advocacy/README.md +102 -0
  118. package/bundled-skills/developer-advocacy/SKILL.md +423 -0
  119. package/bundled-skills/developer-audience-context/README.md +61 -0
  120. package/bundled-skills/developer-audience-context/SKILL.md +271 -0
  121. package/bundled-skills/developer-audience-context/references/example-apitest.md +175 -0
  122. package/bundled-skills/developer-audience-context/references/template.md +152 -0
  123. package/bundled-skills/developer-churn/README.md +80 -0
  124. package/bundled-skills/developer-churn/SKILL.md +652 -0
  125. package/bundled-skills/developer-listening/README.md +30 -0
  126. package/bundled-skills/developer-listening/SKILL.md +232 -0
  127. package/bundled-skills/developer-newsletter/README.md +84 -0
  128. package/bundled-skills/developer-newsletter/SKILL.md +376 -0
  129. package/bundled-skills/developer-onboarding/README.md +35 -0
  130. package/bundled-skills/developer-onboarding/SKILL.md +530 -0
  131. package/bundled-skills/developer-sandbox/README.md +47 -0
  132. package/bundled-skills/developer-sandbox/SKILL.md +504 -0
  133. package/bundled-skills/developer-seo/README.md +36 -0
  134. package/bundled-skills/developer-seo/SKILL.md +296 -0
  135. package/bundled-skills/developer-signup-flow/README.md +36 -0
  136. package/bundled-skills/developer-signup-flow/SKILL.md +397 -0
  137. package/bundled-skills/devrel-content/README.md +81 -0
  138. package/bundled-skills/devrel-content/SKILL.md +428 -0
  139. package/bundled-skills/docs/integrations/jetski-cortex.md +3 -3
  140. package/bundled-skills/docs/integrations/jetski-gemini-loader/README.md +1 -1
  141. package/bundled-skills/docs/maintainers/repo-growth-seo.md +3 -3
  142. package/bundled-skills/docs/maintainers/skills-update-guide.md +1 -1
  143. package/bundled-skills/docs/users/bundles.md +1 -1
  144. package/bundled-skills/docs/users/claude-code-skills.md +1 -1
  145. package/bundled-skills/docs/users/faq.md +1 -1
  146. package/bundled-skills/docs/users/gemini-cli-skills.md +1 -1
  147. package/bundled-skills/docs/users/getting-started.md +1 -1
  148. package/bundled-skills/docs/users/kiro-integration.md +1 -1
  149. package/bundled-skills/docs/users/usage.md +8 -8
  150. package/bundled-skills/docs/users/visual-guide.md +8 -8
  151. package/bundled-skills/docs-as-marketing/README.md +37 -0
  152. package/bundled-skills/docs-as-marketing/SKILL.md +398 -0
  153. package/bundled-skills/documentation-and-adrs/SKILL.md +291 -0
  154. package/bundled-skills/doubt-driven-development/SKILL.md +256 -0
  155. package/bundled-skills/eas-update-insights/SKILL.md +232 -0
  156. package/bundled-skills/eas-update-insights/agents/openai.yaml +4 -0
  157. package/bundled-skills/eas-update-insights/references/channel-insights-schema.md +47 -0
  158. package/bundled-skills/eas-update-insights/references/update-insights-schema.md +69 -0
  159. package/bundled-skills/expo-api-routes/SKILL.md +9 -5
  160. package/bundled-skills/expo-api-routes/agents/openai.yaml +4 -0
  161. package/bundled-skills/expo-brownfield/SKILL.md +71 -0
  162. package/bundled-skills/expo-brownfield/agents/openai.yaml +4 -0
  163. package/bundled-skills/expo-brownfield/references/brownfield-integrated.md +526 -0
  164. package/bundled-skills/expo-brownfield/references/brownfield-isolated.md +402 -0
  165. package/bundled-skills/expo-brownfield/references/comparison.md +63 -0
  166. package/bundled-skills/expo-brownfield/references/troubleshooting.md +88 -0
  167. package/bundled-skills/expo-cicd-workflows/SKILL.md +18 -16
  168. package/bundled-skills/expo-cicd-workflows/agents/openai.yaml +4 -0
  169. package/bundled-skills/expo-cicd-workflows/scripts/fetch.js +109 -0
  170. package/bundled-skills/expo-cicd-workflows/scripts/package.json +11 -0
  171. package/bundled-skills/expo-cicd-workflows/scripts/validate.js +84 -0
  172. package/bundled-skills/expo-deployment/SKILL.md +157 -53
  173. package/bundled-skills/expo-deployment/agents/openai.yaml +4 -0
  174. package/bundled-skills/expo-deployment/references/app-store-metadata.md +497 -0
  175. package/bundled-skills/expo-deployment/references/ios-app-store.md +371 -0
  176. package/bundled-skills/expo-deployment/references/play-store.md +246 -0
  177. package/bundled-skills/expo-deployment/references/testflight.md +58 -0
  178. package/bundled-skills/expo-deployment/references/workflows.md +160 -0
  179. package/bundled-skills/expo-dev-client/SKILL.md +25 -14
  180. package/bundled-skills/expo-dev-client/agents/openai.yaml +4 -0
  181. package/bundled-skills/expo-examples/SKILL.md +111 -0
  182. package/bundled-skills/expo-examples/references/catalog.md +105 -0
  183. package/bundled-skills/expo-module/SKILL.md +152 -0
  184. package/bundled-skills/expo-module/agents/openai.yaml +4 -0
  185. package/bundled-skills/expo-module/references/config-plugin.md +90 -0
  186. package/bundled-skills/expo-module/references/create-expo-module.md +206 -0
  187. package/bundled-skills/expo-module/references/lifecycle.md +127 -0
  188. package/bundled-skills/expo-module/references/module-config.md +48 -0
  189. package/bundled-skills/expo-module/references/native-module.md +286 -0
  190. package/bundled-skills/expo-module/references/native-view.md +171 -0
  191. package/bundled-skills/expo-observe/SKILL.md +44 -0
  192. package/bundled-skills/expo-observe/references/metrics.md +47 -0
  193. package/bundled-skills/expo-observe/references/queries.md +342 -0
  194. package/bundled-skills/expo-observe/references/setup.md +255 -0
  195. package/bundled-skills/expo-tailwind-setup/SKILL.md +13 -10
  196. package/bundled-skills/expo-tailwind-setup/agents/openai.yaml +4 -0
  197. package/bundled-skills/expo-ui/SKILL.md +61 -0
  198. package/bundled-skills/expo-ui/agents/openai.yaml +4 -0
  199. package/bundled-skills/expo-ui/references/drop-in-replacements.md +27 -0
  200. package/bundled-skills/expo-ui/references/jetpack-compose.md +73 -0
  201. package/bundled-skills/expo-ui/references/swift-ui.md +73 -0
  202. package/bundled-skills/expo-ui/references/universal.md +73 -0
  203. package/bundled-skills/expo-ui/scripts/list-components.js +193 -0
  204. package/bundled-skills/faf-context/SKILL.md +106 -0
  205. package/bundled-skills/faf-go/SKILL.md +336 -0
  206. package/bundled-skills/fixing-accessibility/SKILL.md +16 -5
  207. package/bundled-skills/fixing-metadata/SKILL.md +18 -8
  208. package/bundled-skills/fixing-motion-performance/SKILL.md +17 -6
  209. package/bundled-skills/formik-patterns/SKILL.md +379 -0
  210. package/bundled-skills/free-tier-strategy/README.md +39 -0
  211. package/bundled-skills/free-tier-strategy/SKILL.md +462 -0
  212. package/bundled-skills/frontend-architecture/SKILL.md +419 -0
  213. package/bundled-skills/frontend-data-contracts/SKILL.md +331 -0
  214. package/bundled-skills/frontend-observability/SKILL.md +434 -0
  215. package/bundled-skills/frontend-optimistic-mutations/SKILL.md +278 -0
  216. package/bundled-skills/frontend-seo/SKILL.md +710 -0
  217. package/bundled-skills/frontend-slides-frontend-slides/SKILL.md +397 -0
  218. package/bundled-skills/frontend-ui-engineering/SKILL.md +341 -0
  219. package/bundled-skills/gemini-api-dev/SKILL.md +96 -53
  220. package/bundled-skills/gemini-live-api-dev/SKILL.md +339 -0
  221. package/bundled-skills/gemini-omni-flash-api/SKILL.md +335 -0
  222. package/bundled-skills/gemini-omni-flash-api/scripts/upload_file.py +218 -0
  223. package/bundled-skills/gemini-omni-flash-api/scripts/video/generate_video.py +439 -0
  224. package/bundled-skills/gemini-omni-flash-api/scripts/video/inspect_video.py +197 -0
  225. package/bundled-skills/gemini-omni-flash-api/scripts/video/prep_video.py +255 -0
  226. package/bundled-skills/git-workflow-and-versioning/SKILL.md +313 -0
  227. package/bundled-skills/github-presence/README.md +67 -0
  228. package/bundled-skills/github-presence/SKILL.md +484 -0
  229. package/bundled-skills/graphql-schema/SKILL.md +309 -0
  230. package/bundled-skills/hf-mcp/SKILL.md +195 -0
  231. package/bundled-skills/hf-mem/SKILL.md +92 -0
  232. package/bundled-skills/hugging-face-cli/SKILL.md +155 -115
  233. package/bundled-skills/hugging-face-community-evals/SKILL.md +14 -7
  234. package/bundled-skills/hugging-face-dataset-viewer/SKILL.md +30 -37
  235. package/bundled-skills/hugging-face-gradio/SKILL.md +14 -7
  236. package/bundled-skills/hugging-face-model-trainer/SKILL.md +36 -10
  237. package/bundled-skills/hugging-face-model-trainer/scripts/convert_to_gguf.py +30 -52
  238. package/bundled-skills/hugging-face-model-trainer/scripts/hf_benchmarks.py +659 -0
  239. package/bundled-skills/hugging-face-paper-publisher/SKILL.md +13 -6
  240. package/bundled-skills/hugging-face-papers/SKILL.md +12 -5
  241. package/bundled-skills/hugging-face-trackio/SKILL.md +11 -5
  242. package/bundled-skills/hugging-face-vision-trainer/SKILL.md +11 -5
  243. package/bundled-skills/huggingface-best/SKILL.md +143 -0
  244. package/bundled-skills/huggingface-local-models/SKILL.md +130 -0
  245. package/bundled-skills/huggingface-local-models/references/hardware.md +38 -0
  246. package/bundled-skills/huggingface-local-models/references/hub-discovery.md +178 -0
  247. package/bundled-skills/huggingface-local-models/references/quantization.md +256 -0
  248. package/bundled-skills/huggingface-lora-space-builder/SKILL.md +409 -0
  249. package/bundled-skills/huggingface-lora-space-builder/references/adapting-to-the-lora.md +113 -0
  250. package/bundled-skills/huggingface-lora-space-builder/references/base-models/krea-2.md +63 -0
  251. package/bundled-skills/huggingface-lora-space-builder/references/base-models/ltx.md +205 -0
  252. package/bundled-skills/huggingface-lora-space-builder/references/base-models/qwen-image.md +144 -0
  253. package/bundled-skills/huggingface-lora-space-builder/references/creative-mode.md +262 -0
  254. package/bundled-skills/huggingface-lora-space-builder/references/tasks.md +124 -0
  255. package/bundled-skills/huggingface-lora-space-builder/references/zerogpu-and-publishing.md +194 -0
  256. package/bundled-skills/huggingface-spaces/SKILL.md +247 -0
  257. package/bundled-skills/huggingface-spaces/references/buckets.md +89 -0
  258. package/bundled-skills/huggingface-spaces/references/debugging.md +234 -0
  259. package/bundled-skills/huggingface-spaces/references/gradio.md +171 -0
  260. package/bundled-skills/huggingface-spaces/references/grants.md +56 -0
  261. package/bundled-skills/huggingface-spaces/references/inference-providers.md +85 -0
  262. package/bundled-skills/huggingface-spaces/references/known-errors.md +232 -0
  263. package/bundled-skills/huggingface-spaces/references/requirements.md +153 -0
  264. package/bundled-skills/huggingface-spaces/references/zerogpu.md +276 -0
  265. package/bundled-skills/huggingface-tool-builder/SKILL.md +137 -0
  266. package/bundled-skills/huggingface-tool-builder/references/baseline_hf_api.py +57 -0
  267. package/bundled-skills/huggingface-tool-builder/references/baseline_hf_api.sh +40 -0
  268. package/bundled-skills/huggingface-tool-builder/references/baseline_hf_api.tsx +57 -0
  269. package/bundled-skills/huggingface-tool-builder/references/find_models_by_paper.sh +230 -0
  270. package/bundled-skills/huggingface-tool-builder/references/hf_enrich_models.sh +96 -0
  271. package/bundled-skills/huggingface-tool-builder/references/hf_model_card_frontmatter.sh +188 -0
  272. package/bundled-skills/huggingface-tool-builder/references/hf_model_papers_auth.sh +171 -0
  273. package/bundled-skills/huggingface-zerogpu/SKILL.md +306 -0
  274. package/bundled-skills/huggingface-zerogpu/references/concurrency.md +79 -0
  275. package/bundled-skills/huggingface-zerogpu/references/cuda-and-deps.md +66 -0
  276. package/bundled-skills/huggingface-zerogpu/references/how-quota-works.md +74 -0
  277. package/bundled-skills/huggingface-zerogpu/references/how-zerogpu-works.md +50 -0
  278. package/bundled-skills/hugo-to-markdown/SKILL.md +201 -0
  279. package/bundled-skills/hugo-to-markdown/agents/openai.yaml +4 -0
  280. package/bundled-skills/hugo-to-markdown/references/conversion-workflow.md +143 -0
  281. package/bundled-skills/hugo-to-markdown/references/front-matter-and-content.md +145 -0
  282. package/bundled-skills/hugo-to-markdown/references/links-assets-and-validation.md +106 -0
  283. package/bundled-skills/hugo-to-markdown/references/shortcodes-and-render-hooks.md +281 -0
  284. package/bundled-skills/hugo-to-markdown/scripts/check_standard_markdown.py +70 -0
  285. package/bundled-skills/hugo-to-markdown/scripts/inventory_hugo_rules.py +188 -0
  286. package/bundled-skills/hyperexecute-skill/SKILL.md +65 -0
  287. package/bundled-skills/idea-refine/SKILL.md +195 -0
  288. package/bundled-skills/idea-refine/examples.md +238 -0
  289. package/bundled-skills/idea-refine/frameworks.md +99 -0
  290. package/bundled-skills/idea-refine/refinement-criteria.md +113 -0
  291. package/bundled-skills/idea-refine/scripts/idea-refine.sh +15 -0
  292. package/bundled-skills/implement/SKILL.md +32 -0
  293. package/bundled-skills/incremental-implementation/SKILL.md +262 -0
  294. package/bundled-skills/jest-skill/SKILL.md +182 -0
  295. package/bundled-skills/junit-5-skill/SKILL.md +236 -0
  296. package/bundled-skills/logic-diff/SKILL.md +50 -0
  297. package/bundled-skills/logic-diff/logic-diff-guide.md +75 -0
  298. package/bundled-skills/logic-explain/SKILL.md +50 -0
  299. package/bundled-skills/logic-explain/logic-explain-guide.md +74 -0
  300. package/bundled-skills/logic-fix-all/SKILL.md +87 -0
  301. package/bundled-skills/logic-fix-all/guide-phases-0-2-consent-scope-health.md +113 -0
  302. package/bundled-skills/logic-fix-all/guide-phases-3-5-review-locate-clarify.md +47 -0
  303. package/bundled-skills/logic-fix-all/guide-phases-6-9-fix-iterate-report.md +143 -0
  304. package/bundled-skills/logic-fix-all/logic-fix-all-guide.md +60 -0
  305. package/bundled-skills/logic-locate/SKILL.md +52 -0
  306. package/bundled-skills/logic-locate/logic-locate-guide.md +85 -0
  307. package/bundled-skills/logic-review/SKILL.md +100 -0
  308. package/bundled-skills/logic-review/logic-review-guide.md +296 -0
  309. package/bundled-skills/longbridge-content/SKILL.md +87 -0
  310. package/bundled-skills/longbridge-fundamentals/SKILL.md +134 -0
  311. package/bundled-skills/longbridge-market-data/SKILL.md +129 -0
  312. package/bundled-skills/loopy/SKILL.md +289 -0
  313. package/bundled-skills/loopy/agents/openai.yaml +4 -0
  314. package/bundled-skills/loopy/references/audit.md +61 -0
  315. package/bundled-skills/loopy/references/debrief.md +43 -0
  316. package/bundled-skills/loopy/references/discover.md +72 -0
  317. package/bundled-skills/loopy/references/publish.md +65 -0
  318. package/bundled-skills/loopy/references/run.md +73 -0
  319. package/bundled-skills/marketing-plan/SKILL.md +283 -0
  320. package/bundled-skills/marketing-plan/evals/evals.json +96 -0
  321. package/bundled-skills/marketing-plan/references/aarrr-framework.md +180 -0
  322. package/bundled-skills/marketing-plan/references/budget-planning.md +168 -0
  323. package/bundled-skills/marketing-plan/references/client-types.md +373 -0
  324. package/bundled-skills/marketing-plan/references/current-state-rubric.md +255 -0
  325. package/bundled-skills/marketing-plan/references/example-quietude.md +972 -0
  326. package/bundled-skills/marketing-plan/references/funding-stage-unlocks.md +230 -0
  327. package/bundled-skills/marketing-plan/references/growth-patterns.md +148 -0
  328. package/bundled-skills/marketing-plan/references/idea-cross-reference.md +265 -0
  329. package/bundled-skills/marketing-plan/references/measurement-framework.md +213 -0
  330. package/bundled-skills/marketing-plan/references/methodology.md +363 -0
  331. package/bundled-skills/marketing-plan/references/ops-stack-mapping.md +197 -0
  332. package/bundled-skills/marketing-plan/references/plan-template.md +494 -0
  333. package/bundled-skills/marketing-plan/references/team-and-agency-model.md +278 -0
  334. package/bundled-skills/monte-carlo-analyze-root-cause/SKILL.md +229 -0
  335. package/bundled-skills/monte-carlo-asset-health/SKILL.md +200 -0
  336. package/bundled-skills/monte-carlo-monitoring-advisor/SKILL.md +317 -0
  337. package/bundled-skills/monte-carlo-performance-diagnosis/SKILL.md +153 -0
  338. package/bundled-skills/monte-carlo-remediation/SKILL.md +359 -0
  339. package/bundled-skills/monte-carlo-storage-cost-analysis/SKILL.md +162 -0
  340. package/bundled-skills/native-data-fetching/SKILL.md +11 -8
  341. package/bundled-skills/native-data-fetching/agents/openai.yaml +4 -0
  342. package/bundled-skills/native-data-fetching/references/expo-router-loaders.md +341 -0
  343. package/bundled-skills/neon-ai-gateway/SKILL.md +237 -0
  344. package/bundled-skills/neon-functions/SKILL.md +465 -0
  345. package/bundled-skills/neon-functions/references/ai-sdk.md +139 -0
  346. package/bundled-skills/neon-functions/references/hono-websockets.md +145 -0
  347. package/bundled-skills/neon-functions/references/mastra-studio.md +132 -0
  348. package/bundled-skills/neon-functions/references/mcp.md +137 -0
  349. package/bundled-skills/neon-functions/references/sentry.md +131 -0
  350. package/bundled-skills/neon-functions/references/sse.md +143 -0
  351. package/bundled-skills/neon-object-storage/SKILL.md +200 -0
  352. package/bundled-skills/neon-postgres/SKILL.md +234 -469
  353. package/bundled-skills/neon-postgres-branches/SKILL.md +292 -0
  354. package/bundled-skills/neon-postgres-egress-optimizer/SKILL.md +256 -0
  355. package/bundled-skills/newman-cicd-integration/SKILL.md +330 -0
  356. package/bundled-skills/observability-and-instrumentation/SKILL.md +216 -0
  357. package/bundled-skills/odw/SKILL.md +57 -0
  358. package/bundled-skills/offers/SKILL.md +168 -0
  359. package/bundled-skills/offers/references/bonus-stacking.md +150 -0
  360. package/bundled-skills/offers/references/examples.md +215 -0
  361. package/bundled-skills/offers/references/guarantee-design.md +172 -0
  362. package/bundled-skills/offers/references/offer-anatomy.md +203 -0
  363. package/bundled-skills/offers/references/offer-formats.md +240 -0
  364. package/bundled-skills/offers/references/scarcity-urgency.md +175 -0
  365. package/bundled-skills/offers/references/value-equation.md +134 -0
  366. package/bundled-skills/onboarding/SKILL.md +235 -0
  367. package/bundled-skills/onboarding/evals/evals.json +92 -0
  368. package/bundled-skills/onboarding/references/experiments.md +258 -0
  369. package/bundled-skills/open-source-marketing/README.md +100 -0
  370. package/bundled-skills/open-source-marketing/SKILL.md +466 -0
  371. package/bundled-skills/openapi-spec-generator/SKILL.md +335 -0
  372. package/bundled-skills/performance-optimization/SKILL.md +363 -0
  373. package/bundled-skills/planning-and-task-breakdown/SKILL.md +240 -0
  374. package/bundled-skills/polis-protocol-a-self-optimizing-city-of-agents/SKILL.md +170 -0
  375. package/bundled-skills/postgresql-cli/SKILL.md +498 -0
  376. package/bundled-skills/postgresql-cli/references/cli-options-and-variables.md +444 -0
  377. package/bundled-skills/postgresql-cli/references/meta-commands-core.md +466 -0
  378. package/bundled-skills/postgresql-cli/references/meta-commands-formatting.md +154 -0
  379. package/bundled-skills/postgresql-cli/references/meta-commands-inspection.md +134 -0
  380. package/bundled-skills/postgresql-cli/references/tips-advanced.md +289 -0
  381. package/bundled-skills/postgresql-cli/references/tips-workflows.md +407 -0
  382. package/bundled-skills/postman-collection-generator/SKILL.md +184 -0
  383. package/bundled-skills/postman-newman-automation/SKILL.md +311 -0
  384. package/bundled-skills/postman-openapi-converter/SKILL.md +174 -0
  385. package/bundled-skills/power-user-cultivation/README.md +78 -0
  386. package/bundled-skills/power-user-cultivation/SKILL.md +598 -0
  387. package/bundled-skills/pricing/SKILL.md +246 -0
  388. package/bundled-skills/pricing/evals/evals.json +90 -0
  389. package/bundled-skills/pricing/references/research-methods.md +152 -0
  390. package/bundled-skills/pricing/references/tier-structure.md +232 -0
  391. package/bundled-skills/privacy-mask/SKILL.md +96 -0
  392. package/bundled-skills/product-marketing/SKILL.md +256 -0
  393. package/bundled-skills/product-marketing/evals/evals.json +85 -0
  394. package/bundled-skills/public-relations/SKILL.md +146 -0
  395. package/bundled-skills/public-relations/references/journalist-pitching.md +368 -0
  396. package/bundled-skills/public-relations/references/media-outlets.md +207 -0
  397. package/bundled-skills/public-relations/references/newsjacking.md +218 -0
  398. package/bundled-skills/public-relations/references/press-platforms.md +188 -0
  399. package/bundled-skills/puppeteer-skill/SKILL.md +143 -0
  400. package/bundled-skills/pytest-skill/SKILL.md +201 -0
  401. package/bundled-skills/rclone-cli/SKILL.md +351 -0
  402. package/bundled-skills/rclone-cli/references/bisync.md +2003 -0
  403. package/bundled-skills/rclone-cli/references/cache.md +726 -0
  404. package/bundled-skills/rclone-cli/references/chunker.md +484 -0
  405. package/bundled-skills/rclone-cli/references/combine.md +187 -0
  406. package/bundled-skills/rclone-cli/references/commands/rclone.md +1169 -0
  407. package/bundled-skills/rclone-cli/references/commands/rclone_about.md +89 -0
  408. package/bundled-skills/rclone-cli/references/commands/rclone_archive.md +49 -0
  409. package/bundled-skills/rclone-cli/references/commands/rclone_archive_create.md +97 -0
  410. package/bundled-skills/rclone-cli/references/commands/rclone_archive_extract.md +83 -0
  411. package/bundled-skills/rclone-cli/references/commands/rclone_archive_list.md +98 -0
  412. package/bundled-skills/rclone-cli/references/commands/rclone_authorize.md +53 -0
  413. package/bundled-skills/rclone-cli/references/commands/rclone_backend.md +82 -0
  414. package/bundled-skills/rclone-cli/references/commands/rclone_bisync.md +160 -0
  415. package/bundled-skills/rclone-cli/references/commands/rclone_cat.md +122 -0
  416. package/bundled-skills/rclone-cli/references/commands/rclone_check.md +134 -0
  417. package/bundled-skills/rclone-cli/references/commands/rclone_checksum.md +120 -0
  418. package/bundled-skills/rclone-cli/references/commands/rclone_cleanup.md +49 -0
  419. package/bundled-skills/rclone-cli/references/commands/rclone_completion.md +40 -0
  420. package/bundled-skills/rclone-cli/references/commands/rclone_completion_bash.md +70 -0
  421. package/bundled-skills/rclone-cli/references/commands/rclone_completion_fish.md +57 -0
  422. package/bundled-skills/rclone-cli/references/commands/rclone_completion_powershell.md +49 -0
  423. package/bundled-skills/rclone-cli/references/commands/rclone_completion_zsh.md +57 -0
  424. package/bundled-skills/rclone-cli/references/commands/rclone_config.md +56 -0
  425. package/bundled-skills/rclone-cli/references/commands/rclone_config_create.md +150 -0
  426. package/bundled-skills/rclone-cli/references/commands/rclone_config_delete.md +33 -0
  427. package/bundled-skills/rclone-cli/references/commands/rclone_config_disconnect.md +40 -0
  428. package/bundled-skills/rclone-cli/references/commands/rclone_config_dump.md +33 -0
  429. package/bundled-skills/rclone-cli/references/commands/rclone_config_edit.md +39 -0
  430. package/bundled-skills/rclone-cli/references/commands/rclone_config_encryption.md +36 -0
  431. package/bundled-skills/rclone-cli/references/commands/rclone_config_encryption_check.md +43 -0
  432. package/bundled-skills/rclone-cli/references/commands/rclone_config_encryption_remove.md +44 -0
  433. package/bundled-skills/rclone-cli/references/commands/rclone_config_encryption_set.md +54 -0
  434. package/bundled-skills/rclone-cli/references/commands/rclone_config_file.md +33 -0
  435. package/bundled-skills/rclone-cli/references/commands/rclone_config_password.md +49 -0
  436. package/bundled-skills/rclone-cli/references/commands/rclone_config_paths.md +33 -0
  437. package/bundled-skills/rclone-cli/references/commands/rclone_config_providers.md +33 -0
  438. package/bundled-skills/rclone-cli/references/commands/rclone_config_reconnect.md +40 -0
  439. package/bundled-skills/rclone-cli/references/commands/rclone_config_redacted.md +45 -0
  440. package/bundled-skills/rclone-cli/references/commands/rclone_config_show.md +33 -0
  441. package/bundled-skills/rclone-cli/references/commands/rclone_config_string.md +57 -0
  442. package/bundled-skills/rclone-cli/references/commands/rclone_config_touch.md +33 -0
  443. package/bundled-skills/rclone-cli/references/commands/rclone_config_update.md +150 -0
  444. package/bundled-skills/rclone-cli/references/commands/rclone_config_userinfo.md +38 -0
  445. package/bundled-skills/rclone-cli/references/commands/rclone_convmv.md +440 -0
  446. package/bundled-skills/rclone-cli/references/commands/rclone_copy.md +258 -0
  447. package/bundled-skills/rclone-cli/references/commands/rclone_copyto.md +219 -0
  448. package/bundled-skills/rclone-cli/references/commands/rclone_copyurl.md +91 -0
  449. package/bundled-skills/rclone-cli/references/commands/rclone_cryptcheck.md +141 -0
  450. package/bundled-skills/rclone-cli/references/commands/rclone_cryptdecode.md +51 -0
  451. package/bundled-skills/rclone-cli/references/commands/rclone_dedupe.md +166 -0
  452. package/bundled-skills/rclone-cli/references/commands/rclone_delete.md +117 -0
  453. package/bundled-skills/rclone-cli/references/commands/rclone_deletefile.md +50 -0
  454. package/bundled-skills/rclone-cli/references/commands/rclone_gendocs.md +39 -0
  455. package/bundled-skills/rclone-cli/references/commands/rclone_gitannex.md +113 -0
  456. package/bundled-skills/rclone-cli/references/commands/rclone_hashsum.md +120 -0
  457. package/bundled-skills/rclone-cli/references/commands/rclone_link.md +60 -0
  458. package/bundled-skills/rclone-cli/references/commands/rclone_listremotes.md +55 -0
  459. package/bundled-skills/rclone-cli/references/commands/rclone_ls.md +114 -0
  460. package/bundled-skills/rclone-cli/references/commands/rclone_lsd.md +127 -0
  461. package/bundled-skills/rclone-cli/references/commands/rclone_lsf.md +241 -0
  462. package/bundled-skills/rclone-cli/references/commands/rclone_lsjson.md +195 -0
  463. package/bundled-skills/rclone-cli/references/commands/rclone_lsl.md +115 -0
  464. package/bundled-skills/rclone-cli/references/commands/rclone_md5sum.md +96 -0
  465. package/bundled-skills/rclone-cli/references/commands/rclone_mkdir.md +43 -0
  466. package/bundled-skills/rclone-cli/references/commands/rclone_mount.md +1105 -0
  467. package/bundled-skills/rclone-cli/references/commands/rclone_move.md +223 -0
  468. package/bundled-skills/rclone-cli/references/commands/rclone_moveto.md +218 -0
  469. package/bundled-skills/rclone-cli/references/commands/rclone_ncdu.md +140 -0
  470. package/bundled-skills/rclone-cli/references/commands/rclone_nfsmount.md +1111 -0
  471. package/bundled-skills/rclone-cli/references/commands/rclone_obscure.md +60 -0
  472. package/bundled-skills/rclone-cli/references/commands/rclone_purge.md +58 -0
  473. package/bundled-skills/rclone-cli/references/commands/rclone_rc.md +111 -0
  474. package/bundled-skills/rclone-cli/references/commands/rclone_rcat.md +79 -0
  475. package/bundled-skills/rclone-cli/references/commands/rclone_rcd.md +219 -0
  476. package/bundled-skills/rclone-cli/references/commands/rclone_rmdir.md +52 -0
  477. package/bundled-skills/rclone-cli/references/commands/rclone_rmdirs.md +66 -0
  478. package/bundled-skills/rclone-cli/references/commands/rclone_selfupdate.md +91 -0
  479. package/bundled-skills/rclone-cli/references/commands/rclone_serve.md +61 -0
  480. package/bundled-skills/rclone-cli/references/commands/rclone_serve_dlna.md +619 -0
  481. package/bundled-skills/rclone-cli/references/commands/rclone_serve_docker.md +653 -0
  482. package/bundled-skills/rclone-cli/references/commands/rclone_serve_ftp.md +698 -0
  483. package/bundled-skills/rclone-cli/references/commands/rclone_serve_http.md +837 -0
  484. package/bundled-skills/rclone-cli/references/commands/rclone_serve_nfs.md +670 -0
  485. package/bundled-skills/rclone-cli/references/commands/rclone_serve_restic.md +246 -0
  486. package/bundled-skills/rclone-cli/references/commands/rclone_serve_s3.md +867 -0
  487. package/bundled-skills/rclone-cli/references/commands/rclone_serve_sftp.md +745 -0
  488. package/bundled-skills/rclone-cli/references/commands/rclone_serve_webdav.md +896 -0
  489. package/bundled-skills/rclone-cli/references/commands/rclone_settier.md +63 -0
  490. package/bundled-skills/rclone-cli/references/commands/rclone_sha1sum.md +99 -0
  491. package/bundled-skills/rclone-cli/references/commands/rclone_size.md +94 -0
  492. package/bundled-skills/rclone-cli/references/commands/rclone_sync.md +252 -0
  493. package/bundled-skills/rclone-cli/references/commands/rclone_test.md +51 -0
  494. package/bundled-skills/rclone-cli/references/commands/rclone_test_changenotify.md +34 -0
  495. package/bundled-skills/rclone-cli/references/commands/rclone_test_histogram.md +41 -0
  496. package/bundled-skills/rclone-cli/references/commands/rclone_test_info.md +51 -0
  497. package/bundled-skills/rclone-cli/references/commands/rclone_test_makefile.md +39 -0
  498. package/bundled-skills/rclone-cli/references/commands/rclone_test_makefiles.md +47 -0
  499. package/bundled-skills/rclone-cli/references/commands/rclone_test_memory.md +33 -0
  500. package/bundled-skills/rclone-cli/references/commands/rclone_test_speed.md +66 -0
  501. package/bundled-skills/rclone-cli/references/commands/rclone_touch.md +110 -0
  502. package/bundled-skills/rclone-cli/references/commands/rclone_tree.md +121 -0
  503. package/bundled-skills/rclone-cli/references/commands/rclone_version.md +83 -0
  504. package/bundled-skills/rclone-cli/references/crypt.md +844 -0
  505. package/bundled-skills/rclone-cli/references/docker.md +615 -0
  506. package/bundled-skills/rclone-cli/references/faq.md +364 -0
  507. package/bundled-skills/rclone-cli/references/filtering.md +991 -0
  508. package/bundled-skills/rclone-cli/references/flags.md +1221 -0
  509. package/bundled-skills/rclone-cli/references/hasher.md +383 -0
  510. package/bundled-skills/rclone-cli/references/install.md +686 -0
  511. package/bundled-skills/rclone-cli/references/overview.md +620 -0
  512. package/bundled-skills/rclone-cli/references/providers/alias.md +141 -0
  513. package/bundled-skills/rclone-cli/references/providers/archive.md +287 -0
  514. package/bundled-skills/rclone-cli/references/providers/azureblob.md +1140 -0
  515. package/bundled-skills/rclone-cli/references/providers/azurefiles.md +834 -0
  516. package/bundled-skills/rclone-cli/references/providers/b2.md +879 -0
  517. package/bundled-skills/rclone-cli/references/providers/box.md +573 -0
  518. package/bundled-skills/rclone-cli/references/providers/cloudinary.md +259 -0
  519. package/bundled-skills/rclone-cli/references/providers/compress.md +222 -0
  520. package/bundled-skills/rclone-cli/references/providers/drime.md +319 -0
  521. package/bundled-skills/rclone-cli/references/providers/drive.md +2032 -0
  522. package/bundled-skills/rclone-cli/references/providers/dropbox.md +661 -0
  523. package/bundled-skills/rclone-cli/references/providers/fichier.md +230 -0
  524. package/bundled-skills/rclone-cli/references/providers/filefabric.md +298 -0
  525. package/bundled-skills/rclone-cli/references/providers/filelu.md +256 -0
  526. package/bundled-skills/rclone-cli/references/providers/filen.md +243 -0
  527. package/bundled-skills/rclone-cli/references/providers/filescom.md +209 -0
  528. package/bundled-skills/rclone-cli/references/providers/ftp.md +621 -0
  529. package/bundled-skills/rclone-cli/references/providers/gofile.md +274 -0
  530. package/bundled-skills/rclone-cli/references/providers/googlecloudstorage.md +846 -0
  531. package/bundled-skills/rclone-cli/references/providers/googlephotos.md +676 -0
  532. package/bundled-skills/rclone-cli/references/providers/hdfs.md +263 -0
  533. package/bundled-skills/rclone-cli/references/providers/hidrive.md +487 -0
  534. package/bundled-skills/rclone-cli/references/providers/http.md +323 -0
  535. package/bundled-skills/rclone-cli/references/providers/iclouddrive.md +212 -0
  536. package/bundled-skills/rclone-cli/references/providers/internetarchive.md +355 -0
  537. package/bundled-skills/rclone-cli/references/providers/internxt.md +189 -0
  538. package/bundled-skills/rclone-cli/references/providers/jottacloud.md +604 -0
  539. package/bundled-skills/rclone-cli/references/providers/koofr.md +395 -0
  540. package/bundled-skills/rclone-cli/references/providers/linkbox.md +117 -0
  541. package/bundled-skills/rclone-cli/references/providers/local.md +749 -0
  542. package/bundled-skills/rclone-cli/references/providers/mailru.md +470 -0
  543. package/bundled-skills/rclone-cli/references/providers/mega.md +361 -0
  544. package/bundled-skills/rclone-cli/references/providers/memory.md +109 -0
  545. package/bundled-skills/rclone-cli/references/providers/netstorage.md +371 -0
  546. package/bundled-skills/rclone-cli/references/providers/onedrive.md +1322 -0
  547. package/bundled-skills/rclone-cli/references/providers/opendrive.md +222 -0
  548. package/bundled-skills/rclone-cli/references/providers/oracleobjectstorage/_index.md +932 -0
  549. package/bundled-skills/rclone-cli/references/providers/oracleobjectstorage/tutorial_mount.md +503 -0
  550. package/bundled-skills/rclone-cli/references/providers/pcloud.md +373 -0
  551. package/bundled-skills/rclone-cli/references/providers/pikpak.md +373 -0
  552. package/bundled-skills/rclone-cli/references/providers/pixeldrain.md +182 -0
  553. package/bundled-skills/rclone-cli/references/providers/premiumizeme.md +253 -0
  554. package/bundled-skills/rclone-cli/references/providers/protondrive.md +397 -0
  555. package/bundled-skills/rclone-cli/references/providers/putio.md +246 -0
  556. package/bundled-skills/rclone-cli/references/providers/qingstor.md +346 -0
  557. package/bundled-skills/rclone-cli/references/providers/quatrix.md +295 -0
  558. package/bundled-skills/rclone-cli/references/providers/s3.md +9687 -0
  559. package/bundled-skills/rclone-cli/references/providers/seafile.md +432 -0
  560. package/bundled-skills/rclone-cli/references/providers/sftp.md +1277 -0
  561. package/bundled-skills/rclone-cli/references/providers/shade.md +267 -0
  562. package/bundled-skills/rclone-cli/references/providers/sharefile.md +357 -0
  563. package/bundled-skills/rclone-cli/references/providers/sia.md +223 -0
  564. package/bundled-skills/rclone-cli/references/providers/smb.md +309 -0
  565. package/bundled-skills/rclone-cli/references/providers/storj.md +503 -0
  566. package/bundled-skills/rclone-cli/references/providers/sugarsync.md +305 -0
  567. package/bundled-skills/rclone-cli/references/providers/swift.md +744 -0
  568. package/bundled-skills/rclone-cli/references/providers/ulozto.md +283 -0
  569. package/bundled-skills/rclone-cli/references/providers/webdav.md +565 -0
  570. package/bundled-skills/rclone-cli/references/providers/yandex.md +283 -0
  571. package/bundled-skills/rclone-cli/references/providers/zoho.md +305 -0
  572. package/bundled-skills/rclone-cli/references/rc.md +2725 -0
  573. package/bundled-skills/rclone-cli/references/union.md +336 -0
  574. package/bundled-skills/rclone-cli/references/usage.md +3555 -0
  575. package/bundled-skills/rclone-cli/scripts/install.sh +204 -0
  576. package/bundled-skills/redis-cli/SKILL.md +392 -0
  577. package/bundled-skills/redis-cli/references/advanced-features.md +338 -0
  578. package/bundled-skills/redis-cli/references/connection-and-options.md +258 -0
  579. package/bundled-skills/redis-cli/references/data-query-commands.md +417 -0
  580. package/bundled-skills/redis-cli/references/inspection-and-monitoring.md +309 -0
  581. package/bundled-skills/redis-cli/references/key-management.md +252 -0
  582. package/bundled-skills/redis-cli/references/module-data-types.md +429 -0
  583. package/bundled-skills/redis-cli/references/server-administration.md +366 -0
  584. package/bundled-skills/repo-maintainer/SKILL.md +480 -0
  585. package/bundled-skills/resolving-merge-conflicts/SKILL.md +32 -0
  586. package/bundled-skills/review-and-simplify-changes/SKILL.md +202 -0
  587. package/bundled-skills/review-swarm/SKILL.md +185 -0
  588. package/bundled-skills/review-swarm/agents/openai.yaml +4 -0
  589. package/bundled-skills/riffkit/SKILL.md +122 -0
  590. package/bundled-skills/robot-framework-skill/SKILL.md +153 -0
  591. package/bundled-skills/sdk-dx/README.md +39 -0
  592. package/bundled-skills/sdk-dx/SKILL.md +541 -0
  593. package/bundled-skills/security-and-hardening/SKILL.md +474 -0
  594. package/bundled-skills/selenium-skill/SKILL.md +258 -0
  595. package/bundled-skills/shipping-and-launch/SKILL.md +323 -0
  596. package/bundled-skills/smartui-skill/SKILL.md +149 -0
  597. package/bundled-skills/source-driven-development/SKILL.md +207 -0
  598. package/bundled-skills/spec-driven-development/SKILL.md +217 -0
  599. package/bundled-skills/styleseed-design-review/SKILL.md +126 -0
  600. package/bundled-skills/supabase/CHANGELOG.md +35 -0
  601. package/bundled-skills/supabase/SKILL.md +149 -0
  602. package/bundled-skills/supabase/assets/feedback-issue-template.md +17 -0
  603. package/bundled-skills/supabase/references/skill-feedback.md +17 -0
  604. package/bundled-skills/supabase-postgres-best-practices/CHANGELOG.md +29 -0
  605. package/bundled-skills/supabase-postgres-best-practices/SKILL.md +74 -0
  606. package/bundled-skills/supabase-postgres-best-practices/references/_contributing.md +170 -0
  607. package/bundled-skills/supabase-postgres-best-practices/references/_sections.md +39 -0
  608. package/bundled-skills/supabase-postgres-best-practices/references/_template.md +34 -0
  609. package/bundled-skills/supabase-postgres-best-practices/references/advanced-full-text-search.md +55 -0
  610. package/bundled-skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md +49 -0
  611. package/bundled-skills/supabase-postgres-best-practices/references/conn-idle-timeout.md +46 -0
  612. package/bundled-skills/supabase-postgres-best-practices/references/conn-limits.md +44 -0
  613. package/bundled-skills/supabase-postgres-best-practices/references/conn-pooling.md +41 -0
  614. package/bundled-skills/supabase-postgres-best-practices/references/conn-prepared-statements.md +46 -0
  615. package/bundled-skills/supabase-postgres-best-practices/references/data-batch-inserts.md +54 -0
  616. package/bundled-skills/supabase-postgres-best-practices/references/data-n-plus-one.md +53 -0
  617. package/bundled-skills/supabase-postgres-best-practices/references/data-pagination.md +50 -0
  618. package/bundled-skills/supabase-postgres-best-practices/references/data-upsert.md +50 -0
  619. package/bundled-skills/supabase-postgres-best-practices/references/lock-advisory.md +56 -0
  620. package/bundled-skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md +68 -0
  621. package/bundled-skills/supabase-postgres-best-practices/references/lock-short-transactions.md +50 -0
  622. package/bundled-skills/supabase-postgres-best-practices/references/lock-skip-locked.md +54 -0
  623. package/bundled-skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md +45 -0
  624. package/bundled-skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md +55 -0
  625. package/bundled-skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md +55 -0
  626. package/bundled-skills/supabase-postgres-best-practices/references/query-composite-indexes.md +44 -0
  627. package/bundled-skills/supabase-postgres-best-practices/references/query-covering-indexes.md +40 -0
  628. package/bundled-skills/supabase-postgres-best-practices/references/query-index-types.md +48 -0
  629. package/bundled-skills/supabase-postgres-best-practices/references/query-missing-indexes.md +43 -0
  630. package/bundled-skills/supabase-postgres-best-practices/references/query-partial-indexes.md +45 -0
  631. package/bundled-skills/supabase-postgres-best-practices/references/schema-constraints.md +80 -0
  632. package/bundled-skills/supabase-postgres-best-practices/references/schema-data-types.md +46 -0
  633. package/bundled-skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md +59 -0
  634. package/bundled-skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md +55 -0
  635. package/bundled-skills/supabase-postgres-best-practices/references/schema-partitioning.md +55 -0
  636. package/bundled-skills/supabase-postgres-best-practices/references/schema-primary-keys.md +61 -0
  637. package/bundled-skills/supabase-postgres-best-practices/references/security-privileges.md +54 -0
  638. package/bundled-skills/supabase-postgres-best-practices/references/security-rls-basics.md +50 -0
  639. package/bundled-skills/supabase-postgres-best-practices/references/security-rls-performance.md +63 -0
  640. package/bundled-skills/swiftui-expert-skill/SKILL.md +175 -242
  641. package/bundled-skills/swiftui-expert-skill/references/accessibility-patterns.md +215 -0
  642. package/bundled-skills/swiftui-expert-skill/references/animation-advanced.md +428 -0
  643. package/bundled-skills/swiftui-expert-skill/references/animation-basics.md +284 -0
  644. package/bundled-skills/swiftui-expert-skill/references/animation-transitions.md +326 -0
  645. package/bundled-skills/swiftui-expert-skill/references/charts-accessibility.md +135 -0
  646. package/bundled-skills/swiftui-expert-skill/references/charts.md +602 -0
  647. package/bundled-skills/swiftui-expert-skill/references/focus-patterns.md +299 -0
  648. package/bundled-skills/swiftui-expert-skill/references/image-optimization.md +203 -0
  649. package/bundled-skills/swiftui-expert-skill/references/latest-apis.md +528 -0
  650. package/bundled-skills/swiftui-expert-skill/references/layout-best-practices.md +266 -0
  651. package/bundled-skills/swiftui-expert-skill/references/liquid-glass.md +423 -0
  652. package/bundled-skills/swiftui-expert-skill/references/list-patterns.md +467 -0
  653. package/bundled-skills/swiftui-expert-skill/references/localization.md +194 -0
  654. package/bundled-skills/swiftui-expert-skill/references/macos-scenes.md +318 -0
  655. package/bundled-skills/swiftui-expert-skill/references/macos-views.md +357 -0
  656. package/bundled-skills/swiftui-expert-skill/references/macos-window-styling.md +303 -0
  657. package/bundled-skills/swiftui-expert-skill/references/performance-patterns.md +417 -0
  658. package/bundled-skills/swiftui-expert-skill/references/previews.md +313 -0
  659. package/bundled-skills/swiftui-expert-skill/references/scroll-patterns.md +293 -0
  660. package/bundled-skills/swiftui-expert-skill/references/sheet-navigation-patterns.md +363 -0
  661. package/bundled-skills/swiftui-expert-skill/references/soft-deprecation.md +39 -0
  662. package/bundled-skills/swiftui-expert-skill/references/state-management.md +492 -0
  663. package/bundled-skills/swiftui-expert-skill/references/text-patterns.md +34 -0
  664. package/bundled-skills/swiftui-expert-skill/references/trace-analysis.md +295 -0
  665. package/bundled-skills/swiftui-expert-skill/references/trace-recording.md +134 -0
  666. package/bundled-skills/swiftui-expert-skill/references/view-structure.md +854 -0
  667. package/bundled-skills/swiftui-expert-skill/scripts/analyze_trace.py +301 -0
  668. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/__init__.py +1 -0
  669. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/causes.py +187 -0
  670. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/correlate.py +179 -0
  671. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/events.py +291 -0
  672. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/hangs.py +108 -0
  673. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/hitches.py +145 -0
  674. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/summary.py +243 -0
  675. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/swiftui.py +195 -0
  676. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/time_profiler.py +135 -0
  677. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/xctrace.py +117 -0
  678. package/bundled-skills/swiftui-expert-skill/scripts/instruments_parser/xml_utils.py +224 -0
  679. package/bundled-skills/swiftui-expert-skill/scripts/record_trace.py +252 -0
  680. package/bundled-skills/technical-tutorials/README.md +90 -0
  681. package/bundled-skills/technical-tutorials/SKILL.md +581 -0
  682. package/bundled-skills/test-framework-migration-skill/SKILL.md +122 -0
  683. package/bundled-skills/testng-skill/SKILL.md +163 -0
  684. package/bundled-skills/train-sentence-transformers/SKILL.md +118 -0
  685. package/bundled-skills/train-sentence-transformers/references/base_model_selection.md +79 -0
  686. package/bundled-skills/train-sentence-transformers/references/dataset_formats.md +128 -0
  687. package/bundled-skills/train-sentence-transformers/references/evaluators_cross_encoder.md +116 -0
  688. package/bundled-skills/train-sentence-transformers/references/evaluators_sentence_transformer.md +151 -0
  689. package/bundled-skills/train-sentence-transformers/references/evaluators_sparse_encoder.md +121 -0
  690. package/bundled-skills/train-sentence-transformers/references/hardware_guide.md +105 -0
  691. package/bundled-skills/train-sentence-transformers/references/hf_jobs_execution.md +173 -0
  692. package/bundled-skills/train-sentence-transformers/references/losses_cross_encoder.md +137 -0
  693. package/bundled-skills/train-sentence-transformers/references/losses_sentence_transformer.md +246 -0
  694. package/bundled-skills/train-sentence-transformers/references/losses_sparse_encoder.md +106 -0
  695. package/bundled-skills/train-sentence-transformers/references/model_architectures.md +178 -0
  696. package/bundled-skills/train-sentence-transformers/references/prompts_and_instructions.md +160 -0
  697. package/bundled-skills/train-sentence-transformers/references/training_args.md +269 -0
  698. package/bundled-skills/train-sentence-transformers/references/troubleshooting.md +225 -0
  699. package/bundled-skills/train-sentence-transformers/scripts/mine_hard_negatives.py +199 -0
  700. package/bundled-skills/train-sentence-transformers/scripts/train_cross_encoder_distillation_example.py +254 -0
  701. package/bundled-skills/train-sentence-transformers/scripts/train_cross_encoder_example.py +253 -0
  702. package/bundled-skills/train-sentence-transformers/scripts/train_cross_encoder_listwise_example.py +282 -0
  703. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_distillation_example.py +303 -0
  704. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_example.py +227 -0
  705. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_make_multilingual_example.py +308 -0
  706. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_matryoshka_example.py +212 -0
  707. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_multi_dataset_example.py +258 -0
  708. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_static_embedding_example.py +273 -0
  709. package/bundled-skills/train-sentence-transformers/scripts/train_sentence_transformer_with_lora_example.py +275 -0
  710. package/bundled-skills/train-sentence-transformers/scripts/train_sparse_encoder_distillation_example.py +262 -0
  711. package/bundled-skills/train-sentence-transformers/scripts/train_sparse_encoder_example.py +237 -0
  712. package/bundled-skills/transformers-js/SKILL.md +83 -29
  713. package/bundled-skills/transformers-js/references/CONFIGURATION.md +55 -7
  714. package/bundled-skills/transformers-js/references/EXAMPLES.md +98 -83
  715. package/bundled-skills/transformers-js/references/MODEL_REGISTRY.md +197 -0
  716. package/bundled-skills/transformers-js/references/PIPELINE_OPTIONS.md +31 -19
  717. package/bundled-skills/transformers-js/references/TEXT_GENERATION.md +18 -18
  718. package/bundled-skills/trl-training/SKILL.md +327 -0
  719. package/bundled-skills/tune-monitor/SKILL.md +268 -0
  720. package/bundled-skills/ui-a11y/SKILL.md +76 -68
  721. package/bundled-skills/ui-component/SKILL.md +54 -82
  722. package/bundled-skills/ui-lint/SKILL.md +111 -0
  723. package/bundled-skills/ui-motion/SKILL.md +181 -0
  724. package/bundled-skills/ui-page/SKILL.md +80 -90
  725. package/bundled-skills/ui-pattern/SKILL.md +50 -68
  726. package/bundled-skills/ui-review/SKILL.md +95 -77
  727. package/bundled-skills/ui-score/SKILL.md +145 -0
  728. package/bundled-skills/ui-setup/SKILL.md +196 -88
  729. package/bundled-skills/ui-skills-root/SKILL.md +72 -0
  730. package/bundled-skills/ui-tokens/SKILL.md +44 -52
  731. package/bundled-skills/ui-update/SKILL.md +167 -0
  732. package/bundled-skills/unslop-commit/SKILL.md +113 -0
  733. package/bundled-skills/unslop-file/SKILL.md +157 -0
  734. package/bundled-skills/unslop-review/SKILL.md +102 -0
  735. package/bundled-skills/update-swiftui-apis/SKILL.md +120 -0
  736. package/bundled-skills/update-swiftui-apis/references/scan-manifest.md +230 -0
  737. package/bundled-skills/upgrading-expo/SKILL.md +107 -82
  738. package/bundled-skills/upgrading-expo/agents/openai.yaml +4 -0
  739. package/bundled-skills/upgrading-expo/references/expo-av-to-audio.md +132 -0
  740. package/bundled-skills/upgrading-expo/references/expo-av-to-video.md +160 -0
  741. package/bundled-skills/upgrading-expo/references/native-tabs.md +124 -0
  742. package/bundled-skills/upgrading-expo/references/new-architecture.md +79 -0
  743. package/bundled-skills/upgrading-expo/references/react-19.md +79 -0
  744. package/bundled-skills/upgrading-expo/references/react-compiler.md +59 -0
  745. package/bundled-skills/upgrading-expo/references/react-navigation-to-expo-router.md +61 -0
  746. package/bundled-skills/usage-based-pricing/README.md +40 -0
  747. package/bundled-skills/usage-based-pricing/SKILL.md +547 -0
  748. package/bundled-skills/use-dom/SKILL.md +428 -0
  749. package/bundled-skills/use-dom/agents/openai.yaml +4 -0
  750. package/bundled-skills/ux-audit/SKILL.md +112 -44
  751. package/bundled-skills/ux-copy/SKILL.md +105 -73
  752. package/bundled-skills/ux-feedback/SKILL.md +106 -58
  753. package/bundled-skills/ux-flow/SKILL.md +51 -50
  754. package/bundled-skills/vitest-skill/SKILL.md +165 -0
  755. package/bundled-skills/weaviate/scripts/weaviate_conn.py +16 -6
  756. package/bundled-skills/webdriverio-skill/SKILL.md +157 -0
  757. package/bundled-skills/wjttc-builder/SKILL.md +355 -0
  758. package/bundled-skills/wjttc-tester/SKILL.md +190 -0
  759. package/package.json +1 -1
  760. package/skills_index.json +4320 -132
@@ -0,0 +1,163 @@
1
+ ---
2
+ name: testng-skill
3
+ description: 'Generates TestNG tests in Java with groups, data providers, parallel execution, XML suite configuration, and listeners. Use when user mentions "TestNG", "@DataProvider", "testng.xml", "groups". Triggers on: "TestNG", "@DataProvider", "testng.xml", "TestNG suite", "parallel tests Java".'
4
+ risk: unknown
5
+ source: https://github.com/LambdaTest/agent-skills/tree/main/testng-skill
6
+ source_repo: LambdaTest/agent-skills
7
+ source_type: community
8
+ date_added: 2026-07-01
9
+ license: MIT
10
+ license_source: https://github.com/LambdaTest/agent-skills/blob/main/LICENSE
11
+ ---
12
+
13
+ # TestNG Testing Skill
14
+ ## When to Use
15
+
16
+ Use this skill when you need generates TestNG tests in Java with groups, data providers, parallel execution, XML suite configuration, and listeners. Use when user mentions "TestNG", "@DataProvider", "testng.xml", "groups". Triggers on: "TestNG", "@DataProvider", "testng.xml", "TestNG suite", "parallel tests Java".
17
+
18
+
19
+ ## Core Patterns
20
+
21
+ ### Basic Test with Groups
22
+
23
+ ```java
24
+ import org.testng.annotations.*;
25
+ import org.testng.Assert;
26
+
27
+ public class LoginTest {
28
+ @BeforeMethod
29
+ public void setUp() { /* setup */ }
30
+
31
+ @Test(groups = "smoke")
32
+ public void testLoginSuccess() {
33
+ Assert.assertTrue(loginService.login("user@test.com", "password123"));
34
+ }
35
+
36
+ @Test(groups = "regression", dependsOnMethods = "testLoginSuccess")
37
+ public void testAccessDashboard() {
38
+ Assert.assertNotNull(dashboard.getContent());
39
+ }
40
+
41
+ @Test(expectedExceptions = AuthenticationException.class)
42
+ public void testLoginInvalidPassword() {
43
+ loginService.login("user@test.com", "wrong");
44
+ }
45
+
46
+ @AfterMethod
47
+ public void tearDown() { /* cleanup */ }
48
+ }
49
+ ```
50
+
51
+ ### Data Providers
52
+
53
+ ```java
54
+ @DataProvider(name = "loginData")
55
+ public Object[][] loginData() {
56
+ return new Object[][] {
57
+ {"admin@test.com", "admin123", true},
58
+ {"user@test.com", "password", true},
59
+ {"invalid@test.com", "wrong", false},
60
+ };
61
+ }
62
+
63
+ @Test(dataProvider = "loginData")
64
+ public void testLogin(String email, String password, boolean expected) {
65
+ Assert.assertEquals(loginService.login(email, password), expected);
66
+ }
67
+ ```
68
+
69
+ ### TestNG XML Suite
70
+
71
+ ```xml
72
+ <!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
73
+ <suite name="Regression" parallel="tests" thread-count="5">
74
+ <test name="Smoke">
75
+ <groups><run><include name="smoke"/></run></groups>
76
+ <classes><class name="tests.LoginTest"/></classes>
77
+ </test>
78
+ <test name="Full">
79
+ <groups><run><include name="regression"/><exclude name="flaky"/></run></groups>
80
+ <packages><package name="tests.*"/></packages>
81
+ </test>
82
+ </suite>
83
+ ```
84
+
85
+ ### Parallel Execution
86
+
87
+ ```xml
88
+ <suite parallel="methods" thread-count="5"> <!-- Method level -->
89
+ <suite parallel="classes" thread-count="5"> <!-- Class level -->
90
+ <suite parallel="tests" thread-count="5"> <!-- Test level -->
91
+ ```
92
+
93
+ ### Soft Assertions
94
+
95
+ ```java
96
+ SoftAssert soft = new SoftAssert();
97
+ soft.assertEquals(user.getName(), "Alice");
98
+ soft.assertEquals(user.getAge(), 25);
99
+ soft.assertTrue(user.isActive());
100
+ soft.assertAll(); // Reports all failures at once
101
+ ```
102
+
103
+ ### Listeners
104
+
105
+ ```java
106
+ public class TestListener implements ITestListener {
107
+ @Override public void onTestFailure(ITestResult result) {
108
+ System.out.println("Failed: " + result.getName());
109
+ // Take screenshot, log, etc.
110
+ }
111
+ }
112
+
113
+ @Listeners(TestListener.class)
114
+ public class LoginTest { /* ... */ }
115
+ ```
116
+
117
+ ### Lifecycle Annotations
118
+
119
+ ```
120
+ @BeforeSuite → @BeforeTest → @BeforeClass → @BeforeMethod → @Test → @AfterMethod → @AfterClass → @AfterTest → @AfterSuite
121
+ ```
122
+
123
+ ### Anti-Patterns
124
+
125
+ | Bad | Good | Why |
126
+ |-----|------|-----|
127
+ | `dependsOnMethods` everywhere | Independent tests | Cascading failures |
128
+ | No groups | `@Test(groups = "smoke")` | Can't run subsets |
129
+ | Hard-coded test data | `@DataProvider` | Reusable |
130
+ | Priority ordering | Independent tests | Fragile |
131
+
132
+ ## Quick Reference
133
+
134
+ | Task | Command |
135
+ |------|---------|
136
+ | Run suite | `mvn test -DsuiteXmlFile=testng.xml` |
137
+ | Run group | `mvn test -Dgroups=smoke` |
138
+ | Run class | `mvn test -Dtest=LoginTest` |
139
+ | Reports | `test-output/index.html` |
140
+
141
+ ## Deep Patterns → `reference/playbook.md`
142
+
143
+ | § | Section | Lines |
144
+ |---|---------|-------|
145
+ | 1 | Project Setup & Configuration | Maven + Surefire config |
146
+ | 2 | Suite XML Configuration | Multi-env, parallel, groups |
147
+ | 3 | BaseTest & Thread-Safe Driver | ThreadLocal, ConfigReader |
148
+ | 4 | Data Providers (Advanced) | Excel, JSON, CSV, parallel, cross-class |
149
+ | 5 | Factory Pattern | Cross-browser matrix |
150
+ | 6 | Listeners (Production Suite) | Retry, screenshot, timing |
151
+ | 7 | Soft Assertions & Dependencies | Groups, method deps |
152
+ | 8 | Page Object Integration | PageFactory, fluent POs |
153
+ | 9 | Parallel Execution Strategies | Method/class/test/mixed |
154
+ | 10 | Reporting Integration | Allure, ExtentReports |
155
+ | 11 | CI/CD Integration | GitHub Actions, Jenkins |
156
+ | 12 | Debugging Quick-Reference | 12 common problems |
157
+ | 13 | Best Practices Checklist | 14 items |
158
+
159
+ ## Limitations
160
+
161
+ - Use this skill only when the task clearly matches its upstream source and local project context.
162
+ - Verify commands, generated code, dependencies, credentials, and external service behavior before applying changes.
163
+ - Do not treat examples as a substitute for environment-specific tests, security review, or user approval for destructive or costly actions.
@@ -0,0 +1,118 @@
1
+ ---
2
+ name: train-sentence-transformers
3
+ description: Train or fine-tune sentence-transformers models across `SentenceTransformer` (bi-encoder; dense or static embedding model; for retrieval, similarity, clustering, classification, paraphrase mining, dedup, multimodal), `CrossEncoder` (reranker; pair scoring for two-stage retrieval / pair...
4
+ risk: unknown
5
+ source: https://github.com/huggingface/skills/tree/main/skills/train-sentence-transformers
6
+ source_repo: huggingface/skills
7
+ source_type: official
8
+ date_added: 2026-07-01
9
+ license: Apache-2.0
10
+ license_source: https://github.com/huggingface/skills/blob/main/LICENSE
11
+ ---
12
+
13
+ # Train a sentence-transformers Model
14
+ ## When to Use
15
+
16
+ Use this skill when you need train or fine-tune sentence-transformers models across `SentenceTransformer` (bi-encoder; dense or static embedding model; for retrieval, similarity, clustering, classification, paraphrase mining, dedup, multimodal), `CrossEncoder` (reranker; pair scoring for two-stage retrieval / pair...
17
+
18
+
19
+ **This SKILL.md is a router, not a manual.** It tells you which references and example scripts to load for your task. The actual content — recommended losses, evaluators, training-script structure, model selection, training-arg knobs, troubleshooting — lives in `references/` and `scripts/`.
20
+
21
+ **Do not synthesize a training script from this file alone.** Open the per-type production template (`scripts/train_<type>_example.py`) and copy it as your starting point. The templates contain load-bearing scaffolding (autocast helper, model-card class, logger silencing list, `force=True`, `seed`, TF32, version-compatible imports, named-evaluator metric handling) that prior agent runs have repeatedly missed when rolling their own from a synthesized snippet.
22
+
23
+ ## 1. Identify the model type
24
+
25
+ | Tag | Class | What it does | When to pick |
26
+ |---|---|---|---|
27
+ | **[SentenceTransformer]** | `SentenceTransformer` (bi-encoder) | Maps each input to a fixed-dim dense vector | Retrieval, similarity, clustering, classification, paraphrase mining, dedup |
28
+ | **[CrossEncoder]** | `CrossEncoder` (reranker) | Scores `(query, passage)` pairs jointly | Two-stage retrieval (rerank top-100 from bi-encoder), pair classification |
29
+ | **[SparseEncoder]** | `SparseEncoder` (SPLADE) | Sparse vectors over the vocabulary | Learned-sparse retrieval, inverted-index backends (Elasticsearch / OpenSearch / Lucene) |
30
+
31
+ Tiebreakers when the request is ambiguous: "embedding model" / "vector search" / "similarity" → **[SentenceTransformer]**. "rerank" / "ranker" / "two-stage" → **[CrossEncoder]**. "SPLADE" / "sparse" / "inverted index" → **[SparseEncoder]**. If still unclear, ask.
32
+
33
+ ## 2. Required reading
34
+
35
+ **Read these in full before writing any code. Do not triage by perceived relevance.**
36
+
37
+ ### Per-type — always required
38
+
39
+ **[SentenceTransformer]**
40
+ - `references/losses_sentence_transformer.md` — loss-to-data-shape mapping; `BatchSamplers.NO_DUPLICATES` requirement for MNRL-family; `Cached*` ↔ `gradient_checkpointing` incompatibility.
41
+ - `references/evaluators_sentence_transformer.md` — evaluator-to-task mapping; `metric_for_best_model` key construction (named vs unnamed); per-evaluator `primary_metric` values.
42
+ - `references/model_architectures.md` — encoder vs decoder vs static vs Router pipelines; pooling rules (mean / cls / lasttoken); auto-mean-pooling behavior for fresh-start MLM bases.
43
+ - `scripts/train_sentence_transformer_example.py` — production template; copy this as your starting point.
44
+
45
+ **[CrossEncoder]**
46
+ - `references/losses_cross_encoder.md` — pointwise / pairwise / listwise / distillation; `pos_weight` derivation; `activation_fn=Identity()` mandatory for non-BCE losses (silent eval-rank collapse otherwise).
47
+ - `references/evaluators_cross_encoder.md` — `CrossEncoderRerankingEvaluator` recipe; named-evaluator key format `eval_{name}_{primary_metric}`.
48
+ - `scripts/train_cross_encoder_example.py` — production template; copy this as your starting point.
49
+
50
+ **[SparseEncoder]**
51
+ - `references/losses_sparse_encoder.md` — `SpladeLoss` wrapper requirement; FLOPS regularizer weights; smoke-test active-dim ramp behavior.
52
+ - `references/evaluators_sparse_encoder.md` — `SparseNanoBEIREvaluator` (English-only) and the in-domain alternative; `eval_{name}_{primary_metric}` key format.
53
+ - `scripts/train_sparse_encoder_example.py` — production template; copy this as your starting point.
54
+
55
+ ### Cross-cutting — always required (regardless of task)
56
+
57
+ - `references/training_args.md` — `TrainingArguments` knobs, precision rules (load fp32 + autocast bf16/fp16; never `torch_dtype=bfloat16`), `warmup_steps` (float) vs deprecated `warmup_ratio`, `save_steps` must be a multiple of `eval_steps` for `load_best_model_at_end`, schedulers, HPO, tracker, resume, hub-push variants.
58
+ - `references/dataset_formats.md` — column-matching rules (label name auto-detection; column-order-not-name); reshaping recipes; hard-negative mining options.
59
+ - `references/base_model_selection.md` — discovery commands; per-type model namespaces; ModernBERT-family `max_seq_length=8192` trap; `datasets >= 4` script-loader rejection; non-English starting-point shortcuts.
60
+ - `references/troubleshooting.md` — symptom-indexed failure recipes. Skim the section headings on every run, even a healthy one; the "Metrics don't improve" and "Hub push fails" entries cover bugs that bite frequently and are cheaper to recognize before they fire than to debug after.
61
+
62
+ ### Cross-cutting — load when applicable
63
+
64
+ - `references/hardware_guide.md` — VRAM sizing, multi-GPU, FSDP / DeepSpeed, HF Jobs flavors. Required for >24GB models, multi-GPU, or HF Jobs runs.
65
+ - `references/hf_jobs_execution.md` — required when running on HF Jobs.
66
+ - `references/prompts_and_instructions.md` — required when using prompt-tuned bases (E5, BGE, GTE, Qwen3-Embedding, Instructor, Nomic, etc.) or adding `query: ` / `passage: ` style prefixes.
67
+
68
+ ### Variant scripts (open when the task matches)
69
+ - **[SentenceTransformer]** `scripts/train_sentence_transformer_<matryoshka|multi_dataset|with_lora|distillation|make_multilingual|static_embedding>_example.py`.
70
+ - **[CrossEncoder]** `scripts/train_cross_encoder_<distillation|listwise>_example.py`.
71
+ - **[SparseEncoder]** `scripts/train_sparse_encoder_distillation_example.py`.
72
+ - Hard-negative mining CLI — `scripts/mine_hard_negatives.py`.
73
+
74
+ ## 3. Defaults
75
+
76
+ Override only if the user specifies otherwise:
77
+ - **Local execution.** Pitch HF Jobs only if local hardware can't fit the job.
78
+ - **Single run.** After it completes, propose experimentation if the user would benefit (weak/marginal verdict, "see how high you can push it" framing, etc.). Iteration rules in `references/training_args.md` (Experimentation section).
79
+ - **Public Hub push at end-of-run, wrapped in try-except.** On HF Jobs (ephemeral env) ALSO enable in-trainer push (`push_to_hub=True` + `hub_strategy="every_save"`); details in `references/hf_jobs_execution.md`.
80
+
81
+ ## 4. Constraints the produced script must satisfy
82
+
83
+ These are non-negotiable contracts. Implementation lives in the production templates and references — do not reinvent.
84
+
85
+ - Capture the pre-training evaluator score as `baseline_eval` **before** `trainer.train()`.
86
+ - Emit a single end-of-run line: `VERDICT: WIN|MARGINAL|REGRESSION | score=... | baseline=... | delta=...`. A monitor scrapes for this.
87
+ - Silence `httpx`, `httpcore`, `huggingface_hub`, `urllib3`, `filelock`, `fsspec` to WARNING (otherwise HF download URLs flood the agent's context).
88
+ - Tee logs to `logs/{RUN_NAME}.log`.
89
+ - End with `model.push_to_hub(...)` wrapped in `try/except`.
90
+ - Smoke-test before any long run (`max_steps=1` + tiny dataset slice). The production templates show one common pattern (`SMOKE_TEST` env var).
91
+ - **[CrossEncoder]** Include `EarlyStoppingCallback(patience>=3)` — CE rerankers often peak mid-training and regress.
92
+ - **[SparseEncoder]** Log `query_active_dims` / `corpus_active_dims` on the verdict line; high nDCG with collapsed sparsity is not a win. The keys come back name-prefixed (e.g. `..._query_active_dims`); use suffix matching to pluck them — see the SPARSE production template for the exact pattern.
93
+
94
+ ## 5. Workflow
95
+
96
+ 1. Identify the model type (§1). Ask if ambiguous.
97
+ 2. Load the §2 required-reading files for that type.
98
+ 3. Open `scripts/train_<type>_example.py` and copy it as your starting point.
99
+ 4. Replace `MODEL_NAME`, `DATASET_NAME`, `RUN_NAME`, the loss, and the evaluator with the user's task. Cross-check loss/data-shape match against `references/losses_<type>.md`; cross-check the `metric_for_best_model` key against `references/evaluators_<type>.md` (named evaluators format the key as `eval_{name}_{primary_metric}`).
100
+ 5. Smoke-test (`max_steps=1`).
101
+ 6. Run.
102
+ 7. After the run, append to `logs/experiments.md` and propose iteration if the verdict is weak/marginal.
103
+
104
+ ## Prerequisites
105
+
106
+ ```bash
107
+ pip install "sentence-transformers[train]>=5.0" # add [train,image] / [audio] / [video] for [SentenceTransformer] multimodal
108
+ pip install trackio # optional tracker; or wandb / tensorboard / mlflow
109
+ hf auth login # or set HF_TOKEN with write scope (for Hub push)
110
+ ```
111
+
112
+ GPU strongly recommended. CPU works only for demos and `[SentenceTransformer]` `StaticEmbedding`.
113
+
114
+ ## Limitations
115
+
116
+ - Use this skill only when the task clearly matches its upstream product or API scope.
117
+ - Verify commands, API behavior, pricing, quotas, credentials, and deployment effects against current official documentation before making changes.
118
+ - Do not treat generated examples as a substitute for environment-specific tests, security review, or user approval for destructive or costly actions.
@@ -0,0 +1,79 @@
1
+ # Base Model Selection
2
+
3
+ Leaderboards rotate every few months; don't trust any hardcoded "best" pick. Discover current options live — run **both** sort orders since most-downloaded surfaces proven options and trending surfaces recent SOTA that may not have download volume yet.
4
+
5
+ ## Discovery commands
6
+
7
+ **[BI]**:
8
+ ```bash
9
+ hf models list --filter sentence-transformers --sort downloads --limit 20
10
+ hf models list --filter sentence-transformers --sort trending --limit 20
11
+ ```
12
+
13
+ **[CE]**:
14
+ ```bash
15
+ hf models list --filter sentence-transformers --filter text-ranking --sort downloads --limit 20
16
+ hf models list --filter sentence-transformers --filter text-ranking --sort trending --limit 20
17
+ ```
18
+
19
+ **[SPARSE]**:
20
+ ```bash
21
+ hf models list --filter sentence-transformers --filter sparse-encoder --sort downloads --limit 20
22
+ hf models list --filter sentence-transformers --filter sparse-encoder --sort trending --limit 20
23
+ ```
24
+
25
+ Optional language narrowing (any type): add `--filter <language-code>`. Not all multilingual models tag each language, so missing matches doesn't mean the model can't handle that language — re-run without the filter to compare.
26
+
27
+ ```bash
28
+ hf models card <id> --text # confirm dimensions, max_seq_length, license, languages
29
+ ```
30
+
31
+ Cross-check the [MTEB leaderboard](https://huggingface.co/spaces/mteb/leaderboard) (pick the relevant tab) before committing to a multi-hour run.
32
+
33
+ ## [BI] Bi-Encoder
34
+
35
+ Continue from an existing retriever beats fresh-start + 100k–500k pairs. Common namespaces as of 2026-Q2 (verify against discovery commands — the field rotates):
36
+
37
+ - **English encoder retrievers**: `sentence-transformers/all-*` (MiniLM-L6-v2, mpnet-base-v2 still the most-downloaded models on the Hub), `BAAI/bge-*-en-v1.5`, `nomic-ai/nomic-embed-text-v1.5`, `mixedbread-ai/mxbai-embed-large-v1`, `Alibaba-NLP/gte-*`, `Snowflake/snowflake-arctic-embed-*`, `jinaai/jina-embeddings-v5-text-small` / `-nano`, `microsoft/harrier-oss-v1-270m` / `-0.6b`.
38
+ - **Multilingual encoder retrievers**: `sentence-transformers/paraphrase-multilingual-*`, `intfloat/multilingual-e5-*`, `ibm-granite/granite-embedding-*-multilingual-r2`, `google/embeddinggemma-300m`, `voyageai/voyage-4-nano`.
39
+ - **Long documents (8k+)**: `nomic-ai/modernbert-embed-*`, `answerdotai/ModernBERT-large`.
40
+ - **Decoder LLM retrievers** (multilingual; **need last-token pooling**): `Qwen/Qwen3-Embedding-*` (0.6B / 4B / 8B), `Qwen/Qwen3-VL-Embedding-*` (multimodal), `codefuse-ai/F2LLM-v2-*`.
41
+ - **Fresh-start English** (≥500k pairs + domain-fit reason): `microsoft/mpnet-base`, `answerdotai/ModernBERT-base`, `google-bert/bert-base-uncased`, `jhu-clsp/ettin-encoder-*` (17m / 32m / 68m / 150m / 400m / 1b — paired ModernBERT encoder family).
42
+ - **Fresh-start multilingual**: `FacebookAI/xlm-roberta-base` (MLM-only, needs contrastive training), `microsoft/mdeberta-v3-base`, `jhu-clsp/mmBERT-base` / `-small`.
43
+ - **CPU / small footprint** (`StaticEmbedding`): `StaticEmbedding(tokenizer, embedding_dim=...)`. **Model size = `vocab_size × dim × 4 bytes`** — pick a small-vocab tokenizer or you get a giant model: 30k-vocab `bert-base-uncased` × 128 dim ≈ 15 MB; **250k-vocab `paraphrase-multilingual-MiniLM-L12-v2` × 256 dim ≈ 256 MB**. Random init needs 1M+ pairs; warm-start (`StaticEmbedding.from_distillation(...)`) helps under ~100k pairs.
44
+
45
+ Architecture variants (encoder / decoder / static / Router), pooling rules, and decoder-vs-encoder setup paths: `model_architectures.md`.
46
+
47
+ **ModernBERT-family bases default to `max_seq_length=8192`.** That allocates activation memory for 8192-token sequences regardless of your data length and silently drives Windows VRAM into "shared memory" spillover. After loading any ModernBERT / mmBERT / Ettin / gte-modernbert / nomic-modernbert base, **explicitly set `model.max_seq_length = 256` (or 512 for documents)** unless you actually need long context.
48
+
49
+ ## [CE] Cross-Encoder
50
+
51
+ Continue from an existing reranker beats fresh-start + 100k–500k pairs in most domains; default to this unless you have a strong reason otherwise. Common namespaces as of 2026-Q2:
52
+
53
+ - **English encoder rerankers**: `cross-encoder/ms-marco-*`, `BAAI/bge-reranker-*`, `mixedbread-ai/mxbai-rerank-*-v1` / `-v2`, `Alibaba-NLP/gte-reranker-modernbert-*`, `ibm-granite/granite-embedding-reranker-english-*`.
54
+ - **Multilingual encoder rerankers**: `cross-encoder/mmarco-*`, `BAAI/bge-reranker-v2-m3`, `Alibaba-NLP/gte-multilingual-reranker-*`, `ibm-granite/granite-embedding-reranker-multilingual-*`.
55
+ - **Decoder LLM rerankers** (multilingual; `num_labels=1` last-token-style scoring): `Qwen/Qwen3-Reranker-*` (0.6B / 4B / 8B), `Qwen/Qwen3-VL-Reranker-*` (multimodal).
56
+ - **Fresh-start**: `microsoft/MiniLM-L12-H384-uncased`, `answerdotai/ModernBERT-base` / `-large`, `jhu-clsp/ettin-encoder-*`, `FacebookAI/xlm-roberta-base` (multilingual), `microsoft/mdeberta-v3-base` (multilingual), `jhu-clsp/mmBERT-base` / `-small` (multilingual). Pass `num_labels >= 2` for classification cross-encoders.
57
+
58
+ Encoder-only bases are still the latency-efficient default (bidirectional attention is well-suited to the reranking use case at small parameter counts), but decoder LLM rerankers are now competitive at the top of MTEB Reranking when latency / memory budget allows.
59
+
60
+ **Minimum dataset:** 500k+ labeled `(query, passage, label)` tuples for production; 10k–100k labeled pairs for continue-training on domain data. Low-resource languages may have less than 10k labeled pairs; in that case lean on a multilingual base's pretraining and accept a noisier signal.
61
+
62
+ **"Small" multilingual is ~100M+ params**, not 17M-50M like the English small models. mMiniLMv2-L12-H384 (~117M) is roughly the small-end for usable multilingual rerankers.
63
+
64
+ ## [SPARSE] Sparse Encoder (SPLADE)
65
+
66
+ SPLADE requires a fill-mask / `AutoModelForMaskedLM`-compatible checkpoint. Encoder-only MLM models work out of the box; **decoder LLMs do not**.
67
+
68
+ - **Continue from existing SPLADE — English**: `naver/splade-*` (the canonical family), `opensearch-project/opensearch-neural-sparse-encoding-*` (incl. `-doc-v2-distill`, `-doc-v3-distill` / `-doc-v3-gte`), `prithivida/Splade_PP_en_v*`, `ibm-granite/granite-embedding-30m-sparse`.
69
+ - **Continue from existing SPLADE — multilingual**: `opensearch-project/opensearch-neural-sparse-encoding-multilingual-v1`.
70
+ - **Fresh-start English** (≥500k pairs): any encoder with an MLM head — `distilbert/distilbert-base-uncased`, `google-bert/bert-base-uncased`. Pure `AutoModel` checkpoints without MLM won't work. Discover MLM bases: `hf models list --filter fill-mask --sort downloads --limit 20`.
71
+ - **Fresh-start multilingual**: `FacebookAI/xlm-roberta-base` (has MLM head). For other multilingual MLM bases: add `--filter <language-code>`.
72
+
73
+ **Minimum dataset:** 500k+ triplets (with mined hard negatives) for a competitive SPLADE; 50k+ triplets for domain adaptation on existing SPLADE.
74
+
75
+ ## Cross-cutting tips
76
+
77
+ - **Non-English retrieval starting points** (when language tag returns 0 results): check `intfloat/multilingual_e5_train_data` for parallel pair data; MIRACL via the `sentence-transformers/miracl` mirror for multilingual retrieval; mMARCO via `unicamp-dl/mmarco` (14 languages, parquet-backed).
78
+ - **Avoid script-based dataset loaders.** `datasets >= 4` rejects them with `RuntimeError: Dataset scripts are no longer supported`. Look for parquet-backed mirrors (e.g. `sentence-transformers/miracl` instead of `miracl/miracl`).
79
+ - **`hf datasets sql` requires DuckDB** (`pip install duckdb`). Without it, fall back to `python -c "from datasets import load_dataset; ds = load_dataset('<id>', ...); print(ds.column_names, ds[0])"`.
@@ -0,0 +1,128 @@
1
+ # Dataset Formats
2
+
3
+ This reference covers: how datasets map to losses, how to reshape data when it doesn't fit, and how to mine hard negatives.
4
+
5
+ ## The two rules
6
+
7
+ From the sentence-transformers training overview:
8
+
9
+ 1. If the loss requires a label, the dataset must have a column named **`label`, `labels`, `score`, or `scores`**. Any column with one of these names is the label.
10
+ 2. All other columns are **inputs**. The loss defines how many input columns it expects. Column **names don't matter; order does**.
11
+
12
+ Example: `CoSENTLoss` expects 2 inputs + a float label. A dataset with columns `["premise", "hypothesis", "score"]` works. A dataset with `["score", "premise", "hypothesis"]` does not — reorder first.
13
+
14
+ ## Per-loss data shapes
15
+
16
+ The per-type loss references (`losses_sentence_transformer.md`, `losses_cross_encoder.md`, `losses_sparse_encoder.md`) are the canonical mappings from data shape to loss. Cross-cutting recipe bits those tables don't show:
17
+
18
+ - **`CosineSimilarityLoss`** wants `score` normalized to `[0, 1]`; `CoSENTLoss` / `AnglELoss` are pairwise-ranking and ignore absolute scale, so on `stsb` (raw 0-5) divide by 5 only when using cosine-similarity.
19
+ - **`BatchAllTripletLoss` / `BatchHardTripletLoss` / `BatchSemiHardTripletLoss`** need `batch_sampler=BatchSamplers.GROUP_BY_LABEL` so multiple samples per label appear in the same batch.
20
+ - **`MSELoss` (distillation)** label is the teacher's full embedding vector (a list of floats), not a scalar score.
21
+ - **`MarginMSELoss` (distillation)** label is `teacher_score(q, pos) - teacher_score(q, neg)`, precomputed per row.
22
+ - **N-tuple shape** for MNRL `(anchor, positive, negative_1, negative_2, ..., negative_N)` (1-indexed) is produced by `mine_hard_negatives(..., output_format="n-tuple")`; "labeled-list" output_format produces the CrossEncoder listwise shape.
23
+
24
+ ## Reshaping operations
25
+
26
+ If your data doesn't fit the loss's expected shape:
27
+
28
+ ### Reorder columns
29
+
30
+ ```python
31
+ # Columns are ["hypothesis", "premise", "score"] but CoSENTLoss expects premise first.
32
+ dataset = dataset.select_columns(["premise", "hypothesis", "score"])
33
+ ```
34
+
35
+ ### Rename label column
36
+
37
+ ```python
38
+ # Your label is called "relevance" but ST wants "label".
39
+ dataset = dataset.rename_column("relevance", "label")
40
+ ```
41
+
42
+ ### Drop extra columns
43
+
44
+ ```python
45
+ # ST will treat every non-label column as an input. Drop metadata.
46
+ dataset = dataset.remove_columns(["source_id", "created_at", "language"])
47
+ ```
48
+
49
+ ### Convert dtypes
50
+
51
+ ```python
52
+ # Label is str, need float for CoSENTLoss.
53
+ dataset = dataset.map(lambda x: {"label": float(x["label"])})
54
+ ```
55
+
56
+ ## Hard-negative mining
57
+
58
+ `mine_hard_negatives` (in `sentence_transformers.util`) produces a training dataset with mined negatives using a retriever. Hard negatives are the single highest-leverage lever for retrieval-model quality.
59
+
60
+ ### Basic usage
61
+
62
+ ```python
63
+ from sentence_transformers import SentenceTransformer
64
+ from sentence_transformers.util import mine_hard_negatives
65
+
66
+ retriever = SentenceTransformer("sentence-transformers/all-MiniLM-L6-v2")
67
+
68
+ mined = mine_hard_negatives(
69
+ dataset=train_pairs, # has (anchor, positive) or (q, a) columns
70
+ model=retriever,
71
+ num_negatives=5,
72
+ range_min=0, range_max=100, # rank window to sample hard negatives from
73
+ sampling_strategy="top", # "top" = rank-1 hardest; "random" = random in window
74
+ output_format="n-tuple", # "triplet" | "n-tuple" | "labeled-pair" | "labeled-list"
75
+ use_faiss=True,
76
+ )
77
+ ```
78
+
79
+ ### Output formats
80
+
81
+ - `"triplet"` — `(anchor, positive, negative)` triplets. One row per `(query, negative)` pair.
82
+ - `"n-tuple"` — `(anchor, positive, negative_1, negative_2, ..., negative_N)` (1-indexed) — one row per query.
83
+ - `"labeled-pair"` — `(anchor, text, label)` with `label=1` for positives and `label=0` for negatives. Good for `BinaryCrossEntropyLoss`.
84
+ - `"labeled-list"` — `(anchor, texts, labels)` — one row per query with a list of candidates. Good for listwise losses.
85
+
86
+ ### Filtering false negatives
87
+
88
+ If the retriever returns "negatives" that are actually relevant, they become false negatives and hurt training. Filter them:
89
+
90
+ ```python
91
+ mined = mine_hard_negatives(
92
+ dataset=train_pairs,
93
+ model=retriever,
94
+ cross_encoder=CrossEncoder("cross-encoder/ms-marco-MiniLM-L-6-v2"), # score candidates
95
+ num_negatives=5,
96
+ max_score=0.9, # drop candidates scoring above 0.9
97
+ relative_margin=0.05, # require neg_score < pos_score * (1 - 0.05)
98
+ absolute_margin=0.2, # require neg_score < pos_score - 0.2
99
+ output_format="n-tuple",
100
+ use_faiss=True,
101
+ )
102
+ ```
103
+
104
+ Use **either** `relative_margin` or `absolute_margin`, usually not both. `max_score` is independently useful as a hard ceiling.
105
+
106
+ ### CLI
107
+
108
+ `scripts/mine_hard_negatives.py` is a CLI wrapper — see it for a ready-to-run command.
109
+
110
+ ## Choosing the right `range_min` / `range_max`
111
+
112
+ `range_max=None` is the default; pass an integer to cap how far down the ranked list to sample from.
113
+
114
+ - `range_min=0`, `range_max=100` — sample from the top-100 retrieved. Good default.
115
+ - `range_min=10`, `range_max=100` — skip the top-10 (often contains true positives). Safer if you lack a cross-encoder.
116
+ - `range_min=0`, `range_max=1000` — wider net, more diverse negatives, slower.
117
+ - `sampling_strategy="top"` — always pick the rank-1 hardest. Maximum training signal per row.
118
+ - `sampling_strategy="random"` — pick randomly within the range. More robust if your retriever is itself noisy.
119
+
120
+ ## Quick Hub-side dataset checks
121
+
122
+ `hf datasets sql "SELECT * FROM 'hf://datasets/<id>/<split>' LIMIT 5"` streams rows via DuckDB without `load_dataset(...)` — the fastest way to confirm column names match your loss before a full validation run. `hf datasets info <id>` shows config / splits / size; `hf datasets card <id> --text` renders the README.
123
+
124
+ ## Gotchas
125
+
126
+ - **`remove_unused_columns=True` (default)**: the trainer drops columns that aren't passed to the model's forward. Usually fine, but if you rely on a custom collator that uses metadata columns, set `remove_unused_columns=False`.
127
+ - **Floats stored as strings after CSV load**: `load_dataset("csv", ...)` keeps columns as strings by default. Cast with `.map(lambda x: {"label": float(x["label"])})`.
128
+ - **Mined hard negatives with `include_positives=True`** include the positive as a negative in the output list — only useful when you're building an evaluator or want to measure rank of the positive. For training, leave it `False`.
@@ -0,0 +1,116 @@
1
+ # Evaluators (Cross-Encoder)
2
+
3
+ All cross-encoder evaluators live in `sentence_transformers.cross_encoder.evaluation`.
4
+
5
+ ## Choosing the right evaluator
6
+
7
+ | Task | Evaluator |
8
+ |---|---|
9
+ | Rerank retrieval results (nDCG@k on BM25 top-N) — fast default | `CrossEncoderNanoBEIREvaluator` |
10
+ | Rerank with custom candidates per query | `CrossEncoderRerankingEvaluator` |
11
+ | Binary / multi-class pair classification | `CrossEncoderClassificationEvaluator` |
12
+ | Continuous pair scoring (STS-style) | `CrossEncoderCorrelationEvaluator` |
13
+
14
+ Wrap multiple in `SequentialEvaluator` (from `sentence_transformers.base.evaluation`) to track them together:
15
+
16
+ ```python
17
+ from sentence_transformers.base.evaluation import SequentialEvaluator
18
+ evaluator = SequentialEvaluator([nano_beir_eval, custom_rerank_eval])
19
+ ```
20
+
21
+ ## The default: `CrossEncoderNanoBEIREvaluator`
22
+
23
+ Analog of `NanoBEIREvaluator` for rerankers. Takes BM25 top-100 for each NanoBEIR query and measures how well the cross-encoder re-ranks them.
24
+
25
+ ```python
26
+ from sentence_transformers.cross_encoder.evaluation import CrossEncoderNanoBEIREvaluator
27
+
28
+ evaluator = CrossEncoderNanoBEIREvaluator(
29
+ dataset_names=["msmarco", "nfcorpus", "nq"], # default: 11 of 13 NanoBEIR datasets (excludes "arguana", "touche2020")
30
+ batch_size=64,
31
+ rerank_k=100, # rerank the BM25 top-K
32
+ )
33
+ ```
34
+
35
+ Output key for `metric_for_best_model`: **`eval_NanoBEIR_R100_mean_ndcg@10`**. The `R100` signals "rerank top-100"; if you change `rerank_k`, the prefix changes (e.g. `R50`).
36
+
37
+ Each individual dataset contributes `eval_Nano{DatasetName}_R100_ndcg@10` (e.g. `eval_NanoMSMARCO_R100_ndcg@10`) too.
38
+
39
+ ## Custom reranking with your own candidates
40
+
41
+ Use when you have query + positive + distractor candidates that aren't part of NanoBEIR:
42
+
43
+ ```python
44
+ from sentence_transformers.cross_encoder.evaluation import CrossEncoderRerankingEvaluator
45
+
46
+ samples = [
47
+ {"query": "...", "positive": ["the gold answer"], "documents": ["...", "...", ...]}
48
+ for ...
49
+ ]
50
+
51
+ evaluator = CrossEncoderRerankingEvaluator(
52
+ samples=samples,
53
+ batch_size=64,
54
+ name="my-rerank",
55
+ always_rerank_positives=False, # default is True; override to False for realistic eval
56
+ )
57
+ ```
58
+
59
+ - `always_rerank_positives=True` (the library default) forces the positive into the candidate pool even when the retriever missed it. The reranker is graded only on candidates it can actually score, so the metric reflects pure reranker quality.
60
+ - `always_rerank_positives=False`: the positive is only reranked if it's already in `documents`. If the retriever missed it, the rank counts as N+1. This reflects end-to-end retriever+reranker quality. A positive the retriever missed is lost, regardless of reranker skill.
61
+
62
+ Output key: `eval_{name}_ndcg@10`, `eval_{name}_map`, `eval_{name}_mrr@10`.
63
+
64
+ ## Classification-style cross-encoders
65
+
66
+ ### `CrossEncoderClassificationEvaluator`
67
+
68
+ Works for both binary (`num_labels=1`) and multi-class (`num_labels>=2`) cross-encoders. Branches internally:
69
+ - `num_labels=1`: binary mode. Sweeps thresholds to report accuracy, F1, precision, recall, and **average_precision** (primary).
70
+ - `num_labels>=2`: multi-class mode (e.g. NLI: entailment / neutral / contradiction). Reports **f1_macro** (primary), f1_micro, f1_weighted, and per-class precision / recall.
71
+
72
+ ```python
73
+ from sentence_transformers.cross_encoder.evaluation import CrossEncoderClassificationEvaluator
74
+
75
+ evaluator = CrossEncoderClassificationEvaluator(
76
+ sentence_pairs=[(premise, hypothesis), ...],
77
+ labels=[0, 1, 2, ...],
78
+ batch_size=64,
79
+ name="nli-dev",
80
+ )
81
+ ```
82
+
83
+ Output keys (binary, `num_labels=1`): `eval_{name}_accuracy`, `eval_{name}_f1`, `eval_{name}_average_precision` (primary).
84
+ Output keys (multi-class, `num_labels>=2`): `eval_{name}_f1_macro` (primary), `eval_{name}_f1_micro`, `eval_{name}_f1_weighted`.
85
+
86
+ ### `CrossEncoderCorrelationEvaluator`
87
+
88
+ For continuous-score cross-encoders (like an STS cross-encoder outputting a similarity score). Reports Pearson/Spearman vs. gold scores.
89
+
90
+ ```python
91
+ from sentence_transformers.cross_encoder.evaluation import CrossEncoderCorrelationEvaluator
92
+
93
+ evaluator = CrossEncoderCorrelationEvaluator(
94
+ sentence_pairs=[(a, b), ...],
95
+ scores=[0.4, 0.8, ...],
96
+ name="stsb-dev",
97
+ )
98
+ ```
99
+
100
+ Output keys: `eval_{name}_spearman`, `eval_{name}_pearson`.
101
+
102
+ ## Writing `metric_for_best_model`
103
+
104
+ Pattern: `f"eval_{evaluator.primary_metric}"`. Inspect after construction: `print(evaluator.primary_metric)`. Common values:
105
+ - `eval_NanoBEIR_R100_mean_ndcg@10` — `CrossEncoderNanoBEIREvaluator` default
106
+ - `eval_{name}_ndcg@10` — `CrossEncoderRerankingEvaluator`
107
+ - `eval_{name}_average_precision` — `CrossEncoderClassificationEvaluator` (binary, `num_labels=1`)
108
+ - `eval_{name}_f1_macro` — `CrossEncoderClassificationEvaluator` (multi-class, `num_labels>=2`)
109
+ - `eval_{name}_spearman` — `CrossEncoderCorrelationEvaluator`
110
+
111
+ ## Gotchas
112
+
113
+ - **Always run `evaluator(model)` once before training** — pre-training baseline. Tiny post-training delta means the loss/data/base is wrong.
114
+ - `CrossEncoderClassificationEvaluator` accepts both `num_labels=1` (binary, primary `average_precision`) and `num_labels>=2` (multi-class, primary `f1_macro`); `CrossEncoderCorrelationEvaluator` requires `num_labels=1`.
115
+ - The default `dataset_names=None` excludes `arguana` and `touche2020` (Argument-Retrieval task differs from the rest); pass `dataset_names=list(DATASET_NAME_TO_HUMAN_READABLE)` from `sentence_transformers.cross_encoder.evaluation.nano_beir` to actually run all 13.
116
+ - Subset NanoBEIR datasets during training (3–4) to keep eval cheap; run the broader set post-training.