medsci-skills 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (702) hide show
  1. package/LICENSE +50 -0
  2. package/README.md +602 -0
  3. package/README_FIRST.md +27 -0
  4. package/bin/medsci-skills.js +159 -0
  5. package/installers/install-macos.command +19 -0
  6. package/installers/install-windows.cmd +26 -0
  7. package/installers/install-windows.ps1 +17 -0
  8. package/installers/install.py +218 -0
  9. package/metadata/skills_catalog.json +452 -0
  10. package/package.json +48 -0
  11. package/skills/academic-aio/SKILL.md +408 -0
  12. package/skills/academic-aio/references/case_studies/kjr_mllm_2025.md +82 -0
  13. package/skills/academic-aio/references/checklists/AIO_GENERAL.md +354 -0
  14. package/skills/academic-aio/references/journal_summarybox_templates.yaml +126 -0
  15. package/skills/academic-aio/references/oac_funding_checklist.yaml +129 -0
  16. package/skills/academic-aio/references/reporting_guideline_mapping.md +39 -0
  17. package/skills/academic-aio/references/schema_markup_templates/CodeRepository.jsonld +32 -0
  18. package/skills/academic-aio/references/schema_markup_templates/Dataset.jsonld +36 -0
  19. package/skills/academic-aio/references/schema_markup_templates/Person.jsonld +30 -0
  20. package/skills/academic-aio/references/schema_markup_templates/README.md +43 -0
  21. package/skills/academic-aio/references/schema_markup_templates/ScholarlyArticle.jsonld +55 -0
  22. package/skills/academic-aio/scripts/batch_metadata_audit.py +169 -0
  23. package/skills/academic-aio/scripts/validate_schema.py +118 -0
  24. package/skills/academic-aio/skill.yml +36 -0
  25. package/skills/academic-aio/templates/aio_audit_checklist.md.j2 +108 -0
  26. package/skills/add-journal/SKILL.md +482 -0
  27. package/skills/add-journal/skill.yml +33 -0
  28. package/skills/analyze-stats/SKILL.md +598 -0
  29. package/skills/analyze-stats/references/analysis_guides/missing_data.md +109 -0
  30. package/skills/analyze-stats/references/analysis_guides/nhis_icd10_mapping.md +247 -0
  31. package/skills/analyze-stats/references/analysis_guides/propensity_score.md +132 -0
  32. package/skills/analyze-stats/references/analysis_guides/regression.md +115 -0
  33. package/skills/analyze-stats/references/analysis_guides/repeated_measures.md +160 -0
  34. package/skills/analyze-stats/references/analysis_guides/survey_weighted.md +366 -0
  35. package/skills/analyze-stats/references/analysis_guides/test_selection.md +86 -0
  36. package/skills/analyze-stats/references/style/figure_style.mplstyle +69 -0
  37. package/skills/analyze-stats/references/style/theme_publication.R +147 -0
  38. package/skills/analyze-stats/references/table-standards/journal-profiles/ajr.yaml +51 -0
  39. package/skills/analyze-stats/references/table-standards/journal-profiles/european_radiology.yaml +55 -0
  40. package/skills/analyze-stats/references/table-standards/journal-profiles/jama.yaml +66 -0
  41. package/skills/analyze-stats/references/table-standards/journal-profiles/lancet.yaml +57 -0
  42. package/skills/analyze-stats/references/table-standards/journal-profiles/nejm.yaml +51 -0
  43. package/skills/analyze-stats/references/table-standards/journal-profiles/radiology.yaml +66 -0
  44. package/skills/analyze-stats/references/table-standards/table-standards.md +287 -0
  45. package/skills/analyze-stats/references/table-standards/table-types/diagnostic_accuracy.md +36 -0
  46. package/skills/analyze-stats/references/table-standards/table-types/meta_analysis.md +58 -0
  47. package/skills/analyze-stats/references/table-standards/table-types/model_comparison.md +36 -0
  48. package/skills/analyze-stats/references/table-standards/table-types/regression_results.md +50 -0
  49. package/skills/analyze-stats/references/table-standards/table-types/table1_demographics.md +51 -0
  50. package/skills/analyze-stats/references/table-standards/tool-comparison.md +79 -0
  51. package/skills/analyze-stats/references/templates/agreement_analysis.py +436 -0
  52. package/skills/analyze-stats/references/templates/dca_plot.R +237 -0
  53. package/skills/analyze-stats/references/templates/diagnostic_accuracy.py +401 -0
  54. package/skills/analyze-stats/references/templates/dta_meta_analysis.R +384 -0
  55. package/skills/analyze-stats/references/templates/forest_plot.py +412 -0
  56. package/skills/analyze-stats/references/templates/likert_summary.py +356 -0
  57. package/skills/analyze-stats/references/templates/meta_analysis.R +365 -0
  58. package/skills/analyze-stats/references/templates/propensity_score.py +478 -0
  59. package/skills/analyze-stats/references/templates/regression.py +425 -0
  60. package/skills/analyze-stats/references/templates/repeated_measures.py +434 -0
  61. package/skills/analyze-stats/references/templates/sample_size.R +382 -0
  62. package/skills/analyze-stats/references/templates/survey_weighted_analysis.py +411 -0
  63. package/skills/analyze-stats/references/templates/survival_analysis.py +325 -0
  64. package/skills/analyze-stats/references/templates/table1_demographics.py +287 -0
  65. package/skills/analyze-stats/scripts/check_generated_code.py +335 -0
  66. package/skills/analyze-stats/skill.yml +38 -0
  67. package/skills/analyze-stats/tests/fixtures/gen_bad.R +16 -0
  68. package/skills/analyze-stats/tests/fixtures/gen_bad.py +24 -0
  69. package/skills/analyze-stats/tests/fixtures/gen_clean.py +21 -0
  70. package/skills/analyze-stats/tests/test_generated_code.sh +59 -0
  71. package/skills/analyze-stats/tests/test_survival_template.sh +53 -0
  72. package/skills/author-strategy/SKILL.md +117 -0
  73. package/skills/author-strategy/analyze_patterns.py +303 -0
  74. package/skills/author-strategy/fetch_pubmed.py +374 -0
  75. package/skills/author-strategy/skill.yml +34 -0
  76. package/skills/batch-cohort/SKILL.md +223 -0
  77. package/skills/batch-cohort/references/base_template_knhanes.R +210 -0
  78. package/skills/batch-cohort/references/batch_template_generator.R +222 -0
  79. package/skills/batch-cohort/references/variable_coding_registry.md +136 -0
  80. package/skills/batch-cohort/skill.yml +35 -0
  81. package/skills/calc-sample-size/SKILL.md +491 -0
  82. package/skills/calc-sample-size/references/formulas.md +655 -0
  83. package/skills/calc-sample-size/references/observational_cohort.md +49 -0
  84. package/skills/calc-sample-size/skill.yml +51 -0
  85. package/skills/check-reporting/SKILL.md +534 -0
  86. package/skills/check-reporting/references/LICENSES.md +41 -0
  87. package/skills/check-reporting/references/checklists/AMSTAR2.md +54 -0
  88. package/skills/check-reporting/references/checklists/ARRIVE_2.md +234 -0
  89. package/skills/check-reporting/references/checklists/CARE.md +102 -0
  90. package/skills/check-reporting/references/checklists/CLAIM_2024.md +128 -0
  91. package/skills/check-reporting/references/checklists/CLEAR.md +113 -0
  92. package/skills/check-reporting/references/checklists/CONSORT.md +86 -0
  93. package/skills/check-reporting/references/checklists/COSMIN_RoB.md +136 -0
  94. package/skills/check-reporting/references/checklists/GRRAS.md +61 -0
  95. package/skills/check-reporting/references/checklists/MI_CLEAR_LLM.md +167 -0
  96. package/skills/check-reporting/references/checklists/MOOSE.md +85 -0
  97. package/skills/check-reporting/references/checklists/NOS.md +88 -0
  98. package/skills/check-reporting/references/checklists/PRISMA_2020.md +135 -0
  99. package/skills/check-reporting/references/checklists/PRISMA_DTA.md +36 -0
  100. package/skills/check-reporting/references/checklists/PRISMA_P.md +56 -0
  101. package/skills/check-reporting/references/checklists/PROBAST.md +75 -0
  102. package/skills/check-reporting/references/checklists/PROBAST_AI.md +130 -0
  103. package/skills/check-reporting/references/checklists/QUADAS2.md +77 -0
  104. package/skills/check-reporting/references/checklists/QUADAS_C.md +131 -0
  105. package/skills/check-reporting/references/checklists/ROBINS_E.md +179 -0
  106. package/skills/check-reporting/references/checklists/ROBINS_I.md +87 -0
  107. package/skills/check-reporting/references/checklists/ROBIS.md +114 -0
  108. package/skills/check-reporting/references/checklists/ROB_ME.md +126 -0
  109. package/skills/check-reporting/references/checklists/RoB2.md +79 -0
  110. package/skills/check-reporting/references/checklists/RoB_NMA.md +96 -0
  111. package/skills/check-reporting/references/checklists/SPIRIT.md +112 -0
  112. package/skills/check-reporting/references/checklists/SQUIRE_2.md +68 -0
  113. package/skills/check-reporting/references/checklists/STARD.md +129 -0
  114. package/skills/check-reporting/references/checklists/STARD_AI.md +211 -0
  115. package/skills/check-reporting/references/checklists/STROBE.md +80 -0
  116. package/skills/check-reporting/references/checklists/SWiM.md +33 -0
  117. package/skills/check-reporting/references/checklists/TRIPOD.md +157 -0
  118. package/skills/check-reporting/references/checklists/TRIPOD_AI.md +140 -0
  119. package/skills/check-reporting/references/step4c_registration_timing.md +93 -0
  120. package/skills/check-reporting/references/step4d_prisma_figure_audit.md +137 -0
  121. package/skills/check-reporting/scripts/check_checklist_exists.py +183 -0
  122. package/skills/check-reporting/scripts/check_checklist_version.py +168 -0
  123. package/skills/check-reporting/scripts/check_framework_naming.py +206 -0
  124. package/skills/check-reporting/scripts/check_prisma_figure.py +209 -0
  125. package/skills/check-reporting/scripts/prisma_cascade_check.py +274 -0
  126. package/skills/check-reporting/skill.yml +41 -0
  127. package/skills/check-reporting/tests/fixtures/framework_bad.md +8 -0
  128. package/skills/check-reporting/tests/fixtures/framework_clean.md +7 -0
  129. package/skills/check-reporting/tests/test_checklist_fail_fast.sh +77 -0
  130. package/skills/check-reporting/tests/test_checklist_version.sh +72 -0
  131. package/skills/check-reporting/tests/test_framework_naming.sh +45 -0
  132. package/skills/check-reporting/tests/test_prisma_cascade.sh +104 -0
  133. package/skills/clean-data/SKILL.md +180 -0
  134. package/skills/clean-data/references/cleaning_patterns.md +299 -0
  135. package/skills/clean-data/references/profiling_template.py +304 -0
  136. package/skills/clean-data/scripts/check_structural_zero.py +174 -0
  137. package/skills/clean-data/skill.yml +35 -0
  138. package/skills/clean-data/tests/fixtures/smoking.csv +8 -0
  139. package/skills/clean-data/tests/test_structural_zero.sh +49 -0
  140. package/skills/cross-national/SKILL.md +264 -0
  141. package/skills/cross-national/skill.yml +37 -0
  142. package/skills/define-variables/SKILL.md +146 -0
  143. package/skills/define-variables/references/common_definitions.md +190 -0
  144. package/skills/define-variables/skill.yml +34 -0
  145. package/skills/define-variables/templates/variable_operationalization.md +64 -0
  146. package/skills/deidentify/SKILL.md +203 -0
  147. package/skills/deidentify/deidentify.py +1224 -0
  148. package/skills/deidentify/locales/_template.json +45 -0
  149. package/skills/deidentify/locales/au.json +43 -0
  150. package/skills/deidentify/locales/ca.json +44 -0
  151. package/skills/deidentify/locales/cn.json +47 -0
  152. package/skills/deidentify/locales/de.json +48 -0
  153. package/skills/deidentify/locales/fr.json +48 -0
  154. package/skills/deidentify/locales/in.json +48 -0
  155. package/skills/deidentify/locales/jp.json +48 -0
  156. package/skills/deidentify/locales/kr.json +48 -0
  157. package/skills/deidentify/locales/uk.json +45 -0
  158. package/skills/deidentify/locales/us.json +43 -0
  159. package/skills/deidentify/references/date_shift_guide.md +82 -0
  160. package/skills/deidentify/references/hipaa_18_identifiers.md +48 -0
  161. package/skills/deidentify/references/korean_phi_patterns.md +135 -0
  162. package/skills/deidentify/skill.yml +43 -0
  163. package/skills/deidentify/tests/README.md +26 -0
  164. package/skills/deidentify/tests/test_clean.csv +16 -0
  165. package/skills/deidentify/tests/test_edge_cases.csv +11 -0
  166. package/skills/deidentify/tests/test_phi_korean.csv +11 -0
  167. package/skills/design-ai-benchmarking/SKILL.md +214 -0
  168. package/skills/design-ai-benchmarking/references/benchmark_export_schema.json +69 -0
  169. package/skills/design-ai-benchmarking/references/elicitation_rubric_template.md +37 -0
  170. package/skills/design-ai-benchmarking/skill.yml +38 -0
  171. package/skills/design-study/SKILL.md +298 -0
  172. package/skills/design-study/skill.yml +33 -0
  173. package/skills/fill-icmje-coi/SKILL.md +216 -0
  174. package/skills/fill-icmje-coi/scripts/fill_icmje_coi.py +140 -0
  175. package/skills/fill-icmje-coi/skill.yml +35 -0
  176. package/skills/fill-icmje-coi/templates/icmje_coi_seed_synthetic.docx +0 -0
  177. package/skills/fill-protocol/SKILL.md +248 -0
  178. package/skills/fill-protocol/examples/example_irb_template.yaml +53 -0
  179. package/skills/fill-protocol/references/best_practices.md +121 -0
  180. package/skills/fill-protocol/scripts/doc_to_docx.py +111 -0
  181. package/skills/fill-protocol/scripts/fill_form.py +611 -0
  182. package/skills/fill-protocol/scripts/inspect_template.py +61 -0
  183. package/skills/fill-protocol/setup.sh +162 -0
  184. package/skills/fill-protocol/skill.yml +37 -0
  185. package/skills/find-cohort-gap/SKILL.md +309 -0
  186. package/skills/find-cohort-gap/references/cohort_profile_template.md +93 -0
  187. package/skills/find-cohort-gap/references/onepager_template.md +84 -0
  188. package/skills/find-cohort-gap/references/pattern_scoring_rubric.md +169 -0
  189. package/skills/find-cohort-gap/references/saturation_query_templates.md +143 -0
  190. package/skills/find-cohort-gap/skill.yml +35 -0
  191. package/skills/find-journal/POLICY.md +87 -0
  192. package/skills/find-journal/SKILL.md +340 -0
  193. package/skills/find-journal/references/journal_profiles/AJNR.md +29 -0
  194. package/skills/find-journal/references/journal_profiles/AJR.md +30 -0
  195. package/skills/find-journal/references/journal_profiles/Abdominal_Radiology.md +30 -0
  196. package/skills/find-journal/references/journal_profiles/Academic_Radiology.md +30 -0
  197. package/skills/find-journal/references/journal_profiles/Annals_of_Internal_Medicine.md +33 -0
  198. package/skills/find-journal/references/journal_profiles/Artificial_Intelligence_in_Medicine.md +28 -0
  199. package/skills/find-journal/references/journal_profiles/BMC_Medicine.md +31 -0
  200. package/skills/find-journal/references/journal_profiles/British_Journal_of_Radiology.md +39 -0
  201. package/skills/find-journal/references/journal_profiles/CVIR.md +30 -0
  202. package/skills/find-journal/references/journal_profiles/Chest.md +39 -0
  203. package/skills/find-journal/references/journal_profiles/Clinical_Radiology.md +30 -0
  204. package/skills/find-journal/references/journal_profiles/Clinical_and_Molecular_Hepatology.md +32 -0
  205. package/skills/find-journal/references/journal_profiles/Diabetes_Metabolism_Journal.md +36 -0
  206. package/skills/find-journal/references/journal_profiles/Diagnostic_and_Interventional_Radiology.md +32 -0
  207. package/skills/find-journal/references/journal_profiles/Endocrinology_and_Metabolism.md +37 -0
  208. package/skills/find-journal/references/journal_profiles/European_Journal_of_Preventive_Cardiology.md +39 -0
  209. package/skills/find-journal/references/journal_profiles/European_Radiology.md +29 -0
  210. package/skills/find-journal/references/journal_profiles/Hepatology_Communications.md +40 -0
  211. package/skills/find-journal/references/journal_profiles/Hepatology_International.md +37 -0
  212. package/skills/find-journal/references/journal_profiles/IEEE_JBHI.md +28 -0
  213. package/skills/find-journal/references/journal_profiles/IEEE_TMI.md +28 -0
  214. package/skills/find-journal/references/journal_profiles/INSI.md +29 -0
  215. package/skills/find-journal/references/journal_profiles/Investigative_Radiology.md +25 -0
  216. package/skills/find-journal/references/journal_profiles/JACC_Advances.md +41 -0
  217. package/skills/find-journal/references/journal_profiles/JACC_Asia.md +30 -0
  218. package/skills/find-journal/references/journal_profiles/JACR.md +28 -0
  219. package/skills/find-journal/references/journal_profiles/JAMA.md +40 -0
  220. package/skills/find-journal/references/journal_profiles/JAMA_Network_Open.md +30 -0
  221. package/skills/find-journal/references/journal_profiles/JCSM.md +39 -0
  222. package/skills/find-journal/references/journal_profiles/JKMS.md +32 -0
  223. package/skills/find-journal/references/journal_profiles/JMIR.md +29 -0
  224. package/skills/find-journal/references/journal_profiles/JMIR_Medical_Education.md +29 -0
  225. package/skills/find-journal/references/journal_profiles/JNIS.md +35 -0
  226. package/skills/find-journal/references/journal_profiles/JVIR.md +31 -0
  227. package/skills/find-journal/references/journal_profiles/Journal_of_Biomedical_Informatics.md +29 -0
  228. package/skills/find-journal/references/journal_profiles/Journal_of_Clinical_Endocrinology_and_Metabolism.md +40 -0
  229. package/skills/find-journal/references/journal_profiles/Journal_of_Magnetic_Resonance_Imaging.md +30 -0
  230. package/skills/find-journal/references/journal_profiles/Journal_of_Nuclear_Medicine.md +31 -0
  231. package/skills/find-journal/references/journal_profiles/Journal_of_Stroke.md +32 -0
  232. package/skills/find-journal/references/journal_profiles/KJR.md +38 -0
  233. package/skills/find-journal/references/journal_profiles/Korean_Circulation_Journal.md +38 -0
  234. package/skills/find-journal/references/journal_profiles/Korean_Journal_of_Internal_Medicine.md +36 -0
  235. package/skills/find-journal/references/journal_profiles/Lancet_Diabetes_and_Endocrinology.md +40 -0
  236. package/skills/find-journal/references/journal_profiles/Lancet_Gastroenterology_and_Hepatology.md +49 -0
  237. package/skills/find-journal/references/journal_profiles/Lancet_Infectious_Diseases.md +38 -0
  238. package/skills/find-journal/references/journal_profiles/Lancet_Neurology.md +39 -0
  239. package/skills/find-journal/references/journal_profiles/Lancet_Oncology.md +40 -0
  240. package/skills/find-journal/references/journal_profiles/Lancet_Psychiatry.md +38 -0
  241. package/skills/find-journal/references/journal_profiles/Lancet_Public_Health.md +30 -0
  242. package/skills/find-journal/references/journal_profiles/Lancet_Respiratory_Medicine.md +39 -0
  243. package/skills/find-journal/references/journal_profiles/Liver_International.md +33 -0
  244. package/skills/find-journal/references/journal_profiles/Medical_Image_Analysis.md +28 -0
  245. package/skills/find-journal/references/journal_profiles/NEJM.md +33 -0
  246. package/skills/find-journal/references/journal_profiles/Nature_Machine_Intelligence.md +31 -0
  247. package/skills/find-journal/references/journal_profiles/Nature_Medicine.md +39 -0
  248. package/skills/find-journal/references/journal_profiles/Neuroradiology.md +31 -0
  249. package/skills/find-journal/references/journal_profiles/Nutrition_Metabolism_and_Cardiovascular_Diseases.md +39 -0
  250. package/skills/find-journal/references/journal_profiles/PLOS_Medicine.md +32 -0
  251. package/skills/find-journal/references/journal_profiles/RYAI.md +28 -0
  252. package/skills/find-journal/references/journal_profiles/Radiology.md +29 -0
  253. package/skills/find-journal/references/journal_profiles/Skeletal_Radiology.md +31 -0
  254. package/skills/find-journal/references/journal_profiles/Stroke.md +37 -0
  255. package/skills/find-journal/references/journal_profiles/The_BMJ.md +31 -0
  256. package/skills/find-journal/references/journal_profiles/The_Lancet.md +31 -0
  257. package/skills/find-journal/references/journal_profiles/The_Lancet_Digital_Health.md +29 -0
  258. package/skills/find-journal/references/journal_profiles/World_Journal_of_Hepatology.md +53 -0
  259. package/skills/find-journal/references/journal_profiles/npj_Digital_Medicine.md +29 -0
  260. package/skills/find-journal/skill.yml +34 -0
  261. package/skills/fulltext-retrieval/SKILL.md +174 -0
  262. package/skills/fulltext-retrieval/fetch_oa.py +433 -0
  263. package/skills/fulltext-retrieval/pdf_to_md.py +160 -0
  264. package/skills/fulltext-retrieval/skill.yml +41 -0
  265. package/skills/generate-codebook/SKILL.md +155 -0
  266. package/skills/generate-codebook/references/codebook_schema.md +76 -0
  267. package/skills/generate-codebook/scripts/generate_codebook.py +278 -0
  268. package/skills/generate-codebook/skill.yml +35 -0
  269. package/skills/generate-codebook/tests/test_generate_codebook.sh +76 -0
  270. package/skills/grant-builder/SKILL.md +251 -0
  271. package/skills/grant-builder/skill.yml +34 -0
  272. package/skills/humanize/SKILL.md +251 -0
  273. package/skills/humanize/references/ai_patterns.md +571 -0
  274. package/skills/humanize/skill.yml +33 -0
  275. package/skills/intake-project/SKILL.md +264 -0
  276. package/skills/intake-project/skill.yml +34 -0
  277. package/skills/lit-sync/SKILL.md +448 -0
  278. package/skills/lit-sync/references/locale/ko/note_templates.md +110 -0
  279. package/skills/lit-sync/skill.yml +52 -0
  280. package/skills/lit-sync/tests/test_poll_logic.sh +92 -0
  281. package/skills/ma-scout/SKILL.md +640 -0
  282. package/skills/ma-scout/references/project_readme_template.md +95 -0
  283. package/skills/ma-scout/references/project_readme_template_ko.md +82 -0
  284. package/skills/ma-scout/skill.yml +33 -0
  285. package/skills/make-figures/SKILL.md +957 -0
  286. package/skills/make-figures/references/critic_rubrics/data_plot.md +166 -0
  287. package/skills/make-figures/references/critic_rubrics/flow_diagram.md +169 -0
  288. package/skills/make-figures/references/design_principles.md +181 -0
  289. package/skills/make-figures/references/exemplar_diagrams/README.md +65 -0
  290. package/skills/make-figures/references/exemplar_diagrams/consort/README.md +15 -0
  291. package/skills/make-figures/references/exemplar_diagrams/consort/template_input.yaml +37 -0
  292. package/skills/make-figures/references/exemplar_diagrams/consort/template_output.pdf +0 -0
  293. package/skills/make-figures/references/exemplar_diagrams/consort/template_output.png +0 -0
  294. package/skills/make-figures/references/exemplar_diagrams/consort/template_output_600.png +0 -0
  295. package/skills/make-figures/references/exemplar_diagrams/other/other_02.meta.yaml +4 -0
  296. package/skills/make-figures/references/exemplar_diagrams/other/other_02.png +0 -0
  297. package/skills/make-figures/references/exemplar_diagrams/other/other_02_why.md +13 -0
  298. package/skills/make-figures/references/exemplar_diagrams/pipeline/README.md +15 -0
  299. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_01.meta.yaml +4 -0
  300. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_01.png +0 -0
  301. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_01_why.md +13 -0
  302. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_03.meta.yaml +4 -0
  303. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_03.png +0 -0
  304. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_03_why.md +13 -0
  305. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_04.meta.yaml +4 -0
  306. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_04.png +0 -0
  307. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_04_why.md +13 -0
  308. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_05.meta.yaml +4 -0
  309. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_05.png +0 -0
  310. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_05_why.md +13 -0
  311. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_06.meta.yaml +4 -0
  312. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_06.png +0 -0
  313. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_06_why.md +13 -0
  314. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_07.meta.yaml +4 -0
  315. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_07.png +0 -0
  316. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_07_why.md +13 -0
  317. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_08.meta.yaml +4 -0
  318. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_08.png +0 -0
  319. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_08_why.md +13 -0
  320. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_09.meta.yaml +4 -0
  321. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_09.png +0 -0
  322. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_09_why.md +13 -0
  323. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_10.meta.yaml +4 -0
  324. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_10.png +0 -0
  325. package/skills/make-figures/references/exemplar_diagrams/pipeline/pipeline_10_why.md +13 -0
  326. package/skills/make-figures/references/exemplar_diagrams/prisma/README.md +15 -0
  327. package/skills/make-figures/references/exemplar_diagrams/prisma/template_input.yaml +47 -0
  328. package/skills/make-figures/references/exemplar_diagrams/prisma/template_output.pdf +0 -0
  329. package/skills/make-figures/references/exemplar_diagrams/prisma/template_output.png +0 -0
  330. package/skills/make-figures/references/exemplar_diagrams/prisma/template_output_600.png +0 -0
  331. package/skills/make-figures/references/exemplar_diagrams/stard/README.md +15 -0
  332. package/skills/make-figures/references/exemplar_diagrams/stard/template_input.yaml +40 -0
  333. package/skills/make-figures/references/exemplar_diagrams/stard/template_output.pdf +0 -0
  334. package/skills/make-figures/references/exemplar_diagrams/stard/template_output.png +0 -0
  335. package/skills/make-figures/references/exemplar_diagrams/stard/template_output_600.png +0 -0
  336. package/skills/make-figures/references/exemplar_diagrams/strobe/template_input.yaml +43 -0
  337. package/skills/make-figures/references/exemplar_diagrams/strobe/template_input_pptx.yaml +43 -0
  338. package/skills/make-figures/references/exemplar_diagrams/strobe/template_output.pdf +0 -0
  339. package/skills/make-figures/references/exemplar_diagrams/strobe/template_output.png +0 -0
  340. package/skills/make-figures/references/exemplar_diagrams/strobe/template_output.pptx +0 -0
  341. package/skills/make-figures/references/exemplar_diagrams/strobe/template_output_600.png +0 -0
  342. package/skills/make-figures/references/figure_specs.md +291 -0
  343. package/skills/make-figures/references/flow_diagram_lessons.md +164 -0
  344. package/skills/make-figures/references/jacc_central_illustration_principles.md +91 -0
  345. package/skills/make-figures/references/medical_illustration_sources.md +98 -0
  346. package/skills/make-figures/references/pipeline_concepts_medical_ai.md +240 -0
  347. package/skills/make-figures/references/reporting_guideline_figure_map.md +104 -0
  348. package/skills/make-figures/references/visual_abstract_templates/european_radiology.pptx +0 -0
  349. package/skills/make-figures/references/visual_abstract_templates/jacc_central_illustration.pptx +0 -0
  350. package/skills/make-figures/references/visual_abstract_templates/medsci_default.pptx +0 -0
  351. package/skills/make-figures/references/visual_abstract_templates/template_guide.md +114 -0
  352. package/skills/make-figures/scripts/build_jacc_template.py +77 -0
  353. package/skills/make-figures/scripts/build_prisma2020_template.py +371 -0
  354. package/skills/make-figures/scripts/build_strobe_template.py +351 -0
  355. package/skills/make-figures/scripts/critic_figure.py +264 -0
  356. package/skills/make-figures/scripts/derive_figure_legend_counts.py +138 -0
  357. package/skills/make-figures/scripts/extract_exemplar_from_pdf.py +186 -0
  358. package/skills/make-figures/scripts/fetch_official_templates.sh +88 -0
  359. package/skills/make-figures/scripts/fill_prisma_template.py +142 -0
  360. package/skills/make-figures/scripts/generate_flow_diagram.R +133 -0
  361. package/skills/make-figures/scripts/generate_image.py +99 -0
  362. package/skills/make-figures/scripts/generate_visual_abstract.py +438 -0
  363. package/skills/make-figures/scripts/validate_pptx_mac_compat.py +233 -0
  364. package/skills/make-figures/skill.yml +52 -0
  365. package/skills/make-figures/templates/official/NOTES.md +62 -0
  366. package/skills/make-figures/templates/official/consort2010/CONSORT_2025_editable_checklist.docx +0 -0
  367. package/skills/make-figures/templates/official/consort2010/CONSORT_2025_flow_diagram.docx +0 -0
  368. package/skills/make-figures/templates/official/prisma2020/PRISMA_2020_flow_new_v1.pptx +0 -0
  369. package/skills/make-figures/templates/official/prisma2020/PRISMA_2020_flow_new_v2.pptx +0 -0
  370. package/skills/make-figures/templates/official/prisma2020/PRISMA_2020_flow_updated_v2.pptx +0 -0
  371. package/skills/make-figures/templates/official/spirit2013/SPIRIT_2025_editable_checklist.docx +0 -0
  372. package/skills/make-figures/templates/official/spirit2013/SPIRIT_2025_participant_timeline.docx +0 -0
  373. package/skills/make-figures/templates/official/stard2015/STARD_2015_checklist.docx +0 -0
  374. package/skills/make-figures/templates/official/stard2015/STARD_2015_flow_diagram.pdf +0 -0
  375. package/skills/make-figures/tests/fixtures/figure1_flow.yaml +8 -0
  376. package/skills/make-figures/tests/fixtures/manuscript_ok.md +9 -0
  377. package/skills/make-figures/tests/fixtures/manuscript_stale.md +4 -0
  378. package/skills/make-figures/tests/test_legend_reconcile.sh +36 -0
  379. package/skills/manage-project/SKILL.md +358 -0
  380. package/skills/manage-project/references/pre_submission_checklist.md +53 -0
  381. package/skills/manage-project/references/project_state_template.json +37 -0
  382. package/skills/manage-project/references/scaffold_templates.md +118 -0
  383. package/skills/manage-project/references/status_output_format.md +44 -0
  384. package/skills/manage-project/references/timeline_example.md +20 -0
  385. package/skills/manage-project/skill.yml +36 -0
  386. package/skills/manage-project/templates/SSOT.yaml.template +41 -0
  387. package/skills/manage-refs/LICENSE.zotero-mcp +21 -0
  388. package/skills/manage-refs/NOTICE.md +29 -0
  389. package/skills/manage-refs/SKILL.md +289 -0
  390. package/skills/manage-refs/citation_styles/README.md +40 -0
  391. package/skills/manage-refs/citation_styles/american-journal-of-roentgenology.csl +211 -0
  392. package/skills/manage-refs/citation_styles/cardiovascular-and-interventional-radiology.csl +19 -0
  393. package/skills/manage-refs/citation_styles/european-radiology.csl +19 -0
  394. package/skills/manage-refs/citation_styles/journal-of-cachexia-sarcopenia-and-muscle.csl +150 -0
  395. package/skills/manage-refs/citation_styles/journal-of-korean-medical-science-strict.csl +533 -0
  396. package/skills/manage-refs/citation_styles/journal-of-korean-medical-science.csl +16 -0
  397. package/skills/manage-refs/citation_styles/korean-journal-of-radiology.csl +155 -0
  398. package/skills/manage-refs/citation_styles/nature.csl +189 -0
  399. package/skills/manage-refs/citation_styles/nlm-citation-sequence.csl +535 -0
  400. package/skills/manage-refs/citation_styles/radiology.csl +228 -0
  401. package/skills/manage-refs/citation_styles/springer-basic-brackets.csl +187 -0
  402. package/skills/manage-refs/citation_styles/springer-vancouver-brackets.csl +276 -0
  403. package/skills/manage-refs/citation_styles/vancouver-superscript.csl +536 -0
  404. package/skills/manage-refs/citation_styles/vancouver.csl +535 -0
  405. package/skills/manage-refs/references/REFERENCE_STYLE_SPECS.md +59 -0
  406. package/skills/manage-refs/references/check_xref_symptoms.md +35 -0
  407. package/skills/manage-refs/scripts/_vendor_citation_writer.py +600 -0
  408. package/skills/manage-refs/scripts/check_citation_keys.py +112 -0
  409. package/skills/manage-refs/scripts/check_csl_render.py +102 -0
  410. package/skills/manage-refs/scripts/check_xref.py +633 -0
  411. package/skills/manage-refs/scripts/fill_journal_abbrev.py +104 -0
  412. package/skills/manage-refs/scripts/inject_zotero_cwyw.py +133 -0
  413. package/skills/manage-refs/scripts/md_marker_convert.py +193 -0
  414. package/skills/manage-refs/scripts/pre_submission_gate.sh +238 -0
  415. package/skills/manage-refs/scripts/render_pandoc.sh +88 -0
  416. package/skills/manage-refs/skill.yml +70 -0
  417. package/skills/manage-refs/tests/fixtures/pre_submission_gate/README.md +32 -0
  418. package/skills/manage-refs/tests/fixtures/pre_submission_gate/manuscript.md +10 -0
  419. package/skills/manage-refs/tests/fixtures/pre_submission_gate/refs.bib +34 -0
  420. package/skills/manage-refs/tests/fixtures/pre_submission_gate/run.sh +117 -0
  421. package/skills/manage-refs/tests/test_vN_docx_check.sh +145 -0
  422. package/skills/meta-analysis/SKILL.md +739 -0
  423. package/skills/meta-analysis/references/LICENSES.md +21 -0
  424. package/skills/meta-analysis/references/PROSPERO_template.md +221 -0
  425. package/skills/meta-analysis/references/ai_pre_screening_template.py +245 -0
  426. package/skills/meta-analysis/references/checklists/JBI_Case_Series.md +45 -0
  427. package/skills/meta-analysis/references/checklists/NOS.md +88 -0
  428. package/skills/meta-analysis/references/checklists/PRISMA_DTA.md +36 -0
  429. package/skills/meta-analysis/references/checklists/PROBAST.md +75 -0
  430. package/skills/meta-analysis/references/checklists/QUADAS2.md +77 -0
  431. package/skills/meta-analysis/references/checklists/ROBINS_I.md +87 -0
  432. package/skills/meta-analysis/references/checklists/RoB2.md +79 -0
  433. package/skills/meta-analysis/references/data_integrity_checklist.md +57 -0
  434. package/skills/meta-analysis/references/icmje_coi_guide.md +181 -0
  435. package/skills/meta-analysis/references/phase10_recovery.md +136 -0
  436. package/skills/meta-analysis/references/phase4_km_composite.md +58 -0
  437. package/skills/meta-analysis/references/phase6_statistical_synthesis.md +148 -0
  438. package/skills/meta-analysis/references/phase9_circulation.md +84 -0
  439. package/skills/meta-analysis/references/post_submission_release_ops.md +41 -0
  440. package/skills/meta-analysis/references/r_templates.md +132 -0
  441. package/skills/meta-analysis/references/review_orchestration.md +40 -0
  442. package/skills/meta-analysis/references/submission_package_drift.md +71 -0
  443. package/skills/meta-analysis/scripts/check_pool_consistency.py +201 -0
  444. package/skills/meta-analysis/scripts/cohort_overlap_check.py +242 -0
  445. package/skills/meta-analysis/scripts/dta_extraction_qc.py +137 -0
  446. package/skills/meta-analysis/scripts/screening_reconcile.py +160 -0
  447. package/skills/meta-analysis/skill.yml +47 -0
  448. package/skills/meta-analysis/templates/FINAL_POOL_LOCK.yaml.template +70 -0
  449. package/skills/meta-analysis/templates/extraction_form_v2.md +129 -0
  450. package/skills/meta-analysis/templates/supplementary_8file_checklist.md +94 -0
  451. package/skills/meta-analysis/tests/test_pool_consistency.sh +123 -0
  452. package/skills/orchestrate/SKILL.md +501 -0
  453. package/skills/orchestrate/references/dialogue_nodes.md +196 -0
  454. package/skills/orchestrate/references/report_template.md +109 -0
  455. package/skills/orchestrate/references/report_template_ko.md +88 -0
  456. package/skills/orchestrate/skill.yml +44 -0
  457. package/skills/peer-review/SKILL.md +381 -0
  458. package/skills/peer-review/references/aczel_2021_reviewer2_patterns.md +88 -0
  459. package/skills/peer-review/references/domain-probes/ai_overclaiming.md +47 -0
  460. package/skills/peer-review/references/domain-probes/narrative_review.md +44 -0
  461. package/skills/peer-review/references/domain-probes/observational_confounding.md +48 -0
  462. package/skills/peer-review/references/domain-probes/radiomics.md +38 -0
  463. package/skills/peer-review/references/domain-probes/sr_ma.md +87 -0
  464. package/skills/peer-review/references/domain-probes/survival_prognostic.md +68 -0
  465. package/skills/peer-review/references/exemplar_reviews/README.md +43 -0
  466. package/skills/peer-review/references/exemplar_reviews/ai_overclaiming.md +47 -0
  467. package/skills/peer-review/references/exemplar_reviews/calibration_missing.md +44 -0
  468. package/skills/peer-review/references/exemplar_reviews/data_leakage.md +48 -0
  469. package/skills/peer-review/references/exemplar_reviews/reference_standard_validity.md +45 -0
  470. package/skills/peer-review/references/narrative_review_audit.md +67 -0
  471. package/skills/peer-review/references/reviewer_calibration/README.md +34 -0
  472. package/skills/peer-review/references/reviewer_calibration/compliance_floor.md +52 -0
  473. package/skills/peer-review/references/reviewer_profiles/AJR.md +82 -0
  474. package/skills/peer-review/references/reviewer_profiles/EURE.md +64 -0
  475. package/skills/peer-review/references/reviewer_profiles/INSI.md +57 -0
  476. package/skills/peer-review/references/reviewer_profiles/KJR.md +100 -0
  477. package/skills/peer-review/references/reviewer_profiles/README.md +32 -0
  478. package/skills/peer-review/references/reviewer_profiles/RYAI.md +86 -0
  479. package/skills/peer-review/skill.yml +39 -0
  480. package/skills/present-paper/SKILL.md +675 -0
  481. package/skills/present-paper/references/critic_rubrics/slide.md +155 -0
  482. package/skills/present-paper/references/generate_pptx_templates.py +604 -0
  483. package/skills/present-paper/references/medical_presentation_templates.md +277 -0
  484. package/skills/present-paper/references/slide_design_principles.md +202 -0
  485. package/skills/present-paper/references/slide_visual_styles/nature_lancet.md +168 -0
  486. package/skills/present-paper/references/workflow-checklist.md +109 -0
  487. package/skills/present-paper/scripts/extract_pdf_figures.py +243 -0
  488. package/skills/present-paper/scripts/inject_pronunciation_notes.py +178 -0
  489. package/skills/present-paper/scripts/inject_speaker_notes.py +133 -0
  490. package/skills/present-paper/scripts/strip_notes_for_sharing.py +140 -0
  491. package/skills/present-paper/scripts/trim_caption.py +271 -0
  492. package/skills/present-paper/skill.yml +41 -0
  493. package/skills/present-paper/templates/build_pptx_nature_lancet.py +688 -0
  494. package/skills/publish-skill/SKILL.md +370 -0
  495. package/skills/publish-skill/references/license-compatibility-matrix.md +132 -0
  496. package/skills/publish-skill/references/pii-patterns.md +130 -0
  497. package/skills/publish-skill/scripts/audit_skill.sh +278 -0
  498. package/skills/publish-skill/skill.yml +35 -0
  499. package/skills/render-pdf-doc/SKILL.md +146 -0
  500. package/skills/render-pdf-doc/references/known_pitfalls.md +53 -0
  501. package/skills/render-pdf-doc/references/pandoc_korean_cheatsheet.md +77 -0
  502. package/skills/render-pdf-doc/scripts/check_deps.sh +42 -0
  503. package/skills/render-pdf-doc/scripts/infer_colwidths.py +164 -0
  504. package/skills/render-pdf-doc/scripts/render_pdf.sh +98 -0
  505. package/skills/render-pdf-doc/skill.yml +57 -0
  506. package/skills/render-pdf-doc/templates/anchor-doc.md +27 -0
  507. package/skills/render-pdf-doc/templates/anchor-doc_ko.md +25 -0
  508. package/skills/render-pdf-doc/templates/briefing-handout.md +33 -0
  509. package/skills/render-pdf-doc/templates/briefing-handout_ko.md +31 -0
  510. package/skills/render-pdf-doc/templates/proposal-cover.md +33 -0
  511. package/skills/render-pdf-doc/templates/proposal-cover_ko.md +31 -0
  512. package/skills/render-pdf-doc/templates/reference-table.md +22 -0
  513. package/skills/render-pdf-doc/templates/reference-table_ko.md +20 -0
  514. package/skills/replicate-study/SKILL.md +150 -0
  515. package/skills/replicate-study/references/harmonization_3country.csv +47 -0
  516. package/skills/replicate-study/references/harmonization_knhanes_nhanes.csv +68 -0
  517. package/skills/replicate-study/references/methodology_extraction_template.md +134 -0
  518. package/skills/replicate-study/skill.yml +37 -0
  519. package/skills/review-paper/SKILL.md +104 -0
  520. package/skills/review-paper/references/macro_skeleton.md +6 -0
  521. package/skills/review-paper/skill.yml +25 -0
  522. package/skills/revise/SKILL.md +515 -0
  523. package/skills/revise/references/r2r_voice.md +346 -0
  524. package/skills/revise/skill.yml +43 -0
  525. package/skills/search-lit/SKILL.md +443 -0
  526. package/skills/search-lit/references/parse_pubmed.py +326 -0
  527. package/skills/search-lit/references/pubmed_eutils.sh +111 -0
  528. package/skills/search-lit/skill.yml +46 -0
  529. package/skills/self-review/SKILL.md +1045 -0
  530. package/skills/self-review/references/domain-probes/ai_overclaiming.md +47 -0
  531. package/skills/self-review/references/domain-probes/narrative_review.md +44 -0
  532. package/skills/self-review/references/domain-probes/observational_confounding.md +48 -0
  533. package/skills/self-review/references/domain-probes/radiomics.md +38 -0
  534. package/skills/self-review/references/domain-probes/sr_ma.md +87 -0
  535. package/skills/self-review/references/domain-probes/survival_prognostic.md +68 -0
  536. package/skills/self-review/references/exemplar_findings/README.md +43 -0
  537. package/skills/self-review/references/exemplar_findings/cohort_arithmetic_mismatch.md +35 -0
  538. package/skills/self-review/references/exemplar_findings/estimand_drift_posthoc_primary.md +39 -0
  539. package/skills/self-review/references/exemplar_findings/scope_overreach_cross_sectional.md +35 -0
  540. package/skills/self-review/references/exemplar_findings/unadjusted_confounder.md +36 -0
  541. package/skills/self-review/references/panel_review_template.md +177 -0
  542. package/skills/self-review/scripts/check_artifact_coverage.py +301 -0
  543. package/skills/self-review/scripts/check_claim_artifact.py +248 -0
  544. package/skills/self-review/scripts/check_classical_style.py +185 -0
  545. package/skills/self-review/scripts/check_cohort_arithmetic.py +481 -0
  546. package/skills/self-review/scripts/check_confounding_completeness.py +287 -0
  547. package/skills/self-review/scripts/check_panel_diversity.py +336 -0
  548. package/skills/self-review/scripts/check_reference_adequacy.py +392 -0
  549. package/skills/self-review/scripts/check_reviewer_team_consistency.py +412 -0
  550. package/skills/self-review/scripts/check_scope_coherence.py +177 -0
  551. package/skills/self-review/skill.yml +47 -0
  552. package/skills/self-review/tests/fixtures/claim_manuscript.md +17 -0
  553. package/skills/self-review/tests/fixtures/claim_prereg.md +6 -0
  554. package/skills/self-review/tests/fixtures/cohort_bad.md +21 -0
  555. package/skills/self-review/tests/fixtures/cohort_clean.md +21 -0
  556. package/skills/self-review/tests/fixtures/cohort_partition.csv +5 -0
  557. package/skills/self-review/tests/fixtures/coverage_analysis/31_delong_nested_added_value.csv +3 -0
  558. package/skills/self-review/tests/fixtures/coverage_analysis/table1_demographics.csv +3 -0
  559. package/skills/self-review/tests/fixtures/coverage_clean.md +13 -0
  560. package/skills/self-review/tests/fixtures/coverage_manuscript.md +11 -0
  561. package/skills/self-review/tests/fixtures/panel_collapse.json +27 -0
  562. package/skills/self-review/tests/fixtures/panel_good.json +32 -0
  563. package/skills/self-review/tests/fixtures/panel_monoculture.json +32 -0
  564. package/skills/self-review/tests/fixtures/refadeq_letter.md +13 -0
  565. package/skills/self-review/tests/fixtures/refadeq_original_fixed.md +42 -0
  566. package/skills/self-review/tests/fixtures/refadeq_original_uncited.md +40 -0
  567. package/skills/self-review/tests/fixtures/scope_bad.md +9 -0
  568. package/skills/self-review/tests/fixtures/scope_clean.md +8 -0
  569. package/skills/self-review/tests/fixtures/scope_surrogate.md +8 -0
  570. package/skills/self-review/tests/fixtures/style_bad.md +13 -0
  571. package/skills/self-review/tests/fixtures/style_clean.md +11 -0
  572. package/skills/self-review/tests/fixtures/table1_by_exposure.csv +11 -0
  573. package/skills/self-review/tests/test_artifact_coverage.sh +44 -0
  574. package/skills/self-review/tests/test_claim_artifact.sh +50 -0
  575. package/skills/self-review/tests/test_classical_style.sh +44 -0
  576. package/skills/self-review/tests/test_cohort_arithmetic.sh +49 -0
  577. package/skills/self-review/tests/test_confounding_completeness.sh +66 -0
  578. package/skills/self-review/tests/test_panel_diversity.sh +55 -0
  579. package/skills/self-review/tests/test_panel_mode.sh +69 -0
  580. package/skills/self-review/tests/test_reference_adequacy.sh +68 -0
  581. package/skills/self-review/tests/test_reviewer_team_consistency.sh +138 -0
  582. package/skills/self-review/tests/test_scope_coherence.sh +46 -0
  583. package/skills/setup-medsci/SKILL.md +110 -0
  584. package/skills/setup-medsci/references/setup-checklist.md +51 -0
  585. package/skills/setup-medsci/skill.yml +30 -0
  586. package/skills/sync-submission/SKILL.md +382 -0
  587. package/skills/sync-submission/scripts/author_registry_example.yaml +36 -0
  588. package/skills/sync-submission/scripts/blind_sweep.py +203 -0
  589. package/skills/sync-submission/scripts/check_asset_anonymization.py +300 -0
  590. package/skills/sync-submission/scripts/check_cross_artifact_stale.py +211 -0
  591. package/skills/sync-submission/scripts/cover_letter_drift_check.py +451 -0
  592. package/skills/sync-submission/scripts/cross_document_n_check.py +486 -0
  593. package/skills/sync-submission/scripts/detect_copy_divergence.py +136 -0
  594. package/skills/sync-submission/scripts/preflight_gate.py +458 -0
  595. package/skills/sync-submission/scripts/scope_drift_check.py +362 -0
  596. package/skills/sync-submission/scripts/sync_submission.py +169 -0
  597. package/skills/sync-submission/skill.yml +43 -0
  598. package/skills/sync-submission/tests/fixtures/copy_ok.md +5 -0
  599. package/skills/sync-submission/tests/fixtures/copy_stale.md +5 -0
  600. package/skills/sync-submission/tests/fixtures/ssot.md +5 -0
  601. package/skills/sync-submission/tests/test_asset_anonymization.sh +99 -0
  602. package/skills/sync-submission/tests/test_copy_divergence.sh +44 -0
  603. package/skills/sync-submission/tests/test_cross_artifact_stale.sh +80 -0
  604. package/skills/sync-submission/tests/test_cross_document_n.sh +132 -0
  605. package/skills/sync-submission/tests/test_preflight_gate.sh +112 -0
  606. package/skills/sync-submission/tests/test_scope_drift.sh +122 -0
  607. package/skills/sync-submission/tests/test_vN_docx_assertion.sh +51 -0
  608. package/skills/verify-refs/SKILL.md +177 -0
  609. package/skills/verify-refs/references/manual_checkpoint_guide.md +100 -0
  610. package/skills/verify-refs/scripts/verify_cli.sh +62 -0
  611. package/skills/verify-refs/scripts/verify_refs.py +782 -0
  612. package/skills/verify-refs/skill.yml +44 -0
  613. package/skills/verify-refs/tests/fixtures/pagination_placeholder.bib +17 -0
  614. package/skills/verify-refs/tests/test_pagination_placeholder.sh +42 -0
  615. package/skills/version-dataset/SKILL.md +143 -0
  616. package/skills/version-dataset/references/manifest_schema.md +72 -0
  617. package/skills/version-dataset/scripts/version_dataset.py +242 -0
  618. package/skills/version-dataset/skill.yml +35 -0
  619. package/skills/version-dataset/tests/test_version_dataset.sh +52 -0
  620. package/skills/write-paper/SKILL.md +1148 -0
  621. package/skills/write-paper/references/exemplar_methods/README.md +38 -0
  622. package/skills/write-paper/references/exemplar_methods/ai_validation_tripod_claim.md +47 -0
  623. package/skills/write-paper/references/exemplar_methods/diagnostic_accuracy_stard.md +50 -0
  624. package/skills/write-paper/references/exemplar_methods/observational_cohort_strobe.md +43 -0
  625. package/skills/write-paper/references/journal_profiles/AJNR.md +185 -0
  626. package/skills/write-paper/references/journal_profiles/AJR.md +149 -0
  627. package/skills/write-paper/references/journal_profiles/Abdominal_Radiology.md +139 -0
  628. package/skills/write-paper/references/journal_profiles/Academic_Radiology.md +90 -0
  629. package/skills/write-paper/references/journal_profiles/Annals_of_Internal_Medicine.md +150 -0
  630. package/skills/write-paper/references/journal_profiles/Artificial_Intelligence_in_Medicine.md +82 -0
  631. package/skills/write-paper/references/journal_profiles/British_Journal_of_Radiology.md +161 -0
  632. package/skills/write-paper/references/journal_profiles/CVIR.md +157 -0
  633. package/skills/write-paper/references/journal_profiles/Chest.md +270 -0
  634. package/skills/write-paper/references/journal_profiles/Clinical_Radiology.md +160 -0
  635. package/skills/write-paper/references/journal_profiles/Clinical_and_Molecular_Hepatology.md +147 -0
  636. package/skills/write-paper/references/journal_profiles/Diabetes_Metabolism_Journal.md +163 -0
  637. package/skills/write-paper/references/journal_profiles/Diagnostic_and_Interventional_Radiology.md +216 -0
  638. package/skills/write-paper/references/journal_profiles/Endocrinology_and_Metabolism.md +167 -0
  639. package/skills/write-paper/references/journal_profiles/European_Journal_of_Preventive_Cardiology.md +192 -0
  640. package/skills/write-paper/references/journal_profiles/European_Radiology.md +159 -0
  641. package/skills/write-paper/references/journal_profiles/Hepatology_Communications.md +110 -0
  642. package/skills/write-paper/references/journal_profiles/Hepatology_International.md +106 -0
  643. package/skills/write-paper/references/journal_profiles/IEEE_TMI.md +180 -0
  644. package/skills/write-paper/references/journal_profiles/INSI.md +163 -0
  645. package/skills/write-paper/references/journal_profiles/Investigative_Radiology.md +86 -0
  646. package/skills/write-paper/references/journal_profiles/JACC_Advances.md +197 -0
  647. package/skills/write-paper/references/journal_profiles/JACC_Asia.md +168 -0
  648. package/skills/write-paper/references/journal_profiles/JACR.md +87 -0
  649. package/skills/write-paper/references/journal_profiles/JAMA.md +188 -0
  650. package/skills/write-paper/references/journal_profiles/JAMA_Network_Open.md +170 -0
  651. package/skills/write-paper/references/journal_profiles/JCSM.md +266 -0
  652. package/skills/write-paper/references/journal_profiles/JKMS.md +201 -0
  653. package/skills/write-paper/references/journal_profiles/JMIR.md +88 -0
  654. package/skills/write-paper/references/journal_profiles/JMIR_Medical_Education.md +86 -0
  655. package/skills/write-paper/references/journal_profiles/JNIS.md +227 -0
  656. package/skills/write-paper/references/journal_profiles/JVIR.md +158 -0
  657. package/skills/write-paper/references/journal_profiles/Journal_of_Clinical_Endocrinology_and_Metabolism.md +191 -0
  658. package/skills/write-paper/references/journal_profiles/Journal_of_Stroke.md +176 -0
  659. package/skills/write-paper/references/journal_profiles/KJR.md +185 -0
  660. package/skills/write-paper/references/journal_profiles/Korean_Circulation_Journal.md +184 -0
  661. package/skills/write-paper/references/journal_profiles/Korean_Journal_of_Internal_Medicine.md +178 -0
  662. package/skills/write-paper/references/journal_profiles/Lancet_Gastroenterology_and_Hepatology.md +127 -0
  663. package/skills/write-paper/references/journal_profiles/Liver_International.md +165 -0
  664. package/skills/write-paper/references/journal_profiles/Medical_Image_Analysis.md +147 -0
  665. package/skills/write-paper/references/journal_profiles/NEJM.md +147 -0
  666. package/skills/write-paper/references/journal_profiles/Nature_Medicine.md +181 -0
  667. package/skills/write-paper/references/journal_profiles/Neuroradiology.md +151 -0
  668. package/skills/write-paper/references/journal_profiles/Nutrition_Metabolism_and_Cardiovascular_Diseases.md +184 -0
  669. package/skills/write-paper/references/journal_profiles/PLOS_Medicine.md +166 -0
  670. package/skills/write-paper/references/journal_profiles/RYAI.md +124 -0
  671. package/skills/write-paper/references/journal_profiles/Radiology.md +173 -0
  672. package/skills/write-paper/references/journal_profiles/Skeletal_Radiology.md +135 -0
  673. package/skills/write-paper/references/journal_profiles/Stroke.md +210 -0
  674. package/skills/write-paper/references/journal_profiles/The_BMJ.md +121 -0
  675. package/skills/write-paper/references/journal_profiles/The_Lancet.md +112 -0
  676. package/skills/write-paper/references/journal_profiles/The_Lancet_Digital_Health.md +104 -0
  677. package/skills/write-paper/references/journal_profiles/World_Journal_of_Hepatology.md +106 -0
  678. package/skills/write-paper/references/journal_profiles/npj_Digital_Medicine.md +93 -0
  679. package/skills/write-paper/references/paper_types/ai_validation.md +270 -0
  680. package/skills/write-paper/references/paper_types/animal_study.md +194 -0
  681. package/skills/write-paper/references/paper_types/case_report.md +237 -0
  682. package/skills/write-paper/references/paper_types/cross_national.md +328 -0
  683. package/skills/write-paper/references/paper_types/letter.md +127 -0
  684. package/skills/write-paper/references/paper_types/meta_analysis.md +181 -0
  685. package/skills/write-paper/references/paper_types/nhis_cohort.md +297 -0
  686. package/skills/write-paper/references/paper_types/original_article.md +221 -0
  687. package/skills/write-paper/references/paper_types/technical_note.md +131 -0
  688. package/skills/write-paper/references/section_guides/discussion.md +155 -0
  689. package/skills/write-paper/references/section_guides/introduction.md +108 -0
  690. package/skills/write-paper/references/section_guides/methods.md +144 -0
  691. package/skills/write-paper/references/section_guides/results.md +113 -0
  692. package/skills/write-paper/references/section_guides/step7_1_classical_qc.md +67 -0
  693. package/skills/write-paper/references/section_guides/step7_4a_audit_recovery.md +74 -0
  694. package/skills/write-paper/references/section_guides/title_abstract.md +123 -0
  695. package/skills/write-paper/references/section_templates/methods_statistical.md +147 -0
  696. package/skills/write-paper/scripts/check_placeholders.py +182 -0
  697. package/skills/write-paper/skill.yml +48 -0
  698. package/skills/write-paper/tests/test_placeholders.sh +107 -0
  699. package/skills/write-protocol/SKILL.md +243 -0
  700. package/skills/write-protocol/references/ethics_checklist.md +150 -0
  701. package/skills/write-protocol/references/protocol_template.md +304 -0
  702. package/skills/write-protocol/skill.yml +34 -0
