CLI Reference
pals join
Join an existing swarm by bootstrapping off one or more peer multiaddrs.
$ pals join [OPTIONS] [MODEL] [-- run_server_args...]
What it does
Brings up a server on your machine that joins an existing swarm. You’ll need a multiaddr from the operator (looks like /ip4/HOST/tcp/PORT/p2p/PEER_ID) and to have already redeemed your invite with pals login.
Anything after -- is forwarded verbatim to run_server (underscore-style flags).
Arguments
modelTEXT (optional)
HuggingFace model id (must match the swarm’s). Falls back to
config.default_model.Options
--peerTEXT (repeatable)
Multiaddr of a swarm peer to bootstrap from. Repeat the flag for multiple bootstrap peers. Falls back to
config.default_peers.--port, -pINTEGER
Listen port. 0 means auto-assign.
Default:
0--deviceTEXT
Torch device:
cuda, cpu, mps, or cuda:N.--num-blocks, -nINTEGER
Number of transformer blocks to host on your machine. Default: as many as fit.
--publicBind on all interfaces so off-machine peers can reach you.
--identityTEXT
Path to a libp2p identity key. Default: from config.
--invite-tokenTEXT
Invite token. Passed through the env var, never argv. Falls back to
config.invite_token.Env:
PROGRESSPALS_INVITE_TOKEN--config-dirTEXT
Read config from this directory.
Examples
The common case — one bootstrap peer:
join
$pals join meta-llama/Llama-3.1-8B \
--peer /ip4/HOST/tcp/PORT/p2p/PEER_ID
✓ joined swarm · holding layers 15–47
Multiple bootstrap peers for resilience:
multi-peer
$pals join meta-llama/Llama-3.1-8B \
--peer /ip4/HOST_A/tcp/PORT/p2p/PEER_A \
--peer /ip4/HOST_B/tcp/PORT/p2p/PEER_B
Model id must match.
pals join doesn’t verify the swarm hosts the same model; you have to pass the right id. Ask the operator if unsure.