@synsci/cli-darwin-x64-baseline 1.1.71 → 1.1.73

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 (339) hide show
  1. package/bin/skills/citation-management/SKILL.md +1109 -0
  2. package/bin/skills/citation-management/assets/bibtex_template.bib +264 -0
  3. package/bin/skills/citation-management/assets/citation_checklist.md +386 -0
  4. package/bin/skills/citation-management/references/bibtex_formatting.md +908 -0
  5. package/bin/skills/citation-management/references/citation_validation.md +794 -0
  6. package/bin/skills/citation-management/references/google_scholar_search.md +725 -0
  7. package/bin/skills/citation-management/references/metadata_extraction.md +870 -0
  8. package/bin/skills/citation-management/references/pubmed_search.md +839 -0
  9. package/bin/skills/citation-management/scripts/doi_to_bibtex.py +182 -0
  10. package/bin/skills/citation-management/scripts/extract_metadata.py +570 -0
  11. package/bin/skills/citation-management/scripts/format_bibtex.py +349 -0
  12. package/bin/skills/citation-management/scripts/search_google_scholar.py +251 -0
  13. package/bin/skills/citation-management/scripts/search_pubmed.py +348 -0
  14. package/bin/skills/citation-management/scripts/validate_citations.py +494 -0
  15. package/bin/skills/clinical-decision-support/README.md +129 -0
  16. package/bin/skills/clinical-decision-support/SKILL.md +506 -0
  17. package/bin/skills/clinical-decision-support/assets/biomarker_report_template.tex +380 -0
  18. package/bin/skills/clinical-decision-support/assets/clinical_pathway_template.tex +222 -0
  19. package/bin/skills/clinical-decision-support/assets/cohort_analysis_template.tex +359 -0
  20. package/bin/skills/clinical-decision-support/assets/color_schemes.tex +149 -0
  21. package/bin/skills/clinical-decision-support/assets/example_gbm_cohort.md +208 -0
  22. package/bin/skills/clinical-decision-support/assets/recommendation_strength_guide.md +328 -0
  23. package/bin/skills/clinical-decision-support/assets/treatment_recommendation_template.tex +529 -0
  24. package/bin/skills/clinical-decision-support/references/biomarker_classification.md +719 -0
  25. package/bin/skills/clinical-decision-support/references/clinical_decision_algorithms.md +604 -0
  26. package/bin/skills/clinical-decision-support/references/evidence_synthesis.md +840 -0
  27. package/bin/skills/clinical-decision-support/references/outcome_analysis.md +640 -0
  28. package/bin/skills/clinical-decision-support/references/patient_cohort_analysis.md +427 -0
  29. package/bin/skills/clinical-decision-support/references/treatment_recommendations.md +521 -0
  30. package/bin/skills/clinical-decision-support/scripts/biomarker_classifier.py +383 -0
  31. package/bin/skills/clinical-decision-support/scripts/build_decision_tree.py +417 -0
  32. package/bin/skills/clinical-decision-support/scripts/create_cohort_tables.py +509 -0
  33. package/bin/skills/clinical-decision-support/scripts/generate_survival_analysis.py +441 -0
  34. package/bin/skills/clinical-decision-support/scripts/validate_cds_document.py +326 -0
  35. package/bin/skills/clinical-reports/IMPLEMENTATION_SUMMARY.md +641 -0
  36. package/bin/skills/clinical-reports/README.md +236 -0
  37. package/bin/skills/clinical-reports/SKILL.md +1127 -0
  38. package/bin/skills/clinical-reports/assets/case_report_template.md +352 -0
  39. package/bin/skills/clinical-reports/assets/clinical_trial_csr_template.md +353 -0
  40. package/bin/skills/clinical-reports/assets/clinical_trial_sae_template.md +359 -0
  41. package/bin/skills/clinical-reports/assets/consult_note_template.md +305 -0
  42. package/bin/skills/clinical-reports/assets/discharge_summary_template.md +453 -0
  43. package/bin/skills/clinical-reports/assets/hipaa_compliance_checklist.md +395 -0
  44. package/bin/skills/clinical-reports/assets/history_physical_template.md +305 -0
  45. package/bin/skills/clinical-reports/assets/lab_report_template.md +309 -0
  46. package/bin/skills/clinical-reports/assets/pathology_report_template.md +249 -0
  47. package/bin/skills/clinical-reports/assets/quality_checklist.md +338 -0
  48. package/bin/skills/clinical-reports/assets/radiology_report_template.md +318 -0
  49. package/bin/skills/clinical-reports/assets/soap_note_template.md +253 -0
  50. package/bin/skills/clinical-reports/references/case_report_guidelines.md +570 -0
  51. package/bin/skills/clinical-reports/references/clinical_trial_reporting.md +693 -0
  52. package/bin/skills/clinical-reports/references/data_presentation.md +530 -0
  53. package/bin/skills/clinical-reports/references/diagnostic_reports_standards.md +629 -0
  54. package/bin/skills/clinical-reports/references/medical_terminology.md +588 -0
  55. package/bin/skills/clinical-reports/references/patient_documentation.md +744 -0
  56. package/bin/skills/clinical-reports/references/peer_review_standards.md +585 -0
  57. package/bin/skills/clinical-reports/references/regulatory_compliance.md +577 -0
  58. package/bin/skills/clinical-reports/scripts/check_deidentification.py +332 -0
  59. package/bin/skills/clinical-reports/scripts/compliance_checker.py +78 -0
  60. package/bin/skills/clinical-reports/scripts/extract_clinical_data.py +97 -0
  61. package/bin/skills/clinical-reports/scripts/format_adverse_events.py +97 -0
  62. package/bin/skills/clinical-reports/scripts/generate_report_template.py +149 -0
  63. package/bin/skills/clinical-reports/scripts/terminology_validator.py +126 -0
  64. package/bin/skills/clinical-reports/scripts/validate_case_report.py +323 -0
  65. package/bin/skills/clinical-reports/scripts/validate_trial_report.py +88 -0
  66. package/bin/skills/fireworks-ai/SKILL.md +665 -0
  67. package/bin/skills/generate-image/SKILL.md +178 -0
  68. package/bin/skills/generate-image/scripts/generate_image.py +254 -0
  69. package/bin/skills/groq/SKILL.md +347 -0
  70. package/bin/skills/hypothesis-generation/SKILL.md +293 -0
  71. package/bin/skills/hypothesis-generation/assets/FORMATTING_GUIDE.md +672 -0
  72. package/bin/skills/hypothesis-generation/assets/hypothesis_generation.sty +307 -0
  73. package/bin/skills/hypothesis-generation/assets/hypothesis_report_template.tex +572 -0
  74. package/bin/skills/hypothesis-generation/references/experimental_design_patterns.md +329 -0
  75. package/bin/skills/hypothesis-generation/references/hypothesis_quality_criteria.md +198 -0
  76. package/bin/skills/hypothesis-generation/references/literature_search_strategies.md +622 -0
  77. package/bin/skills/latex-posters/README.md +417 -0
  78. package/bin/skills/latex-posters/SKILL.md +1602 -0
  79. package/bin/skills/latex-posters/assets/baposter_template.tex +257 -0
  80. package/bin/skills/latex-posters/assets/beamerposter_template.tex +244 -0
  81. package/bin/skills/latex-posters/assets/poster_quality_checklist.md +358 -0
  82. package/bin/skills/latex-posters/assets/tikzposter_template.tex +251 -0
  83. package/bin/skills/latex-posters/references/latex_poster_packages.md +745 -0
  84. package/bin/skills/latex-posters/references/poster_content_guide.md +748 -0
  85. package/bin/skills/latex-posters/references/poster_design_principles.md +806 -0
  86. package/bin/skills/latex-posters/references/poster_layout_design.md +900 -0
  87. package/bin/skills/latex-posters/scripts/review_poster.sh +214 -0
  88. package/bin/skills/literature-review/SKILL.md +641 -0
  89. package/bin/skills/literature-review/assets/review_template.md +412 -0
  90. package/bin/skills/literature-review/references/citation_styles.md +166 -0
  91. package/bin/skills/literature-review/references/database_strategies.md +455 -0
  92. package/bin/skills/literature-review/scripts/generate_pdf.py +184 -0
  93. package/bin/skills/literature-review/scripts/search_databases.py +310 -0
  94. package/bin/skills/literature-review/scripts/verify_citations.py +218 -0
  95. package/bin/skills/market-research-reports/SKILL.md +904 -0
  96. package/bin/skills/market-research-reports/assets/FORMATTING_GUIDE.md +428 -0
  97. package/bin/skills/market-research-reports/assets/market_report_template.tex +1380 -0
  98. package/bin/skills/market-research-reports/assets/market_research.sty +564 -0
  99. package/bin/skills/market-research-reports/references/data_analysis_patterns.md +548 -0
  100. package/bin/skills/market-research-reports/references/report_structure_guide.md +999 -0
  101. package/bin/skills/market-research-reports/references/visual_generation_guide.md +1077 -0
  102. package/bin/skills/market-research-reports/scripts/generate_market_visuals.py +472 -0
  103. package/bin/skills/markitdown/INSTALLATION_GUIDE.md +318 -0
  104. package/bin/skills/markitdown/LICENSE.txt +22 -0
  105. package/bin/skills/markitdown/OPENROUTER_INTEGRATION.md +359 -0
  106. package/bin/skills/markitdown/QUICK_REFERENCE.md +309 -0
  107. package/bin/skills/markitdown/README.md +184 -0
  108. package/bin/skills/markitdown/SKILL.md +486 -0
  109. package/bin/skills/markitdown/SKILL_SUMMARY.md +307 -0
  110. package/bin/skills/markitdown/assets/example_usage.md +463 -0
  111. package/bin/skills/markitdown/references/api_reference.md +399 -0
  112. package/bin/skills/markitdown/references/file_formats.md +542 -0
  113. package/bin/skills/markitdown/scripts/batch_convert.py +195 -0
  114. package/bin/skills/markitdown/scripts/convert_literature.py +262 -0
  115. package/bin/skills/markitdown/scripts/convert_with_ai.py +224 -0
  116. package/bin/skills/ml-paper-writing/SKILL.md +937 -0
  117. package/bin/skills/ml-paper-writing/references/checklists.md +361 -0
  118. package/bin/skills/ml-paper-writing/references/citation-workflow.md +562 -0
  119. package/bin/skills/ml-paper-writing/references/reviewer-guidelines.md +367 -0
  120. package/bin/skills/ml-paper-writing/references/sources.md +159 -0
  121. package/bin/skills/ml-paper-writing/references/writing-guide.md +476 -0
  122. package/bin/skills/ml-paper-writing/templates/README.md +251 -0
  123. package/bin/skills/ml-paper-writing/templates/aaai2026/README.md +534 -0
  124. package/bin/skills/ml-paper-writing/templates/aaai2026/aaai2026-unified-supp.tex +144 -0
  125. package/bin/skills/ml-paper-writing/templates/aaai2026/aaai2026-unified-template.tex +952 -0
  126. package/bin/skills/ml-paper-writing/templates/aaai2026/aaai2026.bib +111 -0
  127. package/bin/skills/ml-paper-writing/templates/aaai2026/aaai2026.bst +1493 -0
  128. package/bin/skills/ml-paper-writing/templates/aaai2026/aaai2026.sty +315 -0
  129. package/bin/skills/ml-paper-writing/templates/acl/README.md +50 -0
  130. package/bin/skills/ml-paper-writing/templates/acl/acl.sty +312 -0
  131. package/bin/skills/ml-paper-writing/templates/acl/acl_latex.tex +377 -0
  132. package/bin/skills/ml-paper-writing/templates/acl/acl_lualatex.tex +101 -0
  133. package/bin/skills/ml-paper-writing/templates/acl/acl_natbib.bst +1940 -0
  134. package/bin/skills/ml-paper-writing/templates/acl/anthology.bib.txt +26 -0
  135. package/bin/skills/ml-paper-writing/templates/acl/custom.bib +70 -0
  136. package/bin/skills/ml-paper-writing/templates/acl/formatting.md +326 -0
  137. package/bin/skills/ml-paper-writing/templates/colm2025/README.md +3 -0
  138. package/bin/skills/ml-paper-writing/templates/colm2025/colm2025_conference.bib +11 -0
  139. package/bin/skills/ml-paper-writing/templates/colm2025/colm2025_conference.bst +1440 -0
  140. package/bin/skills/ml-paper-writing/templates/colm2025/colm2025_conference.pdf +0 -0
  141. package/bin/skills/ml-paper-writing/templates/colm2025/colm2025_conference.sty +218 -0
  142. package/bin/skills/ml-paper-writing/templates/colm2025/colm2025_conference.tex +305 -0
  143. package/bin/skills/ml-paper-writing/templates/colm2025/fancyhdr.sty +485 -0
  144. package/bin/skills/ml-paper-writing/templates/colm2025/math_commands.tex +508 -0
  145. package/bin/skills/ml-paper-writing/templates/colm2025/natbib.sty +1246 -0
  146. package/bin/skills/ml-paper-writing/templates/iclr2026/fancyhdr.sty +485 -0
  147. package/bin/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.bib +24 -0
  148. package/bin/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.bst +1440 -0
  149. package/bin/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.pdf +0 -0
  150. package/bin/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.sty +246 -0
  151. package/bin/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.tex +414 -0
  152. package/bin/skills/ml-paper-writing/templates/iclr2026/math_commands.tex +508 -0
  153. package/bin/skills/ml-paper-writing/templates/iclr2026/natbib.sty +1246 -0
  154. package/bin/skills/ml-paper-writing/templates/icml2026/algorithm.sty +79 -0
  155. package/bin/skills/ml-paper-writing/templates/icml2026/algorithmic.sty +201 -0
  156. package/bin/skills/ml-paper-writing/templates/icml2026/example_paper.bib +75 -0
  157. package/bin/skills/ml-paper-writing/templates/icml2026/example_paper.pdf +0 -0
  158. package/bin/skills/ml-paper-writing/templates/icml2026/example_paper.tex +662 -0
  159. package/bin/skills/ml-paper-writing/templates/icml2026/fancyhdr.sty +864 -0
  160. package/bin/skills/ml-paper-writing/templates/icml2026/icml2026.bst +1443 -0
  161. package/bin/skills/ml-paper-writing/templates/icml2026/icml2026.sty +767 -0
  162. package/bin/skills/ml-paper-writing/templates/icml2026/icml_numpapers.pdf +0 -0
  163. package/bin/skills/ml-paper-writing/templates/neurips2025/Makefile +36 -0
  164. package/bin/skills/ml-paper-writing/templates/neurips2025/extra_pkgs.tex +53 -0
  165. package/bin/skills/ml-paper-writing/templates/neurips2025/main.tex +38 -0
  166. package/bin/skills/ml-paper-writing/templates/neurips2025/neurips.sty +382 -0
  167. package/bin/skills/paper-2-web/SKILL.md +491 -0
  168. package/bin/skills/paper-2-web/references/installation.md +141 -0
  169. package/bin/skills/paper-2-web/references/paper2poster.md +346 -0
  170. package/bin/skills/paper-2-web/references/paper2video.md +305 -0
  171. package/bin/skills/paper-2-web/references/paper2web.md +187 -0
  172. package/bin/skills/paper-2-web/references/usage_examples.md +436 -0
  173. package/bin/skills/peer-review/SKILL.md +702 -0
  174. package/bin/skills/peer-review/references/calibration_guidelines.md +196 -0
  175. package/bin/skills/peer-review/references/common_issues.md +552 -0
  176. package/bin/skills/peer-review/references/paper_mechanics.md +269 -0
  177. package/bin/skills/peer-review/references/reporting_standards.md +290 -0
  178. package/bin/skills/peer-review/references/scoring_rubric.md +239 -0
  179. package/bin/skills/pptx-posters/SKILL.md +410 -0
  180. package/bin/skills/pptx-posters/assets/poster_html_template.html +257 -0
  181. package/bin/skills/pptx-posters/assets/poster_quality_checklist.md +358 -0
  182. package/bin/skills/pptx-posters/references/poster_content_guide.md +748 -0
  183. package/bin/skills/pptx-posters/references/poster_design_principles.md +806 -0
  184. package/bin/skills/pptx-posters/references/poster_layout_design.md +900 -0
  185. package/bin/skills/research-grants/README.md +285 -0
  186. package/bin/skills/research-grants/SKILL.md +938 -0
  187. package/bin/skills/research-grants/assets/budget_justification_template.md +453 -0
  188. package/bin/skills/research-grants/assets/nih_specific_aims_template.md +166 -0
  189. package/bin/skills/research-grants/assets/nsf_project_summary_template.md +92 -0
  190. package/bin/skills/research-grants/references/broader_impacts.md +392 -0
  191. package/bin/skills/research-grants/references/darpa_guidelines.md +636 -0
  192. package/bin/skills/research-grants/references/doe_guidelines.md +586 -0
  193. package/bin/skills/research-grants/references/nih_guidelines.md +851 -0
  194. package/bin/skills/research-grants/references/nsf_guidelines.md +570 -0
  195. package/bin/skills/research-grants/references/specific_aims_guide.md +458 -0
  196. package/bin/skills/research-lookup/README.md +156 -0
  197. package/bin/skills/research-lookup/SKILL.md +606 -0
  198. package/bin/skills/research-lookup/examples.py +174 -0
  199. package/bin/skills/research-lookup/lookup.py +187 -0
  200. package/bin/skills/research-lookup/research_lookup.py +483 -0
  201. package/bin/skills/research-lookup/scripts/research_lookup.py +483 -0
  202. package/bin/skills/scholar-evaluation/SKILL.md +289 -0
  203. package/bin/skills/scholar-evaluation/references/evaluation_framework.md +663 -0
  204. package/bin/skills/scholar-evaluation/scripts/calculate_scores.py +366 -0
  205. package/bin/skills/scientific-critical-thinking/SKILL.md +566 -0
  206. package/bin/skills/scientific-critical-thinking/references/common_biases.md +364 -0
  207. package/bin/skills/scientific-critical-thinking/references/evidence_hierarchy.md +484 -0
  208. package/bin/skills/scientific-critical-thinking/references/experimental_design.md +496 -0
  209. package/bin/skills/scientific-critical-thinking/references/logical_fallacies.md +478 -0
  210. package/bin/skills/scientific-critical-thinking/references/scientific_method.md +169 -0
  211. package/bin/skills/scientific-critical-thinking/references/statistical_pitfalls.md +506 -0
  212. package/bin/skills/scientific-schematics/QUICK_REFERENCE.md +207 -0
  213. package/bin/skills/scientific-schematics/README.md +327 -0
  214. package/bin/skills/scientific-schematics/SKILL.md +615 -0
  215. package/bin/skills/scientific-schematics/example_usage.sh +89 -0
  216. package/bin/skills/scientific-schematics/references/best_practices.md +559 -0
  217. package/bin/skills/scientific-schematics/scripts/generate_schematic.py +135 -0
  218. package/bin/skills/scientific-schematics/scripts/generate_schematic_ai.py +807 -0
  219. package/bin/skills/scientific-schematics/test_ai_generation.py +243 -0
  220. package/bin/skills/scientific-slides/SKILL.md +942 -0
  221. package/bin/skills/scientific-slides/assets/timing_guidelines.md +597 -0
  222. package/bin/skills/scientific-slides/references/data_visualization_slides.md +708 -0
  223. package/bin/skills/scientific-slides/references/presentation_structure.md +642 -0
  224. package/bin/skills/scientific-slides/references/slide_design_principles.md +849 -0
  225. package/bin/skills/scientific-slides/references/talk_types_guide.md +687 -0
  226. package/bin/skills/scientific-slides/references/visual_review_workflow.md +775 -0
  227. package/bin/skills/scientific-slides/scripts/generate_slide_image.py +143 -0
  228. package/bin/skills/scientific-slides/scripts/generate_slide_image_ai.py +748 -0
  229. package/bin/skills/scientific-slides/scripts/pdf_to_images.py +201 -0
  230. package/bin/skills/scientific-slides/scripts/slides_to_pdf.py +220 -0
  231. package/bin/skills/scientific-slides/scripts/validate_presentation.py +367 -0
  232. package/bin/skills/scientific-writing/SKILL.md +714 -0
  233. package/bin/skills/scientific-writing/assets/REPORT_FORMATTING_GUIDE.md +574 -0
  234. package/bin/skills/scientific-writing/assets/scientific_report.sty +606 -0
  235. package/bin/skills/scientific-writing/assets/scientific_report_template.tex +449 -0
  236. package/bin/skills/scientific-writing/references/citation_styles.md +720 -0
  237. package/bin/skills/scientific-writing/references/figures_tables.md +806 -0
  238. package/bin/skills/scientific-writing/references/imrad_structure.md +686 -0
  239. package/bin/skills/scientific-writing/references/professional_report_formatting.md +664 -0
  240. package/bin/skills/scientific-writing/references/reporting_guidelines.md +748 -0
  241. package/bin/skills/scientific-writing/references/writing_principles.md +824 -0
  242. package/bin/skills/tinker/SKILL.md +2 -3
  243. package/bin/skills/together-ai/SKILL.md +722 -0
  244. package/bin/skills/treatment-plans/README.md +488 -0
  245. package/bin/skills/treatment-plans/SKILL.md +1579 -0
  246. package/bin/skills/treatment-plans/assets/STYLING_QUICK_REFERENCE.md +185 -0
  247. package/bin/skills/treatment-plans/assets/chronic_disease_management_plan.tex +665 -0
  248. package/bin/skills/treatment-plans/assets/general_medical_treatment_plan.tex +547 -0
  249. package/bin/skills/treatment-plans/assets/medical_treatment_plan.sty +222 -0
  250. package/bin/skills/treatment-plans/assets/mental_health_treatment_plan.tex +774 -0
  251. package/bin/skills/treatment-plans/assets/one_page_treatment_plan.tex +193 -0
  252. package/bin/skills/treatment-plans/assets/pain_management_plan.tex +799 -0
  253. package/bin/skills/treatment-plans/assets/perioperative_care_plan.tex +753 -0
  254. package/bin/skills/treatment-plans/assets/quality_checklist.md +471 -0
  255. package/bin/skills/treatment-plans/assets/rehabilitation_treatment_plan.tex +756 -0
  256. package/bin/skills/treatment-plans/references/goal_setting_frameworks.md +411 -0
  257. package/bin/skills/treatment-plans/references/intervention_guidelines.md +507 -0
  258. package/bin/skills/treatment-plans/references/regulatory_compliance.md +476 -0
  259. package/bin/skills/treatment-plans/references/specialty_specific_guidelines.md +655 -0
  260. package/bin/skills/treatment-plans/references/treatment_plan_standards.md +485 -0
  261. package/bin/skills/treatment-plans/scripts/check_completeness.py +322 -0
  262. package/bin/skills/treatment-plans/scripts/generate_template.py +233 -0
  263. package/bin/skills/treatment-plans/scripts/timeline_generator.py +385 -0
  264. package/bin/skills/treatment-plans/scripts/validate_treatment_plan.py +369 -0
  265. package/bin/skills/unsloth/SKILL.md +565 -47
  266. package/bin/skills/unsloth/docs/advanced-rl.md +222 -0
  267. package/bin/skills/unsloth/docs/chat-templates.md +141 -0
  268. package/bin/skills/unsloth/docs/datasets.md +489 -0
  269. package/bin/skills/unsloth/docs/docker-extended.md +99 -0
  270. package/bin/skills/unsloth/docs/dynamic-ggufs-2.0.md +116 -0
  271. package/bin/skills/unsloth/docs/dynamic-ggufs-aider.md +118 -0
  272. package/bin/skills/unsloth/docs/faq.md +91 -0
  273. package/bin/skills/unsloth/docs/fp16-vs-bf16.md +61 -0
  274. package/bin/skills/unsloth/docs/fp8-rl.md +224 -0
  275. package/bin/skills/unsloth/docs/glm-4.7-flash.md +997 -0
  276. package/bin/skills/unsloth/docs/inference-deployment-overview.md +17 -0
  277. package/bin/skills/unsloth/docs/inference.md +27 -0
  278. package/bin/skills/unsloth/docs/installation-docker.md +155 -0
  279. package/bin/skills/unsloth/docs/installation-pip.md +148 -0
  280. package/bin/skills/unsloth/docs/kernels-packing.md +190 -0
  281. package/bin/skills/unsloth/docs/kimi-k2.5.md +634 -0
  282. package/bin/skills/unsloth/docs/lm-studio.md +235 -0
  283. package/bin/skills/unsloth/docs/lora-hot-swapping.md +75 -0
  284. package/bin/skills/unsloth/docs/lora-hyperparameters.md +363 -0
  285. package/bin/skills/unsloth/docs/memory-efficient-rl.md +267 -0
  286. package/bin/skills/unsloth/docs/model-selection.md +70 -0
  287. package/bin/skills/unsloth/docs/models.md +532 -0
  288. package/bin/skills/unsloth/docs/multi-gpu-ddp.md +90 -0
  289. package/bin/skills/unsloth/docs/notebooks.md +223 -0
  290. package/bin/skills/unsloth/docs/overview.md +110 -0
  291. package/bin/skills/unsloth/docs/qwen3-coder-next-extended.md +900 -0
  292. package/bin/skills/unsloth/docs/qwen3-coder-next.md +900 -0
  293. package/bin/skills/unsloth/docs/requirements.md +45 -0
  294. package/bin/skills/unsloth/docs/reward-hacking.md +25 -0
  295. package/bin/skills/unsloth/docs/saving-to-gguf.md +138 -0
  296. package/bin/skills/unsloth/docs/saving-to-ollama.md +46 -0
  297. package/bin/skills/unsloth/docs/sglang-guide.md +278 -0
  298. package/bin/skills/unsloth/docs/speculative-decoding.md +70 -0
  299. package/bin/skills/unsloth/docs/tool-calling.md +334 -0
  300. package/bin/skills/unsloth/docs/troubleshooting-faq.md +204 -0
  301. package/bin/skills/unsloth/docs/troubleshooting-inference.md +26 -0
  302. package/bin/skills/unsloth/docs/tts-fine-tuning.md +149 -0
  303. package/bin/skills/unsloth/docs/tutorial-grpo.md +273 -0
  304. package/bin/skills/unsloth/docs/tutorial-llama3-ollama.md +356 -0
  305. package/bin/skills/unsloth/docs/vision-fine-tuning.md +135 -0
  306. package/bin/skills/unsloth/docs/vision-rl.md +170 -0
  307. package/bin/skills/unsloth/docs/vllm-engine-arguments.md +43 -0
  308. package/bin/skills/unsloth/docs/vllm-guide.md +98 -0
  309. package/bin/skills/venue-templates/SKILL.md +686 -0
  310. package/bin/skills/venue-templates/assets/examples/cell_summary_example.md +247 -0
  311. package/bin/skills/venue-templates/assets/examples/medical_structured_abstract.md +313 -0
  312. package/bin/skills/venue-templates/assets/examples/nature_abstract_examples.md +213 -0
  313. package/bin/skills/venue-templates/assets/examples/neurips_introduction_example.md +245 -0
  314. package/bin/skills/venue-templates/assets/grants/nih_specific_aims.tex +235 -0
  315. package/bin/skills/venue-templates/assets/grants/nsf_proposal_template.tex +375 -0
  316. package/bin/skills/venue-templates/assets/journals/nature_article.tex +171 -0
  317. package/bin/skills/venue-templates/assets/journals/neurips_article.tex +283 -0
  318. package/bin/skills/venue-templates/assets/journals/plos_one.tex +317 -0
  319. package/bin/skills/venue-templates/assets/posters/beamerposter_academic.tex +311 -0
  320. package/bin/skills/venue-templates/references/cell_press_style.md +483 -0
  321. package/bin/skills/venue-templates/references/conferences_formatting.md +564 -0
  322. package/bin/skills/venue-templates/references/cs_conference_style.md +463 -0
  323. package/bin/skills/venue-templates/references/grants_requirements.md +787 -0
  324. package/bin/skills/venue-templates/references/journals_formatting.md +486 -0
  325. package/bin/skills/venue-templates/references/medical_journal_styles.md +535 -0
  326. package/bin/skills/venue-templates/references/ml_conference_style.md +556 -0
  327. package/bin/skills/venue-templates/references/nature_science_style.md +405 -0
  328. package/bin/skills/venue-templates/references/posters_guidelines.md +628 -0
  329. package/bin/skills/venue-templates/references/reviewer_expectations.md +417 -0
  330. package/bin/skills/venue-templates/references/venue_writing_styles.md +321 -0
  331. package/bin/skills/venue-templates/scripts/customize_template.py +195 -0
  332. package/bin/skills/venue-templates/scripts/query_template.py +266 -0
  333. package/bin/skills/venue-templates/scripts/validate_format.py +250 -0
  334. package/bin/synsc +0 -0
  335. package/package.json +1 -1
  336. package/bin/skills/unsloth/references/index.md +0 -7
  337. package/bin/skills/unsloth/references/llms-full.md +0 -16799
  338. package/bin/skills/unsloth/references/llms-txt.md +0 -12044
  339. package/bin/skills/unsloth/references/llms.md +0 -82
