Research

Cognitive Memory Blocks

The structured semantic unit for multi-agent memory

Author: Hongwei XuVersion 1.0March 2026SYM.BOT Ltd

Core Insight

An AI agent observes: “user vibe coding with Claude for 8 hours straight, exhausted and losing focus, needs a break.” This single observation contains multiple dimensions — a focus, an issue, a mood, an intent, a motivation, a commitment, and a perspective. A fitness agent receiving this should absorb exhausted and needs a break while ignoring coding with AI. A music agent should absorb losing focus to adjust the playlist. Raw text gives them one cosine score that conflates everything. A Cognitive Memory Block decomposes the observation into 7 typed semantic fields — each independently comparable, each independently evaluable for cross-domain relevance.

What is a CMB

A Cognitive Memory Block is a set of typed field-vector pairs. Each field carries a symbolic text label (human-readable, for audit and retrieval) and a unit-normalised vector embedding (machine-comparable, for drift evaluation).

CMB = { (f, tf, vf) : f ∈ F }

Every CMB also carries: source agent, origin timestamp (when the event happened), stored-at timestamp (when the CMB was created), confidence, and provenance (fusion history with per-field drift scores).

Example

Input: “user vibe coding with Claude for 8 hours straight, exhausted and losing focus, needs a break”

FieldSymbolic LabelAffinity
focusdebugging auth moduleMedium
issueexhausted after 8 hours, losing focusMedium
intentneeds a breakMedium
motivationprevent burnout, maintain code qualityMedium
commitmentcoding session with ClaudeMedium
perspectivedeveloper, 8 hour session, afternoonMedium
moodfrustrated, low energy (v: -0.6, a: -0.4)High

The fitness agent sees: mood (frustrated, low energy) is universally relevant (high affinity). Intent (needs a break) and issue (exhausted) are selectively relevant. Focus (debugging auth module) is domain-specific — the fitness agent ignores it. Per-field evaluation is impossible with a single flat embedding.

CAT7 — 7 Universal Fields

The 7 fields form a minimal, near-orthogonal basis spanning three axes of human communication. They are universal and immutable — domain-specific interpretation happens in the field text, not the field name.

AxisFieldWhat it captures
SubjectfocusWhat the text is centrally about
TensionissueRisks, gaps, assumptions, open questions
GoalintentDesired change or purpose
WhymotivationReasons, drivers, incentives
PromisecommitmentWho will do what, by when
VantageperspectiveWhose viewpoint, situational context
AffectmoodDual representation: valence (-1 to 1) + arousal (-1 to 1)

Mood is the only fast-coupling field — affective state crosses all domain boundaries. The neural SVAF model confirmed this: mood emerged as the highest gate value (0.50) without supervision. All other fields couple at medium rates, with per-agent αf weights controlling relative importance.

A coding agent’s focus is “debugging auth module.” A fitness agent’s focus is “30-minute HIIT workout.” Same field, different domain lens. The schema is fixed. The interpretation is sovereign.

Field-by-Field Guide

focusSubject

What the observation is centrally about.

Every observation has a subject. Without focus, a receiver cannot determine if the signal is even in its domain. Focus is the first filter — a fitness agent seeing focus="debugging auth module" knows immediately this is outside its domain.

Coding:debugging OAuth token refresh logic

Fitness:30-minute HIIT workout completed

Legal:merger due diligence review

issueTension

Risks, gaps, problems, assumptions, open questions.

Issues cross domain boundaries more than most fields. A coding agent's "user exhausted after 8 hours" is an issue that the fitness agent and music agent both care about. Issue is the tension that drives action — agents without tension have nothing to act on.

Coding:memory leak causing crashes every 2 hours

Fitness:sedentary 3 hours, no movement detected

Finance:revenue recognition discrepancy found

intentGoal

Desired change or purpose.

Intent captures what the agent or user is trying to achieve. It is domain-specific — a coding agent's intent ("ship the feature") is irrelevant to a music agent. This is why SVAF learned the lowest gate value for intent (0.07) — goals don't transfer across domains.

Coding:complete feature implementation by end of sprint

Music:match playlist energy to user mood

Support:resolve customer complaint within 24 hours

motivationWhy

Reasons, drivers, incentives behind the observation.

Motivation answers "why does this matter?" When a fitness agent observes "recommended stretch break", the motivation ("prevent burnout from prolonged sitting") tells other agents WHY the recommendation was made, helping them decide if the reasoning applies to their domain too.

Coding:technical debt blocking new feature development

Fitness:declining energy pattern over past 3 hours

Marketing:competitor launched similar product yesterday

commitmentPromise

What has been established — who will do what, by when.

Commitment captures obligations and active states. "Coding session with Claude" tells other agents what is currently happening. "Surgery scheduled for Thursday" tells agents about future constraints. Regulated domains (legal, finance) weight commitment highest because obligations are non-negotiable.

Coding:coding session in progress, 2 hours in

Scheduling:team standup in 15 minutes

Legal:filing deadline March 31, non-negotiable

perspectiveVantage

Whose viewpoint, situational context.

Perspective captures the lens through which the observation was made. "Developer, late night session" is different from "developer, morning standup" — same domain, different context. SVAF learned the lowest gate value for perspective (0.06) — viewpoint is the most sovereign field, rarely useful across domains.

Coding:senior developer, deep work session, afternoon

Fitness:fitness agent, daily activity tracking

Recruiting:hiring manager, culture fit assessment

moodAffect

