skills/huggingface-papers/SKILL.md
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.
npx skillsauth add huggingface/skills huggingface-papersInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
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:
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:
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}"
All endpoints use the base URL https://huggingface.co.
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:
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 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}"
}'
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:
curl -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:
curl -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:
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.
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:
curl "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:
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}"
}'
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.development
Build, deploy, and maintain applications on Hugging Face Spaces — Gradio / Docker / Static SDKs, ZeroGPU and dedicated hardware, model loading, debugging, buckets, inference providers, community grants. Use whenever the user asks to create or host an app on Hugging Face, port code onto ZeroGPU, fix a Space that won't build or run, or otherwise work with `hf spaces …`, `@spaces.GPU`, Space README frontmatter, or the `spaces` Python package.
development
Build and publish a Gradio demo on Hugging Face Spaces for a user-provided LoRA. Use when someone asks to create, generate, ship, or publish a Space, demo, Gradio app, or playground for a LoRA — including LoRAs for Qwen-Image, Qwen-Image-Edit, LTX-Video, Wan, FLUX, SDXL, or other diffusion base models. Also triggers when someone describes a LoRA they trained or hosts on the Hub and wants to share it. Covers picking the right base pipeline and `diffusers` inference recipe, designing a UI tailored to the LoRA's task and inputs (Union/multi-task control, edit, video, image, etc.), respecting model-card recommendations (trigger words, steps, guidance, LoRA scale, example inputs), and shipping to ZeroGPU hardware as a private Space by default.
tools
Hugging Face Hub CLI (`hf`) for downloading, uploading, and managing models, datasets, spaces, buckets, repos, papers, jobs, and more on the Hugging Face Hub. Use when: handling authentication; managing local cache; managing Hugging Face Buckets; running or scheduling jobs on Hugging Face infrastructure; managing Hugging Face repos; discussions and pull requests; browsing models, datasets and spaces; reading, searching, or browsing academic papers; managing collections; querying datasets; configuring spaces; setting up webhooks; or deploying and managing HF Inference Endpoints. Make sure to use this skill whenever the user mentions 'hf', 'huggingface', 'Hugging Face', 'huggingface-cli', or 'hugging face cli', or wants to do anything related to the Hugging Face ecosystem and to AI and ML in general. Also use for cloud storage needs like training checkpoints, data pipelines, or agent traces. Use even if the user doesn't explicitly ask for a CLI command. Replaces the deprecated `huggingface-cli`.
tools
Pick the right serving container for a SageMaker model deployment and find its current image URI. Use this skill whenever about to deploy a model to a SageMaker endpoint and an image URI needs to be chosen — including when the user says "deploy this LLM", "host this HuggingFace model", "serve this fine-tuned model", "deploy this embedding model", "host a reranker", "serve a sentence-transformers model", or when about to hardcode any container URI in deployment code. HuggingFace-curated Deep Learning Containers are ALWAYS preferred: HuggingFace vLLM (LLMs and generative rerankers), HuggingFace vLLM-Omni (multimodal), TEI (embeddings/cross-encoder rerankers), HF Inference Toolkit (other transformers). Generic images (AWS vLLM, DJL-LMI, SGLang) are used only when no HuggingFace image is compatible — never merely because they carry a newer version. Never hardcode a container URI from memory and never default to TGI. Prevents stale-image failures and wrong-region URIs.