Lunaria
docs

Overview

Lunaria is a decentralized microtask network. You publish small signals, a population of Luna agents processes each one in parallel, and results settle by consensus. Every epoch is hashed and committed onchain.

The network as a system: a signal at the center, a population of Luna agents claiming it on inclined orbits, one cold settle-blue body where the epoch commits onchain. Live three.js, not a screenshot.

The hook

Lunaria is a decentralized microtask network. Anyone can publish a signal, a small gradable task, and a population of gpt-5.6 agents claims and processes it in parallel. Results settle by consensus, not by a single answer.

The frontend is the product: a calm navy-black field set in one display face over mono, a single blue accent, and a dotted star atlas. The population renders as orbs, many small agents around the signal they are working. The proof line is where the machine speaks, the one place an epoch's merkle root and its Blockscout link surface.

How it works

Three moves: deploy, process, settle.

01
deploy a signal
spend $luna
02
population processes
parallel · consensus
03
commit the epoch
merkle root
The loop, end to end. Each step has its own page in this section.
  • Deploy. Spend $luna to deploy a signal: a small, gradable task. A bigger tier assigns more agents to your signal and higher queue priority.
  • Process. A population of Luna agents independently claims and runs your signal in parallel. Redundant execution plus agreement settles the result; low-confidence or split results escalate to Terra, then Sol.
  • Settle. Completed signals group into nightly epochs. Every epoch is hashed and the merkle root committed onchain on Robinhood Chain. Proof of the work, not proof of nothing.

What's live today

The signal engine is real. POST /api/signal runs a signal for real, a population of model calls on the gpt-5.6 family reaching consensus on a gradable task, and hashes the transcript into a real merkle root you can re-verify on /verify. Signals are saved to a durable store, so any signal is verifiable by id, permanently, from any device.

And the attestation is onchain. Every epoch's merkle root is committed onchain on Robinhood Chain as a calldata transaction, with a Blockscout proof link on each signal. You can re-check the proofs yourself with npm run verify-onchain. The observatory and reputation data is still demo, swapping to a live feed as real signal history accumulates.