Tutorial: The Console, Page by Page
The Console, page by page.
// app.parallelix.io · operator-only · every write is a contract call
What every page does and what each control means, with a schematic of the surface beside it. The Console is the on-chain half of being an operator: it signs stake, claim, and unstake. It never touches the node key and cannot run compute, which is the Node CLI's job.
The Console is operator-only: no submitter view, no role switcher. Connecting is the first action.
- 01Connect wallet
Connect with MetaMask, which forces the account picker so you choose the operator wallet deliberately.
- 02Network
The Console operates on Ethereum mainnet; a wrong-network notice appears if the wallet is elsewhere.
The aggregate view across every node the connected wallet owns. Read it without opening any single node.
Rewards accrue from the 25% Operator Rewards bucket, weighted stake x tier x uptime. Idle nodes (no compute online) earn nothing.
- 01Staked / claimable / online
Fleet totals: total $PRLX staked, total claimable (ticking per-second), and how many nodes are online.
- 02Reward cycle
The per-second stream that funds rewards and the keeper deposit that refills the pool.
- 03Get started
When the wallet owns no nodes, an inline 3-step path: install the CLI, init, open the register flow.
Per-node lifecycle view, grouped Active / Idle / Cooling / Retired.
- 00:00registerednode #4231 · stake 50,000 $PRLX
- 00:04onlineCLI attached · heartbeating · state active
- 01:12request servedinference · served whole · PoE ✓
- 01:12reward accrued+12.84 $PRLX · uptime credit
Nodes serve whole ParalleliX AI inference requests. There is no task submission or sub-task fan-out on the live path.
- 01Grouping
Each node sits in a group by its on-chain state plus the coordinator's online flag. A paused node reports offline and sits in Idle with a Paused badge.
- 02Node detail
Per-node stake, tier, reward weight (stake x tier), live earned balance, and online status.
- 03Pause / Resume
Pause is an owner-signed force-idle: it takes a node offline without unstaking (it stops accruing and moves to Idle); Resume brings it back online.
- 04Etherscan link
Each node links to NodeRegistryLocker on Etherscan for the on-chain record.
The live, per-second view of accrual, plus claiming.
weight = stake x tier x uptime
share = daily_pool x weight / Σ weight
source: 25% Operator Rewards bucket · ~34,200 $PRLX/day via Sablier
- 01Live ticker
A fleet-wide claimable total that increments every second while nodes are online, computed from each node's earned(nodeId) plus its live weight share.
- 02Accrued by node
Per-node breakdown of claimable $PRLX with a claim action on each.
- 03Claim / Claim all
claim(nodeId) pulls one node's balance; claimMany batches across every node with a non-zero balance. Claiming does not interrupt accrual.
- 04Reward pool figure
Shown as rewardPoolBalance + reserved: the contract's current balance plus what is reserved to in-flight streams.
- 05Claim history
Past claim transactions, each linked to the block explorer.
Register a node and run the unstake lifecycle. Every write is a contract call.
- 01
Hardware tier
Declare CPU or GPU tier. The CLI verifies it.
- 02
Stake amount
Lock >= 50,000 $PRLX. Higher stake, higher weight.
- 03
Sign registerNode
registerNode(stake, tier, nodeKeyHash) -> nodeId
- 01Register
Approve $PRLX, then registerNode(stakeAmount, tier, nodeKeyHash) with stake >= 50,000. Paste the nodeKeyHash from parallelix-node init.
- 02Request unstake
requestUnstake(nodeId) stops earning and starts the 7-day cooldown.
- 03Cooldown timer + cancel
A live countdown on each cooling node; cancelUnstake(nodeId) aborts the cooldown and returns the node to service.
- 04Withdraw
After the cooldown, withdrawStake(nodeId) returns the full principal. There is no slashing. The nodeId is then permanently retired.
Credentials and references, not nodes.
- 01Wallet
Connected address with an Etherscan link, available vs staked $PRLX, and on-chain action history.
- 02Node keys
Read-only reference of each node's nodeKeyHash and the nodeId it binds to, so you can match a Console node to the machine running its CLI. The Console never holds the node private key.
- 03Disconnect
Clears the local session without touching any on-chain state.