Jobs on the Hub now support an optional --name flag on the CLI and a name parameter on the Python API, making them easier to find in the UI. The README was recast to put the hf CLI first, with a new "For AI agents" section.
huggingface_hub
You can now create Spaces from official Hub templates (JupyterLab, Gradio, Streamlit) using the new list_space_templates() API or hf spaces templates CLI command, passing the template ID to create_repo() or hf repos create. A new hf extensions update command updates installed CLI extensions to their latest GitHub versions in place, skipping those already current. Xet downloads now display dual progress bars — one for network transfer and one for disk reconstruction — so slow connections show visible progress instead of stalling at 0%. Removes legacy XetConnectionInfo, refresh_xet_connection_info, and fetch_xet_connection_info_from_repo_info exports. Also fixes a v1.22 regression where snapshot_download silently skipped files on Windows due to backslash handling, and another where enum-option-defaulted CLI commands failed at runtime.
Create Spaces from official templates (JupyterLab, Gradio, Streamlit, etc.) using the new list_space_templates() API or hf spaces templates CLI command. A new hf extensions update command brings installed CLI extensions to their latest version. Xet downloads now show dual progress bars — one for network transfer and one for disk reconstruction — making progress visible even on slow connections, and the built-in hf-cli skill is now generated locally and works fully offline. Plus bug fixes for Windows file handling, enum defaults, and install verification.
Sandboxes introduce isolated cloud VMs with live-streamed output, file transfer, and a proxy for reaching in-sandbox servers. Snapshot downloads now cache repo file listings on disk for a single-network-call re-download. The CLI was rebuilt on Click, deprecating Typer. Breaking changes include case-sensitive pattern matching on all platforms, removal of six inference providers, and deprecation of upload_large_folder.
list_jobs() now returns a lazy Iterable[JobInfo] instead of a list, accepts server-side status and labels filters, and paginates automatically. The CLI renamed hf jobs ps to hf jobs ls (aliases still work). Also fixed a circular import on from huggingface_hub import login.
Browser-based OAuth Device Code flow is now the default login method, and hf upload uses a streamed multi-commit pipeline for faster, resumable large folder uploads. Also adds job wait commands, SSH access to running Jobs, and custom-container deployment for Inference Endpoints, with breaking changes around multi-commit uploads and non-detached job exit codes.
Keyless CI/CD authentication is now supported via Trusted Publishers, allowing workflows to authenticate without storing an HF_TOKEN secret. The CLI now accepts hf:// URIs for uploading and downloading, and jobs can expose container ports through the public jobs proxy.
A new unified hf cp command handles all file-copy workflows (upload, download, remote-to-remote) with consistent hf:// URI syntax and rsync-style semantics. parse_hf_uri now accepts Hugging Face web URLs directly. Fixed a data corruption bug where concurrent hf_hub_download calls could append to the same .incomplete file on Lustre, GPFS, and some NFS mounts where flock(2) provides no mutual exclusion; downloads now use fresh temporary files instead of resuming incomplete ones, making the download path safe even when file locking is broken. This is a breaking change: resuming previously failed partial downloads is no longer possible.
You can now copy files or entire folders between different repositories without downloading or re-uploading, with LFS blobs deduplicated server-side. Added hf spaces ssh to open SSH sessions directly into a Space's Dev Mode container, and hf repos ls to list all your repositories with storage size and usage sorting. CLI tables now auto-fit to terminal width with per-column width caps and automatically right-align numeric columns.
Capped typer below 0.26.0 to resolve CLI incompatibility, and added click as an explicit dependency.
The Together ASR task has been removed from the Inference API to eliminate the urllib3 dependency.
Token files written by huggingface_hub are now created with secure permissions (0o600 for files, 0o700 for parent directory), matching industry-standard tools like GitHub CLI and AWS CLI. Together Inference Provider now supports embeddings, text-to-speech, automatic speech recognition, image-to-image, and text-to-video tasks. Breaking changes include BucketUrl.handle renamed to BucketUrl.uri, Volume.to_hf_handle() renamed to Volume.to_uri(), and single-segment repo IDs no longer supported in HfFileSystem paths.
The create_bucket and create_repo APIs now accept an optional region argument ("us" or "eu") to pin new resources to a specific cloud region, with matching --region flags on the CLI. A new hf skills list command lists all available marketplace skills and shows which are already installed across project, global, and Claude locations. Help output now uses ANSI styling with underlined section headings and bold option names for better readability in terminals.
🖥️ Manage Space secrets and variables from the CLI
You can now manage Space secrets and environment variables directly from the command line with two new hf spaces subgroups: secrets and variables. Use hf spaces secrets to add, list, and delete write-only secrets,…
🖥️ New CLI commands: repo cards, file listings, and dataset leaderboards
This release adds three new CLI capabilities for exploring Hub content. hf models card, hf datasets card, and hf spaces card fetch the README of any repo and print it to stdout, with…
- [Inference Providers] Add DeepInfra support in https://github.com/huggingface/huggingface_hub/pull/4114 by @hanouticelina
Full Changelog: https://github.com/huggingface/huggingface_hub/compare/v1.12.1...v1.12.2
🖥️ Unified output format for hf buckets commands
All hf buckets commands now use the unified --format [auto|human|agent|json|quiet] flag and the out singleton for consistent, scriptable output. The previous --quiet and --format table|json flags have been…
🔍 Semantic search for Spaces
Discover Spaces using natural language. The new search_spaces() API and hf spaces search CLI use embedding-based semantic search to find relevant Spaces based on what they do - not just keyword matching on their name.
>>>…- Fix reference cycle in hf_raise_for_status causing delayed object destruction by @Wauplin in #4092
Full Changelog: https://github.com/huggingface/huggingface_hub/compare/v1.10.1...v1.10.2


