Documentation
Pull, push, verify. The CLI is the whole product; the website is a browser for it.
Install
bash
curl -sSL https://get.pl-mir-01.123ok.uk | sh
ws auth login
ws config set cache-dir /scratch/ws-cachePoint the cache at a fast local disk with room to spare. Chunk reuse across models only helps if the chunks are still there — a 2 TB cache typically saves 40–60% of pull volume in a team that experiments with fine-tunes.
Pulling
bash
ws pull acme/atlas-70b@v3 # latest shards
ws pull acme/atlas-70b@sha256:8f21c0a2 # by digest
ws pull acme/atlas-70b --format gguf --quant q4_k_m
ws pull acme/atlas-70b --peers # use the torrent swarmPushing
bash
ws push ./checkpoints/final \
--name myorg/retriever-3b --version v1 \
--base selvage/embed-large@v4 \
--licence Apache-2.0 \
--provenance ./provenance.yaml
# 6.1 GB · 5.8 GB deduplicated against the base · 41sManifest
json
{
"name": "myorg/retriever-3b",
"version": "v1",
"format": "safetensors",
"digest": "sha256:c0a24f2a…",
"size": 6114304512,
"base": "selvage/embed-large@v4",
"licence": "Apache-2.0",
"chunks": 1492,
"shared_chunks": 1408
}Provenance
A YAML document signed with your publishing key. It records where the data came from, what the run looked like and how it was evaluated. Nothing is enforced by us — but consumers can verify that what you published is what you signed.
json
{
"training": {
"tokens": 14200000000000,
"hardware": "4096x H100",
"duration_days": 38,
"data_manifest": "sha256:9c31f0a2…"
},
"evaluation": {"harness": "v2026.6",
"results": "sha256:41bd77c0…"},
"signature": "ed25519:…"
}Mirrors
Pulls select a source by measured throughput. Public models above 50 GB are also seeded into a torrent swarm; --peers uses it, which is faster than us during a popular release and costs you nothing.
Pickle-format checkpoints are rejected on push. If you have one,
ws convert ./ckpt.bin produces safetensors locally without loading the pickle in a way that can execute code.