Snipe one file out of a huge cloud archive — without downloading the whole thing.
pluq is a surgical archive extraction tool. Point it at a ZIP or RAR — local, a direct URL, Google Drive, or Dropbox — browse it in a fast terminal UI, and pull out exactly the files you want. It reads only the bytes it needs: the central directory to list, and just the ranges for the entries you extract.
One file out of Electron's 1.86 GB symbol bundle: paste the URL, filter, extract — ~17 MB fetched, not 1.86 GB.
- Surgical extraction — fetches metadata + only the selected entries' byte ranges, not the whole archive.
- Formats — ZIP (Deflate, Store, BZip2, LZMA, Zstandard), RAR5, RAR4. Extraction only. See Format support for how surgical extraction differs per format.
- Sources — local files, HTTP(S) direct URLs, Google Drive, Dropbox. (OneDrive: planned.) Cloud files can be added by pressing
cin the TUI to pick from Google Drive (Picker) or Dropbox (Chooser). - TUI-first — browse, search, multi-select, and extract from a minimalist terminal UI.
Also scriptable via
pluq get/list/test. - Private files — OAuth for Google Drive and Dropbox (
pluq auth add). In the TUI, private Google Drive files are picker-only (using thedrive.filescope). - Safe by default — anti-bomb resource limits, path-traversal & symlink-escape guards, LZMA dictionary cap.
The one-liner is the recommended path on every OS (no Rust toolchain required):
macOS / Linux
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/stefandekanski/pluq/releases/latest/download/pluq-installer.sh | shWindows (PowerShell)
powershell -ExecutionPolicy Bypass -c "irm https://github.com/stefandekanski/pluq/releases/latest/download/pluq-installer.ps1 | iex"Homebrew (macOS)
brew install stefandekanski/tap/pluqPrebuilt binaries for every platform are on the Releases page (macOS x64/arm64, Linux x64/arm64, Windows x64) — see docs/INSTALL.md for manual install, Scoop, and the macOS Gatekeeper note.
pluq is distributed as a prebuilt binary.
cargo install pluqis not offered.
rm ~/.cargo/bin/pluq # script install (macOS / Linux)
brew uninstall pluq # HomebrewRemove-Item $env:USERPROFILE\.cargo\bin\pluq.exe # script install (Windows)MSI installs uninstall via Windows Settings → Apps. To also remove cached data and saved OAuth tokens, see docs/INSTALL.md.
pluq # launch the TUI home screen
pluq path/to/archive.zip # browse a local archive in the TUI
pluq https://example.com/big.rar # browse a remote archive
pluq list archive.zip # print the file list
pluq get archive.zip "*.jpg" # extract matching files
pluq get archive.zip -o out/ # extract everything into out/
pluq test archive.zip # CRC-verify every entrySee docs/USAGE.md for the full command reference and TUI keys, and
docs/AUTH.md for accessing private Google Drive / Dropbox files (including details on picking files into Bookmarks via the c keybind).
Surgical extraction needs a central index pluq can read up front: list the archive, then fetch only the byte ranges for the entries you pick. Every format gets there differently — and for remote archives, that difference is what you feel as speed.
| Archive | Listing | Surgical extract |
|---|---|---|
| ZIP | Instant — reads the central directory at the tail | ✅ |
| RAR with Quick Open index | Instant — reads the QO index, just like ZIP | ✅ |
| RAR without Quick Open | One-time scan of the archive's header chain | ✅ (after scan) |
| Solid RAR | Lists | ❌ not supported |
- ZIP keeps its table of contents (the central directory) at the end of the file. pluq reads that, lists instantly, and pulls only the ranges you asked for.
- RAR with Quick Open carries an equivalent index (added at creation time, e.g.
rar a -qo+ archive.rar files). pluq reads it directly — listing is instant, same as ZIP. - RAR without Quick Open has no such index, so pluq has to scan: walk the file's header chain to map every entry before it can list. On a remote archive that's a visible one-time step; after it completes, extraction is fully surgical. Local files scan instantly.
- Solid RAR compresses all files as one continuous stream — each entry depends on the bytes of the ones before it, so there's no way to decompress a single file without the whole chain. That defeats surgical extraction: pluq lists a solid archive but refuses to extract from it.
A 1034-file RAR with no Quick Open index: one scan of the 36 MB header chain, then *.txt filters
to the 517 label files — extracted for ~46 KB fetched; the ~35 MB of images never leave the server.
Tip: if you control how the RAR is made, add Quick Open info (
-qo+) and keep it non-solid (-s-) for the fastest, most surgical remote experience.
pluq is pre-1.0 and solo-maintained. It does one thing — extraction — and aims to do it well. Fixes are best-effort; archive creation is explicitly out of scope. Bug reports and ideas are welcome via Issues and Discussions.
pluq collects zero telemetry — nothing is ever transmitted. pluq bug-report and crash
reports are local files you choose whether to share. See PRIVACY.md.
Built by Stefan Dekanski, with AI pair-programming — Claude Code (Anthropic) and Google Gemini.
Dual-licensed under either of MIT (LICENSE-MIT) or Apache-2.0 (LICENSE-APACHE) at your option. RAR support uses the UnRAR library under its own (extraction-only) terms — see LICENSE-THIRD-PARTY.md.

