Agent Skills

huggingface-papers

researchhuggingface1.9K installs

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.

Install

npx skills add https://github.com/huggingface/skills --skill huggingface-papers
SKILL.md

Hugging Face Paper Pages

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:

  • claim their paper (by clicking their name on the authors field). This makes the paper page appear on their Hugging Face profile.
  • link the associated model checkpoints, datasets and Spaces by including the HF paper or arXiv URL in the model card, dataset card or README of the Space
  • link the Github repository and/or project page URLs
  • link the HF organization. This also makes the paper page appear on the Hugging Face organization page.

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.

When to Use

  • User shares a Hugging Face paper page URL (e.g. https://huggingface.co/papers/2602.08025)
  • User shares a Hugging Face markdown paper page URL (e.g. https://huggingface.co/papers/2602.08025.md)
  • User shares an arXiv URL (e.g. https://arxiv.org/abs/2602.08025 or https://arxiv.org/pdf/2602.08025)
  • User mentions a arXiv ID (e.g. 2602.08025)
  • User asks you to summarize, explain, or analyze an AI research paper

Parsing the paper ID

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.

Fetch the paper page as markdown

The content of a paper can be fetched as markdown like so:

curl -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:

  • Not all arXiv papers have an HTML version. If the HTML version of the paper does not exist, then the content falls back to the HTML of the Hugging Face paper page.
  • If it results in a 404, it means the paper is not yet indexed on hf.co/papers. See Error handling for info.

Alternatively, you can request markdown from the normal paper page URL, like so:

curl -s -H "Accept: text/markdown" "https://huggingface.co/papers/{PAPER_ID}"

Paper Pages API Endpoints

All endpoints use the base URL https://huggingface.co.

Get structured metadata

Fetch the paper metadata as JSON using the Hugging Face REST API:

curl -s "https://huggingface.co/api/papers/{PAPER_ID}"

This returns structured metadata that can include:

  • authors (names and Hugging Face usernames, in case they have claimed the paper)
  • media URLs (uploaded when submitting the paper to Daily Papers)
  • summary (abstract) and AI-generated summary
  • project page and GitHub repository
  • organization and engagement metadata (number of upvotes)

To find models linked to the paper, use:

curl https://huggingface.co/api/models?filter=arxiv:{PAPER_ID}

To find datasets linked to the paper, use:

curl https://huggingface.co/api/datasets?filter=arxiv:{PAPER_ID}

To find spaces linked to the paper, use:

curl https://huggingface.co/api/spaces?filter=arxiv:{PAPER_ID}

Claim paper authorship

Claim authorship of a paper for a Hugging Face user:

curl "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}"
  }'
  • Endpoint: POST /api/settings/papers/claim
  • Body:
    • paperId (string, required): arXiv paper identifier being claimed
    • claimAuthorId (string): author entry on the paper being claimed, 24-char hex ID
    • targetUserId (string): HF user who should receive the claim, 24-char hex ID
  • Response: paper authorship claim result, including the claimed paper ID

Get daily papers

Fetch the Daily Papers feed:

curl -s -H "Authorization: Bearer $HF_TOKEN" \
  "https://huggingface.co/api/daily_papers?p=0&limit=20&date=2017-07-21&sort=publishedAt"
  • Endpoint: GET /api/daily_papers
  • Query parameters:
    • p (integer): page number
    • limit (integer): number of results, between 1 and 100
    • date (string): RFC 3339 full-date, for example 2017-07-21
    • week (string): ISO week, for example 2024-W03
    • month (string): month value, for example 2024-01
    • submitter (string): filter by submitter
    • sort (enum): publishedAt or trending
  • Response: list of daily papers

List papers

List arXiv papers sorted by published date:

curl -s -H "Authorization: Bearer $HF_TOKEN" \
  "https://huggingface.co/api/papers?cursor={CURSOR}&limit=20"
  • Endpoint: GET /api/papers
  • Query parameters:
    • cursor (string): pagination cursor
    • limit (integer): number of results, between 1 and 100
  • Response: list of papers

Search papers

Perform hybrid semantic and full-text search on papers:

curl -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.

  • Endpoint: GET /api/papers/search
  • Query parameters:
    • q (string): search query, max length 250
    • limit (integer): number of results, between 1 and 120
  • Response: matching papers

Index a paper

Insert a paper from arXiv by ID. If the paper is already indexed, only its authors can re-index it:

curl "https://huggingface.co/api/papers/index" \
  --request POST \
  --header "Content-Type: application/json" \
  --header "Authorization: Bearer $HF_TOKEN" \
  --data '{
    "arxivId": "{ARXIV_ID}"
  }'
  • Endpoint: POST /api/papers/index
  • Body:
    • arxivId (string, required): arXiv ID to index, for example 2301.00001
  • Pattern: ^\d{4}\.\d{4,5}$
  • Response: empty JSON object on success

Update paper links

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:

curl "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}"
  }'
  • Endpoint: POST /api/papers/{paperId}/links
  • Path parameters:
    • paperId (string, required): Hugging Face paper object ID
  • Body:
    • githubRepo (string, nullable): GitHub repository URL
    • organizationId (string, nullable): organization ID, 24-char hex ID
    • projectPage (string, nullable): project page URL
  • Response: empty JSON object on success

