Cellule.ai is a community-owned network of AI pools. Each pool is an independent instance โ its own hardware, its own operator, its own workers. But pools talk to each other to share load, replicate data, and coordinate. This page explains how that conversation is secured and what you control as a pool operator.
A traditional cloud has one boss: the cloud provider. If they ban you, you're out. If they get hacked, everyone loses.
Cellule.ai works the other way around. There are no master pools. Each pool is sovereign. When a pool wants something from another pool (a query, an action), it asks โ and the target pool's human admin decides. No automation, no central authority, no silent override.
Every single cross-pool message is cryptographically signed by the pool that sends it. Think of it as a notarized letter:
atom_id) is literally sha256(pubkey). You can't fake being another pool without stealing its private key.There are two kinds of things a peer pool can ask yours to do. They have very different impact, so Cellule.ai treats them differently.
| Kind | Example | What it does | Default |
|---|---|---|---|
| READ | query_events |
Lets a peer read your molecule events log (circuit open/close, worker join/leave, handshakes). Filtered: only whitelisted types, only last 7 days, no cross-peer leakage. | ON by default |
| WRITE | circuit_reset |
Lets a peer ask your pool to clear its worker blacklist and reset quality scores. You still manually approve โ but if approved, it modifies state. | OFF by default |
Reading events is harmless to your wallet. No credit moves, no worker is re-authorized, no slashing is bypassed. It's observability. So we make it ON by default โ it helps the community see the health of the network.
Writing actions can indirectly affect money. A circuit_reset, for example, could re-authorize a worker that was penalized for bad quality. If two pool operators collude, they could reset each other's penalized workers forever, draining the fairness mechanism. So writes stay OFF by default โ you have to knowingly turn them on.
/admin/poolIn your pool's admin UI (/admin โ Federation tab for the VPS, /admin/pool for community pool operators), you'll see two checkboxes:
Recommended ON. Lets peers read your filtered event log. No economic impact. Helps cross-pool observability.
Keep OFF unless you know why you need it. Protects your workers' economic state. If ON, you still get a manual Approve/Reject prompt for each incoming request โ plus automatic blocks (slashing guard, 6h cooldown per peer, signature verification). But the safest posture is OFF.
403 disabled if the matching toggle (read or write) is OFF.429.circuit_reset from the same peer.circuit_reset only) โ blocked with 409 if any slashing event is pending. You can force an override โ but it's logged permanently with a full snapshot.POST /v1/federation/admin/request
Content-Type: application/json
X-IAMINE-Atom-Id: 3fdcd7c0318d... # who signs this
X-IAMINE-Timestamp: 1776358800
X-IAMINE-Nonce: a8f3... # one-shot
X-IAMINE-Signature: base64(ed25519_sign(body))
{
"request_id": "fadm_abc123...",
"origin_pool_id": "3fdcd7c0318d...",
"action_type": "query_events",
"action_params": { "limit": 100 },
"from_admin_email": "[email protected]" // display only, NEVER used for auth
}
from_admin_email field is purely cosmetic. Your pool never uses it to decide whether to accept the request. Only the Ed25519 signature counts. An attacker could put any email โ the signature would still have to match the peer's registered public key.
Today, admin requests are signed with the pool's identity key. Tomorrow, a separate admin key will be required โ so if the pool key is compromised, the attacker still can't push admin actions without also owning the admin key.
The federation_admin_identities table already exists in the schema (migration 023). When Phase 2.2 ships, enabling write actions on a pool will require registering at least one admin Ed25519 key distinct from the pool key. No admin key โ no writes. This is guardian invariant #12.
If you ever want to cut your pool off:
# Kill switch โ instantly stops all federation traffic
sudo touch /etc/iamine/fed_disable
# Remove kill switch to resume
sudo rm /etc/iamine/fed_disable
The kill switch is checked on every single federated endpoint. No configuration, no restart, instant effect.
โ See the source on GitHub ยท โ Run your own pool ยท โ Open admin