@agent-relay/memory 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/index.d.ts +8 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +8 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/inmemory.d.ts +59 -0
- package/dist/adapters/inmemory.d.ts.map +1 -0
- package/dist/adapters/inmemory.js +195 -0
- package/dist/adapters/inmemory.js.map +1 -0
- package/dist/adapters/supermemory.d.ts +71 -0
- package/dist/adapters/supermemory.d.ts.map +1 -0
- package/dist/adapters/supermemory.js +338 -0
- package/dist/adapters/supermemory.js.map +1 -0
- package/dist/context-compaction.d.ts +156 -0
- package/dist/context-compaction.d.ts.map +1 -0
- package/dist/context-compaction.js +453 -0
- package/dist/context-compaction.js.map +1 -0
- package/dist/factory.d.ts +48 -0
- package/dist/factory.d.ts.map +1 -0
- package/dist/factory.js +143 -0
- package/dist/factory.js.map +1 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +33 -0
- package/dist/index.js.map +1 -0
- package/dist/memory-hooks.d.ts +60 -0
- package/dist/memory-hooks.d.ts.map +1 -0
- package/dist/memory-hooks.js +313 -0
- package/dist/memory-hooks.js.map +1 -0
- package/dist/service.d.ts +49 -0
- package/dist/service.d.ts.map +1 -0
- package/dist/service.js +146 -0
- package/dist/service.js.map +1 -0
- package/dist/types.d.ts +195 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +8 -0
- package/dist/types.js.map +1 -0
- package/package.json +35 -0
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Relay Memory Types
|
|
3
|
+
*
|
|
4
|
+
* Core types for the memory adapter system. Memory adapters provide
|
|
5
|
+
* semantic storage and retrieval of agent learnings and context.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* A memory entry stored in the system
|
|
9
|
+
*/
|
|
10
|
+
export interface MemoryEntry {
|
|
11
|
+
/** Unique identifier for the memory */
|
|
12
|
+
id: string;
|
|
13
|
+
/** The actual content of the memory */
|
|
14
|
+
content: string;
|
|
15
|
+
/** Timestamp when memory was created */
|
|
16
|
+
createdAt: number;
|
|
17
|
+
/** Timestamp when memory was last accessed */
|
|
18
|
+
lastAccessedAt?: number;
|
|
19
|
+
/** Optional metadata tags */
|
|
20
|
+
tags?: string[];
|
|
21
|
+
/** Source of the memory (e.g., 'agent', 'user', 'session') */
|
|
22
|
+
source?: string;
|
|
23
|
+
/** Agent that created the memory */
|
|
24
|
+
agentId?: string;
|
|
25
|
+
/** Project associated with this memory */
|
|
26
|
+
projectId?: string;
|
|
27
|
+
/** Session ID where memory was created */
|
|
28
|
+
sessionId?: string;
|
|
29
|
+
/** Relevance score (when returned from search) */
|
|
30
|
+
score?: number;
|
|
31
|
+
/** Additional structured metadata */
|
|
32
|
+
metadata?: Record<string, unknown>;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Query options for searching memories
|
|
36
|
+
*/
|
|
37
|
+
export interface MemorySearchQuery {
|
|
38
|
+
/** Semantic search query text */
|
|
39
|
+
query: string;
|
|
40
|
+
/** Maximum number of results to return */
|
|
41
|
+
limit?: number;
|
|
42
|
+
/** Minimum relevance score threshold (0-1) */
|
|
43
|
+
minScore?: number;
|
|
44
|
+
/** Filter by tags */
|
|
45
|
+
tags?: string[];
|
|
46
|
+
/** Filter by agent ID */
|
|
47
|
+
agentId?: string;
|
|
48
|
+
/** Filter by project ID */
|
|
49
|
+
projectId?: string;
|
|
50
|
+
/** Filter by memories created after this timestamp */
|
|
51
|
+
since?: number;
|
|
52
|
+
/** Filter by memories created before this timestamp */
|
|
53
|
+
before?: number;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Options for adding a memory
|
|
57
|
+
*/
|
|
58
|
+
export interface AddMemoryOptions {
|
|
59
|
+
/** Optional tags for the memory */
|
|
60
|
+
tags?: string[];
|
|
61
|
+
/** Source of the memory */
|
|
62
|
+
source?: string;
|
|
63
|
+
/** Agent creating the memory */
|
|
64
|
+
agentId?: string;
|
|
65
|
+
/** Project context */
|
|
66
|
+
projectId?: string;
|
|
67
|
+
/** Session context */
|
|
68
|
+
sessionId?: string;
|
|
69
|
+
/** Additional metadata */
|
|
70
|
+
metadata?: Record<string, unknown>;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Result of a memory operation
|
|
74
|
+
*/
|
|
75
|
+
export interface MemoryResult {
|
|
76
|
+
/** Whether the operation succeeded */
|
|
77
|
+
success: boolean;
|
|
78
|
+
/** ID of the affected memory (if applicable) */
|
|
79
|
+
id?: string;
|
|
80
|
+
/** Error message if operation failed */
|
|
81
|
+
error?: string;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Memory adapter interface
|
|
85
|
+
*
|
|
86
|
+
* All memory backends must implement this interface to be used
|
|
87
|
+
* with the agent-relay memory system.
|
|
88
|
+
*/
|
|
89
|
+
export interface MemoryAdapter {
|
|
90
|
+
/** Unique identifier for this adapter type */
|
|
91
|
+
readonly type: string;
|
|
92
|
+
/**
|
|
93
|
+
* Initialize the adapter (connect to backend, etc.)
|
|
94
|
+
*/
|
|
95
|
+
init(): Promise<void>;
|
|
96
|
+
/**
|
|
97
|
+
* Add a new memory to the system
|
|
98
|
+
* @param content - The content to remember
|
|
99
|
+
* @param options - Optional metadata and context
|
|
100
|
+
* @returns Result with the new memory's ID
|
|
101
|
+
*/
|
|
102
|
+
add(content: string, options?: AddMemoryOptions): Promise<MemoryResult>;
|
|
103
|
+
/**
|
|
104
|
+
* Search for relevant memories
|
|
105
|
+
* @param query - Search parameters
|
|
106
|
+
* @returns Array of matching memories, ordered by relevance
|
|
107
|
+
*/
|
|
108
|
+
search(query: MemorySearchQuery): Promise<MemoryEntry[]>;
|
|
109
|
+
/**
|
|
110
|
+
* Get a specific memory by ID
|
|
111
|
+
* @param id - The memory ID
|
|
112
|
+
* @returns The memory entry or null if not found
|
|
113
|
+
*/
|
|
114
|
+
get(id: string): Promise<MemoryEntry | null>;
|
|
115
|
+
/**
|
|
116
|
+
* Delete a memory
|
|
117
|
+
* @param id - The memory ID to delete
|
|
118
|
+
* @returns Result indicating success/failure
|
|
119
|
+
*/
|
|
120
|
+
delete(id: string): Promise<MemoryResult>;
|
|
121
|
+
/**
|
|
122
|
+
* Update an existing memory
|
|
123
|
+
* @param id - The memory ID
|
|
124
|
+
* @param content - New content
|
|
125
|
+
* @param options - Optional updated metadata
|
|
126
|
+
* @returns Result indicating success/failure
|
|
127
|
+
*/
|
|
128
|
+
update?(id: string, content: string, options?: Partial<AddMemoryOptions>): Promise<MemoryResult>;
|
|
129
|
+
/**
|
|
130
|
+
* List recent memories
|
|
131
|
+
* @param options - Filter options
|
|
132
|
+
* @returns Array of recent memories
|
|
133
|
+
*/
|
|
134
|
+
list?(options?: {
|
|
135
|
+
limit?: number;
|
|
136
|
+
agentId?: string;
|
|
137
|
+
projectId?: string;
|
|
138
|
+
}): Promise<MemoryEntry[]>;
|
|
139
|
+
/**
|
|
140
|
+
* Clear all memories matching criteria
|
|
141
|
+
* @param options - Filter for what to clear
|
|
142
|
+
*/
|
|
143
|
+
clear?(options?: {
|
|
144
|
+
agentId?: string;
|
|
145
|
+
projectId?: string;
|
|
146
|
+
before?: number;
|
|
147
|
+
}): Promise<MemoryResult>;
|
|
148
|
+
/**
|
|
149
|
+
* Get statistics about stored memories
|
|
150
|
+
*/
|
|
151
|
+
stats?(): Promise<{
|
|
152
|
+
totalCount: number;
|
|
153
|
+
byAgent?: Record<string, number>;
|
|
154
|
+
byProject?: Record<string, number>;
|
|
155
|
+
}>;
|
|
156
|
+
/**
|
|
157
|
+
* Close the adapter and release resources
|
|
158
|
+
*/
|
|
159
|
+
close?(): Promise<void>;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Configuration for memory adapters
|
|
163
|
+
*/
|
|
164
|
+
export interface MemoryConfig {
|
|
165
|
+
/** Adapter type: 'inmemory', 'supermemory', 'claude', etc. */
|
|
166
|
+
type: string;
|
|
167
|
+
/** API key for external services */
|
|
168
|
+
apiKey?: string;
|
|
169
|
+
/** API endpoint URL (for supermemory, etc.) */
|
|
170
|
+
endpoint?: string;
|
|
171
|
+
/** Default agent ID to use */
|
|
172
|
+
defaultAgentId?: string;
|
|
173
|
+
/** Default project ID to use */
|
|
174
|
+
defaultProjectId?: string;
|
|
175
|
+
/** Additional adapter-specific options */
|
|
176
|
+
options?: Record<string, unknown>;
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Memory service interface for hooks
|
|
180
|
+
*
|
|
181
|
+
* This is a simplified interface exposed to hooks for memory operations.
|
|
182
|
+
*/
|
|
183
|
+
export interface MemoryService {
|
|
184
|
+
/** Add a memory */
|
|
185
|
+
add(content: string, options?: AddMemoryOptions): Promise<MemoryResult>;
|
|
186
|
+
/** Search for memories */
|
|
187
|
+
search(query: string | MemorySearchQuery): Promise<MemoryEntry[]>;
|
|
188
|
+
/** Delete a memory */
|
|
189
|
+
delete(id: string): Promise<MemoryResult>;
|
|
190
|
+
/** List recent memories */
|
|
191
|
+
list(limit?: number): Promise<MemoryEntry[]>;
|
|
192
|
+
/** Check if memory service is available */
|
|
193
|
+
isAvailable(): boolean;
|
|
194
|
+
}
|
|
195
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
package/package.json
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@agent-relay/memory",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Semantic memory storage and retrieval system for agent-relay with multiple backend support",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"import": "./dist/index.js"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"dist",
|
|
16
|
+
"README.md"
|
|
17
|
+
],
|
|
18
|
+
"scripts": {
|
|
19
|
+
"build": "tsc",
|
|
20
|
+
"clean": "rm -rf dist",
|
|
21
|
+
"test": "vitest run",
|
|
22
|
+
"test:watch": "vitest"
|
|
23
|
+
},
|
|
24
|
+
"dependencies": {
|
|
25
|
+
"@agent-relay/hooks": "^0.1.0"
|
|
26
|
+
},
|
|
27
|
+
"devDependencies": {
|
|
28
|
+
"@types/node": "^22.19.3",
|
|
29
|
+
"typescript": "^5.9.3",
|
|
30
|
+
"vitest": "^3.2.4"
|
|
31
|
+
},
|
|
32
|
+
"publishConfig": {
|
|
33
|
+
"access": "public"
|
|
34
|
+
}
|
|
35
|
+
}
|