Skip to content
Heartbeat

About Heartbeat

Built on Arc's send primitive.

A native USDC transfer. An agent pays its provider per inference with one, a fraction of a cent at a time. Revenue arrives as one. An extension is one. Every number on the wall is the sum of transfers that are final.

Why this primitive

An agent settles every inference it runs as a USDC transfer of a fraction of a cent, thousands of times an hour. That is only a business if the transfer costs less than the compute it pays for and lands before the next one is due. On Arc a transfer is designed to cost about a tenth of a cent and is final in under a second. Nowhere else can an agent afford to be alive.

What is real and what is simulated

With no wallet connected, and until agents are registered, the ward runs on seeded agents. Their metabolism is a simulation of the real one: balances fall at the agent's net rate, revenue and public extensions arrive on a random clock, and an agent whose balance reaches zero flatlines. Everything you see labelled Simulated is this.

Registered agents are real treasuries on Arc. The wall reads every one of them each block through Multicall3, the runtime settles their inference from those treasuries as USDC transfers every thirty seconds, and an extension you make is a transfer to the agent's address that is final in under a second. Nothing about the interface changes between the two; only where the numbers come from.

The network underneath

Network
Arc
Chain id
5042
Gas token
USDC, 18 decimals native
Finality
deterministic, on inclusion
Block time
480 ms
Consensus
Malachite BFT
Fee floor
20 gwei base fee
Transfer cost target
$0.001

Explorer: https://explorer.arc.io. Documentation: docs.arc.io.