@@ -0,0 +1,86 @@
1
+ # CONSORT 2025 Checklist
2
+
3
+ **Consolidated Standards of Reporting Trials**
4
+ Version: CONSORT 2025
5
+ Source: https://www.consort-spirit.org
6
+ Reference: Hopewell S, Chan AW, Collins GS, et al. CONSORT 2025 statement: updated guideline for reporting randomised trials. BMJ 2025;389:e081123 (published simultaneously in BMJ, JAMA, Lancet, Nature Medicine, PLoS Medicine).
7
+
8
+ > Note: CONSORT 2025 supersedes CONSORT 2010. It is a 30-item checklist (seven new items, three revised, one deleted) restructured with a new Open Science section.
9
+
10
+ ## Checklist Items (30 items)
11
+
12
+ ### Title and Abstract
13
+
14
+ | # | Item | Description |
15
+ |---|------|-------------|
16
+ | 1a | Title | Identification as a randomised trial. |
17
+ | 1b | Abstract | Structured summary of the trial design, methods, results, and conclusions. |
18
+
19
+ ### Open Science
20
+
21
+ | # | Item | Description |
22
+ |---|------|-------------|
23
+ | 2 | Trial registration | Name of trial registry, identifying number (with URL) and date of registration. |
24
+ | 3 | Protocol and SAP | Where the trial protocol and statistical analysis plan can be accessed. |
25
+ | 4 | Data, code, materials | Where and how the individual de-identified participant data (including data dictionary), statistical code and any other materials can be accessed. |
26
+ | 5a | Funding | Sources of funding and other support (e.g., supply of drugs), and role of funders in the design, conduct, analysis and reporting of the trial. |
27
+ | 5b | Conflicts of interest | Financial and other conflicts of interest of the manuscript authors. |
28
+
29
+ ### Introduction
30
+
31
+ | # | Item | Description |
32
+ |---|------|-------------|
33
+ | 6 | Background | Scientific background and rationale. |
34
+ | 7 | Objectives | Specific objectives related to benefits and harms. |
35
+
36
+ ### Methods
37
+
38
+ | # | Item | Description |
39
+ |---|------|-------------|
40
+ | 8 | Patient and public involvement | Details of patient or public involvement in the design, conduct and reporting of the trial. |
41
+ | 9 | Trial design | Description of trial design including type of trial (e.g., parallel group, crossover), allocation ratio, and framework. |
42
+ | 10 | Changes to trial | Important changes to the trial after it commenced including any outcomes or analyses that were not prespecified, with reason. |
43
+ | 11 | Settings and locations | Settings (e.g., community, hospital) and locations (e.g., countries, sites) where the trial was conducted. |
44
+ | 12a | Eligibility — participants | Eligibility criteria for participants. |
45
+ | 12b | Eligibility — sites/deliverers | If applicable, eligibility criteria for sites and for individuals delivering the interventions. |
46
+ | 13 | Interventions | Intervention and comparator with sufficient details to allow replication. |
47
+ | 14 | Outcomes | Prespecified primary and secondary outcomes, including the specific measurement variable, analysis metric, method of aggregation, and time point for each outcome. |
48
+ | 15 | Harms | How harms were defined and assessed (e.g., systematically, non-systematically). |
49
+ | 16a | Sample size | How sample size was determined, including all assumptions supporting the sample size calculation. |
50
+ | 16b | Interim analyses | Explanation of any interim analyses and stopping guidelines. |
51
+ | 17a | Randomisation — sequence | Who generated the random allocation sequence and the method used. |
52
+ | 17b | Randomisation — restriction | Type of randomisation and details of any restriction (e.g., stratification, blocking and block size). |
53
+ | 18 | Allocation concealment | Mechanism used to implement the random allocation sequence (e.g., central computer/telephone; sequentially numbered, opaque, sealed containers). |
54
+ | 19 | Implementation | Whether the personnel who enrolled and those who assigned participants to the interventions had access to the random allocation sequence. |
55
+ | 20a | Blinding — who | Who was blinded after assignment to interventions (e.g., participants, care providers, outcome assessors, data analysts). |
56
+ | 20b | Blinding — how | If blinded, how blinding was achieved and description of the similarity of interventions. |
57
+ | 21a | Statistical methods | Statistical methods used to compare groups for primary and secondary outcomes, including harms. |
58
+ | 21b | Analysis populations | Definition of who is included in each analysis (e.g., all randomised participants), and in which group. |
59
+ | 21c | Missing data | How missing data were handled in the analysis. |
60
+ | 21d | Additional analyses | Methods for any additional analyses (e.g., subgroup and sensitivity analyses), distinguishing prespecified from post hoc. |
61
+
62
+ ### Results
63
+
64
+ | # | Item | Description |
65
+ |---|------|-------------|
66
+ | 22a | Participant flow — numbers | For each group, the numbers of participants who were randomly assigned, received intended intervention, and were analysed for the primary outcome. |
67
+ | 22b | Participant flow — losses | For each group, losses and exclusions after randomisation, together with reasons. |
68
+ | 23a | Recruitment — dates | Dates defining the periods of recruitment and follow-up for outcomes of benefits and harms. |
69
+ | 23b | Recruitment — stopping | If relevant, why the trial ended or was stopped. |
70
+ | 24a | Intervention as administered | Intervention and comparator as they were actually administered (e.g., where appropriate, who delivered the intervention/comparator, how participants adhered, whether they were delivered as intended). |
71
+ | 24b | Concomitant care | Concomitant care received during the trial for each group. |
72
+ | 25 | Baseline data | A table showing baseline demographic and clinical characteristics for each group. |
73
+ | 26 | Outcomes and estimation | For each primary and secondary outcome, by group: the number of participants included in the analysis, the number with available data at the outcome time point, result for each group, and the estimated effect size and its precision. |
74
+ | 27 | Harms | All harms or unintended events in each group. |
75
+ | 28 | Ancillary analyses | Any other analyses performed, including subgroup and sensitivity analyses, distinguishing pre-specified from post hoc. |
76
+
77
+ ### Discussion
78
+
79
+ | # | Item | Description |
80
+ |---|------|-------------|
81
+ | 29 | Interpretation | Interpretation consistent with results, balancing benefits and harms, and considering other relevant evidence. |
82
+ | 30 | Limitations | Trial limitations, addressing sources of potential bias, imprecision, generalisability, and, if relevant, multiplicity of analyses. |
83
+
84
+ ---
85
+
86
+ *Educational summary of the CONSORT 2025 checklist (CC BY 4.0). Cite the original statement (Hopewell et al., BMJ 2025) and consult https://www.consort-spirit.org for the authoritative, full checklist with explanation and elaboration.*
@@ -0,0 +1,136 @@
1
+ # COSMIN Risk of Bias Assessment Guide
2
+
3
+ COnsensus-based Standards for the selection of health Measurement INstruments — Risk of Bias tool for reliability and measurement error.
4
+ Reference: Mokkink LB et al. BMC Medical Research Methodology 2020;20:293.
5
+ Website: https://www.cosmin.nl
6
+
7
+ ## Purpose
8
+
9
+ The COSMIN Risk of Bias tool assesses the methodological quality of studies on **reliability** and **measurement error** of outcome measurement instruments (e.g., questionnaires, imaging measurements, lab tests).
10
+
11
+ ## Structure
12
+
13
+ Two parts:
14
+ - **Part A**: Understanding how the study informs on reliability/measurement error (7 elements of a comprehensive research question)
15
+ - **Part B**: Assessing quality using standards (9 for reliability, 8 for measurement error)
16
+
17
+ Quality rating per standard: Very Good / Adequate / Doubtful / Inadequate
18
+
19
+ Overall quality uses the **worst-score-counts** principle (lowest rating across all standards).
20
+
21
+ ## Part A: Elements of a Comprehensive Research Question
22
+
23
+ Extract these 7 elements from the study:
24
+
25
+ | # | Element |
26
+ |---|---------|
27
+ | 1 | Name of the outcome measurement instrument |
28
+ | 2 | Version or operationalization of the measurement protocol |
29
+ | 3 | Construct measured by the instrument |
30
+ | 4 | Reliability parameter (ICC, kappa, etc.) or measurement error parameter (SEM, LoA, SDC) |
31
+ | 5 | Components of the instrument that will be repeated |
32
+ | 6 | Source(s) of variation that will be varied (time, rater, machine, etc.) |
33
+ | 7 | Patient population studied |
34
+
35
+ ## Components of Outcome Measurement Instruments
36
+
37
+ ### Without biological sampling
38
+ - Equipment (questionnaire forms, imaging device, software)
39
+ - Preparatory actions (training, calibration, patient instructions)
40
+ - Collection of raw data (patient completing questions, rater observing)
41
+ - Data processing and storage (digitization, image reconstruction)
42
+ - Assignment of score (formula, algorithm, clinical judgment)
43
+ - Optional further use (conversion to another scale/classification)
44
+
45
+ ### With biological sampling
46
+ - Equipment (collection tools, containers, lab equipment)
47
+ - Preparatory actions (patient prep, equipment calibration)
48
+ - Collection of sample (blood draw, biopsy)
49
+ - Processing and storage (centrifugation, freezing)
50
+ - Determination of value (assay, measurement)
51
+ - Optional further use (conversion to classification)
52
+
53
+ ## Part B: Standards for Studies on Reliability
54
+
55
+ ### Standard 1: Study Design
56
+ - Were patients measured independently by raters (inter-rater) or on separate occasions (test-retest)?
57
+ - Was the time interval appropriate (short enough to avoid true change, long enough to avoid memory)?
58
+
59
+ ### Standard 2: Missing Data
60
+ - Were missing data adequately handled?
61
+ - Was the percentage of missing data acceptable?
62
+
63
+ ### Standard 3: Sample Size
64
+ - Was the sample size adequate? (minimum 30 recommended, 50+ preferred)
65
+
66
+ ### Standard 4: Patients
67
+ - Were patients selected to represent a range of the construct being measured?
68
+ - Were patients stable between measurements (for test-retest)?
69
+
70
+ ### Standard 5: Independent Measurements
71
+ - Were measurements performed independently of each other?
72
+ - Were raters blinded to previous measurements or other rater's results?
73
+
74
+ ### Standard 6: Similar Conditions
75
+ - Were measurement conditions similar across repeated measurements?
76
+ - Were there important differences in testing conditions?
77
+
78
+ ### Standard 7: Appropriate Statistical Methods
79
+ - Was the appropriate reliability parameter calculated (ICC for continuous, kappa for categorical)?
80
+ - Was the correct ICC model used (one-way, two-way, agreement vs consistency)?
81
+
82
+ ### Standard 8: ICC Model and Formula
83
+ - Were the ICC model and formula correctly specified?
84
+ - Was the ICC type appropriate for the study design (single measures vs average measures)?
85
+
86
+ ### Standard 9: Reporting
87
+ - Were sufficient statistics reported (ICC/kappa with 95% CI)?
88
+ - Were descriptive statistics reported (means, SDs)?
89
+
90
+ ## Part B: Standards for Studies on Measurement Error
91
+
92
+ ### Standard 1: Study Design
93
+ Same as reliability Standard 1.
94
+
95
+ ### Standard 2: Missing Data
96
+ Same as reliability Standard 2.
97
+
98
+ ### Standard 3: Sample Size
99
+ Same as reliability Standard 3.
100
+
101
+ ### Standard 4: Patients
102
+ Same as reliability Standard 4.
103
+
104
+ ### Standard 5: Independent Measurements
105
+ Same as reliability Standard 5.
106
+
107
+ ### Standard 6: Similar Conditions
108
+ Same as reliability Standard 6.
109
+
110
+ ### Standard 7: Appropriate Parameter
111
+ - Was the appropriate measurement error parameter calculated (SEM, LoA, SDC, or percentage agreement)?
112
+
113
+ ### Standard 8: Reporting
114
+ - Were sufficient statistics reported (SEM, LoA, or SDC with 95% CI)?
115
+ - Were Bland-Altman plots provided where appropriate?
116
+
117
+ ## Overall Quality Rating
118
+
119
+ Uses the **worst-score-counts** principle:
120
+ - Rate each standard as: Very Good / Adequate / Doubtful / Inadequate
121
+ - Overall rating = lowest rating across all applicable standards
122
+
123
+ | Rating | Interpretation |
124
+ |--------|---------------|
125
+ | Very Good | Study design and methods are optimal for this measurement property |
126
+ | Adequate | Study design and methods are acceptable |
127
+ | Doubtful | Study design or methods raise some concerns |
128
+ | Inadequate | Study design or methods are clearly flawed |
129
+
130
+ ## When to Use
131
+
132
+ - Systematic reviews of measurement properties of health measurement instruments
133
+ - Selecting outcome measurement instruments for clinical trials or research
134
+ - Developing core outcome sets (COS)
135
+ - Evaluating reliability/agreement of imaging measurements, scoring systems, clinical tests
136
+ - Typically used alongside other COSMIN boxes (content validity, structural validity, etc.)
@@ -0,0 +1,61 @@
1
+ # GRRAS Checklist
2
+
3
+ **Guidelines for Reporting Reliability and Agreement Studies**
4
+ Version: GRRAS 2011
5
+ Source: https://doi.org/10.1016/j.jclinepi.2010.03.002
6
+ Reference: Kottner J, Audige L, Brorson S, et al. Guidelines for Reporting Reliability and Agreement Studies (GRRAS) were proposed. J Clin Epidemiol. 2011;64(1):96-106. doi:10.1016/j.jclinepi.2010.03.002
7
+
8
+ ## Checklist Items (15 items)
9
+
10
+ ### Title and Abstract
11
+
12
+ | # | Item | Description |
13
+ |---|------|-------------|
14
+ | 1 | Identification | Identify in title or abstract that the study addresses reliability and/or agreement. Specify the statistic(s) used (e.g., kappa, ICC, Bland-Altman). |
15
+
16
+ ### Introduction
17
+
18
+ | # | Item | Description |
19
+ |---|------|-------------|
20
+ | 2 | Rationale | Provide the scientific background and rationale for the reliability/agreement study. |
21
+ | 3 | Objectives | State the specific objectives, including any pre-specified hypotheses (e.g., expected level of agreement). |
22
+
23
+ ### Methods
24
+
25
+ | # | Item | Description |
26
+ |---|------|-------------|
27
+ | 4 | Study design | Describe the study design, including: fully crossed vs nested, raters as random or fixed effect, number of measurement occasions. |
28
+ | 5 | Sample | Describe the sample: how subjects were sampled, eligibility criteria, settings and locations, and intended variation in the measurand. |
29
+ | 6 | Measurement methods and devices | Describe the measurement methods and devices used, including any preparation, training, or calibration. |
30
+ | 7 | Raters | Describe the raters: number, relevant qualifications and experience, any rater training specific to the study, and whether raters represent the target population of users. |
31
+ | 8 | Measurement procedure | Describe the measurement procedure: setting, timing, number of measurements per subject, time interval between repeated measurements, and standardization of conditions. |
32
+ | 9 | Order of measurements | State how the order of examination was varied (e.g., randomized order, blinding to previous measurements). |
33
+ | 10 | Statistical methods | State the statistical methods used to estimate reliability and/or agreement, including: software, specific statistical model (e.g., ICC model and type), handling of missing data, methods for estimating CIs, and any additional analyses (e.g., Bland-Altman, SEM, MDC). |
34
+
35
+ ### Results
36
+
37
+ | # | Item | Description |
38
+ |---|------|-------------|
39
+ | 11 | Sample and raters | Report the number of raters and subjects included in the analysis (and any exclusions). Report relevant demographic and clinical characteristics of the sample. |
40
+ | 12 | Reliability/agreement estimates | Report reliability and/or agreement estimates with confidence intervals or standard errors. For continuous measurements, report LoA or SEM/MDC as applicable. |
41
+ | 13 | Additional analyses | Report results of any additional analyses performed (e.g., effect of rater experience, subgroup analyses, time-trend analysis). |
42
+
43
+ ### Discussion
44
+
45
+ | # | Item | Description |
46
+ |---|------|-------------|
47
+ | 14 | Clinical relevance | Discuss the practical and clinical relevance of the results. Include comparison with previously reported reliability/agreement values, interpretation relative to measurement purpose, and implications for clinical use. |
48
+ | 15 | Limitations | Discuss the limitations of the study, including: spectrum of measurand values, generalizability to other raters/settings, potential sources of bias (e.g., memory effects, learning effects), and any factors that may have inflated or deflated estimates. |
49
+
50
+ ---
51
+
52
+ ## Notes for Assessors
53
+
54
+ - GRRAS applies to all reliability and agreement studies, including inter-rater, intra-rater, test-retest, and method-comparison designs across any medical discipline.
55
+ - **Reliability vs Agreement**: These are distinct concepts. Reliability (e.g., ICC, kappa) reflects the ability to distinguish between subjects; agreement (e.g., Bland-Altman limits of agreement, SEM) reflects how close scores are on repeated measurements. A study may report one or both.
56
+ - Item 4 (Study design): The ICC model choice (one-way random, two-way random, two-way mixed) and type (single measures, average measures) must match the study design. Flag mismatches as a Major Comment.
57
+ - Item 7 (Raters): Rater characteristics strongly influence reliability estimates. Studies using expert raters only will overestimate reliability in general clinical practice. Note this if raters are not representative.
58
+ - Item 9 (Order of measurements): Randomization of measurement order is critical for avoiding memory and learning effects. Its absence should be flagged as a limitation.
59
+ - Item 12: For ICC, report the model, type, and definition (consistency vs absolute agreement). For kappa, specify weighted vs unweighted and the weighting scheme. Bare numbers without these specifications are PARTIAL.
60
+ - Common in radiology: inter-reader agreement for measurements (Bland-Altman, ICC), segmentation agreement (Dice, ICC of volumes), and diagnostic classification agreement (kappa, percent agreement).
61
+ - GRRAS is complementary to study-type checklists. For example, a diagnostic accuracy study reporting inter-reader agreement should follow STARD for the main analysis and GRRAS for the agreement component.
@@ -0,0 +1,167 @@
1
+ # MI-CLEAR-LLM Checklist — Reporting LLM Accuracy Studies in Healthcare
2
+
3
+ **Reference:** Park SH, Suh CH, Lee JH, Kahn CE Jr, Moy L. Minimum Reporting Items for Clear Evaluation of Accuracy Reports of Large Language Models in Healthcare (MI-CLEAR-LLM). Korean J Radiol. 2024;25(10):865-868. PMID: 39344542
4
+ **Reference (2025 Update):** Park SH, Suh CH, Lee JH, Tejani AS, You SC, Kahn CE Jr, Moy L. MI-CLEAR-LLM: 2025 Updates. Korean J Radiol. 2025;26(12):1123-1132. PMID: 41199132
5
+
6
+ **Version:** 2025 (expanded from 2024 original)
7
+ **License:** CC BY-NC 4.0 (Korean Society of Radiology)
8
+ **Source:** https://kjronline.org/DOIx.php?id=10.3348/kjr.2025.1522
9
+
10
+ **Scope:** Studies evaluating the accuracy of LLMs in healthcare applications (diagnosis, triage, clinical decision support, medical question answering, etc.). This is NOT for disclosing LLM use in manuscript writing — for that, see ICMJE/COPE policies and the write-paper skill's LLM disclosure feature.
11
+
12
+ **vs. CLAIM 2024:** Use CLAIM for imaging AI model validation. Use MI-CLEAR-LLM for studies testing LLM accuracy in healthcare tasks. Both may apply if the study evaluates an LLM integrated with medical imaging interpretation.
13
+
14
+ ---
15
+
16
+ ## Item 1 — LLM Identification and Specifications ⚠️ commonly missed
17
+
18
+ **Description:** Fully identify the LLM evaluated in the study.
19
+ **Required content:**
20
+ - Model name and version (e.g., GPT-4o, Claude 3.5 Sonnet, Gemini 1.5 Pro)
21
+ - Manufacturer/developer (e.g., OpenAI, Anthropic, Google)
22
+ - Training data cutoff date (if known or disclosed by the developer)
23
+ - Date(s) when queries were executed (LLM outputs may change over time due to updates)
24
+ - Access mode: web-based chatbot interface, API, or locally deployed open-source model
25
+ - For API access: specific API version or endpoint used
26
+ - For open-source models: model weights version, quantization method (if applicable), hardware specifications
27
+ - Whether retrieval-augmented generation (RAG) or internet access was enabled
28
+ - Any fine-tuning or adaptation applied to the base model
29
+
30
+ **Rationale:** LLMs are frequently updated without version increments. The same model name may produce different outputs on different dates. Without exact version and date documentation, studies are not reproducible.
31
+
32
+ **Status:** [ ] PRESENT [ ] PARTIAL [ ] MISSING
33
+
34
+ ---
35
+
36
+ ## Item 2 — Stochasticity Handling ⚠️ commonly missed
37
+
38
+ **Description:** Document how the inherent randomness of LLM outputs was managed.
39
+ **Required content:**
40
+ - Number of query attempts per question/task (e.g., each prompt was run 3 times)
41
+ - How multiple outputs were synthesized (e.g., majority vote, best-of-N, mean score)
42
+ - Reliability analysis across repeated attempts (e.g., agreement rate, Fleiss' kappa)
43
+ - Technical parameter settings that control randomness:
44
+ - Temperature setting (e.g., temperature = 0 for deterministic output)
45
+ - Top-p (nucleus sampling) setting
46
+ - Any other sampling parameters (top-k, frequency penalty, etc.)
47
+ - If parameters were not controllable (e.g., web chatbot interface): state this explicitly
48
+
49
+ **Rationale:** LLM outputs are stochastic by design. A single query attempt is insufficient to characterize model performance. Studies that do not control or report stochasticity parameters produce unreliable and unreproducible results.
50
+
51
+ **Status:** [ ] PRESENT [ ] PARTIAL [ ] MISSING
52
+
53
+ ---
54
+
55
+ ## Item 3 — Full Prompt Text ⚠️ commonly missed
56
+
57
+ **Description:** Provide the complete text of all prompts used, preserving exact formatting.
58
+ **Required content:**
59
+ - Full prompt text including system prompts, user prompts, and any few-shot examples
60
+ - Preserve precise spellings, symbols, punctuation, spaces, line breaks, and formatting
61
+ - If prompts include clinical data or images: describe the format and structure of input data
62
+ - For multi-turn conversations: provide the complete conversation sequence
63
+ - For chain-of-thought or structured prompting: document the full prompting strategy
64
+ - Recommended location: supplementary materials (if prompts are lengthy)
65
+
66
+ **Rationale:** Minor prompt variations can substantially alter LLM outputs. Without exact prompt text, no reader can assess the study methodology or attempt replication.
67
+
68
+ **Status:** [ ] PRESENT [ ] PARTIAL [ ] MISSING
69
+
70
+ ---
71
+
72
+ ## Item 4 — Prompt Execution Details ⚠️ commonly missed
73
+
74
+ **Description:** Explain how prompts were operationally used during the study.
75
+ **Required content:**
76
+ - Whether each query was executed as an independent chat session (new conversation) or within a continuing session
77
+ - Whether multiple queries were submitted simultaneously (batch) or sequentially
78
+ - If sequentially: whether prior outputs could influence subsequent queries (context carryover)
79
+ - Whether any post-processing was applied to LLM outputs (e.g., extracting structured answers from free text, parsing JSON)
80
+ - Who executed the queries (researchers, automated scripts, clinical staff)
81
+ - For API-based studies: batch size, rate limiting, error handling for failed API calls
82
+
83
+ **Rationale:** Chat session context and query ordering can influence LLM responses. Studies must specify whether the LLM had access to context from prior queries, as this affects comparability.
84
+
85
+ **Status:** [ ] PRESENT [ ] PARTIAL [ ] MISSING
86
+
87
+ ---
88
+
89
+ ## Item 5 — Prompt Testing and Optimization ⚠️ commonly missed
90
+
91
+ **Description:** Describe the prompt development process.
92
+ **Required content:**
93
+ - How prompts were created (expert-designed, iteratively refined, generated by another LLM)
94
+ - Rationale for specific wording choices (why this prompt structure was chosen)
95
+ - Whether prompt optimization/engineering was performed
96
+ - If optimized: method used (manual iteration, automated prompt tuning, grid search over prompt variants)
97
+ - Dataset used for prompt optimization (must be independent of test data — see Item 6)
98
+ - Number of prompt iterations tested
99
+ - Whether different prompt strategies were compared (zero-shot vs. few-shot vs. chain-of-thought)
100
+
101
+ **Rationale:** Prompt design is a critical methodological choice equivalent to feature engineering in traditional ML. Unreported optimization inflates apparent performance if optimization and test data overlap.
102
+
103
+ **Status:** [ ] PRESENT [ ] PARTIAL [ ] MISSING
104
+
105
+ ---
106
+
107
+ ## Item 6 — Test Data Independence ⚠️ commonly missed
108
+
109
+ **Description:** Confirm separation between test data and all other data used in the study.
110
+ **Required content:**
111
+ - Explicit statement that test data were not used during prompt development or optimization
112
+ - Whether test data could have been part of the LLM's training data (data contamination risk)
113
+ - If test data were sourced from the internet: provide exact URLs and confirm whether the content was publicly accessible before the LLM's training cutoff date
114
+ - For published medical examination questions: acknowledge that these may be in the LLM's training corpus and discuss implications
115
+ - Mitigation strategies for data contamination (e.g., using unpublished cases, temporal splits, institution-specific data)
116
+
117
+ **Rationale:** If test data were seen during prompt optimization or were part of the LLM's pretraining corpus, performance estimates are inflated. Unlike traditional ML where training data are known, LLM training data are often undisclosed, making contamination assessment particularly challenging.
118
+
119
+ **Status:** [ ] PRESENT [ ] PARTIAL [ ] MISSING
120
+
121
+ ---
122
+
123
+ ## Notes for Assessors
124
+
125
+ ### When to Apply MI-CLEAR-LLM
126
+
127
+ Apply this checklist when the study's primary aim is to evaluate LLM accuracy, performance, or clinical utility in a healthcare context. Examples:
128
+ - LLM answering medical board examination questions
129
+ - LLM performing clinical reasoning or differential diagnosis
130
+ - LLM triaging patient messages or radiology reports
131
+ - LLM extracting structured data from clinical notes
132
+ - LLM generating radiology report impressions
133
+
134
+ Do NOT apply this checklist when:
135
+ - The study uses LLMs as a tool in the research pipeline (e.g., NLP preprocessing) but does not evaluate LLM accuracy as an outcome
136
+ - The manuscript merely discloses that LLM writing assistance was used
137
+
138
+ ### Common Assessment Pitfalls
139
+
140
+ 1. **Item 1 — "GPT-4" is insufficient.** Require the exact model version (e.g., gpt-4-0613, gpt-4-turbo-2024-04-09) and the access date. OpenAI and other providers frequently update models behind the same name.
141
+ 2. **Item 2 — Single-run studies.** If only one query attempt was made per item, mark as PARTIAL at best. The study cannot characterize reliability without repeated measurements.
142
+ 3. **Item 3 — "We used a standardized prompt" is insufficient.** The full text must be available, even if in supplementary materials.
143
+ 4. **Item 5 — Absent optimization reporting.** Many studies iteratively refine prompts but do not report this process. If the prompt appears highly optimized but no development process is described, flag as MISSING.
144
+ 5. **Item 6 — Published exam questions.** Studies using publicly available medical exam questions (USMLE, board exams) should explicitly discuss training data contamination risk. This is a known and well-documented concern.
145
+
146
+ ### Relationship to Other Guidelines
147
+
148
+ - **CLAIM 2024**: Use alongside MI-CLEAR-LLM if the LLM processes medical images (e.g., vision-language models interpreting radiology images).
149
+ - **TRIPOD+AI**: Use alongside MI-CLEAR-LLM if the LLM is used as a clinical prediction model.
150
+ - **STARD / STARD-AI**: Use alongside MI-CLEAR-LLM if the study evaluates diagnostic accuracy of the LLM against a reference standard.
151
+
152
+ ---
153
+
154
+ ## Summary
155
+
156
+ | Category | Items | PRESENT | PARTIAL | MISSING |
157
+ |----------|-------|---------|---------|---------|
158
+ | LLM Specification | 1 | /1 | /1 | /1 |
159
+ | Stochasticity | 1 | /1 | /1 | /1 |
160
+ | Prompt Documentation | 2 | /2 | /2 | /2 |
161
+ | Prompt Development | 1 | /1 | /1 | /1 |
162
+ | Data Independence | 1 | /1 | /1 | /1 |
163
+ | **TOTAL** | **6** | /6 | /6 | /6 |
164
+
165
+ **Verdict:** [ ] READY FOR SUBMISSION [ ] NEEDS REVISION
166
+
167
+ **Co-application note:** MI-CLEAR-LLM is typically used alongside another guideline (STARD, CLAIM, TRIPOD+AI) depending on the study design. The 6 items here supplement — not replace — the primary reporting guideline.
@@ -0,0 +1,85 @@
1
+ # MOOSE Checklist
2
+
3
+ **Meta-analysis Of Observational Studies in Epidemiology**
4
+ Version: MOOSE 2000
5
+ Source: https://doi.org/10.1001/jama.283.15.2008
6
+ Reference: Stroup DF, Berlin JA, Morton SC, et al. Meta-analysis of observational studies in epidemiology: a proposal for reporting. JAMA. 2000;283(15):2008-2012. doi:10.1001/jama.283.15.2008
7
+
8
+ ## Checklist Items (35 items)
9
+
10
+ ### Reporting of Background
11
+
12
+ | # | Item | Description |
13
+ |---|------|-------------|
14
+ | 1 | Problem definition | Define the clinical or public health problem being addressed. |
15
+ | 2 | Hypothesis statement | State the hypothesis to be tested. |
16
+ | 3 | Study outcome(s) | Describe the study outcome(s) of interest. |
17
+ | 4 | Type of exposure or intervention | Describe the type of exposure or intervention used. |
18
+ | 5 | Type of study designs | Describe the type of study designs included (cohort, case-control, cross-sectional, etc.). |
19
+ | 6 | Study population | Describe the study population. |
20
+
21
+ ### Reporting of Search Strategy
22
+
23
+ | # | Item | Description |
24
+ |---|------|-------------|
25
+ | 7 | Qualifications of searchers | Report the qualifications of the searchers (e.g., librarian, investigator). |
26
+ | 8 | Search strategy | Describe the search strategy, including time period included and keywords used. |
27
+ | 9 | Effort to include all available studies | Describe efforts to include all available studies, including contact with authors. |
28
+ | 10 | Databases and registries searched | List all databases and registries searched. |
29
+ | 11 | Search software used | Report the search software used, including name and version. |
30
+ | 12 | Use of hand searching | Describe any use of hand searching (e.g., reference lists, conference proceedings). |
31
+ | 13 | List of citations located and excluded | Provide a list of citations located and those excluded, including justifications for exclusions. |
32
+ | 14 | Method for non-English articles | Describe the method of addressing articles published in languages other than English. |
33
+ | 15 | Method for unpublished studies | Describe the method of handling abstracts and unpublished studies. |
34
+ | 16 | Description of author contact | Describe any contact with authors for additional data or clarification. |
35
+
36
+ ### Reporting of Methods
37
+
38
+ | # | Item | Description |
39
+ |---|------|-------------|
40
+ | 17 | Study relevance | Describe the relevance or appropriateness of studies assembled for assessing the hypothesis to be tested. |
41
+ | 18 | Rationale for data selection and coding | Provide the rationale for the selection and coding of data (e.g., sound clinical principles, convenience, etc.). |
42
+ | 19 | Data classification | Document how data were classified and coded (e.g., multiple raters, blinding, inter-rater reliability). |
43
+ | 20 | Assessment of confounding | Describe the assessment of confounding (e.g., comparability of cases and controls, adjustment for confounders). |
44
+ | 21 | Assessment of study quality | Describe the assessment of study quality, including blinding of quality assessors; stratification or regression on possible predictors of study results. |
45
+ | 22 | Assessment of heterogeneity | Describe the assessment of heterogeneity. |
46
+ | 23 | Statistical methods | Describe statistical methods (e.g., fixed vs random effects, meta-regression, cumulative meta-analysis) in sufficient detail to be replicated. |
47
+ | 24 | Tables and graphics | Provide appropriate tables and graphics. |
48
+
49
+ ### Reporting of Results
50
+
51
+ | # | Item | Description |
52
+ |---|------|-------------|
53
+ | 25 | Graphic summary | Provide a graphic summarizing individual study estimates and the overall estimate (e.g., forest plot). |
54
+ | 26 | Descriptive table | Provide a table giving descriptive information for each study included (design, sample size, outcome measures, effect sizes, confounders adjusted for). |
55
+ | 27 | Sensitivity testing | Report results of sensitivity testing (e.g., subgroup analysis, influence analysis, varying inclusion criteria). |
56
+ | 28 | Statistical uncertainty | Indicate statistical uncertainty of findings (e.g., 95% confidence intervals). |
57
+
58
+ ### Reporting of Discussion
59
+
60
+ | # | Item | Description |
61
+ |---|------|-------------|
62
+ | 29 | Quantitative assessment of bias | Provide a quantitative assessment of bias (e.g., publication bias via funnel plot, Egger test, trim-and-fill). |
63
+ | 30 | Justification for exclusion | Justify any exclusions from the meta-analysis. |
64
+ | 31 | Assessment of quality of included studies | Assess the quality of included studies and its impact on the overall findings. |
65
+
66
+ ### Reporting of Conclusions
67
+
68
+ | # | Item | Description |
69
+ |---|------|-------------|
70
+ | 32 | Alternative explanations | Consider alternative explanations for observed results. |
71
+ | 33 | Generalization | Discuss the generalization of the conclusions (i.e., external validity). |
72
+ | 34 | Guidelines for future research | Provide guidelines for future research. |
73
+ | 35 | Disclosure of funding | Disclose the funding source for the meta-analysis. |
74
+
75
+ ---
76
+
77
+ ## Notes for Assessors
78
+
79
+ - MOOSE is designed specifically for meta-analyses of **observational** studies (cohort, case-control, cross-sectional). For meta-analyses of RCTs, use PRISMA 2020.
80
+ - MOOSE and PRISMA are complementary. Many journals require adherence to both for observational MAs. When both apply, audit against both checklists separately.
81
+ - Items 7-16 (Search Strategy) overlap substantially with PRISMA but include observational-specific items such as handling of confounding and study quality assessment.
82
+ - Item 20 (Assessment of confounding) is particularly important for observational MAs, as confounding is the primary threat to validity -- unlike RCTs where randomization addresses this.
83
+ - Item 21 (Assessment of study quality) should describe a formal tool. Common tools include NOS (Newcastle-Ottawa Scale), ROBINS-I, or the Joanna Briggs Institute checklists.
84
+ - Item 29 (Quantitative assessment of bias) is critical. Publication bias assessment is expected in all meta-analyses, but is especially important for observational studies where positive-result bias is well documented.
85
+ - MOOSE was published before the PRISMA era (2009/2020). Some journals now accept PRISMA with MOOSE-specific additions. If in doubt, check journal instructions.
@@ -0,0 +1,88 @@
1
+ # Newcastle-Ottawa Scale (NOS) Assessment Guide
2
+
3
+ Quality assessment tool for non-randomised studies in meta-analyses.
4
+ Reference: Wells GA et al. Ottawa Hospital Research Institute.
5
+
6
+ ## Structure
7
+
8
+ NOS uses a "star system" (maximum 9 stars) across 3 categories.
9
+ Higher stars = higher quality.
10
+
11
+ ## Cohort Studies (max 9 stars)
12
+
13
+ ### Selection (max 4 stars)
14
+ 1. **Representativeness of the exposed cohort** (1 star)
15
+ - a) Truly representative of the average [describe] in the community *
16
+ - b) Somewhat representative *
17
+ - c) Selected group of users
18
+ - d) No description
19
+
20
+ 2. **Selection of the non-exposed cohort** (1 star)
21
+ - a) Drawn from the same community as the exposed *
22
+ - b) Drawn from a different source
23
+ - c) No description
24
+
25
+ 3. **Ascertainment of exposure** (1 star)
26
+ - a) Secure record (e.g., surgical records) *
27
+ - b) Structured interview *
28
+ - c) Written self-report
29
+ - d) No description
30
+
31
+ 4. **Demonstration that outcome was not present at start** (1 star)
32
+ - a) Yes *
33
+ - b) No
34
+
35
+ ### Comparability (max 2 stars)
36
+ 5. **Comparability of cohorts on the basis of design or analysis** (up to 2 stars)
37
+ - a) Study controls for [most important factor] *
38
+ - b) Study controls for any additional factor *
39
+
40
+ ### Outcome (max 3 stars)
41
+ 6. **Assessment of outcome** (1 star)
42
+ - a) Independent blind assessment *
43
+ - b) Record linkage *
44
+ - c) Self-report
45
+ - d) No description
46
+
47
+ 7. **Was follow-up long enough for outcomes to occur?** (1 star)
48
+ - a) Yes (select adequate follow-up period) *
49
+ - b) No
50
+
51
+ 8. **Adequacy of follow-up of cohorts** (1 star)
52
+ - a) Complete follow-up (all subjects accounted for) *
53
+ - b) Subjects lost to follow-up unlikely to introduce bias (<=20% lost, or description provided) *
54
+ - c) Follow-up rate <80% and no description of those lost
55
+ - d) No statement
56
+
57
+ ## Case-Control Studies (max 9 stars)
58
+
59
+ ### Selection (max 4 stars)
60
+ 1. Is the case definition adequate?
61
+ 2. Representativeness of the cases
62
+ 3. Selection of controls
63
+ 4. Definition of controls
64
+
65
+ ### Comparability (max 2 stars)
66
+ 5. Comparability of cases and controls (same 2-star system)
67
+
68
+ ### Exposure (max 3 stars)
69
+ 6. Ascertainment of exposure
70
+ 7. Same method of ascertainment for cases and controls
71
+ 8. Non-response rate
72
+
73
+ ## Interpretation
74
+
75
+ | Stars | Quality |
76
+ |-------|---------|
77
+ | 7-9 | Good (high quality) |
78
+ | 4-6 | Fair (moderate quality) |
79
+ | 0-3 | Poor (low quality) |
80
+
81
+ Alternative thresholds may be pre-specified in the protocol.
82
+
83
+ ## When to Use
84
+
85
+ - Observational cohort studies in intervention or exposure meta-analyses
86
+ - Case-control studies
87
+ - Simpler alternative to ROBINS-I when full domain-level assessment is not needed
88
+ - Note: NOS does not provide domain-level judgments -- only an aggregate score