Error Handling

  • 404 on https://huggingface.co/papers/{PAPER_ID} or md endpoint: the paper is not indexed on Hugging Face paper pages yet.
  • 404 on /api/papers/{PAPER_ID}: the paper may not be indexed on Hugging Face paper pages yet.
  • Paper ID not found: verify the extracted arXiv ID, including any version suffix

Fallbacks

If the Hugging Face paper page does not contain enough detail for the user's question:

  • Check the regular paper page at https://huggingface.co/papers/{PAPER_ID}
  • Fall back to the arXiv page or PDF for the original source:
    • https://arxiv.org/abs/{PAPER_ID}
    • https://arxiv.org/pdf/{PAPER_ID}

Notes

  • No authentication is required for public paper pages.
  • Write endpoints such as claim authorship, index paper, and update paper links require Authorization: Bearer $HF_TOKEN.
  • Prefer the .md endpoint for reliable machine-readable output.
  • Prefer /api/papers/{PAPER_ID} when you need structured JSON fields instead of page markdown.

Related skills

researchmattpocock575KInvestigate a question against high-trust primary sources and capture the findings as a Markdown file in the repo. Use when the user wants a topic researched, docs or API facts gathered, or reading legwork delegated to a background agent.paper-context-resolverlllllllama451KRigor Paper Context helper for README-first deep learning repo reproduction. Use only when the README and repository files leave a narrow reproduction-critical gap and the task is to resolve a specific paper detail such as dataset split, preprocessing, evaluation protocol, checkpoint mapping, or runtime assumption from primary paper sources while recording conflicts. Do not use for general paper summary, repo scanning, environment setup, command execution, title-only paper lookup, or replacing Renv-and-assets-bootstraplllllllama450KRigor Setup skill for README-first deep learning repo reproduction. Use when the task is specifically to prepare a conservative conda-first environment, checkpoint and dataset path assumptions, cache location hints, and setup notes before any run on a README-documented repository. Do not use for repo scanning, full orchestration, paper interpretation, final run reporting, or generic environment setup that is not tied to a specific reproduction target.ai-research-explorelllllllama311KRigor Explore compatible skill slug for meaningful and potentially novel deep learning research candidates. Use when the researcher has chosen the task family, dataset, benchmark, evaluation method, provided SOTA references, and wants candidate-only exploration on top of `current_research` with auditable repo understanding, idea gating, fair comparison, and governed experiments written to `explore_outputs/`. Do not use for README-first trusted reproduction, open-ended direction finding, narrow c

Search skills and MCP servers

Fuzzy search across 23,137 skills and servers