kanzo
Self-hosted, sharable kanban for humans and agents. One 4.5 MB binary, 4.5 MB of RAM, 10 to 60 tokens per agent reply, starts in 2 ms, zero setup.
翻译准备中
Open-source download manager: Windows desktop and browser integration, plus a standalone Linux and macOS CLI.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Fast downloads. A smoother internet. Velo is a free, open-source download manager: a Windows desktop app with browser integration, and a standalone command-line downloader for Windows, Linux and macOS.
Website · Latest release · CLI installation guide
| Platform | Download | Available today |
|---|---|---|
| Windows 10/11 | Installer · Portable ZIP | Desktop app, browser integration and veloctl |
| Linux | Intel/AMD x64 · ARM64 | Standalone veloctl get |
| macOS | Apple Silicon · Intel | Standalone veloctl get |
After extracting a Linux/macOS archive:
./veloctl get "https://example.com/file.zip"
./veloctl get "https://example.com/file.zip" "$HOME/Downloads"
Press Ctrl+C to pause; repeat the same command and destination to resume. No desktop app is needed. See installation and checksum verification. A Linux desktop app and browser registration are planned. macOS binaries are unsigned and not notarized.
| How | Command |
|---|---|
| One-line script (Linux, macOS) | curl -fsSL https://velo.adoxcol.com/install.sh | sh |
| Homebrew (macOS, Linux) | brew install adoxcol/tap/veloctl |
| Scoop (Windows) | scoop bucket add adoxcol https://github.com/Adoxcol/scoop-bucket then scoop install veloctl |
| Debian / Ubuntu | Download veloctl_<version>_amd64.deb (or arm64) from the latest release, then sudo apt install ./veloctl_*.deb |
| Fedora / RHEL / openSUSE | Download veloctl-<version>-1.x86_64.rpm (or aarch64), then sudo dnf install ./veloctl-*.rpm |
| Go 1.27+ | go install github.com/Adoxcol/velo/cmd/veloctl@latest |
| Windows app | The installer includes veloctl and can add it to PATH |
The install script checks the download's SHA-256 and puts veloctl in
~/.local/bin (set VELO_INSTALL_DIR to choose another folder).
.m3u8) and DASH (.mpd) streams and media files while
a video plays. Velo picks the best quality and merges audio and video with ffmpeg.Velo downloads what websites serve openly. It does not bypass DRM, encryption or other protections, so DRM-protected streaming services are not supported. Individual YouTube videos/Shorts, Facebook video/reel pages and X/Twitter posts use the optional yt-dlp integration.
Download Velo-Setup-<version>.exe from the releases page and run it. It installs for your user account
only (no administrator rights), adds Velo to the Start menu and to Settings → Apps for uninstalling,
and connects Chrome, Edge, Brave and Firefox. Then add the browser extension:
Prefer no installer? Velo-Portable-<version>.zip runs from any folder (see its README.txt).
Firefox: install the add-on from Firefox Add-ons. For development, open
about:debugging → This Firefox → Load Temporary Add-on and pick manifest.json from an unzipped
velo-firefox-<version>.zip (temporary add-ons are removed when Firefox closes).
The installer is not code-signed yet, so Windows SmartScreen may warn about an unknown publisher.
Tagged GitHub releases build Windows packages and Linux/macOS CLI archives. See the release guide. To build the Windows packages locally:
.\tools\release.ps1 -Version 0.1.0
Writes dist\Velo-Setup-0.1.0.exe (the installer, which embeds the app and the extension),
dist\Velo-Portable-0.1.0.zip, dist\velo-firefox-0.1.0.zip (for Firefox Add-ons) and
dist\velo-extension-0.1.0.zip (for the Chrome Web Store and Edge Add-ons; see
docs/store-listing.md and docs/privacy.md).
Requires Go 1.27+. From the repository root:
go build -o veloctl ./cmd/veloctl
go test -race ./internal/engine ./internal/ipc ./cmd/veloctl
On Windows, use -o veloctl.exe. On Linux/macOS, run ./veloctl get "<url>".
Requirements: Windows 10/11, Go 1.27+, the WebView2 runtime (included with
Windows 11), and optionally ffmpeg on PATH for video streams.
.\install.ps1
This builds bin\velo.exe, bin\velo-host.exe and bin\veloctl.exe, registers the native messaging
host for Chrome, Edge, Brave and Firefox (current user only) and adds Velo to the Start menu.
To change the icon, edit tools/mkicon and run go run ./tools/mkicon then go generate ./cmd/velo.
Then load the extension: open chrome://extensions or edge://extensions, turn on Developer mode,
click Load unpacked and choose the extension folder. Its ID is
dmdcijgljocjdmafenflenjhdjhenokc.
veloctl get <url> [folder] and veloctl version run independently on all three
platforms. The other commands below control a running Windows desktop app;
Linux/macOS do not yet have a desktop app or background service.
On Windows, veloctl.exe is included in the installer and portable ZIP. The
installer can add Velo to PATH; open a new terminal afterwards. On Linux/macOS,
extract your archive and use ./veloctl, or follow the PATH setup guide.
| Command | What it does |
|---|---|
veloctl version | Print the installed version (all platforms) |
veloctl list | Show all downloads with their number (#id), status, progress, speed and connections |
veloctl add <url> | Add a download to Velo (files, HLS, DASH and supported video pages are recognised); prints ok <id> |
veloctl pause <id> | Pause a download |
veloctl resume <id> | Resume a paused or failed download |
veloctl remove <id> | Remove a download from the list (unfinished partial files are deleted) |
veloctl limit <KB/s> | Set the speed limit for all downloads; 0 removes it |
veloctl get <url> [folder] | Download right in the terminal, without the app. Saves to ~/Downloads/Velo unless you give a folder. Ctrl+C pauses; run the same command again to resume |
Examples:
veloctl add https://example.com/big-file.zip
veloctl list
veloctl pause 3
veloctl resume 3
veloctl limit 2048 # 2 MB/s
veloctl limit 0 # no limit
veloctl get https://example.com/big-file.zip D:\Downloads
Install yt-dlp,
ffmpeg and
Deno for YouTube's JavaScript challenges.
Put the tools on PATH or beside veloctl (or velo.exe on Windows), then restart Velo.
For the standalone CLI, use veloctl get "<video-page-url>"; regular files need no extra tools.
These optional tools are not bundled in the installer. Keep yt-dlp current as sites change.
The official Windows yt-dlp executable includes the EJS components; Deno and ffmpeg
remain separate tools. If YouTube reports "The page needs to be reloaded", update
yt-dlp; the upstream fix is available in its nightly builds (yt-dlp --update-to nightly).
With the Windows browser extension, open an individual YouTube, Facebook video/reel, or X/Twitter post and hover over its video, then click Download with Velo. You can also use the extension popup or paste the video page URL into Velo. On feeds, the hover button uses the enclosing post's permalink when available; otherwise open the individual video/post first. Facebook CDN byte-range fragments are resolved to the original video page when the link identifies it; otherwise Velo refuses the fragment. Videos requiring a Facebook login must be sent through the browser extension so it can supply the page cookies. Other sites retain the existing HLS, DASH and direct media detection.
Page downloads select the best available audio and video and save a merged MKV. They support cancellation and resuming partial files. Browser cookies for the page host are passed through a temporary cookie file and removed after extraction; logins requiring cookies from other domains may still fail. DRM and live streams are excluded. Availability depends on the site and yt-dlp; not every video works. The speed limit is captured when each page download starts and applies per download, not as Velo's shared live bandwidth budget. Quality selection is currently automatic for page downloads; the existing HLS quality picker is unchanged.
Velo's text is written in English and translated at runtime. To add or fix a language:
node tools/i18n/extract.js to see any new English text, and add it to internal/i18n/locales/app/keys.json (or ext/keys.json for the extension).tools/i18n/app/<code>.json (and tools/i18n/ext/<code>.json). A new language also goes in Languages in internal/i18n/i18n.go.node tools/i18n/build.js. It checks every line keeps its {0} placeholders and HTML tags, and writes the files Velo and the extension load.| Path | What it is |
|---|---|
cmd/velo/ | The desktop app: tray icon, window (WebView2, ui.html), queue, scheduler, settings |
cmd/velo-host/ | Native messaging host: the browser starts it per message; it forwards to the app |
cmd/velo-setup/ | Installer and uninstaller (per user); embeds the release build |
cmd/veloctl/ | Command-line control: list, add, pause, resume, remove, limit, get |
internal/engine/ | Download engine: segmented HTTP, HLS, DASH, speed limit, categories |
internal/ipc/ | How the host and CLI find the app: %APPDATA%\Velo\endpoint.json (port + token) |
extension/ | Manifest V3 extension: download capture, video detection, popup, hover button |
The extension never opens a network port. It uses the browser's native messaging: Chrome starts
velo-host.exe (allowed only for Velo's extension ID) and exchanges length-prefixed JSON over stdin and
stdout. The host forwards each message to the app over 127.0.0.1 on a random port, with a random token
from %APPDATA%\Velo\endpoint.json, so web pages can't add downloads.
Windows (all packages):
go test -race ./... # engine and app tests (local test servers, no internet needed)
go vet ./...
For Linux/macOS, run the portable package test command under Build from source; Windows UI packages are not portable yet.
Windows desktop data lives in %APPDATA%\Velo (settings, history, log). Set VELO_HOME to use another folder.