---
title: "hf-release-notes by huggingface · skilld"
canonical_url: "https://skilld.dev/gh/huggingface/huggingface_hub"
meta:
  description: "Generate Hugging Face Hub (huggingface_hub) release notes from cached PR JSON files. Use when asked to draft release notes from PR files. From huggingface/huggingface_hub."
  "og:description": "Generate Hugging Face Hub (huggingface_hub) release notes from cached PR JSON files. Use when asked to draft release notes from PR files. From huggingface/huggingface_hub."
  "og:title": "hf-release-notes by huggingface"
  "twitter:description": "Generate Hugging Face Hub (huggingface_hub) release notes from cached PR JSON files. Use when asked to draft release notes from PR files. From huggingface/huggingface_hub."
  "twitter:title": "hf-release-notes by huggingface"
---

`

[All skills](https://skilld.dev/skills)

[![huggingface avatar](https://skilld.dev/_img/avatar?url=https%3A%2F%2Fgithub.com%2Fhuggingface.png%3Fsize%3D96)](https://skilld.dev/gh/huggingface)

# **/hf-release-notes**

[@66643e6](https://github.com/huggingface/huggingface_hub/commit/66643e62701ad672ce132c523602e4bb26a15774 "Your agent reads SKILL.md at commit 66643e6")

by [Hugging Face](https://skilld.dev/gh/huggingface)· [huggingface](https://skilld.dev/gh/huggingface)/ [huggingface\_hub](https://skilld.dev/gh/huggingface/huggingface_hub)·3.9k stars

 1,234

Generate Hugging Face Hub (huggingface\_hub) release notes from cached PR JSON files. Use when asked to draft release notes from PR files.

- 6 files
- 14 KB
- Updated 6 months ago
- [GitHub](https://github.com/huggingface/huggingface_hub/blob/66643e62701ad672ce132c523602e4bb26a15774/.opencode/skills/hf-release-notes/SKILL.md "View SKILL.md on GitHub")
- [1 warning](#third-party-checks "Third-party checks: 1 warning · 3 checks · Risk SAFE")

## SKILL.md

5.5 KB

**≈39** tokens always: the name and description. **≈1.4k** when used: this file. **≈2.2k** more on demand in 5 files.

## HF Release Notes

### Overview

Generate release notes for huggingface\_hub from cached PR JSON files. This skill reads PR metadata, categorizes entries, and produces a formatted markdown release notes document.

**Output directory:** The prompt will specify the output directory as `<output_dir>`. All paths below use this placeholder.

### Workflow

#### 1. Read PR data

Read all PR JSON files from `<output_dir>/tmp/pr_*.json`. Each file contains:

```
{
  "number": 1234,
  "title": "...",
  "author": "username",
  "merged_at": "2026-01-15T10:30:00Z",
  "body": "...",
  "labels": ["highlight", "cli"],
  "url": "https://github.com/huggingface/huggingface_hub/pull/1234",
  "doc_diffs": [
    {
      "filename": "docs/source/en/guides/cli.md",
      "status": "modified",
      "patch": "@@ -10,6 +10,10 @@ ..."
    }
  ]
}
```

The `doc_diffs` field contains unified diffs for any `.md` files under `docs/` that were changed in the PR. This is empty (`[]`) for PRs with no documentation changes.

#### 2. Identify highlights

A PR should be highlighted if:

- It has the `"highlight"` label on GitHub, **or**
- You judge it significant enough to deserve a detailed section (e.g., a major new feature, a meaningful UX improvement, or a notable breaking change) even without the label.

Use your judgment — not every feature PR needs a highlight, but don't limit highlights to only labeled PRs. Each highlight section follows this structure:

1. **Emoji header** — e.g., `## 🖥️ New CLI commands`
2. **Prose summary** — 2-5 sentences describing the user-visible change in flowing text. Avoid bullet points here; write natural sentences. Only use bullets if the content truly calls for a list (e.g., enumerating 4+ distinct sub-features).
3. **Code examples** — if the PR introduces new commands or APIs, include a fenced code block with a concrete usage example (cherry-pick from doc diffs when available).
4. **PR attribution lines** — one bullet per PR that contributed to this highlight: `- PR title by @author in #1234`

#### 3. Classify standard items

