@wentorai/research-plugins 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -22
- package/curated/analysis/README.md +82 -56
- package/curated/domains/README.md +225 -69
- package/curated/literature/README.md +115 -46
- package/curated/research/README.md +106 -58
- package/curated/tools/README.md +107 -87
- package/curated/writing/README.md +92 -45
- package/mcp-configs/academic-db/alphafold-mcp.json +20 -0
- package/mcp-configs/academic-db/brightspace-mcp.json +21 -0
- package/mcp-configs/academic-db/climatiq-mcp.json +20 -0
- package/mcp-configs/academic-db/gibs-mcp.json +20 -0
- package/mcp-configs/academic-db/gis-mcp-server.json +22 -0
- package/mcp-configs/academic-db/google-earth-engine-mcp.json +21 -0
- package/mcp-configs/academic-db/m4-clinical-mcp.json +21 -0
- package/mcp-configs/academic-db/medical-mcp.json +21 -0
- package/mcp-configs/academic-db/nexonco-mcp.json +20 -0
- package/mcp-configs/academic-db/omop-mcp.json +20 -0
- package/mcp-configs/academic-db/onekgpd-mcp.json +20 -0
- package/mcp-configs/academic-db/openedu-mcp.json +20 -0
- package/mcp-configs/academic-db/opengenes-mcp.json +20 -0
- package/mcp-configs/academic-db/openstax-mcp.json +21 -0
- package/mcp-configs/academic-db/openstreetmap-mcp.json +21 -0
- package/mcp-configs/academic-db/opentargets-mcp.json +21 -0
- package/mcp-configs/academic-db/pdb-mcp.json +21 -0
- package/mcp-configs/academic-db/smithsonian-mcp.json +20 -0
- package/mcp-configs/ai-platform/magi-researchers.json +21 -0
- package/mcp-configs/ai-platform/mcp-academic-researcher.json +22 -0
- package/mcp-configs/ai-platform/open-paper-machine.json +21 -0
- package/mcp-configs/ai-platform/paper-intelligence.json +21 -0
- package/mcp-configs/ai-platform/paper-reader.json +21 -0
- package/mcp-configs/ai-platform/paperdebugger.json +21 -0
- package/mcp-configs/browser/exa-mcp.json +20 -0
- package/mcp-configs/browser/mcp-searxng.json +21 -0
- package/mcp-configs/browser/mcp-webresearch.json +20 -0
- package/mcp-configs/cloud-docs/confluence-mcp.json +37 -0
- package/mcp-configs/cloud-docs/google-drive-mcp.json +35 -0
- package/mcp-configs/cloud-docs/notion-mcp.json +29 -0
- package/mcp-configs/communication/discord-mcp.json +29 -0
- package/mcp-configs/communication/discourse-mcp.json +21 -0
- package/mcp-configs/communication/slack-mcp.json +29 -0
- package/mcp-configs/communication/telegram-mcp.json +28 -0
- package/mcp-configs/data-platform/automl-stat-mcp.json +21 -0
- package/mcp-configs/data-platform/jefferson-stats-mcp.json +22 -0
- package/mcp-configs/data-platform/mcp-excel-server.json +21 -0
- package/mcp-configs/data-platform/mcp-stata.json +21 -0
- package/mcp-configs/data-platform/mcpstack-jupyter.json +21 -0
- package/mcp-configs/data-platform/ml-mcp.json +21 -0
- package/mcp-configs/data-platform/nasdaq-data-link-mcp.json +20 -0
- package/mcp-configs/data-platform/numpy-mcp.json +21 -0
- package/mcp-configs/database/neo4j-mcp.json +37 -0
- package/mcp-configs/database/postgres-mcp.json +28 -0
- package/mcp-configs/database/sqlite-mcp.json +29 -0
- package/mcp-configs/dev-platform/geogebra-mcp.json +21 -0
- package/mcp-configs/dev-platform/github-mcp.json +31 -0
- package/mcp-configs/dev-platform/gitlab-mcp.json +34 -0
- package/mcp-configs/dev-platform/latex-mcp-server.json +21 -0
- package/mcp-configs/dev-platform/manim-mcp.json +20 -0
- package/mcp-configs/dev-platform/mcp-echarts.json +20 -0
- package/mcp-configs/dev-platform/panel-viz-mcp.json +20 -0
- package/mcp-configs/dev-platform/paperbanana.json +20 -0
- package/mcp-configs/dev-platform/texflow-mcp.json +20 -0
- package/mcp-configs/dev-platform/texmcp.json +20 -0
- package/mcp-configs/dev-platform/typst-mcp.json +21 -0
- package/mcp-configs/dev-platform/vizro-mcp.json +20 -0
- package/mcp-configs/email/email-mcp.json +40 -0
- package/mcp-configs/email/gmail-mcp.json +37 -0
- package/mcp-configs/note-knowledge/local-faiss-mcp.json +21 -0
- package/mcp-configs/note-knowledge/mcp-memory-service.json +21 -0
- package/mcp-configs/note-knowledge/mcp-obsidian.json +23 -0
- package/mcp-configs/note-knowledge/mcp-ragdocs.json +20 -0
- package/mcp-configs/note-knowledge/mcp-summarizer.json +21 -0
- package/mcp-configs/note-knowledge/mediawiki-mcp.json +21 -0
- package/mcp-configs/note-knowledge/openzim-mcp.json +20 -0
- package/mcp-configs/note-knowledge/zettelkasten-mcp.json +21 -0
- package/mcp-configs/reference-mgr/academic-paper-mcp-http.json +20 -0
- package/mcp-configs/reference-mgr/academix.json +20 -0
- package/mcp-configs/reference-mgr/arxiv-research-mcp.json +21 -0
- package/mcp-configs/reference-mgr/google-scholar-abstract-mcp.json +19 -0
- package/mcp-configs/reference-mgr/google-scholar-mcp.json +20 -0
- package/mcp-configs/reference-mgr/mcp-paperswithcode.json +21 -0
- package/mcp-configs/reference-mgr/mcp-scholarly.json +20 -0
- package/mcp-configs/reference-mgr/mcp-simple-arxiv.json +20 -0
- package/mcp-configs/reference-mgr/mcp-simple-pubmed.json +20 -0
- package/mcp-configs/reference-mgr/mcp-zotero.json +21 -0
- package/mcp-configs/reference-mgr/mendeley-mcp.json +20 -0
- package/mcp-configs/reference-mgr/ncbi-mcp-server.json +22 -0
- package/mcp-configs/reference-mgr/onecite.json +21 -0
- package/mcp-configs/reference-mgr/paper-search-mcp.json +21 -0
- package/mcp-configs/reference-mgr/pubmed-search-mcp.json +21 -0
- package/mcp-configs/reference-mgr/scholar-mcp.json +21 -0
- package/mcp-configs/reference-mgr/scholar-multi-mcp.json +21 -0
- package/mcp-configs/reference-mgr/seerai.json +21 -0
- package/mcp-configs/reference-mgr/semantic-scholar-fastmcp.json +21 -0
- package/mcp-configs/reference-mgr/sourcelibrary.json +20 -0
- package/mcp-configs/registry.json +178 -149
- package/mcp-configs/repository/dataverse-mcp.json +33 -0
- package/mcp-configs/repository/huggingface-mcp.json +29 -0
- package/openclaw.plugin.json +2 -2
- package/package.json +2 -2
- package/skills/analysis/dataviz/algorithm-visualizer-guide/SKILL.md +259 -0
- package/skills/analysis/dataviz/bokeh-visualization-guide/SKILL.md +270 -0
- package/skills/analysis/dataviz/chart-image-generator/SKILL.md +229 -0
- package/skills/analysis/dataviz/citation-map-guide/SKILL.md +184 -0
- package/skills/analysis/dataviz/d3-visualization-guide/SKILL.md +281 -0
- package/skills/analysis/dataviz/data-visualization-principles/SKILL.md +171 -0
- package/skills/analysis/dataviz/echarts-visualization-guide/SKILL.md +250 -0
- package/skills/analysis/dataviz/metabase-analytics-guide/SKILL.md +242 -0
- package/skills/analysis/dataviz/plotly-interactive-guide/SKILL.md +266 -0
- package/skills/analysis/dataviz/redash-analytics-guide/SKILL.md +284 -0
- package/skills/analysis/econometrics/econml-causal-guide/SKILL.md +163 -0
- package/skills/analysis/econometrics/empirical-paper-analysis/SKILL.md +192 -0
- package/skills/analysis/econometrics/mostly-harmless-guide/SKILL.md +139 -0
- package/skills/analysis/econometrics/panel-data-analyst/SKILL.md +259 -0
- package/skills/analysis/econometrics/panel-data-regression-workflow/SKILL.md +267 -0
- package/skills/analysis/econometrics/python-causality-guide/SKILL.md +134 -0
- package/skills/analysis/econometrics/stata-accounting-guide/SKILL.md +269 -0
- package/skills/analysis/econometrics/stata-analyst-guide/SKILL.md +245 -0
- package/skills/analysis/econometrics/stata-reference-guide/SKILL.md +293 -0
- package/skills/analysis/statistics/data-anomaly-detection/SKILL.md +157 -0
- package/skills/analysis/statistics/general-statistics-guide/SKILL.md +226 -0
- package/skills/analysis/statistics/infiagent-benchmark-guide/SKILL.md +106 -0
- package/skills/analysis/statistics/ml-experiment-tracker/SKILL.md +212 -0
- package/skills/analysis/statistics/pywayne-statistics-guide/SKILL.md +192 -0
- package/skills/analysis/statistics/quantitative-methods-guide/SKILL.md +193 -0
- package/skills/analysis/statistics/senior-data-scientist-guide/SKILL.md +223 -0
- package/skills/analysis/wrangling/claude-data-analysis-guide/SKILL.md +100 -0
- package/skills/analysis/wrangling/csv-data-analyzer/SKILL.md +170 -0
- package/skills/analysis/wrangling/data-cleaning-pipeline/SKILL.md +266 -0
- package/skills/analysis/wrangling/data-cog-guide/SKILL.md +178 -0
- package/skills/analysis/wrangling/open-data-scientist-guide/SKILL.md +197 -0
- package/skills/analysis/wrangling/stata-data-cleaning/SKILL.md +276 -0
- package/skills/analysis/wrangling/streamline-analyst-guide/SKILL.md +119 -0
- package/skills/analysis/wrangling/survey-data-processing/SKILL.md +298 -0
- package/skills/domains/ai-ml/ai-agent-papers-guide/SKILL.md +146 -0
- package/skills/domains/ai-ml/ai-model-benchmarking/SKILL.md +209 -0
- package/skills/domains/ai-ml/annotated-dl-papers-guide/SKILL.md +159 -0
- package/skills/domains/ai-ml/anomaly-detection-papers-guide/SKILL.md +167 -0
- package/skills/domains/ai-ml/autonomous-agents-papers-guide/SKILL.md +178 -0
- package/skills/domains/ai-ml/dl-transformer-finetune/SKILL.md +239 -0
- package/skills/domains/ai-ml/domain-adaptation-papers-guide/SKILL.md +173 -0
- package/skills/domains/ai-ml/generative-ai-guide/SKILL.md +146 -0
- package/skills/domains/ai-ml/graph-learning-papers-guide/SKILL.md +125 -0
- package/skills/domains/ai-ml/huggingface-inference-guide/SKILL.md +196 -0
- package/skills/domains/ai-ml/keras-deep-learning/SKILL.md +210 -0
- package/skills/domains/ai-ml/kolmogorov-arnold-networks-guide/SKILL.md +185 -0
- package/skills/domains/ai-ml/llm-from-scratch-guide/SKILL.md +124 -0
- package/skills/domains/ai-ml/ml-pipeline-guide/SKILL.md +295 -0
- package/skills/domains/ai-ml/nlp-toolkit-guide/SKILL.md +247 -0
- package/skills/domains/ai-ml/npcpy-research-guide/SKILL.md +137 -0
- package/skills/domains/ai-ml/pytorch-guide/SKILL.md +281 -0
- package/skills/domains/ai-ml/pytorch-lightning-guide/SKILL.md +244 -0
- package/skills/domains/ai-ml/responsible-ai-guide/SKILL.md +126 -0
- package/skills/domains/ai-ml/tensorflow-guide/SKILL.md +241 -0
- package/skills/domains/ai-ml/vmas-simulator-guide/SKILL.md +129 -0
- package/skills/domains/biomedical/bioagents-guide/SKILL.md +308 -0
- package/skills/domains/biomedical/clawbio-guide/SKILL.md +167 -0
- package/skills/domains/biomedical/clinical-dialogue-agents-guide/SKILL.md +145 -0
- package/skills/domains/biomedical/ena-sequence-api/SKILL.md +175 -0
- package/skills/domains/biomedical/genomas-guide/SKILL.md +126 -0
- package/skills/domains/biomedical/genotex-benchmark-guide/SKILL.md +125 -0
- package/skills/domains/biomedical/med-researcher-guide/SKILL.md +161 -0
- package/skills/domains/biomedical/med-researcher-r1-guide/SKILL.md +146 -0
- package/skills/domains/biomedical/medgeclaw-guide/SKILL.md +345 -0
- package/skills/domains/biomedical/medical-imaging-guide/SKILL.md +305 -0
- package/skills/domains/biomedical/ncbi-blast-api/SKILL.md +195 -0
- package/skills/domains/biomedical/ncbi-datasets-api/SKILL.md +220 -0
- package/skills/domains/biomedical/quickgo-api/SKILL.md +181 -0
- package/skills/domains/business/architecture-design-guide/SKILL.md +279 -0
- package/skills/domains/business/innovation-management-guide/SKILL.md +257 -0
- package/skills/domains/business/operations-research-guide/SKILL.md +258 -0
- package/skills/domains/business/xpert-bi-guide/SKILL.md +84 -0
- package/skills/domains/chemistry/cactus-cheminformatics-guide/SKILL.md +89 -0
- package/skills/domains/chemistry/chemeagle-guide/SKILL.md +147 -0
- package/skills/domains/chemistry/chemgraph-agent-guide/SKILL.md +120 -0
- package/skills/domains/chemistry/molecular-dynamics-guide/SKILL.md +237 -0
- package/skills/domains/chemistry/pubchem-api-guide/SKILL.md +180 -0
- package/skills/domains/chemistry/spectroscopy-analysis-guide/SKILL.md +290 -0
- package/skills/domains/cs/ai-security-papers-guide/SKILL.md +103 -0
- package/skills/domains/cs/code-llm-papers-guide/SKILL.md +131 -0
- package/skills/domains/cs/distributed-systems-guide/SKILL.md +268 -0
- package/skills/domains/cs/formal-verification-guide/SKILL.md +298 -0
- package/skills/domains/cs/gaussian-splatting-papers-guide/SKILL.md +158 -0
- package/skills/domains/cs/llm-aiops-guide/SKILL.md +70 -0
- package/skills/domains/cs/software-heritage-api/SKILL.md +200 -0
- package/skills/domains/ecology/species-distribution-guide/SKILL.md +343 -0
- package/skills/domains/economics/imf-data-api-guide/SKILL.md +174 -0
- package/skills/domains/economics/nber-working-papers-api/SKILL.md +177 -0
- package/skills/domains/economics/post-labor-economics/SKILL.md +254 -0
- package/skills/domains/economics/pricing-psychology-guide/SKILL.md +273 -0
- package/skills/domains/economics/repec-economics-api/SKILL.md +188 -0
- package/skills/domains/economics/world-bank-data-guide/SKILL.md +179 -0
- package/skills/domains/education/academic-study-methods/SKILL.md +228 -0
- package/skills/domains/education/assessment-design-guide/SKILL.md +213 -0
- package/skills/domains/education/educational-research-methods/SKILL.md +179 -0
- package/skills/domains/education/edumcp-guide/SKILL.md +74 -0
- package/skills/domains/education/mooc-analytics-guide/SKILL.md +206 -0
- package/skills/domains/education/open-syllabus-api/SKILL.md +171 -0
- package/skills/domains/finance/akshare-finance-data/SKILL.md +207 -0
- package/skills/domains/finance/finsight-research-guide/SKILL.md +113 -0
- package/skills/domains/finance/options-analytics-agent-guide/SKILL.md +117 -0
- package/skills/domains/finance/portfolio-optimization-guide/SKILL.md +279 -0
- package/skills/domains/finance/risk-modeling-guide/SKILL.md +260 -0
- package/skills/domains/finance/stata-accounting-research/SKILL.md +372 -0
- package/skills/domains/geoscience/climate-modeling-guide/SKILL.md +215 -0
- package/skills/domains/geoscience/pangaea-data-api/SKILL.md +197 -0
- package/skills/domains/geoscience/satellite-remote-sensing/SKILL.md +193 -0
- package/skills/domains/geoscience/seismology-data-guide/SKILL.md +208 -0
- package/skills/domains/humanities/digital-humanities-methods/SKILL.md +232 -0
- package/skills/domains/humanities/ethical-philosophy-guide/SKILL.md +244 -0
- package/skills/domains/humanities/history-research-guide/SKILL.md +260 -0
- package/skills/domains/humanities/political-history-guide/SKILL.md +241 -0
- package/skills/domains/law/caselaw-access-api/SKILL.md +149 -0
- package/skills/domains/law/legal-agent-skills-guide/SKILL.md +132 -0
- package/skills/domains/law/legal-nlp-guide/SKILL.md +236 -0
- package/skills/domains/law/legal-research-methods/SKILL.md +190 -0
- package/skills/domains/law/opencontracts-guide/SKILL.md +168 -0
- package/skills/domains/law/patent-analysis-guide/SKILL.md +257 -0
- package/skills/domains/law/regulatory-compliance-guide/SKILL.md +267 -0
- package/skills/domains/math/lean-theorem-proving-guide/SKILL.md +140 -0
- package/skills/domains/math/symbolic-computation-guide/SKILL.md +263 -0
- package/skills/domains/math/topology-data-analysis/SKILL.md +305 -0
- package/skills/domains/pharma/clinical-trial-design-guide/SKILL.md +271 -0
- package/skills/domains/pharma/drug-target-interaction/SKILL.md +242 -0
- package/skills/domains/pharma/madd-drug-discovery-guide/SKILL.md +153 -0
- package/skills/domains/pharma/pharmacovigilance-guide/SKILL.md +216 -0
- package/skills/domains/physics/astrophysics-data-guide/SKILL.md +305 -0
- package/skills/domains/physics/particle-physics-guide/SKILL.md +287 -0
- package/skills/domains/social-science/ipums-microdata-api/SKILL.md +211 -0
- package/skills/domains/social-science/network-analysis-guide/SKILL.md +310 -0
- package/skills/domains/social-science/psychology-research-guide/SKILL.md +270 -0
- package/skills/domains/social-science/sociology-research-guide/SKILL.md +238 -0
- package/skills/domains/social-science/sociology-research-methods/SKILL.md +181 -0
- package/skills/literature/discovery/arxiv-paper-monitoring/SKILL.md +233 -0
- package/skills/literature/discovery/paper-recommendation-guide/SKILL.md +120 -0
- package/skills/literature/discovery/papers-we-love-guide/SKILL.md +169 -0
- package/skills/literature/discovery/semantic-paper-radar/SKILL.md +144 -0
- package/skills/literature/discovery/zotero-arxiv-daily-guide/SKILL.md +94 -0
- package/skills/literature/fulltext/bioc-pmc-api/SKILL.md +146 -0
- package/skills/literature/fulltext/core-api-guide/SKILL.md +144 -0
- package/skills/literature/fulltext/dataverse-api/SKILL.md +215 -0
- package/skills/literature/fulltext/hal-archive-api/SKILL.md +218 -0
- package/skills/literature/fulltext/institutional-repository-guide/SKILL.md +212 -0
- package/skills/literature/fulltext/open-access-mining-guide/SKILL.md +341 -0
- package/skills/literature/fulltext/osf-api/SKILL.md +212 -0
- package/skills/literature/fulltext/pmc-ftp-bulk-download/SKILL.md +182 -0
- package/skills/literature/fulltext/zotero-ai-butler-guide/SKILL.md +166 -0
- package/skills/literature/fulltext/zotero-scihub-guide/SKILL.md +168 -0
- package/skills/literature/metadata/academic-paper-summarizer/SKILL.md +101 -0
- package/skills/literature/metadata/bibliometrix-guide/SKILL.md +164 -0
- package/skills/literature/metadata/crossref-event-data-api/SKILL.md +183 -0
- package/skills/literature/metadata/doi-content-negotiation/SKILL.md +202 -0
- package/skills/literature/metadata/orkg-api/SKILL.md +153 -0
- package/skills/literature/metadata/plumx-metrics-api/SKILL.md +188 -0
- package/skills/literature/metadata/ror-organization-api/SKILL.md +208 -0
- package/skills/literature/metadata/sophosia-reference-guide/SKILL.md +110 -0
- package/skills/literature/metadata/viaf-authority-api/SKILL.md +209 -0
- package/skills/literature/metadata/wikidata-api-guide/SKILL.md +156 -0
- package/skills/literature/metadata/zoplicate-dedup-guide/SKILL.md +147 -0
- package/skills/literature/metadata/zotero-actions-tags-guide/SKILL.md +212 -0
- package/skills/literature/metadata/zotmoov-guide/SKILL.md +120 -0
- package/skills/literature/metadata/zutilo-guide/SKILL.md +140 -0
- package/skills/literature/search/arxiv-batch-reporting/SKILL.md +133 -0
- package/skills/literature/search/arxiv-cli-tools/SKILL.md +172 -0
- package/skills/literature/search/arxiv-osiris/SKILL.md +199 -0
- package/skills/literature/search/arxiv-paper-processor/SKILL.md +141 -0
- package/skills/literature/search/baidu-scholar-guide/SKILL.md +110 -0
- package/skills/literature/search/base-academic-search/SKILL.md +196 -0
- package/skills/literature/search/chatpaper-guide/SKILL.md +122 -0
- package/skills/literature/search/citeseerx-api/SKILL.md +183 -0
- package/skills/literature/search/deep-literature-search/SKILL.md +149 -0
- package/skills/literature/search/deepgit-search-guide/SKILL.md +147 -0
- package/skills/literature/search/eric-education-api/SKILL.md +199 -0
- package/skills/literature/search/findpapers-guide/SKILL.md +177 -0
- package/skills/literature/search/ieee-xplore-api/SKILL.md +177 -0
- package/skills/literature/search/lens-scholarly-api/SKILL.md +211 -0
- package/skills/literature/search/multi-database-literature-search/SKILL.md +198 -0
- package/skills/literature/search/open-library-api/SKILL.md +196 -0
- package/skills/literature/search/open-semantic-search-guide/SKILL.md +190 -0
- package/skills/literature/search/openaire-api/SKILL.md +141 -0
- package/skills/literature/search/paper-search-mcp-guide/SKILL.md +107 -0
- package/skills/literature/search/papers-chat-guide/SKILL.md +194 -0
- package/skills/literature/search/pasa-paper-search-guide/SKILL.md +138 -0
- package/skills/literature/search/plos-open-access-api/SKILL.md +203 -0
- package/skills/literature/search/scielo-api/SKILL.md +182 -0
- package/skills/literature/search/share-research-api/SKILL.md +129 -0
- package/skills/literature/search/worldcat-search-api/SKILL.md +224 -0
- package/skills/research/automation/ai-scientist-v2-guide/SKILL.md +284 -0
- package/skills/research/automation/aim-experiment-guide/SKILL.md +234 -0
- package/skills/research/automation/claude-academic-workflow-guide/SKILL.md +202 -0
- package/skills/research/automation/coexist-ai-guide/SKILL.md +149 -0
- package/skills/research/automation/datagen-research-guide/SKILL.md +131 -0
- package/skills/research/automation/foam-agent-guide/SKILL.md +203 -0
- package/skills/research/automation/kedro-pipeline-guide/SKILL.md +216 -0
- package/skills/research/automation/mle-agent-guide/SKILL.md +139 -0
- package/skills/research/automation/paper-to-agent-guide/SKILL.md +116 -0
- package/skills/research/automation/rd-agent-guide/SKILL.md +246 -0
- package/skills/research/automation/research-paper-orchestrator/SKILL.md +254 -0
- package/skills/research/deep-research/academic-deep-research/SKILL.md +190 -0
- package/skills/research/deep-research/auto-deep-research-guide/SKILL.md +141 -0
- package/skills/research/deep-research/cognitive-kernel-guide/SKILL.md +200 -0
- package/skills/research/deep-research/corvus-research-guide/SKILL.md +132 -0
- package/skills/research/deep-research/deep-research-pro/SKILL.md +213 -0
- package/skills/research/deep-research/deep-research-work/SKILL.md +204 -0
- package/skills/research/deep-research/deep-searcher-guide/SKILL.md +253 -0
- package/skills/research/deep-research/gpt-researcher-guide/SKILL.md +191 -0
- package/skills/research/deep-research/in-depth-research-guide/SKILL.md +205 -0
- package/skills/research/deep-research/khoj-research-guide/SKILL.md +200 -0
- package/skills/research/deep-research/kosmos-scientist-guide/SKILL.md +185 -0
- package/skills/research/deep-research/llm-scientific-discovery-guide/SKILL.md +178 -0
- package/skills/research/deep-research/local-deep-research-guide/SKILL.md +253 -0
- package/skills/research/deep-research/open-researcher-guide/SKILL.md +138 -0
- package/skills/research/deep-research/tongyi-deep-research-guide/SKILL.md +217 -0
- package/skills/research/funding/eu-horizon-guide/SKILL.md +244 -0
- package/skills/research/funding/grant-budget-guide/SKILL.md +284 -0
- package/skills/research/funding/nih-reporter-api-guide/SKILL.md +166 -0
- package/skills/research/funding/nsf-award-api-guide/SKILL.md +133 -0
- package/skills/research/methodology/academic-mentor-guide/SKILL.md +169 -0
- package/skills/research/methodology/claude-scientific-guide/SKILL.md +122 -0
- package/skills/research/methodology/deep-innovator-guide/SKILL.md +242 -0
- package/skills/research/methodology/osf-api-guide/SKILL.md +165 -0
- package/skills/research/methodology/parsifal-slr-guide/SKILL.md +154 -0
- package/skills/research/methodology/research-paper-kb/SKILL.md +263 -0
- package/skills/research/methodology/research-pipeline-units-guide/SKILL.md +169 -0
- package/skills/research/methodology/research-town-guide/SKILL.md +263 -0
- package/skills/research/methodology/slr-automation-guide/SKILL.md +235 -0
- package/skills/research/paper-review/automated-review-guide/SKILL.md +281 -0
- package/skills/research/paper-review/latte-review-guide/SKILL.md +175 -0
- package/skills/research/paper-review/paper-compare-guide/SKILL.md +238 -0
- package/skills/research/paper-review/paper-critique-framework/SKILL.md +181 -0
- package/skills/research/paper-review/paper-digest-guide/SKILL.md +240 -0
- package/skills/research/paper-review/paper-research-assistant/SKILL.md +231 -0
- package/skills/research/paper-review/research-quality-filter/SKILL.md +261 -0
- package/skills/research/paper-review/review-response-guide/SKILL.md +275 -0
- package/skills/tools/code-exec/contextplus-mcp-guide/SKILL.md +110 -0
- package/skills/tools/code-exec/google-colab-guide/SKILL.md +276 -0
- package/skills/tools/code-exec/kaggle-api-guide/SKILL.md +216 -0
- package/skills/tools/code-exec/overleaf-cli-guide/SKILL.md +279 -0
- package/skills/tools/diagram/clawphd-guide/SKILL.md +149 -0
- package/skills/tools/diagram/code-flow-visualizer/SKILL.md +197 -0
- package/skills/tools/diagram/excalidraw-diagram-guide/SKILL.md +170 -0
- package/skills/tools/diagram/json-data-visualizer/SKILL.md +270 -0
- package/skills/tools/diagram/kroki-diagram-api/SKILL.md +198 -0
- package/skills/tools/diagram/mermaid-architect-guide/SKILL.md +219 -0
- package/skills/tools/diagram/scientific-graphical-abstract/SKILL.md +201 -0
- package/skills/tools/diagram/tldraw-whiteboard-guide/SKILL.md +397 -0
- package/skills/tools/document/docsgpt-guide/SKILL.md +130 -0
- package/skills/tools/document/large-document-reader/SKILL.md +202 -0
- package/skills/tools/document/md2pdf-xelatex/SKILL.md +212 -0
- package/skills/tools/document/openpaper-guide/SKILL.md +232 -0
- package/skills/tools/document/paper-parse-guide/SKILL.md +243 -0
- package/skills/tools/document/weknora-guide/SKILL.md +216 -0
- package/skills/tools/document/zotero-addon-market-guide/SKILL.md +108 -0
- package/skills/tools/document/zotero-night-theme-guide/SKILL.md +142 -0
- package/skills/tools/document/zotero-style-guide/SKILL.md +217 -0
- package/skills/tools/knowledge-graph/citation-network-builder/SKILL.md +244 -0
- package/skills/tools/knowledge-graph/concept-map-generator/SKILL.md +284 -0
- package/skills/tools/knowledge-graph/graphiti-guide/SKILL.md +219 -0
- package/skills/tools/knowledge-graph/mimir-memory-guide/SKILL.md +135 -0
- package/skills/tools/knowledge-graph/notero-zotero-notion-guide/SKILL.md +187 -0
- package/skills/tools/knowledge-graph/open-webui-tools-guide/SKILL.md +156 -0
- package/skills/tools/knowledge-graph/openspg-guide/SKILL.md +210 -0
- package/skills/tools/knowledge-graph/paperpile-notion-guide/SKILL.md +84 -0
- package/skills/tools/knowledge-graph/zotero-markdb-connect-guide/SKILL.md +162 -0
- package/skills/tools/ocr-translate/latex-translation-guide/SKILL.md +176 -0
- package/skills/tools/ocr-translate/math-equation-renderer/SKILL.md +198 -0
- package/skills/tools/ocr-translate/pdf-math-translate-guide/SKILL.md +141 -0
- package/skills/tools/ocr-translate/zotero-pdf-translate-guide/SKILL.md +95 -0
- package/skills/tools/ocr-translate/zotero-pdf2zh-guide/SKILL.md +143 -0
- package/skills/tools/scraping/dataset-finder-guide/SKILL.md +253 -0
- package/skills/tools/scraping/easy-spider-guide/SKILL.md +250 -0
- package/skills/tools/scraping/google-scholar-scraper/SKILL.md +255 -0
- package/skills/tools/scraping/repository-harvesting-guide/SKILL.md +310 -0
- package/skills/writing/citation/academic-citation-manager/SKILL.md +314 -0
- package/skills/writing/citation/academic-citation-manager-guide/SKILL.md +182 -0
- package/skills/writing/citation/citation-assistant-skill/SKILL.md +192 -0
- package/skills/writing/citation/jabref-reference-guide/SKILL.md +127 -0
- package/skills/writing/citation/jasminum-zotero-guide/SKILL.md +103 -0
- package/skills/writing/citation/mendeley-api/SKILL.md +231 -0
- package/skills/writing/citation/obsidian-citation-guide/SKILL.md +164 -0
- package/skills/writing/citation/obsidian-zotero-guide/SKILL.md +137 -0
- package/skills/writing/citation/onecite-reference-guide/SKILL.md +168 -0
- package/skills/writing/citation/papersgpt-zotero-guide/SKILL.md +132 -0
- package/skills/writing/citation/papis-cli-guide/SKILL.md +213 -0
- package/skills/writing/citation/zotero-better-bibtex-guide/SKILL.md +107 -0
- package/skills/writing/citation/zotero-better-notes-guide/SKILL.md +121 -0
- package/skills/writing/citation/zotero-gpt-guide/SKILL.md +111 -0
- package/skills/writing/citation/zotero-mcp-guide/SKILL.md +164 -0
- package/skills/writing/citation/zotero-mdnotes-guide/SKILL.md +162 -0
- package/skills/writing/citation/zotero-reference-guide/SKILL.md +139 -0
- package/skills/writing/citation/zotero-scholar-guide/SKILL.md +294 -0
- package/skills/writing/citation/zotfile-attachment-guide/SKILL.md +140 -0
- package/skills/writing/composition/ml-paper-writing/SKILL.md +163 -0
- package/skills/writing/composition/opendraft-thesis-guide/SKILL.md +200 -0
- package/skills/writing/composition/paper-debugger-guide/SKILL.md +143 -0
- package/skills/writing/composition/paperforge-guide/SKILL.md +205 -0
- package/skills/writing/composition/research-paper-writer/SKILL.md +226 -0
- package/skills/writing/composition/scientific-writing-resources/SKILL.md +151 -0
- package/skills/writing/composition/scientific-writing-wrapper/SKILL.md +153 -0
- package/skills/writing/latex/academic-writing-latex/SKILL.md +285 -0
- package/skills/writing/latex/latex-drawing-collection/SKILL.md +154 -0
- package/skills/writing/latex/latex-templates-collection/SKILL.md +159 -0
- package/skills/writing/latex/md-to-pdf-academic/SKILL.md +230 -0
- package/skills/writing/latex/tex-render-guide/SKILL.md +243 -0
- package/skills/writing/polish/academic-tone-guide/SKILL.md +209 -0
- package/skills/writing/polish/chinese-text-humanizer/SKILL.md +140 -0
- package/skills/writing/polish/conciseness-editing-guide/SKILL.md +225 -0
- package/skills/writing/polish/paper-polish-guide/SKILL.md +160 -0
- package/skills/writing/templates/arxiv-preprint-template/SKILL.md +184 -0
- package/skills/writing/templates/elegant-paper-template/SKILL.md +141 -0
- package/skills/writing/templates/graphical-abstract-guide/SKILL.md +183 -0
- package/skills/writing/templates/novathesis-guide/SKILL.md +152 -0
- package/skills/writing/templates/scientific-article-pdf/SKILL.md +261 -0
- package/skills/writing/templates/sjtuthesis-guide/SKILL.md +197 -0
- package/skills/writing/templates/thuthesis-guide/SKILL.md +181 -0
- package/skills/literature/fulltext/repository-harvesting-guide/SKILL.md +0 -207
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: med-researcher-guide
|
|
3
|
+
description: "Multi-agent system for biomedical literature review and synthesis"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "🏥"
|
|
7
|
+
category: "domains"
|
|
8
|
+
subcategory: "biomedical"
|
|
9
|
+
keywords: ["medical research", "biomedical agent", "clinical literature", "PubMed agent", "medical AI", "evidence synthesis"]
|
|
10
|
+
source: "https://github.com/mao1207/Med-Researcher"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Med-Researcher Guide
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
Med-Researcher is a multi-agent system designed specifically for biomedical literature review. It orchestrates specialized agents for searching PubMed and other medical databases, extracting structured evidence from clinical papers, and synthesizing findings into evidence-graded summaries. Particularly useful for clinical evidence reviews, drug interaction research, and systematic reviews in medicine.
|
|
18
|
+
|
|
19
|
+
## Architecture
|
|
20
|
+
|
|
21
|
+
### Agent Roles
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
Query → Planning Agent (decomposes clinical question)
|
|
25
|
+
↓
|
|
26
|
+
Search Agent (PubMed, PMC, clinical trials)
|
|
27
|
+
↓
|
|
28
|
+
Extraction Agent (PICO, outcomes, evidence grade)
|
|
29
|
+
↓
|
|
30
|
+
Synthesis Agent (evidence summary, contradictions)
|
|
31
|
+
↓
|
|
32
|
+
Report Agent (structured review output)
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Agent Descriptions
|
|
36
|
+
|
|
37
|
+
| Agent | Role |
|
|
38
|
+
|-------|------|
|
|
39
|
+
| **Planner** | Converts clinical question to PICO format, generates sub-queries |
|
|
40
|
+
| **Searcher** | Queries PubMed, PMC, ClinicalTrials.gov |
|
|
41
|
+
| **Extractor** | Extracts structured data: population, intervention, outcomes |
|
|
42
|
+
| **Synthesizer** | Grades evidence, identifies consensus and contradictions |
|
|
43
|
+
| **Reporter** | Generates formatted review with citations |
|
|
44
|
+
|
|
45
|
+
## Usage
|
|
46
|
+
|
|
47
|
+
```python
|
|
48
|
+
from med_researcher import MedResearcher
|
|
49
|
+
|
|
50
|
+
researcher = MedResearcher(
|
|
51
|
+
llm_provider="anthropic",
|
|
52
|
+
search_backends=["pubmed", "pmc", "clinical_trials"],
|
|
53
|
+
)
|
|
54
|
+
|
|
55
|
+
# Clinical question
|
|
56
|
+
result = researcher.review(
|
|
57
|
+
question="What is the comparative efficacy of SGLT2 inhibitors "
|
|
58
|
+
"versus GLP-1 receptor agonists for cardiovascular "
|
|
59
|
+
"outcomes in type 2 diabetes?",
|
|
60
|
+
max_papers=50,
|
|
61
|
+
evidence_grading=True,
|
|
62
|
+
)
|
|
63
|
+
|
|
64
|
+
print(result.summary)
|
|
65
|
+
print(f"Papers analyzed: {len(result.papers)}")
|
|
66
|
+
print(f"Evidence grade: {result.overall_grade}")
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## PICO Framework Integration
|
|
70
|
+
|
|
71
|
+
```python
|
|
72
|
+
# Automatic PICO extraction from clinical question
|
|
73
|
+
pico = researcher.extract_pico(
|
|
74
|
+
"Does metformin reduce cancer incidence in diabetic patients?"
|
|
75
|
+
)
|
|
76
|
+
# P: patients with diabetes
|
|
77
|
+
# I: metformin treatment
|
|
78
|
+
# C: no metformin / other antidiabetics
|
|
79
|
+
# O: cancer incidence
|
|
80
|
+
|
|
81
|
+
# Search with PICO components
|
|
82
|
+
result = researcher.review_pico(
|
|
83
|
+
population="type 2 diabetes patients",
|
|
84
|
+
intervention="metformin",
|
|
85
|
+
comparison="placebo or other antidiabetics",
|
|
86
|
+
outcome="cancer incidence",
|
|
87
|
+
)
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## Evidence Grading
|
|
91
|
+
|
|
92
|
+
```python
|
|
93
|
+
# Evidence levels following GRADE methodology
|
|
94
|
+
for paper in result.papers:
|
|
95
|
+
print(f"{paper.title}")
|
|
96
|
+
print(f" Study type: {paper.study_type}") # RCT, cohort, case-control
|
|
97
|
+
print(f" Evidence level: {paper.evidence_level}") # High/Moderate/Low/Very Low
|
|
98
|
+
print(f" Risk of bias: {paper.bias_risk}")
|
|
99
|
+
print(f" Sample size: {paper.sample_size}")
|
|
100
|
+
|
|
101
|
+
# Aggregate evidence summary
|
|
102
|
+
print(f"\nOverall certainty: {result.certainty}")
|
|
103
|
+
print(f"Recommendation strength: {result.recommendation}")
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## Search Configuration
|
|
107
|
+
|
|
108
|
+
```python
|
|
109
|
+
researcher = MedResearcher(
|
|
110
|
+
search_config={
|
|
111
|
+
"pubmed": {
|
|
112
|
+
"max_results": 100,
|
|
113
|
+
"date_range": ("2020-01-01", "2025-12-31"),
|
|
114
|
+
"article_types": ["Clinical Trial", "Meta-Analysis",
|
|
115
|
+
"Randomized Controlled Trial"],
|
|
116
|
+
},
|
|
117
|
+
"clinical_trials": {
|
|
118
|
+
"status": ["Completed", "Active"],
|
|
119
|
+
"phase": ["Phase 3", "Phase 4"],
|
|
120
|
+
},
|
|
121
|
+
},
|
|
122
|
+
extraction_config={
|
|
123
|
+
"fields": ["population", "intervention", "comparator",
|
|
124
|
+
"primary_outcome", "secondary_outcomes",
|
|
125
|
+
"adverse_events", "sample_size", "follow_up"],
|
|
126
|
+
},
|
|
127
|
+
)
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
## Output Formats
|
|
131
|
+
|
|
132
|
+
```python
|
|
133
|
+
# Structured evidence table
|
|
134
|
+
result.export_evidence_table("evidence_table.csv")
|
|
135
|
+
|
|
136
|
+
# PRISMA flow diagram data
|
|
137
|
+
prisma = result.prisma_flow()
|
|
138
|
+
print(f"Identified: {prisma['identified']}")
|
|
139
|
+
print(f"Screened: {prisma['screened']}")
|
|
140
|
+
print(f"Included: {prisma['included']}")
|
|
141
|
+
|
|
142
|
+
# Bibliography
|
|
143
|
+
result.export_bibtex("references.bib")
|
|
144
|
+
|
|
145
|
+
# Full report
|
|
146
|
+
result.export_report("review.md", format="markdown")
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
## Clinical Use Cases
|
|
150
|
+
|
|
151
|
+
1. **Drug comparison reviews**: Head-to-head efficacy analysis
|
|
152
|
+
2. **Safety signal detection**: Adverse event pattern identification
|
|
153
|
+
3. **Guideline evidence**: Supporting clinical guideline development
|
|
154
|
+
4. **Grant proposals**: Rapid evidence landscape assessment
|
|
155
|
+
5. **Journal clubs**: Structured paper discussion preparation
|
|
156
|
+
|
|
157
|
+
## References
|
|
158
|
+
|
|
159
|
+
- [Med-Researcher GitHub](https://github.com/mao1207/Med-Researcher)
|
|
160
|
+
- [GRADE Handbook](https://gdt.gradepro.org/app/handbook/handbook.html)
|
|
161
|
+
- [PubMed API (E-utilities)](https://www.ncbi.nlm.nih.gov/books/NBK25501/)
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: med-researcher-r1-guide
|
|
3
|
+
description: "Medical deep research agent with reasoning chain analysis"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "🩺"
|
|
7
|
+
category: "domains"
|
|
8
|
+
subcategory: "biomedical"
|
|
9
|
+
keywords: ["medical research", "deep research", "clinical reasoning", "PubMed", "medical agent", "evidence-based"]
|
|
10
|
+
source: "https://github.com/AQ-MedAI/MedResearcher-R1"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# MedResearcher-R1 Guide
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
MedResearcher-R1 is a medical deep research agent that combines clinical reasoning chains with iterative literature search to answer complex medical questions. Unlike general research agents, it is specialized for medical evidence — understanding clinical trial designs, PICO frameworks, evidence hierarchies, and medical terminology. Uses reasoning chain analysis (R1) to decompose clinical questions and systematically gather evidence.
|
|
18
|
+
|
|
19
|
+
## Architecture
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
Clinical Question
|
|
23
|
+
↓
|
|
24
|
+
R1 Reasoning Chain (decompose into sub-questions)
|
|
25
|
+
↓
|
|
26
|
+
Medical Search Agent
|
|
27
|
+
├── PubMed (MeSH terms)
|
|
28
|
+
├── ClinicalTrials.gov
|
|
29
|
+
├── Cochrane Library
|
|
30
|
+
└── WHO ICTRP
|
|
31
|
+
↓
|
|
32
|
+
Evidence Extraction Agent
|
|
33
|
+
├── PICO extraction
|
|
34
|
+
├── Study design classification
|
|
35
|
+
├── Outcome extraction
|
|
36
|
+
└── Risk of bias assessment
|
|
37
|
+
↓
|
|
38
|
+
Synthesis Agent (evidence grading)
|
|
39
|
+
↓
|
|
40
|
+
Clinical Answer + Evidence Report
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Usage
|
|
44
|
+
|
|
45
|
+
```python
|
|
46
|
+
from med_researcher_r1 import MedResearcherR1
|
|
47
|
+
|
|
48
|
+
researcher = MedResearcherR1(
|
|
49
|
+
llm_provider="anthropic",
|
|
50
|
+
search_backends=["pubmed", "clinical_trials", "cochrane"],
|
|
51
|
+
)
|
|
52
|
+
|
|
53
|
+
# Complex clinical question
|
|
54
|
+
result = researcher.research(
|
|
55
|
+
question="In patients with treatment-resistant depression, "
|
|
56
|
+
"how does psilocybin-assisted therapy compare to "
|
|
57
|
+
"esketamine in terms of remission rates and "
|
|
58
|
+
"long-term outcomes?",
|
|
59
|
+
evidence_level="systematic", # systematic, rapid, scoping
|
|
60
|
+
max_papers=50,
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
print(result.summary)
|
|
64
|
+
print(f"\nEvidence quality: {result.evidence_grade}")
|
|
65
|
+
print(f"Papers analyzed: {len(result.papers)}")
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Reasoning Chain
|
|
69
|
+
|
|
70
|
+
```python
|
|
71
|
+
# Inspect the R1 reasoning chain
|
|
72
|
+
for step in result.reasoning_chain:
|
|
73
|
+
print(f"\nStep {step.number}: {step.type}")
|
|
74
|
+
print(f" Question: {step.question}")
|
|
75
|
+
print(f" Strategy: {step.search_strategy}")
|
|
76
|
+
print(f" Findings: {step.key_finding}")
|
|
77
|
+
print(f" Next: {step.next_action}")
|
|
78
|
+
|
|
79
|
+
# Example chain:
|
|
80
|
+
# Step 1: DECOMPOSE — Split into psilocybin efficacy,
|
|
81
|
+
# esketamine efficacy, head-to-head comparisons
|
|
82
|
+
# Step 2: SEARCH — PubMed: psilocybin depression RCT
|
|
83
|
+
# Step 3: EXTRACT — 3 RCTs found, extract PICO + outcomes
|
|
84
|
+
# Step 4: SEARCH — PubMed: esketamine depression outcomes
|
|
85
|
+
# Step 5: SYNTHESIZE — Compare evidence, note no direct
|
|
86
|
+
# head-to-head trials exist
|
|
87
|
+
# Step 6: CONCLUDE — Indirect comparison with caveats
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## Evidence Grading
|
|
91
|
+
|
|
92
|
+
```python
|
|
93
|
+
# GRADE methodology for evidence quality
|
|
94
|
+
for paper in result.papers[:5]:
|
|
95
|
+
print(f"\n{paper.title} ({paper.year})")
|
|
96
|
+
print(f" Design: {paper.study_design}")
|
|
97
|
+
print(f" Sample: {paper.sample_size}")
|
|
98
|
+
print(f" Grade: {paper.evidence_grade}")
|
|
99
|
+
print(f" Risk of bias: {paper.risk_of_bias}")
|
|
100
|
+
|
|
101
|
+
# Aggregate evidence
|
|
102
|
+
print(f"\nOverall certainty: {result.certainty}")
|
|
103
|
+
# HIGH / MODERATE / LOW / VERY LOW
|
|
104
|
+
print(f"Recommendation: {result.recommendation}")
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Medical Search Configuration
|
|
108
|
+
|
|
109
|
+
```python
|
|
110
|
+
researcher = MedResearcherR1(
|
|
111
|
+
search_config={
|
|
112
|
+
"pubmed": {
|
|
113
|
+
"use_mesh": True,
|
|
114
|
+
"date_range": "2019/01/01:2025/12/31",
|
|
115
|
+
"article_types": [
|
|
116
|
+
"Randomized Controlled Trial",
|
|
117
|
+
"Meta-Analysis",
|
|
118
|
+
"Systematic Review",
|
|
119
|
+
],
|
|
120
|
+
},
|
|
121
|
+
"clinical_trials": {
|
|
122
|
+
"status": ["Completed", "Active, not recruiting"],
|
|
123
|
+
"phase": ["Phase 3", "Phase 4"],
|
|
124
|
+
},
|
|
125
|
+
},
|
|
126
|
+
reasoning_config={
|
|
127
|
+
"max_chain_length": 10,
|
|
128
|
+
"reflection_enabled": True,
|
|
129
|
+
"uncertainty_explicit": True,
|
|
130
|
+
},
|
|
131
|
+
)
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## Clinical Use Cases
|
|
135
|
+
|
|
136
|
+
1. **Clinical queries**: Evidence-based answers to medical questions
|
|
137
|
+
2. **Drug comparison**: Indirect comparison when no head-to-head data
|
|
138
|
+
3. **Guideline review**: Check evidence supporting clinical guidelines
|
|
139
|
+
4. **Case analysis**: Literature context for unusual presentations
|
|
140
|
+
5. **Grant proposals**: Evidence landscape for research funding
|
|
141
|
+
|
|
142
|
+
## References
|
|
143
|
+
|
|
144
|
+
- [MedResearcher-R1 GitHub](https://github.com/AQ-MedAI/MedResearcher-R1)
|
|
145
|
+
- [PubMed E-utilities](https://www.ncbi.nlm.nih.gov/books/NBK25501/)
|
|
146
|
+
- [GRADE Handbook](https://gdt.gradepro.org/app/handbook/handbook.html)
|
|
@@ -0,0 +1,345 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: medgeclaw-guide
|
|
3
|
+
description: "AI research assistant for biomedicine, RNA-seq, and drug discovery"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "💊"
|
|
7
|
+
category: "domains"
|
|
8
|
+
subcategory: "biomedical"
|
|
9
|
+
keywords: ["biomedicine", "RNA-seq", "drug discovery", "clinical AI", "medical NLP", "bioinformatics"]
|
|
10
|
+
source: "https://github.com/biomedical-ai/resources"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# MedgeClaw Guide
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
MedgeClaw is a conceptual framework for AI-powered biomedical research assistance, integrating natural language processing for medical literature, computational biology pipelines, and drug discovery workflows. The name reflects the integration of Medical knowledge Edge (cutting-edge biomedical AI) with the Claw agent pattern for autonomous research execution.
|
|
18
|
+
|
|
19
|
+
Biomedical research is uniquely suited for AI augmentation because it generates massive, heterogeneous data -- genomic sequences, clinical records, imaging data, molecular structures, and published literature -- that exceeds the capacity of individual researchers to synthesize. AI systems that can navigate across these data types, identify patterns, and suggest hypotheses accelerate the pace of discovery.
|
|
20
|
+
|
|
21
|
+
This guide covers the key computational methods in biomedical AI research: medical NLP for literature mining, RNA-seq analysis pipelines, drug discovery computational workflows, and the integration patterns that connect these components into coherent research workflows. The focus is on methods that are reproducible, validated, and suitable for publication in biomedical journals.
|
|
22
|
+
|
|
23
|
+
## Medical NLP and Literature Mining
|
|
24
|
+
|
|
25
|
+
### Biomedical Named Entity Recognition
|
|
26
|
+
|
|
27
|
+
```python
|
|
28
|
+
# Biomedical NER using scispaCy
|
|
29
|
+
import scispacy
|
|
30
|
+
import spacy
|
|
31
|
+
from scispacy.linking import EntityLinker
|
|
32
|
+
|
|
33
|
+
# Load biomedical NER model
|
|
34
|
+
nlp = spacy.load("en_ner_bionlp13cg_md")
|
|
35
|
+
|
|
36
|
+
# Add UMLS entity linker for concept normalization
|
|
37
|
+
nlp.add_pipe("scispacy_linker", config={
|
|
38
|
+
"resolve_abbreviations": True,
|
|
39
|
+
"linker_name": "umls",
|
|
40
|
+
})
|
|
41
|
+
|
|
42
|
+
def extract_biomedical_entities(text: str) -> dict:
|
|
43
|
+
"""
|
|
44
|
+
Extract and normalize biomedical entities from text.
|
|
45
|
+
Returns genes, chemicals, diseases, and their UMLS mappings.
|
|
46
|
+
"""
|
|
47
|
+
doc = nlp(text)
|
|
48
|
+
entities = {
|
|
49
|
+
"genes": [],
|
|
50
|
+
"chemicals": [],
|
|
51
|
+
"diseases": [],
|
|
52
|
+
"other": [],
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
category_map = {
|
|
56
|
+
"GENE_OR_GENE_PRODUCT": "genes",
|
|
57
|
+
"SIMPLE_CHEMICAL": "chemicals",
|
|
58
|
+
"CANCER": "diseases",
|
|
59
|
+
"ORGAN": "other",
|
|
60
|
+
"CELL": "other",
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
for ent in doc.ents:
|
|
64
|
+
category = category_map.get(ent.label_, "other")
|
|
65
|
+
entity_info = {
|
|
66
|
+
"text": ent.text,
|
|
67
|
+
"label": ent.label_,
|
|
68
|
+
"start": ent.start_char,
|
|
69
|
+
"end": ent.end_char,
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
# Add UMLS links if available
|
|
73
|
+
if hasattr(ent, "_") and hasattr(ent._, "kb_ents"):
|
|
74
|
+
if ent._.kb_ents:
|
|
75
|
+
top_link = ent._.kb_ents[0]
|
|
76
|
+
entity_info["umls_cui"] = top_link[0]
|
|
77
|
+
entity_info["confidence"] = round(top_link[1], 3)
|
|
78
|
+
|
|
79
|
+
entities[category].append(entity_info)
|
|
80
|
+
|
|
81
|
+
return entities
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Systematic Literature Search Pipeline
|
|
85
|
+
|
|
86
|
+
```python
|
|
87
|
+
from Bio import Entrez
|
|
88
|
+
import time
|
|
89
|
+
|
|
90
|
+
Entrez.email = "researcher@university.edu"
|
|
91
|
+
|
|
92
|
+
def systematic_pubmed_search(
|
|
93
|
+
query: str,
|
|
94
|
+
max_results: int = 1000,
|
|
95
|
+
date_range: tuple = ("2020/01/01", "2025/12/31"),
|
|
96
|
+
) -> list:
|
|
97
|
+
"""
|
|
98
|
+
Conduct a systematic PubMed search with structured result extraction.
|
|
99
|
+
Suitable for systematic reviews and meta-analyses.
|
|
100
|
+
"""
|
|
101
|
+
# Step 1: Search PubMed
|
|
102
|
+
handle = Entrez.esearch(
|
|
103
|
+
db="pubmed",
|
|
104
|
+
term=query,
|
|
105
|
+
retmax=max_results,
|
|
106
|
+
datetype="pdat",
|
|
107
|
+
mindate=date_range[0],
|
|
108
|
+
maxdate=date_range[1],
|
|
109
|
+
sort="relevance",
|
|
110
|
+
)
|
|
111
|
+
results = Entrez.read(handle)
|
|
112
|
+
handle.close()
|
|
113
|
+
|
|
114
|
+
pmids = results["IdList"]
|
|
115
|
+
print(f"Found {results['Count']} results, retrieving {len(pmids)}")
|
|
116
|
+
|
|
117
|
+
# Step 2: Fetch article details in batches
|
|
118
|
+
articles = []
|
|
119
|
+
batch_size = 100
|
|
120
|
+
for i in range(0, len(pmids), batch_size):
|
|
121
|
+
batch = pmids[i:i + batch_size]
|
|
122
|
+
handle = Entrez.efetch(
|
|
123
|
+
db="pubmed", id=",".join(batch),
|
|
124
|
+
rettype="xml", retmode="xml"
|
|
125
|
+
)
|
|
126
|
+
records = Entrez.read(handle)
|
|
127
|
+
handle.close()
|
|
128
|
+
|
|
129
|
+
for article in records["PubmedArticle"]:
|
|
130
|
+
medline = article["MedlineCitation"]
|
|
131
|
+
art = medline["Article"]
|
|
132
|
+
articles.append({
|
|
133
|
+
"pmid": str(medline["PMID"]),
|
|
134
|
+
"title": art["ArticleTitle"],
|
|
135
|
+
"abstract": art.get("Abstract", {}).get("AbstractText", [""])[0],
|
|
136
|
+
"journal": art["Journal"]["Title"],
|
|
137
|
+
"year": art["Journal"]["JournalIssue"]["PubDate"].get("Year", "N/A"),
|
|
138
|
+
"mesh_terms": [
|
|
139
|
+
d["DescriptorName"]
|
|
140
|
+
for d in medline.get("MeshHeadingList", [])
|
|
141
|
+
] if "MeshHeadingList" in medline else [],
|
|
142
|
+
})
|
|
143
|
+
|
|
144
|
+
time.sleep(0.4) # Respect NCBI rate limits
|
|
145
|
+
|
|
146
|
+
return articles
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
## RNA-seq Analysis
|
|
150
|
+
|
|
151
|
+
### Complete DESeq2 Workflow
|
|
152
|
+
|
|
153
|
+
```r
|
|
154
|
+
# Complete RNA-seq differential expression analysis with DESeq2
|
|
155
|
+
# This is the standard workflow for biomedical RNA-seq papers
|
|
156
|
+
|
|
157
|
+
library(DESeq2)
|
|
158
|
+
library(ggplot2)
|
|
159
|
+
library(EnhancedVolcano)
|
|
160
|
+
library(clusterProfiler)
|
|
161
|
+
library(org.Hs.eg.db)
|
|
162
|
+
|
|
163
|
+
# --- 1. Load count matrix and metadata ---
|
|
164
|
+
counts <- read.csv("raw_counts.csv", row.names = 1)
|
|
165
|
+
coldata <- read.csv("sample_info.csv", row.names = 1)
|
|
166
|
+
|
|
167
|
+
# Verify sample order matches
|
|
168
|
+
stopifnot(all(colnames(counts) == rownames(coldata)))
|
|
169
|
+
|
|
170
|
+
# --- 2. Create DESeq2 object ---
|
|
171
|
+
dds <- DESeqDataSetFromMatrix(
|
|
172
|
+
countData = counts,
|
|
173
|
+
colData = coldata,
|
|
174
|
+
design = ~ condition # Simple two-group comparison
|
|
175
|
+
)
|
|
176
|
+
|
|
177
|
+
# Pre-filtering: remove low-count genes
|
|
178
|
+
keep <- rowSums(counts(dds)) >= 10
|
|
179
|
+
dds <- dds[keep, ]
|
|
180
|
+
|
|
181
|
+
# --- 3. Run differential expression ---
|
|
182
|
+
dds <- DESeq(dds)
|
|
183
|
+
res <- results(dds, contrast = c("condition", "treatment", "control"),
|
|
184
|
+
alpha = 0.05)
|
|
185
|
+
|
|
186
|
+
# Summary
|
|
187
|
+
summary(res)
|
|
188
|
+
|
|
189
|
+
# --- 4. Results with shrinkage (recommended for visualization) ---
|
|
190
|
+
res_shrunk <- lfcShrink(dds, coef = "condition_treatment_vs_control",
|
|
191
|
+
type = "apeglm")
|
|
192
|
+
|
|
193
|
+
# --- 5. Export significant genes ---
|
|
194
|
+
sig_genes <- subset(res, padj < 0.05 & abs(log2FoldChange) > 1)
|
|
195
|
+
write.csv(as.data.frame(sig_genes), "significant_genes.csv")
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
### Quality Control Metrics
|
|
199
|
+
|
|
200
|
+
| Metric | Expected Range | Concern If |
|
|
201
|
+
|--------|---------------|------------|
|
|
202
|
+
| Total reads | 20-50M per sample | < 10M |
|
|
203
|
+
| Mapping rate | > 80% | < 70% |
|
|
204
|
+
| rRNA contamination | < 5% | > 10% |
|
|
205
|
+
| GC content | ~42% (human) | Bimodal distribution |
|
|
206
|
+
| Duplication rate | < 30% (mRNA) | > 50% |
|
|
207
|
+
| Gene body coverage | Uniform 5' to 3' | Strong 3' bias |
|
|
208
|
+
| PCA | Samples cluster by condition | Outlier samples |
|
|
209
|
+
|
|
210
|
+
## Drug Discovery Computational Methods
|
|
211
|
+
|
|
212
|
+
### Virtual Screening Pipeline
|
|
213
|
+
|
|
214
|
+
```python
|
|
215
|
+
# Molecular docking workflow using RDKit and AutoDock Vina
|
|
216
|
+
from rdkit import Chem
|
|
217
|
+
from rdkit.Chem import AllChem, Descriptors, Lipinski
|
|
218
|
+
import subprocess
|
|
219
|
+
|
|
220
|
+
def prepare_ligands(smiles_list: list) -> list:
|
|
221
|
+
"""
|
|
222
|
+
Prepare ligands for virtual screening.
|
|
223
|
+
Apply Lipinski's Rule of Five and generate 3D conformers.
|
|
224
|
+
"""
|
|
225
|
+
prepared = []
|
|
226
|
+
for smiles in smiles_list:
|
|
227
|
+
mol = Chem.MolFromSmiles(smiles)
|
|
228
|
+
if mol is None:
|
|
229
|
+
continue
|
|
230
|
+
|
|
231
|
+
# Lipinski's Rule of Five filter
|
|
232
|
+
mw = Descriptors.MolWt(mol)
|
|
233
|
+
logp = Descriptors.MolLogP(mol)
|
|
234
|
+
hbd = Descriptors.NumHDonors(mol)
|
|
235
|
+
hba = Descriptors.NumHAcceptors(mol)
|
|
236
|
+
|
|
237
|
+
if mw > 500 or logp > 5 or hbd > 5 or hba > 10:
|
|
238
|
+
continue # Fails Ro5
|
|
239
|
+
|
|
240
|
+
# Generate 3D conformer
|
|
241
|
+
mol_h = Chem.AddHs(mol)
|
|
242
|
+
AllChem.EmbedMolecule(mol_h, AllChem.ETKDG())
|
|
243
|
+
AllChem.MMFFOptimizeMolecule(mol_h)
|
|
244
|
+
|
|
245
|
+
prepared.append({
|
|
246
|
+
"smiles": smiles,
|
|
247
|
+
"mol": mol_h,
|
|
248
|
+
"mw": round(mw, 2),
|
|
249
|
+
"logp": round(logp, 2),
|
|
250
|
+
"hbd": hbd,
|
|
251
|
+
"hba": hba,
|
|
252
|
+
})
|
|
253
|
+
|
|
254
|
+
return prepared
|
|
255
|
+
|
|
256
|
+
def compute_admet_properties(mol) -> dict:
|
|
257
|
+
"""Compute ADMET-relevant molecular descriptors."""
|
|
258
|
+
return {
|
|
259
|
+
"tpsa": round(Descriptors.TPSA(mol), 2), # Topological polar surface area
|
|
260
|
+
"rotatable_bonds": Descriptors.NumRotatableBonds(mol),
|
|
261
|
+
"aromatic_rings": Descriptors.NumAromaticRings(mol),
|
|
262
|
+
"fraction_csp3": round(Descriptors.FractionCSP3(mol), 3), # Drug-likeness
|
|
263
|
+
"qed": round(Descriptors.qed(mol), 3), # Quantitative drug-likeness
|
|
264
|
+
}
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
### Target-Disease Association Analysis
|
|
268
|
+
|
|
269
|
+
```python
|
|
270
|
+
def query_open_targets(target_id: str, disease_id: str) -> dict:
|
|
271
|
+
"""
|
|
272
|
+
Query Open Targets Platform for target-disease association evidence.
|
|
273
|
+
"""
|
|
274
|
+
import requests
|
|
275
|
+
|
|
276
|
+
query = """
|
|
277
|
+
query targetDiseaseAssociation($target: String!, $disease: String!) {
|
|
278
|
+
disease(efoId: $disease) {
|
|
279
|
+
name
|
|
280
|
+
associatedTargets(Bs: [$target]) {
|
|
281
|
+
rows {
|
|
282
|
+
target { approvedSymbol }
|
|
283
|
+
score
|
|
284
|
+
datatypeScores {
|
|
285
|
+
componentId: id
|
|
286
|
+
score
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
"""
|
|
293
|
+
|
|
294
|
+
response = requests.post(
|
|
295
|
+
"https://api.platform.opentargets.org/api/v4/graphql",
|
|
296
|
+
json={"query": query, "variables": {"target": target_id, "disease": disease_id}},
|
|
297
|
+
)
|
|
298
|
+
|
|
299
|
+
return response.json()
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
## Clinical AI Applications
|
|
303
|
+
|
|
304
|
+
### Clinical NLP Patterns
|
|
305
|
+
|
|
306
|
+
```
|
|
307
|
+
Common clinical NLP tasks for research:
|
|
308
|
+
|
|
309
|
+
1. CLINICAL TEXT DE-IDENTIFICATION
|
|
310
|
+
- Remove PHI (Protected Health Information)
|
|
311
|
+
- Tools: Philter, NLM Scrubber, custom regex + NER
|
|
312
|
+
- Validation: Must achieve >95% recall for PHI
|
|
313
|
+
|
|
314
|
+
2. CLINICAL CODING
|
|
315
|
+
- Assign ICD-10, CPT, SNOMED-CT codes to clinical notes
|
|
316
|
+
- Approaches: Rule-based, ML classification, LLM extraction
|
|
317
|
+
- Evaluation: Precision/recall per code family
|
|
318
|
+
|
|
319
|
+
3. RELATION EXTRACTION
|
|
320
|
+
- Drug-disease, drug-adverse event, gene-disease relationships
|
|
321
|
+
- From clinical notes, discharge summaries, pathology reports
|
|
322
|
+
- Output: Knowledge graphs for downstream analysis
|
|
323
|
+
|
|
324
|
+
4. TEMPORAL INFORMATION EXTRACTION
|
|
325
|
+
- Disease onset, treatment timeline, outcome timing
|
|
326
|
+
- Critical for longitudinal studies and survival analysis
|
|
327
|
+
- Tools: SUTime, HeidelTime, custom models
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
## Best Practices
|
|
331
|
+
|
|
332
|
+
- **Validate AI predictions experimentally.** Computational predictions are hypotheses until confirmed in the lab.
|
|
333
|
+
- **Use standard file formats.** FASTQ for sequencing, SDF/MOL2 for molecules, FASTA for sequences, VCF for variants.
|
|
334
|
+
- **Follow FAIR data principles.** Findable, Accessible, Interoperable, Reusable data management.
|
|
335
|
+
- **De-identify clinical data before any AI processing.** HIPAA and GDPR compliance is non-negotiable.
|
|
336
|
+
- **Report computational methods in full detail.** Software versions, parameters, random seeds, and hardware specs.
|
|
337
|
+
- **Pre-register clinical AI studies.** Use SPIRIT-AI or CONSORT-AI reporting guidelines.
|
|
338
|
+
|
|
339
|
+
## References
|
|
340
|
+
|
|
341
|
+
- [DESeq2](https://bioconductor.org/packages/DESeq2/) -- Standard RNA-seq differential expression tool
|
|
342
|
+
- [scispaCy](https://allenai.github.io/scispacy/) -- Biomedical NLP models for spaCy
|
|
343
|
+
- [Open Targets Platform](https://platform.opentargets.org/) -- Target-disease association evidence
|
|
344
|
+
- [RDKit](https://www.rdkit.org/) -- Cheminformatics toolkit
|
|
345
|
+
- Love, M. I., Huber, W., & Anders, S. (2014). Moderated estimation of fold change and dispersion for RNA-seq data with DESeq2. Genome Biology, 15, 550.
|