Surge - 基于 Go 的极速 TUI 下载管理器
Surge 是一个用 Go 编写的极速 TUI 下载管理器,支持多连接并行下载、多镜像源、Headless Server、浏览器扩展与 CLI 自动化,适合追求命令行工作流和高效下载的专业用户。
社区作者 · zZz
它解决什么问题
Surge 是一个面向专业用户的极速 TUI 下载管理器,使用 Go 语言构建,主打键盘驱动的工作流。它默认最多打开 16 个连接,将文件分块并并行下载,从而最大化带宽利用率;还支持多镜像源同时下载与自动故障转移、顺序流式下载(适合边下载边预览媒体文件)、后台守护进程架构,以及可自定义配色和主题引擎的终端界面。项目提供完整的 CLI 工具、Headless Server 模式和浏览器扩展,可将浏览器下载任务直接转交本地或远程 Surge 服务;同时支持 Docker 部署、systemd 服务、远程 TUI 连接。
官方基准测试显示,在 1GB 文件测试中 Surge 下载速度约为 35.40 MB/s,较 aria2c 快约 1.38 倍、较 curl 快约 1.99 倍、较 wget 快约 2.14 倍。配图 1 展示了 Surge 的 TUI 演示;配图 2 展示了项目 Star 历史。项目采用 MIT License,鼓励社区贡献。
— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。
安装 / 开始使用
安装方式:
- 预编译二进制:从 GitHub Releases 下载对应平台二进制,直接运行。
步骤 2 · Linux AppImage:从 Releases 下载后执行
chmod +x Surge_..._linux_x86_64.AppImage,然后运行 ./Surge_..._linux_x86_64.AppImage,支持增量更新。
- Arch Linux(AUR):yay -S surge。
步骤 4 · macOS/Linux(Homebrew):
brew install SurgeDM/tap/surge。
- Nix/NixOS:nix run github:SurgeDM/Surge;NixOS 配置使用 inputs.surge.packages.${pkgs.system}.default。
步骤 6 · Windows:
winget install surge-downloader.surge,或
scoop install surge,或
choco install surge。
- Docker:执行
wget https://raw.githubusercontent.com/SurgeDM/Surge/refs/heads/main/docker/compose.ymldocker compose up -d然后用 docker compose exec surge surge token 获取 API Token,用 docker compose exec surge surge ls 检查下载,用 docker compose logs -f surge 查看日志。
步骤 8
Go 安装:go install github.com/SurgeDM/Surge@latest,需要 Go 1.25+。
首次运行与使用:
- TUI 模式:直接运行 surge 进入交互式仪表盘;要启动纯本地 TUI(不启动 HTTP API),运行 surge --no-server。
- 带下载任务启动 TUI:surge https://example.com/file1.zip https://example.com/file2.zip;也可以结合批量文件:surge https://example.com/file.zip --batch urls.txt。
- Server/Headless 模式:运行 surge server -H 10.0.0.1 -P 8090 --token MYTOKEN...