@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,158 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gaussian-splatting-papers-guide
|
|
3
|
+
description: "Curated papers and resources for 3D Gaussian Splatting"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "🔮"
|
|
7
|
+
category: "domains"
|
|
8
|
+
subcategory: "cs"
|
|
9
|
+
keywords: ["3D Gaussian Splatting", "3DGS", "neural rendering", "NeRF", "novel view synthesis", "point cloud"]
|
|
10
|
+
source: "https://github.com/MrNeRF/awesome-3D-gaussian-splatting"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# 3D Gaussian Splatting Papers Guide
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
3D Gaussian Splatting (3DGS) is a breakthrough technique for real-time radiance field rendering that represents scenes as collections of 3D Gaussians. This curated collection tracks the rapidly evolving 3DGS literature — from the original paper through extensions for dynamic scenes, generation, compression, SLAM, avatars, and more. Essential for researchers in computer vision, graphics, and neural rendering.
|
|
18
|
+
|
|
19
|
+
## Core Paper
|
|
20
|
+
|
|
21
|
+
```bibtex
|
|
22
|
+
@inproceedings{kerbl3Dgaussians,
|
|
23
|
+
title={3D Gaussian Splatting for Real-Time Radiance Field Rendering},
|
|
24
|
+
author={Kerbl, Bernhard and Kopanas, Georgios and Leimk{\"u}hler, Thomas
|
|
25
|
+
and Drettakis, George},
|
|
26
|
+
booktitle={ACM SIGGRAPH 2023},
|
|
27
|
+
year={2023}
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### Key Idea
|
|
32
|
+
|
|
33
|
+
```
|
|
34
|
+
Input: Multi-view images + SfM point cloud
|
|
35
|
+
↓
|
|
36
|
+
Initialize 3D Gaussians (position, covariance, color, opacity)
|
|
37
|
+
↓
|
|
38
|
+
Differentiable splatting (project Gaussians → image plane)
|
|
39
|
+
↓
|
|
40
|
+
Optimize via photometric loss
|
|
41
|
+
↓
|
|
42
|
+
Adaptive density control (clone, split, prune)
|
|
43
|
+
↓
|
|
44
|
+
Output: Real-time renderable 3D scene (100+ FPS)
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Research Landscape
|
|
48
|
+
|
|
49
|
+
### Category Map
|
|
50
|
+
|
|
51
|
+
| Category | Focus | Key Papers |
|
|
52
|
+
|----------|-------|------------|
|
|
53
|
+
| **Static Scenes** | Quality, compression, anti-aliasing | Mip-Splatting, Compact3D |
|
|
54
|
+
| **Dynamic Scenes** | Deformable, 4D, temporal | Dynamic3DGS, 4DGS, Deformable3DGS |
|
|
55
|
+
| **Generation** | Text/image to 3D | DreamGaussian, GaussianDreamer, LGM |
|
|
56
|
+
| **SLAM** | Real-time mapping | SplaTAM, Gaussian-SLAM, MonoGS |
|
|
57
|
+
| **Avatars** | Human body/face | GaussianAvatar, HUGS, SplatFace |
|
|
58
|
+
| **Autonomous Driving** | Street scenes | StreetGaussians, DriveGS |
|
|
59
|
+
| **Compression** | Storage efficiency | LightGaussian, CompGS |
|
|
60
|
+
| **Editing** | Scene manipulation | GaussianEditor, GSEditor |
|
|
61
|
+
| **Physics** | Simulation, deformation | PhysGaussian, Gaussian Splashing |
|
|
62
|
+
| **Language** | 3D understanding | LangSplat, LEGaussians |
|
|
63
|
+
|
|
64
|
+
## Tracking New Papers
|
|
65
|
+
|
|
66
|
+
```python
|
|
67
|
+
import requests
|
|
68
|
+
from datetime import datetime, timedelta
|
|
69
|
+
|
|
70
|
+
# Search arXiv for recent 3DGS papers
|
|
71
|
+
def search_3dgs_papers(days_back=7):
|
|
72
|
+
"""Find recent 3D Gaussian Splatting papers on arXiv."""
|
|
73
|
+
import arxiv
|
|
74
|
+
|
|
75
|
+
query = (
|
|
76
|
+
"ti:gaussian splatting OR "
|
|
77
|
+
"abs:3D gaussian splatting OR "
|
|
78
|
+
"abs:3DGS"
|
|
79
|
+
)
|
|
80
|
+
|
|
81
|
+
search = arxiv.Search(
|
|
82
|
+
query=query,
|
|
83
|
+
max_results=50,
|
|
84
|
+
sort_by=arxiv.SortCriterion.SubmittedDate,
|
|
85
|
+
)
|
|
86
|
+
|
|
87
|
+
cutoff = datetime.now() - timedelta(days=days_back)
|
|
88
|
+
papers = []
|
|
89
|
+
for result in search.results():
|
|
90
|
+
if result.published.replace(tzinfo=None) > cutoff:
|
|
91
|
+
papers.append({
|
|
92
|
+
"title": result.title,
|
|
93
|
+
"authors": [a.name for a in result.authors[:3]],
|
|
94
|
+
"url": result.entry_id,
|
|
95
|
+
"published": result.published.strftime("%Y-%m-%d"),
|
|
96
|
+
"categories": result.categories,
|
|
97
|
+
})
|
|
98
|
+
return papers
|
|
99
|
+
|
|
100
|
+
recent = search_3dgs_papers(days_back=14)
|
|
101
|
+
for p in recent:
|
|
102
|
+
print(f"[{p['published']}] {p['title']}")
|
|
103
|
+
print(f" {', '.join(p['authors'])} | {p['url']}")
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## Key Methods Comparison
|
|
107
|
+
|
|
108
|
+
```python
|
|
109
|
+
# Performance comparison (from original benchmarks)
|
|
110
|
+
methods = {
|
|
111
|
+
"NeRF": {"psnr": 31.01, "fps": 0.03, "train_time": "hours"},
|
|
112
|
+
"Instant-NGP": {"psnr": 33.18, "fps": 9.43, "train_time": "5 min"},
|
|
113
|
+
"3DGS": {"psnr": 33.31, "fps": 134, "train_time": "6 min"},
|
|
114
|
+
"Mip-Splatting": {"psnr": 33.46, "fps": 120, "train_time": "7 min"},
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
print(f"{'Method':<16} {'PSNR':>6} {'FPS':>8} {'Training':>10}")
|
|
118
|
+
print("-" * 44)
|
|
119
|
+
for name, m in methods.items():
|
|
120
|
+
print(f"{name:<16} {m['psnr']:>6.2f} {m['fps']:>8.2f} "
|
|
121
|
+
f"{m['train_time']:>10}")
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## Implementation Resources
|
|
125
|
+
|
|
126
|
+
```bash
|
|
127
|
+
# Original implementation
|
|
128
|
+
git clone https://github.com/graphdeco-inria/gaussian-splatting
|
|
129
|
+
cd gaussian-splatting
|
|
130
|
+
pip install -r requirements.txt
|
|
131
|
+
|
|
132
|
+
# Train on custom scene
|
|
133
|
+
python train.py -s path/to/colmap/data
|
|
134
|
+
|
|
135
|
+
# Real-time viewer
|
|
136
|
+
./SIBR_viewers/bin/SIBR_gaussianViewer_app \
|
|
137
|
+
-m output/trained_model
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
## Survey Papers
|
|
141
|
+
|
|
142
|
+
1. **"A Survey on 3D Gaussian Splatting"** (Chen et al., 2024) — comprehensive taxonomy
|
|
143
|
+
2. **"3DGS: Recent Developments and Applications"** (Wu et al., 2024) — application-focused
|
|
144
|
+
3. **"Gaussian Splatting: A Survey"** (Fei et al., 2024) — technical deep dive
|
|
145
|
+
|
|
146
|
+
## Use Cases
|
|
147
|
+
|
|
148
|
+
1. **Novel view synthesis**: Photo-realistic rendering from sparse views
|
|
149
|
+
2. **Real-time visualization**: Interactive 3D scene exploration
|
|
150
|
+
3. **Digital twins**: Rapid scene reconstruction for simulation
|
|
151
|
+
4. **VR/AR content**: Real-time immersive experiences
|
|
152
|
+
5. **Autonomous driving**: Street-level scene understanding
|
|
153
|
+
|
|
154
|
+
## References
|
|
155
|
+
|
|
156
|
+
- [awesome-3D-gaussian-splatting](https://github.com/MrNeRF/awesome-3D-gaussian-splatting)
|
|
157
|
+
- [Original 3DGS](https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/)
|
|
158
|
+
- [3DGS Papers Collection](https://3dgaussians.github.io/)
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: llm-aiops-guide
|
|
3
|
+
description: "Papers on LLMs for IT operations and AIOps research"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "🖥️"
|
|
7
|
+
category: "domains"
|
|
8
|
+
subcategory: "cs"
|
|
9
|
+
keywords: ["AIOps", "LLM operations", "IT automation", "log analysis", "incident management", "DevOps AI"]
|
|
10
|
+
source: "https://github.com/Jun-jie-Huang/awesome-LLM-AIOps"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# LLM for AIOps Guide
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
A curated collection of research on applying LLMs to IT Operations (AIOps) — log analysis, anomaly detection, incident management, root cause analysis, and automated remediation. Tracks how foundation models are transforming traditional rule-based operations tooling into intelligent, adaptive systems. Relevant for CS researchers at the intersection of systems, NLP, and operations.
|
|
18
|
+
|
|
19
|
+
## Research Areas
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
LLM for AIOps
|
|
23
|
+
├── Log Analysis
|
|
24
|
+
│ ├── Log parsing (template extraction)
|
|
25
|
+
│ ├── Anomaly detection (from log sequences)
|
|
26
|
+
│ ├── Log summarization
|
|
27
|
+
│ └── Root cause from logs
|
|
28
|
+
├── Incident Management
|
|
29
|
+
│ ├── Incident triage and routing
|
|
30
|
+
│ ├── Severity classification
|
|
31
|
+
│ ├── Similar incident retrieval
|
|
32
|
+
│ └── Resolution recommendation
|
|
33
|
+
├── Root Cause Analysis
|
|
34
|
+
│ ├── Topology-aware diagnosis
|
|
35
|
+
│ ├── Multi-signal correlation
|
|
36
|
+
│ └── Causal inference
|
|
37
|
+
├── Monitoring & Alerting
|
|
38
|
+
│ ├── Metric anomaly detection
|
|
39
|
+
│ ├── Alert correlation
|
|
40
|
+
│ ├── Noise reduction
|
|
41
|
+
│ └── Capacity planning
|
|
42
|
+
└── Automated Remediation
|
|
43
|
+
├── Runbook generation
|
|
44
|
+
├── Script generation
|
|
45
|
+
├── Self-healing systems
|
|
46
|
+
└── Change impact analysis
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Key Papers
|
|
50
|
+
|
|
51
|
+
| Paper | Year | Focus |
|
|
52
|
+
|-------|------|-------|
|
|
53
|
+
| LogPPT | 2023 | Few-shot log parsing with prompt tuning |
|
|
54
|
+
| OpsEval | 2024 | Benchmark for evaluating LLMs in AIOps |
|
|
55
|
+
| D-Bot | 2024 | LLM-based database diagnosis |
|
|
56
|
+
| RCAgent | 2024 | Agent for root cause analysis |
|
|
57
|
+
| LogAgent | 2024 | Autonomous log analysis agent |
|
|
58
|
+
|
|
59
|
+
## Use Cases
|
|
60
|
+
|
|
61
|
+
1. **Literature tracking**: Follow LLM-AIOps research evolution
|
|
62
|
+
2. **System design**: Learn intelligent operations patterns
|
|
63
|
+
3. **Benchmark comparison**: Evaluate AIOps approaches
|
|
64
|
+
4. **Research planning**: Identify under-explored AIOps problems
|
|
65
|
+
5. **Industry applications**: Bridge research to production AIOps
|
|
66
|
+
|
|
67
|
+
## References
|
|
68
|
+
|
|
69
|
+
- [awesome-LLM-AIOps](https://github.com/Jun-jie-Huang/awesome-LLM-AIOps)
|
|
70
|
+
- [OpsEval Benchmark](https://arxiv.org/abs/2310.07637)
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: software-heritage-api
|
|
3
|
+
description: "Archive and retrieve source code history via Software Heritage API"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "💾"
|
|
7
|
+
category: "domains"
|
|
8
|
+
subcategory: "cs"
|
|
9
|
+
keywords: ["Software Heritage", "code archive", "source code preservation", "SWHID", "code provenance", "open source"]
|
|
10
|
+
source: "https://www.softwareheritage.org/"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Software Heritage API
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
Software Heritage is the universal archive of software source code, preserving 18B+ source files from 280M+ software origins (GitHub, GitLab, Bitbucket, CRAN, PyPI, Debian, etc.). Each artifact receives a persistent SWHID (SoftWare Heritage IDentifier) for reliable citation in research. The API enables code search, provenance tracking, and historical analysis. Free, no authentication for read access.
|
|
18
|
+
|
|
19
|
+
## API Endpoints
|
|
20
|
+
|
|
21
|
+
### Base URL
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
https://archive.softwareheritage.org/api/1
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### Search Origins (Repositories)
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
# Search for repositories
|
|
31
|
+
curl "https://archive.softwareheritage.org/api/1/origin/search/scikit-learn/?limit=10"
|
|
32
|
+
|
|
33
|
+
# Get origin metadata
|
|
34
|
+
curl "https://archive.softwareheritage.org/api/1/origin/https://github.com/scikit-learn/scikit-learn/get/"
|
|
35
|
+
|
|
36
|
+
# List visits (snapshots) of an origin
|
|
37
|
+
curl "https://archive.softwareheritage.org/api/1/origin/https://github.com/scikit-learn/scikit-learn/visits/"
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### Retrieve Content
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
# Get a specific file by its SHA1 hash
|
|
44
|
+
curl "https://archive.softwareheritage.org/api/1/content/sha1:adc83b19e793491b1c6ea0fd8b46cd9f32e592fc/"
|
|
45
|
+
|
|
46
|
+
# Get raw file content
|
|
47
|
+
curl "https://archive.softwareheritage.org/api/1/content/sha1:adc83b19e793491b1c6ea0fd8b46cd9f32e592fc/raw/"
|
|
48
|
+
|
|
49
|
+
# Get directory listing
|
|
50
|
+
curl "https://archive.softwareheritage.org/api/1/directory/{sha1_git}/"
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Resolve SWHIDs
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
# Resolve a SWHID to its object
|
|
57
|
+
curl "https://archive.softwareheritage.org/api/1/resolve/swh:1:cnt:adc83b19e793491b1c6ea0fd8b46cd9f32e592fc/"
|
|
58
|
+
|
|
59
|
+
# Get snapshot
|
|
60
|
+
curl "https://archive.softwareheritage.org/api/1/snapshot/{sha1_git}/"
|
|
61
|
+
|
|
62
|
+
# Get revision (commit)
|
|
63
|
+
curl "https://archive.softwareheritage.org/api/1/revision/{sha1_git}/"
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### Save Code Now
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
# Request archival of a repository
|
|
70
|
+
curl -X POST "https://archive.softwareheritage.org/api/1/origin/save/git/url/https://github.com/user/repo/"
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## SWHID Format
|
|
74
|
+
|
|
75
|
+
SoftWare Heritage persistent IDentifiers:
|
|
76
|
+
|
|
77
|
+
```
|
|
78
|
+
swh:1:{type}:{hash}
|
|
79
|
+
|
|
80
|
+
Types:
|
|
81
|
+
cnt → Content (file)
|
|
82
|
+
dir → Directory
|
|
83
|
+
rev → Revision (commit)
|
|
84
|
+
rel → Release (tag)
|
|
85
|
+
snp → Snapshot
|
|
86
|
+
|
|
87
|
+
Examples:
|
|
88
|
+
swh:1:cnt:94a9ed024d3859793618152ea559a168bbcbb5e2 (file)
|
|
89
|
+
swh:1:rev:309cf2674ee7a0749978cf8265ab91a60aea0f7d (commit)
|
|
90
|
+
swh:1:snp:c7c108084bc0bf3d81436bf980b46e98571c7b17 (snapshot)
|
|
91
|
+
|
|
92
|
+
With qualifiers:
|
|
93
|
+
swh:1:cnt:{hash};origin=https://github.com/user/repo;visit=swh:1:snp:{hash};path=/src/main.py
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Python Usage
|
|
97
|
+
|
|
98
|
+
```python
|
|
99
|
+
import requests
|
|
100
|
+
import time
|
|
101
|
+
|
|
102
|
+
BASE_URL = "https://archive.softwareheritage.org/api/1"
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
def search_origins(query: str, limit: int = 10) -> list:
|
|
106
|
+
"""Search Software Heritage for archived repositories."""
|
|
107
|
+
resp = requests.get(
|
|
108
|
+
f"{BASE_URL}/origin/search/{query}/",
|
|
109
|
+
params={"limit": limit},
|
|
110
|
+
timeout=30,
|
|
111
|
+
)
|
|
112
|
+
resp.raise_for_status()
|
|
113
|
+
return [
|
|
114
|
+
{
|
|
115
|
+
"url": o.get("url"),
|
|
116
|
+
"has_visits": o.get("has_visits"),
|
|
117
|
+
}
|
|
118
|
+
for o in resp.json()
|
|
119
|
+
]
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
def get_origin_visits(origin_url: str) -> list:
|
|
123
|
+
"""Get archival snapshots for a repository."""
|
|
124
|
+
resp = requests.get(
|
|
125
|
+
f"{BASE_URL}/origin/{origin_url}/visits/",
|
|
126
|
+
timeout=30,
|
|
127
|
+
)
|
|
128
|
+
resp.raise_for_status()
|
|
129
|
+
return [
|
|
130
|
+
{
|
|
131
|
+
"date": v.get("date"),
|
|
132
|
+
"status": v.get("status"),
|
|
133
|
+
"snapshot": v.get("snapshot"),
|
|
134
|
+
"type": v.get("type"),
|
|
135
|
+
}
|
|
136
|
+
for v in resp.json()
|
|
137
|
+
]
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
def get_directory(sha1_git: str) -> list:
|
|
141
|
+
"""List files in an archived directory."""
|
|
142
|
+
resp = requests.get(
|
|
143
|
+
f"{BASE_URL}/directory/{sha1_git}/",
|
|
144
|
+
timeout=30,
|
|
145
|
+
)
|
|
146
|
+
resp.raise_for_status()
|
|
147
|
+
return [
|
|
148
|
+
{
|
|
149
|
+
"name": entry.get("name"),
|
|
150
|
+
"type": entry.get("type"),
|
|
151
|
+
"target": entry.get("target"),
|
|
152
|
+
}
|
|
153
|
+
for entry in resp.json()
|
|
154
|
+
]
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
def save_code_now(repo_url: str) -> dict:
|
|
158
|
+
"""Request Software Heritage to archive a repository."""
|
|
159
|
+
resp = requests.post(
|
|
160
|
+
f"{BASE_URL}/origin/save/git/url/{repo_url}/",
|
|
161
|
+
timeout=30,
|
|
162
|
+
)
|
|
163
|
+
resp.raise_for_status()
|
|
164
|
+
return resp.json()
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
# Example: find archived ML frameworks
|
|
168
|
+
origins = search_origins("pytorch", limit=5)
|
|
169
|
+
for o in origins:
|
|
170
|
+
print(f"Archived: {o['url']}")
|
|
171
|
+
|
|
172
|
+
# Example: get snapshot history
|
|
173
|
+
visits = get_origin_visits("https://github.com/pytorch/pytorch")
|
|
174
|
+
for v in visits[:5]:
|
|
175
|
+
print(f"[{v['date'][:10]}] {v['status']} — {v['type']}")
|
|
176
|
+
|
|
177
|
+
# Example: request archival
|
|
178
|
+
# result = save_code_now("https://github.com/my-org/my-research-code")
|
|
179
|
+
# print(f"Save request: {result['save_request_status']}")
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
## Use Cases
|
|
183
|
+
|
|
184
|
+
1. **Code citation**: Cite specific code versions in papers using SWHIDs
|
|
185
|
+
2. **Reproducibility**: Archive the exact code used in experiments
|
|
186
|
+
3. **Provenance tracking**: Trace code evolution and authorship
|
|
187
|
+
4. **Software archaeology**: Study historical codebases
|
|
188
|
+
5. **Compliance**: Ensure open-source license compliance through archival
|
|
189
|
+
|
|
190
|
+
## Rate Limits
|
|
191
|
+
|
|
192
|
+
- Unauthenticated: 120 requests/hour
|
|
193
|
+
- Authenticated (free token): 1200 requests/hour
|
|
194
|
+
|
|
195
|
+
## References
|
|
196
|
+
|
|
197
|
+
- [Software Heritage](https://www.softwareheritage.org/)
|
|
198
|
+
- [API Documentation](https://archive.softwareheritage.org/api/)
|
|
199
|
+
- [SWHID Specification](https://docs.softwareheritage.org/devel/swh-model/persistent-identifiers.html)
|
|
200
|
+
- Di Cosmo, R. & Zacchiroli, S. (2017). "Software Heritage: Why and How to Preserve Software Source Code." *iPRES 2017*.
|