@agentskit/memory — Interfaces
API interfaces for @agentskit/memory.
#Interface: AgentskitMemoryStore
Defined in: packages/memory/src/kv-store-types.ts:10
Minimal KV store contract.
#Properties
#id
readonlyid:string|undefined
Defined in: packages/memory/src/kv-store-types.ts:11
#Methods
#get()
get(
key):Promise<unknown>
Defined in: packages/memory/src/kv-store-types.ts:12
#Parameters
key
string
#Returns
Promise<unknown>
#set()
set(
key,value):Promise<void>
Defined in: packages/memory/src/kv-store-types.ts:13
#Parameters
key
string
value
unknown
#Returns
Promise<void>
#Interface: ChatMemoryRedactionOptions
Defined in: packages/memory/src/redaction.ts:35
#Extended by
#Properties
#allowedRoles?
optionalallowedRoles?:string[]
Defined in: packages/memory/src/redaction.ts:46
Roles allowed to reveal — required when mode === 'tokenize'.
#audit?
optionalaudit?:RedactionAuditSink
Defined in: packages/memory/src/redaction.ts:48
Optional audit sink threaded into the vault tokenize() calls.
#mode?
optionalmode?:RedactionMode
Defined in: packages/memory/src/redaction.ts:42
#rules
rules:
PIIRule[]
Defined in: packages/memory/src/redaction.ts:41
Rules to apply. Pass DEFAULT_PII_RULES for the baseline set,
compilePIITaxonomy(json) for a custom JSON taxonomy, or any
hand-rolled PIIRule[]. Same shape as createPIIRedactor.
#vault?
optionalvault?:RedactionVault
Defined in: packages/memory/src/redaction.ts:44
Required when mode === 'tokenize'.
#Interface: ChromaConfig
Defined in: packages/memory/src/vector/chroma.ts:5
#Extends
#Properties
#apiKey?
optionalapiKey?:string
Defined in: packages/memory/src/vector/chroma.ts:14
Chroma token sent through the x-chroma-token header.
#collection
collection:
string
Defined in: packages/memory/src/vector/chroma.ts:8
#database?
optionaldatabase?:string
Defined in: packages/memory/src/vector/chroma.ts:12
Chroma database. Defaults to default_database.
#fetch?
optionalfetch?: {(input,init?):Promise<Response>; (input,init?):Promise<Response>; }
Defined in: packages/memory/src/vector/http.ts:4
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
RequestInfo | URL
init?
RequestInit
Returns
Promise<Response>
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
string | Request | URL
init?
RequestInit
Returns
Promise<Response>
#Inherited from
#headers?
optionalheaders?:Record<string,string>
Defined in: packages/memory/src/vector/chroma.ts:16
Additional headers for hosted or proxied Chroma deployments.
#maxResponseBytes?
optionalmaxResponseBytes?:number
Defined in: packages/memory/src/vector/http.ts:6
#Inherited from
RemoteHttpConfig.maxResponseBytes
#signal?
optionalsignal?:AbortSignal
Defined in: packages/memory/src/vector/http.ts:7
#Inherited from
#tenant?
optionaltenant?:string
Defined in: packages/memory/src/vector/chroma.ts:10
Chroma tenant. Defaults to default_tenant.
#timeoutMs?
optionaltimeoutMs?:number
Defined in: packages/memory/src/vector/http.ts:5
#Inherited from
#topK?
optionaltopK?:number
Defined in: packages/memory/src/vector/chroma.ts:17
#url
url:
string
Defined in: packages/memory/src/vector/chroma.ts:7
Base URL of a running Chroma HTTP server.
#Interface: CreateKvMemoryFromConfigOpts
Defined in: packages/memory/src/kv-store-factory.ts:46
#Properties
#config
readonlyconfig:KvMemoryConfig
Defined in: packages/memory/src/kv-store-factory.ts:47
#embedder?
readonlyoptionalembedder?:MemoryEmbedderLike
Defined in: packages/memory/src/kv-store-factory.ts:52
#localStorageFilePath?
readonlyoptionallocalStorageFilePath?:string
Defined in: packages/memory/src/kv-store-factory.ts:49
#redis?
readonlyoptionalredis?:RedisLike
Defined in: packages/memory/src/kv-store-factory.ts:50
#sqlite?
readonlyoptionalsqlite?:SqliteOpener
Defined in: packages/memory/src/kv-store-factory.ts:48
#vectorStore?
readonlyoptionalvectorStore?:MemoryVectorStoreLike
Defined in: packages/memory/src/kv-store-factory.ts:51
#Interface: CreateLocalStorageStoreOpts
Defined in: packages/memory/src/kv-store-basic.ts:106
#Properties
#config
readonlyconfig:LocalStorageKvConfig
Defined in: packages/memory/src/kv-store-basic.ts:107
#filePath?
readonlyoptionalfilePath?:string
Defined in: packages/memory/src/kv-store-basic.ts:109
#storage?
readonlyoptionalstorage?:LocalStorageLike
Defined in: packages/memory/src/kv-store-basic.ts:108
#Interface: CreateRedisStoreOpts
Defined in: packages/memory/src/kv-store-redis.ts:11
#Properties
#client
readonlyclient:RedisLike
Defined in: packages/memory/src/kv-store-redis.ts:13
#config
readonlyconfig:RedisKvConfig
Defined in: packages/memory/src/kv-store-redis.ts:12
#Interface: CreateSqliteStoreOpts
Defined in: packages/memory/src/kv-store-sqlite.ts:12
#Properties
#config
readonlyconfig:SqliteKvConfig
Defined in: packages/memory/src/kv-store-sqlite.ts:13
#open
readonlyopen:SqliteOpener
Defined in: packages/memory/src/kv-store-sqlite.ts:14
#Interface: CreateVectorStoreOpts
Defined in: packages/memory/src/kv-store-vector.ts:14
#Properties
#config
readonlyconfig:VectorKvConfig
Defined in: packages/memory/src/kv-store-vector.ts:15
#embedder
readonlyembedder:MemoryEmbedderLike
Defined in: packages/memory/src/kv-store-vector.ts:17
#vectorStore
readonlyvectorStore:MemoryVectorStoreLike
Defined in: packages/memory/src/kv-store-vector.ts:16
#Interface: EncryptedEnvelope
Defined in: packages/memory/src/encrypted.ts:30
#Properties
#ciphertext
ciphertext:
string
Defined in: packages/memory/src/encrypted.ts:31
#iv
iv:
string
Defined in: packages/memory/src/encrypted.ts:32
#length
length:
number
Defined in: packages/memory/src/encrypted.ts:34
Plaintext-length marker so the agent sees a non-empty content hint.
#Interface: EncryptedMemoryOptions
Defined in: packages/memory/src/encrypted.ts:18
Client-side encrypted ChatMemory wrapper. Keys never leave the
caller — the backing store only ever sees an opaque
\{ iv, ct \} payload stashed in metadata.ciphertext and
metadata.iv; content becomes an empty string so rogue
middleware can't peek at it either.
Uses Web Crypto (AES-GCM, 256-bit). Available on Node 20+ and all modern browsers. BYO key material — typically generated per-user during onboarding and stored only on their device.
#Properties
#aad?
optionalaad?:Uint8Array<ArrayBufferLike>
Defined in: packages/memory/src/encrypted.ts:27
Optional AAD — content that binds ciphertext to context (user id, room).
#backing
backing:
ChatMemory
Defined in: packages/memory/src/encrypted.ts:19
#getRandomValues?
optionalgetRandomValues?: <T>(array) =>T
Defined in: packages/memory/src/encrypted.ts:25
Random source. Defaults to globalThis.crypto.getRandomValues.
#Type Parameters
T
T extends ArrayBufferView<ArrayBufferLike>
#Parameters
array
T
#Returns
T
#key
key:
Uint8Array<ArrayBufferLike> |CryptoKey
Defined in: packages/memory/src/encrypted.ts:21
32-byte raw key (e.g. crypto.getRandomValues(new Uint8Array(32))).
#subtle?
optionalsubtle?:SubtleCrypto
Defined in: packages/memory/src/encrypted.ts:23
Override for tests. Defaults to globalThis.crypto.subtle.
#Interface: FileKvConfig
Defined in: packages/memory/src/kv-store-types.ts:58
#Extends
CommonKvConfig
#Properties
#backend
readonlybackend:"file"
Defined in: packages/memory/src/kv-store-types.ts:59
#maxMessages?
readonlyoptionalmaxMessages?:number
Defined in: packages/memory/src/kv-store-types.ts:51
#Inherited from
CommonKvConfig.maxMessages
#path
readonlypath:string
Defined in: packages/memory/src/kv-store-types.ts:60
#ttlSeconds?
readonlyoptionalttlSeconds?:number
Defined in: packages/memory/src/kv-store-types.ts:52
#Inherited from
CommonKvConfig.ttlSeconds
#Interface: FileVectorMemoryConfig
Defined in: packages/memory/src/file-vector.ts:6
#Properties
#path
path:
string
Defined in: packages/memory/src/file-vector.ts:7
#store?
optionalstore?:VectorStore
Defined in: packages/memory/src/file-vector.ts:8
#Interface: ForgetReport
Defined in: packages/memory/src/forget.ts:29
#Properties
#at
at:
string
Defined in: packages/memory/src/forget.ts:33
ISO timestamp of the deletion.
#backend
backend:
string
Defined in: packages/memory/src/forget.ts:30
#deletedCount
deletedCount:
number
Defined in: packages/memory/src/forget.ts:31
#failures?
optionalfailures?:object[]
Defined in: packages/memory/src/forget.ts:35
Records the deletion couldn't reach (offline replica, missing index).
#id
id:
string
#reason
reason:
string
#Interface: ForgetSubjectResult
Defined in: packages/memory/src/forget.ts:38
#Properties
#evidenceHash
evidenceHash:
string
Defined in: packages/memory/src/forget.ts:46
Hash you can sign into the audit log to prove the deletion ran.
#incomplete
incomplete:
boolean
Defined in: packages/memory/src/forget.ts:43
#reports
reports:
ForgetReport[]
Defined in: packages/memory/src/forget.ts:40
#skippedBackends
skippedBackends:
string[]
Defined in: packages/memory/src/forget.ts:42
Inputs without the capability, which require an explicit out-of-band deletion.
#subjectId
subjectId:
string
Defined in: packages/memory/src/forget.ts:39
#totalDeleted
totalDeleted:
number
Defined in: packages/memory/src/forget.ts:44
#Interface: ForgettableMemory
Defined in: packages/memory/src/forget.ts:19
GDPR / LGPD / CCPA data-subject deletion. ADR-0003 deferred retention; this module is the "forget the user" half.
Design: rather than mutate every memory contract (and break the
public API freeze, RFC-0007), we attach forgetSubject as a
capability on a memory instance. Backends that can implement it
declare a subjectFilter (how to recognise records belonging to a
subject) and deleteFn (how to remove them). forgetSubject(memory, subjectId) walks every backend the runtime is configured with and
runs the deletion, returning a per-backend report you can sign into
the audit log (#162).
Closes issue #798.
#Properties
#__agentskitBackend
__agentskitBackend:
string
Defined in: packages/memory/src/forget.ts:24
Backend identifier ('pgvector', 'pinecone', 'sqlite', etc.).
Used for the audit-log entry and for the per-backend report.
#forgetSubject
forgetSubject: (
subjectId) =>Promise<ForgetReport>
Defined in: packages/memory/src/forget.ts:26
Delete every record where metadata.subjectId === subjectId.
#Parameters
subjectId
string
#Returns
Promise<ForgetReport>
#Interface: GraphEdge<TProps>
Defined in: packages/memory/src/graph.ts:19
#Type Parameters
#TProps
TProps = Record<string, unknown>
#Properties
#from
from:
string
Defined in: packages/memory/src/graph.ts:23
#id
id:
string
Defined in: packages/memory/src/graph.ts:20
#label
label:
string
Defined in: packages/memory/src/graph.ts:22
Verb / relation type — 'knows', 'works-at', 'cites'.
#properties?
optionalproperties?:TProps
Defined in: packages/memory/src/graph.ts:27
#to
to:
string
Defined in: packages/memory/src/graph.ts:24
#weight?
optionalweight?:number
Defined in: packages/memory/src/graph.ts:26
Optional weight — confidence, recency, or frequency.
#Interface: GraphMemory
Defined in: packages/memory/src/graph.ts:37
#Properties
#clear?
optionalclear?: () =>Promise<void>
Defined in: packages/memory/src/graph.ts:47
#Returns
Promise<void>
#deleteEdge
deleteEdge: (
id) =>Promise<void>
Defined in: packages/memory/src/graph.ts:46
#Parameters
id
string
#Returns
Promise<void>
#deleteNode
deleteNode: (
id) =>Promise<void>
Defined in: packages/memory/src/graph.ts:45
#Parameters
id
string
#Returns
Promise<void>
#findEdges
findEdges: <
T>(query?) =>Promise<GraphEdge<T>[]>
Defined in: packages/memory/src/graph.ts:42
#Type Parameters
T
T
#Parameters
query?
#Returns
Promise<GraphEdge<T>[]>
#findNodes
findNodes: <
T>(query?) =>Promise<GraphNode<T>[]>
Defined in: packages/memory/src/graph.ts:41
#Type Parameters
T
T
#Parameters
query?
#Returns
Promise<GraphNode<T>[]>
#getNode
getNode: <
T>(id) =>Promise<GraphNode<T> |null>
Defined in: packages/memory/src/graph.ts:40
#Type Parameters
T
T
#Parameters
id
string
#Returns
Promise<GraphNode<T> | null>
#neighbors
neighbors: <
T>(id,options?) =>Promise<GraphNode<T>[]>
Defined in: packages/memory/src/graph.ts:44
Breadth-first neighbors of id up to depth. Default 1.
#Type Parameters
T
T
#Parameters
id
string
options?
depth?
number
label?
string
#Returns
Promise<GraphNode<T>[]>
#upsertEdge
upsertEdge: <
T>(edge) =>Promise<GraphEdge<T>>
Defined in: packages/memory/src/graph.ts:39
#Type Parameters
T
T
#Parameters
edge
GraphEdge<T>
#Returns
Promise<GraphEdge<T>>
#upsertNode
upsertNode: <
T>(node) =>Promise<GraphNode<T>>
Defined in: packages/memory/src/graph.ts:38
#Type Parameters
T
T
#Parameters
node
GraphNode<T>
#Returns
Promise<GraphNode<T>>
#Interface: GraphNode<TProps>
Defined in: packages/memory/src/graph.ts:8
Non-linear memory: a typed knowledge graph. Use for facts the agent should remember beyond a single conversation — entities, relationships, derived beliefs. Designed to be backed by anything from an in-memory Map (tests, demos) to Neo4j / Memgraph / Neptune.
#Type Parameters
#TProps
TProps = Record<string, unknown>
#Properties
#createdAt?
optionalcreatedAt?:string
Defined in: packages/memory/src/graph.ts:14
ISO timestamp when the node was first inserted.
#id
id:
string
Defined in: packages/memory/src/graph.ts:9
#kind
kind:
string
Defined in: packages/memory/src/graph.ts:11
Type / label — 'person', 'company', 'topic'.
#properties?
optionalproperties?:TProps
Defined in: packages/memory/src/graph.ts:12
#updatedAt?
optionalupdatedAt?:string
Defined in: packages/memory/src/graph.ts:16
ISO timestamp of the latest update.
#Interface: GraphQuery
Defined in: packages/memory/src/graph.ts:30
#Properties
#from?
optionalfrom?:string
Defined in: packages/memory/src/graph.ts:33
#kind?
optionalkind?:string
Defined in: packages/memory/src/graph.ts:31
#label?
optionallabel?:string
Defined in: packages/memory/src/graph.ts:32
#to?
optionalto?:string
Defined in: packages/memory/src/graph.ts:34
#Interface: HierarchicalMemory
Defined in: packages/memory/src/hierarchical.ts:45
#Extends
ChatMemory
#Properties
#archival
archival: () =>
Promise<Message[]>
Defined in: packages/memory/src/hierarchical.ts:47
Full archival history. Always the source of truth.
#Returns
Promise<Message[]>
#clear?
optionalclear?: (options?) =>MaybePromise<void>
Defined in: packages/core/dist/memory-DT9jl_oe.d.ts:23
#Parameters
options?
MemoryOperationOptions
#Returns
MaybePromise<void>
#Inherited from
ChatMemory.clear
#load
load: (
options?) =>MaybePromise<Message[]>
Defined in: packages/core/dist/memory-DT9jl_oe.d.ts:21
#Parameters
options?
MemoryOperationOptions
#Returns
MaybePromise<Message[]>
#Inherited from
ChatMemory.load
#region?
optionalregion?:DataRegion
Defined in: packages/core/dist/memory-DT9jl_oe.d.ts:20
Data-residency region for this memory backend, when known.
#Inherited from
ChatMemory.region
#save
save: (
messages,options?) =>MaybePromise<void>
Defined in: packages/core/dist/memory-DT9jl_oe.d.ts:22
#Parameters
messages
Message[]
options?
MemoryOperationOptions
#Returns
MaybePromise<void>
#Inherited from
ChatMemory.save
#working
working: () =>
Promise<Message[]>
Defined in: packages/memory/src/hierarchical.ts:49
Current working-window snapshot.
#Returns
Promise<Message[]>
#Interface: HierarchicalMemoryOptions
Defined in: packages/memory/src/hierarchical.ts:23
#Properties
#archival
archival:
ChatMemory
Defined in: packages/memory/src/hierarchical.ts:27
Cold storage — every message ever seen is written here.
#recall?
optionalrecall?:HierarchicalRecall
Defined in: packages/memory/src/hierarchical.ts:33
Mid-term recall layer (usually a vector store). Optional; without it the hub behaves like virtualized memory with a hard backing store.
#recallTopK?
optionalrecallTopK?:number
Defined in: packages/memory/src/hierarchical.ts:42
Max recalled messages to splice on each load(). Default 5.
#working
working:
ChatMemory
Defined in: packages/memory/src/hierarchical.ts:25
Hot window — the messages always loaded in full.
#workingLimit?
optionalworkingLimit?:number
Defined in: packages/memory/src/hierarchical.ts:38
Maximum messages to keep in working. Older messages spill
into recall + archival. Default 50.
#Interface: HierarchicalRecall
Defined in: packages/memory/src/hierarchical.ts:6
#Properties
#clear?
optionalclear?: () =>void|Promise<void>
Defined in: packages/memory/src/hierarchical.ts:20
Remove all indexed messages when the parent memory is cleared.
#Returns
void | Promise<void>
#index
index: (
message) =>void|Promise<void>
Defined in: packages/memory/src/hierarchical.ts:12
Index a message for later retrieval. Called once per message as it moves from working → recall (usually: embed + store in a vector DB).
#Parameters
message
Message
#Returns
void | Promise<void>
#query
query: (
input) =>Message[] |Promise<Message[]>
Defined in: packages/memory/src/hierarchical.ts:18
Given the hot working window, return up to topK messages from
the recall tier that are relevant to the current turn. The hub
splices results chronologically alongside the working window.
#Parameters
input
topK
number
working
Message[]
#Returns
Message[] | Promise<Message[]>
#Interface: InMemoryKvConfig
Defined in: packages/memory/src/kv-store-types.ts:55
#Extends
CommonKvConfig
#Properties
#backend
readonlybackend:"in-memory"
Defined in: packages/memory/src/kv-store-types.ts:56
#maxMessages?
readonlyoptionalmaxMessages?:number
Defined in: packages/memory/src/kv-store-types.ts:51
#Inherited from
CommonKvConfig.maxMessages
#ttlSeconds?
readonlyoptionalttlSeconds?:number
Defined in: packages/memory/src/kv-store-types.ts:52
#Inherited from
CommonKvConfig.ttlSeconds
#Interface: KvEntry
Defined in: packages/memory/src/kv-store-types.ts:16
#Properties
#insertedAt
readonlyinsertedAt:number
Defined in: packages/memory/src/kv-store-types.ts:18
#value
readonlyvalue:unknown
Defined in: packages/memory/src/kv-store-types.ts:17
#Interface: LocalStorageKvConfig
Defined in: packages/memory/src/kv-store-types.ts:76
#Extends
CommonKvConfig
#Properties
#backend
readonlybackend:"localstorage"
Defined in: packages/memory/src/kv-store-types.ts:77
#key
readonlykey:string
Defined in: packages/memory/src/kv-store-types.ts:78
#maxMessages?
readonlyoptionalmaxMessages?:number
Defined in: packages/memory/src/kv-store-types.ts:51
#Inherited from
CommonKvConfig.maxMessages
#ttlSeconds?
readonlyoptionalttlSeconds?:number
Defined in: packages/memory/src/kv-store-types.ts:52
#Inherited from
CommonKvConfig.ttlSeconds
#Interface: LocalStorageLike
Defined in: packages/memory/src/kv-store-types.ts:130
#Methods
#getItem()
getItem(
key):string|null
Defined in: packages/memory/src/kv-store-types.ts:131
#Parameters
key
string
#Returns
string | null
#setItem()
setItem(
key,value):void
Defined in: packages/memory/src/kv-store-types.ts:132
#Parameters
key
string
value
string
#Returns
void
#Interface: MemoryEmbedderLike
Defined in: packages/memory/src/kv-store-types.ts:126
#Methods
#embed()
embed(
texts):Promise<number[][]>
Defined in: packages/memory/src/kv-store-types.ts:127
#Parameters
texts
readonly string[]
#Returns
Promise<number[][]>
#Interface: MemoryVectorStoreLike
Defined in: packages/memory/src/kv-store-types.ts:111
#Methods
#query()
query(
vec,k,filter?):Promise<readonlyobject[]>
Defined in: packages/memory/src/kv-store-types.ts:119
#Parameters
vec
readonly number[]
k
number
filter?
Record<string, unknown>
#Returns
Promise<readonly object[]>
#upsert()
upsert(
rows):Promise<void>
Defined in: packages/memory/src/kv-store-types.ts:112
#Parameters
rows
readonly object[]
#Returns
Promise<void>
#Interface: MilvusConfig
Defined in: packages/memory/src/vector/milvus.ts:5
#Extends
#Properties
#collection
collection:
string
Defined in: packages/memory/src/vector/milvus.ts:10
#fetch?
optionalfetch?: {(input,init?):Promise<Response>; (input,init?):Promise<Response>; }
Defined in: packages/memory/src/vector/http.ts:4
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
RequestInfo | URL
init?
RequestInit
Returns
Promise<Response>
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
string | Request | URL
init?
RequestInit
Returns
Promise<Response>
#Inherited from
#maxResponseBytes?
optionalmaxResponseBytes?:number
Defined in: packages/memory/src/vector/http.ts:6
#Inherited from
RemoteHttpConfig.maxResponseBytes
#signal?
optionalsignal?:AbortSignal
Defined in: packages/memory/src/vector/http.ts:7
#Inherited from
#timeoutMs?
optionaltimeoutMs?:number
Defined in: packages/memory/src/vector/http.ts:5
#Inherited from
#token?
optionaltoken?:string
Defined in: packages/memory/src/vector/milvus.ts:9
API key / Zilliz Cloud token (Bearer).
#topK?
optionaltopK?:number
Defined in: packages/memory/src/vector/milvus.ts:13
#url
url:
string
Defined in: packages/memory/src/vector/milvus.ts:7
Milvus REST endpoint, e.g. https://in03-xxx.api.gcp-us-west1.zillizcloud.com.
#vectorField?
optionalvectorField?:string
Defined in: packages/memory/src/vector/milvus.ts:12
Vector field name in the schema. Default vector.
#Interface: MongoAtlasVectorConfig
Defined in: packages/memory/src/vector/mongo-atlas.ts:19
#Properties
#collection
collection:
MongoCollectionLike
Defined in: packages/memory/src/vector/mongo-atlas.ts:20
#indexName
indexName:
string
Defined in: packages/memory/src/vector/mongo-atlas.ts:22
Atlas Search index name on the embedding field.
#numCandidates?
optionalnumCandidates?:number
Defined in: packages/memory/src/vector/mongo-atlas.ts:26
numCandidates for $vectorSearch. Default topK * 10.
#topK?
optionaltopK?:number
Defined in: packages/memory/src/vector/mongo-atlas.ts:27
#vectorField?
optionalvectorField?:string
Defined in: packages/memory/src/vector/mongo-atlas.ts:24
Field that holds the embedding vector. Default embedding.
#Interface: MongoCollectionLike
Defined in: packages/memory/src/vector/mongo-atlas.ts:11
MongoDB Atlas Vector Search adapter. Caller injects a typed collection
shape (drop-in for the official mongodb driver's Collection type) so
we don't bundle a driver. Atlas' $vectorSearch aggregation runs
server-side; we just translate store / search / delete to
insertMany + aggregate + deleteMany.
#Methods
#aggregate()
aggregate<
T>(pipeline):object
Defined in: packages/memory/src/vector/mongo-atlas.ts:14
#Type Parameters
T
T = Record<string, unknown>
#Parameters
pipeline
Record<string, unknown>[]
#Returns
object
toArray()
toArray():
Promise<T[]>
Returns
Promise<T[]>
#deleteMany()
deleteMany(
filter):Promise<unknown>
Defined in: packages/memory/src/vector/mongo-atlas.ts:13
#Parameters
filter
Record<string, unknown>
#Returns
Promise<unknown>
#insertMany()
insertMany(
docs,options?):Promise<unknown>
Defined in: packages/memory/src/vector/mongo-atlas.ts:12
#Parameters
docs
Record<string, unknown>[]
options?
unknown
#Returns
Promise<unknown>
#Interface: PersonalizationProfile
Defined in: packages/memory/src/personalization.ts:8
Personalization — a persisted profile per subject (user id, account id, device). The agent reads it on every run to condition responses; the runtime updates it when new facts appear.
#Properties
#subjectId
subjectId:
string
Defined in: packages/memory/src/personalization.ts:9
#traits
traits:
Record<string,unknown>
Defined in: packages/memory/src/personalization.ts:11
Human-editable notes, facts, preferences.
#updatedAt
updatedAt:
string
Defined in: packages/memory/src/personalization.ts:13
ISO timestamp of the latest update.
#Interface: PersonalizationStore
Defined in: packages/memory/src/personalization.ts:16
#Properties
#delete?
optionaldelete?: (subjectId) =>Promise<void>
Defined in: packages/memory/src/personalization.ts:20
#Parameters
subjectId
string
#Returns
Promise<void>
#get
get: (
subjectId) =>Promise<PersonalizationProfile|null>
Defined in: packages/memory/src/personalization.ts:17
#Parameters
subjectId
string
#Returns
Promise<PersonalizationProfile | null>
#merge
merge: (
subjectId,traits) =>Promise<PersonalizationProfile>
Defined in: packages/memory/src/personalization.ts:19
#Parameters
subjectId
string
traits
Record<string, unknown>
#Returns
Promise<PersonalizationProfile>
#set
set: (
profile) =>Promise<void>
Defined in: packages/memory/src/personalization.ts:18
#Parameters
profile
#Returns
Promise<void>
#Interface: PgVectorConfig
Defined in: packages/memory/src/vector/pgvector.ts:19
#Properties
#runner
runner:
PgVectorRunner
Defined in: packages/memory/src/vector/pgvector.ts:20
#table?
optionaltable?:string
Defined in: packages/memory/src/vector/pgvector.ts:22
Table name. Default 'agentskit_vectors'.
#topK?
optionaltopK?:number
Defined in: packages/memory/src/vector/pgvector.ts:24
Default topK for search. Default 10.
#Interface: PgVectorRunner
Defined in: packages/memory/src/vector/pgvector.ts:12
pgvector-backed VectorMemory. We accept a minimal async SQL runner
so the caller picks the driver (pg, postgres, @neondatabase/serverless,
@supabase/postgres-js, ...). Expects a table with columns
id text primary key, content text, embedding vector(N),
metadata jsonb.
#Properties
#query
query: <
T>(sql,params) =>Promise<{rows:T[]; }>
Defined in: packages/memory/src/vector/pgvector.ts:13
#Type Parameters
T
T = Record<string, unknown>
#Parameters
sql
string
params
unknown[]
#Returns
Promise<{ rows: T[]; }>
#Interface: PineconeConfig
Defined in: packages/memory/src/vector/pinecone.ts:4
#Extends
#Properties
#apiKey
apiKey:
string
Defined in: packages/memory/src/vector/pinecone.ts:7
#fetch?
optionalfetch?: {(input,init?):Promise<Response>; (input,init?):Promise<Response>; }
Defined in: packages/memory/src/vector/http.ts:4
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
RequestInfo | URL
init?
RequestInit
Returns
Promise<Response>
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
string | Request | URL
init?
RequestInit
Returns
Promise<Response>
#Inherited from
#indexUrl
indexUrl:
string
Defined in: packages/memory/src/vector/pinecone.ts:6
Full index URL, e.g. https://<idx>-<project>.svc.<region>.pinecone.io.
#maxResponseBytes?
optionalmaxResponseBytes?:number
Defined in: packages/memory/src/vector/http.ts:6
#Inherited from
RemoteHttpConfig.maxResponseBytes
#namespace?
optionalnamespace?:string
Defined in: packages/memory/src/vector/pinecone.ts:9
Namespace. Default ''.
#signal?
optionalsignal?:AbortSignal
Defined in: packages/memory/src/vector/http.ts:7
#Inherited from
#timeoutMs?
optionaltimeoutMs?:number
Defined in: packages/memory/src/vector/http.ts:5
#Inherited from
#topK?
optionaltopK?:number
Defined in: packages/memory/src/vector/pinecone.ts:11
Default topK for search. Default 10.
#Interface: QdrantConfig
Defined in: packages/memory/src/vector/qdrant.ts:5
#Extends
#Properties
#apiKey?
optionalapiKey?:string
Defined in: packages/memory/src/vector/qdrant.ts:8
#collection
collection:
string
Defined in: packages/memory/src/vector/qdrant.ts:9
#fetch?
optionalfetch?: {(input,init?):Promise<Response>; (input,init?):Promise<Response>; }
Defined in: packages/memory/src/vector/http.ts:4
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
RequestInfo | URL
init?
RequestInit
Returns
Promise<Response>
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
string | Request | URL
init?
RequestInit
Returns
Promise<Response>
#Inherited from
#maxResponseBytes?
optionalmaxResponseBytes?:number
Defined in: packages/memory/src/vector/http.ts:6
#Inherited from
RemoteHttpConfig.maxResponseBytes
#signal?
optionalsignal?:AbortSignal
Defined in: packages/memory/src/vector/http.ts:7
#Inherited from
#timeoutMs?
optionaltimeoutMs?:number
Defined in: packages/memory/src/vector/http.ts:5
#Inherited from
#topK?
optionaltopK?:number
Defined in: packages/memory/src/vector/qdrant.ts:10
#url
url:
string
Defined in: packages/memory/src/vector/qdrant.ts:7
Base URL, e.g. https://xxx.cluster-qdrant.io.
#Interface: RedisChatMemoryConfig
Defined in: packages/memory/src/redis-chat.ts:12
#Extends
#Properties
#client?
optionalclient?:RedisClientAdapter
Defined in: packages/memory/src/redis-client.ts:19
#Inherited from
#conversationId?
optionalconversationId?:string
Defined in: packages/memory/src/redis-chat.ts:14
#keyPrefix?
optionalkeyPrefix?:string
Defined in: packages/memory/src/redis-chat.ts:13
#url
url:
string
Defined in: packages/memory/src/redis-client.ts:18
#Inherited from
#Interface: RedisClientAdapter
Defined in: packages/memory/src/redis-client.ts:8
Internal Redis client adapter interface.
Abstracts the underlying Redis library so it can be swapped
(e.g., from redis to ioredis) without changing consumers.
#Methods
#call()
call(
command, ...args):Promise<unknown>
Defined in: packages/memory/src/redis-client.ts:14
#Parameters
command
string
args
...(string | number | Buffer<ArrayBufferLike>)[]
#Returns
Promise<unknown>
#del()
del(
key):Promise<void>
Defined in: packages/memory/src/redis-client.ts:11
#Parameters
key
string | string[]
#Returns
Promise<void>
#disconnect()
disconnect():
Promise<void>
Defined in: packages/memory/src/redis-client.ts:13
#Returns
Promise<void>
#get()
get(
key):Promise<string|null>
Defined in: packages/memory/src/redis-client.ts:9
#Parameters
key
string
#Returns
Promise<string | null>
#keys()
keys(
pattern):Promise<string[]>
Defined in: packages/memory/src/redis-client.ts:12
#Parameters
pattern
string
#Returns
Promise<string[]>
#set()
set(
key,value):Promise<void>
Defined in: packages/memory/src/redis-client.ts:10
#Parameters
key
string
value
string
#Returns
Promise<void>
#Interface: RedisConnectionConfig
Defined in: packages/memory/src/redis-client.ts:17
#Extended by
#Properties
#client?
optionalclient?:RedisClientAdapter
Defined in: packages/memory/src/redis-client.ts:19
#url
url:
string
Defined in: packages/memory/src/redis-client.ts:18
#Interface: RedisKvConfig
Defined in: packages/memory/src/kv-store-types.ts:66
#Extends
CommonKvConfig
#Properties
#backend
readonlybackend:"redis"
Defined in: packages/memory/src/kv-store-types.ts:67
#maxMessages?
readonlyoptionalmaxMessages?:number
Defined in: packages/memory/src/kv-store-types.ts:51
#Inherited from
CommonKvConfig.maxMessages
#prefix
readonlyprefix:string
Defined in: packages/memory/src/kv-store-types.ts:69
#ttlSeconds?
readonlyoptionalttlSeconds?:number
Defined in: packages/memory/src/kv-store-types.ts:52
#Inherited from
CommonKvConfig.ttlSeconds
#url
readonlyurl:string
Defined in: packages/memory/src/kv-store-types.ts:68
#Interface: RedisLike
Defined in: packages/memory/src/kv-store-types.ts:91
#Methods
#del()
del(
key):Promise<unknown>
Defined in: packages/memory/src/kv-store-types.ts:94
#Parameters
key
string
#Returns
Promise<unknown>
#get()
get(
key):Promise<string|null>
Defined in: packages/memory/src/kv-store-types.ts:92
#Parameters
key
string
#Returns
Promise<string | null>
#keys()
keys(
pattern):Promise<readonlystring[]>
Defined in: packages/memory/src/kv-store-types.ts:95
#Parameters
pattern
string
#Returns
Promise<readonly string[]>
#set()
set(
key,value,options?):Promise<unknown>
Defined in: packages/memory/src/kv-store-types.ts:93
#Parameters
key
string
value
string
options?
EX?
number
#Returns
Promise<unknown>
#Interface: RedisVectorMemoryConfig
Defined in: packages/memory/src/redis-vector.ts:5
#Extends
#Properties
#client?
optionalclient?:RedisClientAdapter
Defined in: packages/memory/src/redis-client.ts:19
#Inherited from
#dimensions?
optionaldimensions?:number
Defined in: packages/memory/src/redis-vector.ts:8
#indexName?
optionalindexName?:string
Defined in: packages/memory/src/redis-vector.ts:6
#keyPrefix?
optionalkeyPrefix?:string
Defined in: packages/memory/src/redis-vector.ts:7
#url
url:
string
Defined in: packages/memory/src/redis-client.ts:18
#Inherited from
#Interface: RemoteHttpConfig
Defined in: packages/memory/src/vector/http.ts:3
#Extended by
#Properties
#fetch?
optionalfetch?: {(input,init?):Promise<Response>; (input,init?):Promise<Response>; }
Defined in: packages/memory/src/vector/http.ts:4
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
RequestInfo | URL
init?
RequestInit
Returns
Promise<Response>
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
string | Request | URL
init?
RequestInit
Returns
Promise<Response>
#maxResponseBytes?
optionalmaxResponseBytes?:number
Defined in: packages/memory/src/vector/http.ts:6
#signal?
optionalsignal?:AbortSignal
Defined in: packages/memory/src/vector/http.ts:7
#timeoutMs?
optionaltimeoutMs?:number
Defined in: packages/memory/src/vector/http.ts:5
#Interface: SqliteChatMemoryConfig
Defined in: packages/memory/src/sqlite.ts:14
#Properties
#conversationId?
optionalconversationId?:string
Defined in: packages/memory/src/sqlite.ts:16
#path
path:
string
Defined in: packages/memory/src/sqlite.ts:15
#Interface: SqliteKvConfig
Defined in: packages/memory/src/kv-store-types.ts:62
#Extends
CommonKvConfig
#Properties
#backend
readonlybackend:"sqlite"
Defined in: packages/memory/src/kv-store-types.ts:63
#maxMessages?
readonlyoptionalmaxMessages?:number
Defined in: packages/memory/src/kv-store-types.ts:51
#Inherited from
CommonKvConfig.maxMessages
#path
readonlypath:string
Defined in: packages/memory/src/kv-store-types.ts:64
#ttlSeconds?
readonlyoptionalttlSeconds?:number
Defined in: packages/memory/src/kv-store-types.ts:52
#Inherited from
CommonKvConfig.ttlSeconds
#Interface: SqliteLike
Defined in: packages/memory/src/kv-store-types.ts:104
#Methods
#exec()
exec(
sql):void
Defined in: packages/memory/src/kv-store-types.ts:105
#Parameters
sql
string
#Returns
void
#prepare()
prepare(
sql):SqliteStmt
Defined in: packages/memory/src/kv-store-types.ts:106
#Parameters
sql
string
#Returns
#Interface: SqliteStmt
Defined in: packages/memory/src/kv-store-types.ts:98
#Methods
#all()
all(...
params):unknown[]
Defined in: packages/memory/src/kv-store-types.ts:101
#Parameters
params
...unknown[]
#Returns
unknown[]
#get()
get(...
params):unknown
Defined in: packages/memory/src/kv-store-types.ts:100
#Parameters
params
...unknown[]
#Returns
unknown
#run()
run(...
params):void
Defined in: packages/memory/src/kv-store-types.ts:99
#Parameters
params
...unknown[]
#Returns
void
#Interface: SupabaseVectorStoreConfig
Defined in: packages/memory/src/vector/supabase.ts:4
#Properties
#matchFunction?
optionalmatchFunction?:string
Defined in: packages/memory/src/vector/supabase.ts:12
Purpose-specific similarity-search RPC. Default match_agentskit_vectors.
#serviceRoleKey
serviceRoleKey:
string
Defined in: packages/memory/src/vector/supabase.ts:8
Service-role key (server-side only).
#table?
optionaltable?:string
Defined in: packages/memory/src/vector/supabase.ts:10
Table name. Default agentskit_vectors.
#topK?
optionaltopK?:number
Defined in: packages/memory/src/vector/supabase.ts:14
Default topK for search. Default 10.
#url
url:
string
Defined in: packages/memory/src/vector/supabase.ts:6
Supabase project URL, e.g. https://xyz.supabase.co.
#Interface: TursoChatMemoryConfig
Defined in: packages/memory/src/turso.ts:14
#Properties
#authToken?
optionalauthToken?:string
Defined in: packages/memory/src/turso.ts:18
Auth token — required for hosted (libsql://) URLs.
#conversationId?
optionalconversationId?:string
Defined in: packages/memory/src/turso.ts:19
#url
url:
string
Defined in: packages/memory/src/turso.ts:16
libSQL URL — file:..., libsql://..., or http://...
#Interface: UpstashVectorConfig
Defined in: packages/memory/src/vector/upstash.ts:4
#Extends
#Properties
#fetch?
optionalfetch?: {(input,init?):Promise<Response>; (input,init?):Promise<Response>; }
Defined in: packages/memory/src/vector/http.ts:4
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
RequestInfo | URL
init?
RequestInit
Returns
Promise<Response>
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
string | Request | URL
init?
RequestInit
Returns
Promise<Response>
#Inherited from
#maxResponseBytes?
optionalmaxResponseBytes?:number
Defined in: packages/memory/src/vector/http.ts:6
#Inherited from
RemoteHttpConfig.maxResponseBytes
#signal?
optionalsignal?:AbortSignal
Defined in: packages/memory/src/vector/http.ts:7
#Inherited from
#timeoutMs?
optionaltimeoutMs?:number
Defined in: packages/memory/src/vector/http.ts:5
#Inherited from
#token
token:
string
Defined in: packages/memory/src/vector/upstash.ts:6
#topK?
optionaltopK?:number
Defined in: packages/memory/src/vector/upstash.ts:7
#url
url:
string
Defined in: packages/memory/src/vector/upstash.ts:5
#Interface: VectorKvConfig
Defined in: packages/memory/src/kv-store-types.ts:71
#Extends
CommonKvConfig
#Properties
#backend
readonlybackend:"vector"
Defined in: packages/memory/src/kv-store-types.ts:72
#collection
readonlycollection:string
Defined in: packages/memory/src/kv-store-types.ts:74
#maxMessages?
readonlyoptionalmaxMessages?:number
Defined in: packages/memory/src/kv-store-types.ts:51
#Inherited from
CommonKvConfig.maxMessages
#provider
readonlyprovider:string
Defined in: packages/memory/src/kv-store-types.ts:73
#ttlSeconds?
readonlyoptionalttlSeconds?:number
Defined in: packages/memory/src/kv-store-types.ts:52
#Inherited from
CommonKvConfig.ttlSeconds
#Interface: VectorMemoryRedactionOptions
Defined in: packages/memory/src/redaction.ts:51
#Extends
#Properties
#allowedRoles?
optionalallowedRoles?:string[]
Defined in: packages/memory/src/redaction.ts:46
Roles allowed to reveal — required when mode === 'tokenize'.
#Inherited from
ChatMemoryRedactionOptions.allowedRoles
#audit?
optionalaudit?:RedactionAuditSink
Defined in: packages/memory/src/redaction.ts:48
Optional audit sink threaded into the vault tokenize() calls.
#Inherited from
ChatMemoryRedactionOptions.audit
#mode?
optionalmode?:RedactionMode
Defined in: packages/memory/src/redaction.ts:42
#Inherited from
ChatMemoryRedactionOptions.mode
#rules
rules:
PIIRule[]
Defined in: packages/memory/src/redaction.ts:41
Rules to apply. Pass DEFAULT_PII_RULES for the baseline set,
compilePIITaxonomy(json) for a custom JSON taxonomy, or any
hand-rolled PIIRule[]. Same shape as createPIIRedactor.
#Inherited from
ChatMemoryRedactionOptions.rules
#vault?
optionalvault?:RedactionVault
Defined in: packages/memory/src/redaction.ts:44
Required when mode === 'tokenize'.
#Inherited from
ChatMemoryRedactionOptions.vault
#Interface: VectorStore
Defined in: packages/memory/src/vector-store.ts:13
#Methods
#delete()
delete(
ids):Promise<void>
Defined in: packages/memory/src/vector-store.ts:16
#Parameters
ids
string[]
#Returns
Promise<void>
#query()
query(
vector,topK):Promise<VectorStoreResult[]>
Defined in: packages/memory/src/vector-store.ts:15
#Parameters
vector
number[]
topK
number
#Returns
Promise<VectorStoreResult[]>
#upsert()
upsert(
docs):Promise<void>
Defined in: packages/memory/src/vector-store.ts:14
#Parameters
docs
#Returns
Promise<void>
#Interface: VectorStoreDocument
Defined in: packages/memory/src/vector-store.ts:1
#Properties
#id
id:
string
Defined in: packages/memory/src/vector-store.ts:2
#metadata
metadata:
Record<string,unknown>
Defined in: packages/memory/src/vector-store.ts:4
#vector
vector:
number[]
Defined in: packages/memory/src/vector-store.ts:3
#Interface: VectorStoreResult
Defined in: packages/memory/src/vector-store.ts:7
#Properties
#id
id:
string
Defined in: packages/memory/src/vector-store.ts:8
#metadata
metadata:
Record<string,unknown>
Defined in: packages/memory/src/vector-store.ts:10
#score
score:
number
Defined in: packages/memory/src/vector-store.ts:9
#Interface: WeaviateConfig
Defined in: packages/memory/src/vector/weaviate.ts:5
#Extends
#Properties
#apiKey?
optionalapiKey?:string
Defined in: packages/memory/src/vector/weaviate.ts:9
Optional API key (Weaviate Cloud Services).
#className
className:
string
Defined in: packages/memory/src/vector/weaviate.ts:11
Class name in the Weaviate schema.
#fetch?
optionalfetch?: {(input,init?):Promise<Response>; (input,init?):Promise<Response>; }
Defined in: packages/memory/src/vector/http.ts:4
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
RequestInfo | URL
init?
RequestInit
Returns
Promise<Response>
#Call Signature
(
input,init?):Promise<Response>
Parameters
input
string | Request | URL
init?
RequestInit
Returns
Promise<Response>
#Inherited from
#maxResponseBytes?
optionalmaxResponseBytes?:number
Defined in: packages/memory/src/vector/http.ts:6
#Inherited from
RemoteHttpConfig.maxResponseBytes
#signal?
optionalsignal?:AbortSignal
Defined in: packages/memory/src/vector/http.ts:7
#Inherited from
#timeoutMs?
optionaltimeoutMs?:number
Defined in: packages/memory/src/vector/http.ts:5
#Inherited from
#topK?
optionaltopK?:number
Defined in: packages/memory/src/vector/weaviate.ts:12
#url
url:
string
Defined in: packages/memory/src/vector/weaviate.ts:7
Cluster URL, e.g. https://my-cluster.weaviate.network.
#Interface: WebStorageLike
Defined in: packages/memory/src/web-storage.ts:5
#Properties
#getItem
readonlygetItem: (key) =>string|null
Defined in: packages/memory/src/web-storage.ts:6
#Parameters
key
string
#Returns
string | null
#removeItem
readonlyremoveItem: (key) =>void
Defined in: packages/memory/src/web-storage.ts:8
#Parameters
key
string
#Returns
void
#setItem
readonlysetItem: (key,value) =>void
Defined in: packages/memory/src/web-storage.ts:7
#Parameters
key
string
value
string
#Returns
void
#Interface: WebStorageMemoryMigration
Defined in: packages/memory/src/web-storage.ts:11
#Properties
#keys
readonlykeys: readonlystring[]
Defined in: packages/memory/src/web-storage.ts:12
#read
readonlyread: (value,key) => readonlyMessage[] |undefined
Defined in: packages/memory/src/web-storage.ts:13
#Parameters
value
unknown
key
string
#Returns
readonly Message[] | undefined
#Interface: WebStorageMemoryOptions
Defined in: packages/memory/src/web-storage.ts:16
#Properties
#getStorage
readonlygetStorage: () =>WebStorageLike|undefined
Defined in: packages/memory/src/web-storage.ts:18
#Returns
WebStorageLike | undefined
#key
readonlykey:string
Defined in: packages/memory/src/web-storage.ts:17
#maxMessages?
readonlyoptionalmaxMessages?:number
Defined in: packages/memory/src/web-storage.ts:19
#maxRecordBytes?
readonlyoptionalmaxRecordBytes?:number
Defined in: packages/memory/src/web-storage.ts:20
#migration?
readonlyoptionalmigration?:WebStorageMemoryMigration
Defined in: packages/memory/src/web-storage.ts:21