Skip to content
AgentsKit

@agentskit/memory — Functions

API functions for @agentskit/memory.

#Function: adaptIoredis()

adaptIoredis(io): RedisLike

Defined in: packages/memory/src/kv-store-redis.ts:74

Bridge an ioredis-style client to the RedisLike options-object shape.

#Parameters

#io

#del

#get

#keys

#set

#Returns

RedisLike


#Function: chroma()

chroma(config): VectorMemory

Defined in: packages/memory/src/vector/chroma.ts:36

#Parameters

#config

ChromaConfig

#Returns

VectorMemory


#Function: createEncryptedMemory()

createEncryptedMemory(options): Promise<ChatMemory>

Defined in: packages/memory/src/encrypted.ts:68

#Parameters

#options

EncryptedMemoryOptions

#Returns

Promise<ChatMemory>


#Function: createFileStore()

createFileStore(config): AgentskitMemoryStore

Defined in: packages/memory/src/kv-store-basic.ts:52

#Parameters

#config

FileKvConfig

#Returns

AgentskitMemoryStore


#Function: createHierarchicalMemory()

createHierarchicalMemory(options): HierarchicalMemory

Defined in: packages/memory/src/hierarchical.ts:71

MemGPT-style tiered memory. Three tiers:

  • working: always-loaded hot window (bounded by workingLimit).
  • recall: mid-term searchable layer (usually a vector store).
  • archival: cold store that always holds the full conversation.

On every save, new messages are appended to archival, messages that overflow the working window are indexed into recall, and the working tier is trimmed to workingLimit.

On every load, the hub returns working + up to recallTopK messages surfaced by the recall tier, spliced chronologically.

#Parameters

#options

HierarchicalMemoryOptions

#Returns

HierarchicalMemory


#Function: createInMemoryGraph()

createInMemoryGraph(): GraphMemory

Defined in: packages/memory/src/graph.ts:54

In-memory graph — fine for tests, single-process demos, and as reference for what a backing store needs to implement.

#Returns

GraphMemory


#Function: createInMemoryPersonalization()

createInMemoryPersonalization(): PersonalizationStore

Defined in: packages/memory/src/personalization.ts:27

In-memory personalization store — tests, single-process demos. Bring your own for production (Postgres, Redis, DynamoDB).

#Returns

PersonalizationStore


#Function: createInMemoryStore()

createInMemoryStore(config): AgentskitMemoryStore

Defined in: packages/memory/src/kv-store-basic.ts:30

#Parameters

#config

InMemoryKvConfig

#Returns

AgentskitMemoryStore


#Function: createKvMemoryFromConfig()

createKvMemoryFromConfig(__namedParameters): AgentskitMemoryStore

Defined in: packages/memory/src/kv-store-factory.ts:55

#Parameters

#__namedParameters

CreateKvMemoryFromConfigOpts

#Returns

AgentskitMemoryStore


#Function: createKvMemoryFromConfigAuto()

createKvMemoryFromConfigAuto(config): Promise<AgentskitMemoryStore>

Defined in: packages/memory/src/kv-store-factory.ts:112

#Parameters

#config

KvMemoryConfig

#Returns

Promise<AgentskitMemoryStore>


#Function: createLocalStorageStore()

createLocalStorageStore(__namedParameters): AgentskitMemoryStore

Defined in: packages/memory/src/kv-store-basic.ts:119

#Parameters

#__namedParameters

CreateLocalStorageStoreOpts

#Returns

AgentskitMemoryStore


#Function: createRedisStore()

createRedisStore(__namedParameters): AgentskitMemoryStore

Defined in: packages/memory/src/kv-store-redis.ts:16

#Parameters

#__namedParameters

CreateRedisStoreOpts

#Returns

AgentskitMemoryStore


#Function: createSqliteStore()

createSqliteStore(__namedParameters): AgentskitMemoryStore

Defined in: packages/memory/src/kv-store-sqlite.ts:17

#Parameters

#__namedParameters

CreateSqliteStoreOpts

#Returns

AgentskitMemoryStore


#Function: createVectorStore()

createVectorStore(__namedParameters): AgentskitMemoryStore & object

Defined in: packages/memory/src/kv-store-vector.ts:20

#Parameters

#__namedParameters

CreateVectorStoreOpts

#Returns

AgentskitMemoryStore & object


#Function: createWebStorageMemory()

createWebStorageMemory(__namedParameters): ChatMemory

Defined in: packages/memory/src/web-storage.ts:75

Creates a validated, bounded ChatMemory over an injected browser Web Storage backend. The storage getter is evaluated lazily so browser globals can remain SSR-safe.

#Parameters

#__namedParameters

WebStorageMemoryOptions

#Returns

ChatMemory


#Function: fileChatMemory()

fileChatMemory(path): ChatMemory

Defined in: packages/memory/src/file-chat.ts:24

ChatMemory backed by a JSON file on disk. Node-only.

