From asta-tools
Look up or search papers, authors, citations, and full-text snippets on Semantic Scholar. Use for fast, targeted queries about a paper, author, or specific named research artifact (benchmark, dataset, model, method, etc.) — not comprehensive reports.
How this skill is triggered — by the user, by Claude, or both
Slash command
/asta-tools:semantic-scholarThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Fast, targeted lookups of paper metadata, citations, and authors using the Semantic Scholar API via `asta papers` commands.
Fast, targeted lookups of paper metadata, citations, and authors using the Semantic Scholar API via `asta papers` commands.
snippet-search)Not for comprehensive reports - use the Literature Report Generation skill for that.
asta papers ... (this skill) is for mechanical, targeted lookups against the Semantic
Scholar API: fetch a known paper, list citations, search by keyword across titles / abstracts /
bodies, look up an author. There is no agent-mediated reasoning beyond S2's own keyword ranking.
The Find Literature skill (asta literature find / asta literature interactive) is for
topic-driven, criterion-based search, where the system extracts relevance criteria from the
query, retrieves candidates, and ranks them against those criteria with per-paper relevance
summaries — closer to "literature search as a graded judgement" than to a keyword match.
Use this skill (asta papers) when:
snippet-search)Use the Find Literature skill instead when:
asta literature interactive --thread-dir <dir>)find-style one-shot or interactive-style multi-turn agent loop with verification will
produce a better-ranked result than raw keyword searchThe two are complementary. A common flow: use Find Literature to discover relevant papers on a
topic, then asta papers get / asta papers citations to drill into specific ones.
Session-level rule of thumb: if the session as a whole is about literature
search/exploration (e.g. the first user turn is "find papers on X"), default to
asta literature interactive for the discovery work, even when individual queries look simple.
Reach for asta papers when the session is about something else and a quick metadata or
citation lookup is just one step inside it.
asta papers get - Get metadata for a single paper by ID
asta papers get ARXIV:2005.14165
asta papers get "DOI:10.18653/v1/N18-3011" --fields title,year,authors,abstract
asta papers get CorpusId:215416146 --format text
Supported ID formats:
ARXIV:2106.15928DOI:10.18653/v1/N18-3011CorpusId:215416146PMID:19872477URL:https://arxiv.org/abs/2106.15928Common fields: title,abstract,authors,year,venue,citationCount,publicationDate,url,isOpenAccess,fieldsOfStudy
asta papers search - Keyword-based paper search
asta papers search "transformers attention mechanism"
asta papers search "RLHF" --date 2023- --limit 10
asta papers search "neural networks" --fields title,year,abstract,authors
asta papers search "LLM safety" --date 2024-01-01:2024-12-31
Options:
--fields: Comma-separated fields to return--limit: Number of results (default 20, max 100)--date: Publication date or year filter. Accepts years (2020, 2020-2024, 2020-) or date ranges (2024-01-01:2024-12-31). Maps to the S2 publicationDateOrYear parameter.--format: Output as json or textasta papers snippet-search - Search over paper full text (title, abstract, and body) via the S2 snippet/search API. Returns matching text excerpts alongside paper metadata.
asta papers snippet-search "in-context learning emerges at scale"
asta papers snippet-search "RLHF reward hacking" --date 2023- --limit 10
asta papers snippet-search "sparse mixture of experts" --fields snippet.text,snippet.snippetKind,snippet.section
# Pin results to papers indexed before a date (useful for reproducible benchmarks)
asta papers snippet-search "chain-of-thought" --inserted-before 2024-01-01
The --fields option accepts snippet fields:
snippet.text - The matched text excerpt (~500 words)snippet.snippetKind - Source type (e.g., title, abstract, body)snippet.section - Paper section the snippet came fromsnippet.snippetOffset - Character position data (start, end)snippet.annotations - Markup including reference mentions and sentence boundariesIf --fields is omitted, the default is snippet.text,snippet.snippetKind. Paper metadata (corpusId, title, authors, openAccessInfo) and relevance score are always returned regardless of --fields.
Options:
--fields: Comma-separated snippet fields to return--date: Date/year filter, same as standard search--limit: Max results (default 20, max 1000 — higher ceiling than standard search)--inserted-before: Only include papers indexed before this date (YYYY-MM-DD, YYYY-MM, or YYYY). Typically used for consistency in benchmarking — pinning a cutoff date ensures the same set of papers is returned across repeated runs, even as new papers are continuously indexed.--format: Output as json or textasta papers citations - Papers that cite a given work
asta papers citations ARXIV:2005.14165
asta papers citations CorpusId:218487638 --limit 20 --format text
Options:
--fields: Fields for citing papers--limit: Max results (default 50, max 1000)--format: Output as json or textasta papers author search - Find authors by name
asta papers author search "Yoav Goldberg"
asta papers author search "Hinton" --limit 5 --format text
asta papers author papers - Get papers by an author
# First, get author ID from search
asta papers author search "Yoav Goldberg"
# Then get their papers using the author ID
asta papers author papers 1741101 --limit 50
asta papers author papers 1741101 --fields title,year,venue,citationCount
Options:
--fields: Fields to return for papers--limit: Max results (default 50, max 1000)--format: Output as json or textAll commands support two output formats:
JSON format (default):
jq for filteringText format (--format text):
Only request fields you need for faster responses:
# Good - minimal fields for quick browse
asta papers search "deep learning" --fields title,year,authors,citationCount
# Less efficient - many fields slow down response
asta papers search "deep learning" --fields title,abstract,authors,year,venue,citations,references
Restrict to recent papers when appropriate:
asta papers search "RLHF" --date 2023-2024 # 2023-2024
asta papers search "RLHF" --date 2023- # 2023 onwards
asta papers search "RLHF" --date -2020 # Before 2020
asta papers search "RLHF" --date 2024-06-01:2024-12-31 # Specific date range
For complex JSON processing:
# Extract just titles
asta papers search "transformers" | jq '.data[].title'
# Filter by citation count
asta papers search "neural networks" | jq '.data[] | select(.citationCount > 100)'
# Get author names
asta papers get ARXIV:2005.14165 | jq '.authors[].name'
Chain commands for complex queries:
Example 1: Find highly-cited recent papers by an author
# 1. Find author
asta papers author search "Geoffrey Hinton" --format text
# 2. Get their recent papers
asta papers author papers 1751273 --fields title,year,citationCount --limit 50 | \
jq '.data[].paper | select(.year >= 2020) | select(.citationCount > 100)'
Example 2: Explore citation network
# 1. Get paper details
asta papers get ARXIV:2005.14165
# 2. Get who cited it
asta papers citations ARXIV:2005.14165 --limit 20 --format text
# 3. Get details on specific citing papers
asta papers get CorpusId:123456789
asta papers get ARXIV:2005.14165 --format text
Present the output to user in a readable format.
# GPT-3 paper
asta papers citations ARXIV:2005.14165 --limit 50 --format text
Show recent/highly-cited papers from the results.
asta papers search "RLHF reinforcement learning from human feedback" \
--date 2023- \
--limit 20 \
--fields title,abstract,year,authors,venue,citationCount \
--format text
# Step 1: Find author
asta papers author search "Yoav Goldberg" --format text
# Step 2: Get their papers (using author ID from step 1)
asta papers author papers 1741101 \
--fields title,year,venue,citationCount \
--limit 50 \
--format text
# Snippet search finds mentions in paper bodies, not just titles/abstracts
asta papers snippet-search "chain-of-thought reasoning improves performance" \
--limit 15
# Or use standard search for paper-level results
asta papers search "chain-of-thought reasoning" \
--fields title,abstract,year,authors \
--limit 15
# Then examine specific papers with 'asta papers get'
When showing results to users:
For single paper:
**Title** (Year)
Authors: [author list]
Venue: [venue name]
Citations: [count]
[Abstract]
URL: [Semantic Scholar link]
For paper lists:
Found [N] papers:
1. **Paper Title** - Author et al. (Year) - [Venue] - [X citations]
2. **Another Paper** - ...
...
For snippet results (snippet-search):
Found [N] snippet results:
1. **Paper Title** - Author et al.
Score: 0.95
Snippet (abstract): "...matching text excerpt..."
2. **Another Paper** - ...
...
For citations:
Found [N] papers citing this work:
Recent citations:
1. [Paper 1] (2024) - [citations]
2. [Paper 2] (2023) - [citations]
...
--format text when showing results directly to usersnippet-search when searching for specific claims, methods, or evidence within paper bodiessearch for topic-level paper discoveryhttps://semanticscholar.org/paper/{paperId})The commands use the ASTA_TOOL_KEY environment variable if available. Most queries work without a key, but a key provides higher rate limits.
npx claudepluginhub allenai/asta-plugins --plugin asta-toolsFinds research papers answering a query using Firecrawl: semantic search, related-paper expansion, and in-body verification. Supports single-paper lookups and full multi-paper sets.
Searches Google Scholar for academic papers via the `scholar` CLI tool. Retrieves BibTeX citations, abstracts, and PDFs. Useful for literature review, citation lookup, and author searches.
Searches arXiv papers, retrieves metadata, downloads LaTeX source, generates BibTeX citations, and finds citing papers via Semantic Scholar or OpenAlex.