Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Look up and read Hugging Face paper pages in markdown, and use the papers API for structured metadata such as authors, linked models/datasets/spaces, Github repo and project page. Use when the user shares a Hugging Face paper page URL, an arXiv URL or ID, or asks to summarize, explain, or analyze an AI research paper.
.claude/skills/sediman-agent-huggingface-papers/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | 201% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 81% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 77% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 130% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 177% | 0% |
Hugging Face Paper pages (hf.co/papers) is a platform built on top of arXiv (arxiv.org), specifically for research papers in the field of artificial intelligence (AI) and computer science. Hugging Face users can submit their paper at hf.co/papers/submit, which features it on the Daily Papers feed (hf.co/papers). Each day, users can upvote papers and comment on papers. Each paper page allows authors to:
authors field). This makes the paper page appear on their Hugging Face profile.Whenever someone mentions a HF paper or arXiv abstract/PDF URL in a model card, dataset card or README of a Space repository, the paper will be automatically indexed. Note that not all papers indexed on Hugging Face are also submitted to daily papers. The latter is more a manner of promoting a research paper. Papers can only be submitted to daily papers up until 14 days after their publication date on arXiv.
The Hugging Face team has built an easy-to-use API to interact with paper pages. Content of the papers can be fetched as markdown, or structured metadata can be returned such as author names, linked models/datasets/spaces, linked Github repo and project page.
https://huggingface.co/papers/2602.08025)https://huggingface.co/papers/2602.08025.md)https://arxiv.org/abs/2602.08025 or https://arxiv.org/pdf/2602.08025)2602.08025)It's recommended to parse the paper ID (arXiv ID) from whatever the user provides:
| Input | Paper ID | | --- | --- | | https://huggingface.co/papers/2602.08025 | 2602.08025 | | https://huggingface.co/papers/2602.08025.md | 2602.08025 | | https://arxiv.org/abs/2602.08025 | 2602.08025 | | https://arxiv.org/pdf/2602.08025 | 2602.08025 | | 2602.08025v1 | 2602.08025v1 | | 2602.08025 | 2602.08025 |
This allows you to provide the paper ID into any of the hub API endpoints mentioned below.
The content of a paper can be fetched as markdown like so:
bashcurl -s "https://huggingface.co/papers/{PAPER_ID}.md"
This should return the Hugging Face paper page as markdown. This relies on the HTML version of the paper at https://arxiv.org/html/{PAPER_ID}.
There are 2 exceptions:
Alternatively, you can request markdown from the normal paper page URL, like so:
bashcurl -s -H "Accept: text/markdown" "https://huggingface.co/papers/{PAPER_ID}"
All endpoints use the base URL https://huggingface.co.
Fetch the paper metadata as JSON using the Hugging Face REST API:
bashcurl -s "https://huggingface.co/api/papers/{PAPER_ID}"
This returns structured metadata that can include:
To find models linked to the paper, use:
bashcurl https://huggingface.co/api/models?filter=arxiv:{PAPER_ID}
To find datasets linked to the paper, use:
bashcurl https://huggingface.co/api/datasets?filter=arxiv:{PAPER_ID}
To find spaces linked to the paper, use:
bashcurl https://huggingface.co/api/spaces?filter=arxiv:{PAPER_ID}
Claim authorship of a paper for a Hugging Face user:
bashcurl "https://huggingface.co/api/settings/papers/claim" \ --request POST \ --header "Content-Type: application/json" \ --header "Authorization: Bearer $HF_TOKEN" \ --data '{ "paperId": "{PAPER_ID}", "claimAuthorId": "{AUTHOR_ENTRY_ID}", "targetUserId": "{USER_ID}" }'
POST /api/settings/papers/claimpaperId (string, required): arXiv paper identifier being claimedclaimAuthorId (string): author entry on the paper being claimed, 24-char hex IDtargetUserId (string): HF user who should receive the claim, 24-char hex IDFetch the Daily Papers feed:
bashcurl -s -H "Authorization: Bearer $HF_TOKEN" \ "https://huggingface.co/api/daily_papers?p=0&limit=20&date=2017-07-21&sort=publishedAt"
GET /api/daily_papersp (integer): page numberlimit (integer): number of results, between 1 and 100date (string): RFC 3339 full-date, for example 2017-07-21week (string): ISO week, for example 2024-W03month (string): month value, for example 2024-01submitter (string): filter by submittersort (enum): publishedAt or trendingList arXiv papers sorted by published date:
bashcurl -s -H "Authorization: Bearer $HF_TOKEN" \ "https://huggingface.co/api/papers?cursor={CURSOR}&limit=20"
GET /api/paperscursor (string): pagination cursorlimit (integer): number of results, between 1 and 100Perform hybrid semantic and full-text search on papers:
bashcurl -s -H "Authorization: Bearer $HF_TOKEN" \ "https://huggingface.co/api/papers/search?q=vision+language&limit=20"
This searches over the paper title, authors, and content.
GET /api/papers/searchq (string): search query, max length 250limit (integer): number of results, between 1 and 120Insert a paper from arXiv by ID. If the paper is already indexed, only its authors can re-index it:
bashcurl "https://huggingface.co/api/papers/index" \ --request POST \ --header "Content-Type: application/json" \ --header "Authorization: Bearer $HF_TOKEN" \ --data '{ "arxivId": "{ARXIV_ID}" }'
POST /api/papers/indexarxivId (string, required): arXiv ID to index, for example 2301.00001^\d{4}\.\d{4,5}$Update the project page, GitHub repository, or submitting organization for a paper. The requester must be the paper author, the Daily Papers submitter, or a papers admin:
bashcurl "https://huggingface.co/api/papers/{PAPER_OBJECT_ID}/links" \ --request POST \ --header "Content-Type: application/json" \ --header "Authorization: Bearer $HF_TOKEN" \ --data '{ "projectPage": "https://example.com", "githubRepo": "https://github.com/org/repo", "organizationId": "{ORGANIZATION_ID}" }'
POST /api/papers/{paperId}/linkspaperId (string, required): Hugging Face paper object IDgithubRepo (string, nullable): GitHub repository URLorganizationId (string, nullable): organization ID, 24-char hex IDprojectPage (string, nullable): project page URLhttps://huggingface.co/papers/{PAPER_ID} or md endpoint: the paper is not indexed on Hugging Face paper pages yet./api/papers/{PAPER_ID}: the paper may not be indexed on Hugging Face paper pages yet.If the Hugging Face paper page does not contain enough detail for the user's question:
https://huggingface.co/papers/{PAPER_ID}https://arxiv.org/abs/{PAPER_ID}https://arxiv.org/pdf/{PAPER_ID}Authorization: Bearer $HF_TOKEN..md endpoint for reliable machine-readable output./api/papers/{PAPER_ID} when you need structured JSON fields instead of page markdown.| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-20 | pass→pass | 12,506 | 8,688 | -31% | 1 | 1 | 0% | 2,439 | 4,368 | +79% | 0 | 0 | — |
case-01 | fail→fail | 18,830 | 7,658 | -59% | 1 | 1 | 0% | 3,013 | 3,235 | +7% | 0 | 0 | — |
case-02 | fail→fail | 11,410 | 8,934 | -22% | 1 | 1 | 0% | 1,769 | 2,938 | +66% | 0 | 0 | — |
case-03 | fail→pass | 7,611 | 6,078 | -20% | 1 | 1 | 0% | 1,279 | 3,847 | +201% | 0 | 0 | — |
case-04 | pass→pass | 4,407 | 2,775 | -37% | 1 | 1 | 0% | 799 | 3,179 | +298% | 0 | 0 | — |
case-05 | fail→pass | 9,747 | 3,804 | -61% | 1 | 1 | 0% | 1,857 | 3,369 | +81% | 0 | 0 | — |
case-06 | fail→pass | 11,324 | 4,348 | -62% | 1 | 1 | 0% | 1,951 | 3,456 | +77% | 0 | 0 | — |
case-07 | fail→pass | 9,716 | 4,425 | -54% | 1 | 1 | 0% | 1,544 | 3,548 | +130% | 0 | 0 | — |
case-08 | pass→pass | 13,683 | 4,058 | -70% | 1 | 1 | 0% | 2,374 | 3,512 | +48% | 0 | 0 | — |
case-09 | pass→pass | 9,213 | 3,164 | -66% | 1 | 1 | 0% | 1,559 | 3,270 | +110% | 0 | 0 | — |
case-10 | fail→pass | 6,783 | 4,238 | -38% | 1 | 1 | 0% | 1,274 | 3,532 | +177% | 0 | 0 | — |
case-11 | pass→pass | 14,407 | 2,531 | -82% | 1 | 1 | 0% | 2,572 | 3,084 | +20% | 0 | 0 | — |
case-12 | fail→pass | 13,759 | 3,902 | -72% | 1 | 1 | 0% | 2,272 | 3,410 | +50% | 0 | 0 | — |
case-13 | fail→pass | 11,818 | 3,681 | -69% | 1 | 1 | 0% | 2,040 | 3,344 | +64% | 0 | 0 | — |
case-14 | fail→pass | 17,713 | 3,646 | -79% | 1 | 1 | 0% | 1,228 | 3,333 | +171% | 0 | 0 | — |
case-15 | fail→pass | 11,075 | 3,742 | -66% | 1 | 1 | 0% | 1,931 | 3,365 | +74% | 0 | 0 | — |
case-16 | pass→pass | 14,232 | 8,063 | -43% | 1 | 1 | 0% | 2,210 | 4,182 | +89% | 0 | 0 | — |
case-17 | pass→pass | 8,136 | 2,382 | -71% | 1 | 1 | 0% | 1,444 | 3,060 | +112% | 0 | 0 | — |
case-18 | pass→pass | 6,624 | 2,258 | -66% | 1 | 1 | 0% | 1,152 | 3,055 | +165% | 0 | 0 | — |
case-19 | pass→pass | 7,170 | 3,497 | -51% | 1 | 1 | 0% | 1,294 | 3,320 | +157% | 0 | 0 | — |
case-21 | pass→pass | 8,651 | 6,352 | -27% | 1 | 1 | 0% | 1,539 | 3,850 | +150% | 0 | 0 | — |
case-22 | pass→pass | 5,174 | 5,237 | +1% | 1 | 1 | 0% | 970 | 3,697 | +281% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 19 counted toward the lift figure. The other 3 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +41 percentage points is the difference between those two pass rates over the 19 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.