Implements the Memory contract (ADR 0003):

  • load() returns a snapshot (CM1)
  • save() is replace-all, not append (CM2)
  • empty state returns [] (CM5)
  • clear() is optional but provided here

#Parameters

#path

string

#Returns

ChatMemory


#Function: fileVectorMemory()

fileVectorMemory(config): VectorMemory

Defined in: packages/memory/src/file-vector.ts:93

#Parameters

#config

FileVectorMemoryConfig

#Returns

VectorMemory


#Function: forgetSubject()

forgetSubject(memories, subjectId): Promise<ForgetSubjectResult>

Defined in: packages/memory/src/forget.ts:71

Walk every memory passed in and run forgetSubject(subjectId) on any that implement it. Missing capabilities are reported so callers cannot mistake a partial deletion for a complete one.

#Parameters

#memories

unknown[]

#subjectId

string

#Returns

Promise<ForgetSubjectResult>


#Function: isMemoryBackendSupported()

isMemoryBackendSupported(backend): boolean

Defined in: packages/memory/src/kv-store-factory.ts:43

#Parameters

#backend

"in-memory" | "file" | "sqlite" | "redis" | "vector" | "localstorage"

#Returns

boolean


#Function: makeForgettable()

makeForgettable<M>(memory, options): M & ForgettableMemory

Defined in: packages/memory/src/forget.ts:104

Helper for backends that key records by metadata.subjectId. Wraps any delete(ids)-style API into a ForgettableMemory.

#Type Parameters

#M

M extends object

#Parameters

#memory

M

#options

#backend

string

#deleteIds

(ids) => Promise<void>

#listIds

(subjectId) => Promise<string[]>

#Returns

M & ForgettableMemory


#Function: matchesFilter()

matchesFilter(metadata, filter): boolean

Defined in: packages/memory/src/vector/filter.ts:37

Evaluate a VectorFilter against a metadata record. Used by in-memory / file-backed vector stores. Backends with native filter languages (pgvector, Pinecone, Qdrant, etc.) translate the filter to their own form instead.

#Parameters

#metadata

Record<string, unknown> | undefined

#filter

VectorFilter | undefined

#Returns

boolean


#Function: milvusVectorStore()

milvusVectorStore(config): VectorMemory

Defined in: packages/memory/src/vector/milvus.ts:31

#Parameters

#config

MilvusConfig

#Returns

VectorMemory


#Function: mongoAtlasVectorStore()

mongoAtlasVectorStore(config): VectorMemory

Defined in: packages/memory/src/vector/mongo-atlas.ts:30

#Parameters

#config

MongoAtlasVectorConfig

#Returns

VectorMemory


#Function: pgvector()

pgvector(config): VectorMemory

Defined in: packages/memory/src/vector/pgvector.ts:31

#Parameters

#config

PgVectorConfig

#Returns

VectorMemory


#Function: pinecone()

pinecone(config): VectorMemory

Defined in: packages/memory/src/vector/pinecone.ts:25

#Parameters

#config

PineconeConfig

#Returns

VectorMemory


#Function: qdrant()

qdrant(config): VectorMemory

Defined in: packages/memory/src/vector/qdrant.ts:49

#Parameters

#config

QdrantConfig

#Returns

VectorMemory


#Function: redisChatMemory()

redisChatMemory(config): ChatMemory

Defined in: packages/memory/src/redis-chat.ts:26

#Parameters

#config

RedisChatMemoryConfig

#Returns

ChatMemory


#Function: redisVectorMemory()

redisVectorMemory(config): VectorMemory

Defined in: packages/memory/src/redis-vector.ts:19

#Parameters

#config

RedisVectorMemoryConfig

#Returns

VectorMemory


#Function: renderProfileContext()

renderProfileContext(profile): string

Defined in: packages/memory/src/personalization.ts:63

Render a profile into a system-prompt fragment the runtime can prepend. Kept intentionally short — full profile dumps bloat context and leak unnecessary detail to the model.

#Parameters

#profile

PersonalizationProfile | null

#Returns

string


#Function: sqliteChatMemory()

sqliteChatMemory(config): ChatMemory

Defined in: packages/memory/src/sqlite.ts:49

#Parameters

#config

SqliteChatMemoryConfig

#Returns

ChatMemory


#Function: supabaseVectorStore()

supabaseVectorStore(config): VectorMemory

Defined in: packages/memory/src/vector/supabase.ts:79

Supabase-hosted pgvector using direct PostgREST mutations and one purpose-specific similarity-search RPC. The service-role key stays server-side and @supabase/supabase-js is loaded lazily.

#Parameters

#config

SupabaseVectorStoreConfig

#Returns

VectorMemory


#Function: tryDefaultRedisClient()

tryDefaultRedisClient(url): Promise<RedisLike | undefined>

Defined in: packages/memory/src/kv-store-redis.ts:88

