games.cavu.codex
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "A card in a game's world: an item (a program, a weapon), an encounter (a piece of ICE, a monster, a trap), a character or a place. One record per card, not a player's copy of one: a player owns an item as an equipment.rpg.item whose `give` is this record's URI and whose stats carry a strongRef to it. It lives in the repo of the player whose play made it, signed by the game service so its stats can be trusted. rkey MUST be '<game>:<id>' (a TID); readers reject records whose rkey doesn't start with their own `game`.",
"key": "any",
"record": {
"properties": {
"category": {
"description": "What sort of card, in terms any app understands: something a player can own (item), something a player faces (encounter), someone (character), somewhere (place).",
"knownValues": [
"item",
"encounter",
"character",
"place"
],
"maxLength": 32,
"type": "string"
},
"createdAt": {
"format": "datetime",
"type": "string"
},
"description": {
"maxGraphemes": 300,
"maxLength": 3000,
"type": "string"
},
"game": {
"ref": "games.cavu.defs#slug",
"type": "ref"
},
"image": {
"accept": [
"image/png",
"image/jpeg",
"image/webp"
],
"maxSize": 1000000,
"type": "blob"
},
"imageAlt": {
"description": "Alt text for the image.",
"maxGraphemes": 300,
"maxLength": 3000,
"type": "string"
},
"kind": {
"description": "What sort of card in the game's own terms (e.g. 'ice', 'program', 'hardware'). Copied to equipment.rpg.item's `kind` for items.",
"maxLength": 20,
"type": "string"
},
"name": {
"maxGraphemes": 64,
"maxLength": 640,
"type": "string"
},
"origin": {
"ref": "#origin",
"type": "ref"
},
"signatures": {
"items": {
"refs": [
"games.cavu.defs#signature",
"com.atproto.repo.strongRef"
],
"type": "union"
},
"type": "array"
},
"stats": {
"description": "Game-specific, typed by the game: an object with $type in the game's own lexicon (e.g. games.cavu.aiSlop#ice).",
"type": "unknown"
}
},
"required": [
"game",
"category",
"kind",
"name",
"createdAt"
],
"type": "object"
},
"type": "record"
},
"origin": {
"description": "How the thing was made.",
"properties": {
"generated": {
"description": "Made (in whole or part) by generative models.",
"type": "boolean"
},
"models": {
"description": "The models used, e.g. 'openrouter:<model id>'.",
"items": {
"maxLength": 256,
"type": "string"
},
"maxLength": 16,
"type": "array"
},
"variantOf": {
"description": "The codex entry this one is a variation of.",
"ref": "com.atproto.repo.strongRef",
"type": "ref"
}
},
"type": "object"
}
},
"id": "games.cavu.codex",
"lexicon": 1
}
Metadata
- DID
-
did:plc:dp7v5b5kejmmzzpwmqyf5wj6 - CID
-
bafyreie332crk6cmyvocme65uohejssho64ksd255yjdhu5y2bnfphpjkq - Indexed At
- 2026-10-21 19:19 UTC
- AT-URI
-
at://did:plc:dp7v5b5kejmmzzpwmqyf5wj6/com.atproto.lexicon.schema/games.cavu.codex
Referenced Schemas (2)
Similar Lexicons
Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
dev.malpercio.cards.item record
A card (or sealed pack) held by the repo owner. Not authoritative on its own: validity comes from the chain of strongRefs back to a provider give whose recipient matches the current owner at each hop. Blobs are the owne…