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.3.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.3.1
File Size Uploaded
helppeer-0.3.1.tar.gz 60.1 kB Details

Built distribution (wheel)

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

Total release size: 115.8 kB

Release files / helppeer-0.3.1.tar.gz

Download URL helppeer-0.3.1.tar.gz
Size 60.1 kB
Tags Source
SHA-256 checksum
How to use checksums
afca3ee057147dafeb540adeed8a8d36fe8a7af22d40a7c81a3a31a51a24184f
BLAKE2b-256 checksum
How to use checksums
eac44cac63efbe88b6971f3ba28270830d63f2fb5db15d3f895fa75d7efe445e
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.3.1-py3-none-any.whl

Download URL helppeer-0.3.1-py3-none-any.whl
Size 55.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7e81fcbcbbe6246c3a7cf349abe61f4e5b82c15c852784fe1c6c6c96605ed697
BLAKE2b-256 checksum
How to use checksums
fd30ee03859075704c231f0ef06b88dd7c2349e022d6abc5871946fca06b6b4a
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

This release

0.3.1 This release

2 release files

0.3.0

2 release files

0.2.2

2 release files

0.2.1

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