@brainpilot/skills 0.0.6 → 0.0.8

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 (285) hide show
  1. package/package.json +2 -2
  2. package/skills/01_Meta-Skills/academic-research-hub/SKILL.md +108 -0
  3. package/skills/01_Meta-Skills/academic-research-hub/scripts/requirements.txt +17 -0
  4. package/skills/01_Meta-Skills/academic-research-hub/scripts/research.py +781 -0
  5. package/skills/01_Meta-Skills/beautiful-log/SKILL.md +64 -0
  6. package/skills/01_Meta-Skills/beautiful-log/scripts/beautiful_log.py +274 -0
  7. package/skills/01_Meta-Skills/ethoclaw-daily-paper/SKILL.md +130 -0
  8. package/skills/01_Meta-Skills/ethoclaw-daily-paper/assets/config.template.yaml +54 -0
  9. package/skills/01_Meta-Skills/ethoclaw-daily-paper/assets/top5_digest_template.md +5 -0
  10. package/skills/01_Meta-Skills/ethoclaw-daily-paper/scripts/build_top5_digest.py +300 -0
  11. package/skills/01_Meta-Skills/ethoclaw-daily-paper/scripts/common.py +137 -0
  12. package/skills/01_Meta-Skills/ethoclaw-daily-paper/scripts/merge_results.py +106 -0
  13. package/skills/01_Meta-Skills/ethoclaw-daily-paper/scripts/run_pipeline.py +177 -0
  14. package/skills/01_Meta-Skills/ethoclaw-daily-paper/scripts/search_arxiv.py +162 -0
  15. package/skills/01_Meta-Skills/ethoclaw-daily-paper/scripts/search_pubmed.py +202 -0
  16. package/skills/01_Meta-Skills/ethoclaw-normalize-tabular/SKILL.md +173 -0
  17. package/skills/01_Meta-Skills/ethoclaw-normalize-tabular/scripts/normalize_data.py +874 -0
  18. package/skills/01_Meta-Skills/ethoclaw-pdf-research/SKILL.md +134 -0
  19. package/skills/01_Meta-Skills/ethoclaw-pdf-research/references/confirmation-prompts.md +31 -0
  20. package/skills/01_Meta-Skills/ethoclaw-pdf-research/references/output-patterns.md +45 -0
  21. package/skills/01_Meta-Skills/ethoclaw-pdf-research/scripts/build_markdown_deliverables.py +41 -0
  22. package/skills/01_Meta-Skills/ethoclaw-pdf-research/scripts/build_research_log.py +84 -0
  23. package/skills/01_Meta-Skills/ethoclaw-pdf-research/scripts/build_summary_md.py +63 -0
  24. package/skills/01_Meta-Skills/ethoclaw-pdf-research/scripts/extract_pdf_bundle.py +140 -0
  25. package/skills/01_Meta-Skills/experiment-controller/SKILL.md +140 -0
  26. package/skills/01_Meta-Skills/knowledge-graph-builder/SKILL.md +366 -0
  27. package/skills/01_Meta-Skills/knowledge-graph-builder/scripts/entity_resolution.py +120 -0
  28. package/skills/01_Meta-Skills/knowledge-graph-builder/scripts/extraction_prompt_template.txt +19 -0
  29. package/skills/01_Meta-Skills/knowledge-graph-builder/scripts/graph_query.py +106 -0
  30. package/skills/01_Meta-Skills/knowledge-graph-builder/scripts/hypothesis_cli_reference.py +42 -0
  31. package/skills/01_Meta-Skills/knowledge-graph-builder/scripts/new_data_source_template.py +116 -0
  32. package/skills/01_Meta-Skills/knowledge-graph-builder/scripts/requirements.txt +15 -0
  33. package/skills/01_Meta-Skills/method-design/SKILL.md +61 -0
  34. package/skills/01_Meta-Skills/multi-search-engine/SKILL.md +119 -0
  35. package/skills/01_Meta-Skills/research-idea/SKILL.md +65 -0
  36. package/skills/05_EEG_ERP/eeg-skill/SKILL.md +197 -0
  37. package/skills/05_EEG_ERP/meg-skill/SKILL.md +188 -0
  38. package/skills/05_EEG_ERP/meg-skill/scripts/time_frequency.py +223 -0
  39. package/skills/05_EEG_ERP/mne-eeg-tool/SKILL.md +165 -0
  40. package/skills/05_EEG_ERP/mne-eeg-tool/scripts/eeg_pipeline_reference.py +231 -0
  41. package/skills/05_EEG_ERP/seed-iv-skill/SKILL.md +184 -0
  42. package/skills/05_EEG_ERP/seed-iv-skill/scripts/classify_seed_iv.py +154 -0
  43. package/skills/05_EEG_ERP/seed-iv-skill/scripts/extract_seed_iv_features.py +190 -0
  44. package/skills/05_EEG_ERP/seed-iv-skill/scripts/validate_seed_iv.py +102 -0
  45. package/skills/05_EEG_ERP/seed-vig-skill/SKILL.md +182 -0
  46. package/skills/05_EEG_ERP/seed-vig-skill/scripts/classify_seed_vig.py +165 -0
  47. package/skills/05_EEG_ERP/seed-vig-skill/scripts/extract_seed_vig_features.py +185 -0
  48. package/skills/05_EEG_ERP/seed-vig-skill/scripts/validate_seed_vig.py +88 -0
  49. package/skills/06_fMRI_Neuroimaging/abcd-skill/SKILL.md +308 -0
  50. package/skills/06_fMRI_Neuroimaging/abcd-skill/scripts/abcd_qc_summary.py +449 -0
  51. package/skills/06_fMRI_Neuroimaging/abcd-skill/scripts/extract_abcd_phenotype.py +292 -0
  52. package/skills/06_fMRI_Neuroimaging/abcd-skill/scripts/reorganize_abcd.py +387 -0
  53. package/skills/06_fMRI_Neuroimaging/abide-skill/SKILL.md +302 -0
  54. package/skills/06_fMRI_Neuroimaging/abide-skill/scripts/abide_qc_summary.py +317 -0
  55. package/skills/06_fMRI_Neuroimaging/abide-skill/scripts/extract_abide_phenotype.py +267 -0
  56. package/skills/06_fMRI_Neuroimaging/abide-skill/scripts/reorganize_abide.py +387 -0
  57. package/skills/06_fMRI_Neuroimaging/adhd200-skill/SKILL.md +244 -0
  58. package/skills/06_fMRI_Neuroimaging/adhd200-skill/scripts/adhd200_qc_summary.py +98 -0
  59. package/skills/06_fMRI_Neuroimaging/adhd200-skill/scripts/extract_adhd200_phenotype.py +134 -0
  60. package/skills/06_fMRI_Neuroimaging/adhd200-skill/scripts/reorganize_adhd200.py +206 -0
  61. package/skills/06_fMRI_Neuroimaging/adni-skill/SKILL.md +358 -0
  62. package/skills/06_fMRI_Neuroimaging/adni-skill/scripts/generate_adni_task_files.py +1305 -0
  63. package/skills/06_fMRI_Neuroimaging/adni-skill/scripts/generate_vqa_from_tasks.py +766 -0
  64. package/skills/06_fMRI_Neuroimaging/adni-skill/scripts/reorganize_adni.py +491 -0
  65. package/skills/06_fMRI_Neuroimaging/aibl-skill/SKILL.md +295 -0
  66. package/skills/06_fMRI_Neuroimaging/aibl-skill/scripts/aibl_qc_summary.py +260 -0
  67. package/skills/06_fMRI_Neuroimaging/aibl-skill/scripts/extract_aibl_phenotype.py +365 -0
  68. package/skills/06_fMRI_Neuroimaging/aibl-skill/scripts/reorganize_aibl.py +394 -0
  69. package/skills/06_fMRI_Neuroimaging/aomic-skill/SKILL.md +292 -0
  70. package/skills/06_fMRI_Neuroimaging/aomic-skill/scripts/aomic_qc_summary.py +258 -0
  71. package/skills/06_fMRI_Neuroimaging/aomic-skill/scripts/extract_aomic_phenotype.py +284 -0
  72. package/skills/06_fMRI_Neuroimaging/aomic-skill/scripts/reorganize_aomic.py +322 -0
  73. package/skills/06_fMRI_Neuroimaging/asl-skill/SKILL.md +168 -0
  74. package/skills/06_fMRI_Neuroimaging/asl-skill/scripts/compute_cbf.py +224 -0
  75. package/skills/06_fMRI_Neuroimaging/bids-organizer/SKILL.md +241 -0
  76. package/skills/06_fMRI_Neuroimaging/bold5000-skill/SKILL.md +186 -0
  77. package/skills/06_fMRI_Neuroimaging/bold5000-skill/scripts/bold5000_qc_summary.py +96 -0
  78. package/skills/06_fMRI_Neuroimaging/bold5000-skill/scripts/extract_bold5000_stimulus.py +125 -0
  79. package/skills/06_fMRI_Neuroimaging/bold5000-skill/scripts/reorganize_bold5000.py +102 -0
  80. package/skills/06_fMRI_Neuroimaging/camcan-skill/SKILL.md +213 -0
  81. package/skills/06_fMRI_Neuroimaging/camcan-skill/scripts/camcan_qc_summary.py +131 -0
  82. package/skills/06_fMRI_Neuroimaging/camcan-skill/scripts/extract_camcan_phenotype.py +145 -0
  83. package/skills/06_fMRI_Neuroimaging/camcan-skill/scripts/validate_camcan.py +141 -0
  84. package/skills/06_fMRI_Neuroimaging/cobre-skill/SKILL.md +201 -0
  85. package/skills/06_fMRI_Neuroimaging/cobre-skill/scripts/cobre_qc_summary.py +95 -0
  86. package/skills/06_fMRI_Neuroimaging/cobre-skill/scripts/extract_cobre_phenotype.py +104 -0
  87. package/skills/06_fMRI_Neuroimaging/cobre-skill/scripts/reorganize_cobre.py +140 -0
  88. package/skills/06_fMRI_Neuroimaging/conn-tool/SKILL.md +180 -0
  89. package/skills/06_fMRI_Neuroimaging/dcm2nii/SKILL.md +189 -0
  90. package/skills/06_fMRI_Neuroimaging/dmt-har-med-skill/SKILL.md +183 -0
  91. package/skills/06_fMRI_Neuroimaging/dmt-har-med-skill/scripts/dmt_har_med_qc_summary.py +96 -0
  92. package/skills/06_fMRI_Neuroimaging/dmt-har-med-skill/scripts/extract_dmt_har_med_phenotype.py +121 -0
  93. package/skills/06_fMRI_Neuroimaging/dmt-har-med-skill/scripts/reorganize_dmt_har_med.py +125 -0
  94. package/skills/06_fMRI_Neuroimaging/dwi-skill/SKILL.md +359 -0
  95. package/skills/06_fMRI_Neuroimaging/fmri-skill/SKILL.md +371 -0
  96. package/skills/06_fMRI_Neuroimaging/fmriprep-tool/SKILL.md +228 -0
  97. package/skills/06_fMRI_Neuroimaging/freesurfer-tool/SKILL.md +286 -0
  98. package/skills/06_fMRI_Neuroimaging/freesurfer-tool/scripts/freesurfer_processor.py +145 -0
  99. package/skills/06_fMRI_Neuroimaging/fsl-tool/SKILL.md +208 -0
  100. package/skills/06_fMRI_Neuroimaging/hbn-skill/SKILL.md +271 -0
  101. package/skills/06_fMRI_Neuroimaging/hbn-skill/scripts/extract_hbn_phenotype.py +107 -0
  102. package/skills/06_fMRI_Neuroimaging/hbn-skill/scripts/hbn_qc_summary.py +96 -0
  103. package/skills/06_fMRI_Neuroimaging/hbn-skill/scripts/reorganize_hbn.py +150 -0
  104. package/skills/06_fMRI_Neuroimaging/hcpa-skill/SKILL.md +210 -0
  105. package/skills/06_fMRI_Neuroimaging/hcpa-skill/scripts/extract_hcpa_phenotype.py +146 -0
  106. package/skills/06_fMRI_Neuroimaging/hcpa-skill/scripts/hcpa_qc_summary.py +120 -0
  107. package/skills/06_fMRI_Neuroimaging/hcpa-skill/scripts/reorganize_hcpa.py +155 -0
  108. package/skills/06_fMRI_Neuroimaging/hcpd-skill/SKILL.md +210 -0
  109. package/skills/06_fMRI_Neuroimaging/hcpd-skill/scripts/extract_hcpd_phenotype.py +148 -0
  110. package/skills/06_fMRI_Neuroimaging/hcpd-skill/scripts/hcpd_qc_summary.py +125 -0
  111. package/skills/06_fMRI_Neuroimaging/hcpd-skill/scripts/reorganize_hcpd.py +146 -0
  112. package/skills/06_fMRI_Neuroimaging/hcpep-skill/SKILL.md +215 -0
  113. package/skills/06_fMRI_Neuroimaging/hcpep-skill/scripts/extract_hcpep_phenotype.py +157 -0
  114. package/skills/06_fMRI_Neuroimaging/hcpep-skill/scripts/hcpep_qc_summary.py +143 -0
  115. package/skills/06_fMRI_Neuroimaging/hcpep-skill/scripts/reorganize_hcpep.py +146 -0
  116. package/skills/06_fMRI_Neuroimaging/hcppipeline-tool/SKILL.md +217 -0
  117. package/skills/06_fMRI_Neuroimaging/hcpya-skill/SKILL.md +214 -0
  118. package/skills/06_fMRI_Neuroimaging/hcpya-skill/scripts/extract_hcpya_phenotype.py +190 -0
  119. package/skills/06_fMRI_Neuroimaging/hcpya-skill/scripts/hcpya_qc_summary.py +152 -0
  120. package/skills/06_fMRI_Neuroimaging/hcpya-skill/scripts/reorganize_hcpya.py +203 -0
  121. package/skills/06_fMRI_Neuroimaging/ixi-skill/SKILL.md +198 -0
  122. package/skills/06_fMRI_Neuroimaging/ixi-skill/scripts/ixi_qc_summary.py +137 -0
  123. package/skills/06_fMRI_Neuroimaging/ixi-skill/scripts/reorganize_ixi.py +190 -0
  124. package/skills/06_fMRI_Neuroimaging/mnd-skill/SKILL.md +191 -0
  125. package/skills/06_fMRI_Neuroimaging/mnd-skill/scripts/extract_mnd_phenotype.py +143 -0
  126. package/skills/06_fMRI_Neuroimaging/mnd-skill/scripts/mnd_qc_summary.py +120 -0
  127. package/skills/06_fMRI_Neuroimaging/mnd-skill/scripts/validate_mnd.py +107 -0
  128. package/skills/06_fMRI_Neuroimaging/mschallenge-skill/SKILL.md +203 -0
  129. package/skills/06_fMRI_Neuroimaging/mschallenge-skill/scripts/analyze_lesions.py +119 -0
  130. package/skills/06_fMRI_Neuroimaging/mschallenge-skill/scripts/longitudinal_lesion.py +148 -0
  131. package/skills/06_fMRI_Neuroimaging/mschallenge-skill/scripts/mschallenge_qc_summary.py +132 -0
  132. package/skills/06_fMRI_Neuroimaging/mschallenge-skill/scripts/validate_mschallenge.py +116 -0
  133. package/skills/06_fMRI_Neuroimaging/nibabel-skill/SKILL.md +184 -0
  134. package/skills/06_fMRI_Neuroimaging/nibabel-skill/scripts/atlas_coordinate_reference.py +61 -0
  135. package/skills/06_fMRI_Neuroimaging/nibabel-skill/scripts/freesurfer_io_reference.py +34 -0
  136. package/skills/06_fMRI_Neuroimaging/nibabel-skill/scripts/nifti_inspection_reference.py +35 -0
  137. package/skills/06_fMRI_Neuroimaging/nifd-skill/SKILL.md +205 -0
  138. package/skills/06_fMRI_Neuroimaging/nifd-skill/scripts/extract_nifd_phenotype.py +132 -0
  139. package/skills/06_fMRI_Neuroimaging/nifd-skill/scripts/nifd_qc_summary.py +111 -0
  140. package/skills/06_fMRI_Neuroimaging/nifd-skill/scripts/validate_nifd.py +111 -0
  141. package/skills/06_fMRI_Neuroimaging/nii2dcm/SKILL.md +143 -0
  142. package/skills/06_fMRI_Neuroimaging/nilearn-tool/SKILL.md +266 -0
  143. package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/connectome_reference.py +65 -0
  144. package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/denoise_timeseries_reference.py +58 -0
  145. package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/hierarchical_parcellation_reference.py +53 -0
  146. package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/kmeans_parcellation_reference.py +53 -0
  147. package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/preprocess_bold_reference.py +76 -0
  148. package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/rest_dictlearning_reference.py +56 -0
  149. package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/rest_ica_reference.py +59 -0
  150. package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/second_level_glm_reference.py +58 -0
  151. package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/spacenet_classifier_reference.py +59 -0
  152. package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/svm_classifier_reference.py +60 -0
  153. package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/task_glm_reference.py +63 -0
  154. package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/zalff_summary_reference.py +109 -0
  155. package/skills/06_fMRI_Neuroimaging/nsd-skill/SKILL.md +210 -0
  156. package/skills/06_fMRI_Neuroimaging/nsd-skill/scripts/extract_nsd_stimulus.py +171 -0
  157. package/skills/06_fMRI_Neuroimaging/nsd-skill/scripts/nsd_qc_summary.py +142 -0
  158. package/skills/06_fMRI_Neuroimaging/nsd-skill/scripts/validate_nsd.py +142 -0
  159. package/skills/06_fMRI_Neuroimaging/oasis-skill/SKILL.md +205 -0
  160. package/skills/06_fMRI_Neuroimaging/oasis-skill/scripts/extract_oasis_phenotype.py +126 -0
  161. package/skills/06_fMRI_Neuroimaging/oasis-skill/scripts/oasis_qc_summary.py +115 -0
  162. package/skills/06_fMRI_Neuroimaging/oasis-skill/scripts/validate_oasis.py +119 -0
  163. package/skills/06_fMRI_Neuroimaging/pet-skill/SKILL.md +173 -0
  164. package/skills/06_fMRI_Neuroimaging/pet-skill/scripts/compute_suvr.py +202 -0
  165. package/skills/06_fMRI_Neuroimaging/pnc-skill/SKILL.md +206 -0
  166. package/skills/06_fMRI_Neuroimaging/pnc-skill/scripts/extract_pnc_phenotype.py +136 -0
  167. package/skills/06_fMRI_Neuroimaging/pnc-skill/scripts/pnc_qc_summary.py +116 -0
  168. package/skills/06_fMRI_Neuroimaging/pnc-skill/scripts/validate_pnc.py +120 -0
  169. package/skills/06_fMRI_Neuroimaging/ppmi-skill/SKILL.md +209 -0
  170. package/skills/06_fMRI_Neuroimaging/ppmi-skill/scripts/extract_ppmi_phenotype.py +138 -0
  171. package/skills/06_fMRI_Neuroimaging/ppmi-skill/scripts/ppmi_qc_summary.py +111 -0
  172. package/skills/06_fMRI_Neuroimaging/ppmi-skill/scripts/validate_ppmi.py +117 -0
  173. package/skills/06_fMRI_Neuroimaging/qsiprep-tool/SKILL.md +320 -0
  174. package/skills/06_fMRI_Neuroimaging/rest-mneta-mdd-skill/SKILL.md +215 -0
  175. package/skills/06_fMRI_Neuroimaging/rest-mneta-mdd-skill/scripts/extract_rest_mdd_phenotype.py +132 -0
  176. package/skills/06_fMRI_Neuroimaging/rest-mneta-mdd-skill/scripts/harmonize_sites.py +152 -0
  177. package/skills/06_fMRI_Neuroimaging/rest-mneta-mdd-skill/scripts/rest_mdd_qc_summary.py +124 -0
  178. package/skills/06_fMRI_Neuroimaging/rest-mneta-mdd-skill/scripts/validate_rest_mdd.py +103 -0
  179. package/skills/06_fMRI_Neuroimaging/smri-skill/SKILL.md +302 -0
  180. package/skills/06_fMRI_Neuroimaging/tcp-skill/SKILL.md +204 -0
  181. package/skills/06_fMRI_Neuroimaging/tcp-skill/scripts/extract_tcp_phenotype.py +139 -0
  182. package/skills/06_fMRI_Neuroimaging/tcp-skill/scripts/tcp_qc_summary.py +111 -0
  183. package/skills/06_fMRI_Neuroimaging/tcp-skill/scripts/validate_tcp.py +99 -0
  184. package/skills/06_fMRI_Neuroimaging/ucla-cnp-skill/SKILL.md +217 -0
  185. package/skills/06_fMRI_Neuroimaging/ucla-cnp-skill/scripts/extract_ucla_cnp_phenotype.py +145 -0
  186. package/skills/06_fMRI_Neuroimaging/ucla-cnp-skill/scripts/ucla_cnp_qc_summary.py +111 -0
  187. package/skills/06_fMRI_Neuroimaging/ucla-cnp-skill/scripts/validate_ucla_cnp.py +113 -0
  188. package/skills/06_fMRI_Neuroimaging/ukb-skill/SKILL.md +310 -0
  189. package/skills/06_fMRI_Neuroimaging/ukb-skill/scripts/build_ukb_survival.py +210 -0
  190. package/skills/06_fMRI_Neuroimaging/ukb-skill/scripts/extract_ukb_cases.py +308 -0
  191. package/skills/06_fMRI_Neuroimaging/ukb-skill/scripts/extract_ukb_phenotype.py +232 -0
  192. package/skills/06_fMRI_Neuroimaging/ukb-skill/scripts/ukb_qc_summary.py +158 -0
  193. package/skills/06_fMRI_Neuroimaging/wmh-segmentation/SKILL.md +133 -0
  194. package/skills/07_Computational_Modeling/detrending/SKILL.md +118 -0
  195. package/skills/07_Computational_Modeling/dictlearning/SKILL.md +122 -0
  196. package/skills/07_Computational_Modeling/filtering/SKILL.md +121 -0
  197. package/skills/07_Computational_Modeling/glm/SKILL.md +153 -0
  198. package/skills/07_Computational_Modeling/hierarchical/SKILL.md +121 -0
  199. package/skills/07_Computational_Modeling/ica/SKILL.md +122 -0
  200. package/skills/07_Computational_Modeling/kmeans/SKILL.md +119 -0
  201. package/skills/07_Computational_Modeling/run_models/SKILL.md +427 -0
  202. package/skills/07_Computational_Modeling/spacenet/SKILL.md +122 -0
  203. package/skills/07_Computational_Modeling/svm/SKILL.md +120 -0
  204. package/skills/08_Computational_Neuroscience/brain_gnn/SKILL.md +183 -0
  205. package/skills/08_Computational_Neuroscience/dipy-tool/SKILL.md +239 -0
  206. package/skills/08_Computational_Neuroscience/dipy-tool/scripts/dti_metrics_reference.py +70 -0
  207. package/skills/08_Computational_Neuroscience/dipy-tool/scripts/load_and_mask_reference.py +76 -0
  208. package/skills/08_Computational_Neuroscience/dipy-tool/scripts/roi_stats_reference.py +59 -0
  209. package/skills/08_Computational_Neuroscience/fm_app/SKILL.md +195 -0
  210. package/skills/08_Computational_Neuroscience/neurostorm/SKILL.md +151 -0
  211. package/skills/13_Visualization/brain-visualization/SKILL.md +191 -0
  212. package/skills/13_Visualization/brain-visualization/scripts/connectome_reference.py +108 -0
  213. package/skills/13_Visualization/brain-visualization/scripts/freesurfer_ply_reference.py +54 -0
  214. package/skills/13_Visualization/brain-visualization/scripts/zalff_summary_reference.py +116 -0
  215. package/skills/13_Visualization/ethoclaw-paper-figure-layout/SKILL.md +78 -0
  216. package/skills/13_Visualization/ethoclaw-paper-figure-layout/assets/naturecomm_figures.tex +74 -0
  217. package/skills/13_Visualization/ethoclaw-paper-figure-layout/scripts/layout_results_foldered.py +579 -0
  218. package/skills/14_Writing/overleaf-skill/SKILL.md +184 -0
  219. package/skills/14_Writing/overleaf-skill/scripts/install.sh +30 -0
  220. package/skills/14_Writing/paper-writing/SKILL.md +146 -0
  221. package/skills/14_Writing/paper-writing/scripts/data_statement_templates.py +164 -0
  222. package/skills/14_Writing/paper-writing/scripts/figure_templates.py +315 -0
  223. package/skills/14_Writing/paper-writing/scripts/nature_figure_style.py +214 -0
  224. package/skills/14_Writing/paper-writing/scripts/section_phrasebank.py +246 -0
  225. package/skills/16_Animal_Behavior/deeplabcut/SKILL.md +154 -0
  226. package/skills/16_Animal_Behavior/deeplabcut/references/3d-pose.md +89 -0
  227. package/skills/16_Animal_Behavior/deeplabcut/references/maDLC.md +123 -0
  228. package/skills/16_Animal_Behavior/deeplabcut/references/modelzoo.md +98 -0
  229. package/skills/16_Animal_Behavior/deeplabcut/references/standard-pipeline.md +165 -0
  230. package/skills/16_Animal_Behavior/deeplabcut/references/utilities.md +146 -0
  231. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/SKILL.md +274 -0
  232. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/report_template_en.html +112 -0
  233. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/report_template_en.md +21 -0
  234. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/cluster-section.md +5 -0
  235. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/heatmap-section.md +5 -0
  236. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/integrated-interpretation.md +3 -0
  237. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/overview.md +3 -0
  238. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/project-summary.md +3 -0
  239. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/radar-section.md +5 -0
  240. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/raw-trajectory.md +3 -0
  241. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/sample-check.md +3 -0
  242. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/single-subject-section.md +3 -0
  243. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/stats-section.md +5 -0
  244. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/experiment-types/epm.md +52 -0
  245. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/experiment-types/fst.md +37 -0
  246. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/experiment-types/nor.md +39 -0
  247. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/experiment-types/oft.md +43 -0
  248. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/experiment-types/tcst.md +45 -0
  249. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/experiment-types/tst.md +36 -0
  250. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/input-types.md +59 -0
  251. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/interpretation-guardrails.md +45 -0
  252. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/metadata-schema.md +57 -0
  253. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/report-sections.md +86 -0
  254. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/section-selection-rules.md +169 -0
  255. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/scripts/build_report_manifest.py +27 -0
  256. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/scripts/render_report.py +34 -0
  257. package/skills/16_Animal_Behavior/ethoclaw-analysis-report/scripts/report_utils.py +1121 -0
  258. package/skills/16_Animal_Behavior/ethoclaw-animal-grounding/SKILL.md +390 -0
  259. package/skills/16_Animal_Behavior/ethoclaw-animal-grounding/reference_code.py +98 -0
  260. package/skills/16_Animal_Behavior/ethoclaw-animal-pose-estimation/SKILL.md +336 -0
  261. package/skills/16_Animal_Behavior/ethoclaw-kinematic-parameter-generator/README.md +21 -0
  262. package/skills/16_Animal_Behavior/ethoclaw-kinematic-parameter-generator/SKILL.md +41 -0
  263. package/skills/16_Animal_Behavior/ethoclaw-kinematic-parameter-generator/batch_kinematic_generator.py +663 -0
  264. package/skills/16_Animal_Behavior/ethoclaw-kinematic-parameter-generator/config.json +19 -0
  265. package/skills/16_Animal_Behavior/ethoclaw-kinematic-parameter-generator/generate_kinematic_parameter.py +401 -0
  266. package/skills/16_Animal_Behavior/ethoclaw-kinematic-parameter-generator/kinematic_generator.py +265 -0
  267. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-clustermap-generate/SKILL.md +72 -0
  268. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-clustermap-generate/references/config.example.toml +56 -0
  269. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-clustermap-generate/scripts/cluster_all_params.py +232 -0
  270. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-clustermap-generate/scripts/cluster_all_params_from_config.py +236 -0
  271. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-radar-generate/SKILL.md +68 -0
  272. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-radar-generate/references/notes.md +5 -0
  273. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-radar-generate/scripts/plot_h5_radar.py +513 -0
  274. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-violin-stats-generate/SKILL.md +52 -0
  275. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-violin-stats-generate/config.toml +81 -0
  276. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-violin-stats-generate/references/stats-rule.md +18 -0
  277. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-violin-stats-generate/scripts/h5_inspect.py +79 -0
  278. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-violin-stats-generate/scripts/h5_violin_batch.py +624 -0
  279. package/skills/16_Animal_Behavior/ethoclaw-multiparameter-violin-stats-generate/scripts/h5_violin_stats.py +438 -0
  280. package/skills/16_Animal_Behavior/ethoclaw-trajectory-velocity-heatmap-generate/SKILL.md +280 -0
  281. package/skills/16_Animal_Behavior/ethoclaw-trajectory-velocity-heatmap-generate/core_scripts/heatmap_trajectory.py +790 -0
  282. package/skills/16_Animal_Behavior/ethoclaw-trajectory-velocity-heatmap-generate/core_scripts/heatmap_velocity.py +855 -0
  283. package/skills/16_Animal_Behavior/ethoclaw-trajectory-velocity-heatmap-generate/reference_data/reference_2d.csv +101 -0
  284. package/skills/16_Animal_Behavior/ethoclaw-trajectory-velocity-heatmap-generate/reference_data/reference_2d.h5 +0 -0
  285. package/skills/16_Animal_Behavior/ethoclaw-trajectory-velocity-heatmap-generate/reference_data/reference_data_readme.md +126 -0
