A file system (WFX) plugin for Total Commander, Double Commander or any other file manager that loads WFX extensions, that lets you browse, download, upload, delete, and rename files in your HuggingFace Hub repositories — directly inside your file manager.
Supports multiple HuggingFace accounts and bookmarks for frequently browsed authors.
| Operation | Models | Datasets |
|---|---|---|
| Browse repos | ✅ | ✅ |
| Browse folders | ✅ | ✅ |
| Upload files | ✅ | ✅ |
| Download files | ✅ | ✅ |
| Delete files | ✅ | ✅ |
| Create folders | ✅ | ✅ |
| Remove folders | ✅ | ✅ |
| Rename / Move | ✅ | ✅ |
| Background xfer | ✅ | ✅ |
| Multi-account | ✅ | ✅ |
| Author bookmarks | ✅ | ✅ |
-
Download the latest release:
Go to GitHub Releases and download theHuggingFace_VFS.zipfile. -
Auto-Install (Total Commander):
Simply open the downloaded.zipfile inside Total Commander, and it will prompt you to install the plugin automatically. -
Manual Install:
ExtractHuggingFace_VFS.wfx64andpluginst.infto a folder (e.g.,%COMMANDER_PATH%\Plugins\wfx\HuggingFace\) and follow the Installation steps below.
\HuggingFace\
Account_1\ ← first HF account (named by username)
Models\
owner~repo-name\ ← "owner/repo" uses ~ as separator
README.md
config.json
pytorch_model.bin
Datasets\
owner~dataset-name\
data\train.parquet
[Bookmark owner name] ← bookmark an author for quick access
[Browse] ← browse all repos on HF Hub
Account_2\ ← second HF account
...
microsoft\ ← bookmarked 3rd-party author (root level)
Models\
Datasets\
google\ ← another bookmarked author
Models\
Datasets\
[Bookmark 3rd Party Repos] ← bookmark any author/org (no token needed)
<Settings> ← manage accounts, tokens, bookmarks
[Bookmark ...]— Click to enter an author/org name; creates a bookmark folder for that author inside the current account's section[Browse]— Browse all public repos on HuggingFace Hub (uses the current account's token for API access)[Change Author]— Switch to browsing a different author's repos within this account[Remove Bookmark]— Remove a previously bookmarked author from the current account
[Bookmark 3rd Party Repos]— Bookmark any author/org at the plugin root level, shown alongside accounts. No token needed. Double-click and enter the author/org name. A folder appears at root showing their Models/Datasets.<Settings>— Add or remove accounts, view current accounts.
The virtual path uses ~ as separator (e.g., microsoft~phi-4), avoiding issues with / in filenames.
- Windows 10/11 (x64)
- A HuggingFace account with an access token (read+write) → https://huggingface.co/settings/tokens
Note: While the WFX interface is supported by Double Commander on macOS/Linux, this binary is a Windows DLL and will not work there. Supporting other platforms would require replacing Windows-specific APIs (WinHTTP, BCrypt) and recompiling.
- Open Total Commander
- Go to Configuration → Options → Plugins
- Click Configure under File system plugins (.WFX)
- Click Add, navigate to
HuggingFace_VFS.wfx64, and click Open - Click OK
- Open Double Commander
- Go to Tools → Options → Plugins → File System plugins
- Click Add, navigate to
HuggingFace_VFS.wfx64, and click Open - Click OK
- In the file manager, navigate to the Network Neighborhood (or VFS root)
- Open the
HuggingFaceplugin entry - The plugin will prompt for your API token on first access
- Paste your token (
hf_...) and press OK - A folder appears with your HuggingFace username
- Inside:
Models\andDatasets\with your repos
- Open
<Settings>at the plugin root - Click Add Account, enter another token
- A new root-level folder appears for the second account
- Open
<Settings>to see all configured accounts - Click Remove Account to delete an account
- Tokens are saved to the plugin's INI file for future sessions
Generate a token: https://huggingface.co/settings/tokens
- For read-only browsing: a read token is sufficient
- For upload/delete: you need a write token
Bookmarks let you quickly access repos by a specific author or organization.
Inside any account folder:
- Click
[Bookmark owner name] - Enter the author/org name (e.g.,
microsoft) - A bookmark folder appears under "My Repos" for that author
Bookmarks persist between sessions. To remove, open [Remove Bookmark] and select which bookmark to delete.
At the plugin root level:
- Click
[Bookmark 3rd Party Repos] - Enter any author/org name (e.g.,
google,meta,mistralai) - A folder appears at root level alongside your accounts
- Inside:
Models\andDatasets\for that author (using your first account's token)
To remove a root bookmark: select the bookmark folder and press F8 (Delete). The folder and its bookmark are removed.
This is useful for organizations or individuals you frequently browse whose repos you don't own.
Uploading works exactly like copying files in your file manager:
- Navigate to the destination repo/folder on the right panel (HF plugin)
- Select the file(s) you want to upload on the left panel (local disk)
- Press F5 (Copy) — the plugin streams the file to HF Hub via the commit API
Large files (>50 MB) are supported. The HuggingFace API automatically routes large files through Git LFS.
HuggingFace_VFS/
├── HuggingFace_VFS.sln Visual Studio solution
├── HuggingFace_VFS.vcxproj MSVC project (x64, outputs .wfx64)
├── pluginst.inf Auto-install descriptor
└── src/
├── main.cpp All WFX exported functions
├── wfxplugin.h WFX SDK interface (from ghisler/WFX-SDK)
├── hf_http.h WinHTTP client: download, upload, base64
├── hf_api.h HF Hub API: list repos, tree, delete
├── hf_path.h Virtual path parser (\ → owner/repo/file)
├── hf_settings.h INI persistence, token & bookmark management
└── HuggingFace_VFS.def DLL export definitions
The plugin uses the HuggingFace Hub commit API:
POST https://huggingface.co/api/models/{owner}/{repo}/commit/main
Authorization: Bearer hf_...
Content-Type: application/json
{
"summary": "Upload file.bin via HuggingFace VFS plugin",
"files": [{
"path": "subdir/file.bin",
"content": "<base64-encoded file content>",
"encoding": "base64"
}]
}
This creates a proper git commit on the main branch, visible in the repo's commit history on huggingface.co.
- Repo creation is not supported from the plugin (create repos on the website first)
- Spaces are not listed (models and datasets only)
- Pagination: the plugin fetches up to 100 repos per section; for accounts with more repos, open an issue and we can add a
<Load More>virtual entry - Private repos are accessible as long as your token has read access
- Rename/Move works by download + re-upload + delete (HF has no server-side rename)
- Folder delete recursively deletes all files within (HF has no empty directories)
- Bookmarked authors use the first account's API token for access; private repos of bookmarked authors won't appear unless your first account has access
- Legacy single-account setups are automatically migrated on first load with the new version
- Action entries (Settings, Bookmarks, Browse, Change Author) are files, not directories — double-click to activate
- Visual Studio 2019 or 2022 (any edition including Community — free)
- Windows SDK 10.0 (installed with VS)
- No external dependencies — uses only Windows built-in WinHTTP
- Open
HuggingFace_VFS.slnin Visual Studio - Select Release | x64 configuration
- Build → Build Solution (
Ctrl+Shift+B) - Output:
bin\Release\HuggingFace_VFS.wfx64
msbuild HuggingFace_VFS.sln /p:Configuration=Release /p:Platform=x64
MIT License — do whatever you like with it.
If you find this project useful, consider supporting my work: