npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@xynogen/pix-aria2

v0.2.11

Published

Pi tool — fast resumable downloads via an auto-managed aria2 RPC daemon

Readme

pix-aria2

Pi tool for direct, resumable downloads through a private aria2 RPC daemon. It gives the agent short dl-* handles for controlling transfers and shows active progress in the TUI.

The extension starts aria2c only when first used, binds RPC to 127.0.0.1, authenticates it with a random per-session secret, and stops it when the Pi session shuts down.

Requirements

This package requires:

  • Pi Coding Agent
  • aria2c. pix finds it in this order: ~/.pi/agent/binary.json → ~/.pi/agent/bin → PATH.

On Windows, pix downloads the official aria2/aria2 release into ~/.pi/agent/bin on first use, with a visible status. On Linux and macOS, install aria2 with your package manager. For example:

# Fedora
sudo dnf install aria2

# Debian or Ubuntu
sudo apt install aria2

# macOS
brew install aria2

Tool

The download tool supports five actions:

| Action | Required input | Result | |---|---|---| | add | url | Starts a transfer and returns a short dl-* handle | | list | None | Lists active transfers with file name, percentage, bytes, speed, and ETA | | pause | handle | Pauses a tracked transfer | | resume | handle | Resumes a paused transfer and restores live progress polling | | rm | handle | Removes the transfer from aria2 without deleting downloaded or partial files |

add also accepts dir to override the destination directory. The current working directory is used by default.

Example calls:

download({
  action: "add",
  url: "https://example.com/archive.iso",
  dir: "/tmp/downloads",
});

download({ action: "list" });
download({ action: "pause", handle: "dl-sleek-pika-63" });
download({ action: "resume", handle: "dl-sleek-pika-63" });
download({ action: "rm", handle: "dl-sleek-pika-63" });

Supported downloads

aria2 downloads bytes and does not restrict file extensions. Current protocol support is:

| Input | Support | |---|---| | Direct HTTP and HTTPS URLs | Yes | | FTP URLs | Yes | | Magnet links and BitTorrent | Basic aria2 support | | ISO, archive, package, image, document, audio, and video files | Yes, when supplied as direct URLs | | Interrupted partial files | Yes, through aria2 continuation files | | Segmented multi-connection downloads | Yes, managed by aria2 |

This package does not extract media URLs from web pages. YouTube, Twitch, HLS playlists, DASH manifests, DRM media, authentication cookies, custom request headers, transcoding, and playback are outside current scope. Use yt-dlp, ffmpeg, or another dedicated tool for those workflows.

Runtime behavior

Each loaded extension instance owns one private aria2 daemon. The daemon uses:

  • loopback-only RPC on a random port;
  • a random 128-bit RPC secret;
  • continuation enabled with --continue=true;
  • overwrite and automatic file renaming disabled;
  • one-second polling while downloads are active.

If RPC never comes up, the extension kills the half-started process. If the daemon crashes, the next call starts a new one.

Tool results use compact status rows in collapsed mode and framed details when expanded. Active transfers also appear in a live widget with handle, file name, completion, transferred size, speed, and ETA.

Session limits

Download handles and daemon connection details are held in memory. They work across tool calls and pause/resume operations within the same running Pi process.

Quitting or fully restarting Pi stops the private daemon and discards handle mappings. Partial files remain on disk and can still be continued by aria2, but automatic cross-process reconnection is not implemented. Shared daemons, persistent handles, torrent file selection, per-download limits, and authenticated request configuration remain outside current scope.

Development

Run focused package checks from the repository root:

bun test packages/pix-aria2
bun run check
bun run typecheck

bun run typecheck checks the full monorepo, not only this package.

Install

pi install npm:@xynogen/pix-aria2

Standalone and opt-in. @xynogen/pix-core does not bundle it. It needs the external aria2c binary and starts a local daemon.

Full distro

This package is part of Pix. The installer sets up Pi and the full distro. See Install for the notes for each OS.

# Linux / macOS
curl -fsSL https://raw.githubusercontent.com/xynogen/pix-mono/main/scripts/install.sh | sh
# Windows
irm https://raw.githubusercontent.com/xynogen/pix-mono/main/scripts/install.ps1 | iex

License

MIT. See LICENSE.