@saibolla/ada 0.1.2

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 (1432) hide show
  1. package/.ada/SYSTEM.md +81 -0
  2. package/.ada/agents/researcher.md +69 -0
  3. package/.ada/agents/reviewer.md +92 -0
  4. package/.ada/agents/verifier.md +45 -0
  5. package/.ada/agents/writer.md +54 -0
  6. package/.ada/settings.json +32 -0
  7. package/.ada/themes/ada.json +85 -0
  8. package/.env.example +31 -0
  9. package/AGENTS.md +79 -0
  10. package/LICENSE +191 -0
  11. package/README.md +188 -0
  12. package/bin/ada.js +26 -0
  13. package/dist/bootstrap/sync.js +143 -0
  14. package/dist/cli.js +404 -0
  15. package/dist/config/paths.js +32 -0
  16. package/dist/index.js +10 -0
  17. package/dist/model/catalog.js +255 -0
  18. package/dist/model/commands.js +180 -0
  19. package/dist/pi/launch.js +33 -0
  20. package/dist/pi/package-presets.js +55 -0
  21. package/dist/pi/runtime.js +81 -0
  22. package/dist/pi/settings.js +108 -0
  23. package/dist/pi/web-access.js +74 -0
  24. package/dist/search/commands.js +12 -0
  25. package/dist/setup/doctor.js +126 -0
  26. package/dist/setup/preview.js +117 -0
  27. package/dist/setup/prompts.js +34 -0
  28. package/dist/setup/setup.js +98 -0
  29. package/dist/setup/update.js +133 -0
  30. package/dist/system/executables.js +38 -0
  31. package/dist/system/node-version.js +31 -0
  32. package/dist/system/open-url.js +35 -0
  33. package/dist/system/promise-polyfill.js +12 -0
  34. package/dist/ui/terminal.js +64 -0
  35. package/dist/web/launch.js +48 -0
  36. package/dist/web-search.js +1 -0
  37. package/extensions/docparser/constants.ts +62 -0
  38. package/extensions/docparser/deps.ts +584 -0
  39. package/extensions/docparser/doctor.ts +353 -0
  40. package/extensions/docparser/index.ts +9 -0
  41. package/extensions/docparser/input.ts +230 -0
  42. package/extensions/docparser/request.ts +67 -0
  43. package/extensions/docparser/schema.ts +82 -0
  44. package/extensions/docparser/tool.ts +305 -0
  45. package/extensions/docparser/types.ts +99 -0
  46. package/extensions/research-tools/alpha.ts +107 -0
  47. package/extensions/research-tools/header.ts +284 -0
  48. package/extensions/research-tools/help.ts +93 -0
  49. package/extensions/research-tools/project-scaffold.ts +64 -0
  50. package/extensions/research-tools/project.ts +123 -0
  51. package/extensions/research-tools/shared.ts +16 -0
  52. package/extensions/research-tools.ts +42 -0
  53. package/logo.d.mts +3 -0
  54. package/logo.mjs +14 -0
  55. package/metadata/commands.d.mts +46 -0
  56. package/metadata/commands.mjs +133 -0
  57. package/package.json +80 -0
  58. package/prompts/audit.md +17 -0
  59. package/prompts/autoresearch.md +66 -0
  60. package/prompts/compare.md +18 -0
  61. package/prompts/deepresearch.md +189 -0
  62. package/prompts/draft.md +19 -0
  63. package/prompts/jobs.md +16 -0
  64. package/prompts/litreview.md +18 -0
  65. package/prompts/log.md +14 -0
  66. package/prompts/replicate.md +24 -0
  67. package/prompts/review.md +18 -0
  68. package/prompts/watch.md +16 -0
  69. package/scripts/build-native-bundle.mjs +349 -0
  70. package/scripts/check-node-version.mjs +35 -0
  71. package/scripts/patch-embedded-pi.mjs +588 -0
  72. package/scripts/prepare-runtime-workspace.mjs +162 -0
  73. package/scripts/prune-runtime-deps.mjs +131 -0
  74. package/scripts/release.sh +152 -0
  75. package/skills/adaptyv/SKILL.md +112 -0
  76. package/skills/adaptyv/reference/api_reference.md +308 -0
  77. package/skills/adaptyv/reference/examples.md +913 -0
  78. package/skills/adaptyv/reference/experiments.md +360 -0
  79. package/skills/adaptyv/reference/protein_optimization.md +637 -0
  80. package/skills/aeon/SKILL.md +372 -0
  81. package/skills/aeon/references/anomaly_detection.md +154 -0
  82. package/skills/aeon/references/classification.md +144 -0
  83. package/skills/aeon/references/clustering.md +123 -0
  84. package/skills/aeon/references/datasets_benchmarking.md +387 -0
  85. package/skills/aeon/references/distances.md +256 -0
  86. package/skills/aeon/references/forecasting.md +140 -0
  87. package/skills/aeon/references/networks.md +289 -0
  88. package/skills/aeon/references/regression.md +118 -0
  89. package/skills/aeon/references/segmentation.md +163 -0
  90. package/skills/aeon/references/similarity_search.md +187 -0
  91. package/skills/aeon/references/transformations.md +246 -0
  92. package/skills/alpha-research/SKILL.md +42 -0
  93. package/skills/alpha-vantage/SKILL.md +142 -0
  94. package/skills/alpha-vantage/references/commodities.md +153 -0
  95. package/skills/alpha-vantage/references/economic-indicators.md +158 -0
  96. package/skills/alpha-vantage/references/forex-crypto.md +154 -0
  97. package/skills/alpha-vantage/references/fundamentals.md +223 -0
  98. package/skills/alpha-vantage/references/intelligence.md +138 -0
  99. package/skills/alpha-vantage/references/options.md +93 -0
  100. package/skills/alpha-vantage/references/technical-indicators.md +374 -0
  101. package/skills/alpha-vantage/references/time-series.md +157 -0
  102. package/skills/alphafold-database/SKILL.md +511 -0
  103. package/skills/alphafold-database/references/api_reference.md +423 -0
  104. package/skills/anndata/SKILL.md +398 -0
  105. package/skills/anndata/references/best_practices.md +525 -0
  106. package/skills/anndata/references/concatenation.md +396 -0
  107. package/skills/anndata/references/data_structure.md +314 -0
  108. package/skills/anndata/references/io_operations.md +404 -0
  109. package/skills/anndata/references/manipulation.md +516 -0
  110. package/skills/arboreto/SKILL.md +241 -0
  111. package/skills/arboreto/references/algorithms.md +138 -0
  112. package/skills/arboreto/references/basic_inference.md +151 -0
  113. package/skills/arboreto/references/distributed_computing.md +242 -0
  114. package/skills/arboreto/scripts/basic_grn_inference.py +97 -0
  115. package/skills/arxiv-database/SKILL.md +362 -0
  116. package/skills/arxiv-database/references/api_reference.md +430 -0
  117. package/skills/arxiv-database/scripts/arxiv_search.py +414 -0
  118. package/skills/astropy/SKILL.md +329 -0
  119. package/skills/astropy/references/coordinates.md +273 -0
  120. package/skills/astropy/references/cosmology.md +307 -0
  121. package/skills/astropy/references/fits.md +396 -0
  122. package/skills/astropy/references/tables.md +489 -0
  123. package/skills/astropy/references/time.md +404 -0
  124. package/skills/astropy/references/units.md +178 -0
  125. package/skills/astropy/references/wcs_and_other_modules.md +373 -0
  126. package/skills/autoresearch/SKILL.md +12 -0
  127. package/skills/benchling-integration/SKILL.md +478 -0
  128. package/skills/benchling-integration/references/api_endpoints.md +883 -0
  129. package/skills/benchling-integration/references/authentication.md +379 -0
  130. package/skills/benchling-integration/references/sdk_reference.md +774 -0
  131. package/skills/bgpt-paper-search/SKILL.md +81 -0
  132. package/skills/bindingdb-database/SKILL.md +332 -0
  133. package/skills/bindingdb-database/references/affinity_queries.md +178 -0
  134. package/skills/biopython/SKILL.md +441 -0
  135. package/skills/biopython/references/advanced.md +577 -0
  136. package/skills/biopython/references/alignment.md +362 -0
  137. package/skills/biopython/references/blast.md +455 -0
  138. package/skills/biopython/references/databases.md +484 -0
  139. package/skills/biopython/references/phylogenetics.md +566 -0
  140. package/skills/biopython/references/sequence_io.md +285 -0
  141. package/skills/biopython/references/structure.md +564 -0
  142. package/skills/biorxiv-database/SKILL.md +481 -0
  143. package/skills/biorxiv-database/references/api_reference.md +280 -0
  144. package/skills/biorxiv-database/scripts/biorxiv_search.py +445 -0
  145. package/skills/bioservices/SKILL.md +359 -0
  146. package/skills/bioservices/references/identifier_mapping.md +685 -0
  147. package/skills/bioservices/references/services_reference.md +636 -0
  148. package/skills/bioservices/references/workflow_patterns.md +811 -0
  149. package/skills/bioservices/scripts/batch_id_converter.py +347 -0
  150. package/skills/bioservices/scripts/compound_cross_reference.py +378 -0
  151. package/skills/bioservices/scripts/pathway_analysis.py +309 -0
  152. package/skills/bioservices/scripts/protein_analysis_workflow.py +408 -0
  153. package/skills/brenda-database/SKILL.md +717 -0
  154. package/skills/brenda-database/references/api_reference.md +537 -0
  155. package/skills/brenda-database/scripts/brenda_queries.py +844 -0
  156. package/skills/brenda-database/scripts/brenda_visualization.py +772 -0
  157. package/skills/brenda-database/scripts/enzyme_pathway_builder.py +1053 -0
  158. package/skills/cbioportal-database/SKILL.md +367 -0
  159. package/skills/cbioportal-database/references/study_exploration.md +128 -0
  160. package/skills/cellxgene-census/SKILL.md +509 -0
  161. package/skills/cellxgene-census/references/census_schema.md +182 -0
  162. package/skills/cellxgene-census/references/common_patterns.md +351 -0
  163. package/skills/chembl-database/SKILL.md +387 -0
  164. package/skills/chembl-database/references/api_reference.md +272 -0
  165. package/skills/chembl-database/scripts/example_queries.py +278 -0
  166. package/skills/cirq/SKILL.md +344 -0
  167. package/skills/cirq/references/building.md +307 -0
  168. package/skills/cirq/references/experiments.md +572 -0
  169. package/skills/cirq/references/hardware.md +515 -0
  170. package/skills/cirq/references/noise.md +515 -0
  171. package/skills/cirq/references/simulation.md +350 -0
  172. package/skills/cirq/references/transformation.md +416 -0
  173. package/skills/citation-management/SKILL.md +1113 -0
  174. package/skills/citation-management/assets/bibtex_template.bib +264 -0
  175. package/skills/citation-management/assets/citation_checklist.md +386 -0
  176. package/skills/citation-management/references/bibtex_formatting.md +908 -0
  177. package/skills/citation-management/references/citation_validation.md +794 -0
  178. package/skills/citation-management/references/google_scholar_search.md +725 -0
  179. package/skills/citation-management/references/metadata_extraction.md +870 -0
  180. package/skills/citation-management/references/pubmed_search.md +839 -0
  181. package/skills/citation-management/scripts/doi_to_bibtex.py +204 -0
  182. package/skills/citation-management/scripts/extract_metadata.py +569 -0
  183. package/skills/citation-management/scripts/format_bibtex.py +349 -0
  184. package/skills/citation-management/scripts/search_google_scholar.py +282 -0
  185. package/skills/citation-management/scripts/search_pubmed.py +398 -0
  186. package/skills/citation-management/scripts/validate_citations.py +497 -0
  187. package/skills/clinical-decision-support/SKILL.md +510 -0
  188. package/skills/clinical-decision-support/assets/biomarker_report_template.tex +380 -0
  189. package/skills/clinical-decision-support/assets/clinical_pathway_template.tex +222 -0
  190. package/skills/clinical-decision-support/assets/cohort_analysis_template.tex +359 -0
  191. package/skills/clinical-decision-support/assets/color_schemes.tex +149 -0
  192. package/skills/clinical-decision-support/assets/example_gbm_cohort.md +208 -0
  193. package/skills/clinical-decision-support/assets/recommendation_strength_guide.md +328 -0
  194. package/skills/clinical-decision-support/assets/treatment_recommendation_template.tex +529 -0
  195. package/skills/clinical-decision-support/references/README.md +129 -0
  196. package/skills/clinical-decision-support/references/biomarker_classification.md +719 -0
  197. package/skills/clinical-decision-support/references/clinical_decision_algorithms.md +604 -0
  198. package/skills/clinical-decision-support/references/evidence_synthesis.md +840 -0
  199. package/skills/clinical-decision-support/references/outcome_analysis.md +640 -0
  200. package/skills/clinical-decision-support/references/patient_cohort_analysis.md +427 -0
  201. package/skills/clinical-decision-support/references/treatment_recommendations.md +521 -0
  202. package/skills/clinical-decision-support/scripts/biomarker_classifier.py +384 -0
  203. package/skills/clinical-decision-support/scripts/build_decision_tree.py +447 -0
  204. package/skills/clinical-decision-support/scripts/create_cohort_tables.py +524 -0
  205. package/skills/clinical-decision-support/scripts/generate_survival_analysis.py +422 -0
  206. package/skills/clinical-decision-support/scripts/validate_cds_document.py +335 -0
  207. package/skills/clinical-reports/SKILL.md +1131 -0
  208. package/skills/clinical-reports/assets/case_report_template.md +352 -0
  209. package/skills/clinical-reports/assets/clinical_trial_csr_template.md +353 -0
  210. package/skills/clinical-reports/assets/clinical_trial_sae_template.md +359 -0
  211. package/skills/clinical-reports/assets/consult_note_template.md +305 -0
  212. package/skills/clinical-reports/assets/discharge_summary_template.md +453 -0
  213. package/skills/clinical-reports/assets/hipaa_compliance_checklist.md +395 -0
  214. package/skills/clinical-reports/assets/history_physical_template.md +305 -0
  215. package/skills/clinical-reports/assets/lab_report_template.md +309 -0
  216. package/skills/clinical-reports/assets/pathology_report_template.md +249 -0
  217. package/skills/clinical-reports/assets/quality_checklist.md +338 -0
  218. package/skills/clinical-reports/assets/radiology_report_template.md +318 -0
  219. package/skills/clinical-reports/assets/soap_note_template.md +253 -0
  220. package/skills/clinical-reports/references/README.md +236 -0
  221. package/skills/clinical-reports/references/case_report_guidelines.md +570 -0
  222. package/skills/clinical-reports/references/clinical_trial_reporting.md +693 -0
  223. package/skills/clinical-reports/references/data_presentation.md +530 -0
  224. package/skills/clinical-reports/references/diagnostic_reports_standards.md +629 -0
  225. package/skills/clinical-reports/references/medical_terminology.md +588 -0
  226. package/skills/clinical-reports/references/patient_documentation.md +744 -0
  227. package/skills/clinical-reports/references/peer_review_standards.md +585 -0
  228. package/skills/clinical-reports/references/regulatory_compliance.md +577 -0
  229. package/skills/clinical-reports/scripts/check_deidentification.py +346 -0
  230. package/skills/clinical-reports/scripts/compliance_checker.py +78 -0
  231. package/skills/clinical-reports/scripts/extract_clinical_data.py +102 -0
  232. package/skills/clinical-reports/scripts/format_adverse_events.py +103 -0
  233. package/skills/clinical-reports/scripts/generate_report_template.py +163 -0
  234. package/skills/clinical-reports/scripts/terminology_validator.py +133 -0
  235. package/skills/clinical-reports/scripts/validate_case_report.py +334 -0
  236. package/skills/clinical-reports/scripts/validate_trial_report.py +89 -0
  237. package/skills/clinicaltrials-database/SKILL.md +505 -0
  238. package/skills/clinicaltrials-database/references/api_reference.md +358 -0
  239. package/skills/clinicaltrials-database/scripts/query_clinicaltrials.py +215 -0
  240. package/skills/clinpgx-database/SKILL.md +636 -0
  241. package/skills/clinpgx-database/references/api_reference.md +757 -0
  242. package/skills/clinpgx-database/scripts/query_clinpgx.py +518 -0
  243. package/skills/clinvar-database/SKILL.md +360 -0
  244. package/skills/clinvar-database/references/api_reference.md +227 -0
  245. package/skills/clinvar-database/references/clinical_significance.md +218 -0
  246. package/skills/clinvar-database/references/data_formats.md +358 -0
  247. package/skills/cobrapy/SKILL.md +461 -0
  248. package/skills/cobrapy/references/api_quick_reference.md +655 -0
  249. package/skills/cobrapy/references/workflows.md +593 -0
  250. package/skills/consciousness-council/SKILL.md +150 -0
  251. package/skills/consciousness-council/references/advanced-configurations.md +96 -0
  252. package/skills/cosmic-database/SKILL.md +334 -0
  253. package/skills/cosmic-database/references/cosmic_data_reference.md +220 -0
  254. package/skills/cosmic-database/scripts/download_cosmic.py +231 -0
  255. package/skills/crawl4ai/SKILL.md +172 -0
  256. package/skills/dask/SKILL.md +454 -0
  257. package/skills/dask/references/arrays.md +497 -0
  258. package/skills/dask/references/bags.md +468 -0
  259. package/skills/dask/references/best-practices.md +277 -0
  260. package/skills/dask/references/dataframes.md +368 -0
  261. package/skills/dask/references/futures.md +541 -0
  262. package/skills/dask/references/schedulers.md +504 -0
  263. package/skills/datacommons-client/SKILL.md +253 -0
  264. package/skills/datacommons-client/references/getting_started.md +417 -0
  265. package/skills/datacommons-client/references/node.md +250 -0
  266. package/skills/datacommons-client/references/observation.md +185 -0
  267. package/skills/datacommons-client/references/resolve.md +246 -0
  268. package/skills/datamol/SKILL.md +704 -0
  269. package/skills/datamol/references/conformers_module.md +131 -0
  270. package/skills/datamol/references/core_api.md +130 -0
  271. package/skills/datamol/references/descriptors_viz.md +195 -0
  272. package/skills/datamol/references/fragments_scaffolds.md +174 -0
  273. package/skills/datamol/references/io_module.md +109 -0
  274. package/skills/datamol/references/reactions_data.md +218 -0
  275. package/skills/deep-research/SKILL.md +12 -0
  276. package/skills/deepchem/SKILL.md +595 -0
  277. package/skills/deepchem/references/api_reference.md +303 -0
  278. package/skills/deepchem/references/workflows.md +491 -0
  279. package/skills/deepchem/scripts/graph_neural_network.py +338 -0
  280. package/skills/deepchem/scripts/predict_solubility.py +224 -0
  281. package/skills/deepchem/scripts/transfer_learning.py +375 -0
  282. package/skills/deeptools/SKILL.md +529 -0
  283. package/skills/deeptools/assets/quick_reference.md +58 -0
  284. package/skills/deeptools/references/effective_genome_sizes.md +116 -0
  285. package/skills/deeptools/references/normalization_methods.md +410 -0
  286. package/skills/deeptools/references/tools_reference.md +533 -0
  287. package/skills/deeptools/references/workflows.md +474 -0
  288. package/skills/deeptools/scripts/validate_files.py +195 -0
  289. package/skills/deeptools/scripts/workflow_generator.py +454 -0
  290. package/skills/denario/SKILL.md +213 -0
  291. package/skills/denario/references/examples.md +494 -0
  292. package/skills/denario/references/installation.md +213 -0
  293. package/skills/denario/references/llm_configuration.md +265 -0
  294. package/skills/denario/references/research_pipeline.md +471 -0
  295. package/skills/depmap/SKILL.md +300 -0
  296. package/skills/depmap/references/dependency_analysis.md +178 -0
  297. package/skills/dhdna-profiler/SKILL.md +162 -0
  298. package/skills/dhdna-profiler/references/advanced-profiling.md +72 -0
  299. package/skills/diffdock/SKILL.md +481 -0
  300. package/skills/diffdock/assets/batch_template.csv +4 -0
  301. package/skills/diffdock/assets/custom_inference_config.yaml +90 -0
  302. package/skills/diffdock/references/confidence_and_limitations.md +182 -0
  303. package/skills/diffdock/references/parameters_reference.md +163 -0
  304. package/skills/diffdock/references/workflows_examples.md +392 -0
  305. package/skills/diffdock/scripts/analyze_results.py +334 -0
  306. package/skills/diffdock/scripts/prepare_batch_csv.py +254 -0
  307. package/skills/diffdock/scripts/setup_check.py +278 -0
  308. package/skills/dnanexus-integration/SKILL.md +381 -0
  309. package/skills/dnanexus-integration/references/app-development.md +247 -0
  310. package/skills/dnanexus-integration/references/configuration.md +646 -0
  311. package/skills/dnanexus-integration/references/data-operations.md +400 -0
  312. package/skills/dnanexus-integration/references/job-execution.md +412 -0
  313. package/skills/dnanexus-integration/references/python-sdk.md +523 -0
  314. package/skills/docker/SKILL.md +84 -0
  315. package/skills/docx/LICENSE.txt +30 -0
  316. package/skills/docx/SKILL.md +590 -0
  317. package/skills/docx/scripts/__init__.py +1 -0
  318. package/skills/docx/scripts/accept_changes.py +135 -0
  319. package/skills/docx/scripts/comment.py +318 -0
  320. package/skills/docx/scripts/office/helpers/__init__.py +0 -0
  321. package/skills/docx/scripts/office/helpers/merge_runs.py +199 -0
  322. package/skills/docx/scripts/office/helpers/simplify_redlines.py +197 -0
  323. package/skills/docx/scripts/office/pack.py +159 -0
  324. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  325. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  326. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  327. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  328. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  329. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  330. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  331. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  332. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  333. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  334. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  335. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  336. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  337. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  338. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  339. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  340. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  341. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  342. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  343. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  344. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  345. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  346. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  347. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  348. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  349. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  350. package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  351. package/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  352. package/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  353. package/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  354. package/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  355. package/skills/docx/scripts/office/schemas/mce/mc.xsd +75 -0
  356. package/skills/docx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  357. package/skills/docx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  358. package/skills/docx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  359. package/skills/docx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  360. package/skills/docx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  361. package/skills/docx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  362. package/skills/docx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  363. package/skills/docx/scripts/office/soffice.py +183 -0
  364. package/skills/docx/scripts/office/unpack.py +132 -0
  365. package/skills/docx/scripts/office/validate.py +111 -0
  366. package/skills/docx/scripts/office/validators/__init__.py +15 -0
  367. package/skills/docx/scripts/office/validators/base.py +847 -0
  368. package/skills/docx/scripts/office/validators/docx.py +446 -0
  369. package/skills/docx/scripts/office/validators/pptx.py +275 -0
  370. package/skills/docx/scripts/office/validators/redlining.py +247 -0
  371. package/skills/docx/scripts/templates/comments.xml +3 -0
  372. package/skills/docx/scripts/templates/commentsExtended.xml +3 -0
  373. package/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  374. package/skills/docx/scripts/templates/commentsIds.xml +3 -0
  375. package/skills/docx/scripts/templates/people.xml +3 -0
  376. package/skills/drugbank-database/SKILL.md +188 -0
  377. package/skills/drugbank-database/references/chemical-analysis.md +590 -0
  378. package/skills/drugbank-database/references/data-access.md +242 -0
  379. package/skills/drugbank-database/references/drug-queries.md +386 -0
  380. package/skills/drugbank-database/references/interactions.md +425 -0
  381. package/skills/drugbank-database/references/targets-pathways.md +518 -0
  382. package/skills/drugbank-database/scripts/drugbank_helper.py +350 -0
  383. package/skills/edgartools/SKILL.md +136 -0
  384. package/skills/edgartools/references/ai-integration.md +274 -0
  385. package/skills/edgartools/references/companies.md +268 -0
  386. package/skills/edgartools/references/data-objects.md +237 -0
  387. package/skills/edgartools/references/entity-facts.md +372 -0
  388. package/skills/edgartools/references/filings.md +387 -0
  389. package/skills/edgartools/references/financial-data.md +274 -0
  390. package/skills/edgartools/references/xbrl.md +373 -0
  391. package/skills/eli5/SKILL.md +25 -0
  392. package/skills/ena-database/SKILL.md +202 -0
  393. package/skills/ena-database/references/api_reference.md +490 -0
  394. package/skills/ensembl-database/SKILL.md +309 -0
  395. package/skills/ensembl-database/references/api_endpoints.md +346 -0
  396. package/skills/ensembl-database/scripts/ensembl_query.py +427 -0
  397. package/skills/esm/SKILL.md +304 -0
  398. package/skills/esm/references/esm-c-api.md +583 -0
  399. package/skills/esm/references/esm3-api.md +452 -0
  400. package/skills/esm/references/forge-api.md +657 -0
  401. package/skills/esm/references/workflows.md +685 -0
  402. package/skills/etetoolkit/SKILL.md +621 -0
  403. package/skills/etetoolkit/references/api_reference.md +583 -0
  404. package/skills/etetoolkit/references/visualization.md +783 -0
  405. package/skills/etetoolkit/references/workflows.md +774 -0
  406. package/skills/etetoolkit/scripts/quick_visualize.py +214 -0
  407. package/skills/etetoolkit/scripts/tree_operations.py +229 -0
  408. package/skills/exploratory-data-analysis/SKILL.md +444 -0
  409. package/skills/exploratory-data-analysis/assets/report_template.md +196 -0
  410. package/skills/exploratory-data-analysis/references/bioinformatics_genomics_formats.md +664 -0
  411. package/skills/exploratory-data-analysis/references/chemistry_molecular_formats.md +664 -0
  412. package/skills/exploratory-data-analysis/references/general_scientific_formats.md +518 -0
  413. package/skills/exploratory-data-analysis/references/microscopy_imaging_formats.md +620 -0
  414. package/skills/exploratory-data-analysis/references/proteomics_metabolomics_formats.md +517 -0
  415. package/skills/exploratory-data-analysis/references/spectroscopy_analytical_formats.md +633 -0
  416. package/skills/exploratory-data-analysis/scripts/eda_analyzer.py +547 -0
  417. package/skills/fda-database/SKILL.md +516 -0
  418. package/skills/fda-database/references/animal_veterinary.md +377 -0
  419. package/skills/fda-database/references/api_basics.md +687 -0
  420. package/skills/fda-database/references/devices.md +632 -0
  421. package/skills/fda-database/references/drugs.md +468 -0
  422. package/skills/fda-database/references/foods.md +374 -0
  423. package/skills/fda-database/references/other.md +472 -0
  424. package/skills/fda-database/scripts/fda_examples.py +335 -0
  425. package/skills/fda-database/scripts/fda_query.py +440 -0
  426. package/skills/flowio/SKILL.md +606 -0
  427. package/skills/flowio/references/api_reference.md +372 -0
  428. package/skills/fluidsim/SKILL.md +347 -0
  429. package/skills/fluidsim/references/advanced_features.md +398 -0
  430. package/skills/fluidsim/references/installation.md +68 -0
  431. package/skills/fluidsim/references/output_analysis.md +283 -0
  432. package/skills/fluidsim/references/parameters.md +198 -0
  433. package/skills/fluidsim/references/simulation_workflow.md +172 -0
  434. package/skills/fluidsim/references/solvers.md +94 -0
  435. package/skills/fred-economic-data/SKILL.md +433 -0
  436. package/skills/fred-economic-data/references/api_basics.md +212 -0
  437. package/skills/fred-economic-data/references/categories.md +442 -0
  438. package/skills/fred-economic-data/references/geofred.md +588 -0
  439. package/skills/fred-economic-data/references/releases.md +642 -0
  440. package/skills/fred-economic-data/references/series.md +584 -0
  441. package/skills/fred-economic-data/references/sources.md +423 -0
  442. package/skills/fred-economic-data/references/tags.md +485 -0
  443. package/skills/fred-economic-data/scripts/fred_examples.py +354 -0
  444. package/skills/fred-economic-data/scripts/fred_query.py +590 -0
  445. package/skills/gene-database/SKILL.md +177 -0
  446. package/skills/gene-database/references/api_reference.md +404 -0
  447. package/skills/gene-database/references/common_workflows.md +428 -0
  448. package/skills/gene-database/scripts/batch_gene_lookup.py +298 -0
  449. package/skills/gene-database/scripts/fetch_gene_data.py +277 -0
  450. package/skills/gene-database/scripts/query_gene.py +251 -0
  451. package/skills/generate-image/SKILL.md +183 -0
  452. package/skills/generate-image/scripts/generate_image.py +281 -0
  453. package/skills/geniml/SKILL.md +316 -0
  454. package/skills/geniml/references/bedspace.md +127 -0
  455. package/skills/geniml/references/consensus_peaks.md +238 -0
  456. package/skills/geniml/references/region2vec.md +90 -0
  457. package/skills/geniml/references/scembed.md +197 -0
  458. package/skills/geniml/references/utilities.md +385 -0
  459. package/skills/geo-database/SKILL.md +813 -0
  460. package/skills/geo-database/references/geo_reference.md +829 -0
  461. package/skills/geomaster/README.md +105 -0
  462. package/skills/geomaster/SKILL.md +365 -0
  463. package/skills/geomaster/references/advanced-gis.md +376 -0
  464. package/skills/geomaster/references/big-data.md +363 -0
  465. package/skills/geomaster/references/code-examples.md +531 -0
  466. package/skills/geomaster/references/coordinate-systems.md +364 -0
  467. package/skills/geomaster/references/core-libraries.md +273 -0
  468. package/skills/geomaster/references/data-sources.md +330 -0
  469. package/skills/geomaster/references/gis-software.md +369 -0
  470. package/skills/geomaster/references/industry-applications.md +420 -0
  471. package/skills/geomaster/references/machine-learning.md +462 -0
  472. package/skills/geomaster/references/programming-languages.md +456 -0
  473. package/skills/geomaster/references/remote-sensing.md +370 -0
  474. package/skills/geomaster/references/scientific-domains.md +416 -0
  475. package/skills/geomaster/references/specialized-topics.md +428 -0
  476. package/skills/geomaster/references/troubleshooting.md +439 -0
  477. package/skills/geopandas/SKILL.md +249 -0
  478. package/skills/geopandas/references/crs-management.md +243 -0
  479. package/skills/geopandas/references/data-io.md +165 -0
  480. package/skills/geopandas/references/data-structures.md +70 -0
  481. package/skills/geopandas/references/geometric-operations.md +221 -0
  482. package/skills/geopandas/references/spatial-analysis.md +184 -0
  483. package/skills/geopandas/references/visualization.md +243 -0
  484. package/skills/get-available-resources/SKILL.md +275 -0
  485. package/skills/get-available-resources/scripts/detect_resources.py +401 -0
  486. package/skills/gget/SKILL.md +869 -0
  487. package/skills/gget/references/database_info.md +300 -0
  488. package/skills/gget/references/module_reference.md +467 -0
  489. package/skills/gget/references/workflows.md +814 -0
  490. package/skills/gget/scripts/batch_sequence_analysis.py +191 -0
  491. package/skills/gget/scripts/enrichment_pipeline.py +235 -0
  492. package/skills/gget/scripts/gene_analysis.py +161 -0
  493. package/skills/ginkgo-cloud-lab/SKILL.md +56 -0
  494. package/skills/ginkgo-cloud-lab/references/cell-free-protein-expression-optimization.md +85 -0
  495. package/skills/ginkgo-cloud-lab/references/cell-free-protein-expression-validation.md +71 -0
  496. package/skills/ginkgo-cloud-lab/references/fluorescent-pixel-art-generation.md +87 -0
  497. package/skills/glycoengineering/SKILL.md +338 -0
  498. package/skills/glycoengineering/references/glycan_databases.md +165 -0
  499. package/skills/gnomad-database/SKILL.md +395 -0
  500. package/skills/gnomad-database/references/graphql_queries.md +219 -0
  501. package/skills/gnomad-database/references/variant_interpretation.md +85 -0
  502. package/skills/gtars/SKILL.md +283 -0
  503. package/skills/gtars/references/cli.md +222 -0
  504. package/skills/gtars/references/coverage.md +172 -0
  505. package/skills/gtars/references/overlap.md +156 -0
  506. package/skills/gtars/references/python-api.md +211 -0
  507. package/skills/gtars/references/refget.md +147 -0
  508. package/skills/gtars/references/tokenizers.md +103 -0
  509. package/skills/gtex-database/SKILL.md +315 -0
  510. package/skills/gtex-database/references/api_reference.md +191 -0
  511. package/skills/gwas-database/SKILL.md +606 -0
  512. package/skills/gwas-database/references/api_reference.md +793 -0
  513. package/skills/hedgefundmonitor/SKILL.md +128 -0
  514. package/skills/hedgefundmonitor/references/api-overview.md +93 -0
  515. package/skills/hedgefundmonitor/references/datasets.md +150 -0
  516. package/skills/hedgefundmonitor/references/endpoints-combined.md +196 -0
  517. package/skills/hedgefundmonitor/references/endpoints-metadata.md +136 -0
  518. package/skills/hedgefundmonitor/references/endpoints-series-data.md +126 -0
  519. package/skills/hedgefundmonitor/references/examples.md +287 -0
  520. package/skills/hedgefundmonitor/references/parameters.md +104 -0
  521. package/skills/histolab/SKILL.md +676 -0
  522. package/skills/histolab/references/filters_preprocessing.md +514 -0
  523. package/skills/histolab/references/slide_management.md +172 -0
  524. package/skills/histolab/references/tile_extraction.md +421 -0
  525. package/skills/histolab/references/tissue_masks.md +251 -0
  526. package/skills/histolab/references/visualization.md +547 -0
  527. package/skills/hmdb-database/SKILL.md +194 -0
  528. package/skills/hmdb-database/references/hmdb_data_fields.md +267 -0
  529. package/skills/hypogenic/SKILL.md +653 -0
  530. package/skills/hypogenic/references/config_template.yaml +150 -0
  531. package/skills/hypothesis-generation/SKILL.md +297 -0
  532. package/skills/hypothesis-generation/assets/FORMATTING_GUIDE.md +672 -0
  533. package/skills/hypothesis-generation/assets/hypothesis_generation.sty +307 -0
  534. package/skills/hypothesis-generation/assets/hypothesis_report_template.tex +572 -0
  535. package/skills/hypothesis-generation/references/experimental_design_patterns.md +329 -0
  536. package/skills/hypothesis-generation/references/hypothesis_quality_criteria.md +198 -0
  537. package/skills/hypothesis-generation/references/literature_search_strategies.md +622 -0
  538. package/skills/imaging-data-commons/SKILL.md +843 -0
  539. package/skills/imaging-data-commons/references/bigquery_guide.md +556 -0
  540. package/skills/imaging-data-commons/references/cli_guide.md +272 -0
  541. package/skills/imaging-data-commons/references/clinical_data_guide.md +324 -0
  542. package/skills/imaging-data-commons/references/cloud_storage_guide.md +333 -0
  543. package/skills/imaging-data-commons/references/dicomweb_guide.md +399 -0
  544. package/skills/imaging-data-commons/references/digital_pathology_guide.md +403 -0
  545. package/skills/imaging-data-commons/references/index_tables_guide.md +146 -0
  546. package/skills/imaging-data-commons/references/sql_patterns.md +207 -0
  547. package/skills/imaging-data-commons/references/use_cases.md +186 -0
  548. package/skills/infographics/SKILL.md +563 -0
  549. package/skills/infographics/references/color_palettes.md +496 -0
  550. package/skills/infographics/references/design_principles.md +636 -0
  551. package/skills/infographics/references/infographic_types.md +907 -0
  552. package/skills/infographics/scripts/generate_infographic.py +234 -0
  553. package/skills/infographics/scripts/generate_infographic_ai.py +1290 -0
  554. package/skills/interpro-database/SKILL.md +305 -0
  555. package/skills/interpro-database/references/domain_analysis.md +159 -0
  556. package/skills/iso-13485-certification/SKILL.md +678 -0
  557. package/skills/iso-13485-certification/assets/templates/procedures/CAPA-procedure-template.md +453 -0
  558. package/skills/iso-13485-certification/assets/templates/procedures/document-control-procedure-template.md +567 -0
  559. package/skills/iso-13485-certification/assets/templates/quality-manual-template.md +521 -0
  560. package/skills/iso-13485-certification/references/gap-analysis-checklist.md +568 -0
  561. package/skills/iso-13485-certification/references/iso-13485-requirements.md +610 -0
  562. package/skills/iso-13485-certification/references/mandatory-documents.md +606 -0
  563. package/skills/iso-13485-certification/references/quality-manual-guide.md +688 -0
  564. package/skills/iso-13485-certification/scripts/gap_analyzer.py +440 -0
  565. package/skills/jaspar-database/SKILL.md +351 -0
  566. package/skills/jaspar-database/references/api_reference.md +182 -0
  567. package/skills/jobs/SKILL.md +10 -0
  568. package/skills/kegg-database/SKILL.md +375 -0
  569. package/skills/kegg-database/references/kegg_reference.md +326 -0
  570. package/skills/kegg-database/scripts/kegg_api.py +251 -0
  571. package/skills/labarchive-integration/SKILL.md +266 -0
  572. package/skills/labarchive-integration/references/api_reference.md +342 -0
  573. package/skills/labarchive-integration/references/authentication_guide.md +357 -0
  574. package/skills/labarchive-integration/references/integrations.md +425 -0
  575. package/skills/labarchive-integration/scripts/entry_operations.py +334 -0
  576. package/skills/labarchive-integration/scripts/notebook_operations.py +269 -0
  577. package/skills/labarchive-integration/scripts/setup_config.py +205 -0
  578. package/skills/lamindb/SKILL.md +388 -0
  579. package/skills/lamindb/references/annotation-validation.md +513 -0
  580. package/skills/lamindb/references/core-concepts.md +380 -0
  581. package/skills/lamindb/references/data-management.md +433 -0
  582. package/skills/lamindb/references/integrations.md +642 -0
  583. package/skills/lamindb/references/ontologies.md +497 -0
  584. package/skills/lamindb/references/setup-deployment.md +733 -0
  585. package/skills/latchbio-integration/SKILL.md +351 -0
  586. package/skills/latchbio-integration/references/data-management.md +427 -0
  587. package/skills/latchbio-integration/references/resource-configuration.md +429 -0
  588. package/skills/latchbio-integration/references/verified-workflows.md +487 -0
  589. package/skills/latchbio-integration/references/workflow-creation.md +254 -0
  590. package/skills/latex-posters/SKILL.md +1602 -0
  591. package/skills/latex-posters/assets/baposter_template.tex +257 -0
  592. package/skills/latex-posters/assets/beamerposter_template.tex +244 -0
  593. package/skills/latex-posters/assets/poster_quality_checklist.md +358 -0
  594. package/skills/latex-posters/assets/tikzposter_template.tex +251 -0
  595. package/skills/latex-posters/references/README.md +417 -0
  596. package/skills/latex-posters/references/latex_poster_packages.md +745 -0
  597. package/skills/latex-posters/references/poster_content_guide.md +748 -0
  598. package/skills/latex-posters/references/poster_design_principles.md +806 -0
  599. package/skills/latex-posters/references/poster_layout_design.md +900 -0
  600. package/skills/latex-posters/scripts/review_poster.sh +214 -0
  601. package/skills/literature-review/SKILL.md +637 -0
  602. package/skills/literature-review/assets/review_template.md +412 -0
  603. package/skills/literature-review/references/citation_styles.md +166 -0
  604. package/skills/literature-review/references/database_strategies.md +455 -0
  605. package/skills/literature-review/scripts/generate_pdf.py +176 -0
  606. package/skills/literature-review/scripts/search_databases.py +303 -0
  607. package/skills/literature-review/scripts/verify_citations.py +222 -0
  608. package/skills/markdown-mermaid-writing/SKILL.md +327 -0
  609. package/skills/markdown-mermaid-writing/assets/examples/example-research-report.md +221 -0
  610. package/skills/markdown-mermaid-writing/references/diagrams/architecture.md +108 -0
  611. package/skills/markdown-mermaid-writing/references/diagrams/block.md +177 -0
  612. package/skills/markdown-mermaid-writing/references/diagrams/c4.md +136 -0
  613. package/skills/markdown-mermaid-writing/references/diagrams/class.md +246 -0
  614. package/skills/markdown-mermaid-writing/references/diagrams/complex_examples.md +384 -0
  615. package/skills/markdown-mermaid-writing/references/diagrams/er.md +222 -0
  616. package/skills/markdown-mermaid-writing/references/diagrams/flowchart.md +177 -0
  617. package/skills/markdown-mermaid-writing/references/diagrams/gantt.md +138 -0
  618. package/skills/markdown-mermaid-writing/references/diagrams/git_graph.md +74 -0
  619. package/skills/markdown-mermaid-writing/references/diagrams/kanban.md +107 -0
  620. package/skills/markdown-mermaid-writing/references/diagrams/mindmap.md +74 -0
  621. package/skills/markdown-mermaid-writing/references/diagrams/packet.md +55 -0
  622. package/skills/markdown-mermaid-writing/references/diagrams/pie.md +52 -0
  623. package/skills/markdown-mermaid-writing/references/diagrams/quadrant.md +66 -0
  624. package/skills/markdown-mermaid-writing/references/diagrams/radar.md +59 -0
  625. package/skills/markdown-mermaid-writing/references/diagrams/requirement.md +88 -0
  626. package/skills/markdown-mermaid-writing/references/diagrams/sankey.md +71 -0
  627. package/skills/markdown-mermaid-writing/references/diagrams/sequence.md +174 -0
  628. package/skills/markdown-mermaid-writing/references/diagrams/state.md +150 -0
  629. package/skills/markdown-mermaid-writing/references/diagrams/timeline.md +96 -0
  630. package/skills/markdown-mermaid-writing/references/diagrams/treemap.md +66 -0
  631. package/skills/markdown-mermaid-writing/references/diagrams/user_journey.md +108 -0
  632. package/skills/markdown-mermaid-writing/references/diagrams/xy_chart.md +53 -0
  633. package/skills/markdown-mermaid-writing/references/diagrams/zenuml.md +71 -0
  634. package/skills/markdown-mermaid-writing/references/markdown_style_guide.md +733 -0
  635. package/skills/markdown-mermaid-writing/references/mermaid_style_guide.md +458 -0
  636. package/skills/markdown-mermaid-writing/templates/decision_record.md +211 -0
  637. package/skills/markdown-mermaid-writing/templates/how_to_guide.md +275 -0
  638. package/skills/markdown-mermaid-writing/templates/issue.md +303 -0
  639. package/skills/markdown-mermaid-writing/templates/kanban.md +223 -0
  640. package/skills/markdown-mermaid-writing/templates/presentation.md +312 -0
  641. package/skills/markdown-mermaid-writing/templates/project_documentation.md +412 -0
  642. package/skills/markdown-mermaid-writing/templates/pull_request.md +319 -0
  643. package/skills/markdown-mermaid-writing/templates/research_paper.md +304 -0
  644. package/skills/markdown-mermaid-writing/templates/status_report.md +185 -0
  645. package/skills/market-research-reports/SKILL.md +905 -0
  646. package/skills/market-research-reports/assets/FORMATTING_GUIDE.md +428 -0
  647. package/skills/market-research-reports/assets/market_report_template.tex +1380 -0
  648. package/skills/market-research-reports/assets/market_research.sty +564 -0
  649. package/skills/market-research-reports/references/data_analysis_patterns.md +548 -0
  650. package/skills/market-research-reports/references/report_structure_guide.md +999 -0
  651. package/skills/market-research-reports/references/visual_generation_guide.md +1077 -0
  652. package/skills/market-research-reports/scripts/generate_market_visuals.py +529 -0
  653. package/skills/markitdown/SKILL.md +488 -0
  654. package/skills/markitdown/assets/example_usage.md +463 -0
  655. package/skills/markitdown/references/api_reference.md +396 -0
  656. package/skills/markitdown/references/file_formats.md +542 -0
  657. package/skills/markitdown/scripts/batch_convert.py +228 -0
  658. package/skills/markitdown/scripts/convert_literature.py +283 -0
  659. package/skills/markitdown/scripts/convert_with_ai.py +240 -0
  660. package/skills/matchms/SKILL.md +201 -0
  661. package/skills/matchms/references/filtering.md +288 -0
  662. package/skills/matchms/references/importing_exporting.md +416 -0
  663. package/skills/matchms/references/similarity.md +380 -0
  664. package/skills/matchms/references/workflows.md +647 -0
  665. package/skills/matlab/SKILL.md +376 -0
  666. package/skills/matlab/references/data-import-export.md +479 -0
  667. package/skills/matlab/references/executing-scripts.md +444 -0
  668. package/skills/matlab/references/graphics-visualization.md +579 -0
  669. package/skills/matlab/references/mathematics.md +553 -0
  670. package/skills/matlab/references/matrices-arrays.md +349 -0
  671. package/skills/matlab/references/octave-compatibility.md +544 -0
  672. package/skills/matlab/references/programming.md +672 -0
  673. package/skills/matlab/references/python-integration.md +433 -0
  674. package/skills/matplotlib/SKILL.md +359 -0
  675. package/skills/matplotlib/references/api_reference.md +412 -0
  676. package/skills/matplotlib/references/common_issues.md +563 -0
  677. package/skills/matplotlib/references/plot_types.md +476 -0
  678. package/skills/matplotlib/references/styling_guide.md +589 -0
  679. package/skills/matplotlib/scripts/plot_template.py +401 -0
  680. package/skills/matplotlib/scripts/style_configurator.py +409 -0
  681. package/skills/medchem/SKILL.md +404 -0
  682. package/skills/medchem/references/api_guide.md +600 -0
  683. package/skills/medchem/references/rules_catalog.md +604 -0
  684. package/skills/medchem/scripts/filter_molecules.py +418 -0
  685. package/skills/metabolomics-workbench-database/SKILL.md +257 -0
  686. package/skills/metabolomics-workbench-database/references/api_reference.md +494 -0
  687. package/skills/modal/SKILL.md +406 -0
  688. package/skills/modal/references/api_reference.md +187 -0
  689. package/skills/modal/references/examples.md +266 -0
  690. package/skills/modal/references/functions.md +260 -0
  691. package/skills/modal/references/getting-started.md +175 -0
  692. package/skills/modal/references/gpu.md +174 -0
  693. package/skills/modal/references/images.md +259 -0
  694. package/skills/modal/references/resources.md +117 -0
  695. package/skills/modal/references/scaling.md +173 -0
  696. package/skills/modal/references/scheduled-jobs.md +143 -0
  697. package/skills/modal/references/secrets.md +119 -0
  698. package/skills/modal/references/volumes.md +247 -0
  699. package/skills/modal/references/web-endpoints.md +254 -0
  700. package/skills/modal-compute/SKILL.md +56 -0
  701. package/skills/molecular-dynamics/SKILL.md +457 -0
  702. package/skills/molecular-dynamics/references/mdanalysis_analysis.md +208 -0
  703. package/skills/molfeat/SKILL.md +509 -0
  704. package/skills/molfeat/references/api_reference.md +428 -0
  705. package/skills/molfeat/references/available_featurizers.md +333 -0
  706. package/skills/molfeat/references/examples.md +723 -0
  707. package/skills/monarch-database/SKILL.md +372 -0
  708. package/skills/monarch-database/references/phenotype_ontology.md +160 -0
  709. package/skills/networkx/SKILL.md +435 -0
  710. package/skills/networkx/references/algorithms.md +383 -0
  711. package/skills/networkx/references/generators.md +378 -0
  712. package/skills/networkx/references/graph-basics.md +283 -0
  713. package/skills/networkx/references/io.md +441 -0
  714. package/skills/networkx/references/visualization.md +529 -0
  715. package/skills/neurokit2/SKILL.md +354 -0
  716. package/skills/neurokit2/references/bio_module.md +417 -0
  717. package/skills/neurokit2/references/complexity.md +715 -0
  718. package/skills/neurokit2/references/ecg_cardiac.md +355 -0
  719. package/skills/neurokit2/references/eda.md +497 -0
  720. package/skills/neurokit2/references/eeg.md +506 -0
  721. package/skills/neurokit2/references/emg.md +408 -0
  722. package/skills/neurokit2/references/eog.md +407 -0
  723. package/skills/neurokit2/references/epochs_events.md +471 -0
  724. package/skills/neurokit2/references/hrv.md +480 -0
  725. package/skills/neurokit2/references/ppg.md +413 -0
  726. package/skills/neurokit2/references/rsp.md +510 -0
  727. package/skills/neurokit2/references/signal_processing.md +648 -0
  728. package/skills/neuropixels-analysis/SKILL.md +348 -0
  729. package/skills/neuropixels-analysis/assets/analysis_template.py +271 -0
  730. package/skills/neuropixels-analysis/references/AI_CURATION.md +345 -0
  731. package/skills/neuropixels-analysis/references/ANALYSIS.md +392 -0
  732. package/skills/neuropixels-analysis/references/AUTOMATED_CURATION.md +358 -0
  733. package/skills/neuropixels-analysis/references/MOTION_CORRECTION.md +323 -0
  734. package/skills/neuropixels-analysis/references/PREPROCESSING.md +273 -0
  735. package/skills/neuropixels-analysis/references/QUALITY_METRICS.md +359 -0
  736. package/skills/neuropixels-analysis/references/SPIKE_SORTING.md +339 -0
  737. package/skills/neuropixels-analysis/references/api_reference.md +415 -0
  738. package/skills/neuropixels-analysis/references/plotting_guide.md +454 -0
  739. package/skills/neuropixels-analysis/references/standard_workflow.md +385 -0
  740. package/skills/neuropixels-analysis/scripts/compute_metrics.py +178 -0
  741. package/skills/neuropixels-analysis/scripts/explore_recording.py +168 -0
  742. package/skills/neuropixels-analysis/scripts/export_to_phy.py +79 -0
  743. package/skills/neuropixels-analysis/scripts/neuropixels_pipeline.py +432 -0
  744. package/skills/neuropixels-analysis/scripts/preprocess_recording.py +122 -0
  745. package/skills/neuropixels-analysis/scripts/run_sorting.py +98 -0
  746. package/skills/offer-k-dense-web/SKILL.md +21 -0
  747. package/skills/omero-integration/SKILL.md +249 -0
  748. package/skills/omero-integration/references/advanced.md +631 -0
  749. package/skills/omero-integration/references/connection.md +369 -0
  750. package/skills/omero-integration/references/data_access.md +544 -0
  751. package/skills/omero-integration/references/image_processing.md +665 -0
  752. package/skills/omero-integration/references/metadata.md +688 -0
  753. package/skills/omero-integration/references/rois.md +648 -0
  754. package/skills/omero-integration/references/scripts.md +637 -0
  755. package/skills/omero-integration/references/tables.md +532 -0
  756. package/skills/open-notebook/SKILL.md +289 -0
  757. package/skills/open-notebook/references/api_reference.md +715 -0
  758. package/skills/open-notebook/references/architecture.md +163 -0
  759. package/skills/open-notebook/references/configuration.md +226 -0
  760. package/skills/open-notebook/references/examples.md +290 -0
  761. package/skills/open-notebook/scripts/chat_interaction.py +190 -0
  762. package/skills/open-notebook/scripts/notebook_management.py +142 -0
  763. package/skills/open-notebook/scripts/source_ingestion.py +160 -0
  764. package/skills/open-notebook/scripts/test_open_notebook_skill.py +423 -0
  765. package/skills/openalex-database/SKILL.md +496 -0
  766. package/skills/openalex-database/references/api_guide.md +371 -0
  767. package/skills/openalex-database/references/common_queries.md +381 -0
  768. package/skills/openalex-database/scripts/openalex_client.py +337 -0
  769. package/skills/openalex-database/scripts/query_helpers.py +306 -0
  770. package/skills/opentargets-database/SKILL.md +371 -0
  771. package/skills/opentargets-database/references/api_reference.md +249 -0
  772. package/skills/opentargets-database/references/evidence_types.md +306 -0
  773. package/skills/opentargets-database/references/target_annotations.md +401 -0
  774. package/skills/opentargets-database/scripts/query_opentargets.py +403 -0
  775. package/skills/opentrons-integration/SKILL.md +571 -0
  776. package/skills/opentrons-integration/references/api_reference.md +366 -0
  777. package/skills/opentrons-integration/scripts/basic_protocol_template.py +67 -0
  778. package/skills/opentrons-integration/scripts/pcr_setup_template.py +154 -0
  779. package/skills/opentrons-integration/scripts/serial_dilution_template.py +96 -0
  780. package/skills/paper-2-web/SKILL.md +495 -0
  781. package/skills/paper-2-web/references/installation.md +141 -0
  782. package/skills/paper-2-web/references/paper2poster.md +346 -0
  783. package/skills/paper-2-web/references/paper2video.md +305 -0
  784. package/skills/paper-2-web/references/paper2web.md +187 -0
  785. package/skills/paper-2-web/references/usage_examples.md +436 -0
  786. package/skills/paper-code-audit/SKILL.md +12 -0
  787. package/skills/paper-writing/SKILL.md +12 -0
  788. package/skills/parallel-web/SKILL.md +314 -0
  789. package/skills/parallel-web/references/api_reference.md +244 -0
  790. package/skills/parallel-web/references/deep_research_guide.md +362 -0
  791. package/skills/parallel-web/references/extraction_patterns.md +338 -0
  792. package/skills/parallel-web/references/search_best_practices.md +297 -0
  793. package/skills/parallel-web/references/workflow_recipes.md +456 -0
  794. package/skills/parallel-web/scripts/parallel_web.py +568 -0
  795. package/skills/parse-document/SKILL.md +139 -0
  796. package/skills/pathml/SKILL.md +164 -0
  797. package/skills/pathml/references/data_management.md +742 -0
  798. package/skills/pathml/references/graphs.md +653 -0
  799. package/skills/pathml/references/image_loading.md +448 -0
  800. package/skills/pathml/references/machine_learning.md +725 -0
  801. package/skills/pathml/references/multiparametric.md +686 -0
  802. package/skills/pathml/references/preprocessing.md +722 -0
  803. package/skills/pdb-database/SKILL.md +307 -0
  804. package/skills/pdb-database/references/api_reference.md +617 -0
  805. package/skills/pdf/LICENSE.txt +30 -0
  806. package/skills/pdf/SKILL.md +314 -0
  807. package/skills/pdf/forms.md +294 -0
  808. package/skills/pdf/reference.md +612 -0
  809. package/skills/pdf/scripts/check_bounding_boxes.py +65 -0
  810. package/skills/pdf/scripts/check_fillable_fields.py +11 -0
  811. package/skills/pdf/scripts/convert_pdf_to_images.py +33 -0
  812. package/skills/pdf/scripts/create_validation_image.py +37 -0
  813. package/skills/pdf/scripts/extract_form_field_info.py +122 -0
  814. package/skills/pdf/scripts/extract_form_structure.py +115 -0
  815. package/skills/pdf/scripts/fill_fillable_fields.py +98 -0
  816. package/skills/pdf/scripts/fill_pdf_form_with_annotations.py +107 -0
  817. package/skills/peer-review/SKILL.md +569 -0
  818. package/skills/peer-review/references/common_issues.md +552 -0
  819. package/skills/peer-review/references/reporting_standards.md +290 -0
  820. package/skills/pennylane/SKILL.md +224 -0
  821. package/skills/pennylane/references/advanced_features.md +667 -0
  822. package/skills/pennylane/references/devices_backends.md +596 -0
  823. package/skills/pennylane/references/getting_started.md +227 -0
  824. package/skills/pennylane/references/optimization.md +671 -0
  825. package/skills/pennylane/references/quantum_chemistry.md +567 -0
  826. package/skills/pennylane/references/quantum_circuits.md +437 -0
  827. package/skills/pennylane/references/quantum_ml.md +571 -0
  828. package/skills/perplexity-search/SKILL.md +446 -0
  829. package/skills/perplexity-search/assets/.env.example +16 -0
  830. package/skills/perplexity-search/references/model_comparison.md +386 -0
  831. package/skills/perplexity-search/references/openrouter_setup.md +454 -0
  832. package/skills/perplexity-search/references/search_strategies.md +258 -0
  833. package/skills/perplexity-search/scripts/perplexity_search.py +277 -0
  834. package/skills/perplexity-search/scripts/setup_env.py +171 -0
  835. package/skills/phylogenetics/SKILL.md +404 -0
  836. package/skills/phylogenetics/references/iqtree_inference.md +181 -0
  837. package/skills/phylogenetics/scripts/phylogenetic_analysis.py +270 -0
  838. package/skills/plotly/SKILL.md +265 -0
  839. package/skills/plotly/references/chart-types.md +488 -0
  840. package/skills/plotly/references/export-interactivity.md +453 -0
  841. package/skills/plotly/references/graph-objects.md +302 -0
  842. package/skills/plotly/references/layouts-styling.md +457 -0
  843. package/skills/plotly/references/plotly-express.md +213 -0
  844. package/skills/polars/SKILL.md +385 -0
  845. package/skills/polars/references/best_practices.md +649 -0
  846. package/skills/polars/references/core_concepts.md +378 -0
  847. package/skills/polars/references/io_guide.md +557 -0
  848. package/skills/polars/references/operations.md +602 -0
  849. package/skills/polars/references/pandas_migration.md +417 -0
  850. package/skills/polars/references/transformations.md +549 -0
  851. package/skills/polars-bio/SKILL.md +374 -0
  852. package/skills/polars-bio/references/bioframe_migration.md +250 -0
  853. package/skills/polars-bio/references/configuration.md +175 -0
  854. package/skills/polars-bio/references/file_io.md +414 -0
  855. package/skills/polars-bio/references/interval_operations.md +362 -0
  856. package/skills/polars-bio/references/pileup_operations.md +176 -0
  857. package/skills/polars-bio/references/sql_processing.md +224 -0
  858. package/skills/pptx/LICENSE.txt +30 -0
  859. package/skills/pptx/SKILL.md +232 -0
  860. package/skills/pptx/editing.md +205 -0
  861. package/skills/pptx/pptxgenjs.md +420 -0
  862. package/skills/pptx/scripts/__init__.py +0 -0
  863. package/skills/pptx/scripts/add_slide.py +195 -0
  864. package/skills/pptx/scripts/clean.py +286 -0
  865. package/skills/pptx/scripts/office/helpers/__init__.py +0 -0
  866. package/skills/pptx/scripts/office/helpers/merge_runs.py +199 -0
  867. package/skills/pptx/scripts/office/helpers/simplify_redlines.py +197 -0
  868. package/skills/pptx/scripts/office/pack.py +159 -0
  869. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  870. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  871. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  872. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  873. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  874. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  875. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  876. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  877. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  878. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  879. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  880. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  881. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  882. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  883. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  884. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  885. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  886. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  887. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  888. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  889. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  890. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  891. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  892. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  893. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  894. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  895. package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  896. package/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  897. package/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  898. package/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  899. package/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  900. package/skills/pptx/scripts/office/schemas/mce/mc.xsd +75 -0
  901. package/skills/pptx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  902. package/skills/pptx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  903. package/skills/pptx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  904. package/skills/pptx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  905. package/skills/pptx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  906. package/skills/pptx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  907. package/skills/pptx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  908. package/skills/pptx/scripts/office/soffice.py +183 -0
  909. package/skills/pptx/scripts/office/unpack.py +132 -0
  910. package/skills/pptx/scripts/office/validate.py +111 -0
  911. package/skills/pptx/scripts/office/validators/__init__.py +15 -0
  912. package/skills/pptx/scripts/office/validators/base.py +847 -0
  913. package/skills/pptx/scripts/office/validators/docx.py +446 -0
  914. package/skills/pptx/scripts/office/validators/pptx.py +275 -0
  915. package/skills/pptx/scripts/office/validators/redlining.py +247 -0
  916. package/skills/pptx/scripts/thumbnail.py +289 -0
  917. package/skills/pptx-posters/SKILL.md +414 -0
  918. package/skills/pptx-posters/assets/poster_html_template.html +257 -0
  919. package/skills/pptx-posters/assets/poster_quality_checklist.md +358 -0
  920. package/skills/pptx-posters/references/poster_content_guide.md +748 -0
  921. package/skills/pptx-posters/references/poster_design_principles.md +806 -0
  922. package/skills/pptx-posters/references/poster_layout_design.md +900 -0
  923. package/skills/preview/SKILL.md +27 -0
  924. package/skills/primekg/SKILL.md +97 -0
  925. package/skills/primekg/scripts/query_primekg.py +123 -0
  926. package/skills/protocolsio-integration/SKILL.md +419 -0
  927. package/skills/protocolsio-integration/references/additional_features.md +387 -0
  928. package/skills/protocolsio-integration/references/authentication.md +100 -0
  929. package/skills/protocolsio-integration/references/discussions.md +225 -0
  930. package/skills/protocolsio-integration/references/file_manager.md +412 -0
  931. package/skills/protocolsio-integration/references/protocols_api.md +294 -0
  932. package/skills/protocolsio-integration/references/workspaces.md +293 -0
  933. package/skills/pubchem-database/SKILL.md +572 -0
  934. package/skills/pubchem-database/references/api_reference.md +440 -0
  935. package/skills/pubchem-database/scripts/bioactivity_query.py +367 -0
  936. package/skills/pubchem-database/scripts/compound_search.py +297 -0
  937. package/skills/pubmed-database/SKILL.md +458 -0
  938. package/skills/pubmed-database/references/api_reference.md +298 -0
  939. package/skills/pubmed-database/references/common_queries.md +453 -0
  940. package/skills/pubmed-database/references/search_syntax.md +436 -0
  941. package/skills/pufferlib/SKILL.md +434 -0
  942. package/skills/pufferlib/references/environments.md +508 -0
  943. package/skills/pufferlib/references/integration.md +621 -0
  944. package/skills/pufferlib/references/policies.md +653 -0
  945. package/skills/pufferlib/references/training.md +360 -0
  946. package/skills/pufferlib/references/vectorization.md +557 -0
  947. package/skills/pufferlib/scripts/env_template.py +340 -0
  948. package/skills/pufferlib/scripts/train_template.py +239 -0
  949. package/skills/pydeseq2/SKILL.md +557 -0
  950. package/skills/pydeseq2/references/api_reference.md +228 -0
  951. package/skills/pydeseq2/references/workflow_guide.md +582 -0
  952. package/skills/pydeseq2/scripts/run_deseq2_analysis.py +353 -0
  953. package/skills/pydicom/SKILL.md +432 -0
  954. package/skills/pydicom/references/common_tags.md +228 -0
  955. package/skills/pydicom/references/transfer_syntaxes.md +352 -0
  956. package/skills/pydicom/scripts/anonymize_dicom.py +137 -0
  957. package/skills/pydicom/scripts/dicom_to_image.py +172 -0
  958. package/skills/pydicom/scripts/extract_metadata.py +173 -0
  959. package/skills/pyhealth/SKILL.md +489 -0
  960. package/skills/pyhealth/references/datasets.md +178 -0
  961. package/skills/pyhealth/references/medical_coding.md +284 -0
  962. package/skills/pyhealth/references/models.md +594 -0
  963. package/skills/pyhealth/references/preprocessing.md +638 -0
  964. package/skills/pyhealth/references/tasks.md +379 -0
  965. package/skills/pyhealth/references/training_evaluation.md +648 -0
  966. package/skills/pylabrobot/SKILL.md +183 -0
  967. package/skills/pylabrobot/references/analytical-equipment.md +464 -0
  968. package/skills/pylabrobot/references/hardware-backends.md +480 -0
  969. package/skills/pylabrobot/references/liquid-handling.md +403 -0
  970. package/skills/pylabrobot/references/material-handling.md +620 -0
  971. package/skills/pylabrobot/references/resources.md +489 -0
  972. package/skills/pylabrobot/references/visualization.md +532 -0
  973. package/skills/pymatgen/SKILL.md +689 -0
  974. package/skills/pymatgen/references/analysis_modules.md +530 -0
  975. package/skills/pymatgen/references/core_classes.md +318 -0
  976. package/skills/pymatgen/references/io_formats.md +469 -0
  977. package/skills/pymatgen/references/materials_project_api.md +517 -0
  978. package/skills/pymatgen/references/transformations_workflows.md +591 -0
  979. package/skills/pymatgen/scripts/phase_diagram_generator.py +233 -0
  980. package/skills/pymatgen/scripts/structure_analyzer.py +266 -0
  981. package/skills/pymatgen/scripts/structure_converter.py +169 -0
  982. package/skills/pymc/SKILL.md +570 -0
  983. package/skills/pymc/assets/hierarchical_model_template.py +333 -0
  984. package/skills/pymc/assets/linear_regression_template.py +241 -0
  985. package/skills/pymc/references/distributions.md +320 -0
  986. package/skills/pymc/references/sampling_inference.md +424 -0
  987. package/skills/pymc/references/workflows.md +526 -0
  988. package/skills/pymc/scripts/model_comparison.py +387 -0
  989. package/skills/pymc/scripts/model_diagnostics.py +350 -0
  990. package/skills/pymoo/SKILL.md +569 -0
  991. package/skills/pymoo/references/algorithms.md +180 -0
  992. package/skills/pymoo/references/constraints_mcdm.md +417 -0
  993. package/skills/pymoo/references/operators.md +345 -0
  994. package/skills/pymoo/references/problems.md +265 -0
  995. package/skills/pymoo/references/visualization.md +353 -0
  996. package/skills/pymoo/scripts/custom_problem_example.py +181 -0
  997. package/skills/pymoo/scripts/decision_making_example.py +161 -0
  998. package/skills/pymoo/scripts/many_objective_example.py +72 -0
  999. package/skills/pymoo/scripts/multi_objective_example.py +63 -0
  1000. package/skills/pymoo/scripts/single_objective_example.py +59 -0
  1001. package/skills/pyopenms/SKILL.md +215 -0
  1002. package/skills/pyopenms/references/data_structures.md +497 -0
  1003. package/skills/pyopenms/references/feature_detection.md +410 -0
  1004. package/skills/pyopenms/references/file_io.md +349 -0
  1005. package/skills/pyopenms/references/identification.md +422 -0
  1006. package/skills/pyopenms/references/metabolomics.md +482 -0
  1007. package/skills/pyopenms/references/signal_processing.md +433 -0
  1008. package/skills/pysam/SKILL.md +263 -0
  1009. package/skills/pysam/references/alignment_files.md +280 -0
  1010. package/skills/pysam/references/common_workflows.md +520 -0
  1011. package/skills/pysam/references/sequence_files.md +407 -0
  1012. package/skills/pysam/references/variant_files.md +365 -0
  1013. package/skills/pytdc/SKILL.md +458 -0
  1014. package/skills/pytdc/references/datasets.md +246 -0
  1015. package/skills/pytdc/references/oracles.md +400 -0
  1016. package/skills/pytdc/references/utilities.md +684 -0
  1017. package/skills/pytdc/scripts/benchmark_evaluation.py +327 -0
  1018. package/skills/pytdc/scripts/load_and_split_data.py +214 -0
  1019. package/skills/pytdc/scripts/molecular_generation.py +404 -0
  1020. package/skills/pytorch-lightning/SKILL.md +172 -0
  1021. package/skills/pytorch-lightning/references/best_practices.md +724 -0
  1022. package/skills/pytorch-lightning/references/callbacks.md +564 -0
  1023. package/skills/pytorch-lightning/references/data_module.md +565 -0
  1024. package/skills/pytorch-lightning/references/distributed_training.md +643 -0
  1025. package/skills/pytorch-lightning/references/lightning_module.md +487 -0
  1026. package/skills/pytorch-lightning/references/logging.md +654 -0
  1027. package/skills/pytorch-lightning/references/trainer.md +641 -0
  1028. package/skills/pytorch-lightning/scripts/quick_trainer_setup.py +454 -0
  1029. package/skills/pytorch-lightning/scripts/template_datamodule.py +328 -0
  1030. package/skills/pytorch-lightning/scripts/template_lightning_module.py +219 -0
  1031. package/skills/pyzotero/SKILL.md +111 -0
  1032. package/skills/pyzotero/references/authentication.md +90 -0
  1033. package/skills/pyzotero/references/cli.md +100 -0
  1034. package/skills/pyzotero/references/collections.md +113 -0
  1035. package/skills/pyzotero/references/error-handling.md +103 -0
  1036. package/skills/pyzotero/references/exports.md +102 -0
  1037. package/skills/pyzotero/references/files-attachments.md +97 -0
  1038. package/skills/pyzotero/references/full-text.md +68 -0
  1039. package/skills/pyzotero/references/pagination.md +79 -0
  1040. package/skills/pyzotero/references/read-api.md +137 -0
  1041. package/skills/pyzotero/references/saved-searches.md +77 -0
  1042. package/skills/pyzotero/references/search-params.md +90 -0
  1043. package/skills/pyzotero/references/tags.md +87 -0
  1044. package/skills/pyzotero/references/write-api.md +123 -0
  1045. package/skills/qiskit/SKILL.md +273 -0
  1046. package/skills/qiskit/references/algorithms.md +607 -0
  1047. package/skills/qiskit/references/backends.md +433 -0
  1048. package/skills/qiskit/references/circuits.md +197 -0
  1049. package/skills/qiskit/references/patterns.md +533 -0
  1050. package/skills/qiskit/references/primitives.md +277 -0
  1051. package/skills/qiskit/references/setup.md +99 -0
  1052. package/skills/qiskit/references/transpilation.md +286 -0
  1053. package/skills/qiskit/references/visualization.md +415 -0
  1054. package/skills/qutip/SKILL.md +316 -0
  1055. package/skills/qutip/references/advanced.md +555 -0
  1056. package/skills/qutip/references/analysis.md +523 -0
  1057. package/skills/qutip/references/core_concepts.md +293 -0
  1058. package/skills/qutip/references/time_evolution.md +348 -0
  1059. package/skills/qutip/references/visualization.md +431 -0
  1060. package/skills/rdkit/SKILL.md +778 -0
  1061. package/skills/rdkit/references/api_reference.md +432 -0
  1062. package/skills/rdkit/references/descriptors_reference.md +595 -0
  1063. package/skills/rdkit/references/smarts_patterns.md +668 -0
  1064. package/skills/rdkit/scripts/molecular_properties.py +243 -0
  1065. package/skills/rdkit/scripts/similarity_search.py +297 -0
  1066. package/skills/rdkit/scripts/substructure_filter.py +386 -0
  1067. package/skills/reactome-database/SKILL.md +276 -0
  1068. package/skills/reactome-database/references/api_reference.md +465 -0
  1069. package/skills/reactome-database/scripts/reactome_query.py +286 -0
  1070. package/skills/replication/SKILL.md +14 -0
  1071. package/skills/research-grants/SKILL.md +955 -0
  1072. package/skills/research-grants/assets/budget_justification_template.md +453 -0
  1073. package/skills/research-grants/assets/nih_specific_aims_template.md +166 -0
  1074. package/skills/research-grants/assets/nsf_project_summary_template.md +92 -0
  1075. package/skills/research-grants/references/README.md +285 -0
  1076. package/skills/research-grants/references/broader_impacts.md +392 -0
  1077. package/skills/research-grants/references/darpa_guidelines.md +636 -0
  1078. package/skills/research-grants/references/doe_guidelines.md +586 -0
  1079. package/skills/research-grants/references/nih_guidelines.md +851 -0
  1080. package/skills/research-grants/references/nsf_guidelines.md +570 -0
  1081. package/skills/research-grants/references/nstc_guidelines.md +733 -0
  1082. package/skills/research-grants/references/specific_aims_guide.md +458 -0
  1083. package/skills/research-lookup/README.md +156 -0
  1084. package/skills/research-lookup/SKILL.md +413 -0
  1085. package/skills/research-lookup/examples.py +174 -0
  1086. package/skills/research-lookup/lookup.py +187 -0
  1087. package/skills/research-lookup/research_lookup.py +566 -0
  1088. package/skills/research-lookup/scripts/research_lookup.py +566 -0
  1089. package/skills/rowan/SKILL.md +427 -0
  1090. package/skills/rowan/references/api_reference.md +413 -0
  1091. package/skills/rowan/references/molecule_handling.md +429 -0
  1092. package/skills/rowan/references/proteins_and_organization.md +499 -0
  1093. package/skills/rowan/references/rdkit_native.md +438 -0
  1094. package/skills/rowan/references/results_interpretation.md +481 -0
  1095. package/skills/rowan/references/workflow_types.md +591 -0
  1096. package/skills/runpod-compute/SKILL.md +48 -0
  1097. package/skills/scanpy/SKILL.md +384 -0
  1098. package/skills/scanpy/assets/analysis_template.py +295 -0
  1099. package/skills/scanpy/references/api_reference.md +251 -0
  1100. package/skills/scanpy/references/plotting_guide.md +352 -0
  1101. package/skills/scanpy/references/standard_workflow.md +206 -0
  1102. package/skills/scanpy/scripts/qc_analysis.py +200 -0
  1103. package/skills/scholar-evaluation/SKILL.md +298 -0
  1104. package/skills/scholar-evaluation/references/evaluation_framework.md +663 -0
  1105. package/skills/scholar-evaluation/scripts/calculate_scores.py +378 -0
  1106. package/skills/scientific-brainstorming/SKILL.md +189 -0
  1107. package/skills/scientific-brainstorming/references/brainstorming_methods.md +326 -0
  1108. package/skills/scientific-critical-thinking/SKILL.md +570 -0
  1109. package/skills/scientific-critical-thinking/references/common_biases.md +364 -0
  1110. package/skills/scientific-critical-thinking/references/evidence_hierarchy.md +484 -0
  1111. package/skills/scientific-critical-thinking/references/experimental_design.md +496 -0
  1112. package/skills/scientific-critical-thinking/references/logical_fallacies.md +478 -0
  1113. package/skills/scientific-critical-thinking/references/scientific_method.md +169 -0
  1114. package/skills/scientific-critical-thinking/references/statistical_pitfalls.md +506 -0
  1115. package/skills/scientific-schematics/SKILL.md +619 -0
  1116. package/skills/scientific-schematics/references/QUICK_REFERENCE.md +207 -0
  1117. package/skills/scientific-schematics/references/README.md +327 -0
  1118. package/skills/scientific-schematics/references/best_practices.md +560 -0
  1119. package/skills/scientific-schematics/scripts/example_usage.sh +89 -0
  1120. package/skills/scientific-schematics/scripts/generate_schematic.py +139 -0
  1121. package/skills/scientific-schematics/scripts/generate_schematic_ai.py +844 -0
  1122. package/skills/scientific-slides/SKILL.md +1154 -0
  1123. package/skills/scientific-slides/assets/beamer_template_conference.tex +407 -0
  1124. package/skills/scientific-slides/assets/beamer_template_defense.tex +906 -0
  1125. package/skills/scientific-slides/assets/beamer_template_seminar.tex +870 -0
  1126. package/skills/scientific-slides/assets/powerpoint_design_guide.md +662 -0
  1127. package/skills/scientific-slides/assets/timing_guidelines.md +597 -0
  1128. package/skills/scientific-slides/references/beamer_guide.md +1019 -0
  1129. package/skills/scientific-slides/references/data_visualization_slides.md +708 -0
  1130. package/skills/scientific-slides/references/presentation_structure.md +642 -0
  1131. package/skills/scientific-slides/references/slide_design_principles.md +849 -0
  1132. package/skills/scientific-slides/references/talk_types_guide.md +687 -0
  1133. package/skills/scientific-slides/references/visual_review_workflow.md +775 -0
  1134. package/skills/scientific-slides/scripts/generate_slide_image.py +140 -0
  1135. package/skills/scientific-slides/scripts/generate_slide_image_ai.py +763 -0
  1136. package/skills/scientific-slides/scripts/pdf_to_images.py +221 -0
  1137. package/skills/scientific-slides/scripts/slides_to_pdf.py +235 -0
  1138. package/skills/scientific-slides/scripts/validate_presentation.py +403 -0
  1139. package/skills/scientific-visualization/SKILL.md +777 -0
  1140. package/skills/scientific-visualization/assets/color_palettes.py +197 -0
  1141. package/skills/scientific-visualization/assets/nature.mplstyle +63 -0
  1142. package/skills/scientific-visualization/assets/presentation.mplstyle +61 -0
  1143. package/skills/scientific-visualization/assets/publication.mplstyle +68 -0
  1144. package/skills/scientific-visualization/references/color_palettes.md +348 -0
  1145. package/skills/scientific-visualization/references/journal_requirements.md +320 -0
  1146. package/skills/scientific-visualization/references/matplotlib_examples.md +620 -0
  1147. package/skills/scientific-visualization/references/publication_guidelines.md +205 -0
  1148. package/skills/scientific-visualization/scripts/figure_export.py +343 -0
  1149. package/skills/scientific-visualization/scripts/style_presets.py +416 -0
  1150. package/skills/scientific-workflows/SKILL.md +1684 -0
  1151. package/skills/scientific-writing/SKILL.md +718 -0
  1152. package/skills/scientific-writing/assets/REPORT_FORMATTING_GUIDE.md +574 -0
  1153. package/skills/scientific-writing/assets/scientific_report.sty +606 -0
  1154. package/skills/scientific-writing/assets/scientific_report_template.tex +449 -0
  1155. package/skills/scientific-writing/references/citation_styles.md +720 -0
  1156. package/skills/scientific-writing/references/figures_tables.md +806 -0
  1157. package/skills/scientific-writing/references/imrad_structure.md +686 -0
  1158. package/skills/scientific-writing/references/professional_report_formatting.md +664 -0
  1159. package/skills/scientific-writing/references/reporting_guidelines.md +748 -0
  1160. package/skills/scientific-writing/references/writing_principles.md +824 -0
  1161. package/skills/scikit-bio/SKILL.md +435 -0
  1162. package/skills/scikit-bio/references/api_reference.md +749 -0
  1163. package/skills/scikit-learn/SKILL.md +519 -0
  1164. package/skills/scikit-learn/references/model_evaluation.md +592 -0
  1165. package/skills/scikit-learn/references/pipelines_and_composition.md +612 -0
  1166. package/skills/scikit-learn/references/preprocessing.md +606 -0
  1167. package/skills/scikit-learn/references/quick_reference.md +433 -0
  1168. package/skills/scikit-learn/references/supervised_learning.md +378 -0
  1169. package/skills/scikit-learn/references/unsupervised_learning.md +505 -0
  1170. package/skills/scikit-learn/scripts/classification_pipeline.py +257 -0
  1171. package/skills/scikit-learn/scripts/clustering_analysis.py +386 -0
  1172. package/skills/scikit-survival/SKILL.md +397 -0
  1173. package/skills/scikit-survival/references/competing-risks.md +397 -0
  1174. package/skills/scikit-survival/references/cox-models.md +182 -0
  1175. package/skills/scikit-survival/references/data-handling.md +494 -0
  1176. package/skills/scikit-survival/references/ensemble-models.md +327 -0
  1177. package/skills/scikit-survival/references/evaluation-metrics.md +378 -0
  1178. package/skills/scikit-survival/references/svm-models.md +411 -0
  1179. package/skills/scvelo/SKILL.md +321 -0
  1180. package/skills/scvelo/references/velocity_models.md +168 -0
  1181. package/skills/scvelo/scripts/rna_velocity_workflow.py +232 -0
  1182. package/skills/scvi-tools/SKILL.md +188 -0
  1183. package/skills/scvi-tools/references/differential-expression.md +581 -0
  1184. package/skills/scvi-tools/references/models-atac-seq.md +321 -0
  1185. package/skills/scvi-tools/references/models-multimodal.md +367 -0
  1186. package/skills/scvi-tools/references/models-scrna-seq.md +330 -0
  1187. package/skills/scvi-tools/references/models-spatial.md +438 -0
  1188. package/skills/scvi-tools/references/models-specialized.md +408 -0
  1189. package/skills/scvi-tools/references/theoretical-foundations.md +438 -0
  1190. package/skills/scvi-tools/references/workflows.md +546 -0
  1191. package/skills/seaborn/SKILL.md +671 -0
  1192. package/skills/seaborn/references/examples.md +822 -0
  1193. package/skills/seaborn/references/function_reference.md +770 -0
  1194. package/skills/seaborn/references/objects_interface.md +964 -0
  1195. package/skills/semantic-scholar/SKILL.md +123 -0
  1196. package/skills/session-log/SKILL.md +10 -0
  1197. package/skills/session-search/SKILL.md +26 -0
  1198. package/skills/setup/SKILL.md +216 -0
  1199. package/skills/shap/SKILL.md +564 -0
  1200. package/skills/shap/references/explainers.md +339 -0
  1201. package/skills/shap/references/plots.md +507 -0
  1202. package/skills/shap/references/theory.md +449 -0
  1203. package/skills/shap/references/workflows.md +605 -0
  1204. package/skills/simpy/SKILL.md +427 -0
  1205. package/skills/simpy/references/events.md +374 -0
  1206. package/skills/simpy/references/monitoring.md +475 -0
  1207. package/skills/simpy/references/process-interaction.md +424 -0
  1208. package/skills/simpy/references/real-time.md +395 -0
  1209. package/skills/simpy/references/resources.md +275 -0
  1210. package/skills/simpy/scripts/basic_simulation_template.py +193 -0
  1211. package/skills/simpy/scripts/resource_monitor.py +345 -0
  1212. package/skills/source-comparison/SKILL.md +12 -0
  1213. package/skills/stable-baselines3/SKILL.md +297 -0
  1214. package/skills/stable-baselines3/references/algorithms.md +333 -0
  1215. package/skills/stable-baselines3/references/callbacks.md +556 -0
  1216. package/skills/stable-baselines3/references/custom_environments.md +526 -0
  1217. package/skills/stable-baselines3/references/vectorized_envs.md +568 -0
  1218. package/skills/stable-baselines3/scripts/custom_env_template.py +314 -0
  1219. package/skills/stable-baselines3/scripts/evaluate_agent.py +245 -0
  1220. package/skills/stable-baselines3/scripts/train_rl_agent.py +165 -0
  1221. package/skills/statistical-analysis/SKILL.md +630 -0
  1222. package/skills/statistical-analysis/references/assumptions_and_diagnostics.md +369 -0
  1223. package/skills/statistical-analysis/references/bayesian_statistics.md +661 -0
  1224. package/skills/statistical-analysis/references/effect_sizes_and_power.md +581 -0
  1225. package/skills/statistical-analysis/references/reporting_standards.md +469 -0
  1226. package/skills/statistical-analysis/references/test_selection_guide.md +129 -0
  1227. package/skills/statistical-analysis/scripts/assumption_checks.py +539 -0
  1228. package/skills/statsmodels/SKILL.md +612 -0
  1229. package/skills/statsmodels/references/discrete_choice.md +669 -0
  1230. package/skills/statsmodels/references/glm.md +619 -0
  1231. package/skills/statsmodels/references/linear_models.md +447 -0
  1232. package/skills/statsmodels/references/stats_diagnostics.md +859 -0
  1233. package/skills/statsmodels/references/time_series.md +716 -0
  1234. package/skills/string-database/SKILL.md +532 -0
  1235. package/skills/string-database/references/string_reference.md +455 -0
  1236. package/skills/string-database/scripts/string_api.py +369 -0
  1237. package/skills/sympy/SKILL.md +498 -0
  1238. package/skills/sympy/references/advanced-topics.md +635 -0
  1239. package/skills/sympy/references/code-generation-printing.md +599 -0
  1240. package/skills/sympy/references/core-capabilities.md +348 -0
  1241. package/skills/sympy/references/matrices-linear-algebra.md +526 -0
  1242. package/skills/sympy/references/physics-mechanics.md +592 -0
  1243. package/skills/tiledbvcf/SKILL.md +459 -0
  1244. package/skills/timesfm-forecasting/SKILL.md +785 -0
  1245. package/skills/timesfm-forecasting/examples/anomaly-detection/detect_anomalies.py +524 -0
  1246. package/skills/timesfm-forecasting/examples/anomaly-detection/output/anomaly_detection.json +448 -0
  1247. package/skills/timesfm-forecasting/examples/anomaly-detection/output/anomaly_detection.png +0 -0
  1248. package/skills/timesfm-forecasting/examples/covariates-forecasting/demo_covariates.py +568 -0
  1249. package/skills/timesfm-forecasting/examples/covariates-forecasting/output/covariates_data.png +0 -0
  1250. package/skills/timesfm-forecasting/examples/covariates-forecasting/output/covariates_metadata.json +59 -0
  1251. package/skills/timesfm-forecasting/examples/covariates-forecasting/output/sales_with_covariates.csv +109 -0
  1252. package/skills/timesfm-forecasting/examples/global-temperature/README.md +178 -0
  1253. package/skills/timesfm-forecasting/examples/global-temperature/generate_animation_data.py +147 -0
  1254. package/skills/timesfm-forecasting/examples/global-temperature/generate_gif.py +248 -0
  1255. package/skills/timesfm-forecasting/examples/global-temperature/generate_html.py +544 -0
  1256. package/skills/timesfm-forecasting/examples/global-temperature/output/animation_data.json +5441 -0
  1257. package/skills/timesfm-forecasting/examples/global-temperature/output/forecast_animation.gif +0 -0
  1258. package/skills/timesfm-forecasting/examples/global-temperature/output/forecast_output.csv +13 -0
  1259. package/skills/timesfm-forecasting/examples/global-temperature/output/forecast_output.json +188 -0
  1260. package/skills/timesfm-forecasting/examples/global-temperature/output/forecast_visualization.png +0 -0
  1261. package/skills/timesfm-forecasting/examples/global-temperature/output/interactive_forecast.html +5939 -0
  1262. package/skills/timesfm-forecasting/examples/global-temperature/run_example.sh +53 -0
  1263. package/skills/timesfm-forecasting/examples/global-temperature/run_forecast.py +167 -0
  1264. package/skills/timesfm-forecasting/examples/global-temperature/temperature_anomaly.csv +37 -0
  1265. package/skills/timesfm-forecasting/examples/global-temperature/visualize_forecast.py +123 -0
  1266. package/skills/timesfm-forecasting/references/api_reference.md +231 -0
  1267. package/skills/timesfm-forecasting/references/data_preparation.md +272 -0
  1268. package/skills/timesfm-forecasting/references/system_requirements.md +201 -0
  1269. package/skills/timesfm-forecasting/scripts/check_system.py +520 -0
  1270. package/skills/timesfm-forecasting/scripts/forecast_csv.py +269 -0
  1271. package/skills/torch-geometric/SKILL.md +674 -0
  1272. package/skills/torch-geometric/references/datasets_reference.md +574 -0
  1273. package/skills/torch-geometric/references/layers_reference.md +485 -0
  1274. package/skills/torch-geometric/references/transforms_reference.md +679 -0
  1275. package/skills/torch-geometric/scripts/benchmark_model.py +309 -0
  1276. package/skills/torch-geometric/scripts/create_gnn_template.py +529 -0
  1277. package/skills/torch-geometric/scripts/visualize_graph.py +313 -0
  1278. package/skills/torchdrug/SKILL.md +448 -0
  1279. package/skills/torchdrug/references/core_concepts.md +565 -0
  1280. package/skills/torchdrug/references/datasets.md +380 -0
  1281. package/skills/torchdrug/references/knowledge_graphs.md +320 -0
  1282. package/skills/torchdrug/references/models_architectures.md +541 -0
  1283. package/skills/torchdrug/references/molecular_generation.md +352 -0
  1284. package/skills/torchdrug/references/molecular_property_prediction.md +169 -0
  1285. package/skills/torchdrug/references/protein_modeling.md +272 -0
  1286. package/skills/torchdrug/references/retrosynthesis.md +436 -0
  1287. package/skills/transformers/SKILL.md +162 -0
  1288. package/skills/transformers/references/generation.md +467 -0
  1289. package/skills/transformers/references/models.md +361 -0
  1290. package/skills/transformers/references/pipelines.md +335 -0
  1291. package/skills/transformers/references/tokenizers.md +447 -0
  1292. package/skills/transformers/references/training.md +500 -0
  1293. package/skills/treatment-plans/SKILL.md +1580 -0
  1294. package/skills/treatment-plans/assets/STYLING_QUICK_REFERENCE.md +185 -0
  1295. package/skills/treatment-plans/assets/chronic_disease_management_plan.tex +665 -0
  1296. package/skills/treatment-plans/assets/general_medical_treatment_plan.tex +547 -0
  1297. package/skills/treatment-plans/assets/medical_treatment_plan.sty +222 -0
  1298. package/skills/treatment-plans/assets/mental_health_treatment_plan.tex +774 -0
  1299. package/skills/treatment-plans/assets/one_page_treatment_plan.tex +193 -0
  1300. package/skills/treatment-plans/assets/pain_management_plan.tex +799 -0
  1301. package/skills/treatment-plans/assets/perioperative_care_plan.tex +753 -0
  1302. package/skills/treatment-plans/assets/quality_checklist.md +471 -0
  1303. package/skills/treatment-plans/assets/rehabilitation_treatment_plan.tex +756 -0
  1304. package/skills/treatment-plans/references/README.md +488 -0
  1305. package/skills/treatment-plans/references/goal_setting_frameworks.md +411 -0
  1306. package/skills/treatment-plans/references/intervention_guidelines.md +507 -0
  1307. package/skills/treatment-plans/references/regulatory_compliance.md +476 -0
  1308. package/skills/treatment-plans/references/specialty_specific_guidelines.md +655 -0
  1309. package/skills/treatment-plans/references/treatment_plan_standards.md +485 -0
  1310. package/skills/treatment-plans/scripts/check_completeness.py +318 -0
  1311. package/skills/treatment-plans/scripts/generate_template.py +244 -0
  1312. package/skills/treatment-plans/scripts/timeline_generator.py +369 -0
  1313. package/skills/treatment-plans/scripts/validate_treatment_plan.py +367 -0
  1314. package/skills/umap-learn/SKILL.md +477 -0
  1315. package/skills/umap-learn/references/api_reference.md +532 -0
  1316. package/skills/uniprot-database/SKILL.md +193 -0
  1317. package/skills/uniprot-database/references/api_examples.md +413 -0
  1318. package/skills/uniprot-database/references/api_fields.md +275 -0
  1319. package/skills/uniprot-database/references/id_mapping_databases.md +285 -0
  1320. package/skills/uniprot-database/references/query_syntax.md +256 -0
  1321. package/skills/uniprot-database/scripts/uniprot_client.py +341 -0
  1322. package/skills/usfiscaldata/SKILL.md +163 -0
  1323. package/skills/usfiscaldata/references/api-basics.md +86 -0
  1324. package/skills/usfiscaldata/references/datasets-debt.md +163 -0
  1325. package/skills/usfiscaldata/references/datasets-fiscal.md +196 -0
  1326. package/skills/usfiscaldata/references/datasets-interest-rates.md +182 -0
  1327. package/skills/usfiscaldata/references/datasets-securities.md +216 -0
  1328. package/skills/usfiscaldata/references/examples.md +258 -0
  1329. package/skills/usfiscaldata/references/parameters.md +155 -0
  1330. package/skills/usfiscaldata/references/response-format.md +176 -0
  1331. package/skills/uspto-database/SKILL.md +605 -0
  1332. package/skills/uspto-database/references/additional_apis.md +394 -0
  1333. package/skills/uspto-database/references/patentsearch_api.md +266 -0
  1334. package/skills/uspto-database/references/peds_api.md +212 -0
  1335. package/skills/uspto-database/references/trademark_api.md +358 -0
  1336. package/skills/uspto-database/scripts/patent_search.py +290 -0
  1337. package/skills/uspto-database/scripts/peds_client.py +285 -0
  1338. package/skills/uspto-database/scripts/trademark_client.py +311 -0
  1339. package/skills/vaex/SKILL.md +180 -0
  1340. package/skills/vaex/references/core_dataframes.md +367 -0
  1341. package/skills/vaex/references/data_processing.md +555 -0
  1342. package/skills/vaex/references/io_operations.md +703 -0
  1343. package/skills/vaex/references/machine_learning.md +728 -0
  1344. package/skills/vaex/references/performance.md +571 -0
  1345. package/skills/vaex/references/visualization.md +613 -0
  1346. package/skills/venue-templates/SKILL.md +688 -0
  1347. package/skills/venue-templates/assets/examples/cell_summary_example.md +247 -0
  1348. package/skills/venue-templates/assets/examples/medical_structured_abstract.md +313 -0
  1349. package/skills/venue-templates/assets/examples/nature_abstract_examples.md +213 -0
  1350. package/skills/venue-templates/assets/examples/neurips_introduction_example.md +245 -0
  1351. package/skills/venue-templates/assets/grants/nih_specific_aims.tex +235 -0
  1352. package/skills/venue-templates/assets/grants/nsf_proposal_template.tex +375 -0
  1353. package/skills/venue-templates/assets/journals/nature_article.tex +171 -0
  1354. package/skills/venue-templates/assets/journals/neurips_article.tex +283 -0
  1355. package/skills/venue-templates/assets/journals/plos_one.tex +317 -0
  1356. package/skills/venue-templates/assets/posters/beamerposter_academic.tex +311 -0
  1357. package/skills/venue-templates/references/cell_press_style.md +483 -0
  1358. package/skills/venue-templates/references/conferences_formatting.md +564 -0
  1359. package/skills/venue-templates/references/cs_conference_style.md +463 -0
  1360. package/skills/venue-templates/references/grants_requirements.md +787 -0
  1361. package/skills/venue-templates/references/journals_formatting.md +486 -0
  1362. package/skills/venue-templates/references/medical_journal_styles.md +535 -0
  1363. package/skills/venue-templates/references/ml_conference_style.md +556 -0
  1364. package/skills/venue-templates/references/nature_science_style.md +405 -0
  1365. package/skills/venue-templates/references/posters_guidelines.md +628 -0
  1366. package/skills/venue-templates/references/reviewer_expectations.md +417 -0
  1367. package/skills/venue-templates/references/venue_writing_styles.md +321 -0
  1368. package/skills/venue-templates/scripts/customize_template.py +206 -0
  1369. package/skills/venue-templates/scripts/query_template.py +260 -0
  1370. package/skills/venue-templates/scripts/validate_format.py +255 -0
  1371. package/skills/watch/SKILL.md +12 -0
  1372. package/skills/what-if-oracle/SKILL.md +168 -0
  1373. package/skills/what-if-oracle/references/scenario-templates.md +137 -0
  1374. package/skills/writing/SKILL.md +414 -0
  1375. package/skills/xlsx/LICENSE.txt +30 -0
  1376. package/skills/xlsx/SKILL.md +292 -0
  1377. package/skills/xlsx/scripts/office/helpers/__init__.py +0 -0
  1378. package/skills/xlsx/scripts/office/helpers/merge_runs.py +199 -0
  1379. package/skills/xlsx/scripts/office/helpers/simplify_redlines.py +197 -0
  1380. package/skills/xlsx/scripts/office/pack.py +159 -0
  1381. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  1382. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  1383. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  1384. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  1385. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  1386. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  1387. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  1388. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  1389. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  1390. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  1391. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  1392. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  1393. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  1394. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  1395. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  1396. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  1397. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  1398. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  1399. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  1400. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  1401. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  1402. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  1403. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  1404. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  1405. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  1406. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  1407. package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  1408. package/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  1409. package/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  1410. package/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  1411. package/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  1412. package/skills/xlsx/scripts/office/schemas/mce/mc.xsd +75 -0
  1413. package/skills/xlsx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  1414. package/skills/xlsx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  1415. package/skills/xlsx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  1416. package/skills/xlsx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  1417. package/skills/xlsx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  1418. package/skills/xlsx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  1419. package/skills/xlsx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  1420. package/skills/xlsx/scripts/office/soffice.py +183 -0
  1421. package/skills/xlsx/scripts/office/unpack.py +132 -0
  1422. package/skills/xlsx/scripts/office/validate.py +111 -0
  1423. package/skills/xlsx/scripts/office/validators/__init__.py +15 -0
  1424. package/skills/xlsx/scripts/office/validators/base.py +847 -0
  1425. package/skills/xlsx/scripts/office/validators/docx.py +446 -0
  1426. package/skills/xlsx/scripts/office/validators/pptx.py +275 -0
  1427. package/skills/xlsx/scripts/office/validators/redlining.py +247 -0
  1428. package/skills/xlsx/scripts/recalc.py +184 -0
  1429. package/skills/zarr-python/SKILL.md +777 -0
  1430. package/skills/zarr-python/references/api_reference.md +515 -0
  1431. package/skills/zinc-database/SKILL.md +402 -0
  1432. package/skills/zinc-database/references/api_reference.md +692 -0
