Windows 支持尚未完全完善;vim/nvim 用户需先把默认快捷键配置改为 vim 版本;自动更新检查默认开启,可在配置中设 auto_check_update 为 false 关闭
superfile
yorukotMIT活跃维护一款用 Go 写的现代终端文件管理器,界面漂亮、操作顺手,适合习惯在命令行里浏览和管理文件的人。
Pretty fancy and modern terminal file manager
bash -c "$(curl -sLo- https://superfile.dev/install.sh)"README 未说明;支持 Linux、macOS 和 Windows(Windows 尚未完全支持)
终端里的现代文件管理器,用键盘高效浏览和操作文件
一款用 Go 写的现代终端文件管理器,界面漂亮、操作顺手,适合习惯在命令行里浏览和管理文件的人。
核心能力
- 在终端中完成常见文件操作
- 支持自定义主题与插件扩展
- 可自定义快捷键,并提供 vim 版本配置
- 内置自动检查更新提示,可在配置中关闭
容易踩的坑
- v1.6.0最新正式版2026-06-07 · 2026-06-07 17:54 UTC
This release focuses on preview reliability, richer file metadata, configurable sidebar behavior, and a refreshed website and logo design, alongside navigation improvements, better error messages, refactoring, dependency updates, and bug fixes.
Install:
Click me to know how to install
Highlights
- Improved image and file preview reliability through the Bubble Tea v2 migration. Thanks @lazysegtree for the implementation
- New website & logo design. Thanks @elvisdragonmao for the implementation
- Added richer file metadata, including binary architecture detection for ELF/PE/Mach-O, Linux attributes, and file type byte support in the permissions column. Thanks @barsaskn, @xelavopelk, and @booth-w for the implementation
- Sidebar sections can now be configured for visibility and ordering. Thanks @Mjoyufull for the implementation
- Improved file operation error messages for delete, paste, and file text preview failures. Thanks @xelavopelk for the implementation
- Added
split_file_panelkey function and navigation improvements for file panels. Thanks @robert-zaremba, @xelavopelk, and @padda78 for the implementation
New Contributors
- @padda78 made their first contribution in https://github.com/yorukot/superfile/pull/1316
- @moriT958 made their first contribution in https://github.com/yorukot/superfile/pull/1318
- @Mjoyufull made their first contribution in https://github.com/yorukot/superfile/pull/1323
- @moabeat-berlin made their first contribution in https://github.com/yorukot/superfile/pull/1327
- @barsaskn made their first contribution in https://github.com/yorukot/superfile/pull/1328
- @robert-zaremba made their first contribution in https://github.com/yorukot/superfile/pull/1344
- @nil957 made their first contribution in https://github.com/yorukot/superfile/pull/1386
- @dsvetoslavov made their first contribution in https://github.com/yorukot/superfile/pull/1384
- @mehexi made their first contribution in https://github.com/yorukot/superfile/pull/1387
- @jirka-grunt made their first contribution in https://github.com/yorukot/superfile/pull/1399
- @elvisdragonmao made their first contribution in https://github.com/yorukot/superfile/pull/1423
- @pikammmmm made their first contribution in https://github.com/yorukot/superfile/pull/1427
- @NouemanKHAL made their first contribution in https://github.com/yorukot/superfile/pull/1465
Detailed Change Summary
Update
- Add configuration options for sidebar section visibility and ordering by @Mjoyufull in https://github.com/yorukot/superfile/pull/1323
- Add binary architecture detection for ELF, PE, and Mach-O by @barsaskn in https://github.com/yorukot/superfile/pull/1328
- Add
--debug-infoflag by @barsaskn in https://github.com/yorukot/superfile/pull/1332 - Focus on current directory when navigating to parent directory in a file panel by @xelavopelk in https://github.com/yorukot/superfile/pull/1340
- Add
split_file_panelkey function by @robert-zaremba in https://github.com/yorukot/superfile/pull/1344 - Refresh file metadata when focusing metadata panel by @xelavopelk in https://github.com/yorukot/superfile/pull/1372
- Add Desktop directory to well-known directories by @nil957 in https://github.com/yorukot/superfile/pull/1386
- Add support for PostScript files by @jirka-grunt in https://github.com/yorukot/superfile/pull/1399
- Bubble Tea v2 migration by @lazysegtree in https://github.com/yorukot/superfile/pull/1406
- Add detailed delete operation error messages by @xelavopelk in https://github.com/yorukot/superfile/pull/1408
- Add file type byte to permissions column by @booth-w in https://github.com/yorukot/superfile/pull/1410
- New website & logo design by @elvisdragonmao in https://github.com/yorukot/superfile/pull/1423
- Add Linux attributes to metadata by @xelavopelk in https://github.com/yorukot/
- v1.6.0-rc1pre-release2026-05-27 · 2026-05-27 11:24 UTC
查看更新说明
How to install the pre-release
macOS/Linux
SPF_INSTALL_VERSION=1.6.0-rc1 bash -c "$(curl -sLo- https://superfile.dev/install.sh)"Note: If you have spf installed via brew or another package manager, remove that installation first. Otherwise, running spf in the terminal might still point to the package manager version instead of the pre-release installed by the script.
Windows
$env:SPF_INSTALL_VERSION = "1.6.0-rc1" Invoke-Expression ((New-Object System.Net.WebClient).DownloadString("https://superfile.dev/install.ps1"))Note: You can also build it from source. Refer to the README file in the repository for more information.
After installation, ensure that spf --version prints:
superfile version v1.6.0-rc1
Major Changes
- Improve image preview and file preview reliability through the Bubble Tea v2 migration #1406
- New website & logo design #1423
- Add richer file metadata, including binary architecture detection, Linux attributes, and file type byte in permissions column #1328, #1432, #1410
- Add sidebar section visibility and ordering configuration #1323
- Improve file operation error messages for delete, paste, and file text preview #1408, #1431, #1436
All Changes
- docs: Add jetbrains logo by @lazysegtree in https://github.com/yorukot/superfile/pull/1292
- fix(nix): resolve build failure by @Frost-Phoenix in https://github.com/yorukot/superfile/pull/1298
- fix: grammar corrections in readme and removed a redundant link in site by @AnshumanNeon in https://github.com/yorukot/superfile/pull/1302
- fix: Prune Inaccessible Items from clipboard before pasting by @lazysegtree in https://github.com/yorukot/superfile/pull/1300
- chore: update tracking code by @yorukot in https://github.com/yorukot/superfile/pull/1301
- chore(deps): update dependency astro to v5.16.9 by @renovate[bot] in https://github.com/yorukot/superfile/pull/1294
- chore(deps): update astro monorepo by @renovate[bot] in https://github.com/yorukot/superfile/pull/1313
- chore(deps): update dependency @expressive-code/plugin-line-numbers to v0.41.6 by @renovate[bot] in https://github.com/yorukot/superfile/pull/1310
- fix: correct jump back to parent directories cursor position by @padda78 in https://github.com/yorukot/superfile/pull/1316
- chore(deps): update dependency @astrojs/starlight to v0.37.3 by @renovate[bot] in https://github.com/yorukot/superfile/pull/1308
- chore(deps): update dependency @expressive-code/plugin-collapsible-sections to v0.41.6 by @renovate[bot] in https://github.com/yorukot/superfile/pull/1309
- docs: add special thanks page by @yorukot in https://github.com/yorukot/superfile/pull/1317
- docs(config): add missing fields to vim like superfile hotkeys by @moriT958 in https://github.com/yorukot/superfile/pull/1318
- feat: add configuration options for sidebar section visibility and ordering by @Mjoyufull in https://github.com/yorukot/superfile/pull/1323
- fix: Move toggleDot files to fileModel and force re render on toggle by @lazysegtree in https://github.com/yorukot/superfile/pull/1324
- feat: Refactor sort Modal to seperate package by @lazysegtree in https://github.com/yorukot/superfile/pull/1325
- fix: Update xz to v0.5.15 to enable cross-compile again by @moabeat-berlin in https://github.com/yorukot/superfile/pull/1327
- feat(metadata): add binary architecture detection for ELF, PE, and Mach-O by @barsaskn in https://github.com/yorukot/superfile/pull/1328
- feat(cmd): add --debug-info flag by @barsaskn in https://github.com/yorukot/superfile/pull/1332
- chore(deps): update dependency astro to v5.16.16 by @renovate[bot] in https://github.com/yorukot/superfile/pull/1319
- feat: Refactor helpMenu Modal to seperate package by @lazysegtree in https://github.com/yorukot/superfile/pull/1335
- feat: Focus on current directory on navigation to parent directory in a filepanel by @xelavopelk in https://github.com/yorukot/superfile/pull/1340
- ch
- v1.5.02026-01-13 · 2026-01-13 11:28 UTC
查看更新说明
This release brings major new features, including video and PDF preview support, multi-column file panels, and configurable navigation, alongside significant code refactoring and comprehensive bug fixes.
Install:
Click me to know how to install
Highlights
- Added video and PDF preview support via loading the first frame/page as an image. Thanks @Yassen-Higazi for the implementation
- Multi-column file panel view with date/size/permission columns. Thanks @xelavopelk for the implementation
- Configurable fast navigation in the Filepanel. See this PR for more details: https://github.com/yorukot/superfile/pull/1220
- You can now configure
spfto open files with specific extensions with your choice of editor application. Thanks @litvinov-git for the implementation See this PR for more details: https://github.com/yorukot/superfile/pull/1197 - Terminal stdout support for shell commands
- Allow launching with the filename.
spf /a/b/c.txtwill launch in/a/bwithc.txtas the selected file. - Various bug fixes, including modal confirmations, layout issues, and race conditions. See 'Detailed Change Summary'
Internal Updates
- Separated FilePanel and FileModel into a dedicated package for better code organization
- Comprehensive end-to-end testing with layout fixes
- Enhanced dimension validation and sidebar fixes
- Updated multiple dependencies including Astro, Go toolchain, and linters
- Added gosec linter and MND linter with magic number cleanup
Detailed Change Summary
Update
- allow hover to file
#1177by @lazysegtree - show count selected items in select mode
#1187by @xelavopelk - Add icon alias for kts to kt
#1153by @nicolaic - link icon and metadata
#1171by @xelavopelk - user configuration of editors by file extension
#1197by @litvinov-git - add video preview support
#1178by @Yassen-Higazi - Add pdf preview support
#1198by @Yassen-Higazi - Add icons in pinned directories
#1215by @lazysegtree - Enable fast configurable navigation
#1220by @lazysegtree - add Trash bin to default directories for Linux
#1236by @lazysegtree - add terminal stdout support for shell commands
#1250by @majiayu000 - More columns in file panel (MVP)
#1268by @xelavopelk
Bug Fix
- v1.5.0-rc1pre-release2026-01-03 · 2026-01-03 05:22 UTC
查看更新说明
How to install the pre-release
MacOS/Linux
SPF_INSTALL_VERSION=1.5.0-rc1 bash -c "$(curl -sLo- https://superfile.netlify.app/install.sh)"Note - If you have
spfinstalled viabrewor other package manager, you would need to remove that installation; otherwise, runningspfcommand in the terminal might still point to the one you installed via the package manager, not the one you installed via the script.Windows
powershell -ExecutionPolicy Bypass -Command "$env:SPF_INSTALL_VERSION=1.5.0-rc1; Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://superfile.netlify.app/install.ps1'))"Note - You can also build it from source. Refer to the README file in the repository for more information. Ensure that
spf --versionprintssuperfile version v1.5.0-rc1Major Changes
Major Changes
- Configurable & faster navigation with a new key-driven navigation system. See this PR for more details: #1220
- Terminal stdout support for shell commands, enabling direct output display.
- Trash bin added to default directories on Linux.
- Allow the preview panel to have borders.
Internal Improvements
- Major layout and dimension system overhaul, including sidebar, footer, file panel, preview border, and process bar behavior.
- Introduction of layout and dimension validations and additional tests to prevent invalid UI states.
- File model separation and rendering refactor, simplifying preview and file handling logic.
- Some flaky unit tests fixed, improving CI reliability.
All changes
- fix: update metadata and process bar sizes when toggling footer by @lazysegtree in https://github.com/yorukot/superfile/pull/1218
- feat: Enable fast configurable navigation by @lazysegtree in https://github.com/yorukot/superfile/pull/1220
- fix: File panel dimension management by @lazysegtree in https://github.com/yorukot/superfile/pull/1222
- feat: File model seperation by @lazysegtree in https://github.com/yorukot/superfile/pull/1223
- feat: Dimension validations by @lazysegtree in https://github.com/yorukot/superfile/pull/1224
- feat: Layout validation and sidebar dimension fix by @lazysegtree in https://github.com/yorukot/superfile/pull/1228
- feat: Bug fix, navigation changes and refactoring by @lazysegtree in https://github.com/yorukot/superfile/pull/1219
- fix: More layout fixes, complete end to end layout unit tests by @lazysegtree in https://github.com/yorukot/superfile/pull/1227
- fix: Fix Flaky tests by @lazysegtree in https://github.com/yorukot/superfile/pull/1233
- feat: add Trash bin to default directories for Linux by @lazysegtree in https://github.com/yorukot/superfile/pull/1236
- fix: modal confirmation bug where arrow keys trigger actions by @lazysegtree in https://github.com/yorukot/superfile/pull/1243
- fix: small optimization file panel by @xelavopelk in https://github.com/yorukot/superfile/pull/1241
- chore(deps): update dependency @expressive-code/plugin-collapsible-sections to v0.41.5 by @renovate[bot] in https://github.com/yorukot/superfile/pull/1189
- feat: User rendering package and eliminate FilePreviewBox, and other unused functions by @lazysegtree in https://github.com/yorukot/superfile/pull/1245
- fix: use ExtractOperationMsg for extraction operations by @lazysegtree in https://github.com/yorukot/superfile/pull/1248
- fix: skip open_with field from missing field validation by @lazysegtree in https://github.com/yorukot/superfile/pull/1251
- feat: User rendering package for file preview and other fixes by @lazysegtree in https://github.com/yorukot/superfile/pull/1249
- feat: add terminal stdout support for shell commands by @majiayu000 in https://github.com/yorukot/superfile/pull/1250
- feat: 1.5.0-rc1, preview border, process bar naming fixes by @lazysegtree in https://github.com/yorukot/superfile/pull/1264
New Contributors
- @majiayu000 made their first contrib
- v1.4.1-rcpre-release2025-12-21 · 2025-12-21 04:49 UTC
查看更新说明
How to install the pre-release
MacOS/Linux
SPF_INSTALL_VERSION=1.4.1-rc bash -c "$(curl -sLo- https://superfile.netlify.app/install.sh)"Note - If you have
spfinstalled viabrewor other package manager, you would need to remove that installation; otherwise, runningspfcommand in the terminal might still point to the one you installed via the package manager, not the one you installed via the script.Windows
powershell -ExecutionPolicy Bypass -Command "$env:SPF_INSTALL_VERSION=1.4.1-rc; Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://superfile.netlify.app/install.ps1'))"Note - You can also build it from source. Refer to the README file in the repository for more information.
Major Changes
- Added video and PDF preview support.
- Added hover-to-file behavior while launching Superfile. Launching
spf /path/to/1.txtwill open the directory containing1.txtwith1.txtsepected - Enabled user-configurable editors per file extension.
- Improve rendering performance by removing repeated syscalls.
Internal improvements
- Fixing some flaky tests
- Refactoring and linter enablement
Change details
- fix(ci): update input names to new ones from actions/first-interaction@v3 by @nikero41 in https://github.com/yorukot/superfile/pull/1120
- fix: only calculate checksum on files by @nikero41 in https://github.com/yorukot/superfile/pull/1119
- style(theme): Everforest Dark Hard by @fzahner in https://github.com/yorukot/superfile/pull/1114
- refactor: simplify renameIfDuplicate function and add comprehensive … by @sarff in https://github.com/yorukot/superfile/pull/1100
- fix: Linter issue with PrintfAndExit by @xelavopelk in https://github.com/yorukot/superfile/pull/1133
- chore: Bump golangci-lint to v2.5.0 by @lazysegtree in https://github.com/yorukot/superfile/pull/1135
- fix(deps): update astro monorepo by @renovate[bot] in https://github.com/yorukot/superfile/pull/1010
- fix(deps): update dependency starlight-giscus to ^0.8.0 by @renovate[bot] in https://github.com/yorukot/superfile/pull/1020
- chore(deps): bump astro from 5.13.2 to 5.14.8 in /website by @dependabot[bot] in https://github.com/yorukot/superfile/pull/1138
- chore(deps): update dependency @astrojs/sitemap to v3.6.0 by @renovate[bot] in https://github.com/yorukot/superfile/pull/1139
- chore(deps): bump vite from 6.3.5 to 6.4.1 in /website by @dependabot[bot] in https://github.com/yorukot/superfile/pull/1134
- chore: mirror to codeberg by @yorukot in https://github.com/yorukot/superfile/pull/1141
- feat: migrate tutorial demo assets to local by @yorukot in https://github.com/yorukot/superfile/pull/1140
- feat(asset): new logo by @nonepork in https://github.com/yorukot/superfile/pull/1145
- chore: sync package lock by @yorukot in https://github.com/yorukot/superfile/pull/1143
- feat(website): update superfile-config.mdx for Fish shell setup by @wleoncio in https://github.com/yorukot/superfile/pull/1142
- feat: Add icon alias for kts to kt by @nicolaic in https://github.com/yorukot/superfile/pull/1153
- chore(deps): update actions/setup-go action to v6 by @renovate[bot] in https://github.com/yorukot/superfile/pull/1038
- fix: Remove repeated os.ReadDir calls by @lazysegtree in https://github.com/yorukot/superfile/pull/1155
- chore(deps): bump astro from 5.14.8 to 5.15.6 in /website by @dependabot[bot] in https://github.com/yorukot/superfile/pull/1157
- chore(deps): update dependency astro to v5.15.9 [security] by @renovate[bot] in https://github.com/yorukot/superfile/pull/1158
- feat: link icon and metadata by @xelavopelk in https://github.com/yorukot/superfile/pull/1171
- feat: allow hover to file by @lazysegtree in https://github.com/yorukot/superfile/pull/1177
- feat: add video preview support by @Yassen-Higazi in https://github.com/yorukot/superfile/pull/1178
- chore: enable MND linter and fix all magic number issues by @lazysegtree in https://
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。

