@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.
Files changed (415) hide show
  1. package/README.md +22 -22
  2. package/curated/analysis/README.md +82 -56
  3. package/curated/domains/README.md +225 -69
  4. package/curated/literature/README.md +115 -46
  5. package/curated/research/README.md +106 -58
  6. package/curated/tools/README.md +107 -87
  7. package/curated/writing/README.md +92 -45
  8. package/mcp-configs/academic-db/alphafold-mcp.json +20 -0
  9. package/mcp-configs/academic-db/brightspace-mcp.json +21 -0
  10. package/mcp-configs/academic-db/climatiq-mcp.json +20 -0
  11. package/mcp-configs/academic-db/gibs-mcp.json +20 -0
  12. package/mcp-configs/academic-db/gis-mcp-server.json +22 -0
  13. package/mcp-configs/academic-db/google-earth-engine-mcp.json +21 -0
  14. package/mcp-configs/academic-db/m4-clinical-mcp.json +21 -0
  15. package/mcp-configs/academic-db/medical-mcp.json +21 -0
  16. package/mcp-configs/academic-db/nexonco-mcp.json +20 -0
  17. package/mcp-configs/academic-db/omop-mcp.json +20 -0
  18. package/mcp-configs/academic-db/onekgpd-mcp.json +20 -0
  19. package/mcp-configs/academic-db/openedu-mcp.json +20 -0
  20. package/mcp-configs/academic-db/opengenes-mcp.json +20 -0
  21. package/mcp-configs/academic-db/openstax-mcp.json +21 -0
  22. package/mcp-configs/academic-db/openstreetmap-mcp.json +21 -0
  23. package/mcp-configs/academic-db/opentargets-mcp.json +21 -0
  24. package/mcp-configs/academic-db/pdb-mcp.json +21 -0
  25. package/mcp-configs/academic-db/smithsonian-mcp.json +20 -0
  26. package/mcp-configs/ai-platform/magi-researchers.json +21 -0
  27. package/mcp-configs/ai-platform/mcp-academic-researcher.json +22 -0
  28. package/mcp-configs/ai-platform/open-paper-machine.json +21 -0
  29. package/mcp-configs/ai-platform/paper-intelligence.json +21 -0
  30. package/mcp-configs/ai-platform/paper-reader.json +21 -0
  31. package/mcp-configs/ai-platform/paperdebugger.json +21 -0
  32. package/mcp-configs/browser/exa-mcp.json +20 -0
  33. package/mcp-configs/browser/mcp-searxng.json +21 -0
  34. package/mcp-configs/browser/mcp-webresearch.json +20 -0
  35. package/mcp-configs/cloud-docs/confluence-mcp.json +37 -0
  36. package/mcp-configs/cloud-docs/google-drive-mcp.json +35 -0
  37. package/mcp-configs/cloud-docs/notion-mcp.json +29 -0
  38. package/mcp-configs/communication/discord-mcp.json +29 -0
  39. package/mcp-configs/communication/discourse-mcp.json +21 -0
  40. package/mcp-configs/communication/slack-mcp.json +29 -0
  41. package/mcp-configs/communication/telegram-mcp.json +28 -0
  42. package/mcp-configs/data-platform/automl-stat-mcp.json +21 -0
  43. package/mcp-configs/data-platform/jefferson-stats-mcp.json +22 -0
  44. package/mcp-configs/data-platform/mcp-excel-server.json +21 -0
  45. package/mcp-configs/data-platform/mcp-stata.json +21 -0
  46. package/mcp-configs/data-platform/mcpstack-jupyter.json +21 -0
  47. package/mcp-configs/data-platform/ml-mcp.json +21 -0
  48. package/mcp-configs/data-platform/nasdaq-data-link-mcp.json +20 -0
  49. package/mcp-configs/data-platform/numpy-mcp.json +21 -0
  50. package/mcp-configs/database/neo4j-mcp.json +37 -0
  51. package/mcp-configs/database/postgres-mcp.json +28 -0
  52. package/mcp-configs/database/sqlite-mcp.json +29 -0
  53. package/mcp-configs/dev-platform/geogebra-mcp.json +21 -0
  54. package/mcp-configs/dev-platform/github-mcp.json +31 -0
  55. package/mcp-configs/dev-platform/gitlab-mcp.json +34 -0
  56. package/mcp-configs/dev-platform/latex-mcp-server.json +21 -0
  57. package/mcp-configs/dev-platform/manim-mcp.json +20 -0
  58. package/mcp-configs/dev-platform/mcp-echarts.json +20 -0
  59. package/mcp-configs/dev-platform/panel-viz-mcp.json +20 -0
  60. package/mcp-configs/dev-platform/paperbanana.json +20 -0
  61. package/mcp-configs/dev-platform/texflow-mcp.json +20 -0
  62. package/mcp-configs/dev-platform/texmcp.json +20 -0
  63. package/mcp-configs/dev-platform/typst-mcp.json +21 -0
  64. package/mcp-configs/dev-platform/vizro-mcp.json +20 -0
  65. package/mcp-configs/email/email-mcp.json +40 -0
  66. package/mcp-configs/email/gmail-mcp.json +37 -0
  67. package/mcp-configs/note-knowledge/local-faiss-mcp.json +21 -0
  68. package/mcp-configs/note-knowledge/mcp-memory-service.json +21 -0
  69. package/mcp-configs/note-knowledge/mcp-obsidian.json +23 -0
  70. package/mcp-configs/note-knowledge/mcp-ragdocs.json +20 -0
  71. package/mcp-configs/note-knowledge/mcp-summarizer.json +21 -0
  72. package/mcp-configs/note-knowledge/mediawiki-mcp.json +21 -0
  73. package/mcp-configs/note-knowledge/openzim-mcp.json +20 -0
  74. package/mcp-configs/note-knowledge/zettelkasten-mcp.json +21 -0
  75. package/mcp-configs/reference-mgr/academic-paper-mcp-http.json +20 -0
  76. package/mcp-configs/reference-mgr/academix.json +20 -0
  77. package/mcp-configs/reference-mgr/arxiv-research-mcp.json +21 -0
  78. package/mcp-configs/reference-mgr/google-scholar-abstract-mcp.json +19 -0
  79. package/mcp-configs/reference-mgr/google-scholar-mcp.json +20 -0
  80. package/mcp-configs/reference-mgr/mcp-paperswithcode.json +21 -0
  81. package/mcp-configs/reference-mgr/mcp-scholarly.json +20 -0
  82. package/mcp-configs/reference-mgr/mcp-simple-arxiv.json +20 -0
  83. package/mcp-configs/reference-mgr/mcp-simple-pubmed.json +20 -0
  84. package/mcp-configs/reference-mgr/mcp-zotero.json +21 -0
  85. package/mcp-configs/reference-mgr/mendeley-mcp.json +20 -0
  86. package/mcp-configs/reference-mgr/ncbi-mcp-server.json +22 -0
  87. package/mcp-configs/reference-mgr/onecite.json +21 -0
  88. package/mcp-configs/reference-mgr/paper-search-mcp.json +21 -0
  89. package/mcp-configs/reference-mgr/pubmed-search-mcp.json +21 -0
  90. package/mcp-configs/reference-mgr/scholar-mcp.json +21 -0
  91. package/mcp-configs/reference-mgr/scholar-multi-mcp.json +21 -0
  92. package/mcp-configs/reference-mgr/seerai.json +21 -0
  93. package/mcp-configs/reference-mgr/semantic-scholar-fastmcp.json +21 -0
  94. package/mcp-configs/reference-mgr/sourcelibrary.json +20 -0
  95. package/mcp-configs/registry.json +178 -149
  96. package/mcp-configs/repository/dataverse-mcp.json +33 -0
  97. package/mcp-configs/repository/huggingface-mcp.json +29 -0
  98. package/openclaw.plugin.json +2 -2
  99. package/package.json +2 -2
  100. package/skills/analysis/dataviz/algorithm-visualizer-guide/SKILL.md +259 -0
  101. package/skills/analysis/dataviz/bokeh-visualization-guide/SKILL.md +270 -0
  102. package/skills/analysis/dataviz/chart-image-generator/SKILL.md +229 -0
  103. package/skills/analysis/dataviz/citation-map-guide/SKILL.md +184 -0
  104. package/skills/analysis/dataviz/d3-visualization-guide/SKILL.md +281 -0
  105. package/skills/analysis/dataviz/data-visualization-principles/SKILL.md +171 -0
  106. package/skills/analysis/dataviz/echarts-visualization-guide/SKILL.md +250 -0
  107. package/skills/analysis/dataviz/metabase-analytics-guide/SKILL.md +242 -0
  108. package/skills/analysis/dataviz/plotly-interactive-guide/SKILL.md +266 -0
  109. package/skills/analysis/dataviz/redash-analytics-guide/SKILL.md +284 -0
  110. package/skills/analysis/econometrics/econml-causal-guide/SKILL.md +163 -0
  111. package/skills/analysis/econometrics/empirical-paper-analysis/SKILL.md +192 -0
  112. package/skills/analysis/econometrics/mostly-harmless-guide/SKILL.md +139 -0
  113. package/skills/analysis/econometrics/panel-data-analyst/SKILL.md +259 -0
  114. package/skills/analysis/econometrics/panel-data-regression-workflow/SKILL.md +267 -0
  115. package/skills/analysis/econometrics/python-causality-guide/SKILL.md +134 -0
  116. package/skills/analysis/econometrics/stata-accounting-guide/SKILL.md +269 -0
  117. package/skills/analysis/econometrics/stata-analyst-guide/SKILL.md +245 -0
  118. package/skills/analysis/econometrics/stata-reference-guide/SKILL.md +293 -0
  119. package/skills/analysis/statistics/data-anomaly-detection/SKILL.md +157 -0
  120. package/skills/analysis/statistics/general-statistics-guide/SKILL.md +226 -0
  121. package/skills/analysis/statistics/infiagent-benchmark-guide/SKILL.md +106 -0
  122. package/skills/analysis/statistics/ml-experiment-tracker/SKILL.md +212 -0
  123. package/skills/analysis/statistics/pywayne-statistics-guide/SKILL.md +192 -0
  124. package/skills/analysis/statistics/quantitative-methods-guide/SKILL.md +193 -0
  125. package/skills/analysis/statistics/senior-data-scientist-guide/SKILL.md +223 -0
  126. package/skills/analysis/wrangling/claude-data-analysis-guide/SKILL.md +100 -0
  127. package/skills/analysis/wrangling/csv-data-analyzer/SKILL.md +170 -0
  128. package/skills/analysis/wrangling/data-cleaning-pipeline/SKILL.md +266 -0
  129. package/skills/analysis/wrangling/data-cog-guide/SKILL.md +178 -0
  130. package/skills/analysis/wrangling/open-data-scientist-guide/SKILL.md +197 -0
  131. package/skills/analysis/wrangling/stata-data-cleaning/SKILL.md +276 -0
  132. package/skills/analysis/wrangling/streamline-analyst-guide/SKILL.md +119 -0
  133. package/skills/analysis/wrangling/survey-data-processing/SKILL.md +298 -0
  134. package/skills/domains/ai-ml/ai-agent-papers-guide/SKILL.md +146 -0
  135. package/skills/domains/ai-ml/ai-model-benchmarking/SKILL.md +209 -0
  136. package/skills/domains/ai-ml/annotated-dl-papers-guide/SKILL.md +159 -0
  137. package/skills/domains/ai-ml/anomaly-detection-papers-guide/SKILL.md +167 -0
  138. package/skills/domains/ai-ml/autonomous-agents-papers-guide/SKILL.md +178 -0
  139. package/skills/domains/ai-ml/dl-transformer-finetune/SKILL.md +239 -0
  140. package/skills/domains/ai-ml/domain-adaptation-papers-guide/SKILL.md +173 -0
  141. package/skills/domains/ai-ml/generative-ai-guide/SKILL.md +146 -0
  142. package/skills/domains/ai-ml/graph-learning-papers-guide/SKILL.md +125 -0
  143. package/skills/domains/ai-ml/huggingface-inference-guide/SKILL.md +196 -0
  144. package/skills/domains/ai-ml/keras-deep-learning/SKILL.md +210 -0
  145. package/skills/domains/ai-ml/kolmogorov-arnold-networks-guide/SKILL.md +185 -0
  146. package/skills/domains/ai-ml/llm-from-scratch-guide/SKILL.md +124 -0
  147. package/skills/domains/ai-ml/ml-pipeline-guide/SKILL.md +295 -0
  148. package/skills/domains/ai-ml/nlp-toolkit-guide/SKILL.md +247 -0
  149. package/skills/domains/ai-ml/npcpy-research-guide/SKILL.md +137 -0
  150. package/skills/domains/ai-ml/pytorch-guide/SKILL.md +281 -0
  151. package/skills/domains/ai-ml/pytorch-lightning-guide/SKILL.md +244 -0
  152. package/skills/domains/ai-ml/responsible-ai-guide/SKILL.md +126 -0
  153. package/skills/domains/ai-ml/tensorflow-guide/SKILL.md +241 -0
  154. package/skills/domains/ai-ml/vmas-simulator-guide/SKILL.md +129 -0
  155. package/skills/domains/biomedical/bioagents-guide/SKILL.md +308 -0
  156. package/skills/domains/biomedical/clawbio-guide/SKILL.md +167 -0
  157. package/skills/domains/biomedical/clinical-dialogue-agents-guide/SKILL.md +145 -0
  158. package/skills/domains/biomedical/ena-sequence-api/SKILL.md +175 -0
  159. package/skills/domains/biomedical/genomas-guide/SKILL.md +126 -0
  160. package/skills/domains/biomedical/genotex-benchmark-guide/SKILL.md +125 -0
  161. package/skills/domains/biomedical/med-researcher-guide/SKILL.md +161 -0
  162. package/skills/domains/biomedical/med-researcher-r1-guide/SKILL.md +146 -0
  163. package/skills/domains/biomedical/medgeclaw-guide/SKILL.md +345 -0
  164. package/skills/domains/biomedical/medical-imaging-guide/SKILL.md +305 -0
  165. package/skills/domains/biomedical/ncbi-blast-api/SKILL.md +195 -0
  166. package/skills/domains/biomedical/ncbi-datasets-api/SKILL.md +220 -0
  167. package/skills/domains/biomedical/quickgo-api/SKILL.md +181 -0
  168. package/skills/domains/business/architecture-design-guide/SKILL.md +279 -0
  169. package/skills/domains/business/innovation-management-guide/SKILL.md +257 -0
  170. package/skills/domains/business/operations-research-guide/SKILL.md +258 -0
  171. package/skills/domains/business/xpert-bi-guide/SKILL.md +84 -0
  172. package/skills/domains/chemistry/cactus-cheminformatics-guide/SKILL.md +89 -0
  173. package/skills/domains/chemistry/chemeagle-guide/SKILL.md +147 -0
  174. package/skills/domains/chemistry/chemgraph-agent-guide/SKILL.md +120 -0
  175. package/skills/domains/chemistry/molecular-dynamics-guide/SKILL.md +237 -0
  176. package/skills/domains/chemistry/pubchem-api-guide/SKILL.md +180 -0
  177. package/skills/domains/chemistry/spectroscopy-analysis-guide/SKILL.md +290 -0
  178. package/skills/domains/cs/ai-security-papers-guide/SKILL.md +103 -0
  179. package/skills/domains/cs/code-llm-papers-guide/SKILL.md +131 -0
  180. package/skills/domains/cs/distributed-systems-guide/SKILL.md +268 -0
  181. package/skills/domains/cs/formal-verification-guide/SKILL.md +298 -0
  182. package/skills/domains/cs/gaussian-splatting-papers-guide/SKILL.md +158 -0
  183. package/skills/domains/cs/llm-aiops-guide/SKILL.md +70 -0
  184. package/skills/domains/cs/software-heritage-api/SKILL.md +200 -0
  185. package/skills/domains/ecology/species-distribution-guide/SKILL.md +343 -0
  186. package/skills/domains/economics/imf-data-api-guide/SKILL.md +174 -0
  187. package/skills/domains/economics/nber-working-papers-api/SKILL.md +177 -0
  188. package/skills/domains/economics/post-labor-economics/SKILL.md +254 -0
  189. package/skills/domains/economics/pricing-psychology-guide/SKILL.md +273 -0
  190. package/skills/domains/economics/repec-economics-api/SKILL.md +188 -0
  191. package/skills/domains/economics/world-bank-data-guide/SKILL.md +179 -0
  192. package/skills/domains/education/academic-study-methods/SKILL.md +228 -0
  193. package/skills/domains/education/assessment-design-guide/SKILL.md +213 -0
  194. package/skills/domains/education/educational-research-methods/SKILL.md +179 -0
  195. package/skills/domains/education/edumcp-guide/SKILL.md +74 -0
  196. package/skills/domains/education/mooc-analytics-guide/SKILL.md +206 -0
  197. package/skills/domains/education/open-syllabus-api/SKILL.md +171 -0
  198. package/skills/domains/finance/akshare-finance-data/SKILL.md +207 -0
  199. package/skills/domains/finance/finsight-research-guide/SKILL.md +113 -0
  200. package/skills/domains/finance/options-analytics-agent-guide/SKILL.md +117 -0
  201. package/skills/domains/finance/portfolio-optimization-guide/SKILL.md +279 -0
  202. package/skills/domains/finance/risk-modeling-guide/SKILL.md +260 -0
  203. package/skills/domains/finance/stata-accounting-research/SKILL.md +372 -0
  204. package/skills/domains/geoscience/climate-modeling-guide/SKILL.md +215 -0
  205. package/skills/domains/geoscience/pangaea-data-api/SKILL.md +197 -0
  206. package/skills/domains/geoscience/satellite-remote-sensing/SKILL.md +193 -0
  207. package/skills/domains/geoscience/seismology-data-guide/SKILL.md +208 -0
  208. package/skills/domains/humanities/digital-humanities-methods/SKILL.md +232 -0
  209. package/skills/domains/humanities/ethical-philosophy-guide/SKILL.md +244 -0
  210. package/skills/domains/humanities/history-research-guide/SKILL.md +260 -0
  211. package/skills/domains/humanities/political-history-guide/SKILL.md +241 -0
  212. package/skills/domains/law/caselaw-access-api/SKILL.md +149 -0
  213. package/skills/domains/law/legal-agent-skills-guide/SKILL.md +132 -0
  214. package/skills/domains/law/legal-nlp-guide/SKILL.md +236 -0
  215. package/skills/domains/law/legal-research-methods/SKILL.md +190 -0
  216. package/skills/domains/law/opencontracts-guide/SKILL.md +168 -0
  217. package/skills/domains/law/patent-analysis-guide/SKILL.md +257 -0
  218. package/skills/domains/law/regulatory-compliance-guide/SKILL.md +267 -0
  219. package/skills/domains/math/lean-theorem-proving-guide/SKILL.md +140 -0
  220. package/skills/domains/math/symbolic-computation-guide/SKILL.md +263 -0
  221. package/skills/domains/math/topology-data-analysis/SKILL.md +305 -0
  222. package/skills/domains/pharma/clinical-trial-design-guide/SKILL.md +271 -0
  223. package/skills/domains/pharma/drug-target-interaction/SKILL.md +242 -0
  224. package/skills/domains/pharma/madd-drug-discovery-guide/SKILL.md +153 -0
  225. package/skills/domains/pharma/pharmacovigilance-guide/SKILL.md +216 -0
  226. package/skills/domains/physics/astrophysics-data-guide/SKILL.md +305 -0
  227. package/skills/domains/physics/particle-physics-guide/SKILL.md +287 -0
  228. package/skills/domains/social-science/ipums-microdata-api/SKILL.md +211 -0
  229. package/skills/domains/social-science/network-analysis-guide/SKILL.md +310 -0
  230. package/skills/domains/social-science/psychology-research-guide/SKILL.md +270 -0
  231. package/skills/domains/social-science/sociology-research-guide/SKILL.md +238 -0
  232. package/skills/domains/social-science/sociology-research-methods/SKILL.md +181 -0
  233. package/skills/literature/discovery/arxiv-paper-monitoring/SKILL.md +233 -0
  234. package/skills/literature/discovery/paper-recommendation-guide/SKILL.md +120 -0
  235. package/skills/literature/discovery/papers-we-love-guide/SKILL.md +169 -0
  236. package/skills/literature/discovery/semantic-paper-radar/SKILL.md +144 -0
  237. package/skills/literature/discovery/zotero-arxiv-daily-guide/SKILL.md +94 -0
  238. package/skills/literature/fulltext/bioc-pmc-api/SKILL.md +146 -0
  239. package/skills/literature/fulltext/core-api-guide/SKILL.md +144 -0
  240. package/skills/literature/fulltext/dataverse-api/SKILL.md +215 -0
  241. package/skills/literature/fulltext/hal-archive-api/SKILL.md +218 -0
  242. package/skills/literature/fulltext/institutional-repository-guide/SKILL.md +212 -0
  243. package/skills/literature/fulltext/open-access-mining-guide/SKILL.md +341 -0
  244. package/skills/literature/fulltext/osf-api/SKILL.md +212 -0
  245. package/skills/literature/fulltext/pmc-ftp-bulk-download/SKILL.md +182 -0
  246. package/skills/literature/fulltext/zotero-ai-butler-guide/SKILL.md +166 -0
  247. package/skills/literature/fulltext/zotero-scihub-guide/SKILL.md +168 -0
  248. package/skills/literature/metadata/academic-paper-summarizer/SKILL.md +101 -0
  249. package/skills/literature/metadata/bibliometrix-guide/SKILL.md +164 -0
  250. package/skills/literature/metadata/crossref-event-data-api/SKILL.md +183 -0
  251. package/skills/literature/metadata/doi-content-negotiation/SKILL.md +202 -0
  252. package/skills/literature/metadata/orkg-api/SKILL.md +153 -0
  253. package/skills/literature/metadata/plumx-metrics-api/SKILL.md +188 -0
  254. package/skills/literature/metadata/ror-organization-api/SKILL.md +208 -0
  255. package/skills/literature/metadata/sophosia-reference-guide/SKILL.md +110 -0
  256. package/skills/literature/metadata/viaf-authority-api/SKILL.md +209 -0
  257. package/skills/literature/metadata/wikidata-api-guide/SKILL.md +156 -0
  258. package/skills/literature/metadata/zoplicate-dedup-guide/SKILL.md +147 -0
  259. package/skills/literature/metadata/zotero-actions-tags-guide/SKILL.md +212 -0
  260. package/skills/literature/metadata/zotmoov-guide/SKILL.md +120 -0
  261. package/skills/literature/metadata/zutilo-guide/SKILL.md +140 -0
  262. package/skills/literature/search/arxiv-batch-reporting/SKILL.md +133 -0
  263. package/skills/literature/search/arxiv-cli-tools/SKILL.md +172 -0
  264. package/skills/literature/search/arxiv-osiris/SKILL.md +199 -0
  265. package/skills/literature/search/arxiv-paper-processor/SKILL.md +141 -0
  266. package/skills/literature/search/baidu-scholar-guide/SKILL.md +110 -0
  267. package/skills/literature/search/base-academic-search/SKILL.md +196 -0
  268. package/skills/literature/search/chatpaper-guide/SKILL.md +122 -0
  269. package/skills/literature/search/citeseerx-api/SKILL.md +183 -0
  270. package/skills/literature/search/deep-literature-search/SKILL.md +149 -0
  271. package/skills/literature/search/deepgit-search-guide/SKILL.md +147 -0
  272. package/skills/literature/search/eric-education-api/SKILL.md +199 -0
  273. package/skills/literature/search/findpapers-guide/SKILL.md +177 -0
  274. package/skills/literature/search/ieee-xplore-api/SKILL.md +177 -0
  275. package/skills/literature/search/lens-scholarly-api/SKILL.md +211 -0
  276. package/skills/literature/search/multi-database-literature-search/SKILL.md +198 -0
  277. package/skills/literature/search/open-library-api/SKILL.md +196 -0
  278. package/skills/literature/search/open-semantic-search-guide/SKILL.md +190 -0
  279. package/skills/literature/search/openaire-api/SKILL.md +141 -0
  280. package/skills/literature/search/paper-search-mcp-guide/SKILL.md +107 -0
  281. package/skills/literature/search/papers-chat-guide/SKILL.md +194 -0
  282. package/skills/literature/search/pasa-paper-search-guide/SKILL.md +138 -0
  283. package/skills/literature/search/plos-open-access-api/SKILL.md +203 -0
  284. package/skills/literature/search/scielo-api/SKILL.md +182 -0
  285. package/skills/literature/search/share-research-api/SKILL.md +129 -0
  286. package/skills/literature/search/worldcat-search-api/SKILL.md +224 -0
  287. package/skills/research/automation/ai-scientist-v2-guide/SKILL.md +284 -0
  288. package/skills/research/automation/aim-experiment-guide/SKILL.md +234 -0
  289. package/skills/research/automation/claude-academic-workflow-guide/SKILL.md +202 -0
  290. package/skills/research/automation/coexist-ai-guide/SKILL.md +149 -0
  291. package/skills/research/automation/datagen-research-guide/SKILL.md +131 -0
  292. package/skills/research/automation/foam-agent-guide/SKILL.md +203 -0
  293. package/skills/research/automation/kedro-pipeline-guide/SKILL.md +216 -0
  294. package/skills/research/automation/mle-agent-guide/SKILL.md +139 -0
  295. package/skills/research/automation/paper-to-agent-guide/SKILL.md +116 -0
  296. package/skills/research/automation/rd-agent-guide/SKILL.md +246 -0
  297. package/skills/research/automation/research-paper-orchestrator/SKILL.md +254 -0
  298. package/skills/research/deep-research/academic-deep-research/SKILL.md +190 -0
  299. package/skills/research/deep-research/auto-deep-research-guide/SKILL.md +141 -0
  300. package/skills/research/deep-research/cognitive-kernel-guide/SKILL.md +200 -0
  301. package/skills/research/deep-research/corvus-research-guide/SKILL.md +132 -0
  302. package/skills/research/deep-research/deep-research-pro/SKILL.md +213 -0
  303. package/skills/research/deep-research/deep-research-work/SKILL.md +204 -0
  304. package/skills/research/deep-research/deep-searcher-guide/SKILL.md +253 -0
  305. package/skills/research/deep-research/gpt-researcher-guide/SKILL.md +191 -0
  306. package/skills/research/deep-research/in-depth-research-guide/SKILL.md +205 -0
  307. package/skills/research/deep-research/khoj-research-guide/SKILL.md +200 -0
  308. package/skills/research/deep-research/kosmos-scientist-guide/SKILL.md +185 -0
  309. package/skills/research/deep-research/llm-scientific-discovery-guide/SKILL.md +178 -0
  310. package/skills/research/deep-research/local-deep-research-guide/SKILL.md +253 -0
  311. package/skills/research/deep-research/open-researcher-guide/SKILL.md +138 -0
  312. package/skills/research/deep-research/tongyi-deep-research-guide/SKILL.md +217 -0
  313. package/skills/research/funding/eu-horizon-guide/SKILL.md +244 -0
  314. package/skills/research/funding/grant-budget-guide/SKILL.md +284 -0
  315. package/skills/research/funding/nih-reporter-api-guide/SKILL.md +166 -0
  316. package/skills/research/funding/nsf-award-api-guide/SKILL.md +133 -0
  317. package/skills/research/methodology/academic-mentor-guide/SKILL.md +169 -0
  318. package/skills/research/methodology/claude-scientific-guide/SKILL.md +122 -0
  319. package/skills/research/methodology/deep-innovator-guide/SKILL.md +242 -0
  320. package/skills/research/methodology/osf-api-guide/SKILL.md +165 -0
  321. package/skills/research/methodology/parsifal-slr-guide/SKILL.md +154 -0
  322. package/skills/research/methodology/research-paper-kb/SKILL.md +263 -0
  323. package/skills/research/methodology/research-pipeline-units-guide/SKILL.md +169 -0
  324. package/skills/research/methodology/research-town-guide/SKILL.md +263 -0
  325. package/skills/research/methodology/slr-automation-guide/SKILL.md +235 -0
  326. package/skills/research/paper-review/automated-review-guide/SKILL.md +281 -0
  327. package/skills/research/paper-review/latte-review-guide/SKILL.md +175 -0
  328. package/skills/research/paper-review/paper-compare-guide/SKILL.md +238 -0
  329. package/skills/research/paper-review/paper-critique-framework/SKILL.md +181 -0
  330. package/skills/research/paper-review/paper-digest-guide/SKILL.md +240 -0
  331. package/skills/research/paper-review/paper-research-assistant/SKILL.md +231 -0
  332. package/skills/research/paper-review/research-quality-filter/SKILL.md +261 -0
  333. package/skills/research/paper-review/review-response-guide/SKILL.md +275 -0
  334. package/skills/tools/code-exec/contextplus-mcp-guide/SKILL.md +110 -0
  335. package/skills/tools/code-exec/google-colab-guide/SKILL.md +276 -0
  336. package/skills/tools/code-exec/kaggle-api-guide/SKILL.md +216 -0
  337. package/skills/tools/code-exec/overleaf-cli-guide/SKILL.md +279 -0
  338. package/skills/tools/diagram/clawphd-guide/SKILL.md +149 -0
  339. package/skills/tools/diagram/code-flow-visualizer/SKILL.md +197 -0
  340. package/skills/tools/diagram/excalidraw-diagram-guide/SKILL.md +170 -0
  341. package/skills/tools/diagram/json-data-visualizer/SKILL.md +270 -0
  342. package/skills/tools/diagram/kroki-diagram-api/SKILL.md +198 -0
  343. package/skills/tools/diagram/mermaid-architect-guide/SKILL.md +219 -0
  344. package/skills/tools/diagram/scientific-graphical-abstract/SKILL.md +201 -0
  345. package/skills/tools/diagram/tldraw-whiteboard-guide/SKILL.md +397 -0
  346. package/skills/tools/document/docsgpt-guide/SKILL.md +130 -0
  347. package/skills/tools/document/large-document-reader/SKILL.md +202 -0
  348. package/skills/tools/document/md2pdf-xelatex/SKILL.md +212 -0
  349. package/skills/tools/document/openpaper-guide/SKILL.md +232 -0
  350. package/skills/tools/document/paper-parse-guide/SKILL.md +243 -0
  351. package/skills/tools/document/weknora-guide/SKILL.md +216 -0
  352. package/skills/tools/document/zotero-addon-market-guide/SKILL.md +108 -0
  353. package/skills/tools/document/zotero-night-theme-guide/SKILL.md +142 -0
  354. package/skills/tools/document/zotero-style-guide/SKILL.md +217 -0
  355. package/skills/tools/knowledge-graph/citation-network-builder/SKILL.md +244 -0
  356. package/skills/tools/knowledge-graph/concept-map-generator/SKILL.md +284 -0
  357. package/skills/tools/knowledge-graph/graphiti-guide/SKILL.md +219 -0
  358. package/skills/tools/knowledge-graph/mimir-memory-guide/SKILL.md +135 -0
  359. package/skills/tools/knowledge-graph/notero-zotero-notion-guide/SKILL.md +187 -0
  360. package/skills/tools/knowledge-graph/open-webui-tools-guide/SKILL.md +156 -0
  361. package/skills/tools/knowledge-graph/openspg-guide/SKILL.md +210 -0
  362. package/skills/tools/knowledge-graph/paperpile-notion-guide/SKILL.md +84 -0
  363. package/skills/tools/knowledge-graph/zotero-markdb-connect-guide/SKILL.md +162 -0
  364. package/skills/tools/ocr-translate/latex-translation-guide/SKILL.md +176 -0
  365. package/skills/tools/ocr-translate/math-equation-renderer/SKILL.md +198 -0
  366. package/skills/tools/ocr-translate/pdf-math-translate-guide/SKILL.md +141 -0
  367. package/skills/tools/ocr-translate/zotero-pdf-translate-guide/SKILL.md +95 -0
  368. package/skills/tools/ocr-translate/zotero-pdf2zh-guide/SKILL.md +143 -0
  369. package/skills/tools/scraping/dataset-finder-guide/SKILL.md +253 -0
  370. package/skills/tools/scraping/easy-spider-guide/SKILL.md +250 -0
  371. package/skills/tools/scraping/google-scholar-scraper/SKILL.md +255 -0
  372. package/skills/tools/scraping/repository-harvesting-guide/SKILL.md +310 -0
  373. package/skills/writing/citation/academic-citation-manager/SKILL.md +314 -0
  374. package/skills/writing/citation/academic-citation-manager-guide/SKILL.md +182 -0
  375. package/skills/writing/citation/citation-assistant-skill/SKILL.md +192 -0
  376. package/skills/writing/citation/jabref-reference-guide/SKILL.md +127 -0
  377. package/skills/writing/citation/jasminum-zotero-guide/SKILL.md +103 -0
  378. package/skills/writing/citation/mendeley-api/SKILL.md +231 -0
  379. package/skills/writing/citation/obsidian-citation-guide/SKILL.md +164 -0
  380. package/skills/writing/citation/obsidian-zotero-guide/SKILL.md +137 -0
  381. package/skills/writing/citation/onecite-reference-guide/SKILL.md +168 -0
  382. package/skills/writing/citation/papersgpt-zotero-guide/SKILL.md +132 -0
  383. package/skills/writing/citation/papis-cli-guide/SKILL.md +213 -0
  384. package/skills/writing/citation/zotero-better-bibtex-guide/SKILL.md +107 -0
  385. package/skills/writing/citation/zotero-better-notes-guide/SKILL.md +121 -0
  386. package/skills/writing/citation/zotero-gpt-guide/SKILL.md +111 -0
  387. package/skills/writing/citation/zotero-mcp-guide/SKILL.md +164 -0
  388. package/skills/writing/citation/zotero-mdnotes-guide/SKILL.md +162 -0
  389. package/skills/writing/citation/zotero-reference-guide/SKILL.md +139 -0
  390. package/skills/writing/citation/zotero-scholar-guide/SKILL.md +294 -0
  391. package/skills/writing/citation/zotfile-attachment-guide/SKILL.md +140 -0
  392. package/skills/writing/composition/ml-paper-writing/SKILL.md +163 -0
  393. package/skills/writing/composition/opendraft-thesis-guide/SKILL.md +200 -0
  394. package/skills/writing/composition/paper-debugger-guide/SKILL.md +143 -0
  395. package/skills/writing/composition/paperforge-guide/SKILL.md +205 -0
  396. package/skills/writing/composition/research-paper-writer/SKILL.md +226 -0
  397. package/skills/writing/composition/scientific-writing-resources/SKILL.md +151 -0
  398. package/skills/writing/composition/scientific-writing-wrapper/SKILL.md +153 -0
  399. package/skills/writing/latex/academic-writing-latex/SKILL.md +285 -0
  400. package/skills/writing/latex/latex-drawing-collection/SKILL.md +154 -0
  401. package/skills/writing/latex/latex-templates-collection/SKILL.md +159 -0
  402. package/skills/writing/latex/md-to-pdf-academic/SKILL.md +230 -0
  403. package/skills/writing/latex/tex-render-guide/SKILL.md +243 -0
  404. package/skills/writing/polish/academic-tone-guide/SKILL.md +209 -0
  405. package/skills/writing/polish/chinese-text-humanizer/SKILL.md +140 -0
  406. package/skills/writing/polish/conciseness-editing-guide/SKILL.md +225 -0
  407. package/skills/writing/polish/paper-polish-guide/SKILL.md +160 -0
  408. package/skills/writing/templates/arxiv-preprint-template/SKILL.md +184 -0
  409. package/skills/writing/templates/elegant-paper-template/SKILL.md +141 -0
  410. package/skills/writing/templates/graphical-abstract-guide/SKILL.md +183 -0
  411. package/skills/writing/templates/novathesis-guide/SKILL.md +152 -0
  412. package/skills/writing/templates/scientific-article-pdf/SKILL.md +261 -0
  413. package/skills/writing/templates/sjtuthesis-guide/SKILL.md +197 -0
  414. package/skills/writing/templates/thuthesis-guide/SKILL.md +181 -0
  415. package/skills/literature/fulltext/repository-harvesting-guide/SKILL.md +0 -207