Lazy-import redis (node-redis v4), connect, and return a client; undefined if absent.

#Parameters

#url

string

#Returns

Promise<RedisLike | undefined>


#Function: tryDefaultSqliteOpener()

tryDefaultSqliteOpener(): Promise<SqliteOpener | undefined>

Defined in: packages/memory/src/kv-store-sqlite.ts:71

Lazy-import better-sqlite3 and return an opener, or undefined when the optional peer dep is absent (caller surfaces AK_MEMORY_PEER_MISSING).

#Returns

Promise<SqliteOpener | undefined>


#Function: tursoChatMemory()

tursoChatMemory(config): ChatMemory

Defined in: packages/memory/src/turso.ts:65

libSQL / Turso-backed chat memory. Mirrors the sqliteChatMemory shape so code paths can swap between local SQLite and replicated libSQL by changing one import.

@libsql/client is an optional peer dependency loaded lazily.

#Parameters

#config

TursoChatMemoryConfig

#Returns

ChatMemory


#Function: upstashVector()

upstashVector(config): VectorMemory

Defined in: packages/memory/src/vector/upstash.ts:29

Upstash Vector — HTTP-only serverless vector DB. The REST surface is tiny enough to implement directly without pulling the SDK.

#Parameters

#config

UpstashVectorConfig

#Returns

VectorMemory


#Function: weaviateVectorStore()

weaviateVectorStore(config): VectorMemory

Defined in: packages/memory/src/vector/weaviate.ts:31

#Parameters

#config

WeaviateConfig

#Returns

VectorMemory


#Function: wrapChatMemoryWithRedaction()

wrapChatMemoryWithRedaction(inner, options): ChatMemory

Defined in: packages/memory/src/redaction.ts:81

#Parameters

#inner

ChatMemory

#options

ChatMemoryRedactionOptions

#Returns

ChatMemory


#Function: wrapVectorMemoryWithRedaction()

wrapVectorMemoryWithRedaction(inner, options): VectorMemory

Defined in: packages/memory/src/redaction.ts:118

Wrap any VectorMemory so each document's content is redacted (or tokenized) before store(). search() and delete() pass through.

Note: embeddings pass through verbatim. Customers who embed plaintext PII separately (e.g. via a hosted embedding provider) must redact the input to their embedder, not just to this wrapper.

#Parameters

#inner

VectorMemory

#options

VectorMemoryRedactionOptions

#Returns

VectorMemory

Explore nearby

On this page

Function: adaptIoredis()ParametersiodelgetkeyssetReturnsFunction: chroma()ParametersconfigReturnsFunction: createEncryptedMemory()ParametersoptionsReturnsFunction: createFileStore()ParametersconfigReturnsFunction: createHierarchicalMemory()ParametersoptionsReturnsFunction: createInMemoryGraph()ReturnsFunction: createInMemoryPersonalization()ReturnsFunction: createInMemoryStore()ParametersconfigReturnsFunction: createKvMemoryFromConfig()Parameters__namedParametersReturnsFunction: createKvMemoryFromConfigAuto()ParametersconfigReturnsFunction: createLocalStorageStore()Parameters__namedParametersReturnsFunction: createRedisStore()Parameters__namedParametersReturnsFunction: createSqliteStore()Parameters__namedParametersReturnsFunction: createVectorStore()Parameters__namedParametersReturnsFunction: createWebStorageMemory()Parameters__namedParametersReturnsFunction: fileChatMemory()ParameterspathReturnsFunction: fileVectorMemory()ParametersconfigReturnsFunction: forgetSubject()ParametersmemoriessubjectIdReturnsFunction: isMemoryBackendSupported()ParametersbackendReturnsFunction: makeForgettable()Type ParametersMParametersmemoryoptionsbackenddeleteIdslistIdsReturnsFunction: matchesFilter()ParametersmetadatafilterReturnsFunction: milvusVectorStore()ParametersconfigReturnsFunction: mongoAtlasVectorStore()ParametersconfigReturnsFunction: pgvector()ParametersconfigReturnsFunction: pinecone()ParametersconfigReturnsFunction: qdrant()ParametersconfigReturnsFunction: redisChatMemory()ParametersconfigReturnsFunction: redisVectorMemory()ParametersconfigReturnsFunction: renderProfileContext()ParametersprofileReturnsFunction: sqliteChatMemory()ParametersconfigReturnsFunction: supabaseVectorStore()ParametersconfigReturnsFunction: tryDefaultRedisClient()ParametersurlReturnsFunction: tryDefaultSqliteOpener()ReturnsFunction: tursoChatMemory()ParametersconfigReturnsFunction: upstashVector()ParametersconfigReturnsFunction: weaviateVectorStore()ParametersconfigReturnsFunction: wrapChatMemoryWithRedaction()ParametersinneroptionsReturnsFunction: wrapVectorMemoryWithRedaction()ParametersinneroptionsReturns