@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,284 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: concept-map-generator
|
|
3
|
+
description: "Generate structured concept maps from academic texts automatically"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "brain"
|
|
7
|
+
category: "tools"
|
|
8
|
+
subcategory: "knowledge-graph"
|
|
9
|
+
keywords: ["concept map", "knowledge representation", "text mining", "ontology", "semantic extraction", "mind map"]
|
|
10
|
+
source: "wentor-research-plugins"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Concept Map Generator
|
|
14
|
+
|
|
15
|
+
A skill for automatically generating structured concept maps from academic texts, lecture notes, and research papers. Covers concept extraction using NLP techniques, relationship identification, hierarchical organization, and export to visual formats. Concept maps differ from mind maps in that they explicitly label relationships between concepts, making them more suitable for representing scientific knowledge.
|
|
16
|
+
|
|
17
|
+
## Concept Map Fundamentals
|
|
18
|
+
|
|
19
|
+
### Structure of a Concept Map
|
|
20
|
+
|
|
21
|
+
A concept map consists of three elements: concepts (nodes), linking phrases (labeled edges), and propositions (concept-link-concept triples that form meaningful statements).
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
Concept Map Elements:
|
|
25
|
+
|
|
26
|
+
Concept: A perceived regularity or pattern designated by a label.
|
|
27
|
+
Examples: "DNA replication", "enzyme", "natural selection"
|
|
28
|
+
Representation: boxes or ovals containing short noun phrases
|
|
29
|
+
|
|
30
|
+
Linking Phrase: Words that connect two concepts to form a proposition.
|
|
31
|
+
Examples: "is catalyzed by", "requires", "leads to", "is a type of"
|
|
32
|
+
Representation: labeled arrows between concept nodes
|
|
33
|
+
|
|
34
|
+
Proposition: A meaningful statement formed by two concepts and a link.
|
|
35
|
+
Example: [DNA replication] --requires--> [DNA polymerase]
|
|
36
|
+
This reads: "DNA replication requires DNA polymerase"
|
|
37
|
+
|
|
38
|
+
Cross-links: Connections between concepts in different domains or
|
|
39
|
+
branches of the map, showing integrative understanding.
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### Concept Maps vs Mind Maps
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
Feature Concept Map Mind Map
|
|
46
|
+
-------------- ------------------ ------------------
|
|
47
|
+
Structure Network (graph) Tree (hierarchical)
|
|
48
|
+
Relationships Labeled explicitly Implied by proximity
|
|
49
|
+
Root node May have multiple Single central topic
|
|
50
|
+
Cross-links Encouraged Rare
|
|
51
|
+
Best for Deep understanding Brainstorming
|
|
52
|
+
Scientific use Knowledge modeling Idea generation
|
|
53
|
+
Reading direction Follow arrow labels Center outward
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Automated Concept Extraction
|
|
57
|
+
|
|
58
|
+
### NLP Pipeline for Extraction
|
|
59
|
+
|
|
60
|
+
```python
|
|
61
|
+
import spacy
|
|
62
|
+
|
|
63
|
+
def extract_concepts(text, nlp_model="en_core_web_sm"):
|
|
64
|
+
"""
|
|
65
|
+
Extract candidate concepts from academic text using NLP.
|
|
66
|
+
|
|
67
|
+
Strategy:
|
|
68
|
+
1. Extract noun phrases as concept candidates
|
|
69
|
+
2. Filter by frequency and specificity
|
|
70
|
+
3. Merge overlapping spans
|
|
71
|
+
4. Rank by TF-IDF relevance
|
|
72
|
+
"""
|
|
73
|
+
nlp = spacy.load(nlp_model)
|
|
74
|
+
doc = nlp(text)
|
|
75
|
+
|
|
76
|
+
# Extract noun phrases
|
|
77
|
+
candidates = []
|
|
78
|
+
for chunk in doc.noun_chunks:
|
|
79
|
+
# Remove determiners and leading adjectives for cleaner concepts
|
|
80
|
+
clean = chunk.text.strip()
|
|
81
|
+
if len(clean.split()) <= 4: # Keep manageable length
|
|
82
|
+
candidates.append(clean.lower())
|
|
83
|
+
|
|
84
|
+
# Count frequencies
|
|
85
|
+
from collections import Counter
|
|
86
|
+
freq = Counter(candidates)
|
|
87
|
+
|
|
88
|
+
# Filter: keep concepts mentioned at least twice
|
|
89
|
+
concepts = [c for c, count in freq.most_common() if count >= 2]
|
|
90
|
+
|
|
91
|
+
return concepts
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Relationship Extraction
|
|
95
|
+
|
|
96
|
+
```python
|
|
97
|
+
def extract_relationships(text, concepts, nlp_model="en_core_web_sm"):
|
|
98
|
+
"""
|
|
99
|
+
Extract relationships between concepts using dependency parsing.
|
|
100
|
+
|
|
101
|
+
Identifies verb phrases connecting known concepts in the same sentence.
|
|
102
|
+
"""
|
|
103
|
+
nlp = spacy.load(nlp_model)
|
|
104
|
+
doc = nlp(text)
|
|
105
|
+
concept_set = set(concepts)
|
|
106
|
+
|
|
107
|
+
triples = []
|
|
108
|
+
for sent in doc.sents:
|
|
109
|
+
sent_text = sent.text.lower()
|
|
110
|
+
# Find which concepts appear in this sentence
|
|
111
|
+
found = [c for c in concept_set if c in sent_text]
|
|
112
|
+
|
|
113
|
+
if len(found) >= 2:
|
|
114
|
+
# Extract the verb connecting them
|
|
115
|
+
verbs = [token.lemma_ for token in sent
|
|
116
|
+
if token.pos_ == "VERB"]
|
|
117
|
+
if verbs:
|
|
118
|
+
for i in range(len(found)):
|
|
119
|
+
for j in range(i + 1, len(found)):
|
|
120
|
+
triples.append({
|
|
121
|
+
"source": found[i],
|
|
122
|
+
"target": found[j],
|
|
123
|
+
"relation": verbs[0],
|
|
124
|
+
"sentence": sent.text
|
|
125
|
+
})
|
|
126
|
+
|
|
127
|
+
return triples
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
## Hierarchical Organization
|
|
131
|
+
|
|
132
|
+
### Building Concept Hierarchies
|
|
133
|
+
|
|
134
|
+
Academic concept maps benefit from hierarchical organization, placing the most general, inclusive concepts at the top and progressively more specific concepts below.
|
|
135
|
+
|
|
136
|
+
```
|
|
137
|
+
Hierarchy Construction Algorithm:
|
|
138
|
+
|
|
139
|
+
1. Identify superordinate concepts:
|
|
140
|
+
- Concepts that appear in titles, abstracts, section headings
|
|
141
|
+
- Concepts with the most outgoing relationships
|
|
142
|
+
- Concepts that subsume other concepts (hypernyms)
|
|
143
|
+
|
|
144
|
+
2. Identify subordinate concepts:
|
|
145
|
+
- Concepts that are instances or types of superordinates
|
|
146
|
+
- Concepts with high specificity (long noun phrases)
|
|
147
|
+
- Concepts that appear only in methods/results sections
|
|
148
|
+
|
|
149
|
+
3. Assign levels:
|
|
150
|
+
Level 0: Domain (e.g., "machine learning")
|
|
151
|
+
Level 1: Subdomains (e.g., "supervised learning", "unsupervised learning")
|
|
152
|
+
Level 2: Methods (e.g., "random forests", "k-means clustering")
|
|
153
|
+
Level 3: Details (e.g., "Gini impurity", "elbow method")
|
|
154
|
+
|
|
155
|
+
4. Add cross-links between branches:
|
|
156
|
+
e.g., "random forests" --uses--> "bootstrap sampling"
|
|
157
|
+
(links supervised learning to statistical methods)
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
### Strategies for Academic Papers
|
|
161
|
+
|
|
162
|
+
```
|
|
163
|
+
Input: Research paper
|
|
164
|
+
Output: Concept map organized by paper structure
|
|
165
|
+
|
|
166
|
+
Section-Based Extraction:
|
|
167
|
+
Introduction -> Key concepts, research questions, theoretical framework
|
|
168
|
+
Methods -> Methodological concepts, tools, techniques, variables
|
|
169
|
+
Results -> Findings, measurements, statistical outcomes
|
|
170
|
+
Discussion -> Interpretations, implications, limitations
|
|
171
|
+
|
|
172
|
+
Connection Types in Academic Maps:
|
|
173
|
+
"is defined as" - definitional relationships
|
|
174
|
+
"is measured by" - operationalization
|
|
175
|
+
"causes / leads to" - causal relationships
|
|
176
|
+
"is correlated with" - associative relationships
|
|
177
|
+
"is a type of" - taxonomic relationships
|
|
178
|
+
"is part of" - mereological relationships
|
|
179
|
+
"contradicts" - conflicting findings
|
|
180
|
+
"extends" - building on prior work
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
## Export and Visualization
|
|
184
|
+
|
|
185
|
+
### Output Formats
|
|
186
|
+
|
|
187
|
+
```python
|
|
188
|
+
def export_to_graphml(concepts, relationships, output_path):
|
|
189
|
+
"""
|
|
190
|
+
Export concept map to GraphML format for Gephi, yEd, or Cytoscape.
|
|
191
|
+
"""
|
|
192
|
+
import networkx as nx
|
|
193
|
+
|
|
194
|
+
G = nx.DiGraph()
|
|
195
|
+
|
|
196
|
+
for concept in concepts:
|
|
197
|
+
G.add_node(concept, label=concept)
|
|
198
|
+
|
|
199
|
+
for rel in relationships:
|
|
200
|
+
G.add_edge(
|
|
201
|
+
rel["source"],
|
|
202
|
+
rel["target"],
|
|
203
|
+
label=rel["relation"]
|
|
204
|
+
)
|
|
205
|
+
|
|
206
|
+
nx.write_graphml(G, output_path)
|
|
207
|
+
return output_path
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
def export_to_cmap(concepts, relationships, output_path):
|
|
211
|
+
"""
|
|
212
|
+
Export to CXL format for CmapTools (IHMC).
|
|
213
|
+
CmapTools is the standard concept mapping software in education.
|
|
214
|
+
"""
|
|
215
|
+
# CXL is an XML format specific to CmapTools
|
|
216
|
+
header = '<?xml version="1.0" encoding="UTF-8"?>\n'
|
|
217
|
+
header += '<cmap xmlns="http://cmap.ihmc.us/xml/cmap/">\n'
|
|
218
|
+
|
|
219
|
+
body = ' <map>\n'
|
|
220
|
+
for i, concept in enumerate(concepts):
|
|
221
|
+
body += f' <concept id="c{i}" label="{concept}"/>\n'
|
|
222
|
+
|
|
223
|
+
for j, rel in enumerate(relationships):
|
|
224
|
+
src_id = concepts.index(rel["source"])
|
|
225
|
+
tgt_id = concepts.index(rel["target"])
|
|
226
|
+
body += (
|
|
227
|
+
f' <connection id="conn{j}" '
|
|
228
|
+
f'from-id="c{src_id}" to-id="c{tgt_id}" '
|
|
229
|
+
f'label="{rel["relation"]}"/>\n'
|
|
230
|
+
)
|
|
231
|
+
|
|
232
|
+
body += ' </map>\n'
|
|
233
|
+
footer = '</cmap>\n'
|
|
234
|
+
|
|
235
|
+
with open(output_path, "w") as f:
|
|
236
|
+
f.write(header + body + footer)
|
|
237
|
+
|
|
238
|
+
return output_path
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
### Recommended Tools
|
|
242
|
+
|
|
243
|
+
```
|
|
244
|
+
CmapTools (IHMC):
|
|
245
|
+
- Free desktop application specifically designed for concept maps
|
|
246
|
+
- Collaborative editing, cloud hosting
|
|
247
|
+
- Export: CXL, image, PDF, web page
|
|
248
|
+
- Best for: Educational concept maps, collaborative projects
|
|
249
|
+
|
|
250
|
+
yEd Graph Editor:
|
|
251
|
+
- Free desktop application with auto-layout algorithms
|
|
252
|
+
- Import: GraphML, Excel, CSV
|
|
253
|
+
- Hierarchical, organic, circular layouts
|
|
254
|
+
- Best for: Large concept maps needing automatic layout
|
|
255
|
+
|
|
256
|
+
Mermaid.js (text-based):
|
|
257
|
+
- Embed concept maps in Markdown documents
|
|
258
|
+
- Version-controllable (plain text)
|
|
259
|
+
- Best for: Documentation, README files, lab notebooks
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
## Quality Criteria for Academic Concept Maps
|
|
263
|
+
|
|
264
|
+
```
|
|
265
|
+
Evaluation Rubric:
|
|
266
|
+
|
|
267
|
+
Comprehensiveness: Does the map capture the key concepts?
|
|
268
|
+
- All major concepts from the source text should appear
|
|
269
|
+
- No important relationships should be missing
|
|
270
|
+
|
|
271
|
+
Accuracy: Are the propositions correct?
|
|
272
|
+
- Each concept-link-concept triple should be factually accurate
|
|
273
|
+
- Linking phrases should precisely describe the relationship
|
|
274
|
+
|
|
275
|
+
Hierarchy: Is the map well-organized?
|
|
276
|
+
- Most general concepts at top, specific at bottom
|
|
277
|
+
- Logical grouping of related concepts
|
|
278
|
+
|
|
279
|
+
Cross-links: Does the map show integrative understanding?
|
|
280
|
+
- Links between different branches demonstrate deep understanding
|
|
281
|
+
- Cross-links are the most valuable part of a concept map
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
Concept maps serve as both learning tools and knowledge artifacts. In research, they help teams align on shared understanding of complex domains, identify knowledge gaps, and communicate theoretical frameworks to collaborators and reviewers.
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: graphiti-guide
|
|
3
|
+
description: "Build real-time knowledge graphs for AI agents using Graphiti by Zep"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "🕸"
|
|
7
|
+
category: "tools"
|
|
8
|
+
subcategory: "knowledge-graph"
|
|
9
|
+
keywords: ["knowledge-graph", "ai-agents", "temporal-graphs", "neo4j", "memory", "entity-extraction"]
|
|
10
|
+
source: "https://github.com/getzep/graphiti"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Graphiti Guide
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
Graphiti is an open-source framework for building and querying dynamic, temporally-aware knowledge graphs designed specifically for AI agent applications. Developed by Zep, Graphiti enables agents to maintain persistent, structured memory that evolves over time, capturing entities, relationships, and facts extracted from conversational and documentary sources.
|
|
18
|
+
|
|
19
|
+
Traditional knowledge graphs are static structures that require manual curation and batch updates. Graphiti takes a fundamentally different approach: it incrementally builds and updates the graph in real-time as new information arrives, resolving contradictions, merging duplicate entities, and maintaining temporal metadata that tracks when facts were established and whether they remain current.
|
|
20
|
+
|
|
21
|
+
For academic researchers, Graphiti offers a powerful framework for constructing domain-specific knowledge graphs from research literature, experimental observations, and collaborative discussions. With over 23,000 GitHub stars, the project has gained significant traction in both the AI engineering and research communities as a practical bridge between unstructured text and structured, queryable knowledge.
|
|
22
|
+
|
|
23
|
+
## Installation and Setup
|
|
24
|
+
|
|
25
|
+
Install Graphiti via pip:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
pip install graphiti-core
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Graphiti requires a Neo4j database for graph storage. Set up Neo4j using Docker:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
docker run -d \
|
|
35
|
+
--name neo4j-graphiti \
|
|
36
|
+
-p 7474:7474 -p 7687:7687 \
|
|
37
|
+
-e NEO4J_AUTH=neo4j/your-password \
|
|
38
|
+
-e NEO4J_PLUGINS='["apoc"]' \
|
|
39
|
+
neo4j:5
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Configure environment variables for your LLM provider and Neo4j connection:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
export NEO4J_URI=bolt://localhost:7687
|
|
46
|
+
export NEO4J_USER=neo4j
|
|
47
|
+
export NEO4J_PASSWORD=$NEO4J_PASSWORD
|
|
48
|
+
export OPENAI_API_KEY=$OPENAI_API_KEY
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Initialize Graphiti in your Python project:
|
|
52
|
+
|
|
53
|
+
```python
|
|
54
|
+
from graphiti_core import Graphiti
|
|
55
|
+
|
|
56
|
+
graphiti = Graphiti(
|
|
57
|
+
neo4j_uri="bolt://localhost:7687",
|
|
58
|
+
neo4j_user="neo4j",
|
|
59
|
+
neo4j_password=$NEO4J_PASSWORD,
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
# Build indices for efficient querying
|
|
63
|
+
await graphiti.build_indices()
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Core Features
|
|
67
|
+
|
|
68
|
+
**Incremental Graph Construction**: Add episodes of information that are automatically parsed into entities and relationships:
|
|
69
|
+
|
|
70
|
+
```python
|
|
71
|
+
from graphiti_core.nodes import EpisodeType
|
|
72
|
+
from datetime import datetime
|
|
73
|
+
|
|
74
|
+
# Add a research observation
|
|
75
|
+
await graphiti.add_episode(
|
|
76
|
+
name="experiment_log_2026_03_10",
|
|
77
|
+
episode_body="""
|
|
78
|
+
The CRISPR-Cas9 experiment targeting gene BRCA1 in HeLa cells
|
|
79
|
+
showed 87% knockout efficiency. The guide RNA sequence gRNA-42
|
|
80
|
+
was designed using the Benchling platform. Dr. Chen supervised
|
|
81
|
+
the experiment, which used the protocol established in our
|
|
82
|
+
2025 Nature Methods paper.
|
|
83
|
+
""",
|
|
84
|
+
source=EpisodeType.text,
|
|
85
|
+
source_description="Lab notebook entry",
|
|
86
|
+
reference_time=datetime(2026, 3, 10),
|
|
87
|
+
)
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
Graphiti automatically extracts entities (BRCA1, HeLa cells, Dr. Chen, gRNA-42, Benchling), establishes relationships (gRNA-42 targets BRCA1, Dr. Chen supervised the experiment), and records temporal metadata.
|
|
91
|
+
|
|
92
|
+
**Temporal Awareness**: Knowledge graphs built with Graphiti track when facts were established and can reason about changes over time:
|
|
93
|
+
|
|
94
|
+
```python
|
|
95
|
+
# Add an update that modifies a previous fact
|
|
96
|
+
await graphiti.add_episode(
|
|
97
|
+
name="experiment_update",
|
|
98
|
+
episode_body="""
|
|
99
|
+
After reanalysis, the CRISPR knockout efficiency for BRCA1
|
|
100
|
+
in HeLa cells was revised to 82% due to off-target effects
|
|
101
|
+
detected in the secondary sequencing run.
|
|
102
|
+
""",
|
|
103
|
+
source=EpisodeType.text,
|
|
104
|
+
source_description="Updated analysis",
|
|
105
|
+
reference_time=datetime(2026, 3, 12),
|
|
106
|
+
)
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
The graph updates the efficiency value while maintaining the historical record, enabling queries about both current and historical states of knowledge.
|
|
110
|
+
|
|
111
|
+
**Semantic Search**: Query the knowledge graph using natural language:
|
|
112
|
+
|
|
113
|
+
```python
|
|
114
|
+
# Search for relevant entities and facts
|
|
115
|
+
results = await graphiti.search(
|
|
116
|
+
query="What is the knockout efficiency for BRCA1?",
|
|
117
|
+
num_results=5,
|
|
118
|
+
)
|
|
119
|
+
|
|
120
|
+
for result in results:
|
|
121
|
+
print(f"Fact: {result.fact}")
|
|
122
|
+
print(f"Source: {result.source_description}")
|
|
123
|
+
print(f"Valid from: {result.valid_at}")
|
|
124
|
+
print(f"Confidence: {result.score}")
|
|
125
|
+
print("---")
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
**Entity Resolution**: Graphiti handles duplicate and variant entity references automatically. References to "CRISPR-Cas9", "CRISPR", and "Cas9 system" are resolved to the appropriate entities based on context, reducing manual curation overhead.
|
|
129
|
+
|
|
130
|
+
## Research Workflow Integration
|
|
131
|
+
|
|
132
|
+
**Literature Knowledge Base**: Build a continuously growing knowledge graph from your reading notes and paper summaries:
|
|
133
|
+
|
|
134
|
+
```python
|
|
135
|
+
# Process a batch of paper summaries
|
|
136
|
+
papers = [
|
|
137
|
+
{
|
|
138
|
+
"title": "Attention Is All You Need",
|
|
139
|
+
"summary": "Vaswani et al. introduced the Transformer architecture...",
|
|
140
|
+
"date": datetime(2017, 6, 12),
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
"title": "BERT: Pre-training of Deep Bidirectional Transformers",
|
|
144
|
+
"summary": "Devlin et al. proposed BERT, a masked language model...",
|
|
145
|
+
"date": datetime(2018, 10, 11),
|
|
146
|
+
},
|
|
147
|
+
]
|
|
148
|
+
|
|
149
|
+
for paper in papers:
|
|
150
|
+
await graphiti.add_episode(
|
|
151
|
+
name=paper["title"],
|
|
152
|
+
episode_body=paper["summary"],
|
|
153
|
+
source=EpisodeType.text,
|
|
154
|
+
source_description=f"Paper summary: {paper['title']}",
|
|
155
|
+
reference_time=paper["date"],
|
|
156
|
+
)
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Then query across your entire reading history to find connections, trace the evolution of ideas, and identify foundational works.
|
|
160
|
+
|
|
161
|
+
**Experimental Knowledge Management**: Track the relationships between experiments, reagents, instruments, protocols, and personnel. This creates an institutional memory that survives personnel turnover and helps new lab members quickly understand the research context.
|
|
162
|
+
|
|
163
|
+
**Systematic Review Support**: As you read and annotate papers for a systematic review, feed summaries into Graphiti to build a structured representation of findings, methodologies, and populations studied. Query the resulting graph to identify patterns and gaps.
|
|
164
|
+
|
|
165
|
+
**Agent Memory for Research Assistants**: Integrate Graphiti as the memory backend for AI research assistants. The agent can accumulate knowledge from each interaction and provide increasingly informed responses:
|
|
166
|
+
|
|
167
|
+
```python
|
|
168
|
+
# Research agent with persistent memory
|
|
169
|
+
async def research_agent_step(user_query, conversation_context):
|
|
170
|
+
# Retrieve relevant knowledge
|
|
171
|
+
memories = await graphiti.search(
|
|
172
|
+
query=user_query,
|
|
173
|
+
num_results=10,
|
|
174
|
+
)
|
|
175
|
+
|
|
176
|
+
# Include memories in the agent context
|
|
177
|
+
context = format_memories(memories) + conversation_context
|
|
178
|
+
|
|
179
|
+
# Generate response using LLM
|
|
180
|
+
response = await generate_response(user_query, context)
|
|
181
|
+
|
|
182
|
+
# Store new knowledge from the interaction
|
|
183
|
+
await graphiti.add_episode(
|
|
184
|
+
name=f"conversation_{datetime.now().isoformat()}",
|
|
185
|
+
episode_body=f"User asked: {user_query}\nResponse: {response}",
|
|
186
|
+
source=EpisodeType.message,
|
|
187
|
+
source_description="Research assistant conversation",
|
|
188
|
+
reference_time=datetime.now(),
|
|
189
|
+
)
|
|
190
|
+
|
|
191
|
+
return response
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
## Graph Exploration and Maintenance
|
|
195
|
+
|
|
196
|
+
Access the Neo4j browser at `http://localhost:7474` to visually explore your knowledge graph. Use Cypher queries for advanced exploration:
|
|
197
|
+
|
|
198
|
+
```cypher
|
|
199
|
+
// Find all entities related to a specific gene
|
|
200
|
+
MATCH (e:Entity)-[r]-(connected)
|
|
201
|
+
WHERE e.name CONTAINS 'BRCA1'
|
|
202
|
+
RETURN e, r, connected
|
|
203
|
+
LIMIT 50
|
|
204
|
+
|
|
205
|
+
// Find the most connected entities (research hubs)
|
|
206
|
+
MATCH (e:Entity)-[r]-()
|
|
207
|
+
RETURN e.name, COUNT(r) AS connections
|
|
208
|
+
ORDER BY connections DESC
|
|
209
|
+
LIMIT 20
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
Periodically review and clean the graph to maintain quality. Remove incorrectly extracted entities and merge duplicates that automated resolution missed.
|
|
213
|
+
|
|
214
|
+
## References
|
|
215
|
+
|
|
216
|
+
- Graphiti repository: https://github.com/getzep/graphiti
|
|
217
|
+
- Zep documentation: https://docs.getzep.com/
|
|
218
|
+
- Neo4j graph database: https://neo4j.com/
|
|
219
|
+
- Temporal knowledge graph concepts in the project documentation
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mimir-memory-guide
|
|
3
|
+
description: "Semantic vector search memory bank for AI agents"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "📝"
|
|
7
|
+
category: "tools"
|
|
8
|
+
subcategory: "knowledge-graph"
|
|
9
|
+
keywords: ["agent memory", "vector search", "semantic memory", "MCP", "knowledge persistence", "embedding"]
|
|
10
|
+
source: "https://github.com/orneryd/Mimir"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Mimir Agent Memory Guide
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
Mimir is a semantic memory bank for AI agents that provides persistent, searchable memory via vector embeddings. Agents can store observations, learnings, and context that persists across sessions, and retrieve relevant memories using semantic search. Available as an MCP server for seamless integration with Claude Code, OpenClaw, and other agent frameworks.
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
# MCP server
|
|
23
|
+
npm install -g @mimir/mcp-server
|
|
24
|
+
|
|
25
|
+
# Python library
|
|
26
|
+
pip install mimir-memory
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## MCP Configuration
|
|
30
|
+
|
|
31
|
+
```json
|
|
32
|
+
{
|
|
33
|
+
"mcpServers": {
|
|
34
|
+
"mimir": {
|
|
35
|
+
"command": "npx",
|
|
36
|
+
"args": ["@mimir/mcp-server"],
|
|
37
|
+
"env": {
|
|
38
|
+
"MEMORY_PATH": "~/.mimir/memories",
|
|
39
|
+
"EMBEDDING_MODEL": "all-MiniLM-L6-v2"
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Core Operations
|
|
47
|
+
|
|
48
|
+
```python
|
|
49
|
+
from mimir import MemoryBank
|
|
50
|
+
|
|
51
|
+
bank = MemoryBank(
|
|
52
|
+
path="./agent_memory",
|
|
53
|
+
embedding_model="all-MiniLM-L6-v2",
|
|
54
|
+
)
|
|
55
|
+
|
|
56
|
+
# Store a memory
|
|
57
|
+
bank.store(
|
|
58
|
+
content="The project uses FastAPI with PostgreSQL. "
|
|
59
|
+
"Database migrations are managed with Alembic.",
|
|
60
|
+
metadata={
|
|
61
|
+
"type": "project_context",
|
|
62
|
+
"project": "wentor",
|
|
63
|
+
"timestamp": "2025-03-10",
|
|
64
|
+
},
|
|
65
|
+
)
|
|
66
|
+
|
|
67
|
+
# Semantic search
|
|
68
|
+
results = bank.search(
|
|
69
|
+
query="How does the database work?",
|
|
70
|
+
top_k=5,
|
|
71
|
+
)
|
|
72
|
+
for r in results:
|
|
73
|
+
print(f"[{r.score:.3f}] {r.content[:100]}...")
|
|
74
|
+
|
|
75
|
+
# Delete memory
|
|
76
|
+
bank.delete(memory_id=results[0].id)
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## MCP Tools
|
|
80
|
+
|
|
81
|
+
```markdown
|
|
82
|
+
### Available MCP Tools
|
|
83
|
+
- `store_memory(content, metadata)` — Store new memory
|
|
84
|
+
- `search_memory(query, limit)` — Semantic search
|
|
85
|
+
- `list_memories(filter)` — List by metadata filter
|
|
86
|
+
- `delete_memory(id)` — Remove specific memory
|
|
87
|
+
- `clear_memories(filter)` — Clear matching memories
|
|
88
|
+
|
|
89
|
+
### Usage in Agent Chat
|
|
90
|
+
"Remember that the API uses JWT tokens with 30-day expiry"
|
|
91
|
+
→ Stores as persistent memory
|
|
92
|
+
|
|
93
|
+
"What do you know about the authentication system?"
|
|
94
|
+
→ Searches memories, returns relevant stored context
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Memory Types
|
|
98
|
+
|
|
99
|
+
```python
|
|
100
|
+
# Structured memory categories
|
|
101
|
+
bank.store(
|
|
102
|
+
content="User prefers dark theme and minimal logging",
|
|
103
|
+
metadata={"type": "preference"},
|
|
104
|
+
)
|
|
105
|
+
|
|
106
|
+
bank.store(
|
|
107
|
+
content="Fixed bug: ECharts CSS vars don't work on Canvas",
|
|
108
|
+
metadata={"type": "lesson_learned", "topic": "echarts"},
|
|
109
|
+
)
|
|
110
|
+
|
|
111
|
+
bank.store(
|
|
112
|
+
content="Deploy script is at deploy/deploy.sh, "
|
|
113
|
+
"requires .credentials file",
|
|
114
|
+
metadata={"type": "project_knowledge"},
|
|
115
|
+
)
|
|
116
|
+
|
|
117
|
+
# Search by type
|
|
118
|
+
prefs = bank.search(
|
|
119
|
+
query="user preferences",
|
|
120
|
+
filter={"type": "preference"},
|
|
121
|
+
)
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## Use Cases
|
|
125
|
+
|
|
126
|
+
1. **Agent memory**: Persistent context across sessions
|
|
127
|
+
2. **Project knowledge**: Store and retrieve project facts
|
|
128
|
+
3. **Learning accumulation**: Build expertise over time
|
|
129
|
+
4. **Preference tracking**: Remember user preferences
|
|
130
|
+
5. **Research notes**: Searchable research observations
|
|
131
|
+
|
|
132
|
+
## References
|
|
133
|
+
|
|
134
|
+
- [Mimir GitHub](https://github.com/orneryd/Mimir)
|
|
135
|
+
- [MCP Specification](https://modelcontextprotocol.io/)
|