cad-reference

Index of the Convex Architecture Documents (CADs), the normative specifications for Convex. Use to find which CAD governs a subsystem before changing protocol,…

npx skills add https://github.com/convex-dev/convex --skill cad-reference

Convex Architecture Documents

CADs are the normative specifications for Convex. Where the code and a CAD disagree, that is a bug in one of them — not a licence to pick either. Before changing behaviour in a specified area, read the governing CAD and say which one you relied on.

Read them at https://docs.convex.world/docs/cad/<slug> — the slug is the CAD directory name without its numeric prefix, e.g. CAD003 is https://docs.convex.world/docs/cad/encoding.

If the design repository is checked out alongside this one, the sources are in design/docs/cad/<nnn>_<slug>/index.md. Do not assume it is present.

Core Protocol

CADSlugCovers
000principlesDesign principles behind every other decision
001archOverall architecture
002valuesCVM values
003encodingCAD3 encoding format — see the cad3-encoding skill
004accountsAccounts, addresses, controllers
005cvmexCVM execution model
033cvmtypesCVM type system

Resources and Economics

CADSlugCovers
006memoryMemory accounting and allowances — see the memory skill
007juiceJuice accounting and pricing — see the juice skill
020tokenomicsCoin supply, distribution, denominations
016peerstakePeer staking

Language and Compilation

CADSlugCovers
008compilerCompiler
009expandersExpanders and macros
011errorsError handling and error codes
012numericsNumeric semantics
013metadataMetadata
026lispConvex Lisp
032readerCVX reader syntax

Transactions and Consensus

CADSlugCovers
010transactionsTransaction format and lifecycle
051cposConvergent Proof of Stake — consensus levels, belief merge
050network_upgradeNetwork upgrades and protocol versions — see the protocol-versions skill
015peercommsPeer communication protocol
017peeropsPeer operations
018schedulerScheduled execution
021observabilityObservability
027logEvent logging

Storage and Lattice

CADSlugCovers
047etchEtch storage format — see the etch skill
048storesLattice store abstraction — roots, persistence status
049etch_gcEtch garbage collection and migration — see the etch skill
024data_latticeData lattice
035cursorsLattice cursors
036lattice_nodeLattice node
037kv_databaseKV database
039convex_sqlConvex SQL — see the convex-db skill
040lattice_queueLattice queue
028dlfsData Lattice File System
044jsonJSON on the lattice
045lattice_appsLattice applications
046cell_explorerCell explorer

Assets, Identity and Trust

CADSlugCovers
019assetsAsset model
029fungibleFungible token standard — see the token skill
031nft_metadataNFT metadata
030torusTorus DEX
022trustmonTrust monitors — the authorisation model; see the trust skill
014cnsConvex Name System — see the cns skill
034curated_registryCurated registry
023keystoreKeystore
025walletHD wallets
038lattice_authLattice authentication
043didDecentralised identity

Integration

CADSlugCovers
041mcpModel Context Protocol
042x402x402 protocol

CAD 0000cads is the index and describes the CAD process itself.