@@ -0,0 +1,122 @@
1
+ ---
2
+ name: dictlearning
3
+ description: "Use this model doc whenever the user wants to perform resting-state network decomposition using DictLearning. This is a non-deep-learning unsupervised route focused on sparse component extraction, network map discovery, and subject-level time series from resting-state fMRI."
4
+ license: MIT License (NeuroClaw custom skill - freely modifiable within the project)
5
+ layer: base
6
+ skill_type: model
7
+ dependencies:
8
+ - fmri-skill
9
+ - nilearn-tool
10
+ - run_models
11
+ ---
12
+ # DictLearning Model Doc
13
+
14
+ ## Overview
15
+ DictLearning is a classical non-deep-learning method for resting-state network decomposition.
16
+
17
+ - Model family: non-deep-learning unsupervised decomposition method
18
+ - Typical objectives:
19
+ - identify sparse resting-state networks from preprocessed fMRI
20
+ - extract dictionary component maps and subject-level time series
21
+ - derive interpretable network summaries for downstream connectivity or clustering
22
+ - Primary input: preprocessed resting-state fMRI, optional mask, optional group subject list
23
+ - Primary output: dictionary component maps, subject time series, optional connectomes or reports
24
+
25
+ In NeuroClaw, this document is model-level guidance for DictLearning-based resting-state decomposition workflows rather than phenotype prediction.
26
+
27
+ Upstream preparation should usually be delegated to:
28
+ - `fmri-skill` for rs-fMRI preprocessing, nuisance regression, filtering, and standard-space alignment
29
+ - `nilearn-tool` for concrete DictLearning fitting and component export
30
+
31
+ **Research use only.**
32
+
33
+ ---
34
+
35
+ ## Quick Start
36
+
37
+ ### 1) Prepare resting-state inputs
38
+ Expected inputs:
39
+ - preprocessed resting-state BOLD images
40
+ - optional confounds TSV files
41
+ - optional brain mask
42
+ - optional subject list or cohort manifest
43
+
44
+ If these are not ready, delegate to `fmri-skill` first.
45
+
46
+ ### 2) DictLearning route
47
+ Representative operations:
48
+ - load preprocessed resting-state images
49
+ - fit sparse dictionary learning for network decomposition
50
+ - export dictionary component maps and subject time series
51
+ - optionally use outputs for connectome or clustering analysis
52
+
53
+ Example execution route:
54
+ ```bash
55
+ # delegated through claw-shell after preprocessing is confirmed
56
+ python skills/nilearn-tool/scripts/rest_dictlearning_reference.py \
57
+ --input-list path/to/rest_bold_list.txt \
58
+ --mask path/to/group_mask.nii.gz \
59
+ --n-components 20 \
60
+ --output-dir run_models_output/dictlearning
61
+ ```
62
+
63
+ ---
64
+
65
+ ## Input / Output Contract
66
+
67
+ ### Required inputs
68
+ - preprocessed resting-state fMRI in subject space or standard space
69
+ - subject list or image list
70
+
71
+ ### Optional inputs
72
+ - confounds table(s)
73
+ - mask image
74
+ - repetition time (`TR`)
75
+ - decomposition parameters such as number of components
76
+ - group/covariate table for downstream statistical analysis
77
+
78
+ ### Produced outputs
79
+ - 4D component map image
80
+ - subject-level component time series
81
+ - component report figures and summary tables
82
+ - optional component correlation matrix / connectome
83
+
84
+ ---
85
+
86
+ ## Recommended Delegation
87
+
88
+ - resting-state preprocessing and denoising -> `fmri-skill`
89
+ - concrete implementation of DictLearning -> `nilearn-tool`
90
+ - shell execution and logging -> `claw-shell`
91
+
92
+ No execution before explicit plan confirmation.
93
+
94
+ ---
95
+
96
+ ## When to Use DictLearning
97
+
98
+ - The user wants resting-state network decomposition rather than task activation analysis.
99
+ - The goal is to identify sparse intrinsic connectivity networks from rs-fMRI.
100
+ - The user wants subject-level component time series for downstream connectivity or clustering.
101
+ - Sparse and interpretable network components are preferred.
102
+ - A lightweight classical unsupervised method is preferred over deep learning.
103
+
104
+ ---
105
+
106
+ ## Limitations and Notes
107
+
108
+ - Results are sensitive to preprocessing quality, head motion, filtering, and masking choices.
109
+ - The number of components strongly influences decomposition granularity.
110
+ - DictLearning is unsupervised and does not directly provide statistical group inference.
111
+ - Downstream comparisons across groups usually require additional statistical analysis after decomposition.
112
+
113
+ ---
114
+
115
+ ## Reference
116
+
117
+ - Varoquaux G et al. Dictionary learning for resting-state fMRI atlas extraction.
118
+ - Nilearn decomposition documentation: https://nilearn.github.io/stable/connectivity/resting_state_networks.html
119
+
120
+ Created At: 2026-04-14 00:31 HKT
121
+ Last Updated At: 2026-04-14 00:45 HKT
122
+ Author: chengwang96
@@ -0,0 +1,121 @@
1
+ ---
2
+ name: filtering
3
+ description: "Use this model doc whenever the user wants to perform neuroimaging signal denoising with classical temporal filtering methods. This is a non-deep-learning preprocessing route focused on temporal cleaning, frequency selection, and preparation of cleaner time series for downstream analysis."
4
+ license: MIT License (NeuroClaw custom skill - freely modifiable within the project)
5
+ layer: base
6
+ skill_type: model
7
+ dependencies:
8
+ - fmri-skill
9
+ - nilearn-tool
10
+ - run_models
11
+ ---
12
+ # Filtering Model Doc
13
+
14
+ ## Overview
15
+ Filtering is a classical non-deep-learning method for neuroimaging signal denoising.
16
+
17
+ - Model family: non-deep-learning preprocessing and denoising method
18
+ - Typical objectives:
19
+ - remove unwanted frequency content from BOLD time series
20
+ - retain frequency bands relevant to resting-state or task analysis
21
+ - prepare cleaner voxel-wise or ROI-wise time series for downstream connectivity, decoding, or statistical analysis
22
+ - Primary input: preprocessed fMRI time series, optional confounds, optional mask, TR
23
+ - Primary output: denoised BOLD image, cleaned ROI time series, optional QC summaries
24
+
25
+ In NeuroClaw, this document is model-level guidance for temporal filtering workflows rather than predictive modeling.
26
+
27
+ Upstream preparation should usually be delegated to:
28
+ - `fmri-skill` for modality-level denoising planning and validated preprocessing sequences
29
+ - `nilearn-tool` for concrete filtering and cleaned image export
30
+
31
+ **Research use only.**
32
+
33
+ ---
34
+
35
+ ## Quick Start
36
+
37
+ ### 1) Prepare denoising inputs
38
+ Expected inputs:
39
+ - preprocessed BOLD image
40
+ - repetition time (`TR`)
41
+ - optional confounds TSV
42
+ - optional brain mask
43
+ - optional requested frequency band
44
+
45
+ If images are not preprocessed yet, delegate to `fmri-skill` first.
46
+
47
+ ### 2) Filtering route
48
+ Representative operations:
49
+ - load preprocessed BOLD time series
50
+ - apply temporal high-pass / low-pass or band-pass filtering
51
+ - optionally combine filtering with standardization or confound regression
52
+ - export denoised image and cleaned summaries
53
+
54
+ Example execution route:
55
+ ```bash
56
+ # delegated through claw-shell after preprocessing is confirmed
57
+ python skills/nilearn-tool/scripts/preprocess_bold_reference.py \
58
+ --bold path/to/sub-001_rest_preproc_bold.nii.gz \
59
+ --tr 2.0 \
60
+ --high-pass 0.01 \
61
+ --low-pass 0.08 \
62
+ --output run_models_output/filtering/sub-001_rest_filtered_bold.nii.gz
63
+ ```
64
+
65
+ ---
66
+
67
+ ## Input / Output Contract
68
+
69
+ ### Required inputs
70
+ - preprocessed BOLD image or extracted time series
71
+ - TR for temporal filtering
72
+
73
+ ### Optional inputs
74
+ - confounds table
75
+ - mask image
76
+ - high-pass / low-pass frequency settings
77
+ - standardization or smoothing options
78
+
79
+ ### Produced outputs
80
+ - denoised BOLD image
81
+ - cleaned ROI or voxel time series
82
+ - optional QC summary of filtering settings
83
+
84
+ ---
85
+
86
+ ## Recommended Delegation
87
+
88
+ - modality-level denoising plan -> `fmri-skill`
89
+ - concrete implementation of filtering -> `nilearn-tool`
90
+ - shell execution and logging -> `claw-shell`
91
+
92
+ No execution before explicit plan confirmation.
93
+
94
+ ---
95
+
96
+ ## When to Use Filtering
97
+
98
+ - The user wants signal cleaning rather than statistical modeling or prediction.
99
+ - The goal is to remove unwanted frequency content before connectivity or decoding.
100
+ - The workflow needs standardized temporal preprocessing before ROI extraction.
101
+ - A classical transparent denoising baseline is preferred over learned denoising methods.
102
+ - The user explicitly asks for band-pass filtering, high-pass filtering, or low-pass filtering.
103
+
104
+ ---
105
+
106
+ ## Limitations and Notes
107
+
108
+ - Filtering choices depend strongly on TR, study design, and whether the data are resting-state or task-fMRI.
109
+ - Over-aggressive filtering can remove meaningful task-related or physiological signals.
110
+ - Temporal cleaning parameters should be reported because they directly affect downstream analyses.
111
+
112
+ ---
113
+
114
+ ## Reference
115
+
116
+ - Lindquist MA. The statistical analysis of fMRI data.
117
+ - Nilearn signal cleaning documentation: https://nilearn.github.io/stable/modules/generated/nilearn.image.clean_img.html
118
+
119
+ Created At: 2026-04-14 00:40 HKT
120
+ Last Updated At: 2026-04-14 00:45 HKT
121
+ Author: chengwang96
@@ -0,0 +1,153 @@
1
+ ---
2
+ name: glm
3
+ description: "Use this model doc whenever the user wants to run a classical General Linear Model (GLM) for task-evoked fMRI activation analysis. This is a non-deep-learning model route focused on design matrices, first-level/second-level statistics, and statistical maps."
4
+ license: MIT License (NeuroClaw custom skill - freely modifiable within the project)
5
+ layer: base
6
+ skill_type: model
7
+ dependencies:
8
+ - fmri-skill
9
+ - nilearn-tool
10
+ - run_models
11
+ ---
12
+ # GLM Model Doc
13
+
14
+ ## Overview
15
+ GLM refers to the classical General Linear Model used for task-based fMRI activation analysis.
16
+
17
+ - Model family: non-deep-learning statistical model
18
+ - Typical objectives:
19
+ - first-level GLM for subject/session-level task activation analysis
20
+ - second-level GLM for group-level inference across subjects
21
+ - Primary input: preprocessed task fMRI, events, TR, optional confounds, optional brain mask
22
+ - Primary output: first-level contrast maps, second-level z maps, thresholded activation maps, region-level summaries
23
+
24
+ In NeuroClaw, this document is model-level guidance for statistical activation workflows rather than phenotype prediction.
25
+
26
+ Upstream preparation should usually be delegated to:
27
+ - `fmri-skill` for task-fMRI preprocessing and confounds preparation
28
+ - `nilearn-tool` for concrete GLM fitting, design matrix construction, and statistical map generation
29
+
30
+ **Research use only.**
31
+
32
+ ---
33
+
34
+ ## Quick Start
35
+
36
+ ### 1) Prepare task-fMRI inputs
37
+ Expected inputs:
38
+ - preprocessed task BOLD image
39
+ - events TSV/CSV with onset, duration, trial type
40
+ - repetition time (`TR`)
41
+ - optional confounds TSV
42
+ - optional mask image
43
+
44
+ These should be prepared before model fitting. If not ready, delegate to `fmri-skill` first.
45
+
46
+ ### 2) Typical first-level GLM flow
47
+ Representative operations:
48
+ - build design matrix from events and confounds
49
+ - fit first-level GLM per subject/session
50
+ - compute named contrasts such as `task > baseline`
51
+ - export z maps / effect size maps
52
+
53
+ Example execution route:
54
+ ```bash
55
+ # delegated through claw-shell after preprocessing is confirmed
56
+ python skills/nilearn-tool/scripts/task_glm_reference.py \
57
+ --bold path/to/sub-001_task-preproc_bold.nii.gz \
58
+ --events path/to/sub-001_task-events.tsv \
59
+ --confounds path/to/sub-001_confounds.tsv \
60
+ --tr 2.0 \
61
+ --contrast "task-baseline" \
62
+ --output-dir run_models_output/glm/sub-001
63
+ ```
64
+
65
+ ### 3) Second-level GLM (group-level inference)
66
+ When multiple subjects are available, use second-level GLM for group-level inference.
67
+
68
+ Representative operations:
69
+ - collect subject-level contrast maps from first-level GLM
70
+ - build a group design matrix (for one-sample, two-sample, or covariate models)
71
+ - fit a second-level model across subjects
72
+ - export group z maps, thresholded figures, and statistical summaries
73
+
74
+ Typical use cases:
75
+ - one-sample group activation inference
76
+ - between-group comparison
77
+ - covariate-adjusted group analysis (for example age / sex / site)
78
+
79
+ Example execution route:
80
+ ```bash
81
+ # delegated through claw-shell after subject-level contrasts are prepared
82
+ python skills/nilearn-tool/scripts/second_level_glm_reference.py \
83
+ --contrast-maps path/to/contrast_map_list.txt \
84
+ --design-matrix path/to/group_design_matrix.csv \
85
+ --contrast group_mean \
86
+ --output-dir run_models_output/glm/group_level
87
+ ```
88
+
89
+ ---
90
+
91
+ ## Input / Output Contract
92
+
93
+ ### Required inputs
94
+ - preprocessed task fMRI in subject space or standard space
95
+ - events table with onset / duration / condition labels
96
+ - TR
97
+
98
+ ### Optional inputs
99
+ - confounds table
100
+ - mask image
101
+ - subject-level metadata for group models
102
+ - first-level contrast maps for second-level GLM
103
+ - group design matrix for second-level GLM
104
+
105
+ ### Produced outputs
106
+ - design matrix figure or CSV snapshot
107
+ - first-level beta / contrast / z maps
108
+ - thresholded maps and glass-brain figures
109
+ - second-level group z maps and statistical summaries
110
+
111
+ ---
112
+
113
+ ## Recommended Delegation
114
+
115
+ - preprocessing and task-fMRI preparation -> `fmri-skill`
116
+ - concrete implementation of design matrices and GLM fitting -> `nilearn-tool`
117
+ - shell execution and logging -> `claw-shell`
118
+
119
+ Recommended route split:
120
+ - first-level GLM -> subject/session-level task activation analysis
121
+ - second-level GLM -> group-level inference on first-level contrast maps
122
+
123
+ No execution before explicit plan confirmation.
124
+
125
+ ---
126
+
127
+ ## When to Use GLM Instead of Deep Learning
128
+
129
+ - The user wants classical task activation analysis rather than phenotype prediction.
130
+ - The goal is statistical inference on task conditions or contrasts.
131
+ - The user wants group-level inference across subjects rather than individual-level prediction.
132
+ - Sample size is limited and interpretability of condition effects is more important than representation learning.
133
+ - The required output is a contrast map, z map, or cluster-level inference report.
134
+
135
+ ---
136
+
137
+ ## Limitations and Notes
138
+
139
+ - GLM is primarily for task-fMRI, not resting-state phenotype modeling.
140
+ - Results are sensitive to event timing quality, motion confounds, and preprocessing decisions.
141
+ - Group-level inference requires consistent first-level contrast definitions across subjects.
142
+ - Second-level GLM requires aligned subject-level maps and a valid group design matrix.
143
+
144
+ ---
145
+
146
+ ## Reference
147
+
148
+ - Friston KJ et al. Statistical Parametric Mapping foundations for task-fMRI analysis.
149
+ - Nilearn GLM documentation: https://nilearn.github.io/stable/glm/index.html
150
+
151
+ Created At: 2026-04-14 00:28 HKT
152
+ Last Updated At: 2026-04-14 00:28 HKT
153
+ Author: chengwang96
@@ -0,0 +1,121 @@
1
+ ---
2
+ name: hierarchical
3
+ description: "Use this model doc whenever the user wants to perform brain parcellation using Hierarchical clustering. This is a non-deep-learning unsupervised route focused on multi-scale parcel discovery, voxel or vertex grouping, and atlas-like region generation from neuroimaging features."
4
+ license: MIT License (NeuroClaw custom skill - freely modifiable within the project)
5
+ layer: base
6
+ skill_type: model
7
+ dependencies:
8
+ - fmri-skill
9
+ - smri-skill
10
+ - nilearn-tool
11
+ - run_models
12
+ ---
13
+ # Hierarchical Model Doc
14
+
15
+ ## Overview
16
+ Hierarchical clustering is a classical non-deep-learning method for data-driven brain parcellation.
17
+
18
+ - Model family: non-deep-learning unsupervised clustering method
19
+ - Typical objectives:
20
+ - partition voxels, vertices, or ROI features into data-driven brain parcels
21
+ - build subject-level or group-level parcellations from functional or structural similarity
22
+ - export parcel labels and merge summaries across scales
23
+ - Primary input: preprocessed neuroimaging features, optional mask, optional similarity or connectivity representation
24
+ - Primary output: parcel label map, cluster summaries, optional dendrogram outputs
25
+
26
+ In NeuroClaw, this document is model-level guidance for Hierarchical-clustering-based brain parcellation workflows rather than supervised prediction.
27
+
28
+ Upstream preparation should usually be delegated to:
29
+ - `fmri-skill` for rs-fMRI or task-fMRI feature preparation when parcellation is function-driven
30
+ - `smri-skill` for structural feature preparation when parcellation is anatomy-driven
31
+ - `nilearn-tool` for concrete masking, feature matrix preparation, and hierarchical parcel export
32
+
33
+ **Research use only.**
34
+
35
+ ---
36
+
37
+ ## Quick Start
38
+
39
+ ### 1) Prepare parcellation inputs
40
+ Expected inputs:
41
+ - preprocessed feature matrix or image list
42
+ - optional brain mask
43
+ - optional subject list or cohort manifest
44
+ - target parcel number or clustering granularity
45
+
46
+ If these are not ready, delegate preprocessing to `fmri-skill` or `smri-skill` first.
47
+
48
+ ### 2) Hierarchical route
49
+ Representative operations:
50
+ - prepare aligned feature representation
51
+ - compute similarity or distance structure across spatial units
52
+ - fit agglomerative / Ward-style hierarchical clustering
53
+ - export parcel labels and optional dendrogram or merge summaries
54
+
55
+ Example execution route:
56
+ ```bash
57
+ # delegated through claw-shell after features are prepared
58
+ python skills/nilearn-tool/scripts/hierarchical_parcellation_reference.py \
59
+ --input-list path/to/image_list.txt \
60
+ --mask path/to/group_mask.nii.gz \
61
+ --n-clusters 200 \
62
+ --output-dir run_models_output/hierarchical
63
+ ```
64
+
65
+ ---
66
+
67
+ ## Input / Output Contract
68
+
69
+ ### Required inputs
70
+ - feature matrix or aligned neuroimaging image list
71
+ - requested clustering target such as parcel count
72
+
73
+ ### Optional inputs
74
+ - mask image
75
+ - connectivity or similarity matrix
76
+ - spatial adjacency constraints
77
+ - subject grouping or cohort definition
78
+ - linkage parameters
79
+
80
+ ### Produced outputs
81
+ - parcel label image or table
82
+ - cluster size summary
83
+ - optional hierarchical merge information or dendrogram summary
84
+
85
+ ---
86
+
87
+ ## Recommended Delegation
88
+
89
+ - imaging preprocessing and feature preparation -> `fmri-skill` and/or `smri-skill`
90
+ - concrete implementation of Hierarchical clustering -> `nilearn-tool`
91
+ - shell execution and logging -> `claw-shell`
92
+
93
+ No execution before explicit plan confirmation.
94
+
95
+ ---
96
+
97
+ ## When to Use Hierarchical Clustering
98
+
99
+ - The user wants data-driven brain region partitioning rather than using a predefined atlas.
100
+ - The goal is to derive parcel labels for downstream connectivity, decoding, or visualization.
101
+ - A classical unsupervised clustering baseline is preferred over deep learning.
102
+ - The user wants multi-scale organization or merge structure.
103
+
104
+ ---
105
+
106
+ ## Limitations and Notes
107
+
108
+ - Clustering quality depends strongly on preprocessing, feature definition, and spatial normalization.
109
+ - Hierarchical clustering can be computationally expensive for large voxel spaces.
110
+ - Data-driven parcellations may vary across cohorts and may not align directly with standard atlases.
111
+
112
+ ---
113
+
114
+ ## Reference
115
+
116
+ - Bellec P et al. Multi-level bootstrap analysis of stable clusters in resting-state fMRI.
117
+ - Nilearn regions and parcellations documentation: https://nilearn.github.io/stable/connectivity/region_extraction.html
118
+
119
+ Created At: 2026-04-14 00:37 HKT
120
+ Last Updated At: 2026-04-14 00:45 HKT
121
+ Author: chengwang96
@@ -0,0 +1,122 @@
1
+ ---
2
+ name: ica
3
+ description: "Use this model doc whenever the user wants to perform resting-state network decomposition using ICA. This is a non-deep-learning unsupervised route focused on extracting intrinsic connectivity networks, component maps, and subject-level time series from resting-state fMRI."
4
+ license: MIT License (NeuroClaw custom skill - freely modifiable within the project)
5
+ layer: base
6
+ skill_type: model
7
+ dependencies:
8
+ - fmri-skill
9
+ - nilearn-tool
10
+ - run_models
11
+ ---
12
+ # ICA Model Doc
13
+
14
+ ## Overview
15
+ ICA is a classical non-deep-learning method for resting-state network decomposition.
16
+
17
+ - Model family: non-deep-learning unsupervised decomposition method
18
+ - Typical objectives:
19
+ - identify intrinsic connectivity networks from resting-state fMRI
20
+ - extract spatial component maps and subject-level time series
21
+ - derive component-level connectivity or subject summaries for downstream analysis
22
+ - Primary input: preprocessed resting-state fMRI, optional mask, optional group subject list
23
+ - Primary output: component maps, subject time series, component loadings, optional connectomes or reports
24
+
25
+ In NeuroClaw, this document is model-level guidance for ICA-based resting-state decomposition workflows rather than phenotype prediction.
26
+
27
+ Upstream preparation should usually be delegated to:
28
+ - `fmri-skill` for rs-fMRI preprocessing, nuisance regression, filtering, and standard-space alignment
29
+ - `nilearn-tool` for concrete ICA fitting and component export
30
+
31
+ **Research use only.**
32
+
33
+ ---
34
+
35
+ ## Quick Start
36
+
37
+ ### 1) Prepare resting-state inputs
38
+ Expected inputs:
39
+ - preprocessed resting-state BOLD images
40
+ - optional confounds TSV files
41
+ - optional brain mask
42
+ - optional subject list or cohort manifest
43
+
44
+ If these are not ready, delegate to `fmri-skill` first.
45
+
46
+ ### 2) ICA route
47
+ Representative operations:
48
+ - load subject-level or group-level rs-fMRI images
49
+ - fit ICA to estimate intrinsic connectivity components
50
+ - export component spatial maps and subject time series
51
+ - optionally compute component-level correlations
52
+
53
+ Example execution route:
54
+ ```bash
55
+ # delegated through claw-shell after preprocessing is confirmed
56
+ python skills/nilearn-tool/scripts/rest_ica_reference.py \
57
+ --input-list path/to/rest_bold_list.txt \
58
+ --mask path/to/group_mask.nii.gz \
59
+ --n-components 20 \
60
+ --output-dir run_models_output/ica
61
+ ```
62
+
63
+ ---
64
+
65
+ ## Input / Output Contract
66
+
67
+ ### Required inputs
68
+ - preprocessed resting-state fMRI in subject space or standard space
69
+ - subject list or image list
70
+
71
+ ### Optional inputs
72
+ - confounds table(s)
73
+ - mask image
74
+ - repetition time (`TR`)
75
+ - decomposition parameters such as number of components
76
+ - group/covariate table for downstream statistical analysis
77
+
78
+ ### Produced outputs
79
+ - 4D component map image
80
+ - subject-level component time series
81
+ - component report figures and summary tables
82
+ - optional component correlation matrix / connectome
83
+
84
+ ---
85
+
86
+ ## Recommended Delegation
87
+
88
+ - resting-state preprocessing and denoising -> `fmri-skill`
89
+ - concrete implementation of ICA -> `nilearn-tool`
90
+ - shell execution and logging -> `claw-shell`
91
+
92
+ No execution before explicit plan confirmation.
93
+
94
+ ---
95
+
96
+ ## When to Use ICA
97
+
98
+ - The user wants resting-state network decomposition rather than task activation analysis.
99
+ - The goal is to identify intrinsic connectivity networks from rs-fMRI.
100
+ - The user wants subject-level component time series for downstream connectivity or clustering.
101
+ - Interpretability of spatial networks is more important than supervised phenotype prediction.
102
+ - A lightweight classical unsupervised method is preferred over deep learning.
103
+
104
+ ---
105
+
106
+ ## Limitations and Notes
107
+
108
+ - Results are sensitive to preprocessing quality, head motion, filtering, and masking choices.
109
+ - The number of components strongly influences decomposition granularity.
110
+ - ICA is unsupervised and does not directly provide statistical group inference.
111
+ - Downstream comparisons across groups usually require additional statistical analysis after decomposition.
112
+
113
+ ---
114
+
115
+ ## Reference
116
+
117
+ - Beckmann CF, Smith SM. Probabilistic independent component analysis for functional magnetic resonance imaging.
118
+ - Nilearn decomposition documentation: https://nilearn.github.io/stable/connectivity/resting_state_networks.html
119
+
120
+ Created At: 2026-04-14 00:31 HKT
121
+ Last Updated At: 2026-04-14 00:45 HKT
122
+ Author: chengwang96