github huggingface/huggingface_hub v1.33.0
[v1.33.0] Better UX on large uploads and simpler skills installs

latest releases: v2.0.0, v2.0.0.rc0
6 hours ago

📤 See progress while large Xet uploads validate

Very large Xet uploads used to sit silently between "Uploading" and "Committing" while shards were being finalized, which could take a long time with no feedback. The upload live display now shows a dedicated Validating bar — reported as a percentage instead of opaque internal validation-entry counts — both in the upload_folder display and in XetUploadProgressReporter (used by upload_file, create_commit and bucket uploads). This requires hf-xet>=1.6.0.

  • [Xet] Show Validating progress during shard finalization by @seanses in #4478

🧩 Skills are now installed for every agent by default

hf skills add no longer requires a special flag for Claude Code. The skill is now always installed to .agents/skills (or ~/.agents/skills with -g) and symlinked into .claude/skills (honoring CLAUDE_CONFIG_DIR when set), so a single command covers Claude Code, Codex, Cursor, OpenCode, Pi and any other agent that loads skills from .agents/skills. The --claude flag is deprecated: it still works as a no-op but prints a warning, and --dest keeps installing only to the directory you provide. hf skills update refreshes both roots the same way. Along the way, CLAUDE_CONFIG_DIR is now properly honored everywhere (it was previously ignored, which left skills invisible to relocated Claude Code installs).

# works with Claude Code, Codex, Cursor, OpenCode, Pi and any agent that loads skills from `.agents/skills`
hf skills add

📚 Documentation: CLI guide

💔 Breaking Change

  • Send PrivateLink config under privateService in create_inference_endpoint by @co42 in #4966
    • AWS PrivateLink settings are now sent as privateService.accountId and privateService.region. Use the new private_link_account_id and private_link_region parameters (the region is required when the account ID is set, and is independent of the compute region). The legacy account_id keyword still exists but is ignored and emits a FutureWarning; it is no longer included as a top-level payload field.

🖥️ CLI

  • [CLI] Honor --format / --json / -q on jobs run commands by @Wauplin in #4936docs
    • These flags previously leaked into the container command on hf jobs run, hf jobs uv run and their scheduled variants (--format became the script path, -q became the image name). They are now consumed wherever they appear; use -- when your script needs them.
  • [CLI] Allow bucket as a watched item type in hf webhooks create --watch by @davanstrien in #4958docs

📖 Documentation

  • [Docs] Sync provider task table with the PROVIDERS registry by @rishabhsai in #4930docs
  • Remove dots from allowed characters in job labels (docstring update) by @evalstate in #4962

🐛 Bug and typo fixes

  • [Download] Publish symlink support only after probing by @Wauplin in #4923
  • [Core] Skip invalid eval results entries instead of raising by @davanstrien in #4924
  • [Cache] Use posix paths for scan_cache_dir ref names on Windows by @gokay-ai in #4925
  • [Download] Measure http_get progress from the initial file position by @Wauplin in #4937
  • Fix format_timesince showing "60 seconds ago" / "60 minutes ago" / "24 hours ago" instead of rolling over by @Sreekant13 in #4943
  • [HfFileSystem] Make lpath optional in get_file (fsspec>=2026.9.0) by @assafvayner in #4951
  • [Buckets] Raise BucketBatchError when a batch reports failed operations by @hanouticelina in #4954docs
  • Align the hf package's python_requires with huggingface_hub by @sharziki in #4959
  • [MCP] Follow nextCursor when listing tools in MCPClient by @Kayvan-Zahiri in #4960
  • [Download] Fix Windows MAX_PATH error on tmp .incomplete file by @Wauplin in #4978
  • [HfFileSystem] Fix get_file with a bare local filename by @davanstrien in #4981
  • Apply the repo_id length limit to the namespace as well by @anishmehta24 in #4988

🏗️ Internal

  • Post-release: bump version to 1.33.0.dev0 by @huggingface-hub-bot[bot] in #4926
  • [Serialization] Fix device type when map_location is None by @Wauplin in #4938
  • [Internal] Soft deprecate re.match by @Wauplin in #4939
  • Fix Windows conftest erroring test subsets on lazy-loaded file_download submodule by @dltsum in #4945
  • Scope GITHUB_TOKEN permissions per job by @hf-security-analysis[bot] in #4982

Don't miss a new huggingface_hub release

NewReleases is sending notifications on new releases.