Skip to main content

Help Peer Python SDK

A Python SDK for asynchronously sharing large file dumps (AI model weights) via the Help Peer network.

Agents: every CLI command takes --json (one JSON object on stdout, exit code 0/1), and receive is safe to retry. The output fields and retry rules are in the main README.

Installation

pip install helppeer

Or from a clone of this repo: pip install ./sdk. Use 0.2.0 or later: 0.1.0 predates the current protocol, has weak transfer codes, and has been yanked.

Quick Start

import helppeer

# Send a model directory
code = helppeer.send("./my-model", name="Llama-3-70B")
print(f"Transfer code: {code}")
# Share this code with the recipient. Data lives for 24 hours.

# Receive a transfer
helppeer.receive("orbit-velvet-zoom-candle-harbor-ember", output_dir="./received")

Configuration

import helppeer

# Use custom relay and storage nodes
helppeer.configure(
    relay="https://relay.helppeer.dev",
    storage_nodes=["https://node1.helppeer.dev", "https://node2.helppeer.dev"],
)

# Or use environment variables:
# HELPEER_RELAY_URL, HELPEER_STORAGE_NODES (comma-separated)

Agent Integration

import helppeer
import json

# Send and get structured result
result = helppeer.send("./model-weights", name="my-model", return_details=True)
# result = {"code": "orbit-velvet-zoom-candle-harbor-ember", "transfer_name": "my-model", "files": 4, "total_bytes": 1056}

# Receive with progress callback
def on_progress(file_path, segment, total_segments):
    print(f"  {file_path}: {segment}/{total_segments} segments")

helppeer.receive("orbit-velvet-zoom-candle-harbor-ember", output_dir="./received", progress=on_progress)

CLI

The SDK also installs a helppeer CLI:

helppeer send ./my-model --name "Llama-3-70B"
helppeer send ./model.safetensors --message "Checkpoint from step 12k"   # single file, with a note
helppeer info orbit-velvet-zoom-candle-harbor-ember   # preview name, message and files without downloading
helppeer receive orbit-velvet-zoom-candle-harbor-ember --output ./received
helppeer cancel orbit-velvet-zoom-candle-harbor-ember   # withdraw a transfer before it expires

# Global flags go before the subcommand
helppeer --relay https://relay.example.com --nodes https://n1.example.com,https://n2.example.com,https://n3.example.com send ./my-model
helppeer --json receive orbit-velvet-zoom-candle-harbor-ember   # machine-readable output

python -m helppeer works the same way.

Usernames and inbox

On a Help Peer website, create an API token on the Account page, then:

import helppeer

helppeer.login("https://helppeer.example.com", "hp_...")      # saved for the SDK and CLI
helppeer.send("./my-model", to=["alice", "bob@example.com"])  # usernames go to their inbox
for item in helppeer.inbox():                                 # transfers sent to you
    helppeer.receive(item["code"], output_dir="./received")   # also clears the inbox item
helppeer.logout()

The CLI equivalents are helppeer login --server ... --token ..., helppeer send PATH --to alice,bob@example.com, helppeer inbox and helppeer logout. While logged in, the SDK uses the website's relay and storage nodes unless you configure() others.

Transfers are fully compatible with the Rust CLI and the web UI: a code from any of them can be received with any other. Every shard and every received file is checked against its BLAKE3 hash.

If a download fails partway (e.g. a storage node is briefly unreachable), run receive again with the same code: the relay keeps the transfer until a receiver confirms it was fully received. receive() returns "acknowledged": True once that confirmation succeeds. Retries resume where the previous attempt stopped: progress is kept in <output_dir>/.helppeer/ (and removed on success), segments already on disk are re-checked against their hashes, and "resumed_segments" in the result says how many were reused. The Rust CLI uses the same format, so either can finish a download the other started.

Metadata

Release files for helppeer 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for helppeer 0.2.1
File Size Uploaded
helppeer-0.2.1.tar.gz 58.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for helppeer 0.2.1
File Interpreter ABI Platform
helppeer-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 112.7 kB

Release files / helppeer-0.2.1.tar.gz

Download URL helppeer-0.2.1.tar.gz
Size 58.2 kB
Tags Source
SHA-256 checksum
How to use checksums
341a48748ab361822dd6416d4e6d816118328ca9da03ec913b57522dbb5191c1
BLAKE2b-256 checksum
How to use checksums
a565fc8d4bac1d2a953ee2e82bd0ee06af7a29cb006c12e4f7539b47e1ddc33a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / helppeer-0.2.1-py3-none-any.whl

Download URL helppeer-0.2.1-py3-none-any.whl
Size 54.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9127b7dcdde4a3c3232d4a1a3808fd0dec313ae234d3e09de0a5380a71034a6e
BLAKE2b-256 checksum
How to use checksums
1ddde197c2996b78002567d669f07cb99d407833ff27da5636eb3947f7d89327
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release history Release notifications | RSS feed

0.3.1

2 release files

0.3.0

2 release files

0.2.2

2 release files

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page