@@ -0,0 +1,494 @@
1
+ #!/usr/bin/env python3
2
+ """
3
+ Citation Validation Tool
4
+ Validate BibTeX files for accuracy, completeness, and format compliance.
5
+ """
6
+
7
+ import argparse
8
+ import json
9
+ import re
10
+ import sys
11
+ from collections import defaultdict
12
+ from typing import Dict, List, Optional, Tuple
13
+
14
+ import requests
15
+
16
+
17
+ class CitationValidator:
18
+ """Validate BibTeX entries for errors and inconsistencies."""
19
+
20
+ def __init__(self):
21
+ self.session = requests.Session()
22
+ self.session.headers.update({'User-Agent': 'CitationValidator/1.0 (Citation Management Tool)'})
23
+
24
+ # Required fields by entry type
25
+ self.required_fields = {
26
+ 'article': ['author', 'title', 'journal', 'year'],
27
+ 'book': ['title', 'publisher', 'year'], # author OR editor
28
+ 'inproceedings': ['author', 'title', 'booktitle', 'year'],
29
+ 'incollection': ['author', 'title', 'booktitle', 'publisher', 'year'],
30
+ 'phdthesis': ['author', 'title', 'school', 'year'],
31
+ 'mastersthesis': ['author', 'title', 'school', 'year'],
32
+ 'techreport': ['author', 'title', 'institution', 'year'],
33
+ 'misc': ['title', 'year'],
34
+ }
35
+
36
+ # Recommended fields
37
+ self.recommended_fields = {
38
+ 'article': ['volume', 'pages', 'doi'],
39
+ 'book': ['isbn'],
40
+ 'inproceedings': ['pages'],
41
+ }
42
+
43
+ def parse_bibtex_file(self, filepath: str) -> List[Dict]:
44
+ """
45
+ Parse BibTeX file and extract entries.
46
+
47
+ Args:
48
+ filepath: Path to BibTeX file
49
+
50
+ Returns:
51
+ List of entry dictionaries
52
+ """
53
+ try:
54
+ with open(filepath, 'r', encoding='utf-8') as f:
55
+ content = f.read()
56
+ except Exception as e:
57
+ print(f'Error reading file: {e}', file=sys.stderr)
58
+ return []
59
+
60
+ entries = []
61
+
62
+ # Match BibTeX entries
63
+ pattern = r'@(\w+)\s*\{\s*([^,\s]+)\s*,(.*?)\n\}'
64
+ matches = re.finditer(pattern, content, re.DOTALL | re.IGNORECASE)
65
+
66
+ for match in matches:
67
+ entry_type = match.group(1).lower()
68
+ citation_key = match.group(2).strip()
69
+ fields_text = match.group(3)
70
+
71
+ # Parse fields
72
+ fields = {}
73
+ field_pattern = r'(\w+)\s*=\s*\{([^}]*)\}|(\w+)\s*=\s*"([^"]*)"'
74
+ field_matches = re.finditer(field_pattern, fields_text)
75
+
76
+ for field_match in field_matches:
77
+ if field_match.group(1):
78
+ field_name = field_match.group(1).lower()
79
+ field_value = field_match.group(2)
80
+ else:
81
+ field_name = field_match.group(3).lower()
82
+ field_value = field_match.group(4)
83
+
84
+ fields[field_name] = field_value.strip()
85
+
86
+ entries.append({'type': entry_type, 'key': citation_key, 'fields': fields, 'raw': match.group(0)})
87
+
88
+ return entries
89
+
90
+ def validate_entry(self, entry: Dict) -> Tuple[List[Dict], List[Dict]]:
91
+ """
92
+ Validate a single BibTeX entry.
93
+
94
+ Args:
95
+ entry: Entry dictionary
96
+
97
+ Returns:
98
+ Tuple of (errors, warnings)
99
+ """
100
+ errors = []
101
+ warnings = []
102
+
103
+ entry_type = entry['type']
104
+ key = entry['key']
105
+ fields = entry['fields']
106
+
107
+ # Check required fields
108
+ if entry_type in self.required_fields:
109
+ for req_field in self.required_fields[entry_type]:
110
+ if req_field not in fields or not fields[req_field]:
111
+ # Special case: book can have author OR editor
112
+ if entry_type == 'book' and req_field == 'author':
113
+ if 'editor' not in fields or not fields['editor']:
114
+ errors.append(
115
+ {
116
+ 'type': 'missing_required_field',
117
+ 'field': 'author or editor',
118
+ 'severity': 'high',
119
+ 'message': f'Entry {key}: Missing required field "author" or "editor"',
120
+ }
121
+ )
122
+ else:
123
+ errors.append(
124
+ {
125
+ 'type': 'missing_required_field',
126
+ 'field': req_field,
127
+ 'severity': 'high',
128
+ 'message': f'Entry {key}: Missing required field "{req_field}"',
129
+ }
130
+ )
131
+
132
+ # Check recommended fields
133
+ if entry_type in self.recommended_fields:
134
+ for rec_field in self.recommended_fields[entry_type]:
135
+ if rec_field not in fields or not fields[rec_field]:
136
+ warnings.append(
137
+ {
138
+ 'type': 'missing_recommended_field',
139
+ 'field': rec_field,
140
+ 'severity': 'medium',
141
+ 'message': f'Entry {key}: Missing recommended field "{rec_field}"',
142
+ }
143
+ )
144
+
145
+ # Validate year
146
+ if 'year' in fields:
147
+ year = fields['year']
148
+ if not re.match(r'^\d{4}$', year):
149
+ errors.append(
150
+ {
151
+ 'type': 'invalid_year',
152
+ 'field': 'year',
153
+ 'value': year,
154
+ 'severity': 'high',
155
+ 'message': f'Entry {key}: Invalid year format "{year}" (should be 4 digits)',
156
+ }
157
+ )
158
+ elif int(year) < 1600 or int(year) > 2030:
159
+ warnings.append(
160
+ {
161
+ 'type': 'suspicious_year',
162
+ 'field': 'year',
163
+ 'value': year,
164
+ 'severity': 'medium',
165
+ 'message': f'Entry {key}: Suspicious year "{year}" (outside reasonable range)',
166
+ }
167
+ )
168
+
169
+ # Validate DOI format
170
+ if 'doi' in fields:
171
+ doi = fields['doi']
172
+ if not re.match(r'^10\.\d{4,}/[^\s]+$', doi):
173
+ warnings.append(
174
+ {
175
+ 'type': 'invalid_doi_format',
176
+ 'field': 'doi',
177
+ 'value': doi,
178
+ 'severity': 'medium',
179
+ 'message': f'Entry {key}: Invalid DOI format "{doi}"',
180
+ }
181
+ )
182
+
183
+ # Check for single hyphen in pages (should be --)
184
+ if 'pages' in fields:
185
+ pages = fields['pages']
186
+ if re.search(r'\d-\d', pages) and '--' not in pages:
187
+ warnings.append(
188
+ {
189
+ 'type': 'page_range_format',
190
+ 'field': 'pages',
191
+ 'value': pages,
192
+ 'severity': 'low',
193
+ 'message': f'Entry {key}: Page range uses single hyphen, should use -- (en-dash)',
194
+ }
195
+ )
196
+
197
+ # Check author format
198
+ if 'author' in fields:
199
+ author = fields['author']
200
+ if ';' in author or '&' in author:
201
+ errors.append(
202
+ {
203
+ 'type': 'invalid_author_format',
204
+ 'field': 'author',
205
+ 'severity': 'high',
206
+ 'message': f'Entry {key}: Authors should be separated by " and ", not ";" or "&"',
207
+ }
208
+ )
209
+
210
+ return errors, warnings
211
+
212
+ def verify_doi(self, doi: str) -> Tuple[bool, Optional[Dict]]:
213
+ """
214
+ Verify DOI resolves correctly and get metadata.
215
+
216
+ Args:
217
+ doi: Digital Object Identifier
218
+
219
+ Returns:
220
+ Tuple of (is_valid, metadata)
221
+ """
222
+ try:
223
+ url = f'https://doi.org/{doi}'
224
+ response = self.session.head(url, timeout=10, allow_redirects=True)
225
+
226
+ if response.status_code < 400:
227
+ # DOI resolves, now get metadata from CrossRef
228
+ crossref_url = f'https://api.crossref.org/works/{doi}'
229
+ metadata_response = self.session.get(crossref_url, timeout=10)
230
+
231
+ if metadata_response.status_code == 200:
232
+ data = metadata_response.json()
233
+ message = data.get('message', {})
234
+
235
+ # Extract key metadata
236
+ metadata = {
237
+ 'title': message.get('title', [''])[0],
238
+ 'year': self._extract_year_crossref(message),
239
+ 'authors': self._format_authors_crossref(message.get('author', [])),
240
+ }
241
+ return True, metadata
242
+ else:
243
+ return True, None # DOI resolves but no CrossRef metadata
244
+ else:
245
+ return False, None
246
+
247
+ except Exception:
248
+ return False, None
249
+
250
+ def detect_duplicates(self, entries: List[Dict]) -> List[Dict]:
251
+ """
252
+ Detect duplicate entries.
253
+
254
+ Args:
255
+ entries: List of entry dictionaries
256
+
257
+ Returns:
258
+ List of duplicate groups
259
+ """
260
+ duplicates = []
261
+
262
+ # Check for duplicate DOIs
263
+ doi_map = defaultdict(list)
264
+ for entry in entries:
265
+ doi = entry['fields'].get('doi', '').strip()
266
+ if doi:
267
+ doi_map[doi].append(entry['key'])
268
+
269
+ for doi, keys in doi_map.items():
270
+ if len(keys) > 1:
271
+ duplicates.append(
272
+ {
273
+ 'type': 'duplicate_doi',
274
+ 'doi': doi,
275
+ 'entries': keys,
276
+ 'severity': 'high',
277
+ 'message': f'Duplicate DOI {doi} found in entries: {", ".join(keys)}',
278
+ }
279
+ )
280
+
281
+ # Check for duplicate citation keys
282
+ key_counts = defaultdict(int)
283
+ for entry in entries:
284
+ key_counts[entry['key']] += 1
285
+
286
+ for key, count in key_counts.items():
287
+ if count > 1:
288
+ duplicates.append(
289
+ {
290
+ 'type': 'duplicate_key',
291
+ 'key': key,
292
+ 'count': count,
293
+ 'severity': 'high',
294
+ 'message': f'Citation key "{key}" appears {count} times',
295
+ }
296
+ )
297
+
298
+ # Check for similar titles (possible duplicates)
299
+ titles = {}
300
+ for entry in entries:
301
+ title = entry['fields'].get('title', '').lower()
302
+ title = re.sub(r'[^\w\s]', '', title) # Remove punctuation
303
+ title = ' '.join(title.split()) # Normalize whitespace
304
+
305
+ if title:
306
+ if title in titles:
307
+ duplicates.append(
308
+ {
309
+ 'type': 'similar_title',
310
+ 'entries': [titles[title], entry['key']],
311
+ 'severity': 'medium',
312
+ 'message': f'Possible duplicate: "{titles[title]}" and "{entry["key"]}" have identical titles',
313
+ }
314
+ )
315
+ else:
316
+ titles[title] = entry['key']
317
+
318
+ return duplicates
319
+
320
+ def validate_file(self, filepath: str, check_dois: bool = False) -> Dict:
321
+ """
322
+ Validate entire BibTeX file.
323
+
324
+ Args:
325
+ filepath: Path to BibTeX file
326
+ check_dois: Whether to verify DOIs (slow)
327
+
328
+ Returns:
329
+ Validation report dictionary
330
+ """
331
+ print(f'Parsing {filepath}...', file=sys.stderr)
332
+ entries = self.parse_bibtex_file(filepath)
333
+
334
+ if not entries:
335
+ return {'total_entries': 0, 'errors': [], 'warnings': [], 'duplicates': []}
336
+
337
+ print(f'Found {len(entries)} entries', file=sys.stderr)
338
+
339
+ all_errors = []
340
+ all_warnings = []
341
+
342
+ # Validate each entry
343
+ for i, entry in enumerate(entries):
344
+ print(f'Validating entry {i + 1}/{len(entries)}: {entry["key"]}', file=sys.stderr)
345
+ errors, warnings = self.validate_entry(entry)
346
+
347
+ for error in errors:
348
+ error['entry'] = entry['key']
349
+ all_errors.append(error)
350
+
351
+ for warning in warnings:
352
+ warning['entry'] = entry['key']
353
+ all_warnings.append(warning)
354
+
355
+ # Check for duplicates
356
+ print('Checking for duplicates...', file=sys.stderr)
357
+ duplicates = self.detect_duplicates(entries)
358
+
359
+ # Verify DOIs if requested
360
+ doi_errors = []
361
+ if check_dois:
362
+ print('Verifying DOIs...', file=sys.stderr)
363
+ for i, entry in enumerate(entries):
364
+ doi = entry['fields'].get('doi', '')
365
+ if doi:
366
+ print(f'Verifying DOI {i + 1}: {doi}', file=sys.stderr)
367
+ is_valid, metadata = self.verify_doi(doi)
368
+
369
+ if not is_valid:
370
+ doi_errors.append(
371
+ {
372
+ 'type': 'invalid_doi',
373
+ 'entry': entry['key'],
374
+ 'doi': doi,
375
+ 'severity': 'high',
376
+ 'message': f'Entry {entry["key"]}: DOI does not resolve: {doi}',
377
+ }
378
+ )
379
+
380
+ all_errors.extend(doi_errors)
381
+
382
+ return {
383
+ 'filepath': filepath,
384
+ 'total_entries': len(entries),
385
+ 'valid_entries': len(entries) - len([e for e in all_errors if e['severity'] == 'high']),
386
+ 'errors': all_errors,
387
+ 'warnings': all_warnings,
388
+ 'duplicates': duplicates,
389
+ }
390
+
391
+ def _extract_year_crossref(self, message: Dict) -> str:
392
+ """Extract year from CrossRef message."""
393
+ date_parts = message.get('published-print', {}).get('date-parts', [[]])
394
+ if not date_parts or not date_parts[0]:
395
+ date_parts = message.get('published-online', {}).get('date-parts', [[]])
396
+
397
+ if date_parts and date_parts[0]:
398
+ return str(date_parts[0][0])
399
+ return ''
400
+
401
+ def _format_authors_crossref(self, authors: List[Dict]) -> str:
402
+ """Format author list from CrossRef."""
403
+ if not authors:
404
+ return ''
405
+
406
+ formatted = []
407
+ for author in authors[:3]: # First 3 authors
408
+ given = author.get('given', '')
409
+ family = author.get('family', '')
410
+ if family:
411
+ formatted.append(f'{family}, {given}' if given else family)
412
+
413
+ if len(authors) > 3:
414
+ formatted.append('et al.')
415
+
416
+ return ', '.join(formatted)
417
+
418
+
419
+ def main():
420
+ """Command-line interface."""
421
+ parser = argparse.ArgumentParser(
422
+ description='Validate BibTeX files for errors and inconsistencies',
423
+ epilog='Example: python validate_citations.py references.bib',
424
+ )
425
+
426
+ parser.add_argument('file', help='BibTeX file to validate')
427
+
428
+ parser.add_argument('--check-dois', action='store_true', help='Verify DOIs resolve correctly (slow)')
429
+
430
+ parser.add_argument(
431
+ '--auto-fix', action='store_true', help='Attempt to auto-fix common issues (not implemented yet)'
432
+ )
433
+
434
+ parser.add_argument('--report', help='Output file for JSON validation report')
435
+
436
+ parser.add_argument('--verbose', action='store_true', help='Show detailed output')
437
+
438
+ args = parser.parse_args()
439
+
440
+ # Validate file
441
+ validator = CitationValidator()
442
+ report = validator.validate_file(args.file, check_dois=args.check_dois)
443
+
444
+ # Print summary
445
+ print('\n' + '=' * 60)
446
+ print('CITATION VALIDATION REPORT')
447
+ print('=' * 60)
448
+ print(f'\nFile: {args.file}')
449
+ print(f'Total entries: {report["total_entries"]}')
450
+ print(f'Valid entries: {report["valid_entries"]}')
451
+ print(f'Errors: {len(report["errors"])}')
452
+ print(f'Warnings: {len(report["warnings"])}')
453
+ print(f'Duplicates: {len(report["duplicates"])}')
454
+
455
+ # Print errors
456
+ if report['errors']:
457
+ print('\n' + '-' * 60)
458
+ print('ERRORS (must fix):')
459
+ print('-' * 60)
460
+ for error in report['errors']:
461
+ print(f'\n{error["message"]}')
462
+ if args.verbose:
463
+ print(f' Type: {error["type"]}')
464
+ print(f' Severity: {error["severity"]}')
465
+
466
+ # Print warnings
467
+ if report['warnings'] and args.verbose:
468
+ print('\n' + '-' * 60)
469
+ print('WARNINGS (should fix):')
470
+ print('-' * 60)
471
+ for warning in report['warnings']:
472
+ print(f'\n{warning["message"]}')
473
+
474
+ # Print duplicates
475
+ if report['duplicates']:
476
+ print('\n' + '-' * 60)
477
+ print('DUPLICATES:')
478
+ print('-' * 60)
479
+ for dup in report['duplicates']:
480
+ print(f'\n{dup["message"]}')
481
+
482
+ # Save report
483
+ if args.report:
484
+ with open(args.report, 'w', encoding='utf-8') as f:
485
+ json.dump(report, f, indent=2)
486
+ print(f'\nDetailed report saved to: {args.report}')
487
+
488
+ # Exit with error code if there are errors
489
+ if report['errors']:
490
+ sys.exit(1)
491
+
492
+
493
+ if __name__ == '__main__':
494
+ main()
@@ -0,0 +1,129 @@
1
+ # Clinical Decision Support Skill
2
+
3
+ Professional clinical decision support documents for medical professionals in pharmaceutical and clinical research settings.
4
+
5
+ ## Quick Start
6
+
7
+ This skill enables generation of three types of clinical documents:
8
+
9
+ 1. **Individual Patient Treatment Plans** - Personalized protocols for specific patients
10
+ 2. **Patient Cohort Analysis** - Biomarker-stratified group analyses with outcomes
11
+ 3. **Treatment Recommendation Reports** - Evidence-based clinical guidelines
12
+
13
+ All documents are generated as compact, professional LaTeX/PDF files.
14
+
15
+ ## Directory Structure
16
+
17
+ ```
18
+ clinical-decision-support/
19
+ ├── SKILL.md # Main skill definition
20
+ ├── README.md # This file
21
+
22
+ ├── references/ # Clinical guidance documents
23
+ │ ├── patient_cohort_analysis.md
24
+ │ ├── treatment_recommendations.md
25
+ │ ├── clinical_decision_algorithms.md
26
+ │ ├── biomarker_classification.md
27
+ │ ├── outcome_analysis.md
28
+ │ └── evidence_synthesis.md
29
+
30
+ ├── assets/ # Templates and examples
31
+ │ ├── cohort_analysis_template.tex
32
+ │ ├── treatment_recommendation_template.tex
33
+ │ ├── clinical_pathway_template.tex
34
+ │ ├── biomarker_report_template.tex
35
+ │ ├── example_gbm_cohort.md
36
+ │ ├── recommendation_strength_guide.md
37
+ │ └── color_schemes.tex
38
+
39
+ └── scripts/ # Analysis and generation tools
40
+ ├── generate_survival_analysis.py
41
+ ├── create_cohort_tables.py
42
+ ├── build_decision_tree.py
43
+ ├── biomarker_classifier.py
44
+ └── validate_cds_document.py
45
+ ```
46
+
47
+ ## Example Use Cases
48
+
49
+ ### Create a Patient Cohort Analysis
50
+ ```
51
+ > Analyze a cohort of 45 NSCLC patients stratified by PD-L1 expression
52
+ (<1%, 1-49%, ≥50%) including ORR, PFS, and OS outcomes
53
+ ```
54
+
55
+ ### Generate Treatment Recommendations
56
+ ```
57
+ > Create evidence-based treatment recommendations for HER2-positive
58
+ metastatic breast cancer with GRADE methodology
59
+ ```
60
+
61
+ ### Build Clinical Pathway
62
+ ```
63
+ > Generate a clinical decision algorithm for acute chest pain
64
+ management with TIMI risk score
65
+ ```
66
+
67
+ ## Key Features
68
+
69
+ - **GRADE Methodology**: Evidence quality grading (High/Moderate/Low/Very Low)
70
+ - **Recommendation Strength**: Strong (Grade 1) vs Conditional (Grade 2)
71
+ - **Biomarker Integration**: Genomic, expression, and molecular subtype classification
72
+ - **Statistical Analysis**: Kaplan-Meier, Cox regression, log-rank tests
73
+ - **Guideline Concordance**: NCCN, ASCO, ESMO, AHA/ACC integration
74
+ - **Professional Output**: 0.5in margins, color-coded boxes, publication-ready
75
+
76
+ ## Dependencies
77
+
78
+ Python scripts require:
79
+ - `pandas`, `numpy`, `scipy`: Data analysis and statistics
80
+ - `lifelines`: Survival analysis (Kaplan-Meier, Cox regression)
81
+ - `matplotlib`: Visualization
82
+ - `pyyaml` (optional): YAML input for decision trees
83
+
84
+ Install with:
85
+ ```bash
86
+ pip install pandas numpy scipy lifelines matplotlib pyyaml
87
+ ```
88
+
89
+ ## References Included
90
+
91
+ 1. **Patient Cohort Analysis**: Stratification methods, biomarker correlations, statistical comparisons
92
+ 2. **Treatment Recommendations**: Evidence grading, treatment sequencing, special populations
93
+ 3. **Clinical Decision Algorithms**: Risk scores, decision trees, TikZ flowcharts
94
+ 4. **Biomarker Classification**: Genomic alterations, molecular subtypes, companion diagnostics
95
+ 5. **Outcome Analysis**: Survival methods, response criteria (RECIST), effect sizes
96
+ 6. **Evidence Synthesis**: Guideline integration, systematic reviews, meta-analysis
97
+
98
+ ## Templates Provided
99
+
100
+ 1. **Cohort Analysis**: Demographics table, biomarker profile, outcomes, statistics, recommendations
101
+ 2. **Treatment Recommendations**: Evidence review, GRADE-graded options, monitoring, decision algorithm
102
+ 3. **Clinical Pathway**: TikZ flowchart with risk stratification and urgency-coded actions
103
+ 4. **Biomarker Report**: Genomic profiling with tier-based actionability and therapy matching
104
+
105
+ ## Scripts Included
106
+
107
+ 1. **`generate_survival_analysis.py`**: Create Kaplan-Meier curves with hazard ratios
108
+ 2. **`create_cohort_tables.py`**: Generate baseline, efficacy, and safety tables
109
+ 3. **`build_decision_tree.py`**: Convert text/JSON to TikZ flowcharts
110
+ 4. **`biomarker_classifier.py`**: Stratify patients by PD-L1, HER2, molecular subtypes
111
+ 5. **`validate_cds_document.py`**: Quality checks for completeness and compliance
112
+
113
+ ## Integration
114
+
115
+ Integrates with existing skills:
116
+ - **scientific-writing**: Citation management, statistical reporting
117
+ - **clinical-reports**: Medical terminology, HIPAA compliance
118
+ - **scientific-schematics**: TikZ flowcharts
119
+
120
+ ## Version
121
+
122
+ Version 1.0 - Initial release
123
+ Created: November 2024
124
+ Last Updated: November 5, 2024
125
+
126
+ ## Questions or Feedback
127
+
128
+ This skill was designed for pharmaceutical and clinical research professionals creating clinical decision support documents. For questions about usage or suggestions for improvements, contact the Scientific Writer development team.
129
+