Hugging Face CLI
/install hugging-face-cli
Hugging Face CLI
Hugging Face (https://huggingface.co) is the leading platform for sharing and collaborating on AI models, datasets, and spaces. This skill enables interaction with the Hub through the official hf CLI.
Installation
Check if hf is available by running hf version. If not installed:
pip install -U "huggingface_hub[cli]"
# or
brew install hf
If the options above do not work, follow the official installation guide.
After installation, run hf version to verify. If the command is not found, run source ~/.bashrc (or source ~/.zshrc for zsh) to reload the PATH, then try again.
Authentication
A Hugging Face User Access Token is required. The token is provided via the HF_TOKEN environment variable.
If authentication fails or the token is missing, instruct the user to:
- Go to https://huggingface.co/settings/tokens
- Create a new token — there are two permission levels:
- Read (safer): sufficient for searching, downloading models/datasets, listing repos, browsing papers, and most read-only operations. Choose this if you only need to explore and download.
- Write (less safe, broader access): required for creating/deleting repos, uploading files, managing discussions, deploying endpoints, and running jobs. Example 3 (create a repo and upload weights) requires a write token.
- Set it as an environment variable:
export HF_TOKEN="hf_..."(add to shell profile for persistence)
Important: Do NOT run hf auth login interactively — it requires terminal input. Instead, use the environment variable directly. The hf CLI automatically picks up HF_TOKEN from the environment for all commands. To verify authentication, run:
hf auth whoami
Key Commands
| Task | Command |
|---|---|
| Check current user | hf auth whoami |
| Download files | hf download \x3Crepo_id> [files...] [--local-dir \x3Cpath>] |
| Download specific revision | hf download \x3Crepo_id> --revision \x3Cbranch|tag|commit> |
| Download with filters | hf download \x3Crepo_id> --include "*.safetensors" --exclude "*.bin" |
| Upload files | hf upload \x3Crepo_id> \x3Clocal_path> [path_in_repo] |
| Upload as PR | hf upload \x3Crepo_id> \x3Clocal_path> [path_in_repo] --create-pr |
| Upload (private repo) | hf upload \x3Crepo_id> \x3Clocal_path> [path_in_repo] --private |
| Upload large folder | hf upload-large-folder \x3Crepo_id> \x3Clocal_path> |
| Create a repo | hf repos create \x3Cname> [--repo-type model|dataset|space] [--private] |
| Delete a repo | hf repos delete \x3Crepo_id> |
| Delete files from repo | hf repos delete-files \x3Crepo_id> \x3Cpath>... |
| Duplicate a repo | hf repos duplicate \x3Crepo_id> [--type model|dataset|space] |
| Repo settings | hf repos settings \x3Crepo_id> [--private|--public] |
| Manage branches | hf repos branch create|delete \x3Crepo_id> \x3Cbranch> |
| Manage tags | hf repos tag create|delete \x3Crepo_id> \x3Ctag> |
| List models | hf models ls [--search \x3Cquery>] [--sort downloads] [--limit N] |
| Model info | hf models info \x3Crepo_id> |
| List datasets | hf datasets ls [--search \x3Cquery>] |
| Dataset info | hf datasets info \x3Crepo_id> |
| Run SQL on data | hf datasets sql "\x3CSQL>" |
| List spaces | hf spaces ls [--search \x3Cquery>] |
| Space info | hf spaces info \x3Crepo_id> |
| Space dev mode | hf spaces dev-mode \x3Crepo_id> |
| List papers | hf papers ls [--limit N] |
| List collections | hf collections ls [--owner \x3Cuser>] [--sort trending] |
| Create collection | hf collections create "\x3Ctitle>" |
| Collection info | hf collections info \x3Ccollection_slug> |
| Add to collection | hf collections add-item \x3Ccollection_slug> \x3Crepo_id> \x3Ctype> |
| Delete collection | hf collections delete \x3Ccollection_slug> |
| Run a cloud job | hf jobs run \x3Cdocker_image> \x3Ccommand> |
| List jobs | hf jobs ps |
| Job logs | hf jobs logs \x3Cjob_id> |
| Cancel a job | hf jobs cancel \x3Cjob_id> |
| Job hardware | hf jobs hardware |
| Deploy endpoint | hf endpoints deploy \x3Cname> --repo \x3Crepo_id> --framework \x3Cfw> --accelerator \x3Chw> ... |
| List endpoints | hf endpoints ls |
| Endpoint info | hf endpoints describe \x3Cname> |
| Pause/resume endpoint | hf endpoints pause|resume \x3Cname> |
| Delete endpoint | hf endpoints delete \x3Cname> |
| List discussions | hf discussions ls \x3Crepo_id> |
| Create discussion | hf discussions create \x3Crepo_id> --title "\x3Ctitle>" |
| Comment on discussion | hf discussions comment \x3Crepo_id> \x3Cnum> --body "\x3Ctext>" |
| Close discussion | hf discussions close \x3Crepo_id> \x3Cnum> |
| Merge PR | hf discussions merge \x3Crepo_id> \x3Cnum> |
| Manage cache | hf cache ls, hf cache rm \x3Cid>, hf cache prune |
| Delete bucket / files | hf buckets delete \x3Cuser>/\x3Cbucket>, hf buckets rm \x3Cuser>/\x3Cbucket>/\x3Cpath> |
| Sync to bucket | hf sync \x3Clocal_path> hf://buckets/\x3Cuser>/\x3Cbucket> |
| Print environment | hf env |
End-to-End Examples
Example 1: Explore trending models, pick one, and preview a download
hf models ls --sort trending_score --limit 5
hf models info openai-community/gpt2
hf download --dry-run openai-community/gpt2 config.json tokenizer.json
hf download openai-community/gpt2 config.json tokenizer.json --local-dir ./gpt2
Example 2: Browse today's papers and find related datasets
hf papers ls --limit 5
hf datasets ls --search "code" --sort downloads --limit 5
hf datasets info bigcode/the-stack
Example 3: Create a private model repo and upload weights
hf repos create my-fine-tuned-model --private
# create returns \x3Cyour-username>/my-fine-tuned-model — use that full ID below
hf upload \x3Cusername>/my-fine-tuned-model ./output --commit-message "Add fine-tuned weights"
hf repos tag create \x3Cusername>/my-fine-tuned-model v1.0 -m "Initial release"
Further Reference
Reference version: hf CLI v1.x
For the full list of commands and options, use built-in help:
hf --help
hf \x3Ccommand> --help
- Full documentation: https://huggingface.co/docs/huggingface_hub/guides/cli
- CLI reference: https://huggingface.co/docs/huggingface_hub/package_reference/cli
Safety Rules
- Destructive commands require explicit user confirmation. Before running any of the following, describe what will happen and ask the user to confirm:
hf repos delete— permanently deletes a repositoryhf repos delete-files— deletes files from a repositoryhf buckets delete/hf buckets rm— deletes buckets or bucket fileshf discussions close/hf discussions merge— closes or merges PRs/discussionshf collections delete— permanently deletes a collectionhf endpoints delete— permanently deletes an Inference Endpointhf jobs cancel— cancels a running compute job- Any command with
--deleteflag (e.g., sync with deletion) hf cache rm/hf cache prune— removes cached data from disk (re-downloadable, but may waste bandwidth)
- Never expose or log the
HF_TOKENvalue. Do not include it in command output or commit it to files. - When uploading, warn the user if the target repo is public and the upload may contain sensitive data.
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install hugging-face-cli - 安装完成后,直接呼叫该 Skill 的名称或使用
/hugging-face-cli触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Hugging Face CLI 是什么?
Manage Hugging Face Hub via hf CLI. Use when working with HF AI models, datasets, spaces, or repos. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 311 次。
如何安装 Hugging Face CLI?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install hugging-face-cli」即可一键安装,无需额外配置。
Hugging Face CLI 是免费的吗?
是的,Hugging Face CLI 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Hugging Face CLI 支持哪些平台?
Hugging Face CLI 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Hugging Face CLI?
由 Yevhen Diachenko(@yevhendiachenko0)开发并维护,当前版本 v1.1.0。