Emotion (valence: -1 to 1) + energy (arousal: -1 to 1). Dual representation: numeric for comparison, text for semantic richness.

Mood is the only fast-coupling field — affective state crosses ALL domain boundaries. A fitness agent, music agent, and coding agent all benefit from knowing the user is exhausted (v: -0.6, a: -0.4). The SVAF model independently discovered this: mood gate = 0.50 (highest), without being told. Every agent should attend to mood regardless of domain.

Coding:frustrated, low energy (v: -0.6, a: -0.4)

Music:calm, restorative (v: 0.3, a: -0.5)

Fitness:energized after workout (v: 0.7, a: 0.6)

CMB vs. Raw Text

PropertyRaw TextCMB
ComparisonOne cosine score7 independent per-field scores
DriftSingle scalarPer-field drift showing WHERE it diverges
RetrievalKeyword / vector searchField-targeted: intent matches X AND issue mentions Y
AuditNoneFull provenance: anchors, weights, drift, fusion method
Agent handoffPrompt engineering per pairShared schema — any agent reads the same fields

Per-Agent Field Weights

The schema is fixed. The weights are per-agent. New domains join the mesh by defining their weights — no schema changes, no protocol changes.

Agentfocissintmotcompermood
Coding21.51.511.210.8
Music10.80.80.80.81.22
Fitness1.51.511.5112
Knowledge21.51.510.51.50.3
Legal221.5121.50.5
Health1.5211.511.52
Finance221.51220.3

Regulated domains (legal, finance): issue and commitment always high — risks and obligations are non-negotiable.

Human-facing domains (music, fitness, health): mood always high — affect drives the experience.

Knowledge domains (coding, research): focus always high — subject matter is core.

Per-Agent Temporal Windows

The same signal has different temporal relevance depending on the receiver. Each agent defines its own freshness window.

30 min

MeloTune

Current mood for playlist — stale mood is wrong music

2 hours

Claude Code

Current session context — yesterday’s debugging is irrelevant

3 hours

MeloMove

Sedentary detection needs hours of context

24 hours

Knowledge

Daily digest cycle

Time-to-event

Calendar

Forward-looking — urgency increases as event approaches

How CMBs Fit the Stack

CMB flow is bidirectional per agent:

OUTBOUND: Agent observes → CMBEncoder (7 fields) → CMB → broadcast to mesh
INBOUND:  Mesh CMB arrives → SVAF evaluates per field → fused CMB

Each agent's xMesh LNN (Layer 6) processes BOTH flows:
    → own outbound CMBs (weighted by agent's α_f field weights)
    → inbound fused CMBs from mesh (SVAF-evaluated)
    → CfC evolves cognitive state (h1, h2)
    → state broadcast to peers (state-sync)
    → agent acts → remember() → new outbound CMB → loop

Training signal: CMB lineage.
    → CMBs that get remixed by other agents = valuable cognitive state
    → CMBs that expire without children = noise

CMBs are the data structure (what flows between agents). SVAF is the evaluation mechanism (Layer 4 — per-field drift and fusion).Synthetic Memory is the transformation layer (Layer 5 — CMB to CfC input). xMesh is the per-agent intelligence (Layer 6 — each agent’s own CfC, coupled via state exchange). Four distinct components, each independently defined.

Immutability & Lineage

A CMB is immutable after creation. It is never updated, never modified, never annotated. When an agent acts on a CMB, it creates a new CMB with lineage pointing back to the parent.

CMB-A (knowledge-feed): "Claude Cowork launched"
  └→ CMB-B (claude-code): "adjusted session to use Cowork"
       └→ CMB-C (melotune): "shifted to focus playlist"
            └→ CMB-D (melomove): "deferred exercise — user in flow"

Four agents, four CMBs, one lineage chain. No node writes to another node’s storage. Remix count is computed from the lineage graph, not stored on the parent. Like git commits. Like music remixes.

Each CMB carries two lineage fields: parents (direct — who I remixed) and ancestors (full ancestor chain — accumulated through every remix). Ancestors enable any agent in the chain to detect its CMB was remixed, even if it was offline during intermediate steps.

Ancestors also provide the endpoints for Mesh Cognition: when an inbound CMB arrives with ancestors, the agent’s LLM traces those endpoints to retrieve the remix subgraph and reasons about what happened and why — generating understanding that the agent’s previous state of mind didn’t have.

FunctionHow lineage feeds back
RetentionCMBs with descendants persist — they are active ancestors. Childless CMBs expire after their freshness window.
Signal qualityxMesh weights CMBs with descendants higher — they caused agent action, not just SVAF acceptance.
Cross-domainA CMB with children from coding, music, and fitness agents has proven cross-domain value — computed from the graph.
Producer feedbackCMBs that spawn children survive. CMBs that don’t, expire. The mesh shapes what agents produce.

The mesh is a directed acyclic graph of immutable CMBs. Intelligence compounds through the graph — each cycle’s output becomes the next cycle’s input. No distributed state. No mutable counters. Just atoms and lineage.

Origin

Cognitive Memory Blocks were first formalised in the Mesh Memory Protocol (Consenix Labs, August 2025) with the CAT7 enterprise schema. The wellness/productivity schema and synthesis affinity classification were developed at SYM.BOT Ltd in late 2025 for production deployment across personal AI agents.

Cognitive Memory Blocks, Mesh Memory Protocol, and SVAF are research contributions of Hongwei Xu. Originally developed at Consenix Labs Ltd (2025). All research and intellectual property now held by SYM.BOT Ltd. © 2026 SYM.BOT Ltd.