@@ -0,0 +1,144 @@
1
+ ---
2
+ name: core-api-guide
3
+ description: "Search and retrieve open access research papers via CORE aggregator"
4
+ metadata:
5
+ openclaw:
6
+ emoji: "🔬"
7
+ category: "literature"
8
+ subcategory: "fulltext"
9
+ keywords: ["open-access", "fulltext", "research-papers", "aggregator", "CORE"]
10
+ source: "https://core.ac.uk/documentation/api"
11
+ ---
12
+
13
+ # CORE API Guide
14
+
15
+ ## Overview
16
+
17
+ CORE (COnnecting REpositories) is the world's largest aggregator of open access research papers, providing access to over 130 million articles harvested from thousands of data providers worldwide. The CORE API enables programmatic search, retrieval, and analysis of scholarly full-text content across repositories, journals, and preprint servers.
18
+
19
+ The API is particularly valuable for researchers conducting systematic reviews, bibliometric analyses, and literature mining tasks. Unlike many scholarly APIs that only provide metadata, CORE specializes in delivering full-text content, making it essential for text mining and natural language processing workflows in academic research.
20
+
21
+ CORE's v3 API provides a RESTful interface with JSON responses, supporting complex search queries with Boolean operators, field-specific filtering, and batch operations. It is free for non-commercial academic use, though an API key is required to access the service.
22
+
23
+ ## Authentication
24
+
25
+ CORE requires a free API key for all requests. Register at https://core.ac.uk/services/api to obtain one.
26
+
27
+ Always store your API key in an environment variable and reference it in requests:
28
+
29
+ ```bash
30
+ export CORE_API_KEY=$CORE_API_KEY
31
+ ```
32
+
33
+ Pass the key via the `Authorization` header:
34
+
35
+ ```bash
36
+ curl -H "Authorization: Bearer $CORE_API_KEY" \
37
+ "https://api.core.ac.uk/v3/search/works?q=machine+learning"
38
+ ```
39
+
40
+ ## Core Endpoints
41
+
42
+ ### Search Works
43
+
44
+ Search across the entire CORE corpus with full-text and metadata queries.
45
+
46
+ ```
47
+ GET https://api.core.ac.uk/v3/search/works?q={query}&limit={n}&offset={n}
48
+ ```
49
+
50
+ **Parameters:**
51
+ - `q` (required): Search query string, supports Boolean operators (AND, OR, NOT)
52
+ - `limit`: Number of results (default 10, max 100)
53
+ - `offset`: Pagination offset
54
+ - `entity_type`: Filter by type (e.g., `journal-article`, `preprint`)
55
+
56
+ **Example: Search for climate change papers with full text:**
57
+
58
+ ```bash
59
+ curl -s -H "Authorization: Bearer $CORE_API_KEY" \
60
+ "https://api.core.ac.uk/v3/search/works?q=climate+change+adaptation&limit=5" \
61
+ | python3 -m json.tool
62
+ ```
63
+
64
+ **Python example:**
65
+
66
+ ```python
67
+ import requests
68
+ import os
69
+
70
+ headers = {"Authorization": f"Bearer {os.environ['CORE_API_KEY']}"}
71
+ params = {
72
+ "q": "deep learning AND medical imaging",
73
+ "limit": 20,
74
+ "offset": 0
75
+ }
76
+ resp = requests.get("https://api.core.ac.uk/v3/search/works", headers=headers, params=params)
77
+ data = resp.json()
78
+
79
+ for result in data.get("results", []):
80
+ print(f"Title: {result.get('title')}")
81
+ print(f"DOI: {result.get('doi')}")
82
+ print(f"Year: {result.get('yearPublished')}")
83
+ print(f"Full text length: {len(result.get('fullText', ''))}")
84
+ print("---")
85
+ ```
86
+
87
+ ### Get Work by ID
88
+
89
+ Retrieve a specific paper by its CORE ID or DOI.
90
+
91
+ ```
92
+ GET https://api.core.ac.uk/v3/works/{core_id}
93
+ ```
94
+
95
+ ```bash
96
+ curl -s -H "Authorization: Bearer $CORE_API_KEY" \
97
+ "https://api.core.ac.uk/v3/works/doi:10.1234/example.doi" \
98
+ | python3 -m json.tool
99
+ ```
100
+
101
+ ### Batch Retrieval
102
+
103
+ Retrieve multiple works in a single request using POST with a list of IDs.
104
+
105
+ ```bash
106
+ curl -s -X POST -H "Authorization: Bearer $CORE_API_KEY" \
107
+ -H "Content-Type: application/json" \
108
+ -d '[12345, 67890, 11111]' \
109
+ "https://api.core.ac.uk/v3/works"
110
+ ```
111
+
112
+ ### Search Data Providers
113
+
114
+ List or search CORE's data providers (repositories, journals).
115
+
116
+ ```
117
+ GET https://api.core.ac.uk/v3/data-providers?q={query}
118
+ ```
119
+
120
+ ## Common Research Patterns
121
+
122
+ **Systematic Literature Review:** Use Boolean queries to replicate a search strategy across the full-text corpus. Combine with date filters to identify papers within a specific time window, then export results for screening in tools like Rayyan or Covidence.
123
+
124
+ **Full-Text Mining:** Retrieve full-text content programmatically for NLP pipelines. Extract named entities, key phrases, or citation contexts at scale across thousands of papers.
125
+
126
+ **Repository Coverage Analysis:** Query data providers to understand which institutional repositories contribute to a specific field, useful for bibliometric and open-access policy research.
127
+
128
+ **Trend Detection:** Run time-series queries for specific terms and track publication volume over years to identify emerging research fronts.
129
+
130
+ ## Rate Limits and Best Practices
131
+
132
+ - **Free tier:** 150 requests per 15-minute window (10 req/min effective)
133
+ - **Batch endpoints:** Use batch retrieval for multiple IDs to minimize request count
134
+ - **Pagination:** Always use `offset` and `limit` for large result sets; do not fetch all results in one call
135
+ - **Caching:** Cache responses locally for repeat queries, especially for static metadata
136
+ - **Respect robots.txt:** When downloading full texts, add delays between requests
137
+ - **Error handling:** The API returns standard HTTP status codes; implement exponential backoff for 429 (rate limit) responses
138
+
139
+ ## References
140
+
141
+ - CORE API v3 Documentation: https://core.ac.uk/documentation/api
142
+ - CORE Dashboard and Key Registration: https://core.ac.uk/services/api
143
+ - CORE Data Dumps (for bulk access): https://core.ac.uk/documentation/dataset
144
+ - CORE GitHub: https://github.com/oacore
@@ -0,0 +1,215 @@
1
+ ---
2
+ name: dataverse-api
3
+ description: "Deposit and discover research datasets via Harvard Dataverse API"
4
+ metadata:
5
+ openclaw:
6
+ emoji: "🗄️"
7
+ category: "literature"
8
+ subcategory: "fulltext"
9
+ keywords: ["Dataverse", "research data", "data repository", "Harvard", "dataset deposit", "data sharing"]
10
+ source: "https://dataverse.org/"
11
+ ---
12
+
13
+ # Harvard Dataverse API
14
+
15
+ ## Overview
16
+
17
+ Dataverse is an open-source research data repository platform developed by Harvard IQSS, hosting 150K+ datasets across 80+ installations worldwide. The Harvard Dataverse alone has 130K+ datasets covering social science, natural science, and humanities. The API supports search, metadata retrieval, file download, and dataset deposit. Free, no authentication for read access.
18
+
19
+ ## API Endpoints
20
+
21
+ ### Base URL
22
+
23
+ ```
24
+ https://dataverse.harvard.edu/api
25
+ ```
26
+
27
+ ### Search
28
+
29
+ ```bash
30
+ # Search datasets
31
+ curl "https://dataverse.harvard.edu/api/search?q=climate+change&type=dataset&per_page=20"
32
+
33
+ # Search files within datasets
34
+ curl "https://dataverse.harvard.edu/api/search?q=temperature+data&type=file&per_page=20"
35
+
36
+ # Filter by subject
37
+ curl "https://dataverse.harvard.edu/api/search?q=survey+data&type=dataset&\
38
+ fq=subject_ss:\"Social Sciences\""
39
+
40
+ # Filter by publication date
41
+ curl "https://dataverse.harvard.edu/api/search?q=genomics&type=dataset&\
42
+ fq=dateSort:[2024-01-01T00:00:00Z TO *]"
43
+
44
+ # Sort by relevance or date
45
+ curl "https://dataverse.harvard.edu/api/search?q=machine+learning&type=dataset&\
46
+ sort=date&order=desc"
47
+ ```
48
+
49
+ ### Get Dataset Metadata
50
+
51
+ ```bash
52
+ # By persistent ID (DOI)
53
+ curl "https://dataverse.harvard.edu/api/datasets/:persistentId/?persistentId=doi:10.7910/DVN/EXAMPLE"
54
+
55
+ # By dataset ID
56
+ curl "https://dataverse.harvard.edu/api/datasets/12345"
57
+
58
+ # Get dataset versions
59
+ curl "https://dataverse.harvard.edu/api/datasets/:persistentId/versions?persistentId=doi:10.7910/DVN/EXAMPLE"
60
+ ```
61
+
62
+ ### Download Files
63
+
64
+ ```bash
65
+ # Download a specific file by ID
66
+ curl -O "https://dataverse.harvard.edu/api/access/datafile/67890"
67
+
68
+ # Download with original format
69
+ curl -O "https://dataverse.harvard.edu/api/access/datafile/67890?format=original"
70
+
71
+ # Download all files in a dataset (as zip)
72
+ curl -O "https://dataverse.harvard.edu/api/access/dataset/:persistentId/?persistentId=doi:10.7910/DVN/EXAMPLE"
73
+ ```
74
+
75
+ ### Query Parameters (Search)
76
+
77
+ | Parameter | Description | Example |
78
+ |-----------|-------------|---------|
79
+ | `q` | Search query | `q=voter+turnout` |
80
+ | `type` | Item type | `dataset`, `file`, `dataverse` |
81
+ | `per_page` | Results per page (max 1000) | `per_page=50` |
82
+ | `start` | Pagination offset | `start=50` |
83
+ | `sort` | Sort field | `name`, `date` |
84
+ | `order` | Sort order | `asc`, `desc` |
85
+ | `fq` | Filter query (Solr) | `fq=subject_ss:"Medicine"` |
86
+
87
+ ## Response Structure
88
+
89
+ ```json
90
+ {
91
+ "status": "OK",
92
+ "data": {
93
+ "q": "climate change",
94
+ "total_count": 2450,
95
+ "items": [
96
+ {
97
+ "name": "Global Temperature Dataset 2024",
98
+ "type": "dataset",
99
+ "url": "https://doi.org/10.7910/DVN/EXAMPLE",
100
+ "global_id": "doi:10.7910/DVN/EXAMPLE",
101
+ "description": "Monthly global temperature anomalies...",
102
+ "published_at": "2024-03-15",
103
+ "publisher": "Harvard Dataverse",
104
+ "subjects": ["Earth and Environmental Sciences"],
105
+ "fileCount": 12,
106
+ "citation": "Smith, J. (2024). Global Temperature Dataset..."
107
+ }
108
+ ]
109
+ }
110
+ }
111
+ ```
112
+
113
+ ## Python Usage
114
+
115
+ ```python
116
+ import requests
117
+
118
+ BASE_URL = "https://dataverse.harvard.edu/api"
119
+
120
+
121
+ def search_datasets(query: str, per_page: int = 20,
122
+ subject: str = None) -> list:
123
+ """Search Harvard Dataverse for datasets."""
124
+ params = {
125
+ "q": query,
126
+ "type": "dataset",
127
+ "per_page": per_page,
128
+ "sort": "date",
129
+ "order": "desc",
130
+ }
131
+ if subject:
132
+ params["fq"] = f'subject_ss:"{subject}"'
133
+
134
+ resp = requests.get(f"{BASE_URL}/search", params=params)
135
+ resp.raise_for_status()
136
+ data = resp.json()
137
+
138
+ results = []
139
+ for item in data.get("data", {}).get("items", []):
140
+ results.append({
141
+ "name": item.get("name"),
142
+ "doi": item.get("global_id"),
143
+ "description": item.get("description", "")[:300],
144
+ "published": item.get("published_at"),
145
+ "subjects": item.get("subjects", []),
146
+ "files": item.get("fileCount", 0),
147
+ "url": item.get("url"),
148
+ })
149
+ return results
150
+
151
+
152
+ def get_dataset_files(doi: str) -> list:
153
+ """List files in a dataset."""
154
+ resp = requests.get(
155
+ f"{BASE_URL}/datasets/:persistentId/",
156
+ params={"persistentId": doi},
157
+ )
158
+ resp.raise_for_status()
159
+ data = resp.json().get("data", {})
160
+
161
+ files = []
162
+ version = data.get("latestVersion", {})
163
+ for f in version.get("files", []):
164
+ df = f.get("dataFile", {})
165
+ files.append({
166
+ "id": df.get("id"),
167
+ "filename": df.get("filename"),
168
+ "size": df.get("filesize"),
169
+ "content_type": df.get("contentType"),
170
+ "md5": df.get("md5"),
171
+ })
172
+ return files
173
+
174
+
175
+ def download_file(file_id: int, output_path: str):
176
+ """Download a file from Dataverse."""
177
+ resp = requests.get(
178
+ f"{BASE_URL}/access/datafile/{file_id}",
179
+ stream=True,
180
+ )
181
+ resp.raise_for_status()
182
+ with open(output_path, "wb") as f:
183
+ for chunk in resp.iter_content(chunk_size=8192):
184
+ f.write(chunk)
185
+
186
+
187
+ # Example: find social science datasets
188
+ datasets = search_datasets("income inequality",
189
+ subject="Social Sciences")
190
+ for ds in datasets:
191
+ print(f"[{ds['published']}] {ds['name']} ({ds['files']} files)")
192
+ print(f" DOI: {ds['doi']}")
193
+
194
+ # Example: list files in a dataset
195
+ # files = get_dataset_files("doi:10.7910/DVN/EXAMPLE")
196
+ # for f in files:
197
+ # print(f" {f['filename']} ({f['size']} bytes)")
198
+ ```
199
+
200
+ ## Other Dataverse Installations
201
+
202
+ | Installation | URL | Focus |
203
+ |-------------|-----|-------|
204
+ | Harvard Dataverse | dataverse.harvard.edu | Multi-discipline |
205
+ | UNC Dataverse | dataverse.unc.edu | Social science |
206
+ | AUSSDA | data.aussda.at | Austrian social science |
207
+ | Borealis (Canada) | borealisdata.ca | Canadian research |
208
+ | DataverseNL | dataverse.nl | Dutch research |
209
+
210
+ ## References
211
+
212
+ - [Harvard Dataverse](https://dataverse.harvard.edu/)
213
+ - [Dataverse API Guide](https://guides.dataverse.org/en/latest/api/)
214
+ - [Dataverse Project](https://dataverse.org/)
215
+ - King, G. (2007). "An Introduction to the Dataverse Network." *Sociological Methods & Research* 36(2).
@@ -0,0 +1,218 @@
1
+ ---
2
+ name: hal-archive-api
3
+ description: "Access French and European research via the HAL open archive API"
4
+ metadata:
5
+ openclaw:
6
+ emoji: "🇫🇷"
7
+ category: "literature"
8
+ subcategory: "fulltext"
9
+ keywords: ["HAL", "French research", "open archive", "CNRS", "European research", "institutional repository"]
10
+ source: "https://api.archives-ouvertes.fr/"
11
+ ---
12
+
13
+ # HAL Open Archive API
14
+
15
+ ## Overview
16
+
17
+ HAL (Hyper Articles en Ligne) is France's national open archive for scholarly deposits. Managed by CNRS, it hosts 4M+ full-text documents from French research institutions and international collaborators. The API provides Solr-based search with full metadata, PDF links, and OAI-PMH harvesting. Free, no authentication required.
18
+
19
+ ## API Endpoints
20
+
21
+ ### Search API
22
+
23
+ ```bash
24
+ # Keyword search
25
+ curl "https://api.archives-ouvertes.fr/search/?q=machine+learning&rows=20&wt=json"
26
+
27
+ # Search specific fields
28
+ curl "https://api.archives-ouvertes.fr/search/?q=title_s:\"deep learning\"&wt=json"
29
+
30
+ # Filter by document type
31
+ curl "https://api.archives-ouvertes.fr/search/?q=neural+networks&\
32
+ fq=docType_s:ART&rows=20&wt=json"
33
+
34
+ # Filter by year and language
35
+ curl "https://api.archives-ouvertes.fr/search/?q=climate+change&\
36
+ fq=producedDateY_i:[2023 TO 2026]&fq=language_s:en&wt=json"
37
+
38
+ # Filter by institution
39
+ curl "https://api.archives-ouvertes.fr/search/?q=robotics&\
40
+ fq=structId_i:441569&wt=json"
41
+
42
+ # Return specific fields
43
+ curl "https://api.archives-ouvertes.fr/search/?q=CRISPR&\
44
+ fl=halId_s,title_s,authFullName_s,producedDateY_i,uri_s,files_s&wt=json"
45
+ ```
46
+
47
+ ### Search Fields
48
+
49
+ | Field | Description | Example |
50
+ |-------|-------------|---------|
51
+ | `title_s` | Title | `title_s:"attention mechanism"` |
52
+ | `authFullName_s` | Author name | `authFullName_s:"Yann LeCun"` |
53
+ | `abstract_s` | Abstract | `abstract_s:transformer` |
54
+ | `keyword_s` | Keywords | `keyword_s:"natural language"` |
55
+ | `producedDateY_i` | Year | `producedDateY_i:2024` |
56
+ | `docType_s` | Document type | `docType_s:ART` |
57
+ | `language_s` | Language | `language_s:en` |
58
+ | `domain_s` | Domain/subject | `domain_s:info.info-ai` |
59
+ | `journalTitle_s` | Journal name | `journalTitle_s:"Nature"` |
60
+ | `structId_i` | Institution ID | Lab/university ID |
61
+
62
+ ### Document Types
63
+
64
+ | Code | Type |
65
+ |------|------|
66
+ | `ART` | Journal article |
67
+ | `COMM` | Conference paper |
68
+ | `THESE` | PhD thesis |
69
+ | `HDR` | Habilitation thesis |
70
+ | `REPORT` | Report |
71
+ | `COUV` | Book chapter |
72
+ | `OUV` | Book |
73
+ | `POSTER` | Poster |
74
+ | `UNDEFINED` | Preprint/other |
75
+
76
+ ### Query Parameters
77
+
78
+ | Parameter | Description |
79
+ |-----------|-------------|
80
+ | `q` | Solr query |
81
+ | `fq` | Filter query |
82
+ | `fl` | Fields to return |
83
+ | `rows` | Results per page (max 10000) |
84
+ | `start` | Pagination offset |
85
+ | `sort` | Sort order (e.g., `producedDateY_i desc`) |
86
+ | `wt` | Format: `json`, `xml`, `csv` |
87
+
88
+ ## Response Structure
89
+
90
+ ```json
91
+ {
92
+ "response": {
93
+ "numFound": 12500,
94
+ "start": 0,
95
+ "docs": [
96
+ {
97
+ "halId_s": "hal-01234567",
98
+ "title_s": ["Deep Learning for Climate Modeling"],
99
+ "authFullName_s": ["Marie Dupont", "Jean Martin"],
100
+ "producedDateY_i": 2024,
101
+ "docType_s": "ART",
102
+ "journalTitle_s": "Environmental Modelling",
103
+ "uri_s": "https://hal.science/hal-01234567",
104
+ "files_s": ["https://hal.science/hal-01234567/document"],
105
+ "domain_s": ["sde.es", "info.info-ai"],
106
+ "abstract_s": ["We propose a novel deep learning approach..."],
107
+ "language_s": ["en"]
108
+ }
109
+ ]
110
+ }
111
+ }
112
+ ```
113
+
114
+ ## Python Usage
115
+
116
+ ```python
117
+ import requests
118
+
119
+ BASE_URL = "https://api.archives-ouvertes.fr/search/"
120
+
121
+
122
+ def search_hal(query: str, rows: int = 20,
123
+ doc_type: str = None, from_year: int = None,
124
+ language: str = None) -> list:
125
+ """Search HAL open archive."""
126
+ params = {
127
+ "q": query,
128
+ "wt": "json",
129
+ "rows": rows,
130
+ "fl": "halId_s,title_s,authFullName_s,producedDateY_i,"
131
+ "uri_s,files_s,docType_s,journalTitle_s,abstract_s",
132
+ "sort": "producedDateY_i desc",
133
+ }
134
+
135
+ fq = []
136
+ if doc_type:
137
+ fq.append(f"docType_s:{doc_type}")
138
+ if from_year:
139
+ fq.append(f"producedDateY_i:[{from_year} TO 2030]")
140
+ if language:
141
+ fq.append(f"language_s:{language}")
142
+ if fq:
143
+ params["fq"] = fq
144
+
145
+ resp = requests.get(BASE_URL, params=params)
146
+ resp.raise_for_status()
147
+ data = resp.json()
148
+
149
+ results = []
150
+ for doc in data.get("response", {}).get("docs", []):
151
+ title = doc.get("title_s", [""])[0] if isinstance(
152
+ doc.get("title_s"), list) else doc.get("title_s", "")
153
+ results.append({
154
+ "hal_id": doc.get("halId_s"),
155
+ "title": title,
156
+ "authors": doc.get("authFullName_s", []),
157
+ "year": doc.get("producedDateY_i"),
158
+ "type": doc.get("docType_s"),
159
+ "journal": doc.get("journalTitle_s"),
160
+ "url": doc.get("uri_s"),
161
+ "pdf": doc.get("files_s", [None])[0],
162
+ })
163
+ return results
164
+
165
+
166
+ def search_theses(topic: str, from_year: int = 2020) -> list:
167
+ """Find French PhD theses on a topic."""
168
+ return search_hal(topic, rows=50, doc_type="THESE",
169
+ from_year=from_year)
170
+
171
+
172
+ def get_institution_publications(struct_id: int,
173
+ from_year: int = 2023) -> list:
174
+ """Get publications from a specific institution."""
175
+ params = {
176
+ "q": "*:*",
177
+ "fq": [f"structId_i:{struct_id}",
178
+ f"producedDateY_i:[{from_year} TO 2030]"],
179
+ "wt": "json",
180
+ "rows": 100,
181
+ "fl": "halId_s,title_s,authFullName_s,producedDateY_i,docType_s",
182
+ "sort": "producedDateY_i desc",
183
+ }
184
+ resp = requests.get(BASE_URL, params=params)
185
+ resp.raise_for_status()
186
+ return resp.json().get("response", {}).get("docs", [])
187
+
188
+
189
+ # Example: find recent French AI research
190
+ papers = search_hal("intelligence artificielle", from_year=2024)
191
+ for p in papers:
192
+ pdf = " [PDF]" if p["pdf"] else ""
193
+ print(f"[{p['year']}] {p['title']}{pdf}")
194
+
195
+ # Example: find PhD theses on NLP
196
+ theses = search_theses("natural language processing")
197
+ for t in theses:
198
+ print(f"{t['title']} — {', '.join(t['authors'][:2])}")
199
+ ```
200
+
201
+ ## HAL Domains
202
+
203
+ | Code | Domain |
204
+ |------|--------|
205
+ | `info` | Computer Science |
206
+ | `math` | Mathematics |
207
+ | `phys` | Physics |
208
+ | `sde` | Environmental Sciences |
209
+ | `sdv` | Life Sciences |
210
+ | `shs` | Social Sciences & Humanities |
211
+ | `chim` | Chemistry |
212
+ | `spi` | Engineering Sciences |
213
+
214
+ ## References
215
+
216
+ - [HAL Open Archive](https://hal.science/)
217
+ - [HAL API Documentation](https://api.archives-ouvertes.fr/docs)
218
+ - [HAL Search Guide](https://doc.archives-ouvertes.fr/en/)