@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,162 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: zotero-markdb-connect-guide
|
|
3
|
+
description: "Sync Zotero references to Obsidian and Logseq markdown"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "🔗"
|
|
7
|
+
category: "tools"
|
|
8
|
+
subcategory: "knowledge-graph"
|
|
9
|
+
keywords: ["Zotero", "Obsidian", "Logseq", "markdown", "PKM", "literature notes"]
|
|
10
|
+
source: "https://github.com/daeh/zotero-markdb-connect"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Zotero MarkDB-Connect Guide
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
Zotero MarkDB-Connect bridges Zotero with Markdown-based knowledge management tools (Obsidian, Logseq). It creates and maintains bidirectional links between Zotero items and their corresponding Markdown literature notes, enabling seamless navigation between your reference manager and PKM system. Syncs metadata, annotations, and tags.
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
# Download .xpi from GitHub releases
|
|
23
|
+
# Zotero 7: Tools → Add-ons → Install Add-on From File
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Configuration
|
|
27
|
+
|
|
28
|
+
```markdown
|
|
29
|
+
### Settings (Edit → Preferences → MarkDB-Connect)
|
|
30
|
+
|
|
31
|
+
**Markdown Vault Path:**
|
|
32
|
+
- Point to your Obsidian vault or Logseq directory
|
|
33
|
+
- Example: ~/Documents/ObsidianVault/Literature/
|
|
34
|
+
|
|
35
|
+
**Note Template:**
|
|
36
|
+
- Customize the Markdown template for new literature notes
|
|
37
|
+
- Uses Zotero item fields as variables
|
|
38
|
+
|
|
39
|
+
**Sync Options:**
|
|
40
|
+
- Auto-create notes for new items
|
|
41
|
+
- Sync annotations to Markdown
|
|
42
|
+
- Bidirectional tag sync
|
|
43
|
+
- Update existing notes on item change
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Note Template
|
|
47
|
+
|
|
48
|
+
```markdown
|
|
49
|
+
<!-- Template for literature notes -->
|
|
50
|
+
---
|
|
51
|
+
title: "{{title}}"
|
|
52
|
+
authors: [{{authors}}]
|
|
53
|
+
year: {{year}}
|
|
54
|
+
doi: {{doi}}
|
|
55
|
+
citekey: {{citekey}}
|
|
56
|
+
tags: [{{tags}}]
|
|
57
|
+
zotero: {{zoteroSelectURI}}
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
# {{title}}
|
|
61
|
+
|
|
62
|
+
**Authors:** {{authors}}
|
|
63
|
+
**Year:** {{year}}
|
|
64
|
+
**Venue:** {{publicationTitle}}
|
|
65
|
+
**DOI:** [{{doi}}](https://doi.org/{{doi}})
|
|
66
|
+
|
|
67
|
+
## Abstract
|
|
68
|
+
{{abstractNote}}
|
|
69
|
+
|
|
70
|
+
## Annotations
|
|
71
|
+
{{annotations}}
|
|
72
|
+
|
|
73
|
+
## Key Takeaways
|
|
74
|
+
-
|
|
75
|
+
|
|
76
|
+
## Notes
|
|
77
|
+
-
|
|
78
|
+
|
|
79
|
+
## Connections
|
|
80
|
+
- Related: [[]]
|
|
81
|
+
- Builds on: [[]]
|
|
82
|
+
- Contradicts: [[]]
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Obsidian Integration
|
|
86
|
+
|
|
87
|
+
```markdown
|
|
88
|
+
### Folder Structure
|
|
89
|
+
ObsidianVault/
|
|
90
|
+
├── Literature/ # Auto-generated literature notes
|
|
91
|
+
│ ├── vaswani2017.md
|
|
92
|
+
│ ├── devlin2019.md
|
|
93
|
+
│ └── brown2020.md
|
|
94
|
+
├── Concepts/ # Your concept notes
|
|
95
|
+
│ ├── Attention.md # Links to [[vaswani2017]]
|
|
96
|
+
│ └── Pre-training.md # Links to [[devlin2019]]
|
|
97
|
+
└── Projects/ # Project notes referencing papers
|
|
98
|
+
|
|
99
|
+
### Workflow
|
|
100
|
+
1. Import paper in Zotero (via browser connector)
|
|
101
|
+
2. MarkDB-Connect auto-creates Literature/citekey.md
|
|
102
|
+
3. In Obsidian: open literature note, add your thoughts
|
|
103
|
+
4. Link to concept notes using [[wikilinks]]
|
|
104
|
+
5. Annotations sync from Zotero PDF reader
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Annotation Sync
|
|
108
|
+
|
|
109
|
+
```markdown
|
|
110
|
+
### Zotero PDF Annotations → Markdown
|
|
111
|
+
|
|
112
|
+
When you highlight or annotate in Zotero's PDF reader:
|
|
113
|
+
|
|
114
|
+
> [!quote] Highlight (Yellow)
|
|
115
|
+
> "The attention mechanism allows focusing on relevant parts"
|
|
116
|
+
> — p. 3
|
|
117
|
+
|
|
118
|
+
> [!note] Note
|
|
119
|
+
> This is the key insight — attention replaces recurrence
|
|
120
|
+
> — p. 3, linked to highlight above
|
|
121
|
+
|
|
122
|
+
> [!important] Red Highlight
|
|
123
|
+
> "Our model achieves 28.4 BLEU on WMT 2014"
|
|
124
|
+
> — p. 7
|
|
125
|
+
|
|
126
|
+
Annotations auto-sync to the Markdown note when updated.
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Logseq Integration
|
|
130
|
+
|
|
131
|
+
```markdown
|
|
132
|
+
### Logseq-Specific Setup
|
|
133
|
+
- Set vault path to your Logseq pages directory
|
|
134
|
+
- Notes created as Logseq pages with properties block
|
|
135
|
+
- Uses Logseq property syntax instead of YAML frontmatter
|
|
136
|
+
|
|
137
|
+
### Logseq Note Format
|
|
138
|
+
title:: Attention Is All You Need
|
|
139
|
+
authors:: [[Vaswani]], [[Shazeer]]
|
|
140
|
+
year:: 2017
|
|
141
|
+
doi:: 10.48550/arXiv.1706.03762
|
|
142
|
+
tags:: #transformer #attention
|
|
143
|
+
zotero:: zotero://select/items/...
|
|
144
|
+
|
|
145
|
+
- Key contributions
|
|
146
|
+
- Self-attention mechanism replacing recurrence
|
|
147
|
+
- Multi-head attention for different representation subspaces
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## Use Cases
|
|
151
|
+
|
|
152
|
+
1. **Literature management**: Seamless Zotero ↔ Obsidian workflow
|
|
153
|
+
2. **Knowledge building**: Link papers to concept notes
|
|
154
|
+
3. **Annotation workflow**: PDF annotations in Markdown
|
|
155
|
+
4. **Research writing**: Quick access to notes while writing
|
|
156
|
+
5. **Zettelkasten**: Literature notes as part of note network
|
|
157
|
+
|
|
158
|
+
## References
|
|
159
|
+
|
|
160
|
+
- [MarkDB-Connect GitHub](https://github.com/daeh/zotero-markdb-connect)
|
|
161
|
+
- [Obsidian](https://obsidian.md/)
|
|
162
|
+
- [Logseq](https://logseq.com/)
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: latex-translation-guide
|
|
3
|
+
description: "Translate LaTeX documents preserving math formulas and structure"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "🌐"
|
|
7
|
+
category: "tools"
|
|
8
|
+
subcategory: "ocr-translate"
|
|
9
|
+
keywords: ["LaTeX translation", "document translation", "multilingual", "math preservation", "academic translation"]
|
|
10
|
+
source: "https://github.com/SUSYUSTC/MathTranslate"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# LaTeX Document Translation Guide
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
Translating LaTeX academic documents requires preserving mathematical formulas, cross-references, citations, and formatting while converting the text between languages. This guide covers tools and techniques for translating LaTeX papers — from command-line utilities to full document pipelines. Particularly useful for making research accessible across language barriers.
|
|
18
|
+
|
|
19
|
+
## LaTeXTrans Approach
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
# Install LaTeXTrans
|
|
23
|
+
pip install latextrans
|
|
24
|
+
|
|
25
|
+
# Translate a LaTeX file
|
|
26
|
+
latextrans translate paper.tex --from en --to zh --output paper_zh.tex
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
### How It Works
|
|
30
|
+
|
|
31
|
+
1. **Parse**: Extract text segments while preserving LaTeX commands
|
|
32
|
+
2. **Protect**: Shield math environments (`$...$`, `\[...\]`, equations)
|
|
33
|
+
3. **Translate**: Send text segments to translation API
|
|
34
|
+
4. **Reconstruct**: Reassemble with original LaTeX structure
|
|
35
|
+
|
|
36
|
+
### Python Usage
|
|
37
|
+
|
|
38
|
+
```python
|
|
39
|
+
from latextrans import LatexTranslator
|
|
40
|
+
|
|
41
|
+
translator = LatexTranslator(
|
|
42
|
+
source_lang="en",
|
|
43
|
+
target_lang="zh",
|
|
44
|
+
engine="google", # or "deepl", "openai"
|
|
45
|
+
)
|
|
46
|
+
|
|
47
|
+
# Translate a file
|
|
48
|
+
translator.translate_file("paper.tex", "paper_zh.tex")
|
|
49
|
+
|
|
50
|
+
# Translate a string
|
|
51
|
+
result = translator.translate(
|
|
52
|
+
r"The loss function $\mathcal{L}(\theta)$ is minimized "
|
|
53
|
+
r"using gradient descent with learning rate $\eta$."
|
|
54
|
+
)
|
|
55
|
+
# Output preserves $\mathcal{L}(\theta)$ and $\eta$ untouched
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## MathTranslate Tool
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
# Install MathTranslate (specialized for math-heavy papers)
|
|
62
|
+
pip install mathtranslate
|
|
63
|
+
|
|
64
|
+
# Translate arXiv paper directly
|
|
65
|
+
translate_arxiv 2301.00001 -o translated.tex
|
|
66
|
+
|
|
67
|
+
# Translate local file
|
|
68
|
+
translate_tex paper.tex -o paper_translated.tex
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### MathTranslate Features
|
|
72
|
+
|
|
73
|
+
```python
|
|
74
|
+
# Configuration
|
|
75
|
+
import mathtranslate
|
|
76
|
+
|
|
77
|
+
# Set translation backend
|
|
78
|
+
mathtranslate.config.set_translator("google") # free
|
|
79
|
+
mathtranslate.config.set_translator("openai") # higher quality
|
|
80
|
+
|
|
81
|
+
# Translate with customization
|
|
82
|
+
mathtranslate.translate(
|
|
83
|
+
input_file="paper.tex",
|
|
84
|
+
output_file="paper_zh.tex",
|
|
85
|
+
source_lang="en",
|
|
86
|
+
target_lang="zh-CN",
|
|
87
|
+
threads=4, # parallel translation
|
|
88
|
+
)
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Manual Translation Tips
|
|
92
|
+
|
|
93
|
+
### Protecting Math Environments
|
|
94
|
+
|
|
95
|
+
```python
|
|
96
|
+
import re
|
|
97
|
+
|
|
98
|
+
def extract_and_protect(latex_text: str) -> tuple:
|
|
99
|
+
"""Extract math environments before translation."""
|
|
100
|
+
math_pattern = r'(\$\$[\s\S]*?\$\$|\$[^$]+\$|\\begin\{equation\}[\s\S]*?\\end\{equation\}|\\begin\{align\}[\s\S]*?\\end\{align\})'
|
|
101
|
+
|
|
102
|
+
placeholders = {}
|
|
103
|
+
counter = [0]
|
|
104
|
+
|
|
105
|
+
def replace_math(match):
|
|
106
|
+
key = f"__MATH_{counter[0]}__"
|
|
107
|
+
placeholders[key] = match.group(0)
|
|
108
|
+
counter[0] += 1
|
|
109
|
+
return key
|
|
110
|
+
|
|
111
|
+
protected = re.sub(math_pattern, replace_math, latex_text)
|
|
112
|
+
return protected, placeholders
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
def restore_math(translated: str, placeholders: dict) -> str:
|
|
116
|
+
"""Restore math environments after translation."""
|
|
117
|
+
for key, value in placeholders.items():
|
|
118
|
+
translated = translated.replace(key, value)
|
|
119
|
+
return translated
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Commands to Protect
|
|
123
|
+
|
|
124
|
+
```latex
|
|
125
|
+
% Always protect these:
|
|
126
|
+
\ref{...} % Cross-references
|
|
127
|
+
\cite{...} % Citations
|
|
128
|
+
\label{...} % Labels
|
|
129
|
+
\eqref{...} % Equation references
|
|
130
|
+
\url{...} % URLs
|
|
131
|
+
\texttt{...} % Code/monospace
|
|
132
|
+
|
|
133
|
+
% Math environments to protect:
|
|
134
|
+
$...$ % Inline math
|
|
135
|
+
$$...$$ % Display math
|
|
136
|
+
\[...\] % Display math
|
|
137
|
+
\begin{equation}...\end{equation}
|
|
138
|
+
\begin{align}...\end{align}
|
|
139
|
+
\begin{theorem}...\end{theorem} % Custom environments
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## Bilingual Output
|
|
143
|
+
|
|
144
|
+
```latex
|
|
145
|
+
% Create side-by-side bilingual document
|
|
146
|
+
\usepackage{paracol}
|
|
147
|
+
|
|
148
|
+
\begin{paracol}{2}
|
|
149
|
+
\switchcolumn[0]
|
|
150
|
+
The transformer architecture has become...
|
|
151
|
+
|
|
152
|
+
\switchcolumn[1]
|
|
153
|
+
Transformer架构已经成为...
|
|
154
|
+
|
|
155
|
+
\switchcolumn[0]
|
|
156
|
+
Self-attention computes $\text{Attention}(Q,K,V) = \text{softmax}(\frac{QK^T}{\sqrt{d_k}})V$
|
|
157
|
+
|
|
158
|
+
\switchcolumn[1]
|
|
159
|
+
自注意力计算 $\text{Attention}(Q,K,V) = \text{softmax}(\frac{QK^T}{\sqrt{d_k}})V$
|
|
160
|
+
\end{paracol}
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
## Translation Backends
|
|
164
|
+
|
|
165
|
+
| Backend | Quality | Cost | Speed |
|
|
166
|
+
|---------|---------|------|-------|
|
|
167
|
+
| Google Translate | Good | Free | Fast |
|
|
168
|
+
| DeepL | Better | Freemium | Fast |
|
|
169
|
+
| OpenAI GPT-4 | Best | Paid | Slower |
|
|
170
|
+
| Claude | Best | Paid | Slower |
|
|
171
|
+
|
|
172
|
+
## References
|
|
173
|
+
|
|
174
|
+
- [LaTeXTrans](https://github.com/SUSYUSTC/MathTranslate)
|
|
175
|
+
- [PDFMathTranslate](https://github.com/Byaidu/PDFMathTranslate)
|
|
176
|
+
- [arXiv LaTeX Cleaner](https://github.com/google-research/arxiv-latex-cleaner)
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: math-equation-renderer
|
|
3
|
+
description: "Render LaTeX math equations as publication-ready PNG and SVG images"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "🔢"
|
|
7
|
+
category: "tools"
|
|
8
|
+
subcategory: "ocr-translate"
|
|
9
|
+
keywords: ["latex math", "equation rendering", "math images", "formula to png", "math typesetting", "tex rendering"]
|
|
10
|
+
source: "https://clawhub.ai/huaruoji/math-images"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Math Equation Renderer — LaTeX to Image
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
Rendering LaTeX math equations as standalone images (PNG, SVG, PDF) is essential for presentations, social media, documentation, and any context where native LaTeX rendering is unavailable. This guide covers multiple methods: command-line tools, Python libraries, and web APIs. Choose based on your workflow: batch processing favors CLI tools, while one-off equations work well with web APIs.
|
|
18
|
+
|
|
19
|
+
## Method 1: TeX + dvipng (Command Line)
|
|
20
|
+
|
|
21
|
+
The classic approach using a minimal LaTeX document:
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
# Install prerequisites
|
|
25
|
+
# macOS: brew install --cask mactex
|
|
26
|
+
# Ubuntu: sudo apt install texlive-latex-base dvipng
|
|
27
|
+
|
|
28
|
+
# Create a minimal .tex file
|
|
29
|
+
cat > equation.tex << 'EOF'
|
|
30
|
+
\documentclass[border=2pt]{standalone}
|
|
31
|
+
\usepackage{amsmath,amssymb}
|
|
32
|
+
\begin{document}
|
|
33
|
+
$\displaystyle E = mc^2$
|
|
34
|
+
\end{document}
|
|
35
|
+
EOF
|
|
36
|
+
|
|
37
|
+
# Compile to DVI then PNG
|
|
38
|
+
latex equation.tex
|
|
39
|
+
dvipng -D 300 -bg Transparent -T tight equation.dvi -o equation.png
|
|
40
|
+
|
|
41
|
+
# Or compile directly to PDF
|
|
42
|
+
pdflatex equation.tex
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Batch Rendering Script
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
#!/bin/bash
|
|
49
|
+
# Render multiple equations from a text file (one per line)
|
|
50
|
+
INPUT="equations.txt"
|
|
51
|
+
OUTPUT_DIR="./rendered"
|
|
52
|
+
DPI=300
|
|
53
|
+
mkdir -p "$OUTPUT_DIR"
|
|
54
|
+
|
|
55
|
+
i=1
|
|
56
|
+
while IFS= read -r eq; do
|
|
57
|
+
cat > "/tmp/eq_${i}.tex" << EOF
|
|
58
|
+
\documentclass[border=2pt]{standalone}
|
|
59
|
+
\usepackage{amsmath,amssymb}
|
|
60
|
+
\begin{document}
|
|
61
|
+
\$\displaystyle ${eq}\$
|
|
62
|
+
\end{document}
|
|
63
|
+
EOF
|
|
64
|
+
(cd /tmp && latex -interaction=batchmode "eq_${i}.tex" && \
|
|
65
|
+
dvipng -D "$DPI" -bg Transparent -T tight "eq_${i}.dvi" \
|
|
66
|
+
-o "${OLDPWD}/${OUTPUT_DIR}/eq_${i}.png") 2>/dev/null
|
|
67
|
+
echo "Rendered equation $i: $eq"
|
|
68
|
+
((i++))
|
|
69
|
+
done < "$INPUT"
|
|
70
|
+
echo "Done. $((i-1)) equations rendered to $OUTPUT_DIR/"
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Method 2: matplotlib (Python)
|
|
74
|
+
|
|
75
|
+
```python
|
|
76
|
+
import matplotlib.pyplot as plt
|
|
77
|
+
import matplotlib
|
|
78
|
+
matplotlib.use('Agg') # Non-interactive backend
|
|
79
|
+
|
|
80
|
+
def render_equation(latex_str: str, output_path: str, dpi: int = 300,
|
|
81
|
+
fontsize: int = 20, color: str = "black"):
|
|
82
|
+
"""Render a LaTeX equation to PNG."""
|
|
83
|
+
fig, ax = plt.subplots(figsize=(0.1, 0.1))
|
|
84
|
+
ax.axis('off')
|
|
85
|
+
text = ax.text(0.5, 0.5, f"${latex_str}$",
|
|
86
|
+
fontsize=fontsize, color=color,
|
|
87
|
+
ha='center', va='center',
|
|
88
|
+
transform=ax.transAxes)
|
|
89
|
+
|
|
90
|
+
# Auto-size the figure to fit the equation
|
|
91
|
+
fig.savefig(output_path, dpi=dpi, bbox_inches='tight',
|
|
92
|
+
pad_inches=0.1, transparent=True)
|
|
93
|
+
plt.close(fig)
|
|
94
|
+
print(f"Saved: {output_path}")
|
|
95
|
+
|
|
96
|
+
# Usage
|
|
97
|
+
render_equation(r"\nabla \times \mathbf{E} = -\frac{\partial \mathbf{B}}{\partial t}",
|
|
98
|
+
"maxwell.png")
|
|
99
|
+
render_equation(r"\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}",
|
|
100
|
+
"gaussian.png")
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Batch Rendering with matplotlib
|
|
104
|
+
|
|
105
|
+
```python
|
|
106
|
+
equations = {
|
|
107
|
+
"schrodinger": r"i\hbar\frac{\partial}{\partial t}\Psi = \hat{H}\Psi",
|
|
108
|
+
"einstein": r"R_{\mu\nu} - \frac{1}{2}Rg_{\mu\nu} = \frac{8\pi G}{c^4}T_{\mu\nu}",
|
|
109
|
+
"euler": r"e^{i\pi} + 1 = 0",
|
|
110
|
+
"bayes": r"P(A|B) = \frac{P(B|A)\,P(A)}{P(B)}",
|
|
111
|
+
"fourier": r"\hat{f}(\xi) = \int_{-\infty}^{\infty} f(x)\,e^{-2\pi ix\xi}\,dx",
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
for name, eq in equations.items():
|
|
115
|
+
render_equation(eq, f"equations/{name}.png", dpi=300, fontsize=24)
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Method 3: sympy (Python — Symbolic Math)
|
|
119
|
+
|
|
120
|
+
```python
|
|
121
|
+
from sympy import *
|
|
122
|
+
from sympy.printing.preview import preview
|
|
123
|
+
|
|
124
|
+
x, y, z = symbols('x y z')
|
|
125
|
+
f = Function('f')
|
|
126
|
+
|
|
127
|
+
# Render symbolic expression
|
|
128
|
+
expr = Integral(exp(-x**2), (x, -oo, oo))
|
|
129
|
+
preview(expr, viewer='file', filename='integral.png',
|
|
130
|
+
dvioptions=['-D', '300', '-bg', 'Transparent'])
|
|
131
|
+
|
|
132
|
+
# Render matrix
|
|
133
|
+
M = Matrix([[1, x], [y, x*y]])
|
|
134
|
+
preview(M, viewer='file', filename='matrix.png',
|
|
135
|
+
dvioptions=['-D', '300', '-bg', 'Transparent'])
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
## Method 4: Web APIs (No Local TeX Required)
|
|
139
|
+
|
|
140
|
+
### Codecogs API
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
# URL-encoded LaTeX → PNG
|
|
144
|
+
curl -o equation.png \
|
|
145
|
+
"https://latex.codecogs.com/png.image?\dpi{300}\bg{transparent}E=mc^2"
|
|
146
|
+
|
|
147
|
+
# SVG output
|
|
148
|
+
curl -o equation.svg \
|
|
149
|
+
"https://latex.codecogs.com/svg.image?E=mc^2"
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### MathJax (HTML to Image)
|
|
153
|
+
|
|
154
|
+
```python
|
|
155
|
+
# Using Playwright to render MathJax equations
|
|
156
|
+
from playwright.sync_api import sync_playwright
|
|
157
|
+
|
|
158
|
+
def mathjax_to_png(latex: str, output: str):
|
|
159
|
+
html = f"""<!DOCTYPE html>
|
|
160
|
+
<html><head>
|
|
161
|
+
<script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-svg.js"></script>
|
|
162
|
+
</head><body>
|
|
163
|
+
<div id="eq">$$\\displaystyle {latex}$$</div>
|
|
164
|
+
</body></html>"""
|
|
165
|
+
|
|
166
|
+
with sync_playwright() as p:
|
|
167
|
+
browser = p.chromium.launch()
|
|
168
|
+
page = browser.new_page()
|
|
169
|
+
page.set_content(html)
|
|
170
|
+
page.wait_for_function("() => window.MathJax && MathJax.startup.promise")
|
|
171
|
+
element = page.query_selector("#eq")
|
|
172
|
+
element.screenshot(path=output)
|
|
173
|
+
browser.close()
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
## Output Format Comparison
|
|
177
|
+
|
|
178
|
+
| Format | Best For | Scalable? | Transparent BG? |
|
|
179
|
+
|--------|----------|-----------|-----------------|
|
|
180
|
+
| PNG | Presentations, docs, web | No (raster) | Yes (with `-bg Transparent`) |
|
|
181
|
+
| SVG | Web, scalable contexts | Yes (vector) | Yes |
|
|
182
|
+
| PDF | LaTeX inclusion, print | Yes (vector) | Yes |
|
|
183
|
+
| EPS | Legacy LaTeX workflows | Yes (vector) | No |
|
|
184
|
+
|
|
185
|
+
## Tips
|
|
186
|
+
|
|
187
|
+
- **DPI**: Use 300 for print, 150 for screen, 96 for web thumbnails
|
|
188
|
+
- **Font consistency**: Match the equation font to your document's body font
|
|
189
|
+
- **Dark mode**: Render with white text color for dark backgrounds: `color="white"`
|
|
190
|
+
- **Accessibility**: Always provide alt-text describing the equation when embedding images
|
|
191
|
+
- **Version control**: Store the LaTeX source alongside rendered images for reproducibility
|
|
192
|
+
|
|
193
|
+
## References
|
|
194
|
+
|
|
195
|
+
- [dvipng Documentation](https://ctan.org/pkg/dvipng)
|
|
196
|
+
- [matplotlib mathtext](https://matplotlib.org/stable/gallery/text_labels_and_annotations/mathtext_examples.html)
|
|
197
|
+
- [CodeCogs Equation Editor](https://latex.codecogs.com/)
|
|
198
|
+
- [MathJax Documentation](https://docs.mathjax.org/)
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pdf-math-translate-guide
|
|
3
|
+
description: "Translate scientific PDFs with preserved math formatting via PDFMathTranslate"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "📄"
|
|
7
|
+
category: "tools"
|
|
8
|
+
subcategory: "ocr-translate"
|
|
9
|
+
keywords: ["pdf-translation", "math-formatting", "scientific-papers", "multilingual", "latex-preservation"]
|
|
10
|
+
source: "https://github.com/Byaidu/PDFMathTranslate"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# PDFMathTranslate Guide
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
PDFMathTranslate is an open-source tool designed specifically for translating scientific and technical PDF documents while preserving mathematical formulas, tables, figures, and the overall layout structure. Traditional PDF translators often mangle equations and destroy formatting, making translated papers difficult to read. PDFMathTranslate solves this problem by intelligently detecting and preserving mathematical content during the translation process.
|
|
18
|
+
|
|
19
|
+
The tool leverages large language models for high-quality translation while maintaining the integrity of LaTeX-rendered equations, chemical formulas, and complex table structures commonly found in academic publications. It supports translation between dozens of language pairs, making it invaluable for researchers who need to read papers published in languages outside their expertise.
|
|
20
|
+
|
|
21
|
+
PDFMathTranslate has gained significant traction in the academic community with over 32,000 GitHub stars, reflecting the widespread need for reliable scientific document translation that respects the specialized formatting requirements of research papers.
|
|
22
|
+
|
|
23
|
+
## Installation and Setup
|
|
24
|
+
|
|
25
|
+
Install PDFMathTranslate using pip in a Python environment (Python 3.8 or higher required):
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
pip install pdf2zh
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
For GPU-accelerated processing, install with CUDA support:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
pip install pdf2zh[cuda]
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Configure your translation backend by setting the appropriate environment variable. The tool supports multiple LLM providers:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
# Using OpenAI-compatible APIs
|
|
41
|
+
export OPENAI_API_KEY=$OPENAI_API_KEY
|
|
42
|
+
export OPENAI_BASE_URL=$OPENAI_BASE_URL
|
|
43
|
+
|
|
44
|
+
# Using Google Translate (free, no key required)
|
|
45
|
+
pdf2zh input.pdf -s google
|
|
46
|
+
|
|
47
|
+
# Using DeepL
|
|
48
|
+
export DEEPL_AUTH_KEY=$DEEPL_AUTH_KEY
|
|
49
|
+
pdf2zh input.pdf -s deepl
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
You can also launch the web-based GUI for interactive use:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
pdf2zh -g
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
This starts a Gradio interface where you can upload PDFs and configure translation settings through a browser.
|
|
59
|
+
|
|
60
|
+
## Core Features
|
|
61
|
+
|
|
62
|
+
PDFMathTranslate provides several capabilities critical for academic workflows:
|
|
63
|
+
|
|
64
|
+
**Formula Preservation**: The tool detects and preserves inline and display math environments. Equations rendered in LaTeX, MathML, or image-based formats are identified and left untouched during translation, ensuring mathematical accuracy is maintained.
|
|
65
|
+
|
|
66
|
+
**Layout Retention**: The translated output maintains the original page layout including headers, footers, figure positions, table structures, and column formatting. This produces a readable document that mirrors the source paper structure.
|
|
67
|
+
|
|
68
|
+
**Batch Processing**: Translate multiple papers at once using wildcard patterns or directory inputs:
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
# Translate all PDFs in a directory
|
|
72
|
+
pdf2zh ./papers/*.pdf -lo zh -li en
|
|
73
|
+
|
|
74
|
+
# Specify output directory
|
|
75
|
+
pdf2zh input.pdf -o ./translated/
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
**Dual-Document Output**: Each translation generates two files: a fully translated version and a side-by-side bilingual version where original and translated text appear together, useful for verifying translation quality.
|
|
79
|
+
|
|
80
|
+
**Selective Translation**: Target specific page ranges to avoid translating references, appendices, or supplementary material:
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
# Translate only pages 1 through 15
|
|
84
|
+
pdf2zh input.pdf -p 1-15
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Research Workflow Integration
|
|
88
|
+
|
|
89
|
+
PDFMathTranslate fits naturally into several academic research scenarios:
|
|
90
|
+
|
|
91
|
+
**Literature Review Acceleration**: When conducting systematic reviews across multilingual sources, batch-translate candidate papers to quickly assess relevance before investing time in detailed reading. The preserved formatting means figures and data tables remain interpretable.
|
|
92
|
+
|
|
93
|
+
**Collaboration Across Languages**: Research teams spanning multiple countries can share translated versions of key papers while maintaining the mathematical rigor of the original. The bilingual output mode is particularly useful for group discussions where team members have different language proficiencies.
|
|
94
|
+
|
|
95
|
+
**Conference Preparation**: When presenting at international conferences, translate your own papers or related works to prepare for questions and discussions in the host language.
|
|
96
|
+
|
|
97
|
+
**Integration with Reference Managers**: Combine with Zotero or Mendeley workflows by translating downloaded papers and storing both versions in your reference library:
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
# Example workflow with a Zotero storage directory
|
|
101
|
+
for pdf in ~/Zotero/storage/*/*.pdf; do
|
|
102
|
+
pdf2zh "$pdf" -lo zh -li en -o ~/translated_papers/
|
|
103
|
+
done
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
**Quality Verification**: Always use the bilingual output mode when translation accuracy is critical. Cross-reference translated equations with the original to catch any edge cases where formula detection may have been imprecise.
|
|
107
|
+
|
|
108
|
+
## Configuration and Customization
|
|
109
|
+
|
|
110
|
+
Fine-tune translation behavior through configuration options:
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
# Use a specific model for translation
|
|
114
|
+
pdf2zh input.pdf -s openai -m gpt-4o
|
|
115
|
+
|
|
116
|
+
# Set custom font for translated text
|
|
117
|
+
pdf2zh input.pdf --font "Noto Sans CJK SC"
|
|
118
|
+
|
|
119
|
+
# Adjust thread count for parallel processing
|
|
120
|
+
pdf2zh input.pdf -t 4
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
For programmatic use, PDFMathTranslate can be integrated into Python scripts:
|
|
124
|
+
|
|
125
|
+
```python
|
|
126
|
+
from pdf2zh import translate
|
|
127
|
+
|
|
128
|
+
# Basic translation
|
|
129
|
+
translate.translate(
|
|
130
|
+
files=["paper.pdf"],
|
|
131
|
+
lang_out="zh",
|
|
132
|
+
lang_in="en",
|
|
133
|
+
service="google"
|
|
134
|
+
)
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
## References
|
|
138
|
+
|
|
139
|
+
- PDFMathTranslate repository: https://github.com/Byaidu/PDFMathTranslate
|
|
140
|
+
- PyPI package: https://pypi.org/project/pdf2zh/
|
|
141
|
+
- Supported translation services documentation in the project wiki
|