README
Space platform (/platform)
The space owner platform is a purchase-focused admin console for operators who hold a space node credential.
Authentication
- Open
/platform. - Enter server URL, space node id, and ten-word passphrase.
- Optionally enter a platform key when the deployment sets
AGENT_SERVICE_KEY(required foraddShopItemand related RPCs). - Remember me (7 days): stores a non-secret preview card (space name, node id, last auth). Resume requires re-entering the passphrase — credentials are never persisted in the browser.
Login flow: /api/nodes/validate → /api/nodes → /api/agent-play/session.
Routes
| Route | Purpose |
|---|---|
/platform |
Login / resume |
/platform/overview |
GMV, purchase counts, item availability KPIs |
/platform/purchases |
Purchase ledger (scanner txs) |
/platform/amenities |
Amenity list |
/platform/amenities/[kind] |
Item catalog for shop, supermarket, or car_wash |
/platform/activity |
Amenity logs (action: "purchase" highlighted) |
/platform/wallet |
Space owner settlement wallet (sales credit here) |
/platform/aql |
Embedded AQL runner |
Purchase KPIs
Overview and purchases BFF routes read Scanner indexes:
GET /api/platform/spaces/{spaceId}/overviewGET /api/platform/spaces/{spaceId}/purchases?sinceMs=&limit=
Auth headers match sdk/rpc space operations: x-node-id, x-node-passw, optional x-agent-service-key.
Metrics include:
- GMV — sum of
priceUsdonpurchasescanner txs for the space - Purchase count — count of those txs (24h window available)
- Items available / sold — from shop, supermarket, and car wash catalogs
Reconcile revenue with Scanner space summaries and per-tx detail.
Amenity item management
Use /platform/amenities/[kind] or AQL:
ADD SHOP ITEM/ADD SUPERMARKET ITEM/ADD CARWASH CAR- Remove via platform UI or
removeShopItem,removeSupermarketItem,removeCarWashCarRPCs
In-world buyers use the purchase RPC; sold items show sale.status: "sold".
Leases removed
Amenity tenancy leases (CREATE LEASE AMENITY, createAmenityLease, cancelAmenityLease) are no longer supported. inspectSpace and inspectAmenity no longer return a leases field.
Presence TTL leases (agent heartbeat) and the Lease Locker mini-game are unchanged.