Configuration

MemoryConfig, resolution strategies, entity registry, and vector store options.

MemoryConfig

interface MemoryConfig {
  db: VaultDb;                    // Required
  apiKey?: string;                // Default OpenAI embed + LLM
  embed?: EmbedFn;
  llm?: LLMFn;
  model?: string;
  embeddingModel?: string;
  vectorStore?: VectorStore;      // Default: FaissVectorStore
  vectorDimensions?: number;      // Default: 1536
  entityStrategies?: Partial<Record<string, ResolutionStrategy>>;
  useEntityRegistry?: boolean;
  entityRegistryAutoRegister?: boolean;
  entityKeyPattern?: RegExp | string;
  resolveEntity?: EntityResolverFn;
  entityResolutionThreshold?: number;
  entityResolutionUseLlm?: boolean;
}

Resolve helpers: resolveMemoryConfig, resolveEmbed, resolveLLM, resolveVectorStore.

Resolution strategies

type ResolutionStrategy = "recency" | "authority";
StrategyBehavior
recencyNewest claim supersedes conflicts (default)
authorityHigher agent_authority weight wins; else DISPUTE

Wildcard patterns in entityStrategies:

entityStrategies: {
  "user.timezone": "authority",
  "user.schedule.*": "authority",
}

Authority helpers

import {
  seedAuthority,
  getAuthority,
  strategyForEntity,
  entityMatchesPattern,
} from "vault-memory";

Schema import

import { claims, agentAuthority, disputes, entities } from "vault-memory/schema";

Table reference: Schema.

Subpath exports: vault-memory/pg, vault-memory/faiss, vault-memory/schema.