Loading...
Loading...
Searches scholarly literature with zero API keys across DBLP, Crossref, Semantic Scholar, and arXiv. Use when the user wants to find papers, search the literature, list a conference's proceedings (e.g. "all SIGSPATIAL 2025 papers"), survey related work on a topic, look up papers by author/venue/year, get DOIs or citation counts, or check recent arXiv preprints. Ships a venue-alias table that solves cross-API venue naming (DBLP "conf/gis" vs Semantic Scholar "SIGSPATIAL/GIS" vs Crossref proceedings titles) plus polite, cached, 429-resilient search scripts. Trigger words - find papers, literature search, related work, proceedings, DBLP, Crossref, Semantic Scholar, arXiv, citation count, DOI lookup, venue search.
npx skill4agent add shaishavmaisuria/research-paper-lifecycle-skills find-papersfetch-paperverify-citationsCONTACT_EMAILS2_API_KEYvenues/conferences/<id>.ymlvenues/schema.ymlaliases:| Need | Provider | Script |
|---|---|---|
| Enumerate a CS venue-year ("all KDD 2025 papers") | DBLP | |
| DOI-backed metadata, publisher filters, date ranges | Crossref | |
| Abstracts, citation counts, OA PDF links, topic search | Semantic Scholar | |
| Preprints, newest work, full-text HTML links | arXiv | |
| Fan out across the indexes, union, fail over, report coverage | all four | |
| Expand a saturated seed set along citations (anchors, competitors, infra) | OpenAlex + Crossref | |
| Pick the canonical instance of a named title (version drift / collision) | any (post-process) | |
resolve_papers.pyvenues/conferences/<id>.ymlaliases:conf/gisjournals/pvldbpython3 scripts/dblp_search.py --find-venue "<name>"cfp_urlCONTACT_EMAILexport CONTACT_EMAIL=you@university.edu--help--json--no-cache# Provider-agnostic fan-out (PREFER for surveys / "is this complete?"):
# unions DBLP+Crossref+S2+arXiv, fails over on any outage, prints a
# COMPLETE/PARTIAL coverage banner.
python3 scripts/resolve_papers.py --query "trajectory similarity learning"
python3 scripts/resolve_papers.py --venue-year --year 2025 \
--dblp-key conf/gis --s2-venue "SIGSPATIAL/GIS" \
--crossref-container "Advances in Geographic Information Systems"
# Enumerate a venue-year (conference / journal volume / multi-volume toc)
python3 scripts/dblp_search.py --key conf/gis --year 2025
python3 scripts/dblp_search.py --key journals/pvldb --volume 18
python3 scripts/dblp_search.py --toc db/conf/acl/acl2024-1.bht
# Topic search with citation counts + OA PDFs (add --year to narrow)
python3 scripts/s2_search.py --query "trajectory similarity learning" --limit 10
# Venue search on S2 (exact venue string from the alias table!)
python3 scripts/s2_search.py --venue "SIGSPATIAL/GIS" --year 2025
# DOI-backed venue/date/type filtering
python3 scripts/crossref_search.py --container SIGSPATIAL \
--from-date 2025-01-01 --until-date 2025-12-31 --type proceedings-article
# Fresh preprints
python3 scripts/arxiv_search.py \
--query 'cat:cs.DB AND abs:"spatial join"' --sort submittedDate
# Expand a saturated seed set along the citation graph (see step 4)
python3 scripts/citation_graph.py \
--seed DOI:10.14778/3551793.3551844 --seed "<another on-topic title>" \
--direction both --top 25.cache/find-papers/resolve_papers.pyunresolved-keeppython3 scripts/s2_search.py --paper DOI:10.1145/3589132.3625571 --fields title,abstract,tldr,citationCount,openAccessPdfpython3 scripts/citation_graph.py --seed DOI:<seed1> --seed "<seed2 title>" \
--direction both --top 25 # refs=anchors/infra, citedby=competitorsreference--direction refs# pipe a title search straight in (works with any search script's --json)
python3 scripts/s2_search.py --query "<the named title>" --json \
| python3 scripts/resolve_canonical.py --stdin --title "<the named title>"[VERSION DRIFT][TITLE COLLISION]PREFERREDCHOOSE:title_variantsfetch-paperverify-citations--jsonresolve_papers.pyS2_API_KEYresolve_papers.pyverify-citationsunresolved-keepS2_API_KEYresolve_canonical.pycitation_graph.py