Asta Literature Search
Find Literature
Search academic literature for papers relevant to a query. The search will return a ranked list of papers with relevance scores, summaries, and supporting snippets.
This is an advanced search, so the query can be long and complex. You may ask the user questions to clarify the topic and refine the query before running the search.
Installation
This skill requires the asta CLI:
# Install/reinstall at the correct version
PLUGIN_VERSION=0.16.0
if [ "$(asta --version 2>/dev/null | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')" != "$PLUGIN_VERSION" ]; then
uv tool install --force git+https://github.com/allenai/asta-plugins.git@v$PLUGIN_VERSION
fi
Prerequisites: Python 3.11+ and uv package manager
Tools Available
Paper Finder
Run in background for comprehensive searches (30-60s):
# Save to a temporary file with explicit -o parameter (required)
Bash(command="asta literature find 'query' -o /tmp/literature-search-result.json --timeout 300", run_in_background=true)
After the search completes, move the file to .asta/documents/literature/find/ and index it:
# Create directory if it doesn't exist
mkdir -p .asta/documents/literature/find
# Move the result file to the documents directory
mv /tmp/literature-search-result.json .asta/documents/literature/find/
# Index the file using asta-documents
Bash(command="asta documents add file://.asta/documents/literature/find/literature-search-result.json --name='Literature Search: <query>' --summary='Search results for: <query>'")
Browse results with jq:
jq '[.results | sort_by(-.relevanceScore) | .[0:10][] | {title, year, venue, corpusId, score: .relevanceScore, summary: .relevanceJudgement.relevanceSummary}]' <filename>
Go through all highly relevant papers, extracting relevance criteria, snippets, and citation contexts from each.
Semantic Scholar CLI (fast targeted searches)
# Get paper details
asta papers get ARXIV:2005.14165
# Search papers
asta papers search "transformers" --year 2023- --limit 20
# Get citations
asta papers citations ARXIV:2005.14165
# Author search
asta papers author search "Geoffrey Hinton"
asta papers author papers <author_id>
Recommended fields: --fields title,abstract,year,authors,venue,citationCount
JSON Structure
The output is a LiteratureSearchResult with the following structure:
Top level:
query: string - the search queryresults: array of Paper objects
Each paper in results[]:
corpusId: int - Semantic Scholar corpus IDtitle: string - paper titleabstract: string | null - paper abstractyear: int | null - publication yearauthors: array of {name: string, id: string}venue: string | null - publication venueurl: string | null - Semantic Scholar URLcitationCount: int | null - number of citationsrelevanceScore: float - 0-1 (higher = more relevant to query)relevanceJudgement: object with:relevance: int - overall relevance scorerelevanceSummary: string - AI explanation of relevancerelevanceCriteriaJudgements: array of per-concept judgements with:name: string - concept namerelevance: int - relevance for this conceptrelevantSnippets: array of supporting text excerpts
snippets: array of text excerpts from paper body (if open access):text: string - excerpt textsectionTitle: string - section name
citationContexts: array of citation contexts:text: string - how other papers cite this worksourceCorpusId: int - corpus ID of citing paper
Example access patterns:
# Top 10 papers by relevance
jq '[.results | sort_by(-.relevanceScore) | .[0:10][] | {title, year, score: .relevanceScore}]' <filename>
# Papers with relevance summary
jq '.results[] | {title, summary: .relevanceJudgement.relevanceSummary}' <filename>
# Extract snippets from a specific paper
jq '.results[] | select(.corpusId == 123456) | .snippets[].text' <filename>
Using Results
After a search completes, results can be used by the Literature Report skill.
More from allenai/asta-plugins
semantic scholar lookup
This skill should be used when the user asks to "get paper details", "look up a paper", "find citations", "who cited this paper", "papers by [author]", "search for papers on [topic]", or needs quick lookups of paper metadata, citations, or author information from Semantic Scholar. Use this for fast, targeted queries (not comprehensive reports).
46asta literature reports
Create or update literature reviews/reports. Use whenever you need to research, summarize, or synthesize the literature.
32asta library
Local document metadata index for files used by Asta skills and tools. Use this skill when the user asks to store a document "in Asta" or retrieve "from Asta". Use it when the
31preview
Render and deploy project documents, reports, and notebooks. Use when docs need to be shared or when previewing how documents render with citations and formatting.
29pdf text extraction
Extract text from PDFs using olmOCR or remote OCR. Use when user asks to "extract text from PDF", "OCR a document", "read a PDF", or needs to process scanned documents.
25research step
Do one step of autonomous research, based on the current research state in the current working directory. Use when asked to "run AstaBot" "do an AstaBot step", "AstaBot, or "do a research step".
17