@@ -0,0 +1,785 @@
1
+ ---
2
+ name: timesfm-forecasting
3
+ description: Zero-shot time series forecasting with Google's TimesFM foundation model. Use for any univariate time series (sales, sensors, energy, vitals, weather) without training a custom model. Supports CSV/DataFrame/array inputs with point forecasts and prediction intervals. Includes a preflight system checker script to verify RAM/GPU before first use.
4
+ allowed-tools: Read Write Edit Bash
5
+ license: Apache-2.0 license
6
+ metadata:
7
+ skill-author: Clayton Young / Superior Byte Works, LLC (@borealBytes)
8
+ skill-version: "1.0.0"
9
+ ---
10
+
11
+ # TimesFM Forecasting
12
+
13
+ ## Overview
14
+
15
+ TimesFM (Time Series Foundation Model) is a pretrained decoder-only foundation model
16
+ developed by Google Research for time-series forecasting. It works **zero-shot** — feed it
17
+ any univariate time series and it returns point forecasts with calibrated quantile
18
+ prediction intervals, no training required.
19
+
20
+ This skill wraps TimesFM for safe, agent-friendly local inference. It includes a
21
+ **mandatory preflight system checker** that verifies RAM, GPU memory, and disk space
22
+ before the model is ever loaded so the agent never crashes a user's machine.
23
+
24
+ > **Key numbers**: TimesFM 2.5 uses 200M parameters (~800 MB on disk, ~1.5 GB in RAM on
25
+ > CPU, ~1 GB VRAM on GPU). The archived v1/v2 500M-parameter model needs ~32 GB RAM.
26
+ > Always run the system checker first.
27
+
28
+ ## When to Use This Skill
29
+
30
+ Use this skill when:
31
+
32
+ - Forecasting **any univariate time series** (sales, demand, sensor, vitals, price, weather)
33
+ - You need **zero-shot forecasting** without training a custom model
34
+ - You want **probabilistic forecasts** with calibrated prediction intervals (quantiles)
35
+ - You have time series of **any length** (the model handles 1–16,384 context points)
36
+ - You need to **batch-forecast** hundreds or thousands of series efficiently
37
+ - You want a **foundation model** approach instead of hand-tuning ARIMA/ETS parameters
38
+
39
+ Do **not** use this skill when:
40
+
41
+ - You need classical statistical models with coefficient interpretation → use `statsmodels`
42
+ - You need time series classification or clustering → use `aeon`
43
+ - You need multivariate vector autoregression or Granger causality → use `statsmodels`
44
+ - Your data is tabular (not temporal) → use `scikit-learn`
45
+
46
+ > **Note on Anomaly Detection**: TimesFM does not have built-in anomaly detection, but you can
47
+ > use the **quantile forecasts as prediction intervals** — values outside the 90% CI (q10–q90)
48
+ > are statistically unusual. See the `examples/anomaly-detection/` directory for a full example.
49
+
50
+ ## ⚠️ Mandatory Preflight: System Requirements Check
51
+
52
+ **CRITICAL — ALWAYS run the system checker before loading the model for the first time.**
53
+
54
+ ```bash
55
+ python scripts/check_system.py
56
+ ```
57
+
58
+ This script checks:
59
+
60
+ 1. **Available RAM** — warns if below 4 GB, blocks if below 2 GB
61
+ 2. **GPU availability** — detects CUDA/MPS devices and VRAM
62
+ 3. **Disk space** — verifies room for the ~800 MB model download
63
+ 4. **Python version** — requires 3.10+
64
+ 5. **Existing installation** — checks if `timesfm` and `torch` are installed
65
+
66
+ > **Note:** Model weights are **NOT stored in this repository**. TimesFM weights (~800 MB)
67
+ > download on-demand from HuggingFace on first use and cache in `~/.cache/huggingface/`.
68
+ > The preflight checker ensures sufficient resources before any download begins.
69
+
70
+ ```mermaid
71
+ flowchart TD
72
+ accTitle: Preflight System Check
73
+ accDescr: Decision flowchart showing the system requirement checks that must pass before loading TimesFM.
74
+
75
+ start["🚀 Run check_system.py"] --> ram{"RAM ≥ 4 GB?"}
76
+ ram -->|"Yes"| gpu{"GPU available?"}
77
+ ram -->|"No (2-4 GB)"| warn_ram["⚠️ Warning: tight RAM<br/>CPU-only, small batches"]
78
+ ram -->|"No (< 2 GB)"| block["🛑 BLOCKED<br/>Insufficient memory"]
79
+ warn_ram --> disk
80
+ gpu -->|"CUDA / MPS"| vram{"VRAM ≥ 2 GB?"}
81
+ gpu -->|"CPU only"| cpu_ok["✅ CPU mode<br/>Slower but works"]
82
+ vram -->|"Yes"| gpu_ok["✅ GPU mode<br/>Fast inference"]
83
+ vram -->|"No"| cpu_ok
84
+ gpu_ok --> disk{"Disk ≥ 2 GB free?"}
85
+ cpu_ok --> disk
86
+ disk -->|"Yes"| ready["✅ READY<br/>Safe to load model"]
87
+ disk -->|"No"| block_disk["🛑 BLOCKED<br/>Need space for weights"]
88
+
89
+ classDef ok fill:#dcfce7,stroke:#16a34a,stroke-width:2px,color:#14532d
90
+ classDef warn fill:#fef9c3,stroke:#ca8a04,stroke-width:2px,color:#713f12
91
+ classDef block fill:#fee2e2,stroke:#dc2626,stroke-width:2px,color:#7f1d1d
92
+ classDef neutral fill:#f3f4f6,stroke:#6b7280,stroke-width:2px,color:#1f2937
93
+
94
+ class ready,gpu_ok,cpu_ok ok
95
+ class warn_ram warn
96
+ class block,block_disk block
97
+ class start,ram,gpu,vram,disk neutral
98
+ ```
99
+
100
+ ### Hardware Requirements by Model Version
101
+
102
+ | Model | Parameters | RAM (CPU) | VRAM (GPU) | Disk | Context |
103
+ | ----- | ---------- | --------- | ---------- | ---- | ------- |
104
+ | **TimesFM 2.5** (recommended) | 200M | ≥ 4 GB | ≥ 2 GB | ~800 MB | up to 16,384 |
105
+ | TimesFM 2.0 (archived) | 500M | ≥ 16 GB | ≥ 8 GB | ~2 GB | up to 2,048 |
106
+ | TimesFM 1.0 (archived) | 200M | ≥ 8 GB | ≥ 4 GB | ~800 MB | up to 2,048 |
107
+
108
+ > **Recommendation**: Always use TimesFM 2.5 unless you have a specific reason to use an
109
+ > older checkpoint. It is smaller, faster, and supports 8× longer context.
110
+
111
+ ## 🔧 Installation
112
+
113
+ ### Step 1: Verify System (always first)
114
+
115
+ ```bash
116
+ python scripts/check_system.py
117
+ ```
118
+
119
+ ### Step 2: Install TimesFM
120
+
121
+ ```bash
122
+ # Using uv (recommended by this repo)
123
+ uv pip install timesfm[torch]
124
+
125
+ # Or using pip
126
+ pip install timesfm[torch]
127
+
128
+ # For JAX/Flax backend (faster on TPU/GPU)
129
+ uv pip install timesfm[flax]
130
+ ```
131
+
132
+ ### Step 3: Install PyTorch for Your Hardware
133
+
134
+ ```bash
135
+ # CUDA 12.1 (NVIDIA GPU)
136
+ pip install torch>=2.0.0 --index-url https://download.pytorch.org/whl/cu121
137
+
138
+ # CPU only
139
+ pip install torch>=2.0.0 --index-url https://download.pytorch.org/whl/cpu
140
+
141
+ # Apple Silicon (MPS)
142
+ pip install torch>=2.0.0 # MPS support is built-in
143
+ ```
144
+
145
+ ### Step 4: Verify Installation
146
+
147
+ ```python
148
+ import timesfm
149
+ import numpy as np
150
+ print(f"TimesFM version: {timesfm.__version__}")
151
+ print("Installation OK")
152
+ ```
153
+
154
+ ## 🎯 Quick Start
155
+
156
+ ### Minimal Example (5 Lines)
157
+
158
+ ```python
159
+ import torch, numpy as np, timesfm
160
+
161
+ torch.set_float32_matmul_precision("high")
162
+
163
+ model = timesfm.TimesFM_2p5_200M_torch.from_pretrained(
164
+ "google/timesfm-2.5-200m-pytorch"
165
+ )
166
+ model.compile(timesfm.ForecastConfig(
167
+ max_context=1024, max_horizon=256, normalize_inputs=True,
168
+ use_continuous_quantile_head=True, force_flip_invariance=True,
169
+ infer_is_positive=True, fix_quantile_crossing=True,
170
+ ))
171
+
172
+ point, quantiles = model.forecast(horizon=24, inputs=[
173
+ np.sin(np.linspace(0, 20, 200)), # any 1-D array
174
+ ])
175
+ # point.shape == (1, 24) — median forecast
176
+ # quantiles.shape == (1, 24, 10) — 10th–90th percentile bands
177
+ ```
178
+
179
+ ### Forecast from CSV
180
+
181
+ ```python
182
+ import pandas as pd, numpy as np
183
+
184
+ df = pd.read_csv("monthly_sales.csv", parse_dates=["date"], index_col="date")
185
+
186
+ # Convert each column to a list of arrays
187
+ inputs = [df[col].dropna().values.astype(np.float32) for col in df.columns]
188
+
189
+ point, quantiles = model.forecast(horizon=12, inputs=inputs)
190
+
191
+ # Build a results DataFrame
192
+ for i, col in enumerate(df.columns):
193
+ last_date = df[col].dropna().index[-1]
194
+ future_dates = pd.date_range(last_date, periods=13, freq="MS")[1:]
195
+ forecast_df = pd.DataFrame({
196
+ "date": future_dates,
197
+ "forecast": point[i],
198
+ "lower_80": quantiles[i, :, 2], # 20th percentile
199
+ "upper_80": quantiles[i, :, 8], # 80th percentile
200
+ })
201
+ print(f"\n--- {col} ---")
202
+ print(forecast_df.to_string(index=False))
203
+ ```
204
+
205
+ ### Forecast with Covariates (XReg)
206
+
207
+ TimesFM 2.5+ supports exogenous variables through `forecast_with_covariates()`. Requires `timesfm[xreg]`.
208
+
209
+ ```python
210
+ # Requires: uv pip install timesfm[xreg]
211
+ point, quantiles = model.forecast_with_covariates(
212
+ inputs=inputs,
213
+ dynamic_numerical_covariates={"price": price_arrays},
214
+ dynamic_categorical_covariates={"holiday": holiday_arrays},
215
+ static_categorical_covariates={"region": region_labels},
216
+ xreg_mode="xreg + timesfm", # or "timesfm + xreg"
217
+ )
218
+ ```
219
+
220
+ | Covariate Type | Description | Example |
221
+ | -------------- | ----------- | ------- |
222
+ | `dynamic_numerical` | Time-varying numeric | price, temperature, promotion spend |
223
+ | `dynamic_categorical` | Time-varying categorical | holiday flag, day of week |
224
+ | `static_numerical` | Per-series numeric | store size, account age |
225
+ | `static_categorical` | Per-series categorical | store type, region, product category |
226
+
227
+ **XReg Modes:**
228
+ - `"xreg + timesfm"` (default): TimesFM forecasts first, then XReg adjusts residuals
229
+ - `"timesfm + xreg"`: XReg fits first, then TimesFM forecasts residuals
230
+
231
+ > See `examples/covariates-forecasting/` for a complete example with synthetic retail data.
232
+
233
+ ### Anomaly Detection (via Quantile Intervals)
234
+
235
+ TimesFM does not have built-in anomaly detection, but the **quantile forecasts naturally provide
236
+ prediction intervals** that can detect anomalies:
237
+
238
+ ```python
239
+ point, q = model.forecast(horizon=H, inputs=[values])
240
+
241
+ # 90% prediction interval
242
+ lower_90 = q[0, :, 1] # 10th percentile
243
+ upper_90 = q[0, :, 9] # 90th percentile
244
+
245
+ # Detect anomalies: values outside the 90% CI
246
+ actual = test_values # your holdout data
247
+ anomalies = (actual < lower_90) | (actual > upper_90)
248
+
249
+ # Severity levels
250
+ is_warning = (actual < q[0, :, 2]) | (actual > q[0, :, 8]) # outside 80% CI
251
+ is_critical = anomalies # outside 90% CI
252
+ ```
253
+
254
+ | Severity | Condition | Interpretation |
255
+ | -------- | --------- | -------------- |
256
+ | **Normal** | Inside 80% CI | Expected behavior |
257
+ | **Warning** | Outside 80% CI | Unusual but possible |
258
+ | **Critical** | Outside 90% CI | Statistically rare (< 10% probability) |
259
+
260
+ > See `examples/anomaly-detection/` for a complete example with visualization.
261
+
262
+ ```python
263
+ # Requires: uv pip install timesfm[xreg]
264
+ point, quantiles = model.forecast_with_covariates(
265
+ inputs=inputs,
266
+ dynamic_numerical_covariates={"temperature": temp_arrays},
267
+ dynamic_categorical_covariates={"day_of_week": dow_arrays},
268
+ static_categorical_covariates={"region": region_labels},
269
+ xreg_mode="xreg + timesfm", # or "timesfm + xreg"
270
+ )
271
+ ```
272
+
273
+ ## 📊 Understanding the Output
274
+
275
+ ### Quantile Forecast Structure
276
+
277
+ TimesFM returns `(point_forecast, quantile_forecast)`:
278
+
279
+ - **`point_forecast`**: shape `(batch, horizon)` — the median (0.5 quantile)
280
+ - **`quantile_forecast`**: shape `(batch, horizon, 10)` — ten slices:
281
+
282
+ | Index | Quantile | Use |
283
+ | ----- | -------- | --- |
284
+ | 0 | Mean | Average prediction |
285
+ | 1 | 0.1 | Lower bound of 80% PI |
286
+ | 2 | 0.2 | Lower bound of 60% PI |
287
+ | 3 | 0.3 | — |
288
+ | 4 | 0.4 | — |
289
+ | **5** | **0.5** | **Median (= `point_forecast`)** |
290
+ | 6 | 0.6 | — |
291
+ | 7 | 0.7 | — |
292
+ | 8 | 0.8 | Upper bound of 60% PI |
293
+ | 9 | 0.9 | Upper bound of 80% PI |
294
+
295
+ ### Extracting Prediction Intervals
296
+
297
+ ```python
298
+ point, q = model.forecast(horizon=H, inputs=data)
299
+
300
+ # 80% prediction interval (most common)
301
+ lower_80 = q[:, :, 1] # 10th percentile
302
+ upper_80 = q[:, :, 9] # 90th percentile
303
+
304
+ # 60% prediction interval (tighter)
305
+ lower_60 = q[:, :, 2] # 20th percentile
306
+ upper_60 = q[:, :, 8] # 80th percentile
307
+
308
+ # Median (same as point forecast)
309
+ median = q[:, :, 5]
310
+ ```
311
+
312
+ ```mermaid
313
+ flowchart LR
314
+ accTitle: Quantile Forecast Anatomy
315
+ accDescr: Diagram showing how the 10-element quantile vector maps to prediction intervals.
316
+
317
+ input["📈 Input Series<br/>1-D array"] --> model["🤖 TimesFM<br/>compile + forecast"]
318
+ model --> point["📍 Point Forecast<br/>(batch, horizon)"]
319
+ model --> quant["📊 Quantile Forecast<br/>(batch, horizon, 10)"]
320
+ quant --> pi80["80% PI<br/>q[:,:,1] – q[:,:,9]"]
321
+ quant --> pi60["60% PI<br/>q[:,:,2] – q[:,:,8]"]
322
+ quant --> median["Median<br/>q[:,:,5]"]
323
+
324
+ classDef data fill:#dbeafe,stroke:#2563eb,stroke-width:2px,color:#1e3a5f
325
+ classDef model fill:#f3e8ff,stroke:#9333ea,stroke-width:2px,color:#581c87
326
+ classDef output fill:#dcfce7,stroke:#16a34a,stroke-width:2px,color:#14532d
327
+
328
+ class input data
329
+ class model model
330
+ class point,quant,pi80,pi60,median output
331
+ ```
332
+
333
+ ## 🔧 ForecastConfig Reference
334
+
335
+ All forecasting behavior is controlled by `timesfm.ForecastConfig`:
336
+
337
+ ```python
338
+ timesfm.ForecastConfig(
339
+ max_context=1024, # Max context window (truncates longer series)
340
+ max_horizon=256, # Max forecast horizon
341
+ normalize_inputs=True, # Normalize inputs (RECOMMENDED for stability)
342
+ per_core_batch_size=32, # Batch size per device (tune for memory)
343
+ use_continuous_quantile_head=True, # Better quantile accuracy for long horizons
344
+ force_flip_invariance=True, # Ensures f(-x) = -f(x) (mathematical consistency)
345
+ infer_is_positive=True, # Clamp forecasts ≥ 0 when all inputs > 0
346
+ fix_quantile_crossing=True, # Ensure q10 ≤ q20 ≤ ... ≤ q90
347
+ return_backcast=False, # Return backcast (for covariate workflows)
348
+ )
349
+ ```
350
+
351
+ | Parameter | Default | When to Change |
352
+ | --------- | ------- | -------------- |
353
+ | `max_context` | 0 | Set to match your longest historical window (e.g., 512, 1024, 4096) |
354
+ | `max_horizon` | 0 | Set to your maximum forecast length |
355
+ | `normalize_inputs` | False | **Always set True** — prevents scale-dependent instability |
356
+ | `per_core_batch_size` | 1 | Increase for throughput; decrease if OOM |
357
+ | `use_continuous_quantile_head` | False | **Set True** for calibrated prediction intervals |
358
+ | `force_flip_invariance` | True | Keep True unless profiling shows it hurts |
359
+ | `infer_is_positive` | True | Set False for series that can be negative (temperature, returns) |
360
+ | `fix_quantile_crossing` | False | **Set True** to guarantee monotonic quantiles |
361
+
362
+ ## 📋 Common Workflows
363
+
364
+ ### Workflow 1: Single Series Forecast
365
+
366
+ ```mermaid
367
+ flowchart TD
368
+ accTitle: Single Series Forecast Workflow
369
+ accDescr: Step-by-step workflow for forecasting a single time series with system checking.
370
+
371
+ check["1. Run check_system.py"] --> load["2. Load model<br/>from_pretrained()"]
372
+ load --> compile["3. Compile with ForecastConfig"]
373
+ compile --> prep["4. Prepare data<br/>pd.read_csv → np.array"]
374
+ prep --> forecast["5. model.forecast()<br/>horizon=N"]
375
+ forecast --> extract["6. Extract point + PI"]
376
+ extract --> plot["7. Plot or export results"]
377
+
378
+ classDef step fill:#f3f4f6,stroke:#6b7280,stroke-width:2px,color:#1f2937
379
+ class check,load,compile,prep,forecast,extract,plot step
380
+ ```
381
+
382
+ ```python
383
+ import torch, numpy as np, pandas as pd, timesfm
384
+
385
+ # 1. System check (run once)
386
+ # python scripts/check_system.py
387
+
388
+ # 2-3. Load and compile
389
+ torch.set_float32_matmul_precision("high")
390
+ model = timesfm.TimesFM_2p5_200M_torch.from_pretrained(
391
+ "google/timesfm-2.5-200m-pytorch"
392
+ )
393
+ model.compile(timesfm.ForecastConfig(
394
+ max_context=512, max_horizon=52, normalize_inputs=True,
395
+ use_continuous_quantile_head=True, fix_quantile_crossing=True,
396
+ ))
397
+
398
+ # 4. Prepare data
399
+ df = pd.read_csv("weekly_demand.csv", parse_dates=["week"])
400
+ values = df["demand"].values.astype(np.float32)
401
+
402
+ # 5. Forecast
403
+ point, quantiles = model.forecast(horizon=52, inputs=[values])
404
+
405
+ # 6. Extract prediction intervals
406
+ forecast_df = pd.DataFrame({
407
+ "forecast": point[0],
408
+ "lower_80": quantiles[0, :, 1],
409
+ "upper_80": quantiles[0, :, 9],
410
+ })
411
+
412
+ # 7. Plot
413
+ import matplotlib.pyplot as plt
414
+ fig, ax = plt.subplots(figsize=(12, 5))
415
+ ax.plot(values[-104:], label="Historical")
416
+ x_fc = range(len(values[-104:]), len(values[-104:]) + 52)
417
+ ax.plot(x_fc, forecast_df["forecast"], label="Forecast", color="tab:orange")
418
+ ax.fill_between(x_fc, forecast_df["lower_80"], forecast_df["upper_80"],
419
+ alpha=0.2, color="tab:orange", label="80% PI")
420
+ ax.legend()
421
+ ax.set_title("52-Week Demand Forecast")
422
+ plt.tight_layout()
423
+ plt.savefig("forecast.png", dpi=150)
424
+ print("Saved forecast.png")
425
+ ```
426
+
427
+ ### Workflow 2: Batch Forecasting (Many Series)
428
+
429
+ ```python
430
+ import pandas as pd, numpy as np
431
+
432
+ # Load wide-format CSV (one column per series)
433
+ df = pd.read_csv("all_stores.csv", parse_dates=["date"], index_col="date")
434
+ inputs = [df[col].dropna().values.astype(np.float32) for col in df.columns]
435
+
436
+ # Forecast all series at once (batched internally)
437
+ point, quantiles = model.forecast(horizon=30, inputs=inputs)
438
+
439
+ # Collect results
440
+ results = {}
441
+ for i, col in enumerate(df.columns):
442
+ results[col] = {
443
+ "forecast": point[i].tolist(),
444
+ "lower_80": quantiles[i, :, 1].tolist(),
445
+ "upper_80": quantiles[i, :, 9].tolist(),
446
+ }
447
+
448
+ # Export
449
+ import json
450
+ with open("batch_forecasts.json", "w") as f:
451
+ json.dump(results, f, indent=2)
452
+ print(f"Forecasted {len(results)} series → batch_forecasts.json")
453
+ ```
454
+
455
+ ### Workflow 3: Evaluate Forecast Accuracy
456
+
457
+ ```python
458
+ import numpy as np
459
+
460
+ # Hold out the last H points for evaluation
461
+ H = 24
462
+ train = values[:-H]
463
+ actual = values[-H:]
464
+
465
+ point, quantiles = model.forecast(horizon=H, inputs=[train])
466
+ pred = point[0]
467
+
468
+ # Metrics
469
+ mae = np.mean(np.abs(actual - pred))
470
+ rmse = np.sqrt(np.mean((actual - pred) ** 2))
471
+ mape = np.mean(np.abs((actual - pred) / actual)) * 100
472
+
473
+ # Prediction interval coverage
474
+ lower = quantiles[0, :, 1]
475
+ upper = quantiles[0, :, 9]
476
+ coverage = np.mean((actual >= lower) & (actual <= upper)) * 100
477
+
478
+ print(f"MAE: {mae:.2f}")
479
+ print(f"RMSE: {rmse:.2f}")
480
+ print(f"MAPE: {mape:.1f}%")
481
+ print(f"80% PI Coverage: {coverage:.1f}% (target: 80%)")
482
+ ```
483
+
484
+ ## ⚙️ Performance Tuning
485
+
486
+ ### GPU Acceleration
487
+
488
+ ```python
489
+ import torch
490
+
491
+ # Check GPU availability
492
+ if torch.cuda.is_available():
493
+ print(f"GPU: {torch.cuda.get_device_name(0)}")
494
+ print(f"VRAM: {torch.cuda.get_device_properties(0).total_mem / 1e9:.1f} GB")
495
+ elif hasattr(torch.backends, "mps") and torch.backends.mps.is_available():
496
+ print("Apple Silicon MPS available")
497
+ else:
498
+ print("CPU only — inference will be slower but still works")
499
+
500
+ # Always set this for Ampere+ GPUs (A100, RTX 3090, etc.)
501
+ torch.set_float32_matmul_precision("high")
502
+ ```
503
+
504
+ ### Batch Size Tuning
505
+
506
+ ```python
507
+ # Start conservative, increase until OOM
508
+ # GPU with 8 GB VRAM: per_core_batch_size=64
509
+ # GPU with 16 GB VRAM: per_core_batch_size=128
510
+ # GPU with 24 GB VRAM: per_core_batch_size=256
511
+ # CPU with 8 GB RAM: per_core_batch_size=8
512
+ # CPU with 16 GB RAM: per_core_batch_size=32
513
+ # CPU with 32 GB RAM: per_core_batch_size=64
514
+
515
+ model.compile(timesfm.ForecastConfig(
516
+ max_context=1024,
517
+ max_horizon=256,
518
+ per_core_batch_size=32, # <-- tune this
519
+ normalize_inputs=True,
520
+ use_continuous_quantile_head=True,
521
+ fix_quantile_crossing=True,
522
+ ))
523
+ ```
524
+
525
+ ### Memory-Constrained Environments
526
+
527
+ ```python
528
+ import gc, torch
529
+
530
+ # Force garbage collection before loading
531
+ gc.collect()
532
+ if torch.cuda.is_available():
533
+ torch.cuda.empty_cache()
534
+
535
+ # Load model
536
+ model = timesfm.TimesFM_2p5_200M_torch.from_pretrained(
537
+ "google/timesfm-2.5-200m-pytorch"
538
+ )
539
+
540
+ # Use small batch size on low-memory machines
541
+ model.compile(timesfm.ForecastConfig(
542
+ max_context=512, # Reduce context if needed
543
+ max_horizon=128, # Reduce horizon if needed
544
+ per_core_batch_size=4, # Small batches
545
+ normalize_inputs=True,
546
+ use_continuous_quantile_head=True,
547
+ fix_quantile_crossing=True,
548
+ ))
549
+
550
+ # Process series in chunks to avoid OOM
551
+ CHUNK = 50
552
+ all_results = []
553
+ for i in range(0, len(inputs), CHUNK):
554
+ chunk = inputs[i:i+CHUNK]
555
+ p, q = model.forecast(horizon=H, inputs=chunk)
556
+ all_results.append((p, q))
557
+ gc.collect() # Clean up between chunks
558
+ ```
559
+
560
+ ## 🔗 Integration with Other Skills
561
+
562
+ ### With `statsmodels`
563
+
564
+ Use `statsmodels` for classical models (ARIMA, SARIMAX) as a **comparison baseline**:
565
+
566
+ ```python
567
+ # TimesFM forecast
568
+ tfm_point, tfm_q = model.forecast(horizon=H, inputs=[values])
569
+
570
+ # statsmodels ARIMA forecast
571
+ from statsmodels.tsa.arima.model import ARIMA
572
+ arima = ARIMA(values, order=(1,1,1)).fit()
573
+ arima_forecast = arima.forecast(steps=H)
574
+
575
+ # Compare
576
+ print(f"TimesFM MAE: {np.mean(np.abs(actual - tfm_point[0])):.2f}")
577
+ print(f"ARIMA MAE: {np.mean(np.abs(actual - arima_forecast)):.2f}")
578
+ ```
579
+
580
+ ### With `matplotlib` / `scientific-visualization`
581
+
582
+ Plot forecasts with prediction intervals as publication-quality figures.
583
+
584
+ ### With `exploratory-data-analysis`
585
+
586
+ Run EDA on the time series before forecasting to understand trends, seasonality, and stationarity.
587
+
588
+
589
+
590
+
591
+
592
+ ## 📚 Available Scripts
593
+
594
+ ### `scripts/check_system.py`
595
+
596
+ **Mandatory preflight checker.** Run before first model load.
597
+
598
+ ```bash
599
+ python scripts/check_system.py
600
+ ```
601
+
602
+ Output example:
603
+ ```
604
+ === TimesFM System Requirements Check ===
605
+
606
+ [RAM] Total: 32.0 GB | Available: 24.3 GB ✅ PASS
607
+ [GPU] NVIDIA RTX 4090 | VRAM: 24.0 GB ✅ PASS
608
+ [Disk] Free: 142.5 GB ✅ PASS
609
+ [Python] 3.12.1 ✅ PASS
610
+ [timesfm] Installed (2.5.0) ✅ PASS
611
+ [torch] Installed (2.4.1+cu121) ✅ PASS
612
+
613
+ VERDICT: ✅ System is ready for TimesFM 2.5 (GPU mode)
614
+ Recommended: per_core_batch_size=128
615
+ ```
616
+
617
+ ### `scripts/forecast_csv.py`
618
+
619
+ End-to-end CSV forecasting with automatic system check.
620
+
621
+ ```bash
622
+ python scripts/forecast_csv.py input.csv \
623
+ --horizon 24 \
624
+ --date-col date \
625
+ --value-cols sales,revenue \
626
+ --output forecasts.csv
627
+ ```
628
+
629
+ ## 📖 Reference Documentation
630
+
631
+ Detailed guides in `references/`:
632
+
633
+ | File | Contents |
634
+ | ---- | -------- |
635
+ | `references/system_requirements.md` | Hardware tiers, GPU/CPU selection, memory estimation formulas |
636
+ | `references/api_reference.md` | Full `ForecastConfig` docs, `from_pretrained` options, output shapes |
637
+ | `references/data_preparation.md` | Input formats, NaN handling, CSV loading, covariate setup |
638
+
639
+ ## Common Pitfalls
640
+
641
+ 1. **Not running system check** → model load crashes on low-RAM machines. Always run `check_system.py` first.
642
+ 2. **Forgetting `model.compile()`** → `RuntimeError: Model is not compiled`. Must call `compile()` before `forecast()`.
643
+ 3. **Not setting `normalize_inputs=True`** → unstable forecasts for series with large values.
644
+ 4. **Using v1/v2 on machines with < 32 GB RAM** → use TimesFM 2.5 (200M params) instead.
645
+ 5. **Not setting `fix_quantile_crossing=True`** → quantiles may not be monotonic (q10 > q50).
646
+ 6. **Huge `per_core_batch_size` on small GPU** → CUDA OOM. Start small, increase.
647
+ 7. **Passing 2-D arrays** → TimesFM expects a **list of 1-D arrays**, not a 2-D matrix.
648
+ 8. **Forgetting `torch.set_float32_matmul_precision("high")`** → slower inference on Ampere+ GPUs.
649
+ 9. **Not handling NaN in output** → edge cases with very short series. Always check `np.isnan(point).any()`.
650
+ 10. **Using `infer_is_positive=True` for series that can be negative** → clamps forecasts at zero. Set False for temperature, returns, etc.
651
+
652
+ ## Model Versions
653
+
654
+ ```mermaid
655
+ timeline
656
+ accTitle: TimesFM Version History
657
+ accDescr: Timeline of TimesFM model releases showing parameter counts and key improvements.
658
+
659
+ section 2024
660
+ TimesFM 1.0 : 200M params, 2K context, JAX only
661
+ TimesFM 2.0 : 500M params, 2K context, PyTorch + JAX
662
+ section 2025
663
+ TimesFM 2.5 : 200M params, 16K context, quantile head, no frequency indicator
664
+ ```
665
+
666
+ | Version | Params | Context | Quantile Head | Frequency Flag | Status |
667
+ | ------- | ------ | ------- | ------------- | -------------- | ------ |
668
+ | **2.5** | 200M | 16,384 | ✅ Continuous (30M) | ❌ Removed | **Latest** |
669
+ | 2.0 | 500M | 2,048 | ✅ Fixed buckets | ✅ Required | Archived |
670
+ | 1.0 | 200M | 2,048 | ✅ Fixed buckets | ✅ Required | Archived |
671
+
672
+ **Hugging Face checkpoints:**
673
+
674
+ - `google/timesfm-2.5-200m-pytorch` (recommended)
675
+ - `google/timesfm-2.5-200m-flax`
676
+ - `google/timesfm-2.0-500m-pytorch` (archived)
677
+ - `google/timesfm-1.0-200m-pytorch` (archived)
678
+
679
+ ## Resources
680
+
681
+ - **Paper**: [A Decoder-Only Foundation Model for Time-Series Forecasting](https://arxiv.org/abs/2310.10688) (ICML 2024)
682
+ - **Repository**: https://github.com/google-research/timesfm
683
+ - **Hugging Face**: https://huggingface.co/collections/google/timesfm-release-66e4be5fdb56e960c1e482a6
684
+ - **Google Blog**: https://research.google/blog/a-decoder-only-foundation-model-for-time-series-forecasting/
685
+ - **BigQuery Integration**: https://cloud.google.com/bigquery/docs/timesfm-model
686
+
687
+ ## Examples
688
+
689
+ Three fully-working reference examples live in `examples/`. Use them as ground truth for correct API usage and expected output shape.
690
+
691
+ | Example | Directory | What It Demonstrates | When To Use It |
692
+ | ------- | --------- | -------------------- | -------------- |
693
+ | **Global Temperature Forecast** | `examples/global-temperature/` | Basic `model.forecast()` call, CSV -> PNG -> GIF pipeline, 36-month NOAA context | Starting point; copy-paste baseline for any univariate series |
694
+ | **Anomaly Detection** | `examples/anomaly-detection/` | Two-phase detection: linear detrend + Z-score on context, quantile PI on forecast; 2-panel viz | Any task requiring outlier detection on historical + forecasted data |
695
+ | **Covariates (XReg)** | `examples/covariates-forecasting/` | `forecast_with_covariates()` API (TimesFM 2.5), covariate decomposition, 2x2 shared-axis viz | Retail, energy, or any series with known exogenous drivers |
696
+
697
+ ### Running the Examples
698
+
699
+ ```bash
700
+ # Global temperature (no TimesFM 2.5 needed)
701
+ cd examples/global-temperature && python run_forecast.py && python visualize_forecast.py
702
+
703
+ # Anomaly detection (uses TimesFM 1.0)
704
+ cd examples/anomaly-detection && python detect_anomalies.py
705
+
706
+ # Covariates (API demo -- requires TimesFM 2.5 + timesfm[xreg] for real inference)
707
+ cd examples/covariates-forecasting && python demo_covariates.py
708
+ ```
709
+
710
+ ### Expected Outputs
711
+
712
+ | Example | Key output files | Acceptance criteria |
713
+ | ------- | ---------------- | ------------------- |
714
+ | global-temperature | `output/forecast_output.json`, `output/forecast_visualization.png` | `point_forecast` has 12 values; PNG shows context + forecast + PI bands |
715
+ | anomaly-detection | `output/anomaly_detection.json`, `output/anomaly_detection.png` | Sep 2023 flagged CRITICAL (z >= 3.0); >= 2 forecast CRITICAL from injected anomalies |
716
+ | covariates-forecasting | `output/sales_with_covariates.csv`, `output/covariates_data.png` | CSV has 108 rows (3 stores x 36 weeks); stores have **distinct** price arrays |
717
+
718
+ ## Quality Checklist
719
+
720
+ Run this checklist after every TimesFM task before declaring success:
721
+
722
+ - [ ] **Output shape correct** -- `point_fc` shape is `(n_series, horizon)`, `quant_fc` is `(n_series, horizon, 10)`
723
+ - [ ] **Quantile indices** -- index 0 = mean, 1 = q10, 2 = q20 ... 9 = q90. **NOT** 0 = q0, 1 = q10.
724
+ - [ ] **Frequency flag** -- TimesFM 1.0/2.0: pass `freq=[0]` for monthly data. TimesFM 2.5: no freq flag.
725
+ - [ ] **Series length** -- context must be >= 32 data points (model minimum). Warn if shorter.
726
+ - [ ] **No NaN** -- `np.isnan(point_fc).any()` should be False. Check input series for gaps first.
727
+ - [ ] **Visualization axes** -- if multiple panels share data, use `sharex=True`. All time axes must cover the same span.
728
+ - [ ] **Binary outputs in Git LFS** -- PNG and GIF files must be tracked via `.gitattributes` (repo root already configured).
729
+ - [ ] **No large datasets committed** -- any real dataset > 1 MB should be downloaded to `tempfile.mkdtemp()` and annotated in code.
730
+ - [ ] **`matplotlib.use('Agg')`** -- must appear before any pyplot import when running headless.
731
+ - [ ] **`infer_is_positive`** -- set `False` for temperature anomalies, financial returns, or any series that can be negative.
732
+
733
+ ## Common Mistakes
734
+
735
+ These bugs have appeared in this skill's examples. Learn from them:
736
+
737
+ 1. **Quantile index off-by-one** -- The most common mistake. `quant_fc[..., 0]` is the **mean**, not q0. q10 = index 1, q90 = index 9. Always define named constants: `IDX_Q10, IDX_Q20, IDX_Q80, IDX_Q90 = 1, 2, 8, 9`.
738
+
739
+ 2. **Variable shadowing in comprehensions** -- If you build per-series covariate dicts inside a loop, do NOT use the loop variable as the comprehension variable. Accumulate into separate `dict[str, ndarray]` outside the loop, then assign.
740
+ ```python
741
+ # WRONG -- outer `store_id` gets shadowed:
742
+ covariates = {store_id: arr[store_id] for store_id in stores} # inside outer loop over store_id
743
+ # CORRECT -- use a different name or accumulate beforehand:
744
+ prices_by_store: dict[str, np.ndarray] = {}
745
+ for store_id, config in stores.items():
746
+ prices_by_store[store_id] = compute_price(config)
747
+ ```
748
+
749
+ 3. **Wrong CSV column name** -- The global-temperature CSV uses `anomaly_c`, not `anomaly`. Always `print(df.columns)` before accessing.
750
+
751
+ 4. **`tight_layout()` warning with `sharex=True`** -- Harmless; suppress with `plt.tight_layout(rect=[0, 0, 1, 0.97])` or ignore.
752
+
753
+ 5. **TimesFM 2.5 required for `forecast_with_covariates()`** -- TimesFM 1.0 does NOT have this method. Install `pip install timesfm[xreg]` and use checkpoint `google/timesfm-2.5-200m-pytorch`.
754
+
755
+ 6. **Future covariates must span the full horizon** -- Dynamic covariates (price, promotions, holidays) must have values for BOTH the context AND the forecast horizon. You cannot pass context-only arrays.
756
+
757
+ 7. **Anomaly thresholds must be defined once** -- Define `CRITICAL_Z = 3.0`, `WARNING_Z = 2.0` as module-level constants. Never hardcode `3` or `2` inline.
758
+
759
+ 8. **Context anomaly detection uses residuals, not raw values** -- Always detrend first (`np.polyfit` linear, or seasonal decomposition), then Z-score the residuals. Raw-value Z-scores are misleading on trending data.
760
+
761
+ ## Validation & Verification
762
+
763
+ Use the example outputs as regression baselines. If you change forecasting logic, verify:
764
+
765
+ ```bash
766
+ # Anomaly detection regression check:
767
+ python -c "
768
+ import json
769
+ d = json.load(open('examples/anomaly-detection/output/anomaly_detection.json'))
770
+ ctx = d['context_summary']
771
+ assert ctx['critical'] >= 1, 'Sep 2023 must be CRITICAL'
772
+ assert any(r['date'] == '2023-09' and r['severity'] == 'CRITICAL'
773
+ for r in d['context_detections']), 'Sep 2023 not found'
774
+ print('Anomaly detection regression: PASS')"
775
+
776
+ # Covariates regression check:
777
+ python -c "
778
+ import pandas as pd
779
+ df = pd.read_csv('examples/covariates-forecasting/output/sales_with_covariates.csv')
780
+ assert len(df) == 108, f'Expected 108 rows, got {len(df)}'
781
+ prices = df.groupby('store_id')['price'].mean()
782
+ assert prices['store_A'] > prices['store_B'] > prices['store_C'], 'Store price ordering wrong'
783
+ print('Covariates regression: PASS')"
784
+ ```
785
+