Astervolans/dsh-literature-search ↗★ 1

dsh-literature-search

Literature search for DeepSeek Harness over the official PubMed NCBI E-utilities API (esearch/esummary/efetch/elink) and Google Scholar (SerpApi engine, or direct HTML parsing because Google publishes no Scholar API). Zero runtime dependencies. 适合科研写作场景下快速检索和汇总文献的用户;可配置接口速率与鉴权参数。

패키지
dsh-literature-search
호환성
미검증
Harness peer 범위
^0.1.0-rc.6
Cordis peer 범위
^4.0.1
버전
0.2.4
라이선스
MIT
최근 업데이트
2026. 9. 13.

같은 패키지 이름의 다른 저장소

설치

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Astervolans/dsh-literature-search

Configuration

The literature-search row in cordis.patch.yml:

KeyDefaultMeaning
enabledtrueWhether the plugin registers its tools
pubmedEnabledtrueWhether the three pubmed_* tools are registered
pubmedBaseUrlhttps://eutils.ncbi.nlm.nih.gov/entrez/eutilsE-utilities root
pubmedTool / pubmedEmaildsh-literature-search / emptyThe tool / email parameters sent on every request (required by NCBI's usage policy)
pubmedApiKeyEnv / pubmedApiKeyNCBI_API_KEY / emptyKey reference / inline key
pubmedRateLimitMs0Minimum interval between requests; 0 = 350 ms without a key, 110 ms with one
scholarEnabledtrueWhether the two scholar_* tools are registered
scholarProviderautoauto (SerpApi when a key exists, else HTML) / serpapi / html
scholarBaseUrl / scholarSerpApiBaseUrlOfficial Google / SerpApi URLsCan point at a self-hosted proxy
scholarSerpApiKeyEnv / scholarSerpApiKeySERPAPI_API_KEY / emptyKey reference / inline key
scholarHlenGoogle Scholar interface language
scholarRateLimitMs00 = 2500 ms for HTML, 250 ms for SerpApi
defaultMaxResults / maxResultsCap10 / 50Count when the model does not specify / the maximum requestable
abstractMaxChars600Per-paper abstract or snippet limit; 0 = omit abstracts
requestTimeoutMs / maxRetries / retryBackoffMs30000 / 3 / 1000Per-request timeout, retry count and backoff base (429/5xx are retried, honouring Retry-After)
toolTimeoutMs120000Budget for one tool call
userAgentempty (built-in Chrome UA)Overrides the default UA
promptGuidance / promptOrdertrue / 155Whether the system-prompt paragraph is registered, and its order

Usage examples

On the model side, plain language is enough:

Use pubmed_search for "base editing" reviews published after 2020, take 5, then use pubmed_related on the first one to find 5 related papers.

Use scholar_search to find the 10 most-cited "CRISPR base editing" papers, then pass the first resultId to scholar_cite for BibTeX.

Example output (pubmed_paper 33301246):

PubMed record: Safety and Efficacy of the BNT162b2 mRNA Covid-19 Vaccine.

Safety and Efficacy of the BNT162b2 mRNA Covid-19 Vaccine.
   2020 · The New England journal of medicine · vol 383 · no 27 · pp 2603-2615
   Polack, Fernando P, Thomas, Stephen J, Kitchin, Nicholas et al. (29 authors)
   DOI: 10.1056/NEJMoa2034577 · PMID: 33301246 · PMC: PMC7745181
   https://pubmed.ncbi.nlm.nih.gov/33301246/
   Types: Clinical Trial, Phase III, Journal Article, Randomized Controlled Trial
   MeSH: BNT162 Vaccine, COVID-19, SARS-CoV-2, ...
   Abstract: BACKGROUND: ...