Level 1Minimal ReaderLibraries, tools, verification scriptsDeserialize and verify grain blobsCompute & verify SHA-256 content addressesField compaction (short keys ↔ full names)All ten grain types (0x01–0x0A)Ignore unknown fieldsConstant-time hash comparison
Level 2Full ImplementationAgent frameworks, edge gatewaysAll Level 1 requirementsSerialize (canonical MessagePack)Validate required fields per schemaPass all test vectorsMulti-modal content referencesStore protocol (get/put/delete/list)Enforce invalidation_policy on supersession & contradictionAtomic supersede operation (distinct from raw put)Validate observer_type non-empty; emit oid/otype (v1.1)
Level 3Production StoreEnterprise deployments, cloud platformsAll Level 2 requirementsPersistent backend (filesystem, S3, DB)AES-256-GCM per-grain encryptionHKDF per-user key derivationBlind-index tokens for encrypted searchSPO/POS/OSP index (hexastore) or equivalentFull-text search (FTS5 or equivalent)Hash-chained audit trailCrash recovery and reconciliationPolicy engine with compliance presetsPartition Observation storage by observer domain (v1.1)
calagent-memoryCAL: The Query Language Your Agent Orchestrator Has Been MissingHow the Context Assembly Language turns a raw memory store into a first-class context pipeline for AI agents — from querying relevant grains to assembling token-budgeted context blocks that drop directly into LLM calls.2026-03-04·14 min read
calsmlChoosing the Right Context Format: SML, TOON, Markdown, and JSONCAL's FORMAT clause gives you six output options for assembled agent context. Side-by-side token counts, real examples, and a decision guide for when to use SML, TOON, Markdown, or JSON.2026-03-04·10 min read
smlcontext-formatSML: The Context Format That Tells LLMs What to TrustSemantic Markup Language (SML) uses grain type tag names as epistemic signals — telling an LLM not just what information is, but what kind of information it is. Hands-on examples across all 10 grain types, from customer support to incident response.2026-03-04·12 min read