Requirements
Before interacting with Tensora, ensure your development environment and wallet meet the minimum specifications. This page covers hardware, software, and token prerequisites for users, developers, validators, and miners.
User Requirements (Wallet Interaction Only)
If you only want to use Tensora dApps or bridge tokens, you need minimal setup.
Wallet
MetaMask (v10.0+), Rabby, or any WalletConnect-compatible wallet
Browser extension or mobile app
Token Holdings
WTORA on BNB Chain (for bridging to Tensora L2)
Minimum: 10 WTORA to cover bridge transaction + initial L2 gas
BNB on BNB Chain (for L1 bridge transaction fees)
Minimum: 0.01 BNB (~$5 at $500/BNB)
Network Access
Stable internet connection
Access to
https://rpc.tensora.organdhttps://bsc-dataseed.binance.org
Developer Requirements
Smart contract developers and dApp builders need a local development environment.
Installation Commands (Ubuntu/Debian)
install.shCopy
# Node.js via nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
source ~/.bashrc
nvm install 18
nvm use 18
# Foundry
curl -L https://foundry.paradigm.xyz | bash
foundryup
# Docker
sudo apt update
sudo apt install -y docker.io docker-compose
sudo usermod -aG docker $USER
# Log out and back in for group to take effectEnvironment Variables
Create a .env file in your project root:
.env (example)Copy
# RPC endpoints
TENSORA_RPC=https://rpc.tensora.org
BSC_RPC=https://bsc-dataseed.binance.org
# Private keys (NEVER commit to Git)
DEPLOYER_PRIVATE_KEY=0xabc123...
USER_PRIVATE_KEY=0xdef456...
# Etherscan API keys (for verification)
BSC_API_KEY=your_bscscan_api_key
TENSORA_API_KEY=your_tensora_explorer_api_key
# Paymaster address (for gas abstraction)
PAYMASTER_ADDRESS=0x...Add .env to .gitignore:
add to .gitignoreCopy
echo ".env" >> .gitignoreValidator Requirements
Validators stake TORA, score miner outputs, and participate in consensus.
Software
Docker v20.10+
Docker Compose v2.0+
Tensora Validator Client (provided as Docker image)
Token Holdings
TORA for staking
Minimum stake per subnet: 10,000 TORA
Recommended: 50,000 TORA to participate in multiple subnets
BNB on Tensora L2 (for Paymaster refills, if needed)
0.1 BNB for operational transactions
Network Access
Open inbound ports:
30303/tcp(P2P Tensora node sync)9090/tcp(Prometheus metrics, optional)
Outbound HTTPS to miner APIs
Miner Requirements
Miners run AI models and serve inference requests to validators.
Software
Docker v20.10+
NVIDIA Container Toolkit (for GPU subnets)
Python 3.10+ (if running custom model server)
Tensora Miner SDK (Python or Node.js)
Token Holdings
TORA for subnet registration bond
Minimum per subnet: 1,000 TORA
TORA for operational gas (via Paymaster)
Recommended: 100 TORA buffer
Network Access
Static IP or domain name (validators must reach your HTTP endpoint)
Inbound HTTPS on configurable port (e.g.,
8080)Outbound access to Tensora RPC
Coordinator Requirements
Coordinators manage epoch transitions and trigger reward distributions. Typically run by subnet creators.
Software
Docker v20.10+
Tensora Coordinator Service (Docker image)
Token Holdings
TORA for gas (50–100 TORA per month, depending on subnet size)
Common Setup Checklist
Use this checklist before proceeding to the next steps.
Wallet installed and seed phrase backed up securely
BNB Chain (BSC) network added to wallet (Chain ID: 56)
Tensora L2 network added to wallet (Chain ID: 20250)
WTORA acquired on BSC (via DEX or faucet for testnet)
BNB acquired on BSC for L1 transaction fees
Node.js/Foundry installed (developers only)
.envfile created with RPC URLs and private keys (developers)Docker installed and user added to docker group (validators/miners)
Hardware meets minimum specifications (validators/miners)
Static IP or DDNS configured (miners)
Firewall rules allow inbound P2P and API traffic (miners)
Troubleshooting
Issue: Cannot Connect to Tensora RPC
Symptoms: Wallet or script times out connecting to https://rpc.tensora.org.
Solutions:
Check DNS resolution
Run:
Copy
nslookup rpc.tensora.orgEnsure the domain resolves correctly.
Test RPC with curl
Run:
Copy
curl -X POST -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' https://rpc.tensora.orgThis verifies basic JSON-RPC connectivity.
Try fallback RPC
If configured, try:
Copy
https://rpc2.tensora.orgNetwork and firewall checks
Disable VPN or proxy temporarily.
Check firewall rules:
Copy
sudo ufw statusEnsure outbound HTTPS is allowed.
Issue: Insufficient BNB for L1 Bridge Transaction
Symptoms: Transaction fails with "insufficient funds for gas * price + value".
Solutions:
Acquire BNB on an exchange
Buy BNB on a centralized exchange (e.g., Binance, Coinbase).
Withdraw to your BSC wallet
Send purchased BNB to your BSC wallet address.
Wait for confirmations
Wait ~15 confirmations (~45 seconds) for funds to settle.
Retry the bridge transaction
Once funds are confirmed, retry the bridge operation.
Issue: Foundry forge Not Found
forge Not FoundSymptoms: bash: forge: command not found
Solutions:
Run foundryup
Install or update Foundry:
Copy
foundryupAdd Foundry to PATH
Run:
Copy
export PATH="$HOME/.foundry/bin:$PATH"Persist PATH in shell config
Add to ~/.bashrc:
Copy
echo 'export PATH="$HOME/.foundry/bin:$PATH"' >> ~/.bashrc
source ~/.bashrcIssue: Docker Permission Denied
Symptoms: Got permission denied while trying to connect to the Docker daemon socket.
Solutions:
Add user to docker group
Run:
Copy
sudo usermod -aG docker $USERRe-login or reboot
Log out and log back in (or reboot) for group changes to take effect.
Test Docker
Run:
Copy
docker psIt should not require sudo if the previous steps succeeded.
Issue: NVIDIA Container Toolkit Not Detected
Symptoms: Docker container cannot access GPU.
Solutions (Ubuntu/Debian):
install-nvidia-toolkit.shCopy
# Install toolkit
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt update
sudo apt install -y nvidia-container-toolkit
# Restart Docker
sudo systemctl restart docker
# Test
docker run --rm --gpus all nvidia/cuda:12.0.0-base-ubuntu22.04 nvidia-smiLast updated