@saibolla/ada 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.ada/SYSTEM.md +81 -0
- package/.ada/agents/researcher.md +69 -0
- package/.ada/agents/reviewer.md +92 -0
- package/.ada/agents/verifier.md +45 -0
- package/.ada/agents/writer.md +54 -0
- package/.ada/settings.json +32 -0
- package/.ada/themes/ada.json +85 -0
- package/.env.example +31 -0
- package/AGENTS.md +79 -0
- package/LICENSE +191 -0
- package/README.md +188 -0
- package/bin/ada.js +26 -0
- package/dist/bootstrap/sync.js +143 -0
- package/dist/cli.js +404 -0
- package/dist/config/paths.js +32 -0
- package/dist/index.js +10 -0
- package/dist/model/catalog.js +255 -0
- package/dist/model/commands.js +180 -0
- package/dist/pi/launch.js +33 -0
- package/dist/pi/package-presets.js +55 -0
- package/dist/pi/runtime.js +81 -0
- package/dist/pi/settings.js +108 -0
- package/dist/pi/web-access.js +74 -0
- package/dist/search/commands.js +12 -0
- package/dist/setup/doctor.js +126 -0
- package/dist/setup/preview.js +117 -0
- package/dist/setup/prompts.js +34 -0
- package/dist/setup/setup.js +98 -0
- package/dist/setup/update.js +133 -0
- package/dist/system/executables.js +38 -0
- package/dist/system/node-version.js +31 -0
- package/dist/system/open-url.js +35 -0
- package/dist/system/promise-polyfill.js +12 -0
- package/dist/ui/terminal.js +64 -0
- package/dist/web/launch.js +48 -0
- package/dist/web-search.js +1 -0
- package/extensions/docparser/constants.ts +62 -0
- package/extensions/docparser/deps.ts +584 -0
- package/extensions/docparser/doctor.ts +353 -0
- package/extensions/docparser/index.ts +9 -0
- package/extensions/docparser/input.ts +230 -0
- package/extensions/docparser/request.ts +67 -0
- package/extensions/docparser/schema.ts +82 -0
- package/extensions/docparser/tool.ts +305 -0
- package/extensions/docparser/types.ts +99 -0
- package/extensions/research-tools/alpha.ts +107 -0
- package/extensions/research-tools/header.ts +284 -0
- package/extensions/research-tools/help.ts +93 -0
- package/extensions/research-tools/project-scaffold.ts +64 -0
- package/extensions/research-tools/project.ts +123 -0
- package/extensions/research-tools/shared.ts +16 -0
- package/extensions/research-tools.ts +42 -0
- package/logo.d.mts +3 -0
- package/logo.mjs +14 -0
- package/metadata/commands.d.mts +46 -0
- package/metadata/commands.mjs +133 -0
- package/package.json +80 -0
- package/prompts/audit.md +17 -0
- package/prompts/autoresearch.md +66 -0
- package/prompts/compare.md +18 -0
- package/prompts/deepresearch.md +189 -0
- package/prompts/draft.md +19 -0
- package/prompts/jobs.md +16 -0
- package/prompts/litreview.md +18 -0
- package/prompts/log.md +14 -0
- package/prompts/replicate.md +24 -0
- package/prompts/review.md +18 -0
- package/prompts/watch.md +16 -0
- package/scripts/build-native-bundle.mjs +349 -0
- package/scripts/check-node-version.mjs +35 -0
- package/scripts/patch-embedded-pi.mjs +588 -0
- package/scripts/prepare-runtime-workspace.mjs +162 -0
- package/scripts/prune-runtime-deps.mjs +131 -0
- package/scripts/release.sh +152 -0
- package/skills/adaptyv/SKILL.md +112 -0
- package/skills/adaptyv/reference/api_reference.md +308 -0
- package/skills/adaptyv/reference/examples.md +913 -0
- package/skills/adaptyv/reference/experiments.md +360 -0
- package/skills/adaptyv/reference/protein_optimization.md +637 -0
- package/skills/aeon/SKILL.md +372 -0
- package/skills/aeon/references/anomaly_detection.md +154 -0
- package/skills/aeon/references/classification.md +144 -0
- package/skills/aeon/references/clustering.md +123 -0
- package/skills/aeon/references/datasets_benchmarking.md +387 -0
- package/skills/aeon/references/distances.md +256 -0
- package/skills/aeon/references/forecasting.md +140 -0
- package/skills/aeon/references/networks.md +289 -0
- package/skills/aeon/references/regression.md +118 -0
- package/skills/aeon/references/segmentation.md +163 -0
- package/skills/aeon/references/similarity_search.md +187 -0
- package/skills/aeon/references/transformations.md +246 -0
- package/skills/alpha-research/SKILL.md +42 -0
- package/skills/alpha-vantage/SKILL.md +142 -0
- package/skills/alpha-vantage/references/commodities.md +153 -0
- package/skills/alpha-vantage/references/economic-indicators.md +158 -0
- package/skills/alpha-vantage/references/forex-crypto.md +154 -0
- package/skills/alpha-vantage/references/fundamentals.md +223 -0
- package/skills/alpha-vantage/references/intelligence.md +138 -0
- package/skills/alpha-vantage/references/options.md +93 -0
- package/skills/alpha-vantage/references/technical-indicators.md +374 -0
- package/skills/alpha-vantage/references/time-series.md +157 -0
- package/skills/alphafold-database/SKILL.md +511 -0
- package/skills/alphafold-database/references/api_reference.md +423 -0
- package/skills/anndata/SKILL.md +398 -0
- package/skills/anndata/references/best_practices.md +525 -0
- package/skills/anndata/references/concatenation.md +396 -0
- package/skills/anndata/references/data_structure.md +314 -0
- package/skills/anndata/references/io_operations.md +404 -0
- package/skills/anndata/references/manipulation.md +516 -0
- package/skills/arboreto/SKILL.md +241 -0
- package/skills/arboreto/references/algorithms.md +138 -0
- package/skills/arboreto/references/basic_inference.md +151 -0
- package/skills/arboreto/references/distributed_computing.md +242 -0
- package/skills/arboreto/scripts/basic_grn_inference.py +97 -0
- package/skills/arxiv-database/SKILL.md +362 -0
- package/skills/arxiv-database/references/api_reference.md +430 -0
- package/skills/arxiv-database/scripts/arxiv_search.py +414 -0
- package/skills/astropy/SKILL.md +329 -0
- package/skills/astropy/references/coordinates.md +273 -0
- package/skills/astropy/references/cosmology.md +307 -0
- package/skills/astropy/references/fits.md +396 -0
- package/skills/astropy/references/tables.md +489 -0
- package/skills/astropy/references/time.md +404 -0
- package/skills/astropy/references/units.md +178 -0
- package/skills/astropy/references/wcs_and_other_modules.md +373 -0
- package/skills/autoresearch/SKILL.md +12 -0
- package/skills/benchling-integration/SKILL.md +478 -0
- package/skills/benchling-integration/references/api_endpoints.md +883 -0
- package/skills/benchling-integration/references/authentication.md +379 -0
- package/skills/benchling-integration/references/sdk_reference.md +774 -0
- package/skills/bgpt-paper-search/SKILL.md +81 -0
- package/skills/bindingdb-database/SKILL.md +332 -0
- package/skills/bindingdb-database/references/affinity_queries.md +178 -0
- package/skills/biopython/SKILL.md +441 -0
- package/skills/biopython/references/advanced.md +577 -0
- package/skills/biopython/references/alignment.md +362 -0
- package/skills/biopython/references/blast.md +455 -0
- package/skills/biopython/references/databases.md +484 -0
- package/skills/biopython/references/phylogenetics.md +566 -0
- package/skills/biopython/references/sequence_io.md +285 -0
- package/skills/biopython/references/structure.md +564 -0
- package/skills/biorxiv-database/SKILL.md +481 -0
- package/skills/biorxiv-database/references/api_reference.md +280 -0
- package/skills/biorxiv-database/scripts/biorxiv_search.py +445 -0
- package/skills/bioservices/SKILL.md +359 -0
- package/skills/bioservices/references/identifier_mapping.md +685 -0
- package/skills/bioservices/references/services_reference.md +636 -0
- package/skills/bioservices/references/workflow_patterns.md +811 -0
- package/skills/bioservices/scripts/batch_id_converter.py +347 -0
- package/skills/bioservices/scripts/compound_cross_reference.py +378 -0
- package/skills/bioservices/scripts/pathway_analysis.py +309 -0
- package/skills/bioservices/scripts/protein_analysis_workflow.py +408 -0
- package/skills/brenda-database/SKILL.md +717 -0
- package/skills/brenda-database/references/api_reference.md +537 -0
- package/skills/brenda-database/scripts/brenda_queries.py +844 -0
- package/skills/brenda-database/scripts/brenda_visualization.py +772 -0
- package/skills/brenda-database/scripts/enzyme_pathway_builder.py +1053 -0
- package/skills/cbioportal-database/SKILL.md +367 -0
- package/skills/cbioportal-database/references/study_exploration.md +128 -0
- package/skills/cellxgene-census/SKILL.md +509 -0
- package/skills/cellxgene-census/references/census_schema.md +182 -0
- package/skills/cellxgene-census/references/common_patterns.md +351 -0
- package/skills/chembl-database/SKILL.md +387 -0
- package/skills/chembl-database/references/api_reference.md +272 -0
- package/skills/chembl-database/scripts/example_queries.py +278 -0
- package/skills/cirq/SKILL.md +344 -0
- package/skills/cirq/references/building.md +307 -0
- package/skills/cirq/references/experiments.md +572 -0
- package/skills/cirq/references/hardware.md +515 -0
- package/skills/cirq/references/noise.md +515 -0
- package/skills/cirq/references/simulation.md +350 -0
- package/skills/cirq/references/transformation.md +416 -0
- package/skills/citation-management/SKILL.md +1113 -0
- package/skills/citation-management/assets/bibtex_template.bib +264 -0
- package/skills/citation-management/assets/citation_checklist.md +386 -0
- package/skills/citation-management/references/bibtex_formatting.md +908 -0
- package/skills/citation-management/references/citation_validation.md +794 -0
- package/skills/citation-management/references/google_scholar_search.md +725 -0
- package/skills/citation-management/references/metadata_extraction.md +870 -0
- package/skills/citation-management/references/pubmed_search.md +839 -0
- package/skills/citation-management/scripts/doi_to_bibtex.py +204 -0
- package/skills/citation-management/scripts/extract_metadata.py +569 -0
- package/skills/citation-management/scripts/format_bibtex.py +349 -0
- package/skills/citation-management/scripts/search_google_scholar.py +282 -0
- package/skills/citation-management/scripts/search_pubmed.py +398 -0
- package/skills/citation-management/scripts/validate_citations.py +497 -0
- package/skills/clinical-decision-support/SKILL.md +510 -0
- package/skills/clinical-decision-support/assets/biomarker_report_template.tex +380 -0
- package/skills/clinical-decision-support/assets/clinical_pathway_template.tex +222 -0
- package/skills/clinical-decision-support/assets/cohort_analysis_template.tex +359 -0
- package/skills/clinical-decision-support/assets/color_schemes.tex +149 -0
- package/skills/clinical-decision-support/assets/example_gbm_cohort.md +208 -0
- package/skills/clinical-decision-support/assets/recommendation_strength_guide.md +328 -0
- package/skills/clinical-decision-support/assets/treatment_recommendation_template.tex +529 -0
- package/skills/clinical-decision-support/references/README.md +129 -0
- package/skills/clinical-decision-support/references/biomarker_classification.md +719 -0
- package/skills/clinical-decision-support/references/clinical_decision_algorithms.md +604 -0
- package/skills/clinical-decision-support/references/evidence_synthesis.md +840 -0
- package/skills/clinical-decision-support/references/outcome_analysis.md +640 -0
- package/skills/clinical-decision-support/references/patient_cohort_analysis.md +427 -0
- package/skills/clinical-decision-support/references/treatment_recommendations.md +521 -0
- package/skills/clinical-decision-support/scripts/biomarker_classifier.py +384 -0
- package/skills/clinical-decision-support/scripts/build_decision_tree.py +447 -0
- package/skills/clinical-decision-support/scripts/create_cohort_tables.py +524 -0
- package/skills/clinical-decision-support/scripts/generate_survival_analysis.py +422 -0
- package/skills/clinical-decision-support/scripts/validate_cds_document.py +335 -0
- package/skills/clinical-reports/SKILL.md +1131 -0
- package/skills/clinical-reports/assets/case_report_template.md +352 -0
- package/skills/clinical-reports/assets/clinical_trial_csr_template.md +353 -0
- package/skills/clinical-reports/assets/clinical_trial_sae_template.md +359 -0
- package/skills/clinical-reports/assets/consult_note_template.md +305 -0
- package/skills/clinical-reports/assets/discharge_summary_template.md +453 -0
- package/skills/clinical-reports/assets/hipaa_compliance_checklist.md +395 -0
- package/skills/clinical-reports/assets/history_physical_template.md +305 -0
- package/skills/clinical-reports/assets/lab_report_template.md +309 -0
- package/skills/clinical-reports/assets/pathology_report_template.md +249 -0
- package/skills/clinical-reports/assets/quality_checklist.md +338 -0
- package/skills/clinical-reports/assets/radiology_report_template.md +318 -0
- package/skills/clinical-reports/assets/soap_note_template.md +253 -0
- package/skills/clinical-reports/references/README.md +236 -0
- package/skills/clinical-reports/references/case_report_guidelines.md +570 -0
- package/skills/clinical-reports/references/clinical_trial_reporting.md +693 -0
- package/skills/clinical-reports/references/data_presentation.md +530 -0
- package/skills/clinical-reports/references/diagnostic_reports_standards.md +629 -0
- package/skills/clinical-reports/references/medical_terminology.md +588 -0
- package/skills/clinical-reports/references/patient_documentation.md +744 -0
- package/skills/clinical-reports/references/peer_review_standards.md +585 -0
- package/skills/clinical-reports/references/regulatory_compliance.md +577 -0
- package/skills/clinical-reports/scripts/check_deidentification.py +346 -0
- package/skills/clinical-reports/scripts/compliance_checker.py +78 -0
- package/skills/clinical-reports/scripts/extract_clinical_data.py +102 -0
- package/skills/clinical-reports/scripts/format_adverse_events.py +103 -0
- package/skills/clinical-reports/scripts/generate_report_template.py +163 -0
- package/skills/clinical-reports/scripts/terminology_validator.py +133 -0
- package/skills/clinical-reports/scripts/validate_case_report.py +334 -0
- package/skills/clinical-reports/scripts/validate_trial_report.py +89 -0
- package/skills/clinicaltrials-database/SKILL.md +505 -0
- package/skills/clinicaltrials-database/references/api_reference.md +358 -0
- package/skills/clinicaltrials-database/scripts/query_clinicaltrials.py +215 -0
- package/skills/clinpgx-database/SKILL.md +636 -0
- package/skills/clinpgx-database/references/api_reference.md +757 -0
- package/skills/clinpgx-database/scripts/query_clinpgx.py +518 -0
- package/skills/clinvar-database/SKILL.md +360 -0
- package/skills/clinvar-database/references/api_reference.md +227 -0
- package/skills/clinvar-database/references/clinical_significance.md +218 -0
- package/skills/clinvar-database/references/data_formats.md +358 -0
- package/skills/cobrapy/SKILL.md +461 -0
- package/skills/cobrapy/references/api_quick_reference.md +655 -0
- package/skills/cobrapy/references/workflows.md +593 -0
- package/skills/consciousness-council/SKILL.md +150 -0
- package/skills/consciousness-council/references/advanced-configurations.md +96 -0
- package/skills/cosmic-database/SKILL.md +334 -0
- package/skills/cosmic-database/references/cosmic_data_reference.md +220 -0
- package/skills/cosmic-database/scripts/download_cosmic.py +231 -0
- package/skills/crawl4ai/SKILL.md +172 -0
- package/skills/dask/SKILL.md +454 -0
- package/skills/dask/references/arrays.md +497 -0
- package/skills/dask/references/bags.md +468 -0
- package/skills/dask/references/best-practices.md +277 -0
- package/skills/dask/references/dataframes.md +368 -0
- package/skills/dask/references/futures.md +541 -0
- package/skills/dask/references/schedulers.md +504 -0
- package/skills/datacommons-client/SKILL.md +253 -0
- package/skills/datacommons-client/references/getting_started.md +417 -0
- package/skills/datacommons-client/references/node.md +250 -0
- package/skills/datacommons-client/references/observation.md +185 -0
- package/skills/datacommons-client/references/resolve.md +246 -0
- package/skills/datamol/SKILL.md +704 -0
- package/skills/datamol/references/conformers_module.md +131 -0
- package/skills/datamol/references/core_api.md +130 -0
- package/skills/datamol/references/descriptors_viz.md +195 -0
- package/skills/datamol/references/fragments_scaffolds.md +174 -0
- package/skills/datamol/references/io_module.md +109 -0
- package/skills/datamol/references/reactions_data.md +218 -0
- package/skills/deep-research/SKILL.md +12 -0
- package/skills/deepchem/SKILL.md +595 -0
- package/skills/deepchem/references/api_reference.md +303 -0
- package/skills/deepchem/references/workflows.md +491 -0
- package/skills/deepchem/scripts/graph_neural_network.py +338 -0
- package/skills/deepchem/scripts/predict_solubility.py +224 -0
- package/skills/deepchem/scripts/transfer_learning.py +375 -0
- package/skills/deeptools/SKILL.md +529 -0
- package/skills/deeptools/assets/quick_reference.md +58 -0
- package/skills/deeptools/references/effective_genome_sizes.md +116 -0
- package/skills/deeptools/references/normalization_methods.md +410 -0
- package/skills/deeptools/references/tools_reference.md +533 -0
- package/skills/deeptools/references/workflows.md +474 -0
- package/skills/deeptools/scripts/validate_files.py +195 -0
- package/skills/deeptools/scripts/workflow_generator.py +454 -0
- package/skills/denario/SKILL.md +213 -0
- package/skills/denario/references/examples.md +494 -0
- package/skills/denario/references/installation.md +213 -0
- package/skills/denario/references/llm_configuration.md +265 -0
- package/skills/denario/references/research_pipeline.md +471 -0
- package/skills/depmap/SKILL.md +300 -0
- package/skills/depmap/references/dependency_analysis.md +178 -0
- package/skills/dhdna-profiler/SKILL.md +162 -0
- package/skills/dhdna-profiler/references/advanced-profiling.md +72 -0
- package/skills/diffdock/SKILL.md +481 -0
- package/skills/diffdock/assets/batch_template.csv +4 -0
- package/skills/diffdock/assets/custom_inference_config.yaml +90 -0
- package/skills/diffdock/references/confidence_and_limitations.md +182 -0
- package/skills/diffdock/references/parameters_reference.md +163 -0
- package/skills/diffdock/references/workflows_examples.md +392 -0
- package/skills/diffdock/scripts/analyze_results.py +334 -0
- package/skills/diffdock/scripts/prepare_batch_csv.py +254 -0
- package/skills/diffdock/scripts/setup_check.py +278 -0
- package/skills/dnanexus-integration/SKILL.md +381 -0
- package/skills/dnanexus-integration/references/app-development.md +247 -0
- package/skills/dnanexus-integration/references/configuration.md +646 -0
- package/skills/dnanexus-integration/references/data-operations.md +400 -0
- package/skills/dnanexus-integration/references/job-execution.md +412 -0
- package/skills/dnanexus-integration/references/python-sdk.md +523 -0
- package/skills/docker/SKILL.md +84 -0
- package/skills/docx/LICENSE.txt +30 -0
- package/skills/docx/SKILL.md +590 -0
- package/skills/docx/scripts/__init__.py +1 -0
- package/skills/docx/scripts/accept_changes.py +135 -0
- package/skills/docx/scripts/comment.py +318 -0
- package/skills/docx/scripts/office/helpers/__init__.py +0 -0
- package/skills/docx/scripts/office/helpers/merge_runs.py +199 -0
- package/skills/docx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/skills/docx/scripts/office/pack.py +159 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/skills/docx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/skills/docx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/skills/docx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/skills/docx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/skills/docx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/skills/docx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/skills/docx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/skills/docx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/skills/docx/scripts/office/soffice.py +183 -0
- package/skills/docx/scripts/office/unpack.py +132 -0
- package/skills/docx/scripts/office/validate.py +111 -0
- package/skills/docx/scripts/office/validators/__init__.py +15 -0
- package/skills/docx/scripts/office/validators/base.py +847 -0
- package/skills/docx/scripts/office/validators/docx.py +446 -0
- package/skills/docx/scripts/office/validators/pptx.py +275 -0
- package/skills/docx/scripts/office/validators/redlining.py +247 -0
- package/skills/docx/scripts/templates/comments.xml +3 -0
- package/skills/docx/scripts/templates/commentsExtended.xml +3 -0
- package/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
- package/skills/docx/scripts/templates/commentsIds.xml +3 -0
- package/skills/docx/scripts/templates/people.xml +3 -0
- package/skills/drugbank-database/SKILL.md +188 -0
- package/skills/drugbank-database/references/chemical-analysis.md +590 -0
- package/skills/drugbank-database/references/data-access.md +242 -0
- package/skills/drugbank-database/references/drug-queries.md +386 -0
- package/skills/drugbank-database/references/interactions.md +425 -0
- package/skills/drugbank-database/references/targets-pathways.md +518 -0
- package/skills/drugbank-database/scripts/drugbank_helper.py +350 -0
- package/skills/edgartools/SKILL.md +136 -0
- package/skills/edgartools/references/ai-integration.md +274 -0
- package/skills/edgartools/references/companies.md +268 -0
- package/skills/edgartools/references/data-objects.md +237 -0
- package/skills/edgartools/references/entity-facts.md +372 -0
- package/skills/edgartools/references/filings.md +387 -0
- package/skills/edgartools/references/financial-data.md +274 -0
- package/skills/edgartools/references/xbrl.md +373 -0
- package/skills/eli5/SKILL.md +25 -0
- package/skills/ena-database/SKILL.md +202 -0
- package/skills/ena-database/references/api_reference.md +490 -0
- package/skills/ensembl-database/SKILL.md +309 -0
- package/skills/ensembl-database/references/api_endpoints.md +346 -0
- package/skills/ensembl-database/scripts/ensembl_query.py +427 -0
- package/skills/esm/SKILL.md +304 -0
- package/skills/esm/references/esm-c-api.md +583 -0
- package/skills/esm/references/esm3-api.md +452 -0
- package/skills/esm/references/forge-api.md +657 -0
- package/skills/esm/references/workflows.md +685 -0
- package/skills/etetoolkit/SKILL.md +621 -0
- package/skills/etetoolkit/references/api_reference.md +583 -0
- package/skills/etetoolkit/references/visualization.md +783 -0
- package/skills/etetoolkit/references/workflows.md +774 -0
- package/skills/etetoolkit/scripts/quick_visualize.py +214 -0
- package/skills/etetoolkit/scripts/tree_operations.py +229 -0
- package/skills/exploratory-data-analysis/SKILL.md +444 -0
- package/skills/exploratory-data-analysis/assets/report_template.md +196 -0
- package/skills/exploratory-data-analysis/references/bioinformatics_genomics_formats.md +664 -0
- package/skills/exploratory-data-analysis/references/chemistry_molecular_formats.md +664 -0
- package/skills/exploratory-data-analysis/references/general_scientific_formats.md +518 -0
- package/skills/exploratory-data-analysis/references/microscopy_imaging_formats.md +620 -0
- package/skills/exploratory-data-analysis/references/proteomics_metabolomics_formats.md +517 -0
- package/skills/exploratory-data-analysis/references/spectroscopy_analytical_formats.md +633 -0
- package/skills/exploratory-data-analysis/scripts/eda_analyzer.py +547 -0
- package/skills/fda-database/SKILL.md +516 -0
- package/skills/fda-database/references/animal_veterinary.md +377 -0
- package/skills/fda-database/references/api_basics.md +687 -0
- package/skills/fda-database/references/devices.md +632 -0
- package/skills/fda-database/references/drugs.md +468 -0
- package/skills/fda-database/references/foods.md +374 -0
- package/skills/fda-database/references/other.md +472 -0
- package/skills/fda-database/scripts/fda_examples.py +335 -0
- package/skills/fda-database/scripts/fda_query.py +440 -0
- package/skills/flowio/SKILL.md +606 -0
- package/skills/flowio/references/api_reference.md +372 -0
- package/skills/fluidsim/SKILL.md +347 -0
- package/skills/fluidsim/references/advanced_features.md +398 -0
- package/skills/fluidsim/references/installation.md +68 -0
- package/skills/fluidsim/references/output_analysis.md +283 -0
- package/skills/fluidsim/references/parameters.md +198 -0
- package/skills/fluidsim/references/simulation_workflow.md +172 -0
- package/skills/fluidsim/references/solvers.md +94 -0
- package/skills/fred-economic-data/SKILL.md +433 -0
- package/skills/fred-economic-data/references/api_basics.md +212 -0
- package/skills/fred-economic-data/references/categories.md +442 -0
- package/skills/fred-economic-data/references/geofred.md +588 -0
- package/skills/fred-economic-data/references/releases.md +642 -0
- package/skills/fred-economic-data/references/series.md +584 -0
- package/skills/fred-economic-data/references/sources.md +423 -0
- package/skills/fred-economic-data/references/tags.md +485 -0
- package/skills/fred-economic-data/scripts/fred_examples.py +354 -0
- package/skills/fred-economic-data/scripts/fred_query.py +590 -0
- package/skills/gene-database/SKILL.md +177 -0
- package/skills/gene-database/references/api_reference.md +404 -0
- package/skills/gene-database/references/common_workflows.md +428 -0
- package/skills/gene-database/scripts/batch_gene_lookup.py +298 -0
- package/skills/gene-database/scripts/fetch_gene_data.py +277 -0
- package/skills/gene-database/scripts/query_gene.py +251 -0
- package/skills/generate-image/SKILL.md +183 -0
- package/skills/generate-image/scripts/generate_image.py +281 -0
- package/skills/geniml/SKILL.md +316 -0
- package/skills/geniml/references/bedspace.md +127 -0
- package/skills/geniml/references/consensus_peaks.md +238 -0
- package/skills/geniml/references/region2vec.md +90 -0
- package/skills/geniml/references/scembed.md +197 -0
- package/skills/geniml/references/utilities.md +385 -0
- package/skills/geo-database/SKILL.md +813 -0
- package/skills/geo-database/references/geo_reference.md +829 -0
- package/skills/geomaster/README.md +105 -0
- package/skills/geomaster/SKILL.md +365 -0
- package/skills/geomaster/references/advanced-gis.md +376 -0
- package/skills/geomaster/references/big-data.md +363 -0
- package/skills/geomaster/references/code-examples.md +531 -0
- package/skills/geomaster/references/coordinate-systems.md +364 -0
- package/skills/geomaster/references/core-libraries.md +273 -0
- package/skills/geomaster/references/data-sources.md +330 -0
- package/skills/geomaster/references/gis-software.md +369 -0
- package/skills/geomaster/references/industry-applications.md +420 -0
- package/skills/geomaster/references/machine-learning.md +462 -0
- package/skills/geomaster/references/programming-languages.md +456 -0
- package/skills/geomaster/references/remote-sensing.md +370 -0
- package/skills/geomaster/references/scientific-domains.md +416 -0
- package/skills/geomaster/references/specialized-topics.md +428 -0
- package/skills/geomaster/references/troubleshooting.md +439 -0
- package/skills/geopandas/SKILL.md +249 -0
- package/skills/geopandas/references/crs-management.md +243 -0
- package/skills/geopandas/references/data-io.md +165 -0
- package/skills/geopandas/references/data-structures.md +70 -0
- package/skills/geopandas/references/geometric-operations.md +221 -0
- package/skills/geopandas/references/spatial-analysis.md +184 -0
- package/skills/geopandas/references/visualization.md +243 -0
- package/skills/get-available-resources/SKILL.md +275 -0
- package/skills/get-available-resources/scripts/detect_resources.py +401 -0
- package/skills/gget/SKILL.md +869 -0
- package/skills/gget/references/database_info.md +300 -0
- package/skills/gget/references/module_reference.md +467 -0
- package/skills/gget/references/workflows.md +814 -0
- package/skills/gget/scripts/batch_sequence_analysis.py +191 -0
- package/skills/gget/scripts/enrichment_pipeline.py +235 -0
- package/skills/gget/scripts/gene_analysis.py +161 -0
- package/skills/ginkgo-cloud-lab/SKILL.md +56 -0
- package/skills/ginkgo-cloud-lab/references/cell-free-protein-expression-optimization.md +85 -0
- package/skills/ginkgo-cloud-lab/references/cell-free-protein-expression-validation.md +71 -0
- package/skills/ginkgo-cloud-lab/references/fluorescent-pixel-art-generation.md +87 -0
- package/skills/glycoengineering/SKILL.md +338 -0
- package/skills/glycoengineering/references/glycan_databases.md +165 -0
- package/skills/gnomad-database/SKILL.md +395 -0
- package/skills/gnomad-database/references/graphql_queries.md +219 -0
- package/skills/gnomad-database/references/variant_interpretation.md +85 -0
- package/skills/gtars/SKILL.md +283 -0
- package/skills/gtars/references/cli.md +222 -0
- package/skills/gtars/references/coverage.md +172 -0
- package/skills/gtars/references/overlap.md +156 -0
- package/skills/gtars/references/python-api.md +211 -0
- package/skills/gtars/references/refget.md +147 -0
- package/skills/gtars/references/tokenizers.md +103 -0
- package/skills/gtex-database/SKILL.md +315 -0
- package/skills/gtex-database/references/api_reference.md +191 -0
- package/skills/gwas-database/SKILL.md +606 -0
- package/skills/gwas-database/references/api_reference.md +793 -0
- package/skills/hedgefundmonitor/SKILL.md +128 -0
- package/skills/hedgefundmonitor/references/api-overview.md +93 -0
- package/skills/hedgefundmonitor/references/datasets.md +150 -0
- package/skills/hedgefundmonitor/references/endpoints-combined.md +196 -0
- package/skills/hedgefundmonitor/references/endpoints-metadata.md +136 -0
- package/skills/hedgefundmonitor/references/endpoints-series-data.md +126 -0
- package/skills/hedgefundmonitor/references/examples.md +287 -0
- package/skills/hedgefundmonitor/references/parameters.md +104 -0
- package/skills/histolab/SKILL.md +676 -0
- package/skills/histolab/references/filters_preprocessing.md +514 -0
- package/skills/histolab/references/slide_management.md +172 -0
- package/skills/histolab/references/tile_extraction.md +421 -0
- package/skills/histolab/references/tissue_masks.md +251 -0
- package/skills/histolab/references/visualization.md +547 -0
- package/skills/hmdb-database/SKILL.md +194 -0
- package/skills/hmdb-database/references/hmdb_data_fields.md +267 -0
- package/skills/hypogenic/SKILL.md +653 -0
- package/skills/hypogenic/references/config_template.yaml +150 -0
- package/skills/hypothesis-generation/SKILL.md +297 -0
- package/skills/hypothesis-generation/assets/FORMATTING_GUIDE.md +672 -0
- package/skills/hypothesis-generation/assets/hypothesis_generation.sty +307 -0
- package/skills/hypothesis-generation/assets/hypothesis_report_template.tex +572 -0
- package/skills/hypothesis-generation/references/experimental_design_patterns.md +329 -0
- package/skills/hypothesis-generation/references/hypothesis_quality_criteria.md +198 -0
- package/skills/hypothesis-generation/references/literature_search_strategies.md +622 -0
- package/skills/imaging-data-commons/SKILL.md +843 -0
- package/skills/imaging-data-commons/references/bigquery_guide.md +556 -0
- package/skills/imaging-data-commons/references/cli_guide.md +272 -0
- package/skills/imaging-data-commons/references/clinical_data_guide.md +324 -0
- package/skills/imaging-data-commons/references/cloud_storage_guide.md +333 -0
- package/skills/imaging-data-commons/references/dicomweb_guide.md +399 -0
- package/skills/imaging-data-commons/references/digital_pathology_guide.md +403 -0
- package/skills/imaging-data-commons/references/index_tables_guide.md +146 -0
- package/skills/imaging-data-commons/references/sql_patterns.md +207 -0
- package/skills/imaging-data-commons/references/use_cases.md +186 -0
- package/skills/infographics/SKILL.md +563 -0
- package/skills/infographics/references/color_palettes.md +496 -0
- package/skills/infographics/references/design_principles.md +636 -0
- package/skills/infographics/references/infographic_types.md +907 -0
- package/skills/infographics/scripts/generate_infographic.py +234 -0
- package/skills/infographics/scripts/generate_infographic_ai.py +1290 -0
- package/skills/interpro-database/SKILL.md +305 -0
- package/skills/interpro-database/references/domain_analysis.md +159 -0
- package/skills/iso-13485-certification/SKILL.md +678 -0
- package/skills/iso-13485-certification/assets/templates/procedures/CAPA-procedure-template.md +453 -0
- package/skills/iso-13485-certification/assets/templates/procedures/document-control-procedure-template.md +567 -0
- package/skills/iso-13485-certification/assets/templates/quality-manual-template.md +521 -0
- package/skills/iso-13485-certification/references/gap-analysis-checklist.md +568 -0
- package/skills/iso-13485-certification/references/iso-13485-requirements.md +610 -0
- package/skills/iso-13485-certification/references/mandatory-documents.md +606 -0
- package/skills/iso-13485-certification/references/quality-manual-guide.md +688 -0
- package/skills/iso-13485-certification/scripts/gap_analyzer.py +440 -0
- package/skills/jaspar-database/SKILL.md +351 -0
- package/skills/jaspar-database/references/api_reference.md +182 -0
- package/skills/jobs/SKILL.md +10 -0
- package/skills/kegg-database/SKILL.md +375 -0
- package/skills/kegg-database/references/kegg_reference.md +326 -0
- package/skills/kegg-database/scripts/kegg_api.py +251 -0
- package/skills/labarchive-integration/SKILL.md +266 -0
- package/skills/labarchive-integration/references/api_reference.md +342 -0
- package/skills/labarchive-integration/references/authentication_guide.md +357 -0
- package/skills/labarchive-integration/references/integrations.md +425 -0
- package/skills/labarchive-integration/scripts/entry_operations.py +334 -0
- package/skills/labarchive-integration/scripts/notebook_operations.py +269 -0
- package/skills/labarchive-integration/scripts/setup_config.py +205 -0
- package/skills/lamindb/SKILL.md +388 -0
- package/skills/lamindb/references/annotation-validation.md +513 -0
- package/skills/lamindb/references/core-concepts.md +380 -0
- package/skills/lamindb/references/data-management.md +433 -0
- package/skills/lamindb/references/integrations.md +642 -0
- package/skills/lamindb/references/ontologies.md +497 -0
- package/skills/lamindb/references/setup-deployment.md +733 -0
- package/skills/latchbio-integration/SKILL.md +351 -0
- package/skills/latchbio-integration/references/data-management.md +427 -0
- package/skills/latchbio-integration/references/resource-configuration.md +429 -0
- package/skills/latchbio-integration/references/verified-workflows.md +487 -0
- package/skills/latchbio-integration/references/workflow-creation.md +254 -0
- package/skills/latex-posters/SKILL.md +1602 -0
- package/skills/latex-posters/assets/baposter_template.tex +257 -0
- package/skills/latex-posters/assets/beamerposter_template.tex +244 -0
- package/skills/latex-posters/assets/poster_quality_checklist.md +358 -0
- package/skills/latex-posters/assets/tikzposter_template.tex +251 -0
- package/skills/latex-posters/references/README.md +417 -0
- package/skills/latex-posters/references/latex_poster_packages.md +745 -0
- package/skills/latex-posters/references/poster_content_guide.md +748 -0
- package/skills/latex-posters/references/poster_design_principles.md +806 -0
- package/skills/latex-posters/references/poster_layout_design.md +900 -0
- package/skills/latex-posters/scripts/review_poster.sh +214 -0
- package/skills/literature-review/SKILL.md +637 -0
- package/skills/literature-review/assets/review_template.md +412 -0
- package/skills/literature-review/references/citation_styles.md +166 -0
- package/skills/literature-review/references/database_strategies.md +455 -0
- package/skills/literature-review/scripts/generate_pdf.py +176 -0
- package/skills/literature-review/scripts/search_databases.py +303 -0
- package/skills/literature-review/scripts/verify_citations.py +222 -0
- package/skills/markdown-mermaid-writing/SKILL.md +327 -0
- package/skills/markdown-mermaid-writing/assets/examples/example-research-report.md +221 -0
- package/skills/markdown-mermaid-writing/references/diagrams/architecture.md +108 -0
- package/skills/markdown-mermaid-writing/references/diagrams/block.md +177 -0
- package/skills/markdown-mermaid-writing/references/diagrams/c4.md +136 -0
- package/skills/markdown-mermaid-writing/references/diagrams/class.md +246 -0
- package/skills/markdown-mermaid-writing/references/diagrams/complex_examples.md +384 -0
- package/skills/markdown-mermaid-writing/references/diagrams/er.md +222 -0
- package/skills/markdown-mermaid-writing/references/diagrams/flowchart.md +177 -0
- package/skills/markdown-mermaid-writing/references/diagrams/gantt.md +138 -0
- package/skills/markdown-mermaid-writing/references/diagrams/git_graph.md +74 -0
- package/skills/markdown-mermaid-writing/references/diagrams/kanban.md +107 -0
- package/skills/markdown-mermaid-writing/references/diagrams/mindmap.md +74 -0
- package/skills/markdown-mermaid-writing/references/diagrams/packet.md +55 -0
- package/skills/markdown-mermaid-writing/references/diagrams/pie.md +52 -0
- package/skills/markdown-mermaid-writing/references/diagrams/quadrant.md +66 -0
- package/skills/markdown-mermaid-writing/references/diagrams/radar.md +59 -0
- package/skills/markdown-mermaid-writing/references/diagrams/requirement.md +88 -0
- package/skills/markdown-mermaid-writing/references/diagrams/sankey.md +71 -0
- package/skills/markdown-mermaid-writing/references/diagrams/sequence.md +174 -0
- package/skills/markdown-mermaid-writing/references/diagrams/state.md +150 -0
- package/skills/markdown-mermaid-writing/references/diagrams/timeline.md +96 -0
- package/skills/markdown-mermaid-writing/references/diagrams/treemap.md +66 -0
- package/skills/markdown-mermaid-writing/references/diagrams/user_journey.md +108 -0
- package/skills/markdown-mermaid-writing/references/diagrams/xy_chart.md +53 -0
- package/skills/markdown-mermaid-writing/references/diagrams/zenuml.md +71 -0
- package/skills/markdown-mermaid-writing/references/markdown_style_guide.md +733 -0
- package/skills/markdown-mermaid-writing/references/mermaid_style_guide.md +458 -0
- package/skills/markdown-mermaid-writing/templates/decision_record.md +211 -0
- package/skills/markdown-mermaid-writing/templates/how_to_guide.md +275 -0
- package/skills/markdown-mermaid-writing/templates/issue.md +303 -0
- package/skills/markdown-mermaid-writing/templates/kanban.md +223 -0
- package/skills/markdown-mermaid-writing/templates/presentation.md +312 -0
- package/skills/markdown-mermaid-writing/templates/project_documentation.md +412 -0
- package/skills/markdown-mermaid-writing/templates/pull_request.md +319 -0
- package/skills/markdown-mermaid-writing/templates/research_paper.md +304 -0
- package/skills/markdown-mermaid-writing/templates/status_report.md +185 -0
- package/skills/market-research-reports/SKILL.md +905 -0
- package/skills/market-research-reports/assets/FORMATTING_GUIDE.md +428 -0
- package/skills/market-research-reports/assets/market_report_template.tex +1380 -0
- package/skills/market-research-reports/assets/market_research.sty +564 -0
- package/skills/market-research-reports/references/data_analysis_patterns.md +548 -0
- package/skills/market-research-reports/references/report_structure_guide.md +999 -0
- package/skills/market-research-reports/references/visual_generation_guide.md +1077 -0
- package/skills/market-research-reports/scripts/generate_market_visuals.py +529 -0
- package/skills/markitdown/SKILL.md +488 -0
- package/skills/markitdown/assets/example_usage.md +463 -0
- package/skills/markitdown/references/api_reference.md +396 -0
- package/skills/markitdown/references/file_formats.md +542 -0
- package/skills/markitdown/scripts/batch_convert.py +228 -0
- package/skills/markitdown/scripts/convert_literature.py +283 -0
- package/skills/markitdown/scripts/convert_with_ai.py +240 -0
- package/skills/matchms/SKILL.md +201 -0
- package/skills/matchms/references/filtering.md +288 -0
- package/skills/matchms/references/importing_exporting.md +416 -0
- package/skills/matchms/references/similarity.md +380 -0
- package/skills/matchms/references/workflows.md +647 -0
- package/skills/matlab/SKILL.md +376 -0
- package/skills/matlab/references/data-import-export.md +479 -0
- package/skills/matlab/references/executing-scripts.md +444 -0
- package/skills/matlab/references/graphics-visualization.md +579 -0
- package/skills/matlab/references/mathematics.md +553 -0
- package/skills/matlab/references/matrices-arrays.md +349 -0
- package/skills/matlab/references/octave-compatibility.md +544 -0
- package/skills/matlab/references/programming.md +672 -0
- package/skills/matlab/references/python-integration.md +433 -0
- package/skills/matplotlib/SKILL.md +359 -0
- package/skills/matplotlib/references/api_reference.md +412 -0
- package/skills/matplotlib/references/common_issues.md +563 -0
- package/skills/matplotlib/references/plot_types.md +476 -0
- package/skills/matplotlib/references/styling_guide.md +589 -0
- package/skills/matplotlib/scripts/plot_template.py +401 -0
- package/skills/matplotlib/scripts/style_configurator.py +409 -0
- package/skills/medchem/SKILL.md +404 -0
- package/skills/medchem/references/api_guide.md +600 -0
- package/skills/medchem/references/rules_catalog.md +604 -0
- package/skills/medchem/scripts/filter_molecules.py +418 -0
- package/skills/metabolomics-workbench-database/SKILL.md +257 -0
- package/skills/metabolomics-workbench-database/references/api_reference.md +494 -0
- package/skills/modal/SKILL.md +406 -0
- package/skills/modal/references/api_reference.md +187 -0
- package/skills/modal/references/examples.md +266 -0
- package/skills/modal/references/functions.md +260 -0
- package/skills/modal/references/getting-started.md +175 -0
- package/skills/modal/references/gpu.md +174 -0
- package/skills/modal/references/images.md +259 -0
- package/skills/modal/references/resources.md +117 -0
- package/skills/modal/references/scaling.md +173 -0
- package/skills/modal/references/scheduled-jobs.md +143 -0
- package/skills/modal/references/secrets.md +119 -0
- package/skills/modal/references/volumes.md +247 -0
- package/skills/modal/references/web-endpoints.md +254 -0
- package/skills/modal-compute/SKILL.md +56 -0
- package/skills/molecular-dynamics/SKILL.md +457 -0
- package/skills/molecular-dynamics/references/mdanalysis_analysis.md +208 -0
- package/skills/molfeat/SKILL.md +509 -0
- package/skills/molfeat/references/api_reference.md +428 -0
- package/skills/molfeat/references/available_featurizers.md +333 -0
- package/skills/molfeat/references/examples.md +723 -0
- package/skills/monarch-database/SKILL.md +372 -0
- package/skills/monarch-database/references/phenotype_ontology.md +160 -0
- package/skills/networkx/SKILL.md +435 -0
- package/skills/networkx/references/algorithms.md +383 -0
- package/skills/networkx/references/generators.md +378 -0
- package/skills/networkx/references/graph-basics.md +283 -0
- package/skills/networkx/references/io.md +441 -0
- package/skills/networkx/references/visualization.md +529 -0
- package/skills/neurokit2/SKILL.md +354 -0
- package/skills/neurokit2/references/bio_module.md +417 -0
- package/skills/neurokit2/references/complexity.md +715 -0
- package/skills/neurokit2/references/ecg_cardiac.md +355 -0
- package/skills/neurokit2/references/eda.md +497 -0
- package/skills/neurokit2/references/eeg.md +506 -0
- package/skills/neurokit2/references/emg.md +408 -0
- package/skills/neurokit2/references/eog.md +407 -0
- package/skills/neurokit2/references/epochs_events.md +471 -0
- package/skills/neurokit2/references/hrv.md +480 -0
- package/skills/neurokit2/references/ppg.md +413 -0
- package/skills/neurokit2/references/rsp.md +510 -0
- package/skills/neurokit2/references/signal_processing.md +648 -0
- package/skills/neuropixels-analysis/SKILL.md +348 -0
- package/skills/neuropixels-analysis/assets/analysis_template.py +271 -0
- package/skills/neuropixels-analysis/references/AI_CURATION.md +345 -0
- package/skills/neuropixels-analysis/references/ANALYSIS.md +392 -0
- package/skills/neuropixels-analysis/references/AUTOMATED_CURATION.md +358 -0
- package/skills/neuropixels-analysis/references/MOTION_CORRECTION.md +323 -0
- package/skills/neuropixels-analysis/references/PREPROCESSING.md +273 -0
- package/skills/neuropixels-analysis/references/QUALITY_METRICS.md +359 -0
- package/skills/neuropixels-analysis/references/SPIKE_SORTING.md +339 -0
- package/skills/neuropixels-analysis/references/api_reference.md +415 -0
- package/skills/neuropixels-analysis/references/plotting_guide.md +454 -0
- package/skills/neuropixels-analysis/references/standard_workflow.md +385 -0
- package/skills/neuropixels-analysis/scripts/compute_metrics.py +178 -0
- package/skills/neuropixels-analysis/scripts/explore_recording.py +168 -0
- package/skills/neuropixels-analysis/scripts/export_to_phy.py +79 -0
- package/skills/neuropixels-analysis/scripts/neuropixels_pipeline.py +432 -0
- package/skills/neuropixels-analysis/scripts/preprocess_recording.py +122 -0
- package/skills/neuropixels-analysis/scripts/run_sorting.py +98 -0
- package/skills/offer-k-dense-web/SKILL.md +21 -0
- package/skills/omero-integration/SKILL.md +249 -0
- package/skills/omero-integration/references/advanced.md +631 -0
- package/skills/omero-integration/references/connection.md +369 -0
- package/skills/omero-integration/references/data_access.md +544 -0
- package/skills/omero-integration/references/image_processing.md +665 -0
- package/skills/omero-integration/references/metadata.md +688 -0
- package/skills/omero-integration/references/rois.md +648 -0
- package/skills/omero-integration/references/scripts.md +637 -0
- package/skills/omero-integration/references/tables.md +532 -0
- package/skills/open-notebook/SKILL.md +289 -0
- package/skills/open-notebook/references/api_reference.md +715 -0
- package/skills/open-notebook/references/architecture.md +163 -0
- package/skills/open-notebook/references/configuration.md +226 -0
- package/skills/open-notebook/references/examples.md +290 -0
- package/skills/open-notebook/scripts/chat_interaction.py +190 -0
- package/skills/open-notebook/scripts/notebook_management.py +142 -0
- package/skills/open-notebook/scripts/source_ingestion.py +160 -0
- package/skills/open-notebook/scripts/test_open_notebook_skill.py +423 -0
- package/skills/openalex-database/SKILL.md +496 -0
- package/skills/openalex-database/references/api_guide.md +371 -0
- package/skills/openalex-database/references/common_queries.md +381 -0
- package/skills/openalex-database/scripts/openalex_client.py +337 -0
- package/skills/openalex-database/scripts/query_helpers.py +306 -0
- package/skills/opentargets-database/SKILL.md +371 -0
- package/skills/opentargets-database/references/api_reference.md +249 -0
- package/skills/opentargets-database/references/evidence_types.md +306 -0
- package/skills/opentargets-database/references/target_annotations.md +401 -0
- package/skills/opentargets-database/scripts/query_opentargets.py +403 -0
- package/skills/opentrons-integration/SKILL.md +571 -0
- package/skills/opentrons-integration/references/api_reference.md +366 -0
- package/skills/opentrons-integration/scripts/basic_protocol_template.py +67 -0
- package/skills/opentrons-integration/scripts/pcr_setup_template.py +154 -0
- package/skills/opentrons-integration/scripts/serial_dilution_template.py +96 -0
- package/skills/paper-2-web/SKILL.md +495 -0
- package/skills/paper-2-web/references/installation.md +141 -0
- package/skills/paper-2-web/references/paper2poster.md +346 -0
- package/skills/paper-2-web/references/paper2video.md +305 -0
- package/skills/paper-2-web/references/paper2web.md +187 -0
- package/skills/paper-2-web/references/usage_examples.md +436 -0
- package/skills/paper-code-audit/SKILL.md +12 -0
- package/skills/paper-writing/SKILL.md +12 -0
- package/skills/parallel-web/SKILL.md +314 -0
- package/skills/parallel-web/references/api_reference.md +244 -0
- package/skills/parallel-web/references/deep_research_guide.md +362 -0
- package/skills/parallel-web/references/extraction_patterns.md +338 -0
- package/skills/parallel-web/references/search_best_practices.md +297 -0
- package/skills/parallel-web/references/workflow_recipes.md +456 -0
- package/skills/parallel-web/scripts/parallel_web.py +568 -0
- package/skills/parse-document/SKILL.md +139 -0
- package/skills/pathml/SKILL.md +164 -0
- package/skills/pathml/references/data_management.md +742 -0
- package/skills/pathml/references/graphs.md +653 -0
- package/skills/pathml/references/image_loading.md +448 -0
- package/skills/pathml/references/machine_learning.md +725 -0
- package/skills/pathml/references/multiparametric.md +686 -0
- package/skills/pathml/references/preprocessing.md +722 -0
- package/skills/pdb-database/SKILL.md +307 -0
- package/skills/pdb-database/references/api_reference.md +617 -0
- package/skills/pdf/LICENSE.txt +30 -0
- package/skills/pdf/SKILL.md +314 -0
- package/skills/pdf/forms.md +294 -0
- package/skills/pdf/reference.md +612 -0
- package/skills/pdf/scripts/check_bounding_boxes.py +65 -0
- package/skills/pdf/scripts/check_fillable_fields.py +11 -0
- package/skills/pdf/scripts/convert_pdf_to_images.py +33 -0
- package/skills/pdf/scripts/create_validation_image.py +37 -0
- package/skills/pdf/scripts/extract_form_field_info.py +122 -0
- package/skills/pdf/scripts/extract_form_structure.py +115 -0
- package/skills/pdf/scripts/fill_fillable_fields.py +98 -0
- package/skills/pdf/scripts/fill_pdf_form_with_annotations.py +107 -0
- package/skills/peer-review/SKILL.md +569 -0
- package/skills/peer-review/references/common_issues.md +552 -0
- package/skills/peer-review/references/reporting_standards.md +290 -0
- package/skills/pennylane/SKILL.md +224 -0
- package/skills/pennylane/references/advanced_features.md +667 -0
- package/skills/pennylane/references/devices_backends.md +596 -0
- package/skills/pennylane/references/getting_started.md +227 -0
- package/skills/pennylane/references/optimization.md +671 -0
- package/skills/pennylane/references/quantum_chemistry.md +567 -0
- package/skills/pennylane/references/quantum_circuits.md +437 -0
- package/skills/pennylane/references/quantum_ml.md +571 -0
- package/skills/perplexity-search/SKILL.md +446 -0
- package/skills/perplexity-search/assets/.env.example +16 -0
- package/skills/perplexity-search/references/model_comparison.md +386 -0
- package/skills/perplexity-search/references/openrouter_setup.md +454 -0
- package/skills/perplexity-search/references/search_strategies.md +258 -0
- package/skills/perplexity-search/scripts/perplexity_search.py +277 -0
- package/skills/perplexity-search/scripts/setup_env.py +171 -0
- package/skills/phylogenetics/SKILL.md +404 -0
- package/skills/phylogenetics/references/iqtree_inference.md +181 -0
- package/skills/phylogenetics/scripts/phylogenetic_analysis.py +270 -0
- package/skills/plotly/SKILL.md +265 -0
- package/skills/plotly/references/chart-types.md +488 -0
- package/skills/plotly/references/export-interactivity.md +453 -0
- package/skills/plotly/references/graph-objects.md +302 -0
- package/skills/plotly/references/layouts-styling.md +457 -0
- package/skills/plotly/references/plotly-express.md +213 -0
- package/skills/polars/SKILL.md +385 -0
- package/skills/polars/references/best_practices.md +649 -0
- package/skills/polars/references/core_concepts.md +378 -0
- package/skills/polars/references/io_guide.md +557 -0
- package/skills/polars/references/operations.md +602 -0
- package/skills/polars/references/pandas_migration.md +417 -0
- package/skills/polars/references/transformations.md +549 -0
- package/skills/polars-bio/SKILL.md +374 -0
- package/skills/polars-bio/references/bioframe_migration.md +250 -0
- package/skills/polars-bio/references/configuration.md +175 -0
- package/skills/polars-bio/references/file_io.md +414 -0
- package/skills/polars-bio/references/interval_operations.md +362 -0
- package/skills/polars-bio/references/pileup_operations.md +176 -0
- package/skills/polars-bio/references/sql_processing.md +224 -0
- package/skills/pptx/LICENSE.txt +30 -0
- package/skills/pptx/SKILL.md +232 -0
- package/skills/pptx/editing.md +205 -0
- package/skills/pptx/pptxgenjs.md +420 -0
- package/skills/pptx/scripts/__init__.py +0 -0
- package/skills/pptx/scripts/add_slide.py +195 -0
- package/skills/pptx/scripts/clean.py +286 -0
- package/skills/pptx/scripts/office/helpers/__init__.py +0 -0
- package/skills/pptx/scripts/office/helpers/merge_runs.py +199 -0
- package/skills/pptx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/skills/pptx/scripts/office/pack.py +159 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/skills/pptx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/skills/pptx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/skills/pptx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/skills/pptx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/skills/pptx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/skills/pptx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/skills/pptx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/skills/pptx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/skills/pptx/scripts/office/soffice.py +183 -0
- package/skills/pptx/scripts/office/unpack.py +132 -0
- package/skills/pptx/scripts/office/validate.py +111 -0
- package/skills/pptx/scripts/office/validators/__init__.py +15 -0
- package/skills/pptx/scripts/office/validators/base.py +847 -0
- package/skills/pptx/scripts/office/validators/docx.py +446 -0
- package/skills/pptx/scripts/office/validators/pptx.py +275 -0
- package/skills/pptx/scripts/office/validators/redlining.py +247 -0
- package/skills/pptx/scripts/thumbnail.py +289 -0
- package/skills/pptx-posters/SKILL.md +414 -0
- package/skills/pptx-posters/assets/poster_html_template.html +257 -0
- package/skills/pptx-posters/assets/poster_quality_checklist.md +358 -0
- package/skills/pptx-posters/references/poster_content_guide.md +748 -0
- package/skills/pptx-posters/references/poster_design_principles.md +806 -0
- package/skills/pptx-posters/references/poster_layout_design.md +900 -0
- package/skills/preview/SKILL.md +27 -0
- package/skills/primekg/SKILL.md +97 -0
- package/skills/primekg/scripts/query_primekg.py +123 -0
- package/skills/protocolsio-integration/SKILL.md +419 -0
- package/skills/protocolsio-integration/references/additional_features.md +387 -0
- package/skills/protocolsio-integration/references/authentication.md +100 -0
- package/skills/protocolsio-integration/references/discussions.md +225 -0
- package/skills/protocolsio-integration/references/file_manager.md +412 -0
- package/skills/protocolsio-integration/references/protocols_api.md +294 -0
- package/skills/protocolsio-integration/references/workspaces.md +293 -0
- package/skills/pubchem-database/SKILL.md +572 -0
- package/skills/pubchem-database/references/api_reference.md +440 -0
- package/skills/pubchem-database/scripts/bioactivity_query.py +367 -0
- package/skills/pubchem-database/scripts/compound_search.py +297 -0
- package/skills/pubmed-database/SKILL.md +458 -0
- package/skills/pubmed-database/references/api_reference.md +298 -0
- package/skills/pubmed-database/references/common_queries.md +453 -0
- package/skills/pubmed-database/references/search_syntax.md +436 -0
- package/skills/pufferlib/SKILL.md +434 -0
- package/skills/pufferlib/references/environments.md +508 -0
- package/skills/pufferlib/references/integration.md +621 -0
- package/skills/pufferlib/references/policies.md +653 -0
- package/skills/pufferlib/references/training.md +360 -0
- package/skills/pufferlib/references/vectorization.md +557 -0
- package/skills/pufferlib/scripts/env_template.py +340 -0
- package/skills/pufferlib/scripts/train_template.py +239 -0
- package/skills/pydeseq2/SKILL.md +557 -0
- package/skills/pydeseq2/references/api_reference.md +228 -0
- package/skills/pydeseq2/references/workflow_guide.md +582 -0
- package/skills/pydeseq2/scripts/run_deseq2_analysis.py +353 -0
- package/skills/pydicom/SKILL.md +432 -0
- package/skills/pydicom/references/common_tags.md +228 -0
- package/skills/pydicom/references/transfer_syntaxes.md +352 -0
- package/skills/pydicom/scripts/anonymize_dicom.py +137 -0
- package/skills/pydicom/scripts/dicom_to_image.py +172 -0
- package/skills/pydicom/scripts/extract_metadata.py +173 -0
- package/skills/pyhealth/SKILL.md +489 -0
- package/skills/pyhealth/references/datasets.md +178 -0
- package/skills/pyhealth/references/medical_coding.md +284 -0
- package/skills/pyhealth/references/models.md +594 -0
- package/skills/pyhealth/references/preprocessing.md +638 -0
- package/skills/pyhealth/references/tasks.md +379 -0
- package/skills/pyhealth/references/training_evaluation.md +648 -0
- package/skills/pylabrobot/SKILL.md +183 -0
- package/skills/pylabrobot/references/analytical-equipment.md +464 -0
- package/skills/pylabrobot/references/hardware-backends.md +480 -0
- package/skills/pylabrobot/references/liquid-handling.md +403 -0
- package/skills/pylabrobot/references/material-handling.md +620 -0
- package/skills/pylabrobot/references/resources.md +489 -0
- package/skills/pylabrobot/references/visualization.md +532 -0
- package/skills/pymatgen/SKILL.md +689 -0
- package/skills/pymatgen/references/analysis_modules.md +530 -0
- package/skills/pymatgen/references/core_classes.md +318 -0
- package/skills/pymatgen/references/io_formats.md +469 -0
- package/skills/pymatgen/references/materials_project_api.md +517 -0
- package/skills/pymatgen/references/transformations_workflows.md +591 -0
- package/skills/pymatgen/scripts/phase_diagram_generator.py +233 -0
- package/skills/pymatgen/scripts/structure_analyzer.py +266 -0
- package/skills/pymatgen/scripts/structure_converter.py +169 -0
- package/skills/pymc/SKILL.md +570 -0
- package/skills/pymc/assets/hierarchical_model_template.py +333 -0
- package/skills/pymc/assets/linear_regression_template.py +241 -0
- package/skills/pymc/references/distributions.md +320 -0
- package/skills/pymc/references/sampling_inference.md +424 -0
- package/skills/pymc/references/workflows.md +526 -0
- package/skills/pymc/scripts/model_comparison.py +387 -0
- package/skills/pymc/scripts/model_diagnostics.py +350 -0
- package/skills/pymoo/SKILL.md +569 -0
- package/skills/pymoo/references/algorithms.md +180 -0
- package/skills/pymoo/references/constraints_mcdm.md +417 -0
- package/skills/pymoo/references/operators.md +345 -0
- package/skills/pymoo/references/problems.md +265 -0
- package/skills/pymoo/references/visualization.md +353 -0
- package/skills/pymoo/scripts/custom_problem_example.py +181 -0
- package/skills/pymoo/scripts/decision_making_example.py +161 -0
- package/skills/pymoo/scripts/many_objective_example.py +72 -0
- package/skills/pymoo/scripts/multi_objective_example.py +63 -0
- package/skills/pymoo/scripts/single_objective_example.py +59 -0
- package/skills/pyopenms/SKILL.md +215 -0
- package/skills/pyopenms/references/data_structures.md +497 -0
- package/skills/pyopenms/references/feature_detection.md +410 -0
- package/skills/pyopenms/references/file_io.md +349 -0
- package/skills/pyopenms/references/identification.md +422 -0
- package/skills/pyopenms/references/metabolomics.md +482 -0
- package/skills/pyopenms/references/signal_processing.md +433 -0
- package/skills/pysam/SKILL.md +263 -0
- package/skills/pysam/references/alignment_files.md +280 -0
- package/skills/pysam/references/common_workflows.md +520 -0
- package/skills/pysam/references/sequence_files.md +407 -0
- package/skills/pysam/references/variant_files.md +365 -0
- package/skills/pytdc/SKILL.md +458 -0
- package/skills/pytdc/references/datasets.md +246 -0
- package/skills/pytdc/references/oracles.md +400 -0
- package/skills/pytdc/references/utilities.md +684 -0
- package/skills/pytdc/scripts/benchmark_evaluation.py +327 -0
- package/skills/pytdc/scripts/load_and_split_data.py +214 -0
- package/skills/pytdc/scripts/molecular_generation.py +404 -0
- package/skills/pytorch-lightning/SKILL.md +172 -0
- package/skills/pytorch-lightning/references/best_practices.md +724 -0
- package/skills/pytorch-lightning/references/callbacks.md +564 -0
- package/skills/pytorch-lightning/references/data_module.md +565 -0
- package/skills/pytorch-lightning/references/distributed_training.md +643 -0
- package/skills/pytorch-lightning/references/lightning_module.md +487 -0
- package/skills/pytorch-lightning/references/logging.md +654 -0
- package/skills/pytorch-lightning/references/trainer.md +641 -0
- package/skills/pytorch-lightning/scripts/quick_trainer_setup.py +454 -0
- package/skills/pytorch-lightning/scripts/template_datamodule.py +328 -0
- package/skills/pytorch-lightning/scripts/template_lightning_module.py +219 -0
- package/skills/pyzotero/SKILL.md +111 -0
- package/skills/pyzotero/references/authentication.md +90 -0
- package/skills/pyzotero/references/cli.md +100 -0
- package/skills/pyzotero/references/collections.md +113 -0
- package/skills/pyzotero/references/error-handling.md +103 -0
- package/skills/pyzotero/references/exports.md +102 -0
- package/skills/pyzotero/references/files-attachments.md +97 -0
- package/skills/pyzotero/references/full-text.md +68 -0
- package/skills/pyzotero/references/pagination.md +79 -0
- package/skills/pyzotero/references/read-api.md +137 -0
- package/skills/pyzotero/references/saved-searches.md +77 -0
- package/skills/pyzotero/references/search-params.md +90 -0
- package/skills/pyzotero/references/tags.md +87 -0
- package/skills/pyzotero/references/write-api.md +123 -0
- package/skills/qiskit/SKILL.md +273 -0
- package/skills/qiskit/references/algorithms.md +607 -0
- package/skills/qiskit/references/backends.md +433 -0
- package/skills/qiskit/references/circuits.md +197 -0
- package/skills/qiskit/references/patterns.md +533 -0
- package/skills/qiskit/references/primitives.md +277 -0
- package/skills/qiskit/references/setup.md +99 -0
- package/skills/qiskit/references/transpilation.md +286 -0
- package/skills/qiskit/references/visualization.md +415 -0
- package/skills/qutip/SKILL.md +316 -0
- package/skills/qutip/references/advanced.md +555 -0
- package/skills/qutip/references/analysis.md +523 -0
- package/skills/qutip/references/core_concepts.md +293 -0
- package/skills/qutip/references/time_evolution.md +348 -0
- package/skills/qutip/references/visualization.md +431 -0
- package/skills/rdkit/SKILL.md +778 -0
- package/skills/rdkit/references/api_reference.md +432 -0
- package/skills/rdkit/references/descriptors_reference.md +595 -0
- package/skills/rdkit/references/smarts_patterns.md +668 -0
- package/skills/rdkit/scripts/molecular_properties.py +243 -0
- package/skills/rdkit/scripts/similarity_search.py +297 -0
- package/skills/rdkit/scripts/substructure_filter.py +386 -0
- package/skills/reactome-database/SKILL.md +276 -0
- package/skills/reactome-database/references/api_reference.md +465 -0
- package/skills/reactome-database/scripts/reactome_query.py +286 -0
- package/skills/replication/SKILL.md +14 -0
- package/skills/research-grants/SKILL.md +955 -0
- package/skills/research-grants/assets/budget_justification_template.md +453 -0
- package/skills/research-grants/assets/nih_specific_aims_template.md +166 -0
- package/skills/research-grants/assets/nsf_project_summary_template.md +92 -0
- package/skills/research-grants/references/README.md +285 -0
- package/skills/research-grants/references/broader_impacts.md +392 -0
- package/skills/research-grants/references/darpa_guidelines.md +636 -0
- package/skills/research-grants/references/doe_guidelines.md +586 -0
- package/skills/research-grants/references/nih_guidelines.md +851 -0
- package/skills/research-grants/references/nsf_guidelines.md +570 -0
- package/skills/research-grants/references/nstc_guidelines.md +733 -0
- package/skills/research-grants/references/specific_aims_guide.md +458 -0
- package/skills/research-lookup/README.md +156 -0
- package/skills/research-lookup/SKILL.md +413 -0
- package/skills/research-lookup/examples.py +174 -0
- package/skills/research-lookup/lookup.py +187 -0
- package/skills/research-lookup/research_lookup.py +566 -0
- package/skills/research-lookup/scripts/research_lookup.py +566 -0
- package/skills/rowan/SKILL.md +427 -0
- package/skills/rowan/references/api_reference.md +413 -0
- package/skills/rowan/references/molecule_handling.md +429 -0
- package/skills/rowan/references/proteins_and_organization.md +499 -0
- package/skills/rowan/references/rdkit_native.md +438 -0
- package/skills/rowan/references/results_interpretation.md +481 -0
- package/skills/rowan/references/workflow_types.md +591 -0
- package/skills/runpod-compute/SKILL.md +48 -0
- package/skills/scanpy/SKILL.md +384 -0
- package/skills/scanpy/assets/analysis_template.py +295 -0
- package/skills/scanpy/references/api_reference.md +251 -0
- package/skills/scanpy/references/plotting_guide.md +352 -0
- package/skills/scanpy/references/standard_workflow.md +206 -0
- package/skills/scanpy/scripts/qc_analysis.py +200 -0
- package/skills/scholar-evaluation/SKILL.md +298 -0
- package/skills/scholar-evaluation/references/evaluation_framework.md +663 -0
- package/skills/scholar-evaluation/scripts/calculate_scores.py +378 -0
- package/skills/scientific-brainstorming/SKILL.md +189 -0
- package/skills/scientific-brainstorming/references/brainstorming_methods.md +326 -0
- package/skills/scientific-critical-thinking/SKILL.md +570 -0
- package/skills/scientific-critical-thinking/references/common_biases.md +364 -0
- package/skills/scientific-critical-thinking/references/evidence_hierarchy.md +484 -0
- package/skills/scientific-critical-thinking/references/experimental_design.md +496 -0
- package/skills/scientific-critical-thinking/references/logical_fallacies.md +478 -0
- package/skills/scientific-critical-thinking/references/scientific_method.md +169 -0
- package/skills/scientific-critical-thinking/references/statistical_pitfalls.md +506 -0
- package/skills/scientific-schematics/SKILL.md +619 -0
- package/skills/scientific-schematics/references/QUICK_REFERENCE.md +207 -0
- package/skills/scientific-schematics/references/README.md +327 -0
- package/skills/scientific-schematics/references/best_practices.md +560 -0
- package/skills/scientific-schematics/scripts/example_usage.sh +89 -0
- package/skills/scientific-schematics/scripts/generate_schematic.py +139 -0
- package/skills/scientific-schematics/scripts/generate_schematic_ai.py +844 -0
- package/skills/scientific-slides/SKILL.md +1154 -0
- package/skills/scientific-slides/assets/beamer_template_conference.tex +407 -0
- package/skills/scientific-slides/assets/beamer_template_defense.tex +906 -0
- package/skills/scientific-slides/assets/beamer_template_seminar.tex +870 -0
- package/skills/scientific-slides/assets/powerpoint_design_guide.md +662 -0
- package/skills/scientific-slides/assets/timing_guidelines.md +597 -0
- package/skills/scientific-slides/references/beamer_guide.md +1019 -0
- package/skills/scientific-slides/references/data_visualization_slides.md +708 -0
- package/skills/scientific-slides/references/presentation_structure.md +642 -0
- package/skills/scientific-slides/references/slide_design_principles.md +849 -0
- package/skills/scientific-slides/references/talk_types_guide.md +687 -0
- package/skills/scientific-slides/references/visual_review_workflow.md +775 -0
- package/skills/scientific-slides/scripts/generate_slide_image.py +140 -0
- package/skills/scientific-slides/scripts/generate_slide_image_ai.py +763 -0
- package/skills/scientific-slides/scripts/pdf_to_images.py +221 -0
- package/skills/scientific-slides/scripts/slides_to_pdf.py +235 -0
- package/skills/scientific-slides/scripts/validate_presentation.py +403 -0
- package/skills/scientific-visualization/SKILL.md +777 -0
- package/skills/scientific-visualization/assets/color_palettes.py +197 -0
- package/skills/scientific-visualization/assets/nature.mplstyle +63 -0
- package/skills/scientific-visualization/assets/presentation.mplstyle +61 -0
- package/skills/scientific-visualization/assets/publication.mplstyle +68 -0
- package/skills/scientific-visualization/references/color_palettes.md +348 -0
- package/skills/scientific-visualization/references/journal_requirements.md +320 -0
- package/skills/scientific-visualization/references/matplotlib_examples.md +620 -0
- package/skills/scientific-visualization/references/publication_guidelines.md +205 -0
- package/skills/scientific-visualization/scripts/figure_export.py +343 -0
- package/skills/scientific-visualization/scripts/style_presets.py +416 -0
- package/skills/scientific-workflows/SKILL.md +1684 -0
- package/skills/scientific-writing/SKILL.md +718 -0
- package/skills/scientific-writing/assets/REPORT_FORMATTING_GUIDE.md +574 -0
- package/skills/scientific-writing/assets/scientific_report.sty +606 -0
- package/skills/scientific-writing/assets/scientific_report_template.tex +449 -0
- package/skills/scientific-writing/references/citation_styles.md +720 -0
- package/skills/scientific-writing/references/figures_tables.md +806 -0
- package/skills/scientific-writing/references/imrad_structure.md +686 -0
- package/skills/scientific-writing/references/professional_report_formatting.md +664 -0
- package/skills/scientific-writing/references/reporting_guidelines.md +748 -0
- package/skills/scientific-writing/references/writing_principles.md +824 -0
- package/skills/scikit-bio/SKILL.md +435 -0
- package/skills/scikit-bio/references/api_reference.md +749 -0
- package/skills/scikit-learn/SKILL.md +519 -0
- package/skills/scikit-learn/references/model_evaluation.md +592 -0
- package/skills/scikit-learn/references/pipelines_and_composition.md +612 -0
- package/skills/scikit-learn/references/preprocessing.md +606 -0
- package/skills/scikit-learn/references/quick_reference.md +433 -0
- package/skills/scikit-learn/references/supervised_learning.md +378 -0
- package/skills/scikit-learn/references/unsupervised_learning.md +505 -0
- package/skills/scikit-learn/scripts/classification_pipeline.py +257 -0
- package/skills/scikit-learn/scripts/clustering_analysis.py +386 -0
- package/skills/scikit-survival/SKILL.md +397 -0
- package/skills/scikit-survival/references/competing-risks.md +397 -0
- package/skills/scikit-survival/references/cox-models.md +182 -0
- package/skills/scikit-survival/references/data-handling.md +494 -0
- package/skills/scikit-survival/references/ensemble-models.md +327 -0
- package/skills/scikit-survival/references/evaluation-metrics.md +378 -0
- package/skills/scikit-survival/references/svm-models.md +411 -0
- package/skills/scvelo/SKILL.md +321 -0
- package/skills/scvelo/references/velocity_models.md +168 -0
- package/skills/scvelo/scripts/rna_velocity_workflow.py +232 -0
- package/skills/scvi-tools/SKILL.md +188 -0
- package/skills/scvi-tools/references/differential-expression.md +581 -0
- package/skills/scvi-tools/references/models-atac-seq.md +321 -0
- package/skills/scvi-tools/references/models-multimodal.md +367 -0
- package/skills/scvi-tools/references/models-scrna-seq.md +330 -0
- package/skills/scvi-tools/references/models-spatial.md +438 -0
- package/skills/scvi-tools/references/models-specialized.md +408 -0
- package/skills/scvi-tools/references/theoretical-foundations.md +438 -0
- package/skills/scvi-tools/references/workflows.md +546 -0
- package/skills/seaborn/SKILL.md +671 -0
- package/skills/seaborn/references/examples.md +822 -0
- package/skills/seaborn/references/function_reference.md +770 -0
- package/skills/seaborn/references/objects_interface.md +964 -0
- package/skills/semantic-scholar/SKILL.md +123 -0
- package/skills/session-log/SKILL.md +10 -0
- package/skills/session-search/SKILL.md +26 -0
- package/skills/setup/SKILL.md +216 -0
- package/skills/shap/SKILL.md +564 -0
- package/skills/shap/references/explainers.md +339 -0
- package/skills/shap/references/plots.md +507 -0
- package/skills/shap/references/theory.md +449 -0
- package/skills/shap/references/workflows.md +605 -0
- package/skills/simpy/SKILL.md +427 -0
- package/skills/simpy/references/events.md +374 -0
- package/skills/simpy/references/monitoring.md +475 -0
- package/skills/simpy/references/process-interaction.md +424 -0
- package/skills/simpy/references/real-time.md +395 -0
- package/skills/simpy/references/resources.md +275 -0
- package/skills/simpy/scripts/basic_simulation_template.py +193 -0
- package/skills/simpy/scripts/resource_monitor.py +345 -0
- package/skills/source-comparison/SKILL.md +12 -0
- package/skills/stable-baselines3/SKILL.md +297 -0
- package/skills/stable-baselines3/references/algorithms.md +333 -0
- package/skills/stable-baselines3/references/callbacks.md +556 -0
- package/skills/stable-baselines3/references/custom_environments.md +526 -0
- package/skills/stable-baselines3/references/vectorized_envs.md +568 -0
- package/skills/stable-baselines3/scripts/custom_env_template.py +314 -0
- package/skills/stable-baselines3/scripts/evaluate_agent.py +245 -0
- package/skills/stable-baselines3/scripts/train_rl_agent.py +165 -0
- package/skills/statistical-analysis/SKILL.md +630 -0
- package/skills/statistical-analysis/references/assumptions_and_diagnostics.md +369 -0
- package/skills/statistical-analysis/references/bayesian_statistics.md +661 -0
- package/skills/statistical-analysis/references/effect_sizes_and_power.md +581 -0
- package/skills/statistical-analysis/references/reporting_standards.md +469 -0
- package/skills/statistical-analysis/references/test_selection_guide.md +129 -0
- package/skills/statistical-analysis/scripts/assumption_checks.py +539 -0
- package/skills/statsmodels/SKILL.md +612 -0
- package/skills/statsmodels/references/discrete_choice.md +669 -0
- package/skills/statsmodels/references/glm.md +619 -0
- package/skills/statsmodels/references/linear_models.md +447 -0
- package/skills/statsmodels/references/stats_diagnostics.md +859 -0
- package/skills/statsmodels/references/time_series.md +716 -0
- package/skills/string-database/SKILL.md +532 -0
- package/skills/string-database/references/string_reference.md +455 -0
- package/skills/string-database/scripts/string_api.py +369 -0
- package/skills/sympy/SKILL.md +498 -0
- package/skills/sympy/references/advanced-topics.md +635 -0
- package/skills/sympy/references/code-generation-printing.md +599 -0
- package/skills/sympy/references/core-capabilities.md +348 -0
- package/skills/sympy/references/matrices-linear-algebra.md +526 -0
- package/skills/sympy/references/physics-mechanics.md +592 -0
- package/skills/tiledbvcf/SKILL.md +459 -0
- package/skills/timesfm-forecasting/SKILL.md +785 -0
- package/skills/timesfm-forecasting/examples/anomaly-detection/detect_anomalies.py +524 -0
- package/skills/timesfm-forecasting/examples/anomaly-detection/output/anomaly_detection.json +448 -0
- package/skills/timesfm-forecasting/examples/anomaly-detection/output/anomaly_detection.png +0 -0
- package/skills/timesfm-forecasting/examples/covariates-forecasting/demo_covariates.py +568 -0
- package/skills/timesfm-forecasting/examples/covariates-forecasting/output/covariates_data.png +0 -0
- package/skills/timesfm-forecasting/examples/covariates-forecasting/output/covariates_metadata.json +59 -0
- package/skills/timesfm-forecasting/examples/covariates-forecasting/output/sales_with_covariates.csv +109 -0
- package/skills/timesfm-forecasting/examples/global-temperature/README.md +178 -0
- package/skills/timesfm-forecasting/examples/global-temperature/generate_animation_data.py +147 -0
- package/skills/timesfm-forecasting/examples/global-temperature/generate_gif.py +248 -0
- package/skills/timesfm-forecasting/examples/global-temperature/generate_html.py +544 -0
- package/skills/timesfm-forecasting/examples/global-temperature/output/animation_data.json +5441 -0
- package/skills/timesfm-forecasting/examples/global-temperature/output/forecast_animation.gif +0 -0
- package/skills/timesfm-forecasting/examples/global-temperature/output/forecast_output.csv +13 -0
- package/skills/timesfm-forecasting/examples/global-temperature/output/forecast_output.json +188 -0
- package/skills/timesfm-forecasting/examples/global-temperature/output/forecast_visualization.png +0 -0
- package/skills/timesfm-forecasting/examples/global-temperature/output/interactive_forecast.html +5939 -0
- package/skills/timesfm-forecasting/examples/global-temperature/run_example.sh +53 -0
- package/skills/timesfm-forecasting/examples/global-temperature/run_forecast.py +167 -0
- package/skills/timesfm-forecasting/examples/global-temperature/temperature_anomaly.csv +37 -0
- package/skills/timesfm-forecasting/examples/global-temperature/visualize_forecast.py +123 -0
- package/skills/timesfm-forecasting/references/api_reference.md +231 -0
- package/skills/timesfm-forecasting/references/data_preparation.md +272 -0
- package/skills/timesfm-forecasting/references/system_requirements.md +201 -0
- package/skills/timesfm-forecasting/scripts/check_system.py +520 -0
- package/skills/timesfm-forecasting/scripts/forecast_csv.py +269 -0
- package/skills/torch-geometric/SKILL.md +674 -0
- package/skills/torch-geometric/references/datasets_reference.md +574 -0
- package/skills/torch-geometric/references/layers_reference.md +485 -0
- package/skills/torch-geometric/references/transforms_reference.md +679 -0
- package/skills/torch-geometric/scripts/benchmark_model.py +309 -0
- package/skills/torch-geometric/scripts/create_gnn_template.py +529 -0
- package/skills/torch-geometric/scripts/visualize_graph.py +313 -0
- package/skills/torchdrug/SKILL.md +448 -0
- package/skills/torchdrug/references/core_concepts.md +565 -0
- package/skills/torchdrug/references/datasets.md +380 -0
- package/skills/torchdrug/references/knowledge_graphs.md +320 -0
- package/skills/torchdrug/references/models_architectures.md +541 -0
- package/skills/torchdrug/references/molecular_generation.md +352 -0
- package/skills/torchdrug/references/molecular_property_prediction.md +169 -0
- package/skills/torchdrug/references/protein_modeling.md +272 -0
- package/skills/torchdrug/references/retrosynthesis.md +436 -0
- package/skills/transformers/SKILL.md +162 -0
- package/skills/transformers/references/generation.md +467 -0
- package/skills/transformers/references/models.md +361 -0
- package/skills/transformers/references/pipelines.md +335 -0
- package/skills/transformers/references/tokenizers.md +447 -0
- package/skills/transformers/references/training.md +500 -0
- package/skills/treatment-plans/SKILL.md +1580 -0
- package/skills/treatment-plans/assets/STYLING_QUICK_REFERENCE.md +185 -0
- package/skills/treatment-plans/assets/chronic_disease_management_plan.tex +665 -0
- package/skills/treatment-plans/assets/general_medical_treatment_plan.tex +547 -0
- package/skills/treatment-plans/assets/medical_treatment_plan.sty +222 -0
- package/skills/treatment-plans/assets/mental_health_treatment_plan.tex +774 -0
- package/skills/treatment-plans/assets/one_page_treatment_plan.tex +193 -0
- package/skills/treatment-plans/assets/pain_management_plan.tex +799 -0
- package/skills/treatment-plans/assets/perioperative_care_plan.tex +753 -0
- package/skills/treatment-plans/assets/quality_checklist.md +471 -0
- package/skills/treatment-plans/assets/rehabilitation_treatment_plan.tex +756 -0
- package/skills/treatment-plans/references/README.md +488 -0
- package/skills/treatment-plans/references/goal_setting_frameworks.md +411 -0
- package/skills/treatment-plans/references/intervention_guidelines.md +507 -0
- package/skills/treatment-plans/references/regulatory_compliance.md +476 -0
- package/skills/treatment-plans/references/specialty_specific_guidelines.md +655 -0
- package/skills/treatment-plans/references/treatment_plan_standards.md +485 -0
- package/skills/treatment-plans/scripts/check_completeness.py +318 -0
- package/skills/treatment-plans/scripts/generate_template.py +244 -0
- package/skills/treatment-plans/scripts/timeline_generator.py +369 -0
- package/skills/treatment-plans/scripts/validate_treatment_plan.py +367 -0
- package/skills/umap-learn/SKILL.md +477 -0
- package/skills/umap-learn/references/api_reference.md +532 -0
- package/skills/uniprot-database/SKILL.md +193 -0
- package/skills/uniprot-database/references/api_examples.md +413 -0
- package/skills/uniprot-database/references/api_fields.md +275 -0
- package/skills/uniprot-database/references/id_mapping_databases.md +285 -0
- package/skills/uniprot-database/references/query_syntax.md +256 -0
- package/skills/uniprot-database/scripts/uniprot_client.py +341 -0
- package/skills/usfiscaldata/SKILL.md +163 -0
- package/skills/usfiscaldata/references/api-basics.md +86 -0
- package/skills/usfiscaldata/references/datasets-debt.md +163 -0
- package/skills/usfiscaldata/references/datasets-fiscal.md +196 -0
- package/skills/usfiscaldata/references/datasets-interest-rates.md +182 -0
- package/skills/usfiscaldata/references/datasets-securities.md +216 -0
- package/skills/usfiscaldata/references/examples.md +258 -0
- package/skills/usfiscaldata/references/parameters.md +155 -0
- package/skills/usfiscaldata/references/response-format.md +176 -0
- package/skills/uspto-database/SKILL.md +605 -0
- package/skills/uspto-database/references/additional_apis.md +394 -0
- package/skills/uspto-database/references/patentsearch_api.md +266 -0
- package/skills/uspto-database/references/peds_api.md +212 -0
- package/skills/uspto-database/references/trademark_api.md +358 -0
- package/skills/uspto-database/scripts/patent_search.py +290 -0
- package/skills/uspto-database/scripts/peds_client.py +285 -0
- package/skills/uspto-database/scripts/trademark_client.py +311 -0
- package/skills/vaex/SKILL.md +180 -0
- package/skills/vaex/references/core_dataframes.md +367 -0
- package/skills/vaex/references/data_processing.md +555 -0
- package/skills/vaex/references/io_operations.md +703 -0
- package/skills/vaex/references/machine_learning.md +728 -0
- package/skills/vaex/references/performance.md +571 -0
- package/skills/vaex/references/visualization.md +613 -0
- package/skills/venue-templates/SKILL.md +688 -0
- package/skills/venue-templates/assets/examples/cell_summary_example.md +247 -0
- package/skills/venue-templates/assets/examples/medical_structured_abstract.md +313 -0
- package/skills/venue-templates/assets/examples/nature_abstract_examples.md +213 -0
- package/skills/venue-templates/assets/examples/neurips_introduction_example.md +245 -0
- package/skills/venue-templates/assets/grants/nih_specific_aims.tex +235 -0
- package/skills/venue-templates/assets/grants/nsf_proposal_template.tex +375 -0
- package/skills/venue-templates/assets/journals/nature_article.tex +171 -0
- package/skills/venue-templates/assets/journals/neurips_article.tex +283 -0
- package/skills/venue-templates/assets/journals/plos_one.tex +317 -0
- package/skills/venue-templates/assets/posters/beamerposter_academic.tex +311 -0
- package/skills/venue-templates/references/cell_press_style.md +483 -0
- package/skills/venue-templates/references/conferences_formatting.md +564 -0
- package/skills/venue-templates/references/cs_conference_style.md +463 -0
- package/skills/venue-templates/references/grants_requirements.md +787 -0
- package/skills/venue-templates/references/journals_formatting.md +486 -0
- package/skills/venue-templates/references/medical_journal_styles.md +535 -0
- package/skills/venue-templates/references/ml_conference_style.md +556 -0
- package/skills/venue-templates/references/nature_science_style.md +405 -0
- package/skills/venue-templates/references/posters_guidelines.md +628 -0
- package/skills/venue-templates/references/reviewer_expectations.md +417 -0
- package/skills/venue-templates/references/venue_writing_styles.md +321 -0
- package/skills/venue-templates/scripts/customize_template.py +206 -0
- package/skills/venue-templates/scripts/query_template.py +260 -0
- package/skills/venue-templates/scripts/validate_format.py +255 -0
- package/skills/watch/SKILL.md +12 -0
- package/skills/what-if-oracle/SKILL.md +168 -0
- package/skills/what-if-oracle/references/scenario-templates.md +137 -0
- package/skills/writing/SKILL.md +414 -0
- package/skills/xlsx/LICENSE.txt +30 -0
- package/skills/xlsx/SKILL.md +292 -0
- package/skills/xlsx/scripts/office/helpers/__init__.py +0 -0
- package/skills/xlsx/scripts/office/helpers/merge_runs.py +199 -0
- package/skills/xlsx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/skills/xlsx/scripts/office/pack.py +159 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/skills/xlsx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/skills/xlsx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/skills/xlsx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/skills/xlsx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/skills/xlsx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/skills/xlsx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/skills/xlsx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/skills/xlsx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/skills/xlsx/scripts/office/soffice.py +183 -0
- package/skills/xlsx/scripts/office/unpack.py +132 -0
- package/skills/xlsx/scripts/office/validate.py +111 -0
- package/skills/xlsx/scripts/office/validators/__init__.py +15 -0
- package/skills/xlsx/scripts/office/validators/base.py +847 -0
- package/skills/xlsx/scripts/office/validators/docx.py +446 -0
- package/skills/xlsx/scripts/office/validators/pptx.py +275 -0
- package/skills/xlsx/scripts/office/validators/redlining.py +247 -0
- package/skills/xlsx/scripts/recalc.py +184 -0
- package/skills/zarr-python/SKILL.md +777 -0
- package/skills/zarr-python/references/api_reference.md +515 -0
- package/skills/zinc-database/SKILL.md +402 -0
- package/skills/zinc-database/references/api_reference.md +692 -0
|
@@ -0,0 +1,843 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: imaging-data-commons
|
|
3
|
+
description: Query and download public cancer imaging data from NCI Imaging Data Commons using idc-index. Use for accessing large-scale radiology (CT, MR, PET) and pathology datasets for AI training or research. No authentication required. Query by metadata, visualize in browser, check licenses.
|
|
4
|
+
license: This skill is provided under the MIT License. IDC data itself has individual licensing (mostly CC-BY, some CC-NC) that must be respected when using the data.
|
|
5
|
+
metadata:
|
|
6
|
+
version: 1.4.0
|
|
7
|
+
skill-author: Andrey Fedorov, @fedorov
|
|
8
|
+
idc-index: "0.11.10"
|
|
9
|
+
idc-data-version: "v23"
|
|
10
|
+
repository: https://github.com/ImagingDataCommons/idc-claude-skill
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Imaging Data Commons
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
Use the `idc-index` Python package to query and download public cancer imaging data from the National Cancer Institute Imaging Data Commons (IDC). No authentication required for data access.
|
|
18
|
+
|
|
19
|
+
**Current IDC Data Version: v23** (always verify with `IDCClient().get_idc_version()`)
|
|
20
|
+
|
|
21
|
+
**Primary tool:** `idc-index` ([GitHub](https://github.com/imagingdatacommons/idc-index))
|
|
22
|
+
|
|
23
|
+
**CRITICAL - Check package version and upgrade if needed (run this FIRST):**
|
|
24
|
+
|
|
25
|
+
```python
|
|
26
|
+
import idc_index
|
|
27
|
+
|
|
28
|
+
REQUIRED_VERSION = "0.11.10" # Must match metadata.idc-index in this file
|
|
29
|
+
installed = idc_index.__version__
|
|
30
|
+
|
|
31
|
+
if installed < REQUIRED_VERSION:
|
|
32
|
+
print(f"Upgrading idc-index from {installed} to {REQUIRED_VERSION}...")
|
|
33
|
+
import subprocess
|
|
34
|
+
subprocess.run(["pip3", "install", "--upgrade", "--break-system-packages", "idc-index"], check=True)
|
|
35
|
+
print("Upgrade complete. Restart Python to use new version.")
|
|
36
|
+
else:
|
|
37
|
+
print(f"idc-index {installed} meets requirement ({REQUIRED_VERSION})")
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
**Verify IDC data version and check current data scale:**
|
|
41
|
+
|
|
42
|
+
```python
|
|
43
|
+
from idc_index import IDCClient
|
|
44
|
+
client = IDCClient()
|
|
45
|
+
|
|
46
|
+
# Verify IDC data version (should be "v23")
|
|
47
|
+
print(f"IDC data version: {client.get_idc_version()}")
|
|
48
|
+
|
|
49
|
+
# Get collection count and total series
|
|
50
|
+
stats = client.sql_query("""
|
|
51
|
+
SELECT
|
|
52
|
+
COUNT(DISTINCT collection_id) as collections,
|
|
53
|
+
COUNT(DISTINCT analysis_result_id) as analysis_results,
|
|
54
|
+
COUNT(DISTINCT PatientID) as patients,
|
|
55
|
+
COUNT(DISTINCT StudyInstanceUID) as studies,
|
|
56
|
+
COUNT(DISTINCT SeriesInstanceUID) as series,
|
|
57
|
+
SUM(instanceCount) as instances,
|
|
58
|
+
SUM(series_size_MB)/1000000 as size_TB
|
|
59
|
+
FROM index
|
|
60
|
+
""")
|
|
61
|
+
print(stats)
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**Core workflow:**
|
|
65
|
+
1. Query metadata → `client.sql_query()`
|
|
66
|
+
2. Download DICOM files → `client.download_from_selection()`
|
|
67
|
+
3. Visualize in browser → `client.get_viewer_URL(seriesInstanceUID=...)`
|
|
68
|
+
|
|
69
|
+
## When to Use This Skill
|
|
70
|
+
|
|
71
|
+
- Finding publicly available radiology (CT, MR, PET) or pathology (slide microscopy) images
|
|
72
|
+
- Selecting image subsets by cancer type, modality, anatomical site, or other metadata
|
|
73
|
+
- Downloading DICOM data from IDC
|
|
74
|
+
- Checking data licenses before use in research or commercial applications
|
|
75
|
+
- Visualizing medical images in a browser without local DICOM viewer software
|
|
76
|
+
|
|
77
|
+
## Quick Navigation
|
|
78
|
+
|
|
79
|
+
**Core Sections (inline):**
|
|
80
|
+
- IDC Data Model - Collection and analysis result hierarchy
|
|
81
|
+
- Index Tables - Available tables and joining patterns
|
|
82
|
+
- Installation - Package setup and version verification
|
|
83
|
+
- Core Capabilities - Essential API patterns (query, download, visualize, license, citations, batch)
|
|
84
|
+
- Best Practices - Usage guidelines
|
|
85
|
+
- Troubleshooting - Common issues and solutions
|
|
86
|
+
|
|
87
|
+
**Reference Guides (load on demand):**
|
|
88
|
+
|
|
89
|
+
| Guide | When to Load |
|
|
90
|
+
|-------|--------------|
|
|
91
|
+
| `index_tables_guide.md` | Complex JOINs, schema discovery, DataFrame access |
|
|
92
|
+
| `use_cases.md` | End-to-end workflow examples (training datasets, batch downloads) |
|
|
93
|
+
| `sql_patterns.md` | Quick SQL patterns for filter discovery, annotations, size estimation |
|
|
94
|
+
| `clinical_data_guide.md` | Clinical/tabular data, imaging+clinical joins, value mapping |
|
|
95
|
+
| `cloud_storage_guide.md` | Direct S3/GCS access, versioning, UUID mapping |
|
|
96
|
+
| `dicomweb_guide.md` | DICOMweb endpoints, PACS integration |
|
|
97
|
+
| `digital_pathology_guide.md` | Slide microscopy (SM), annotations (ANN), pathology workflows |
|
|
98
|
+
| `bigquery_guide.md` | Full DICOM metadata, private elements (requires GCP) |
|
|
99
|
+
| `cli_guide.md` | Command-line tools (`idc download`, manifest files) |
|
|
100
|
+
|
|
101
|
+
## IDC Data Model
|
|
102
|
+
|
|
103
|
+
IDC adds two grouping levels above the standard DICOM hierarchy (Patient → Study → Series → Instance):
|
|
104
|
+
|
|
105
|
+
- **collection_id**: Groups patients by disease, modality, or research focus (e.g., `tcga_luad`, `nlst`). A patient belongs to exactly one collection.
|
|
106
|
+
- **analysis_result_id**: Identifies derived objects (segmentations, annotations, radiomics features) across one or more original collections.
|
|
107
|
+
|
|
108
|
+
Use `collection_id` to find original imaging data, may include annotations deposited along with the images; use `analysis_result_id` to find AI-generated or expert annotations.
|
|
109
|
+
|
|
110
|
+
**Key identifiers for queries:**
|
|
111
|
+
| Identifier | Scope | Use for |
|
|
112
|
+
|------------|-------|---------|
|
|
113
|
+
| `collection_id` | Dataset grouping | Filtering by project/study |
|
|
114
|
+
| `PatientID` | Patient | Grouping images by patient |
|
|
115
|
+
| `StudyInstanceUID` | DICOM study | Grouping of related series, visualization |
|
|
116
|
+
| `SeriesInstanceUID` | DICOM series | Grouping of related series, visualization |
|
|
117
|
+
|
|
118
|
+
## Index Tables
|
|
119
|
+
|
|
120
|
+
The `idc-index` package provides multiple metadata index tables, accessible via SQL or as pandas DataFrames.
|
|
121
|
+
|
|
122
|
+
**Complete index table documentation:** Use https://idc-index.readthedocs.io/en/latest/indices_reference.html for quick check of available tables and columns without executing any code.
|
|
123
|
+
|
|
124
|
+
**Important:** Use `client.indices_overview` to get current table descriptions and column schemas. This is the authoritative source for available columns and their types — always query it when writing SQL or exploring data structure.
|
|
125
|
+
|
|
126
|
+
### Available Tables
|
|
127
|
+
|
|
128
|
+
| Table | Row Granularity | Loaded | Description |
|
|
129
|
+
|-------|-----------------|--------|-------------|
|
|
130
|
+
| `index` | 1 row = 1 DICOM series | Auto | Primary metadata for all current IDC data |
|
|
131
|
+
| `prior_versions_index` | 1 row = 1 DICOM series | Auto | Series from previous IDC releases; for downloading deprecated data |
|
|
132
|
+
| `collections_index` | 1 row = 1 collection | fetch_index() | Collection-level metadata and descriptions |
|
|
133
|
+
| `analysis_results_index` | 1 row = 1 analysis result collection | fetch_index() | Metadata about derived datasets (annotations, segmentations) |
|
|
134
|
+
| `clinical_index` | 1 row = 1 clinical data column | fetch_index() | Dictionary mapping clinical table columns to collections |
|
|
135
|
+
| `sm_index` | 1 row = 1 slide microscopy series | fetch_index() | Slide Microscopy (pathology) series metadata |
|
|
136
|
+
| `sm_instance_index` | 1 row = 1 slide microscopy instance | fetch_index() | Instance-level (SOPInstanceUID) metadata for slide microscopy |
|
|
137
|
+
| `seg_index` | 1 row = 1 DICOM Segmentation series | fetch_index() | Segmentation metadata: algorithm, segment count, reference to source image series |
|
|
138
|
+
| `ann_index` | 1 row = 1 DICOM ANN series | fetch_index() | Microscopy Bulk Simple Annotations series metadata; references annotated image series |
|
|
139
|
+
| `ann_group_index` | 1 row = 1 annotation group | fetch_index() | Detailed annotation group metadata: graphic type, annotation count, property codes, algorithm |
|
|
140
|
+
| `contrast_index` | 1 row = 1 series with contrast info | fetch_index() | Contrast agent metadata: agent name, ingredient, administration route (CT, MR, PT, XA, RF) |
|
|
141
|
+
|
|
142
|
+
**Auto** = loaded automatically when `IDCClient()` is instantiated
|
|
143
|
+
**fetch_index()** = requires `client.fetch_index("table_name")` to load
|
|
144
|
+
|
|
145
|
+
### Joining Tables
|
|
146
|
+
|
|
147
|
+
**Key columns are not explicitly labeled, the following is a subset that can be used in joins.**
|
|
148
|
+
|
|
149
|
+
| Join Column | Tables | Use Case |
|
|
150
|
+
|-------------|--------|----------|
|
|
151
|
+
| `collection_id` | index, prior_versions_index, collections_index, clinical_index | Link series to collection metadata or clinical data |
|
|
152
|
+
| `SeriesInstanceUID` | index, prior_versions_index, sm_index, sm_instance_index | Link series across tables; connect to slide microscopy details |
|
|
153
|
+
| `StudyInstanceUID` | index, prior_versions_index | Link studies across current and historical data |
|
|
154
|
+
| `PatientID` | index, prior_versions_index | Link patients across current and historical data |
|
|
155
|
+
| `analysis_result_id` | index, analysis_results_index | Link series to analysis result metadata (annotations, segmentations) |
|
|
156
|
+
| `source_DOI` | index, analysis_results_index | Link by publication DOI |
|
|
157
|
+
| `crdc_series_uuid` | index, prior_versions_index | Link by CRDC unique identifier |
|
|
158
|
+
| `Modality` | index, prior_versions_index | Filter by imaging modality |
|
|
159
|
+
| `SeriesInstanceUID` | index, seg_index, ann_index, ann_group_index, contrast_index | Link segmentation/annotation/contrast series to its index metadata |
|
|
160
|
+
| `segmented_SeriesInstanceUID` | seg_index → index | Link segmentation to its source image series (join seg_index.segmented_SeriesInstanceUID = index.SeriesInstanceUID) |
|
|
161
|
+
| `referenced_SeriesInstanceUID` | ann_index → index | Link annotation to its source image series (join ann_index.referenced_SeriesInstanceUID = index.SeriesInstanceUID) |
|
|
162
|
+
|
|
163
|
+
**Note:** `Subjects`, `Updated`, and `Description` appear in multiple tables but have different meanings (counts vs identifiers, different update contexts).
|
|
164
|
+
|
|
165
|
+
For detailed join examples, schema discovery patterns, key columns reference, and DataFrame access, see `references/index_tables_guide.md`.
|
|
166
|
+
|
|
167
|
+
### Clinical Data Access
|
|
168
|
+
|
|
169
|
+
```python
|
|
170
|
+
# Fetch clinical index (also downloads clinical data tables)
|
|
171
|
+
client.fetch_index("clinical_index")
|
|
172
|
+
|
|
173
|
+
# Query clinical index to find available tables and their columns
|
|
174
|
+
tables = client.sql_query("SELECT DISTINCT table_name, column_label FROM clinical_index")
|
|
175
|
+
|
|
176
|
+
# Load a specific clinical table as DataFrame
|
|
177
|
+
clinical_df = client.get_clinical_table("table_name")
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
See `references/clinical_data_guide.md` for detailed workflows including value mapping patterns and joining clinical data with imaging.
|
|
181
|
+
|
|
182
|
+
## Data Access Options
|
|
183
|
+
|
|
184
|
+
| Method | Auth Required | Best For |
|
|
185
|
+
|--------|---------------|----------|
|
|
186
|
+
| `idc-index` | No | Key queries and downloads (recommended) |
|
|
187
|
+
| IDC Portal | No | Interactive exploration, manual selection, browser-based download |
|
|
188
|
+
| BigQuery | Yes (GCP account) | Complex queries, full DICOM metadata |
|
|
189
|
+
| DICOMweb proxy | No | Tool integration via DICOMweb API |
|
|
190
|
+
| Cloud storage (S3/GCS) | No | Direct file access, bulk downloads, custom pipelines |
|
|
191
|
+
|
|
192
|
+
**Cloud storage organization**
|
|
193
|
+
|
|
194
|
+
IDC maintains all DICOM files in public cloud storage buckets mirrored between AWS S3 and Google Cloud Storage. Files are organized by CRDC UUIDs (not DICOM UIDs) to support versioning.
|
|
195
|
+
|
|
196
|
+
| Bucket (AWS / GCS) | License | Content |
|
|
197
|
+
|--------------------|---------|---------|
|
|
198
|
+
| `idc-open-data` / `idc-open-data` | No commercial restriction | >90% of IDC data |
|
|
199
|
+
| `idc-open-data-two` / `idc-open-idc1` | No commercial restriction | Collections with potential head scans |
|
|
200
|
+
| `idc-open-data-cr` / `idc-open-cr` | Commercial use restricted (CC BY-NC) | ~4% of data |
|
|
201
|
+
|
|
202
|
+
Files are stored as `<crdc_series_uuid>/<crdc_instance_uuid>.dcm`. Access is free (no egress fees) via AWS CLI, gsutil, or s5cmd with anonymous access. Use `series_aws_url` column from the index for S3 URLs; GCS uses the same path structure.
|
|
203
|
+
|
|
204
|
+
See `references/cloud_storage_guide.md` for bucket details, access commands, UUID mapping, and versioning.
|
|
205
|
+
|
|
206
|
+
**DICOMweb access**
|
|
207
|
+
|
|
208
|
+
IDC data is available via DICOMweb interface (Google Cloud Healthcare API implementation) for integration with PACS systems and DICOMweb-compatible tools.
|
|
209
|
+
|
|
210
|
+
| Endpoint | Auth | Use Case |
|
|
211
|
+
|----------|------|----------|
|
|
212
|
+
| Public proxy | No | Testing, moderate queries, daily quota |
|
|
213
|
+
| Google Healthcare | Yes (GCP) | Production use, higher quotas |
|
|
214
|
+
|
|
215
|
+
See `references/dicomweb_guide.md` for endpoint URLs, code examples, supported operations, and implementation details.
|
|
216
|
+
|
|
217
|
+
## Installation and Setup
|
|
218
|
+
|
|
219
|
+
**Required (for basic access):**
|
|
220
|
+
```bash
|
|
221
|
+
pip install --upgrade idc-index
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
**Important:** New IDC data release will always trigger a new version of `idc-index`. Always use `--upgrade` flag while installing, unless an older version is needed for reproducibility.
|
|
225
|
+
|
|
226
|
+
**IMPORTANT:** IDC data version v23 is current. Always verify your version:
|
|
227
|
+
```python
|
|
228
|
+
print(client.get_idc_version()) # Should return "v23"
|
|
229
|
+
```
|
|
230
|
+
If you see an older version, upgrade with: `pip install --upgrade idc-index`
|
|
231
|
+
|
|
232
|
+
**Tested with:** idc-index 0.11.10 (IDC data version v23)
|
|
233
|
+
|
|
234
|
+
**Optional (for data analysis):**
|
|
235
|
+
```bash
|
|
236
|
+
pip install pandas numpy pydicom
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
## Core Capabilities
|
|
240
|
+
|
|
241
|
+
### 1. Data Discovery and Exploration
|
|
242
|
+
|
|
243
|
+
Discover what imaging collections and data are available in IDC:
|
|
244
|
+
|
|
245
|
+
```python
|
|
246
|
+
from idc_index import IDCClient
|
|
247
|
+
|
|
248
|
+
client = IDCClient()
|
|
249
|
+
|
|
250
|
+
# Get summary statistics from primary index
|
|
251
|
+
query = """
|
|
252
|
+
SELECT
|
|
253
|
+
collection_id,
|
|
254
|
+
COUNT(DISTINCT PatientID) as patients,
|
|
255
|
+
COUNT(DISTINCT SeriesInstanceUID) as series,
|
|
256
|
+
SUM(series_size_MB) as size_mb
|
|
257
|
+
FROM index
|
|
258
|
+
GROUP BY collection_id
|
|
259
|
+
ORDER BY patients DESC
|
|
260
|
+
"""
|
|
261
|
+
collections_summary = client.sql_query(query)
|
|
262
|
+
|
|
263
|
+
# For richer collection metadata, use collections_index
|
|
264
|
+
client.fetch_index("collections_index")
|
|
265
|
+
collections_info = client.sql_query("""
|
|
266
|
+
SELECT collection_id, CancerTypes, TumorLocations, Species, Subjects, SupportingData
|
|
267
|
+
FROM collections_index
|
|
268
|
+
""")
|
|
269
|
+
|
|
270
|
+
# For analysis results (annotations, segmentations), use analysis_results_index
|
|
271
|
+
client.fetch_index("analysis_results_index")
|
|
272
|
+
analysis_info = client.sql_query("""
|
|
273
|
+
SELECT analysis_result_id, analysis_result_title, Subjects, Collections, Modalities
|
|
274
|
+
FROM analysis_results_index
|
|
275
|
+
""")
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
**`collections_index`** provides curated metadata per collection: cancer types, tumor locations, species, subject counts, and supporting data types — without needing to aggregate from the primary index.
|
|
279
|
+
|
|
280
|
+
**`analysis_results_index`** lists derived datasets (AI segmentations, expert annotations, radiomics features) with their source collections and modalities.
|
|
281
|
+
|
|
282
|
+
### 2. Querying Metadata with SQL
|
|
283
|
+
|
|
284
|
+
Query the IDC mini-index using SQL to find specific datasets.
|
|
285
|
+
|
|
286
|
+
**First, explore available values for filter columns:**
|
|
287
|
+
```python
|
|
288
|
+
from idc_index import IDCClient
|
|
289
|
+
|
|
290
|
+
client = IDCClient()
|
|
291
|
+
|
|
292
|
+
# Check what Modality values exist
|
|
293
|
+
modalities = client.sql_query("""
|
|
294
|
+
SELECT DISTINCT Modality, COUNT(*) as series_count
|
|
295
|
+
FROM index
|
|
296
|
+
GROUP BY Modality
|
|
297
|
+
ORDER BY series_count DESC
|
|
298
|
+
""")
|
|
299
|
+
print(modalities)
|
|
300
|
+
|
|
301
|
+
# Check what BodyPartExamined values exist for MR modality
|
|
302
|
+
body_parts = client.sql_query("""
|
|
303
|
+
SELECT DISTINCT BodyPartExamined, COUNT(*) as series_count
|
|
304
|
+
FROM index
|
|
305
|
+
WHERE Modality = 'MR' AND BodyPartExamined IS NOT NULL
|
|
306
|
+
GROUP BY BodyPartExamined
|
|
307
|
+
ORDER BY series_count DESC
|
|
308
|
+
LIMIT 20
|
|
309
|
+
""")
|
|
310
|
+
print(body_parts)
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
**Then query with validated filter values:**
|
|
314
|
+
```python
|
|
315
|
+
# Find breast MRI scans (use actual values from exploration above)
|
|
316
|
+
results = client.sql_query("""
|
|
317
|
+
SELECT
|
|
318
|
+
collection_id,
|
|
319
|
+
PatientID,
|
|
320
|
+
SeriesInstanceUID,
|
|
321
|
+
Modality,
|
|
322
|
+
SeriesDescription,
|
|
323
|
+
license_short_name
|
|
324
|
+
FROM index
|
|
325
|
+
WHERE Modality = 'MR'
|
|
326
|
+
AND BodyPartExamined = 'BREAST'
|
|
327
|
+
LIMIT 20
|
|
328
|
+
""")
|
|
329
|
+
|
|
330
|
+
# Access results as pandas DataFrame
|
|
331
|
+
for idx, row in results.iterrows():
|
|
332
|
+
print(f"Patient: {row['PatientID']}, Series: {row['SeriesInstanceUID']}")
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
**To filter by cancer type, join with `collections_index`:**
|
|
336
|
+
```python
|
|
337
|
+
client.fetch_index("collections_index")
|
|
338
|
+
results = client.sql_query("""
|
|
339
|
+
SELECT i.collection_id, i.PatientID, i.SeriesInstanceUID, i.Modality
|
|
340
|
+
FROM index i
|
|
341
|
+
JOIN collections_index c ON i.collection_id = c.collection_id
|
|
342
|
+
WHERE c.CancerTypes LIKE '%Breast%'
|
|
343
|
+
AND i.Modality = 'MR'
|
|
344
|
+
LIMIT 20
|
|
345
|
+
""")
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
**Available metadata fields** (use `client.indices_overview` for complete list):
|
|
349
|
+
- Identifiers: collection_id, PatientID, StudyInstanceUID, SeriesInstanceUID
|
|
350
|
+
- Imaging: Modality, BodyPartExamined, Manufacturer, ManufacturerModelName
|
|
351
|
+
- Clinical: PatientAge, PatientSex, StudyDate
|
|
352
|
+
- Descriptions: StudyDescription, SeriesDescription
|
|
353
|
+
- Licensing: license_short_name
|
|
354
|
+
|
|
355
|
+
**Note:** Cancer type is in `collections_index.CancerTypes`, not in the primary `index` table.
|
|
356
|
+
|
|
357
|
+
### 3. Downloading DICOM Files
|
|
358
|
+
|
|
359
|
+
Download imaging data efficiently from IDC's cloud storage:
|
|
360
|
+
|
|
361
|
+
**Download entire collection:**
|
|
362
|
+
```python
|
|
363
|
+
from idc_index import IDCClient
|
|
364
|
+
|
|
365
|
+
client = IDCClient()
|
|
366
|
+
|
|
367
|
+
# Download small collection (RIDER Pilot ~1GB)
|
|
368
|
+
client.download_from_selection(
|
|
369
|
+
collection_id="rider_pilot",
|
|
370
|
+
downloadDir="./data/rider"
|
|
371
|
+
)
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
**Download specific series:**
|
|
375
|
+
```python
|
|
376
|
+
# First, query for series UIDs
|
|
377
|
+
series_df = client.sql_query("""
|
|
378
|
+
SELECT SeriesInstanceUID
|
|
379
|
+
FROM index
|
|
380
|
+
WHERE Modality = 'CT'
|
|
381
|
+
AND BodyPartExamined = 'CHEST'
|
|
382
|
+
AND collection_id = 'nlst'
|
|
383
|
+
LIMIT 5
|
|
384
|
+
""")
|
|
385
|
+
|
|
386
|
+
# Download only those series
|
|
387
|
+
client.download_from_selection(
|
|
388
|
+
seriesInstanceUID=list(series_df['SeriesInstanceUID'].values),
|
|
389
|
+
downloadDir="./data/lung_ct"
|
|
390
|
+
)
|
|
391
|
+
```
|
|
392
|
+
|
|
393
|
+
**Custom directory structure:**
|
|
394
|
+
|
|
395
|
+
Default `dirTemplate`: `%collection_id/%PatientID/%StudyInstanceUID/%Modality_%SeriesInstanceUID`
|
|
396
|
+
|
|
397
|
+
```python
|
|
398
|
+
# Simplified hierarchy (omit StudyInstanceUID level)
|
|
399
|
+
client.download_from_selection(
|
|
400
|
+
collection_id="tcga_luad",
|
|
401
|
+
downloadDir="./data",
|
|
402
|
+
dirTemplate="%collection_id/%PatientID/%Modality"
|
|
403
|
+
)
|
|
404
|
+
# Results in: ./data/tcga_luad/TCGA-05-4244/CT/
|
|
405
|
+
|
|
406
|
+
# Flat structure (all files in one directory)
|
|
407
|
+
client.download_from_selection(
|
|
408
|
+
seriesInstanceUID=list(series_df['SeriesInstanceUID'].values),
|
|
409
|
+
downloadDir="./data/flat",
|
|
410
|
+
dirTemplate=""
|
|
411
|
+
)
|
|
412
|
+
# Results in: ./data/flat/*.dcm
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
**Downloaded file names:**
|
|
416
|
+
|
|
417
|
+
Individual DICOM files are named using their CRDC instance UUID: `<crdc_instance_uuid>.dcm` (e.g., `0d73f84e-70ae-4eeb-96a0-1c613b5d9229.dcm`). This UUID-based naming:
|
|
418
|
+
- Enables version tracking (UUIDs change when file content changes)
|
|
419
|
+
- Matches cloud storage organization (`s3://idc-open-data/<crdc_series_uuid>/<crdc_instance_uuid>.dcm`)
|
|
420
|
+
- Differs from DICOM UIDs (SOPInstanceUID) which are preserved inside the file metadata
|
|
421
|
+
|
|
422
|
+
To identify files, use the `crdc_instance_uuid` column in queries or read DICOM metadata (SOPInstanceUID) from the files.
|
|
423
|
+
|
|
424
|
+
### Command-Line Download
|
|
425
|
+
|
|
426
|
+
The `idc download` command provides command-line access to download functionality without writing Python code. Available after installing `idc-index`.
|
|
427
|
+
|
|
428
|
+
**Auto-detects input type:** manifest file path, or identifiers (collection_id, PatientID, StudyInstanceUID, SeriesInstanceUID, crdc_series_uuid).
|
|
429
|
+
|
|
430
|
+
```bash
|
|
431
|
+
# Download entire collection
|
|
432
|
+
idc download rider_pilot --download-dir ./data
|
|
433
|
+
|
|
434
|
+
# Download specific series by UID
|
|
435
|
+
idc download "1.3.6.1.4.1.9328.50.1.69736" --download-dir ./data
|
|
436
|
+
|
|
437
|
+
# Download multiple items (comma-separated)
|
|
438
|
+
idc download "tcga_luad,tcga_lusc" --download-dir ./data
|
|
439
|
+
|
|
440
|
+
# Download from manifest file (auto-detected)
|
|
441
|
+
idc download manifest.txt --download-dir ./data
|
|
442
|
+
```
|
|
443
|
+
|
|
444
|
+
**Options:**
|
|
445
|
+
|
|
446
|
+
| Option | Description |
|
|
447
|
+
|--------|-------------|
|
|
448
|
+
| `--download-dir` | Output directory (default: current directory) |
|
|
449
|
+
| `--dir-template` | Directory hierarchy template (default: `%collection_id/%PatientID/%StudyInstanceUID/%Modality_%SeriesInstanceUID`) |
|
|
450
|
+
| `--log-level` | Verbosity: debug, info, warning, error, critical |
|
|
451
|
+
|
|
452
|
+
**Manifest files:**
|
|
453
|
+
|
|
454
|
+
Manifest files contain S3 URLs (one per line) and can be:
|
|
455
|
+
- Exported from the IDC Portal after cohort selection
|
|
456
|
+
- Shared by collaborators for reproducible data access
|
|
457
|
+
- Generated programmatically from query results
|
|
458
|
+
|
|
459
|
+
Format (one S3 URL per line):
|
|
460
|
+
```
|
|
461
|
+
s3://idc-open-data/cb09464a-c5cc-4428-9339-d7fa87cfe837/*
|
|
462
|
+
s3://idc-open-data/88f3990d-bdef-49cd-9b2b-4787767240f2/*
|
|
463
|
+
```
|
|
464
|
+
|
|
465
|
+
**Example: Generate manifest from Python query:**
|
|
466
|
+
|
|
467
|
+
```python
|
|
468
|
+
from idc_index import IDCClient
|
|
469
|
+
|
|
470
|
+
client = IDCClient()
|
|
471
|
+
|
|
472
|
+
# Query for series URLs
|
|
473
|
+
results = client.sql_query("""
|
|
474
|
+
SELECT series_aws_url
|
|
475
|
+
FROM index
|
|
476
|
+
WHERE collection_id = 'rider_pilot' AND Modality = 'CT'
|
|
477
|
+
""")
|
|
478
|
+
|
|
479
|
+
# Save as manifest file
|
|
480
|
+
with open('ct_manifest.txt', 'w') as f:
|
|
481
|
+
for url in results['series_aws_url']:
|
|
482
|
+
f.write(url + '\n')
|
|
483
|
+
```
|
|
484
|
+
|
|
485
|
+
Then download:
|
|
486
|
+
```bash
|
|
487
|
+
idc download ct_manifest.txt --download-dir ./ct_data
|
|
488
|
+
```
|
|
489
|
+
|
|
490
|
+
### 4. Visualizing IDC Images
|
|
491
|
+
|
|
492
|
+
View DICOM data in browser without downloading:
|
|
493
|
+
|
|
494
|
+
```python
|
|
495
|
+
from idc_index import IDCClient
|
|
496
|
+
import webbrowser
|
|
497
|
+
|
|
498
|
+
client = IDCClient()
|
|
499
|
+
|
|
500
|
+
# First query to get valid UIDs
|
|
501
|
+
results = client.sql_query("""
|
|
502
|
+
SELECT SeriesInstanceUID, StudyInstanceUID
|
|
503
|
+
FROM index
|
|
504
|
+
WHERE collection_id = 'rider_pilot' AND Modality = 'CT'
|
|
505
|
+
LIMIT 1
|
|
506
|
+
""")
|
|
507
|
+
|
|
508
|
+
# View single series
|
|
509
|
+
viewer_url = client.get_viewer_URL(seriesInstanceUID=results.iloc[0]['SeriesInstanceUID'])
|
|
510
|
+
webbrowser.open(viewer_url)
|
|
511
|
+
|
|
512
|
+
# View all series in a study (useful for multi-series exams like MRI protocols)
|
|
513
|
+
viewer_url = client.get_viewer_URL(studyInstanceUID=results.iloc[0]['StudyInstanceUID'])
|
|
514
|
+
webbrowser.open(viewer_url)
|
|
515
|
+
```
|
|
516
|
+
|
|
517
|
+
The method automatically selects OHIF v3 for radiology or SLIM for slide microscopy. Viewing by study is useful when a DICOM Study contains multiple Series (e.g., T1, T2, DWI sequences from a single MRI session).
|
|
518
|
+
|
|
519
|
+
### 5. Understanding and Checking Licenses
|
|
520
|
+
|
|
521
|
+
Check data licensing before use (critical for commercial applications):
|
|
522
|
+
|
|
523
|
+
```python
|
|
524
|
+
from idc_index import IDCClient
|
|
525
|
+
|
|
526
|
+
client = IDCClient()
|
|
527
|
+
|
|
528
|
+
# Check licenses for all collections
|
|
529
|
+
query = """
|
|
530
|
+
SELECT DISTINCT
|
|
531
|
+
collection_id,
|
|
532
|
+
license_short_name,
|
|
533
|
+
COUNT(DISTINCT SeriesInstanceUID) as series_count
|
|
534
|
+
FROM index
|
|
535
|
+
GROUP BY collection_id, license_short_name
|
|
536
|
+
ORDER BY collection_id
|
|
537
|
+
"""
|
|
538
|
+
|
|
539
|
+
licenses = client.sql_query(query)
|
|
540
|
+
print(licenses)
|
|
541
|
+
```
|
|
542
|
+
|
|
543
|
+
**License types in IDC:**
|
|
544
|
+
- **CC BY 4.0** / **CC BY 3.0** (~97% of data) - Allows commercial use with attribution
|
|
545
|
+
- **CC BY-NC 4.0** / **CC BY-NC 3.0** (~3% of data) - Non-commercial use only
|
|
546
|
+
- **Custom licenses** (rare) - Some collections have specific terms (e.g., NLM Terms and Conditions)
|
|
547
|
+
|
|
548
|
+
**Important:** Always check the license before using IDC data in publications or commercial applications. Each DICOM file is tagged with its specific license in metadata.
|
|
549
|
+
|
|
550
|
+
### Generating Citations for Attribution
|
|
551
|
+
|
|
552
|
+
The `source_DOI` column contains DOIs linking to publications describing how the data was generated. To satisfy attribution requirements, use `citations_from_selection()` to generate properly formatted citations:
|
|
553
|
+
|
|
554
|
+
```python
|
|
555
|
+
from idc_index import IDCClient
|
|
556
|
+
|
|
557
|
+
client = IDCClient()
|
|
558
|
+
|
|
559
|
+
# Get citations for a collection (APA format by default)
|
|
560
|
+
citations = client.citations_from_selection(collection_id="rider_pilot")
|
|
561
|
+
for citation in citations:
|
|
562
|
+
print(citation)
|
|
563
|
+
|
|
564
|
+
# Get citations for specific series
|
|
565
|
+
results = client.sql_query("""
|
|
566
|
+
SELECT SeriesInstanceUID FROM index
|
|
567
|
+
WHERE collection_id = 'tcga_luad' LIMIT 5
|
|
568
|
+
""")
|
|
569
|
+
citations = client.citations_from_selection(
|
|
570
|
+
seriesInstanceUID=list(results['SeriesInstanceUID'].values)
|
|
571
|
+
)
|
|
572
|
+
|
|
573
|
+
# Alternative format: BibTeX (for LaTeX documents)
|
|
574
|
+
bibtex_citations = client.citations_from_selection(
|
|
575
|
+
collection_id="tcga_luad",
|
|
576
|
+
citation_format=IDCClient.CITATION_FORMAT_BIBTEX
|
|
577
|
+
)
|
|
578
|
+
```
|
|
579
|
+
|
|
580
|
+
**Parameters:**
|
|
581
|
+
- `collection_id`: Filter by collection(s)
|
|
582
|
+
- `patientId`: Filter by patient ID(s)
|
|
583
|
+
- `studyInstanceUID`: Filter by study UID(s)
|
|
584
|
+
- `seriesInstanceUID`: Filter by series UID(s)
|
|
585
|
+
- `citation_format`: Use `IDCClient.CITATION_FORMAT_*` constants:
|
|
586
|
+
- `CITATION_FORMAT_APA` (default) - APA style
|
|
587
|
+
- `CITATION_FORMAT_BIBTEX` - BibTeX for LaTeX
|
|
588
|
+
- `CITATION_FORMAT_JSON` - CSL JSON
|
|
589
|
+
- `CITATION_FORMAT_TURTLE` - RDF Turtle
|
|
590
|
+
|
|
591
|
+
**Best practice:** When publishing results using IDC data, include the generated citations to properly attribute the data sources and satisfy license requirements.
|
|
592
|
+
|
|
593
|
+
### 6. Batch Processing and Filtering
|
|
594
|
+
|
|
595
|
+
Process large datasets efficiently with filtering:
|
|
596
|
+
|
|
597
|
+
```python
|
|
598
|
+
from idc_index import IDCClient
|
|
599
|
+
import pandas as pd
|
|
600
|
+
|
|
601
|
+
client = IDCClient()
|
|
602
|
+
|
|
603
|
+
# Find chest CT scans from GE scanners
|
|
604
|
+
query = """
|
|
605
|
+
SELECT
|
|
606
|
+
SeriesInstanceUID,
|
|
607
|
+
PatientID,
|
|
608
|
+
collection_id,
|
|
609
|
+
ManufacturerModelName
|
|
610
|
+
FROM index
|
|
611
|
+
WHERE Modality = 'CT'
|
|
612
|
+
AND BodyPartExamined = 'CHEST'
|
|
613
|
+
AND Manufacturer = 'GE MEDICAL SYSTEMS'
|
|
614
|
+
AND license_short_name = 'CC BY 4.0'
|
|
615
|
+
LIMIT 100
|
|
616
|
+
"""
|
|
617
|
+
|
|
618
|
+
results = client.sql_query(query)
|
|
619
|
+
|
|
620
|
+
# Save manifest for later
|
|
621
|
+
results.to_csv('lung_ct_manifest.csv', index=False)
|
|
622
|
+
|
|
623
|
+
# Download in batches to avoid timeout
|
|
624
|
+
batch_size = 10
|
|
625
|
+
for i in range(0, len(results), batch_size):
|
|
626
|
+
batch = results.iloc[i:i+batch_size]
|
|
627
|
+
client.download_from_selection(
|
|
628
|
+
seriesInstanceUID=list(batch['SeriesInstanceUID'].values),
|
|
629
|
+
downloadDir=f"./data/batch_{i//batch_size}"
|
|
630
|
+
)
|
|
631
|
+
```
|
|
632
|
+
|
|
633
|
+
### 7. Advanced Queries with BigQuery
|
|
634
|
+
|
|
635
|
+
For queries requiring full DICOM metadata, complex JOINs, clinical data tables, or private DICOM elements, use Google BigQuery. Requires GCP account with billing enabled.
|
|
636
|
+
|
|
637
|
+
**Quick reference:**
|
|
638
|
+
- Dataset: `bigquery-public-data.idc_current.*`
|
|
639
|
+
- Main table: `dicom_all` (combined metadata)
|
|
640
|
+
- Full metadata: `dicom_metadata` (all DICOM tags)
|
|
641
|
+
- Private elements: `OtherElements` column (vendor-specific tags like diffusion b-values)
|
|
642
|
+
|
|
643
|
+
See `references/bigquery_guide.md` for setup, table schemas, query patterns, private element access, and cost optimization.
|
|
644
|
+
|
|
645
|
+
**Before using BigQuery**, always check if a specialized index table already has the metadata you need:
|
|
646
|
+
1. Use `client.indices_overview` or the [idc-index indices reference](https://idc-index.readthedocs.io/en/latest/indices_reference.html) to discover all available tables and their columns
|
|
647
|
+
2. Fetch the relevant index: `client.fetch_index("table_name")`
|
|
648
|
+
3. Query locally with `client.sql_query()` (free, no GCP account needed)
|
|
649
|
+
|
|
650
|
+
Common specialized indices: `seg_index` (segmentations), `ann_index` / `ann_group_index` (microscopy annotations), `sm_index` (slide microscopy), `collections_index` (collection metadata). Only use BigQuery if you need private DICOM elements or attributes not in any index.
|
|
651
|
+
|
|
652
|
+
### 8. Tool Selection Guide
|
|
653
|
+
|
|
654
|
+
| Task | Tool | Reference |
|
|
655
|
+
|------|------|-----------|
|
|
656
|
+
| Programmatic queries & downloads | `idc-index` | This document |
|
|
657
|
+
| Interactive exploration | IDC Portal | https://portal.imaging.datacommons.cancer.gov/ |
|
|
658
|
+
| Complex metadata queries | BigQuery | `references/bigquery_guide.md` |
|
|
659
|
+
| 3D visualization & analysis | SlicerIDCBrowser | https://github.com/ImagingDataCommons/SlicerIDCBrowser |
|
|
660
|
+
|
|
661
|
+
**Default choice:** Use `idc-index` for most tasks (no auth, easy API, batch downloads).
|
|
662
|
+
|
|
663
|
+
### 9. Integration with Analysis Pipelines
|
|
664
|
+
|
|
665
|
+
Integrate IDC data into imaging analysis workflows:
|
|
666
|
+
|
|
667
|
+
**Read downloaded DICOM files:**
|
|
668
|
+
```python
|
|
669
|
+
import pydicom
|
|
670
|
+
import os
|
|
671
|
+
|
|
672
|
+
# Read DICOM files from downloaded series
|
|
673
|
+
series_dir = "./data/rider/rider_pilot/RIDER-1007893286/CT_1.3.6.1..."
|
|
674
|
+
|
|
675
|
+
dicom_files = [os.path.join(series_dir, f) for f in os.listdir(series_dir)
|
|
676
|
+
if f.endswith('.dcm')]
|
|
677
|
+
|
|
678
|
+
# Load first image
|
|
679
|
+
ds = pydicom.dcmread(dicom_files[0])
|
|
680
|
+
print(f"Patient ID: {ds.PatientID}")
|
|
681
|
+
print(f"Modality: {ds.Modality}")
|
|
682
|
+
print(f"Image shape: {ds.pixel_array.shape}")
|
|
683
|
+
```
|
|
684
|
+
|
|
685
|
+
**Build 3D volume from CT series:**
|
|
686
|
+
```python
|
|
687
|
+
import pydicom
|
|
688
|
+
import numpy as np
|
|
689
|
+
from pathlib import Path
|
|
690
|
+
|
|
691
|
+
def load_ct_series(series_path):
|
|
692
|
+
"""Load CT series as 3D numpy array"""
|
|
693
|
+
files = sorted(Path(series_path).glob('*.dcm'))
|
|
694
|
+
slices = [pydicom.dcmread(str(f)) for f in files]
|
|
695
|
+
|
|
696
|
+
# Sort by slice location
|
|
697
|
+
slices.sort(key=lambda x: float(x.ImagePositionPatient[2]))
|
|
698
|
+
|
|
699
|
+
# Stack into 3D array
|
|
700
|
+
volume = np.stack([s.pixel_array for s in slices])
|
|
701
|
+
|
|
702
|
+
return volume, slices[0] # Return volume and first slice for metadata
|
|
703
|
+
|
|
704
|
+
volume, metadata = load_ct_series("./data/lung_ct/series_dir")
|
|
705
|
+
print(f"Volume shape: {volume.shape}") # (z, y, x)
|
|
706
|
+
```
|
|
707
|
+
|
|
708
|
+
**Integrate with SimpleITK:**
|
|
709
|
+
```python
|
|
710
|
+
import SimpleITK as sitk
|
|
711
|
+
from pathlib import Path
|
|
712
|
+
|
|
713
|
+
# Read DICOM series
|
|
714
|
+
series_path = "./data/ct_series"
|
|
715
|
+
reader = sitk.ImageSeriesReader()
|
|
716
|
+
dicom_names = reader.GetGDCMSeriesFileNames(series_path)
|
|
717
|
+
reader.SetFileNames(dicom_names)
|
|
718
|
+
image = reader.Execute()
|
|
719
|
+
|
|
720
|
+
# Apply processing
|
|
721
|
+
smoothed = sitk.CurvatureFlow(image1=image, timeStep=0.125, numberOfIterations=5)
|
|
722
|
+
|
|
723
|
+
# Save as NIfTI
|
|
724
|
+
sitk.WriteImage(smoothed, "processed_volume.nii.gz")
|
|
725
|
+
```
|
|
726
|
+
|
|
727
|
+
## Common Use Cases
|
|
728
|
+
|
|
729
|
+
See `references/use_cases.md` for complete end-to-end workflow examples including:
|
|
730
|
+
- Building deep learning training datasets from lung CT scans
|
|
731
|
+
- Comparing image quality across scanner manufacturers
|
|
732
|
+
- Previewing data in browser before downloading
|
|
733
|
+
- License-aware batch downloads for commercial use
|
|
734
|
+
|
|
735
|
+
## Best Practices
|
|
736
|
+
|
|
737
|
+
- **Verify IDC version before generating responses** - Always call `client.get_idc_version()` at the start of a session to confirm you're using the expected data version (currently v23). If using an older version, recommend `pip install --upgrade idc-index`
|
|
738
|
+
- **Check licenses before use** - Always query the `license_short_name` field and respect licensing terms (CC BY vs CC BY-NC)
|
|
739
|
+
- **Generate citations for attribution** - Use `citations_from_selection()` to get properly formatted citations from `source_DOI` values; include these in publications
|
|
740
|
+
- **Start with small queries** - Use `LIMIT` clause when exploring to avoid long downloads and understand data structure
|
|
741
|
+
- **Use mini-index for simple queries** - Only use BigQuery when you need comprehensive metadata or complex JOINs
|
|
742
|
+
- **Organize downloads with dirTemplate** - Use meaningful directory structures like `%collection_id/%PatientID/%Modality`
|
|
743
|
+
- **Cache query results** - Save DataFrames to CSV files to avoid re-querying and ensure reproducibility
|
|
744
|
+
- **Estimate size first** - Check collection size before downloading - some collection sizes are in terabytes!
|
|
745
|
+
- **Save manifests** - Always save query results with Series UIDs for reproducibility and data provenance
|
|
746
|
+
- **Read documentation** - IDC data structure and metadata fields are documented at https://learn.canceridc.dev/
|
|
747
|
+
- **Use IDC forum** - Search for questons/answers and ask your questions to the IDC maintainers and users at https://discourse.canceridc.dev/
|
|
748
|
+
|
|
749
|
+
## Troubleshooting
|
|
750
|
+
|
|
751
|
+
**Issue: `ModuleNotFoundError: No module named 'idc_index'`**
|
|
752
|
+
- **Cause:** idc-index package not installed
|
|
753
|
+
- **Solution:** Install with `pip install --upgrade idc-index`
|
|
754
|
+
|
|
755
|
+
**Issue: Download fails with connection timeout**
|
|
756
|
+
- **Cause:** Network instability or large download size
|
|
757
|
+
- **Solution:**
|
|
758
|
+
- Download smaller batches (e.g., 10-20 series at a time)
|
|
759
|
+
- Check network connection
|
|
760
|
+
- Use `dirTemplate` to organize downloads by batch
|
|
761
|
+
- Implement retry logic with delays
|
|
762
|
+
|
|
763
|
+
**Issue: `BigQuery quota exceeded` or billing errors**
|
|
764
|
+
- **Cause:** BigQuery requires billing-enabled GCP project
|
|
765
|
+
- **Solution:** Use idc-index mini-index for simple queries (no billing required), or see `references/bigquery_guide.md` for cost optimization tips
|
|
766
|
+
|
|
767
|
+
**Issue: Series UID not found or no data returned**
|
|
768
|
+
- **Cause:** Typo in UID, data not in current IDC version, or wrong field name
|
|
769
|
+
- **Solution:**
|
|
770
|
+
- Check if data is in current IDC version (some old data may be deprecated)
|
|
771
|
+
- Use `LIMIT 5` to test query first
|
|
772
|
+
- Check field names against metadata schema documentation
|
|
773
|
+
|
|
774
|
+
**Issue: Downloaded DICOM files won't open**
|
|
775
|
+
- **Cause:** Corrupted download or incompatible viewer
|
|
776
|
+
- **Solution:**
|
|
777
|
+
- Check DICOM object type (Modality and SOPClassUID attributes) - some object types require specialized tools
|
|
778
|
+
- Verify file integrity (check file sizes)
|
|
779
|
+
- Use pydicom to validate: `pydicom.dcmread(file, force=True)`
|
|
780
|
+
- Try different DICOM viewer (3D Slicer, Horos, RadiAnt, QuPath)
|
|
781
|
+
- Re-download the series
|
|
782
|
+
|
|
783
|
+
## Common SQL Query Patterns
|
|
784
|
+
|
|
785
|
+
See `references/sql_patterns.md` for quick-reference SQL patterns including:
|
|
786
|
+
- Filter value discovery (modalities, body parts, manufacturers)
|
|
787
|
+
- Annotation and segmentation queries (including seg_index, ann_index joins)
|
|
788
|
+
- Slide microscopy queries (sm_index patterns)
|
|
789
|
+
- Download size estimation
|
|
790
|
+
- Clinical data linking
|
|
791
|
+
|
|
792
|
+
For segmentation and annotation details, also see `references/digital_pathology_guide.md`.
|
|
793
|
+
|
|
794
|
+
## Related Skills
|
|
795
|
+
|
|
796
|
+
The following skills complement IDC workflows for downstream analysis and visualization:
|
|
797
|
+
|
|
798
|
+
### DICOM Processing
|
|
799
|
+
- **pydicom** - Read, write, and manipulate downloaded DICOM files. Use for extracting pixel data, reading metadata, anonymization, and format conversion. Essential for working with IDC radiology data (CT, MR, PET).
|
|
800
|
+
|
|
801
|
+
### Pathology and Slide Microscopy
|
|
802
|
+
See `references/digital_pathology_guide.md` for DICOM-compatible tools (highdicom, wsidicom, TIA-Toolbox, Slim viewer).
|
|
803
|
+
|
|
804
|
+
### Metadata Visualization
|
|
805
|
+
- **matplotlib** - Low-level plotting for full customization. Use for creating static figures summarizing IDC query results (bar charts of modalities, histograms of series counts, etc.).
|
|
806
|
+
- **seaborn** - Statistical visualization with pandas integration. Use for quick exploration of IDC metadata distributions, relationships between variables, and categorical comparisons with attractive defaults.
|
|
807
|
+
- **plotly** - Interactive visualization. Use when you need hover info, zoom, and pan for exploring IDC metadata, or for creating web-embeddable dashboards of collection statistics.
|
|
808
|
+
|
|
809
|
+
### Data Exploration
|
|
810
|
+
- **exploratory-data-analysis** - Comprehensive EDA on scientific data files. Use after downloading IDC data to understand file structure, quality, and characteristics before analysis.
|
|
811
|
+
|
|
812
|
+
## Resources
|
|
813
|
+
|
|
814
|
+
### Schema Reference (Primary Source)
|
|
815
|
+
|
|
816
|
+
**Always use `client.indices_overview` for current column schemas.** This ensures accuracy with the installed idc-index version:
|
|
817
|
+
|
|
818
|
+
```python
|
|
819
|
+
# Get all column names and types for any table
|
|
820
|
+
schema = client.indices_overview["index"]["schema"]
|
|
821
|
+
columns = [(c['name'], c['type'], c.get('description', '')) for c in schema['columns']]
|
|
822
|
+
```
|
|
823
|
+
|
|
824
|
+
### Reference Documentation
|
|
825
|
+
|
|
826
|
+
See the Quick Navigation section at the top for the full list of reference guides with decision triggers.
|
|
827
|
+
|
|
828
|
+
- **[indices_reference](https://idc-index.readthedocs.io/en/latest/indices_reference.html)** - External documentation for index tables (may be ahead of the installed version)
|
|
829
|
+
|
|
830
|
+
### External Links
|
|
831
|
+
|
|
832
|
+
- **IDC Portal**: https://portal.imaging.datacommons.cancer.gov/explore/
|
|
833
|
+
- **Documentation**: https://learn.canceridc.dev/
|
|
834
|
+
- **Tutorials**: https://github.com/ImagingDataCommons/IDC-Tutorials
|
|
835
|
+
- **User Forum**: https://discourse.canceridc.dev/
|
|
836
|
+
- **idc-index GitHub**: https://github.com/ImagingDataCommons/idc-index
|
|
837
|
+
- **Citation**: Fedorov, A., et al. "National Cancer Institute Imaging Data Commons: Toward Transparency, Reproducibility, and Scalability in Imaging Artificial Intelligence." RadioGraphics 43.12 (2023). https://doi.org/10.1148/rg.230180
|
|
838
|
+
|
|
839
|
+
### Skill Updates
|
|
840
|
+
|
|
841
|
+
This skill version is available in skill metadata. To check for updates:
|
|
842
|
+
- Visit the [releases page](https://github.com/ImagingDataCommons/idc-claude-skill/releases)
|
|
843
|
+
- Watch the repository on GitHub (Watch → Custom → Releases)
|