For non-highlight PRs, classify into sections using `references/sections.md` heuristics based on:

- PR labels
- PR title keywords
- PR body content

#### 4. Use doc diffs and fetch relevant documentation

For highlighted PRs and other PRs that introduce new features, commands, or APIs:

**Use doc diffs first:**

- Check the `doc_diffs` field in the PR JSON. If present, these contain the actual documentation changes made in the PR (unified diff format).
- Use these diffs to understand what was documented, extract code examples, and write more accurate summaries. The diffs show exactly what the PR author wrote in the docs.
- The `filename` field maps to a docs page URL. For example, `docs/source/en/guides/cli.md` → `https://huggingface.co/docs/huggingface_hub/main/en/guides/cli`

**Fetch full doc pages when needed:**

1. Start by fetching the docs index page to discover the site structure: `https://huggingface.co/docs/huggingface_hub/main/en/index`
2. Based on the PR content (title, body, labels), identify which doc pages might be relevant. For example:
   - A CLI PR → check `https://huggingface.co/docs/huggingface_hub/main/en/guides/cli`
   - An Inference PR → check `https://huggingface.co/docs/huggingface_hub/main/en/guides/inference`
   - A new API class or method → check the corresponding reference page
3. Fetch the candidate doc page to confirm it covers the feature from the PR.
4. Only include a doc link if the page genuinely documents the feature.

**How to reference:**

- In highlight sections, add a line like: `📚 **Documentation:** [Guide name](https://huggingface.co/docs/huggingface_hub/main/en/guides/...)`
- In standard sections, append the doc link inline after the attribution when relevant: `- PR title by @author in #1234 — [docs](https://huggingface.co/docs/huggingface_hub/main/en/...)`
- Do NOT add doc links for internal/CI/test PRs or PRs that don't have user-facing docs.
- Do NOT fabricate doc URLs — only link to pages you have actually fetched and verified.

#### 5. Generate release notes

Output to `<output_dir>/RELEASE_NOTES_<version>.md` using the structure from `references/release-notes-template.md`:

- Title: `# [vX.Y.Z] <tagline>` (derive tagline from main highlights; always use the base version without prerelease suffix, e.g. `[v1.8.0]` even when generating for `v1.8.0.rc0`)
- One section per highlight with emoji header and narrative
- Standard sections for remaining items (only include sections with items)

#### 6. Quality checks

Before finishing:

- Verify every PR from `<output_dir>/tmp/` appears exactly once
- **Do NOT include any PR that does not have a corresponding file in `<output_dir>/tmp/`** — those PRs belong to a different release and must not appear in these notes
- No empty sections
- Consistent emoji headings
- Every item ends with attribution: `by @author in #1234`
- Doc links point to real, verified pages

### Input

- Version string (e.g., "v1.3.8")
- PR JSON files in `<output_dir>/tmp/`

### Output

- Release notes markdown at `<output_dir>/RELEASE_NOTES_<version>.md`

### Resources

- `references/release-notes-template.md`: Skeleton structure for release notes
- `references/sections.md`: Keyword-based section mapping and guidance
- Documentation site: `https://huggingface.co/docs/huggingface_hub/main/en/index`

Source: [SKILL.md on GitHub](https://github.com/huggingface/huggingface_hub/blob/66643e62701ad672ce132c523602e4bb26a15774/.opencode/skills/hf-release-notes/SKILL.md)

## Third-party checks

<details>

<summary>1 warning4mo3 checks · Risk SAFE</summary>



- Gen Agent Trust Hub4mo

  This skill provides a structured workflow for generating and validating Hugging Face Hub release notes from pull request data. It includes standard security considerations such as processing external contributor content and accessing vendor-hosted documentation, both of which are central to its intended functionality.
- Socket4mo

  No alerts
- Snyk4mo

  Risk: MEDIUM · 1 issue

</details>

## Provenance

[Signed by skilld at 66643e6.](https://github.com/huggingface/huggingface_hub/commit/66643e62701ad672ce132c523602e4bb26a15774 "66643e62701ad672ce132c523602e4bb26a15774") This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub yesterday.

Activeupdated 6 months ago

## README badge

![README badge for huggingface/huggingface\_hub](https://skilld.dev/b/huggingface/huggingface_hub?theme=light&label=0)

## Related skills

-
-
-
-
-
-