Anymal ID · persistent identity for biological assets
Cattle are living assets, not static rows in an inventory system. An Anymal ID gives one animal a stable identity across its life, then attaches the evidence needed to answer what every counterparty eventually asks: who is it, where is it, who owns it, is it alive, what happened to it, and can I trust the claim?
The Earth Layer roots the physical world on the parcel. Biological assets root on the Anymal ID. A buyer reads it as provenance. A Notary reads it as the chain to attest. A lender reads it as collateral. A regulator reads it as the audit.
The concept
One animal, one lifelong evidence spine. The ID is the stable thread through ownership, location, life, health, compliance, provenance, and attestations.
A persistent identity and lifelong evidence spine for one biological asset. The ID stays stable while ownership, location, health, sensor state, and compliance events change around it.
Cattle are not static inventory. They move, age, get sick, change hands, enter lots, graze parcels, generate sensor signals, and become collateral, insured assets, compliance objects, and supply-chain inputs.
Sages observe the animal and its environment. Anymals act on it through Cases. Notaries attest claims about it. The Anymal ID is the shared object every layer references.
A real ID record
Now the contents have a frame: the record below is one animal's evidence spine, shown as the IDx interface a ranch, lender, buyer, insurer, or Notary would inspect.
What an Anymal ID holds
Seven facets, one identity. Each facet is a tab in the record above; together they are the diary.
Trust tiers
An ID is only as strong as the proof behind it. The tier says how confidently this record maps to this exact animal.
A visual ear tag, read by eye or photo. The lowest assurance, and where most of the world still lives.
An electronic tag, machine-read at the chute or the gate. Mid assurance, tied to a scan event.
A biometric signature unique to the animal (muzzle print, retina). Proof the record maps to this exact animal.
Continuous sensor and telemetry (smart tag, collar). A live signal from the animal. The deepest assurance.
The two anchors
Anymal OS rests on two identities. Parcels say WHERE. Anymal IDs say WHO. Occupancy joins them.
38.46M parcels across 15 US states and NSW. The shared substrate for soil, water, land, carbon, every Sage. In the live backend an animal carries ranch_id, current_paddock_id, and current_position — those are the join keys back to here. See coverage on the map.
One persistent identity per biological asset, with the diary above. The substrate for everything the Cattle Sage, the Carbon Sage, and every Operations-Layer Case reasons about.
An animal occupies a parcel for a stretch of time. That occupancy edge is how the Earth Layer's parcel facts become per-animal facts. Move the animal, the edge updates, the lens follows. Architecture · two anchors.
Why the git-history thesis matters
One chain, many readers. Each counterparty asks a different question; every answer cites the same diary.
How the brand triplet uses an Anymal ID
Sages know. Anymals act. Notaries attest. Each agent family scopes its work through the same ID.
Per-ID context: which parcel this animal is on, what soil it grazes, how much carbon that pasture stocks, the water condition there. Every Sage SpineFact can be scoped to an Anymal ID.
Every Case scopes to a set of Anymal IDs. The Contract Anymal, the Compliance Anymal, the Operations Anymal · they all write back into the chain per ID.
Sign the canonical hash of an Anymal ID's chain at a given height. Anchor the Attestation on Solana so a counterparty can verify the claim without seeing the underlying data.
The same record, in the live backend
The demo above is a hardcoded replica. The shape is real · these are the endpoints that produce it.
Mongo is canonical · Firestore is the realtime projection layer · REST handles mutations and bounded queries. Auth is a Firebase ID token sent as Authorization: Bearer …. The full spec is public: see Swagger UI and openapi.json.