一键导入
arxiv
Search and retrieve academic papers from arXiv using their free REST API. No API key needed.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Search and retrieve academic papers from arXiv using their free REST API. No API key needed.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Compress conversation context — summarize the current session, extract key decisions and facts, then compact history to free up context window.
Generate insights about your Claude Code usage — what topics you work on most, common patterns, productivity trends.
Route Claude Code work by complexity, risk, and tool needs. Use when deciding how much reasoning depth a task needs, whether to read project memory first, whether the task should be decomposed, and whether the work is lightweight, standard, or investigation-heavy.
Query Polymarket prediction markets for probability data and research insights on real-world events.
Query Base (Ethereum L2) blockchain data — wallet balances, token info, transactions, gas analysis, contract inspection. No API key required.
Monitor and summarize blog posts, RSS feeds, and web content for research and staying current with topics.
| name | arxiv |
| description | Search and retrieve academic papers from arXiv using their free REST API. No API key needed. |
| version | 1.0.0 |
| author | hermes-CCC (ported from Hermes Agent by NousResearch) |
| license | MIT |
| metadata | {"hermes":{"tags":["Research","Arxiv","Papers","Academic","API"],"related_skills":["research-paper-writing"]}} |
https://export.arxiv.org/api/queryid: canonical entry URL for the papertitle: paper titlesummary: abstract textauthors: ordered author listpublished: original publication timestampcategories: arXiv subject tagspdf_url: direct PDF URL when presentcs.AIcs.LGcs.CLstat.MLcs.CVsearch_query=...ti: title searchau: author searchabs: abstract searchall: broad metadata searchAND, OR, and ANDNOT+ or %20all:reasoning+AND+cat:cs.AIti:transformer+AND+cat:cs.CLau:Goodfellow+AND+cat:cs.LGabs:diffusion+AND+cat:cs.CVall:reinforcement+learning+AND+cat:stat.ML/arxiv search/arxiv get/arxiv recent/arxiv download/arxiv search: run a query and print matching entries/arxiv get: fetch one known arXiv identifier and display parsed metadata/arxiv recent: list recent submissions in a category or topic/arxiv download: save the PDF locally from a known identifier or PDF URLcurl -s "https://export.arxiv.org/api/query?search_query=all:large+language+models+AND+cat:cs.CL&start=0&max_results=5&sortBy=relevance&sortOrder=descending"
curl -s "https://export.arxiv.org/api/query?search_query=cat:cs.LG&start=0&max_results=10&sortBy=submittedDate&sortOrder=descending"
curl -L "https://arxiv.org/pdf/2401.01234.pdf" -o 2401.01234.pdf
curl -s "https://export.arxiv.org/api/query?id_list=2401.01234"
3 req/secimport xml.etree.ElementTree as ET
from urllib.request import urlopen
API_URL = "https://export.arxiv.org/api/query?search_query=all:reasoning+AND+cat:cs.AI&start=0&max_results=3"
NS = {"atom": "http://www.w3.org/2005/Atom"}
with urlopen(API_URL) as response:
xml_bytes = response.read()
root = ET.fromstring(xml_bytes)
for entry in root.findall("atom:entry", NS):
paper_id = entry.findtext("atom:id", default="", namespaces=NS)
title = entry.findtext("atom:title", default="", namespaces=NS).strip()
summary = entry.findtext("atom:summary", default="", namespaces=NS).strip()
published = entry.findtext("atom:published", default="", namespaces=NS)
authors = [
author.findtext("atom:name", default="", namespaces=NS)
for author in entry.findall("atom:author", NS)
]
categories = [node.attrib.get("term", "") for node in entry.findall("atom:category", NS)]
pdf_url = ""
for link in entry.findall("atom:link", NS):
if link.attrib.get("title") == "pdf":
pdf_url = link.attrib.get("href", "")
break
print("id:", paper_id)
print("title:", title)
print("published:", published)
print("authors:", ", ".join(authors))
print("categories:", ", ".join(categories))
print("pdf_url:", pdf_url)
print("summary:", summary[:240], "...")
print("-" * 60)
import xml.etree.ElementTree as ET
from urllib.parse import quote_plus
from urllib.request import urlopen
def search_arxiv(query: str, max_results: int = 5) -> list[dict]:
encoded = quote_plus(query)
url = (
"https://export.arxiv.org/api/query"
f"?search_query={encoded}&start=0&max_results={max_results}"
)
ns = {"atom": "http://www.w3.org/2005/Atom"}
with urlopen(url) as response:
root = ET.fromstring(response.read())
rows = []
for entry in root.findall("atom:entry", ns):
authors = [
node.findtext("atom:name", default="", namespaces=ns)
for node in entry.findall("atom:author", ns)
]
categories = [node.attrib.get("term", "") for node in entry.findall("atom:category", ns)]
rows.append(
{
"id": entry.findtext("atom:id", default="", namespaces=ns),
"title": entry.findtext("atom:title", default="", namespaces=ns).strip(),
"summary": entry.findtext("atom:summary", default="", namespaces=ns).strip(),
"authors": authors,
"published": entry.findtext("atom:published", default="", namespaces=ns),
"categories": categories,
}
)
return rows
for row in search_arxiv("all:multimodal AND cat:cs.CV", max_results=3):
print(row["title"])
all:chain-of-thought AND cat:cs.AIall:instruction tuning AND cat:cs.CLall:reward modeling AND cat:cs.LGall:vision transformer AND cat:cs.CVall:mixture of experts AND cat:stat.MLti:retrieval augmented generationabs:alignment AND cat:cs.AIall: and a category.ti: if the result set is noisy.title, summary, and categories.id for citation and later retrieval.start controls the starting offsetmax_results controls page sizesortBy=relevance is useful for topic searchsortBy=submittedDate is useful for recent monitoringsortOrder=descending is typical for recent feeds2401.01234https://arxiv.org/pdf/<id>.pdfpdf_url is missing, synthesize it from the parsed identifier.max_results=5sortBy=relevance for topic searchsortBy=submittedDate for /arxiv recentidtitlesummaryauthorspublishedcategoriespdf_url if available