Skip to content
Takshak Mudgal

snag

A download manager with a Chrome extension.

Video from the sites yt-dlp supports, direct files split into parallel byte ranges that resume after a dropped connection, and torrents through aria2. A Chrome extension hands links to the native binary through native messaging.

brew install takshakmudgal/tools/snag
Version
0.1.0, 11 May 2026
Tests
7
Rust
2,109 lines
Runs on
macOS
Built with
clap, tokio, reqwest, indicatif
License
MIT

Commands

Read from the source, not the README.

snag get
download URLs
snag probe
list formats
snag install-host
connect the extension

How it works

Resumable ranges

Direct downloads are split into ranges written to a .snag.part file with a .meta sidecar, and a resume is guarded by ETag and If-Range so a file that changed on the server is not stitched together from two versions.

Native messaging

The extension talks to the binary over Chrome's length-prefixed JSON protocol. That framing is what the seven tests cover.