@brainpilot/skills 0.0.6 → 0.0.7
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.
- package/package.json +2 -2
- package/skills/01_Meta-Skills/academic-research-hub/SKILL.md +108 -0
- package/skills/01_Meta-Skills/academic-research-hub/scripts/requirements.txt +17 -0
- package/skills/01_Meta-Skills/academic-research-hub/scripts/research.py +781 -0
- package/skills/01_Meta-Skills/beautiful-log/SKILL.md +64 -0
- package/skills/01_Meta-Skills/beautiful-log/scripts/beautiful_log.py +274 -0
- package/skills/01_Meta-Skills/ethoclaw-daily-paper/SKILL.md +130 -0
- package/skills/01_Meta-Skills/ethoclaw-daily-paper/assets/config.template.yaml +54 -0
- package/skills/01_Meta-Skills/ethoclaw-daily-paper/assets/top5_digest_template.md +5 -0
- package/skills/01_Meta-Skills/ethoclaw-daily-paper/scripts/build_top5_digest.py +300 -0
- package/skills/01_Meta-Skills/ethoclaw-daily-paper/scripts/common.py +137 -0
- package/skills/01_Meta-Skills/ethoclaw-daily-paper/scripts/merge_results.py +106 -0
- package/skills/01_Meta-Skills/ethoclaw-daily-paper/scripts/run_pipeline.py +177 -0
- package/skills/01_Meta-Skills/ethoclaw-daily-paper/scripts/search_arxiv.py +162 -0
- package/skills/01_Meta-Skills/ethoclaw-daily-paper/scripts/search_pubmed.py +202 -0
- package/skills/01_Meta-Skills/ethoclaw-normalize-tabular/SKILL.md +173 -0
- package/skills/01_Meta-Skills/ethoclaw-normalize-tabular/scripts/normalize_data.py +874 -0
- package/skills/01_Meta-Skills/ethoclaw-pdf-research/SKILL.md +134 -0
- package/skills/01_Meta-Skills/ethoclaw-pdf-research/references/confirmation-prompts.md +31 -0
- package/skills/01_Meta-Skills/ethoclaw-pdf-research/references/output-patterns.md +45 -0
- package/skills/01_Meta-Skills/ethoclaw-pdf-research/scripts/build_markdown_deliverables.py +41 -0
- package/skills/01_Meta-Skills/ethoclaw-pdf-research/scripts/build_research_log.py +84 -0
- package/skills/01_Meta-Skills/ethoclaw-pdf-research/scripts/build_summary_md.py +63 -0
- package/skills/01_Meta-Skills/ethoclaw-pdf-research/scripts/extract_pdf_bundle.py +140 -0
- package/skills/01_Meta-Skills/experiment-controller/SKILL.md +140 -0
- package/skills/01_Meta-Skills/knowledge-graph-builder/SKILL.md +366 -0
- package/skills/01_Meta-Skills/knowledge-graph-builder/scripts/entity_resolution.py +120 -0
- package/skills/01_Meta-Skills/knowledge-graph-builder/scripts/extraction_prompt_template.txt +19 -0
- package/skills/01_Meta-Skills/knowledge-graph-builder/scripts/graph_query.py +106 -0
- package/skills/01_Meta-Skills/knowledge-graph-builder/scripts/hypothesis_cli_reference.py +42 -0
- package/skills/01_Meta-Skills/knowledge-graph-builder/scripts/new_data_source_template.py +116 -0
- package/skills/01_Meta-Skills/knowledge-graph-builder/scripts/requirements.txt +15 -0
- package/skills/01_Meta-Skills/method-design/SKILL.md +61 -0
- package/skills/01_Meta-Skills/multi-search-engine/SKILL.md +119 -0
- package/skills/01_Meta-Skills/research-idea/SKILL.md +65 -0
- package/skills/05_EEG_ERP/eeg-skill/SKILL.md +197 -0
- package/skills/05_EEG_ERP/meg-skill/SKILL.md +188 -0
- package/skills/05_EEG_ERP/meg-skill/scripts/time_frequency.py +223 -0
- package/skills/05_EEG_ERP/mne-eeg-tool/SKILL.md +165 -0
- package/skills/05_EEG_ERP/mne-eeg-tool/scripts/eeg_pipeline_reference.py +231 -0
- package/skills/05_EEG_ERP/seed-iv-skill/SKILL.md +184 -0
- package/skills/05_EEG_ERP/seed-iv-skill/scripts/classify_seed_iv.py +154 -0
- package/skills/05_EEG_ERP/seed-iv-skill/scripts/extract_seed_iv_features.py +190 -0
- package/skills/05_EEG_ERP/seed-iv-skill/scripts/validate_seed_iv.py +102 -0
- package/skills/05_EEG_ERP/seed-vig-skill/SKILL.md +182 -0
- package/skills/05_EEG_ERP/seed-vig-skill/scripts/classify_seed_vig.py +165 -0
- package/skills/05_EEG_ERP/seed-vig-skill/scripts/extract_seed_vig_features.py +185 -0
- package/skills/05_EEG_ERP/seed-vig-skill/scripts/validate_seed_vig.py +88 -0
- package/skills/06_fMRI_Neuroimaging/abcd-skill/SKILL.md +308 -0
- package/skills/06_fMRI_Neuroimaging/abcd-skill/scripts/abcd_qc_summary.py +449 -0
- package/skills/06_fMRI_Neuroimaging/abcd-skill/scripts/extract_abcd_phenotype.py +292 -0
- package/skills/06_fMRI_Neuroimaging/abcd-skill/scripts/reorganize_abcd.py +387 -0
- package/skills/06_fMRI_Neuroimaging/abide-skill/SKILL.md +302 -0
- package/skills/06_fMRI_Neuroimaging/abide-skill/scripts/abide_qc_summary.py +317 -0
- package/skills/06_fMRI_Neuroimaging/abide-skill/scripts/extract_abide_phenotype.py +267 -0
- package/skills/06_fMRI_Neuroimaging/abide-skill/scripts/reorganize_abide.py +387 -0
- package/skills/06_fMRI_Neuroimaging/adhd200-skill/SKILL.md +244 -0
- package/skills/06_fMRI_Neuroimaging/adhd200-skill/scripts/adhd200_qc_summary.py +98 -0
- package/skills/06_fMRI_Neuroimaging/adhd200-skill/scripts/extract_adhd200_phenotype.py +134 -0
- package/skills/06_fMRI_Neuroimaging/adhd200-skill/scripts/reorganize_adhd200.py +206 -0
- package/skills/06_fMRI_Neuroimaging/adni-skill/SKILL.md +358 -0
- package/skills/06_fMRI_Neuroimaging/adni-skill/scripts/generate_adni_task_files.py +1305 -0
- package/skills/06_fMRI_Neuroimaging/adni-skill/scripts/generate_vqa_from_tasks.py +766 -0
- package/skills/06_fMRI_Neuroimaging/adni-skill/scripts/reorganize_adni.py +491 -0
- package/skills/06_fMRI_Neuroimaging/aibl-skill/SKILL.md +295 -0
- package/skills/06_fMRI_Neuroimaging/aibl-skill/scripts/aibl_qc_summary.py +260 -0
- package/skills/06_fMRI_Neuroimaging/aibl-skill/scripts/extract_aibl_phenotype.py +365 -0
- package/skills/06_fMRI_Neuroimaging/aibl-skill/scripts/reorganize_aibl.py +394 -0
- package/skills/06_fMRI_Neuroimaging/aomic-skill/SKILL.md +292 -0
- package/skills/06_fMRI_Neuroimaging/aomic-skill/scripts/aomic_qc_summary.py +258 -0
- package/skills/06_fMRI_Neuroimaging/aomic-skill/scripts/extract_aomic_phenotype.py +284 -0
- package/skills/06_fMRI_Neuroimaging/aomic-skill/scripts/reorganize_aomic.py +322 -0
- package/skills/06_fMRI_Neuroimaging/asl-skill/SKILL.md +168 -0
- package/skills/06_fMRI_Neuroimaging/asl-skill/scripts/compute_cbf.py +224 -0
- package/skills/06_fMRI_Neuroimaging/bids-organizer/SKILL.md +241 -0
- package/skills/06_fMRI_Neuroimaging/bold5000-skill/SKILL.md +186 -0
- package/skills/06_fMRI_Neuroimaging/bold5000-skill/scripts/bold5000_qc_summary.py +96 -0
- package/skills/06_fMRI_Neuroimaging/bold5000-skill/scripts/extract_bold5000_stimulus.py +125 -0
- package/skills/06_fMRI_Neuroimaging/bold5000-skill/scripts/reorganize_bold5000.py +102 -0
- package/skills/06_fMRI_Neuroimaging/camcan-skill/SKILL.md +213 -0
- package/skills/06_fMRI_Neuroimaging/camcan-skill/scripts/camcan_qc_summary.py +131 -0
- package/skills/06_fMRI_Neuroimaging/camcan-skill/scripts/extract_camcan_phenotype.py +145 -0
- package/skills/06_fMRI_Neuroimaging/camcan-skill/scripts/validate_camcan.py +141 -0
- package/skills/06_fMRI_Neuroimaging/cobre-skill/SKILL.md +201 -0
- package/skills/06_fMRI_Neuroimaging/cobre-skill/scripts/cobre_qc_summary.py +95 -0
- package/skills/06_fMRI_Neuroimaging/cobre-skill/scripts/extract_cobre_phenotype.py +104 -0
- package/skills/06_fMRI_Neuroimaging/cobre-skill/scripts/reorganize_cobre.py +140 -0
- package/skills/06_fMRI_Neuroimaging/conn-tool/SKILL.md +180 -0
- package/skills/06_fMRI_Neuroimaging/dcm2nii/SKILL.md +189 -0
- package/skills/06_fMRI_Neuroimaging/dmt-har-med-skill/SKILL.md +183 -0
- package/skills/06_fMRI_Neuroimaging/dmt-har-med-skill/scripts/dmt_har_med_qc_summary.py +96 -0
- package/skills/06_fMRI_Neuroimaging/dmt-har-med-skill/scripts/extract_dmt_har_med_phenotype.py +121 -0
- package/skills/06_fMRI_Neuroimaging/dmt-har-med-skill/scripts/reorganize_dmt_har_med.py +125 -0
- package/skills/06_fMRI_Neuroimaging/dwi-skill/SKILL.md +359 -0
- package/skills/06_fMRI_Neuroimaging/fmri-skill/SKILL.md +371 -0
- package/skills/06_fMRI_Neuroimaging/fmriprep-tool/SKILL.md +228 -0
- package/skills/06_fMRI_Neuroimaging/freesurfer-tool/SKILL.md +286 -0
- package/skills/06_fMRI_Neuroimaging/freesurfer-tool/scripts/freesurfer_processor.py +145 -0
- package/skills/06_fMRI_Neuroimaging/fsl-tool/SKILL.md +208 -0
- package/skills/06_fMRI_Neuroimaging/hbn-skill/SKILL.md +271 -0
- package/skills/06_fMRI_Neuroimaging/hbn-skill/scripts/extract_hbn_phenotype.py +107 -0
- package/skills/06_fMRI_Neuroimaging/hbn-skill/scripts/hbn_qc_summary.py +96 -0
- package/skills/06_fMRI_Neuroimaging/hbn-skill/scripts/reorganize_hbn.py +150 -0
- package/skills/06_fMRI_Neuroimaging/hcpa-skill/SKILL.md +210 -0
- package/skills/06_fMRI_Neuroimaging/hcpa-skill/scripts/extract_hcpa_phenotype.py +146 -0
- package/skills/06_fMRI_Neuroimaging/hcpa-skill/scripts/hcpa_qc_summary.py +120 -0
- package/skills/06_fMRI_Neuroimaging/hcpa-skill/scripts/reorganize_hcpa.py +155 -0
- package/skills/06_fMRI_Neuroimaging/hcpd-skill/SKILL.md +210 -0
- package/skills/06_fMRI_Neuroimaging/hcpd-skill/scripts/extract_hcpd_phenotype.py +148 -0
- package/skills/06_fMRI_Neuroimaging/hcpd-skill/scripts/hcpd_qc_summary.py +125 -0
- package/skills/06_fMRI_Neuroimaging/hcpd-skill/scripts/reorganize_hcpd.py +146 -0
- package/skills/06_fMRI_Neuroimaging/hcpep-skill/SKILL.md +215 -0
- package/skills/06_fMRI_Neuroimaging/hcpep-skill/scripts/extract_hcpep_phenotype.py +157 -0
- package/skills/06_fMRI_Neuroimaging/hcpep-skill/scripts/hcpep_qc_summary.py +143 -0
- package/skills/06_fMRI_Neuroimaging/hcpep-skill/scripts/reorganize_hcpep.py +146 -0
- package/skills/06_fMRI_Neuroimaging/hcppipeline-tool/SKILL.md +217 -0
- package/skills/06_fMRI_Neuroimaging/hcpya-skill/SKILL.md +214 -0
- package/skills/06_fMRI_Neuroimaging/hcpya-skill/scripts/extract_hcpya_phenotype.py +190 -0
- package/skills/06_fMRI_Neuroimaging/hcpya-skill/scripts/hcpya_qc_summary.py +152 -0
- package/skills/06_fMRI_Neuroimaging/hcpya-skill/scripts/reorganize_hcpya.py +203 -0
- package/skills/06_fMRI_Neuroimaging/ixi-skill/SKILL.md +198 -0
- package/skills/06_fMRI_Neuroimaging/ixi-skill/scripts/ixi_qc_summary.py +137 -0
- package/skills/06_fMRI_Neuroimaging/ixi-skill/scripts/reorganize_ixi.py +190 -0
- package/skills/06_fMRI_Neuroimaging/mnd-skill/SKILL.md +191 -0
- package/skills/06_fMRI_Neuroimaging/mnd-skill/scripts/extract_mnd_phenotype.py +143 -0
- package/skills/06_fMRI_Neuroimaging/mnd-skill/scripts/mnd_qc_summary.py +120 -0
- package/skills/06_fMRI_Neuroimaging/mnd-skill/scripts/validate_mnd.py +107 -0
- package/skills/06_fMRI_Neuroimaging/mschallenge-skill/SKILL.md +203 -0
- package/skills/06_fMRI_Neuroimaging/mschallenge-skill/scripts/analyze_lesions.py +119 -0
- package/skills/06_fMRI_Neuroimaging/mschallenge-skill/scripts/longitudinal_lesion.py +148 -0
- package/skills/06_fMRI_Neuroimaging/mschallenge-skill/scripts/mschallenge_qc_summary.py +132 -0
- package/skills/06_fMRI_Neuroimaging/mschallenge-skill/scripts/validate_mschallenge.py +116 -0
- package/skills/06_fMRI_Neuroimaging/nibabel-skill/SKILL.md +184 -0
- package/skills/06_fMRI_Neuroimaging/nibabel-skill/scripts/atlas_coordinate_reference.py +61 -0
- package/skills/06_fMRI_Neuroimaging/nibabel-skill/scripts/freesurfer_io_reference.py +34 -0
- package/skills/06_fMRI_Neuroimaging/nibabel-skill/scripts/nifti_inspection_reference.py +35 -0
- package/skills/06_fMRI_Neuroimaging/nifd-skill/SKILL.md +205 -0
- package/skills/06_fMRI_Neuroimaging/nifd-skill/scripts/extract_nifd_phenotype.py +132 -0
- package/skills/06_fMRI_Neuroimaging/nifd-skill/scripts/nifd_qc_summary.py +111 -0
- package/skills/06_fMRI_Neuroimaging/nifd-skill/scripts/validate_nifd.py +111 -0
- package/skills/06_fMRI_Neuroimaging/nii2dcm/SKILL.md +143 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/SKILL.md +266 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/connectome_reference.py +65 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/denoise_timeseries_reference.py +58 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/hierarchical_parcellation_reference.py +53 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/kmeans_parcellation_reference.py +53 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/preprocess_bold_reference.py +76 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/rest_dictlearning_reference.py +56 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/rest_ica_reference.py +59 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/second_level_glm_reference.py +58 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/spacenet_classifier_reference.py +59 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/svm_classifier_reference.py +60 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/task_glm_reference.py +63 -0
- package/skills/06_fMRI_Neuroimaging/nilearn-tool/scripts/zalff_summary_reference.py +109 -0
- package/skills/06_fMRI_Neuroimaging/nsd-skill/SKILL.md +210 -0
- package/skills/06_fMRI_Neuroimaging/nsd-skill/scripts/extract_nsd_stimulus.py +171 -0
- package/skills/06_fMRI_Neuroimaging/nsd-skill/scripts/nsd_qc_summary.py +142 -0
- package/skills/06_fMRI_Neuroimaging/nsd-skill/scripts/validate_nsd.py +142 -0
- package/skills/06_fMRI_Neuroimaging/oasis-skill/SKILL.md +205 -0
- package/skills/06_fMRI_Neuroimaging/oasis-skill/scripts/extract_oasis_phenotype.py +126 -0
- package/skills/06_fMRI_Neuroimaging/oasis-skill/scripts/oasis_qc_summary.py +115 -0
- package/skills/06_fMRI_Neuroimaging/oasis-skill/scripts/validate_oasis.py +119 -0
- package/skills/06_fMRI_Neuroimaging/pet-skill/SKILL.md +173 -0
- package/skills/06_fMRI_Neuroimaging/pet-skill/scripts/compute_suvr.py +202 -0
- package/skills/06_fMRI_Neuroimaging/pnc-skill/SKILL.md +206 -0
- package/skills/06_fMRI_Neuroimaging/pnc-skill/scripts/extract_pnc_phenotype.py +136 -0
- package/skills/06_fMRI_Neuroimaging/pnc-skill/scripts/pnc_qc_summary.py +116 -0
- package/skills/06_fMRI_Neuroimaging/pnc-skill/scripts/validate_pnc.py +120 -0
- package/skills/06_fMRI_Neuroimaging/ppmi-skill/SKILL.md +209 -0
- package/skills/06_fMRI_Neuroimaging/ppmi-skill/scripts/extract_ppmi_phenotype.py +138 -0
- package/skills/06_fMRI_Neuroimaging/ppmi-skill/scripts/ppmi_qc_summary.py +111 -0
- package/skills/06_fMRI_Neuroimaging/ppmi-skill/scripts/validate_ppmi.py +117 -0
- package/skills/06_fMRI_Neuroimaging/qsiprep-tool/SKILL.md +320 -0
- package/skills/06_fMRI_Neuroimaging/rest-mneta-mdd-skill/SKILL.md +215 -0
- package/skills/06_fMRI_Neuroimaging/rest-mneta-mdd-skill/scripts/extract_rest_mdd_phenotype.py +132 -0
- package/skills/06_fMRI_Neuroimaging/rest-mneta-mdd-skill/scripts/harmonize_sites.py +152 -0
- package/skills/06_fMRI_Neuroimaging/rest-mneta-mdd-skill/scripts/rest_mdd_qc_summary.py +124 -0
- package/skills/06_fMRI_Neuroimaging/rest-mneta-mdd-skill/scripts/validate_rest_mdd.py +103 -0
- package/skills/06_fMRI_Neuroimaging/smri-skill/SKILL.md +302 -0
- package/skills/06_fMRI_Neuroimaging/tcp-skill/SKILL.md +204 -0
- package/skills/06_fMRI_Neuroimaging/tcp-skill/scripts/extract_tcp_phenotype.py +139 -0
- package/skills/06_fMRI_Neuroimaging/tcp-skill/scripts/tcp_qc_summary.py +111 -0
- package/skills/06_fMRI_Neuroimaging/tcp-skill/scripts/validate_tcp.py +99 -0
- package/skills/06_fMRI_Neuroimaging/ucla-cnp-skill/SKILL.md +217 -0
- package/skills/06_fMRI_Neuroimaging/ucla-cnp-skill/scripts/extract_ucla_cnp_phenotype.py +145 -0
- package/skills/06_fMRI_Neuroimaging/ucla-cnp-skill/scripts/ucla_cnp_qc_summary.py +111 -0
- package/skills/06_fMRI_Neuroimaging/ucla-cnp-skill/scripts/validate_ucla_cnp.py +113 -0
- package/skills/06_fMRI_Neuroimaging/ukb-skill/SKILL.md +310 -0
- package/skills/06_fMRI_Neuroimaging/ukb-skill/scripts/build_ukb_survival.py +210 -0
- package/skills/06_fMRI_Neuroimaging/ukb-skill/scripts/extract_ukb_cases.py +308 -0
- package/skills/06_fMRI_Neuroimaging/ukb-skill/scripts/extract_ukb_phenotype.py +232 -0
- package/skills/06_fMRI_Neuroimaging/ukb-skill/scripts/ukb_qc_summary.py +158 -0
- package/skills/06_fMRI_Neuroimaging/wmh-segmentation/SKILL.md +133 -0
- package/skills/07_Computational_Modeling/detrending/SKILL.md +118 -0
- package/skills/07_Computational_Modeling/dictlearning/SKILL.md +122 -0
- package/skills/07_Computational_Modeling/filtering/SKILL.md +121 -0
- package/skills/07_Computational_Modeling/glm/SKILL.md +153 -0
- package/skills/07_Computational_Modeling/hierarchical/SKILL.md +121 -0
- package/skills/07_Computational_Modeling/ica/SKILL.md +122 -0
- package/skills/07_Computational_Modeling/kmeans/SKILL.md +119 -0
- package/skills/07_Computational_Modeling/run_models/SKILL.md +427 -0
- package/skills/07_Computational_Modeling/spacenet/SKILL.md +122 -0
- package/skills/07_Computational_Modeling/svm/SKILL.md +120 -0
- package/skills/08_Computational_Neuroscience/brain_gnn/SKILL.md +183 -0
- package/skills/08_Computational_Neuroscience/dipy-tool/SKILL.md +239 -0
- package/skills/08_Computational_Neuroscience/dipy-tool/scripts/dti_metrics_reference.py +70 -0
- package/skills/08_Computational_Neuroscience/dipy-tool/scripts/load_and_mask_reference.py +76 -0
- package/skills/08_Computational_Neuroscience/dipy-tool/scripts/roi_stats_reference.py +59 -0
- package/skills/08_Computational_Neuroscience/fm_app/SKILL.md +195 -0
- package/skills/08_Computational_Neuroscience/neurostorm/SKILL.md +151 -0
- package/skills/13_Visualization/brain-visualization/SKILL.md +191 -0
- package/skills/13_Visualization/brain-visualization/scripts/connectome_reference.py +108 -0
- package/skills/13_Visualization/brain-visualization/scripts/freesurfer_ply_reference.py +54 -0
- package/skills/13_Visualization/brain-visualization/scripts/zalff_summary_reference.py +116 -0
- package/skills/13_Visualization/ethoclaw-paper-figure-layout/SKILL.md +78 -0
- package/skills/13_Visualization/ethoclaw-paper-figure-layout/assets/naturecomm_figures.tex +74 -0
- package/skills/13_Visualization/ethoclaw-paper-figure-layout/scripts/layout_results_foldered.py +579 -0
- package/skills/14_Writing/overleaf-skill/SKILL.md +184 -0
- package/skills/14_Writing/overleaf-skill/scripts/install.sh +30 -0
- package/skills/14_Writing/paper-writing/SKILL.md +146 -0
- package/skills/14_Writing/paper-writing/scripts/data_statement_templates.py +164 -0
- package/skills/14_Writing/paper-writing/scripts/figure_templates.py +315 -0
- package/skills/14_Writing/paper-writing/scripts/nature_figure_style.py +214 -0
- package/skills/14_Writing/paper-writing/scripts/section_phrasebank.py +246 -0
- package/skills/16_Animal_Behavior/deeplabcut/SKILL.md +154 -0
- package/skills/16_Animal_Behavior/deeplabcut/references/3d-pose.md +89 -0
- package/skills/16_Animal_Behavior/deeplabcut/references/maDLC.md +123 -0
- package/skills/16_Animal_Behavior/deeplabcut/references/modelzoo.md +98 -0
- package/skills/16_Animal_Behavior/deeplabcut/references/standard-pipeline.md +165 -0
- package/skills/16_Animal_Behavior/deeplabcut/references/utilities.md +146 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/SKILL.md +274 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/report_template_en.html +112 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/report_template_en.md +21 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/cluster-section.md +5 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/heatmap-section.md +5 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/integrated-interpretation.md +3 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/overview.md +3 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/project-summary.md +3 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/radar-section.md +5 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/raw-trajectory.md +3 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/sample-check.md +3 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/single-subject-section.md +3 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/assets/section_templates/stats-section.md +5 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/experiment-types/epm.md +52 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/experiment-types/fst.md +37 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/experiment-types/nor.md +39 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/experiment-types/oft.md +43 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/experiment-types/tcst.md +45 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/experiment-types/tst.md +36 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/input-types.md +59 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/interpretation-guardrails.md +45 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/metadata-schema.md +57 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/report-sections.md +86 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/references/section-selection-rules.md +169 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/scripts/build_report_manifest.py +27 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/scripts/render_report.py +34 -0
- package/skills/16_Animal_Behavior/ethoclaw-analysis-report/scripts/report_utils.py +1121 -0
- package/skills/16_Animal_Behavior/ethoclaw-animal-grounding/SKILL.md +390 -0
- package/skills/16_Animal_Behavior/ethoclaw-animal-grounding/reference_code.py +98 -0
- package/skills/16_Animal_Behavior/ethoclaw-animal-pose-estimation/SKILL.md +336 -0
- package/skills/16_Animal_Behavior/ethoclaw-kinematic-parameter-generator/README.md +21 -0
- package/skills/16_Animal_Behavior/ethoclaw-kinematic-parameter-generator/SKILL.md +41 -0
- package/skills/16_Animal_Behavior/ethoclaw-kinematic-parameter-generator/batch_kinematic_generator.py +663 -0
- package/skills/16_Animal_Behavior/ethoclaw-kinematic-parameter-generator/config.json +19 -0
- package/skills/16_Animal_Behavior/ethoclaw-kinematic-parameter-generator/generate_kinematic_parameter.py +401 -0
- package/skills/16_Animal_Behavior/ethoclaw-kinematic-parameter-generator/kinematic_generator.py +265 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-clustermap-generate/SKILL.md +72 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-clustermap-generate/references/config.example.toml +56 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-clustermap-generate/scripts/cluster_all_params.py +232 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-clustermap-generate/scripts/cluster_all_params_from_config.py +236 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-radar-generate/SKILL.md +68 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-radar-generate/references/notes.md +5 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-radar-generate/scripts/plot_h5_radar.py +513 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-violin-stats-generate/SKILL.md +52 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-violin-stats-generate/config.toml +81 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-violin-stats-generate/references/stats-rule.md +18 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-violin-stats-generate/scripts/h5_inspect.py +79 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-violin-stats-generate/scripts/h5_violin_batch.py +624 -0
- package/skills/16_Animal_Behavior/ethoclaw-multiparameter-violin-stats-generate/scripts/h5_violin_stats.py +438 -0
- package/skills/16_Animal_Behavior/ethoclaw-trajectory-velocity-heatmap-generate/SKILL.md +280 -0
- package/skills/16_Animal_Behavior/ethoclaw-trajectory-velocity-heatmap-generate/core_scripts/heatmap_trajectory.py +790 -0
- package/skills/16_Animal_Behavior/ethoclaw-trajectory-velocity-heatmap-generate/core_scripts/heatmap_velocity.py +855 -0
- package/skills/16_Animal_Behavior/ethoclaw-trajectory-velocity-heatmap-generate/reference_data/reference_2d.csv +101 -0
- package/skills/16_Animal_Behavior/ethoclaw-trajectory-velocity-heatmap-generate/reference_data/reference_2d.h5 +0 -0
- package/skills/16_Animal_Behavior/ethoclaw-trajectory-velocity-heatmap-generate/reference_data/reference_data_readme.md +126 -0
|
@@ -0,0 +1,358 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: adni-skill
|
|
3
|
+
description: "Use this skill whenever the user wants an end-to-end workflow for ADNI data (fMRI + T1), including BIDS preparation, fMRIPrep preprocessing, and DK68 ROI pipeline. This is the NeuroClaw dataset-orchestration layer for ADNI."
|
|
4
|
+
license: MIT License (NeuroClaw custom skill - freely modifiable within the project)
|
|
5
|
+
layer: subagent
|
|
6
|
+
skill_type: dataset
|
|
7
|
+
dependencies:
|
|
8
|
+
- bids-organizer
|
|
9
|
+
- fmriprep-tool
|
|
10
|
+
- claw-shell
|
|
11
|
+
---
|
|
12
|
+
# ADNI Skill (Dataset-Orchestration Layer)
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
`adni-skill` is the NeuroClaw orchestration skill for ADNI subject-level fMRI + T1 workflows.
|
|
16
|
+
|
|
17
|
+
It supports two distinct usage modes:
|
|
18
|
+
1. A narrow ADNI raw NIfTI -> BIDS staging path.
|
|
19
|
+
2. A full downstream ADNI workflow path (BIDS + fMRIPrep + DK68 ROI extraction).
|
|
20
|
+
|
|
21
|
+
It coordinates a fixed two-stage pipeline:
|
|
22
|
+
1. Prepare ADNI data into BIDS and run fMRIPrep.
|
|
23
|
+
2. Run DK68 ROI extraction with QC.
|
|
24
|
+
|
|
25
|
+
It also provides an **optional VQA generation path** for VLM use cases:
|
|
26
|
+
- Reorganize ADNI data and convert DICOM to NIfTI.
|
|
27
|
+
- Generate task labels (task1-task5).
|
|
28
|
+
- Generate VQA pairs from task outputs.
|
|
29
|
+
|
|
30
|
+
This skill follows NeuroClaw hierarchy:
|
|
31
|
+
- Defines **WHAT to do**, not low-level implementation details.
|
|
32
|
+
- Does **not** execute direct shell commands itself.
|
|
33
|
+
- Delegates all execution via `claw-shell` to tool skills.
|
|
34
|
+
|
|
35
|
+
**Research use only.**
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Narrow Path: ADNI Raw NIfTI -> BIDS Staging
|
|
40
|
+
|
|
41
|
+
Use this path when the task only asks to reorganize raw ADNI NIfTI files into a BIDS-style dataset and does not require preprocessing, ROI extraction, VQA generation, EEG handling, or DICOM conversion.
|
|
42
|
+
|
|
43
|
+
### When this narrow path should dominate
|
|
44
|
+
- The task objective is limited to ADNI NIfTI staging, BIDS renaming, sidecar handling, and dataset-level metadata.
|
|
45
|
+
- Inputs are already local ADNI NIfTI files or ADNI-style subject/date folders.
|
|
46
|
+
- The required deliverable is a direct staging script or command sequence, not a plan for fMRIPrep or downstream analysis.
|
|
47
|
+
|
|
48
|
+
### Narrow-path contract
|
|
49
|
+
- Do not widen the solution to fMRIPrep, DK68, VQA, EEG, or generic multi-modality BIDS conversion unless the task explicitly requires them.
|
|
50
|
+
- Treat this as a direct file-organization problem: scan ADNI subject/session layout, normalize subject and visit labels, map modalities to BIDS names, copy or symlink NIfTI plus matching sidecars, and write dataset-level metadata plus staging logs.
|
|
51
|
+
- If the task is benchmark-style, prefer a single direct end-to-end staging script over a confirmation-first orchestration plan.
|
|
52
|
+
|
|
53
|
+
### Expected narrow-path behavior
|
|
54
|
+
1. Detect ADNI-style subject IDs such as `130_S_0969` and normalize them to deterministic BIDS labels such as `sub-130S0969`.
|
|
55
|
+
2. Detect visit/date information and normalize it to a deterministic session label such as `ses-M00` or `ses-YYYYMMDD` according to the task contract.
|
|
56
|
+
3. Route modalities narrowly:
|
|
57
|
+
- T1/MPRAGE/SPGR -> `anat/*_T1w`
|
|
58
|
+
- T2 -> `anat/*_T2w`
|
|
59
|
+
- FLAIR -> `anat/*_FLAIR`
|
|
60
|
+
- rs-fMRI/fMRI/BOLD -> `func/*_task-rest_bold`
|
|
61
|
+
- DTI/DWI only if explicitly present in the raw ADNI NIfTI inputs
|
|
62
|
+
4. Preserve or rename matching JSON sidecars when available; if metadata is absent, create only the minimal dataset files required by the task and log the limitation.
|
|
63
|
+
5. Emit dataset-level outputs such as `dataset_description.json`, `participants.tsv`, `README`, and a manifest or skipped-file report when the task expects staging auditability.
|
|
64
|
+
|
|
65
|
+
### Important restriction for narrow staging tasks
|
|
66
|
+
For ADNI raw NIfTI -> BIDS staging tasks, do not let the broader full-workflow examples below pull the answer into fMRIPrep, DK68 ROI extraction, VQA generation, EEG tooling, or DICOM conversion. Those are separate paths, not the mainline.
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## Core Workflow (Never Bypassed)
|
|
71
|
+
1. Confirm subject ID and modalities (T1 + fMRI).
|
|
72
|
+
2. Generate a numbered plan with tools, outputs, runtime, storage, and risks.
|
|
73
|
+
3. Wait for explicit confirmation (`YES` / `execute` / `proceed`).
|
|
74
|
+
4. On confirmation, prepare BIDS staging and run fMRIPrep.
|
|
75
|
+
5. After fMRIPrep success, run DK68 ROI pipeline with QC.
|
|
76
|
+
6. If VQA generation is requested, run the three VQA scripts and save outputs.
|
|
77
|
+
7. Save outputs into an ADNI-centered structure under `adni_output/`.
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## Input Layout (Example)
|
|
82
|
+
|
|
83
|
+
Subject `130_S_0969` (fMRI + T1):
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
nifti/130_S_0969/T1/I10308298_..._3.nii.gz
|
|
87
|
+
nifti/130_S_0969/T1/I10308298_..._3.json
|
|
88
|
+
nifti/130_S_0969/fMRI/I10308297_..._8.nii.gz
|
|
89
|
+
nifti/130_S_0969/fMRI/I10308297_..._8.json
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## BIDS Preparation (Stage A-C)
|
|
95
|
+
|
|
96
|
+
### Stage A: Prepare BIDS root metadata
|
|
97
|
+
Create `dataset_description.json` under the BIDS root:
|
|
98
|
+
|
|
99
|
+
```json
|
|
100
|
+
{
|
|
101
|
+
"Name": "ADNI rsfMRI T1 subset",
|
|
102
|
+
"BIDSVersion": "1.8.0",
|
|
103
|
+
"DatasetType": "raw"
|
|
104
|
+
}
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### Stage B: Create BIDS directories
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
mkdir -p bids/sub-130S0969/ses-M00/anat
|
|
111
|
+
mkdir -p bids/sub-130S0969/ses-M00/func
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Stage C: Copy and rename NIfTI + JSON
|
|
115
|
+
|
|
116
|
+
T1w:
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
cp "nifti/130_S_0969/T1/"*.nii.gz \
|
|
120
|
+
"bids/sub-130S0969/ses-M00/anat/sub-130S0969_ses-M00_T1w.nii.gz"
|
|
121
|
+
|
|
122
|
+
cp "nifti/130_S_0969/T1/"*.json \
|
|
123
|
+
"bids/sub-130S0969/ses-M00/anat/sub-130S0969_ses-M00_T1w.json"
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
fMRI:
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
cp "nifti/130_S_0969/fMRI/"*.nii.gz \
|
|
130
|
+
"bids/sub-130S0969/ses-M00/func/sub-130S0969_ses-M00_task-rest_bold.nii.gz"
|
|
131
|
+
|
|
132
|
+
cp "nifti/130_S_0969/fMRI/"*.json \
|
|
133
|
+
"bids/sub-130S0969/ses-M00/func/sub-130S0969_ses-M00_task-rest_bold.json"
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
## fMRIPrep Stage (Stage D)
|
|
139
|
+
|
|
140
|
+
### Typical Docker run
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
docker run --rm -it \
|
|
144
|
+
-v /path/to/ADNI_Datasets/bids:/data:ro \
|
|
145
|
+
-v /path/to/ADNI_Datasets/fmriprep_out:/out \
|
|
146
|
+
-v /path/to/ADNI_Datasets/fmriprep_work:/work \
|
|
147
|
+
-v /path/to/freesurfer:/fs \
|
|
148
|
+
nipreps/fmriprep:23.2.1 \
|
|
149
|
+
/data /out participant \
|
|
150
|
+
--participant-label 130S0969 \
|
|
151
|
+
--fs-license-file /fs/license.txt \
|
|
152
|
+
--output-spaces T1w \
|
|
153
|
+
--work-dir /work \
|
|
154
|
+
--clean-workdir
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
fMRIPrep handles:
|
|
158
|
+
- BIDS ingestion and validation
|
|
159
|
+
- T1/fMRI pairing checks
|
|
160
|
+
- FreeSurfer surface reconstruction
|
|
161
|
+
- fMRI preprocessing (slice timing, motion correction)
|
|
162
|
+
- BOLD-to-T1 registration
|
|
163
|
+
- T1w-space outputs
|
|
164
|
+
|
|
165
|
+
---
|
|
166
|
+
|
|
167
|
+
## DK68 Pipeline Stage
|
|
168
|
+
|
|
169
|
+
Pipeline behavior:
|
|
170
|
+
1. TR auto-read from `desc-preproc_bold.json` and used for band-pass timing
|
|
171
|
+
2. Drop initial TRs (default `drop-first-trs = 4`, configurable)
|
|
172
|
+
3. Confounds auto-select: `trans_*`, `rot_*`, `white_matter`, `csf`, `framewise_displacement`
|
|
173
|
+
- Fallback: motion-only columns if missing
|
|
174
|
+
4. DK68 ROI order fixed: left hemisphere then right hemisphere
|
|
175
|
+
5. Resample DK labels to BOLD space with nearest-neighbor
|
|
176
|
+
6. ROI-level regression of confounds (motion/WM/CSF)
|
|
177
|
+
7. ROI-level band-pass filtering: 0.01 - 0.08 Hz
|
|
178
|
+
8. ROI-level z-score normalization over time
|
|
179
|
+
- $z(t) = (x(t) - mu) / sigma$
|
|
180
|
+
9. QC output: mean FD / max FD (after TR drop), optional DVARS
|
|
181
|
+
|
|
182
|
+
Run command:
|
|
183
|
+
|
|
184
|
+
```bash
|
|
185
|
+
python run_dk68_pipeline_qc.py \
|
|
186
|
+
--base /path/to/ADNI_Datasets \
|
|
187
|
+
--sub 130S0969 \
|
|
188
|
+
--ses M00 \
|
|
189
|
+
--drop-first-trs 4
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## Optional: VQA Generation (for VLM)
|
|
195
|
+
|
|
196
|
+
This path uses the reference scripts under `skills/adni-skill/scripts/`:
|
|
197
|
+
- `reorganize_adni.py`
|
|
198
|
+
- `generate_adni_task_files.py`
|
|
199
|
+
- `generate_vqa_from_tasks.py`
|
|
200
|
+
|
|
201
|
+
If your ADNI data follows the **direct ADNI download layout**, these scripts can be used directly. Otherwise, adjust paths and assumptions in the scripts to match your local layout.
|
|
202
|
+
|
|
203
|
+
### VQA Task Chain
|
|
204
|
+
**(1) Anatomical & Imaging Assessment -> (2) Lesion Identification & Localization -> (3) Diagnostic Synthesis -> (4) Prognostic Judgment & Risk Forecasting -> (5) Therapeutic Cycle Management**
|
|
205
|
+
|
|
206
|
+
### Quick Usage (Three Scripts)
|
|
207
|
+
Run the following commands under the ADNI root (example: `data/omnibrainbench_extend`):
|
|
208
|
+
|
|
209
|
+
1) Reorganize ADNI and convert DICOM to NIfTI
|
|
210
|
+
|
|
211
|
+
```bash
|
|
212
|
+
python reorganize_adni.py --cmd dcm2niix
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
Optional cleanup after conversion:
|
|
216
|
+
|
|
217
|
+
```bash
|
|
218
|
+
python reorganize_adni.py --cmd dcm2niix --cleanup
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
2) Generate task label files (task1-task5)
|
|
222
|
+
|
|
223
|
+
```bash
|
|
224
|
+
python generate_adni_task_files.py --root . --outdir task_outputs
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
By default this does not execute task1 (FreeSurfer) or task4 (WMH) segmentation; it only checks eligibility and writes CSV/shell commands.
|
|
228
|
+
|
|
229
|
+
Run task1 now:
|
|
230
|
+
|
|
231
|
+
```bash
|
|
232
|
+
python generate_adni_task_files.py --root . --outdir task_outputs --run-task1
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
Run task4 now:
|
|
236
|
+
|
|
237
|
+
```bash
|
|
238
|
+
python generate_adni_task_files.py --root . --outdir task_outputs --run-task4
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
Run task1 and task4 together:
|
|
242
|
+
|
|
243
|
+
```bash
|
|
244
|
+
python generate_adni_task_files.py --root . --outdir task_outputs --run-task1 --run-task4
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
3) Generate VQA pairs from task outputs
|
|
248
|
+
|
|
249
|
+
```bash
|
|
250
|
+
python generate_vqa_from_tasks.py --task-dir task_outputs --outdir vqa_outputs
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
### Data Preparation Notes
|
|
254
|
+
Expected per-subject layout for the VQA scripts:
|
|
255
|
+
|
|
256
|
+
```
|
|
257
|
+
ADNI_ROOT/
|
|
258
|
+
sub-0001/
|
|
259
|
+
T1.nii
|
|
260
|
+
FLAIR.nii
|
|
261
|
+
sub-0002/
|
|
262
|
+
T1.nii
|
|
263
|
+
FLAIR.nii
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
Convert DICOM to NIfTI with `dcm2niix`, then rename outputs to `T1.nii` and `FLAIR.nii`:
|
|
267
|
+
|
|
268
|
+
```bash
|
|
269
|
+
dcm2niix -z y -o /path/to/output_nifti /path/to/input_dicom_folder
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
---
|
|
273
|
+
|
|
274
|
+
### Label Sources Used by VQA
|
|
275
|
+
|
|
276
|
+
1) Anatomical structure identification (FreeSurfer)
|
|
277
|
+
- Dataset: UCSF - Cross-Sectional FreeSurfer (7.x) [ADNI1, GO, 2, 3, 4]
|
|
278
|
+
- CSV: `UCSFFSX7_03Mar2026.csv`
|
|
279
|
+
- QC filter: keep `OVERALLQC = 1`
|
|
280
|
+
|
|
281
|
+
2) Imaging modality identification
|
|
282
|
+
- `T1.nii` -> T1W
|
|
283
|
+
- `FLAIR.nii` -> FLAIR
|
|
284
|
+
- `PD.nii` -> PD
|
|
285
|
+
|
|
286
|
+
3) Disease/abnormality diagnosis (cognitive status)
|
|
287
|
+
- Table: Diagnostic Summary [ADNI1, GO, 2, 3, 4]
|
|
288
|
+
- CSV: `DXSUM_03Mar2026.csv`
|
|
289
|
+
- Label mapping: `1 = CN`, `2 = MCI`, `3 = Dementia`
|
|
290
|
+
|
|
291
|
+
4) Lesion localization (WMH segmentation)
|
|
292
|
+
Use MARS-WMH nnU-Net (Docker):
|
|
293
|
+
|
|
294
|
+
```bash
|
|
295
|
+
docker pull ghcr.io/miac-research/wmh-nnunet:latest
|
|
296
|
+
docker tag ghcr.io/miac-research/wmh-nnunet:latest mars-wmh-nnunet:latest
|
|
297
|
+
docker run --rm --gpus all -v $(pwd):/data mars-wmh-nnunet:latest --flair /data/FLAIR.nii --t1 /data/T1w.nii
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
5) Risk forecasting and treatment-related labels (longitudinal)
|
|
301
|
+
- Group records by subject ID across multiple visits
|
|
302
|
+
- Track diagnosis changes (e.g., CN -> MCI, MCI -> Dementia) for progression risk labels
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
306
|
+
## Recommended Output Layout
|
|
307
|
+
All assets should be organized under `./adni_output/`:
|
|
308
|
+
- `adni_output/bids/` (staged BIDS data)
|
|
309
|
+
- `adni_output/fmriprep/` (fMRIPrep derivatives)
|
|
310
|
+
- `adni_output/dk68/` (ROI CSVs)
|
|
311
|
+
- `adni_output/qc/` (QC metrics)
|
|
312
|
+
- `adni_output/vqa/` (VQA task outputs)
|
|
313
|
+
- `adni_output/logs/`
|
|
314
|
+
|
|
315
|
+
---
|
|
316
|
+
|
|
317
|
+
## Safety and Execution Policy
|
|
318
|
+
- No execution before explicit plan confirmation.
|
|
319
|
+
- All execution must be routed via `claw-shell`.
|
|
320
|
+
- Missing dependencies must be resolved by `dependency-planner` before running.
|
|
321
|
+
|
|
322
|
+
---
|
|
323
|
+
|
|
324
|
+
## Important Notes and Limitations
|
|
325
|
+
- ADNI subject naming must be normalized (e.g., `130_S_0969` -> `130S0969`).
|
|
326
|
+
- fMRIPrep requires FreeSurfer license and sufficient disk space.
|
|
327
|
+
- DK68 pipeline assumes `aparc+aseg.mgz` is available in fMRIPrep outputs.
|
|
328
|
+
- VQA scripts assume a subject-per-folder layout; adapt scripts if your ADNI organization differs.
|
|
329
|
+
|
|
330
|
+
---
|
|
331
|
+
|
|
332
|
+
## When to Call This Skill
|
|
333
|
+
- User asks for ADNI end-to-end processing (fMRI + T1).
|
|
334
|
+
- User needs BIDS staging + fMRIPrep + DK68 ROI outputs.
|
|
335
|
+
- User requests VQA generation for VLM from ADNI.
|
|
336
|
+
|
|
337
|
+
---
|
|
338
|
+
|
|
339
|
+
## Complementary / Related Skills
|
|
340
|
+
- `bids-organizer`
|
|
341
|
+
- `fmriprep-tool`
|
|
342
|
+
- `freesurfer-tool`
|
|
343
|
+
- `fmri-skill`
|
|
344
|
+
- `smri-skill`
|
|
345
|
+
- `dependency-planner`
|
|
346
|
+
- `conda-env-manager`
|
|
347
|
+
- `claw-shell`
|
|
348
|
+
|
|
349
|
+
---
|
|
350
|
+
|
|
351
|
+
## Reference
|
|
352
|
+
- fMRIPrep: https://fmriprep.org/
|
|
353
|
+
- BIDS spec: https://bids.neuroimaging.io/
|
|
354
|
+
- OmniBrainBench: https://github.com/CUHK-AIM-Group/OmniBrainBench
|
|
355
|
+
|
|
356
|
+
Created At: 2026-03-28 20:38 HKT
|
|
357
|
+
Last Updated At: 2026-03-28 20:38 HKT
|
|
358
|
+
Author: chengwang96
|