Operators and roles
The roles an operator can run on Tenzro Network, from a home GPU to a data center, and how one stake covers all of them.
Anyone can run hardware on Tenzro Network and be paid per completed unit of work it serves. A home PC with a GPU, a homelab, an independent data center, a neo-cloud or an existing data-center operator distributing its compute or models: each joins the same way, with the same binary, and picks the roles that fit its hardware.
A node is one identity. Its keys are rooted in the machine's TPM 2.0 or Secure Enclave, or in the operator's passkey. It can take on any set of roles, and one stake covers every role it runs.
Step-by-step guides: Run a validator node, Join the network as a provider, Supported hardware and How Tenzro distributes compute.
The roles
| Role | What you provide | Node role (--roles) | Stake role (tenzro stake bond --role) |
|---|---|---|---|
| Validator | Orders and finalizes blocks in Tenzro DAG Consensus | validator | Self-stake at registration |
| RPC provider | Public JSON-RPC and API access under the node's access policy | any serving node | rpc |
| AI (model) provider | Serves inference for open models | ai | ai |
| Compute provider | Rents GPU and CPU capacity by the hour | compute | compute |
| Data and storage provider | Content-addressed storage | storage | storage |
| Security (TEE) provider | Confidential compute with verified attestation | tee | tee |
| Wallet provider | Passkey wallets on your own domain; no node needed | none | wallet |
| Catalog publisher | Model catalog entries signed by your key; no node needed | none | catalog |
| Edge relay operator | A relay every node may connect through, and a peer relay for nodes behind hard NATs | any node, with --relay-listen | edge |
A node that bonds nothing can still sync and relay, and a light node can verify finality certificates without storing the full chain, but neither carries weight in consensus or earns for serving.
One stake, every role
An account bonds stake per role, and each role it takes on registers its obligations against that stake. --role names the role a bond backs and --amount is in TNZO (1000 or 1000 TNZO; wei needs its suffix, such as 250000000000000000wei):
# Back a model provider
tenzro stake bond --role ai --amount <AMOUNT>
# Pledge capacity for compute and storage roles
tenzro stake bond --role compute --amount <AMOUNT> --accelerators consumer
tenzro stake bond --role storage --amount <AMOUNT> --terabytes 4
tenzro stake infoThe bonded roles are rpc, tee, ai, compute, storage, attestor, wallet, catalog and edge. A validator's self-stake is set when it registers (tenzro validator register --self-stake) and raised with tenzro validator increase-stake. Leaving a role is tenzro stake unbond --role <ROLE> --amount <AMOUNT>, then tenzro stake withdraw --role <ROLE> once the cooldown has run; the stake stays slashable until then.
If the stake can no longer cover everything the node has promised, after a withdrawal or a slash, the node sheds obligations until the rest fits. Bond requirements for each role are set by governance. Withdrawals go through a 7-day unbonding period, and slashing burns the offender's bond. See Slashing.
Endpoints of staked operators
A role served at a public URL publishes that URL on chain with its bond, so clients find staked operators from chain state rather than from a list anyone curates:
tenzro stake endpoint --role rpc --url https://rpc.example.org/
tenzro stake endpoints --role rpc --rpc https://rpc.tenzro.comtenzro_listRoleEndpoints returns the published URLs for a role, and tenzro_getRoleStakes an account's bonds with the subject validators probe. Validators probe each SLA-checked bond every ten minutes and attest each hourly epoch; once two thirds of bonded stake agree an epoch was unavailable, the governed SLA penalty moves from the bond to the insurance pool. A stake with no published URL answers no probe. The minimum bond for each role is a governed parameter (stake.<role>_tnzo).
Install and join
Download a release archive from the downloads page (each holds tenzro-node and the tenzro CLI) and verify it before you unpack it, or build both from source:
cargo build --release -p tenzro-node -p tenzro-cliNodes run on Linux, Windows and macOS. Release 0.2.1 has CPU builds for Linux x86_64, Linux aarch64 and Intel Macs, a CUDA build for Linux aarch64 and for Windows, and a Metal build for Apple silicon; a CPU build and a GPU build never fall back to each other, so pick the one that matches the machine. Every node needs a TPM 2.0 or a Secure Enclave. Check what the machine offers:
tenzro hardwareThe guided setup asks what you want to do and writes the node configuration:
tenzro setup --path network --roles validator,ai,storageBefore it derives any key, the setup checks the hardware root: the TPM device, your access to it, tpm2-tools and the node binary. It prints each unmet item with the exact fix and, when the machine's TPM keys do not exist yet, offers tenzro-node tpm provision (--provision-tpm accepts without asking). With --apply it then installs the node as a service (a systemd unit on Linux, a launch agent on macOS), starts it and follows it until it has synced. When the validator account or a provider wallet does not hold the stake its role needs, the setup says how much is needed and offers three options in order: apply for a sponsorship grant, receive TNZO at the printed account, or continue without a staked role. tenzro status --watch then shows the node's state, chain position, roles, bonds and the next thing to do.
--operator self means a human holds the passkey that controls the node. --operator autonomous means the machine answers for itself through its TPM 2.0 or Secure Enclave. --access sets how you sell capacity: on-demand, subscription or rental.
Per role
Validator
A validator holds its key in a TPM 2.0, a Secure Enclave or another machine's TPM through a key holder, and voting validators are admitted by governance approval during the preview. A genesis validator needs its own TPM 2.0 or Secure Enclave; a machine whose keys are in another machine's TPM joins after genesis through tenzro validator register --tpm-key-holder. A new node joins by replaying the chain from genesis. Signing keys are derived from the TPM on demand, used in memory and wiped; votes are signed with a session key the hardware certifies once per epoch.
tenzro-node --roles validator --data-dir ./data --genesis genesis.tomlThe node joins as a non-voting peer, registers as a candidate and becomes active at the next epoch boundary. tenzro setup --mode validate writes a unit that boots with --validator-self-stake, prints the account to fund and the amount (the governed stake.validator_tnzo, 10,000 TNZO at genesis), and the node registers itself with its hardware keys once the account is funded. While the governed switch validator.admission_approval is 1, as in the launch genesis, an approve_validators proposal must have named the account first. An operator who cannot cover the stake can apply for sponsorship. See Validator lifecycle.
RPC provider
Any serving node can offer public RPC. Bond with --provider-type rpc, then decide who may call you in your access policy: open, paid per call, or the DIDs and rate tiers of your subscribers, who sign in with a DPoP-bound access token. See Run an RPC provider and RPC access.
AI (model) provider
tenzro-node --roles ai
tenzro join --providertenzro join --provider detects your hardware, posts the bond, registers you, sets default pricing and serves the largest catalog model that fits. To choose yourself, use tenzro model download <id>, tenzro model serve <id> and tenzro provider pricing set. Weights are fetched from several origins and verified by hash. Models too large for one machine can be served across a LAN cluster or as distributed experts. See Model serving.
Compute provider
Take the compute role and pledge accelerator classes (integrated, consumer, workstation, datacenter). Rentals are booked per epoch and billed on the chain's verdict from SLA attestation; your prices are published into the compute price index. See Compute rental and Compute claims and price index.
Data and storage provider
Offer free disk as content-addressed storage with the storage role. Storage is paid through storage claims that settle hour by hour on a passing proof of possession, under a staked SLA. See Decentralized storage.
Wallet provider
Serve passkey wallets on your own relying-party domain. Serve https://<your domain>/.well-known/tenzro-provider naming your bonding account ({ "accounts": ["0x..."] }), then bond for the domain:
tenzro stake bond --role wallet --amount <AMOUNT> --domain wallet.example
tenzro stake wallet-provider wallet.exampleValidators fetch the document every probe round; once two thirds of bonded stake attest an epoch in which it named your account, the domain shows as staked. Passkeys from any domain work in a keystore whether or not their provider is bonded; the bond lets wallets show credentials from your domain as coming from a staked provider. See Device linking and recovery.
Edge relay operator
Run the relay listener on loopback behind your own TLS proxy on TCP 443, bond the edge role and publish the URL:
tenzro-node --relay-listen 127.0.0.1:3340 --relay-url https://relay.example.org/
tenzro stake bond --role edge --amount <AMOUNT>
tenzro stake endpoint --role edge --url https://relay.example.org/Your node is also a peer relay on its UDP port for nodes behind NATs that cannot be punched through. Validators check that the relay serves your node's signed record at <url>/identity and that your node forwards peer relay traffic; tenzro stake relays shows every staked relay with its last verdict. See Networking.
Security (TEE) provider
tenzro tee detect
tenzro tee attest --out report.jsonSupported platforms are Intel TDX, AMD SEV-SNP, AWS Nitro and NVIDIA confidential GPUs. Attestation is verified per vendor and is evidence that a workload ran confidentially; it does not hold keys. See TEE.
Policies and trust
Every operator publishes a signed policy describing what it offers and how. You are slashed only for a provable breach of your own policy. Buyers pick operators using certification and ratings from issuers they trust. See Operator policies.
Help onboarding
The Tenzro Foundation publishes the software and documentation. Partners help operators of any background onboard, from a single GPU to a full data center. See Partners and Operators.