A well-detailed step-by-step guide to walk you through the Shelby servers CLI setup using Windows Subsystem for Linux (WSL).
- Install dependencies
- Set up the Shelby CLI
- Create an account
- Fund it with test tokens
- Upload blobs
- Download blobs
- Avoid overwriting files
- Manage expiration
- Linux or WSL
- Node.js v22+
Shelby requires Node 22 or newer. On Debian/Ubuntu/WSL, run:
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt-get update
sudo apt-get install -y nodejsIf you use a different distro, install Node.js v22+ using your distro's package manager or nvm.
node -v
npm -vnpm install -g @shelby-protocol/clishelby --versionList accounts:
shelby account listCreate a new account (if needed):
shelby account create myacctSet the default account:
shelby config set default_account myacctshelby context list
shelby context switch shelbynetYou need APT to pay gas fees on devnet. Request test tokens from the faucet:
shelby faucetshelby account balanceCreate a test file:
echo "Hello" > test.txtUpload it:
shelby upload ./test.txt files/test.txt -e "tomorrow" --assume-yesBlob names must be unique. Create another file:
echo "Second" > test2.txtUpload it:
shelby upload ./test2.txt files/test2.txt -e "tomorrow" --assume-yesUse timestamps to guarantee uniqueness:
shelby upload ./file.txt files/file-$(date +%s).txt -e "in 7 days" --assume-yesshelby account blobsDownload:
shelby download files/test2.txt ./downloaded.txtView contents:
cat downloaded.txtShelby stores private keys locally at:
~/.shelby/config.yaml