Run a node
Every level of participation starts the same way: build the client and start it. There is nothing to buy.
The signature layer currently compiled into the core is a deliberate stub. Signatures are trivially forgeable. Do not put value on any Astrolune network yet.
Requirements
- CPU
- 4 cores — the hot path is C and single-thread latency matters more than core count
- Memory
- 8 GB, with block execution allocating from an arena reclaimed per block
- Disk
- NVMe SSD. The storage engine controls its own I/O and assumes low latency
- Network
- A stable connection with a static route. Uptime is the currency here
- OS
- Linux, macOS or Windows. MSVC is a supported toolchain, not an afterthought
- Toolchain
- CMake 3.25+, Ninja, a C23 compiler and a C++23 compiler for the tooling
Build it
Six configure presets ship with the tree. Layering is enforced as link edges, so a dependency violation is a link error rather than a review finding.
git clone https://github.com/astrolune/astrolune cd astrolune
cmake --preset dev
cmake --build --preset dev
ctest --preset dev --output-on-failure
Testnet
- Chain ID
- RPC
- WS
Mainnet
- Chain ID
- RPC
- WS
From relay to validator
01 / 05
Start relaying
Run the client. You are a full node from the first block you validate, and your uptime clock starts on a protocol day derived from block height.
02 / 05
Earn TBS
Correctness over a trailing 30-day window, compounded with uptime. A single missed vote costs nothing while your miss rate stays within twice the network median.
03 / 05
Grow trust
Attestations arrive from other operators. Scattered arrival times read as organic; bunched ones are discounted. Once per epoch the protocol pairs you with a node you have no edge to.
04 / 05
Clear the floor
Past the minimum TBS you become a committee candidate and can be drawn by VRF at low weight.
05 / 05
Full validator
With TBS and TGW above their thresholds and no penalty in history, you carry full weight in the formula and vote in finalisation.
COMMITTEE
100
TBS
≥ 3
Committee candidate
TBS · Trust graph weight
≥ 4 · 0.3
Full validator
Current epoch
1d
What a committee member earns
- 60%Split equally across the committee
- 25%Proportional to TBS / TGW weight
- 15%Proportional to the operational bond
Plus a ceiling: no member takes more than three times a newcomer's base share. The remainder of the flat bucket's integer division is burned — at most one base unit per member per block, identical on every node.
The operational bond
A node may stake funds as public evidence that its infrastructure spend is serious. The bond does not increase consensus weight — it affects only the 15% bucket. That is what keeps this from being Proof of Stake wearing a different name.
Penalties
Judged relative to network noise in the same period, so a general incident does not single out the innocent. Double-signing is the exception — it cannot happen by accident.
| Offence | Penalty |
|---|---|
| A single missed vote | None, while within 2× the network median |
| Systematic misses above the median | −5% TBS per episode |
| Incorrect response, isolated | −10% TBS |
| Incorrect responses, systematic | −20% TBS |
| Double-signing | −90% TBS + 14-day committee ban |
| Repeat double-signing | Permanent ban of the identity |