Demo
| Perform common operations |
|---|
![]() |
Content
- Demo
- Content
- Installation
- Build
- Start superfile
- Supported Systems
- Tutorial
- Plugins
- Themes
- Hotkeys
- Notes
- Troubleshooting
- Uninstalling
- Contributing
- Thanks
- ༼ つ ◕_◕ ༽つ Please share.
Installation
macOS and Linux
bash -c "$(curl -sLo- https://superfile.dev/install.sh)"
If you want to inspect the script, see : install.sh
Windows
Powershell
powershell -ExecutionPolicy Bypass -Command "Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://superfile.dev/install.ps1'))"
If you want to inspect the script, see : install.ps1
Winget
winget install --id yorukot.superfile
Scoop
scoop install superfile
More installation methods
Click me to check on how to install
Build
You can build the source code yourself by using these steps:
Requirements
Build Steps
Clone this repository using the following command:
git clone https://github.com/yorukot/superfile.git --depth=1
Enter the downloaded directory:
cd superfile
For macOS/Linux
Run the build.sh file:
./build.sh
Add the binary file to your $PATH, e.g., in /usr/local/bin:
sudo mv ./bin/spf /usr/local/bin
For Windows
go build -o bin/spf.exe
Edit System Environment Variables and add superfile repo's bin directory to your PATH
Start superfile
spf
Supported Systems
- [x] Linux
- [x] macOS
- [x] Windows (Not fully supported yet)
Tutorial
After you install superfile, you can go here to briefly understand how to use superfile!
Plugins
Themes
Hotkeys
[!WARNING] If you are vim/nvim user please change your default hotkeys config to vim version!
Click me to see the hotkey wiki
Notes
We have an auto update functionality, that fetches superfile's latest released version from github (if last timestamp of last version check was less than 24 hours) and prints a prompt to user, if there is a newer version available.
You can turn this off, by setting auto_check_update to false in superfile config. Click me to see the config wiki
Troubleshooting
Click me to see common problem fix
Uninstalling
macOS and Linux
bash -c "$(curl -sLo- https://superfile.dev/uninstall.sh)"
If you want to inspect the script, see : uninstall.sh
Besides the spf binary in /usr/local/bin or ~/.local/bin, the script also deletes your config and data folders: ~/.config/superfile, ~/.local/share/superfile and ~/.local/state/superfile (or the $XDG_*_HOME locations if you set them, on Linux or macOS), and ~/Library/Application Support/superfile on macOS.
Windows
To uninstall superfile on Windows, use this powershell script.
powershell -ExecutionPolicy Bypass -Command "Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://superfile.dev/uninstall.ps1'))"
This script does not remove your config and data folder. Delete %LOCALAPPDATA%\superfile manually if you want it gone.
Other install methods
If you installed superfile another way (for example with a package manager), run spf pl before uninstalling to see where your config and data folders are, then delete them yourself. See config file path for all locations.
Contributing
If you want to contribute please follow the contribution guide
Thanks
Support
- a Star on my GitHub repository would be nice 🌟
- You can buy a coffee for me 💖
Core maintainer
We welcome anyone who wants to become a core maintainer. Feel free to reach out!
- @yorukot - Original author and maintainer
- @lazysegtree - Core maintainer
Contributors
Thanks to all the contributors for making this project even greater!
Powered by
Thanks to JetBrains team for providing open-source licenses to support the maintenance of superfile.
Star History
THANKS FOR All OF YOUR STARS! Your stars are my motivation to keep updating!
