@cognee/cognee-openclaw 2026.2.4 → 2026.3.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/README.md +17 -5
- package/dist/index.d.ts +133 -0
- package/dist/index.js +279 -77
- package/dist/index.js.map +1 -1
- package/openclaw.plugin.json +42 -1
- package/package.json +19 -3
package/README.md
CHANGED
|
@@ -5,7 +5,7 @@ OpenClaw plugin that adds Cognee-backed memory with automatic recall and indexin
|
|
|
5
5
|
## Features
|
|
6
6
|
|
|
7
7
|
- **Auto-recall**: Before each agent run, searches Cognee for relevant memories and injects them as context
|
|
8
|
-
- **Auto-index**: On startup and after each agent run, syncs memory markdown files to Cognee (add new, update changed, skip unchanged)
|
|
8
|
+
- **Auto-index**: On startup and after each agent run, syncs memory markdown files to Cognee (add new, update changed, delete removed, skip unchanged)
|
|
9
9
|
- **CLI commands**: `openclaw cognee index` to manually sync, `openclaw cognee status` to check state
|
|
10
10
|
- **Configurable**: Search type, max results, score filtering, token limits, and more
|
|
11
11
|
|
|
@@ -33,13 +33,14 @@ Enable the plugin in your OpenClaw config (`~/.openclaw/config.yaml` or project
|
|
|
33
33
|
```yaml
|
|
34
34
|
plugins:
|
|
35
35
|
entries:
|
|
36
|
-
|
|
36
|
+
cognee-openclaw:
|
|
37
37
|
enabled: true
|
|
38
38
|
config:
|
|
39
39
|
baseUrl: "http://localhost:8000"
|
|
40
40
|
apiKey: "${COGNEE_API_KEY}"
|
|
41
41
|
datasetName: "my-project"
|
|
42
42
|
searchType: "GRAPH_COMPLETION"
|
|
43
|
+
deleteMode: "hard"
|
|
43
44
|
maxResults: 6
|
|
44
45
|
autoRecall: true
|
|
45
46
|
autoIndex: true
|
|
@@ -65,18 +66,21 @@ export COGNEE_API_KEY="your-key-here"
|
|
|
65
66
|
| `autoRecall` | boolean | `true` | Inject memories before agent runs |
|
|
66
67
|
| `autoIndex` | boolean | `true` | Sync memory files on startup and after agent runs |
|
|
67
68
|
| `autoCognify` | boolean | `true` | Run cognify after new memories are added |
|
|
69
|
+
| `deleteMode` | string | `soft` | Delete mode: `soft` removes raw data only, `hard` also removes degree-one graph nodes |
|
|
70
|
+
| `searchPrompt` | string | `""` | System prompt sent to Cognee to guide search query processing |
|
|
68
71
|
| `requestTimeoutMs` | number | `60000` | HTTP timeout for Cognee requests |
|
|
72
|
+
| `ingestionTimeoutMs` | number | `300000` | HTTP timeout for add/update (ingestion) requests, which are typically slower |
|
|
69
73
|
|
|
70
74
|
## How It Works
|
|
71
75
|
|
|
72
|
-
1. **On startup**: Scans `memory/` directory for markdown files and syncs to Cognee (add new, update changed, skip unchanged)
|
|
76
|
+
1. **On startup**: Scans `memory/` directory for markdown files and syncs to Cognee (add new, update changed, delete removed, skip unchanged)
|
|
73
77
|
2. **Before agent start**: Searches Cognee for memories relevant to the prompt and prepends as `<cognee_memories>` context
|
|
74
|
-
3. **After agent end**: Re-scans memory files and syncs any changes the agent made
|
|
78
|
+
3. **After agent end**: Re-scans memory files and syncs any changes the agent made (including deletions)
|
|
75
79
|
4. **State tracking**:
|
|
76
80
|
- `~/.openclaw/memory/cognee/datasets.json` — dataset ID mapping
|
|
77
81
|
- `~/.openclaw/memory/cognee/sync-index.json` — per-file hash and Cognee data IDs
|
|
78
82
|
|
|
79
|
-
Memory files detected at: `MEMORY.md
|
|
83
|
+
Memory files detected at: `MEMORY.md` and `memory/**/*.md` (recursive)
|
|
80
84
|
|
|
81
85
|
## CLI Commands
|
|
82
86
|
|
|
@@ -103,3 +107,11 @@ For live rebuilds during development:
|
|
|
103
107
|
```bash
|
|
104
108
|
npm run dev
|
|
105
109
|
```
|
|
110
|
+
|
|
111
|
+
## Testing
|
|
112
|
+
|
|
113
|
+
Run the test suite to verify functionality:
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
npm test
|
|
117
|
+
```
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,135 @@
|
|
|
1
1
|
import type { OpenClawPluginApi } from "openclaw/plugin-sdk";
|
|
2
|
+
type CogneeSearchType = "GRAPH_COMPLETION" | "CHUNKS" | "SUMMARIES";
|
|
3
|
+
type CogneeDeleteMode = "soft" | "hard";
|
|
4
|
+
type CogneePluginConfig = {
|
|
5
|
+
baseUrl?: string;
|
|
6
|
+
apiKey?: string;
|
|
7
|
+
username?: string;
|
|
8
|
+
password?: string;
|
|
9
|
+
datasetName?: string;
|
|
10
|
+
searchType?: CogneeSearchType;
|
|
11
|
+
searchPrompt?: string;
|
|
12
|
+
deleteMode?: CogneeDeleteMode;
|
|
13
|
+
maxResults?: number;
|
|
14
|
+
minScore?: number;
|
|
15
|
+
maxTokens?: number;
|
|
16
|
+
autoRecall?: boolean;
|
|
17
|
+
autoIndex?: boolean;
|
|
18
|
+
autoCognify?: boolean;
|
|
19
|
+
requestTimeoutMs?: number;
|
|
20
|
+
ingestionTimeoutMs?: number;
|
|
21
|
+
};
|
|
22
|
+
type CogneeSearchResult = {
|
|
23
|
+
id: string;
|
|
24
|
+
text: string;
|
|
25
|
+
score: number;
|
|
26
|
+
metadata?: Record<string, unknown>;
|
|
27
|
+
};
|
|
28
|
+
type SyncIndex = {
|
|
29
|
+
datasetId?: string;
|
|
30
|
+
datasetName?: string;
|
|
31
|
+
entries: Record<string, {
|
|
32
|
+
hash: string;
|
|
33
|
+
dataId?: string;
|
|
34
|
+
}>;
|
|
35
|
+
};
|
|
36
|
+
type MemoryFile = {
|
|
37
|
+
/** Relative path from workspace root (e.g. "MEMORY.md", "memory/tools.md") */
|
|
38
|
+
path: string;
|
|
39
|
+
/** Absolute path on disk */
|
|
40
|
+
absPath: string;
|
|
41
|
+
/** File content */
|
|
42
|
+
content: string;
|
|
43
|
+
/** SHA-256 hex hash of content */
|
|
44
|
+
hash: string;
|
|
45
|
+
};
|
|
46
|
+
type SyncResult = {
|
|
47
|
+
added: number;
|
|
48
|
+
updated: number;
|
|
49
|
+
skipped: number;
|
|
50
|
+
errors: number;
|
|
51
|
+
deleted: number;
|
|
52
|
+
};
|
|
53
|
+
declare class CogneeClient {
|
|
54
|
+
private readonly baseUrl;
|
|
55
|
+
private readonly apiKey?;
|
|
56
|
+
private readonly username?;
|
|
57
|
+
private readonly password?;
|
|
58
|
+
private readonly timeoutMs;
|
|
59
|
+
private readonly ingestionTimeoutMs;
|
|
60
|
+
private authToken;
|
|
61
|
+
private loginPromise;
|
|
62
|
+
constructor(baseUrl: string, apiKey?: string, username?: string, password?: string, timeoutMs?: number, ingestionTimeoutMs?: number);
|
|
63
|
+
/**
|
|
64
|
+
* Authenticate with Cognee via /api/v1/auth/login.
|
|
65
|
+
* Falls back to default local dev credentials when none are configured.
|
|
66
|
+
*/
|
|
67
|
+
login(): Promise<void>;
|
|
68
|
+
/**
|
|
69
|
+
* Ensure the client is authenticated (login once, reuse token).
|
|
70
|
+
*/
|
|
71
|
+
ensureAuth(): Promise<void>;
|
|
72
|
+
private buildHeaders;
|
|
73
|
+
private fetchJson;
|
|
74
|
+
add(params: {
|
|
75
|
+
data: string;
|
|
76
|
+
datasetName: string;
|
|
77
|
+
datasetId?: string;
|
|
78
|
+
}): Promise<{
|
|
79
|
+
datasetId: string;
|
|
80
|
+
datasetName: string;
|
|
81
|
+
dataId?: string;
|
|
82
|
+
}>;
|
|
83
|
+
update(params: {
|
|
84
|
+
dataId: string;
|
|
85
|
+
datasetId: string;
|
|
86
|
+
data: string;
|
|
87
|
+
}): Promise<{
|
|
88
|
+
datasetId: string;
|
|
89
|
+
datasetName: string;
|
|
90
|
+
dataId?: string;
|
|
91
|
+
}>;
|
|
92
|
+
/**
|
|
93
|
+
* Query the dataset's data items and find a matching entry by filename.
|
|
94
|
+
* Used as fallback when add/update responses don't include a usable data_id.
|
|
95
|
+
*/
|
|
96
|
+
resolveDataIdFromDataset(datasetId: string, fileName: string): Promise<string | undefined>;
|
|
97
|
+
delete(params: {
|
|
98
|
+
dataId: string;
|
|
99
|
+
datasetId: string;
|
|
100
|
+
mode?: CogneeDeleteMode;
|
|
101
|
+
}): Promise<{
|
|
102
|
+
datasetId: string;
|
|
103
|
+
dataId: string;
|
|
104
|
+
deleted: boolean;
|
|
105
|
+
error?: string;
|
|
106
|
+
}>;
|
|
107
|
+
cognify(params?: {
|
|
108
|
+
datasetIds?: string[];
|
|
109
|
+
}): Promise<{
|
|
110
|
+
status?: string;
|
|
111
|
+
}>;
|
|
112
|
+
search(params: {
|
|
113
|
+
queryText: string;
|
|
114
|
+
searchPrompt: string;
|
|
115
|
+
searchType: CogneeSearchType;
|
|
116
|
+
datasetIds: string[];
|
|
117
|
+
maxTokens: number;
|
|
118
|
+
}): Promise<CogneeSearchResult[]>;
|
|
119
|
+
/**
|
|
120
|
+
* Normalize Cognee search response to consistent format.
|
|
121
|
+
* Cognee returns a direct array of strings: ["answer text here"]
|
|
122
|
+
* We convert to: [{ id, text, score }]
|
|
123
|
+
*/
|
|
124
|
+
private normalizeSearchResults;
|
|
125
|
+
private extractDataId;
|
|
126
|
+
}
|
|
127
|
+
declare function syncFiles(client: CogneeClient, changedFiles: MemoryFile[], fullFiles: MemoryFile[], syncIndex: SyncIndex, cfg: Required<CogneePluginConfig>, logger: {
|
|
128
|
+
info?: (msg: string) => void;
|
|
129
|
+
warn?: (msg: string) => void;
|
|
130
|
+
}): Promise<SyncResult & {
|
|
131
|
+
datasetId?: string;
|
|
132
|
+
}>;
|
|
2
133
|
declare const memoryCogneePlugin: {
|
|
3
134
|
id: string;
|
|
4
135
|
name: string;
|
|
@@ -7,3 +138,5 @@ declare const memoryCogneePlugin: {
|
|
|
7
138
|
register(api: OpenClawPluginApi): void;
|
|
8
139
|
};
|
|
9
140
|
export default memoryCogneePlugin;
|
|
141
|
+
export { CogneeClient, syncFiles };
|
|
142
|
+
export type { CogneeDeleteMode, CogneePluginConfig, MemoryFile, SyncIndex, SyncResult };
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import fs from "node:fs
|
|
1
|
+
import { promises as fs } from "node:fs";
|
|
2
2
|
import { createHash } from "node:crypto";
|
|
3
3
|
import { homedir } from "node:os";
|
|
4
4
|
import { dirname, join, relative, resolve } from "node:path";
|
|
@@ -8,6 +8,8 @@ import { dirname, join, relative, resolve } from "node:path";
|
|
|
8
8
|
const DEFAULT_BASE_URL = "http://localhost:8000";
|
|
9
9
|
const DEFAULT_DATASET_NAME = "openclaw";
|
|
10
10
|
const DEFAULT_SEARCH_TYPE = "GRAPH_COMPLETION";
|
|
11
|
+
const DEFAULT_SEARCH_PROMPT = "";
|
|
12
|
+
const DEFAULT_DELETE_MODE = "soft";
|
|
11
13
|
const DEFAULT_MAX_RESULTS = 6;
|
|
12
14
|
const DEFAULT_MIN_SCORE = 0;
|
|
13
15
|
const DEFAULT_MAX_TOKENS = 512;
|
|
@@ -15,10 +17,13 @@ const DEFAULT_AUTO_RECALL = true;
|
|
|
15
17
|
const DEFAULT_AUTO_INDEX = true;
|
|
16
18
|
const DEFAULT_AUTO_COGNIFY = true;
|
|
17
19
|
const DEFAULT_REQUEST_TIMEOUT_MS = 60_000;
|
|
20
|
+
const DEFAULT_INGESTION_TIMEOUT_MS = 300_000; // 5 min for add/update (ingestion is slow)
|
|
21
|
+
const MAX_RETRIES = 2;
|
|
22
|
+
const RETRY_BASE_DELAY_MS = 3_000;
|
|
18
23
|
const STATE_PATH = join(homedir(), ".openclaw", "memory", "cognee", "datasets.json");
|
|
19
24
|
const SYNC_INDEX_PATH = join(homedir(), ".openclaw", "memory", "cognee", "sync-index.json");
|
|
20
25
|
/** Glob patterns for memory files, relative to workspace root. */
|
|
21
|
-
const MEMORY_FILE_PATTERNS = ["MEMORY.md", "memory
|
|
26
|
+
const MEMORY_FILE_PATTERNS = ["MEMORY.md", "memory"];
|
|
22
27
|
// ---------------------------------------------------------------------------
|
|
23
28
|
// Helpers
|
|
24
29
|
// ---------------------------------------------------------------------------
|
|
@@ -41,6 +46,8 @@ function resolveConfig(rawConfig) {
|
|
|
41
46
|
const baseUrl = raw.baseUrl?.trim() || DEFAULT_BASE_URL;
|
|
42
47
|
const datasetName = raw.datasetName?.trim() || DEFAULT_DATASET_NAME;
|
|
43
48
|
const searchType = raw.searchType || DEFAULT_SEARCH_TYPE;
|
|
49
|
+
const searchPrompt = raw.searchPrompt || DEFAULT_SEARCH_PROMPT;
|
|
50
|
+
const deleteMode = raw.deleteMode === "hard" ? "hard" : DEFAULT_DELETE_MODE;
|
|
44
51
|
const maxResults = typeof raw.maxResults === "number" ? raw.maxResults : DEFAULT_MAX_RESULTS;
|
|
45
52
|
const minScore = typeof raw.minScore === "number" ? raw.minScore : DEFAULT_MIN_SCORE;
|
|
46
53
|
const maxTokens = typeof raw.maxTokens === "number" ? raw.maxTokens : DEFAULT_MAX_TOKENS;
|
|
@@ -48,14 +55,21 @@ function resolveConfig(rawConfig) {
|
|
|
48
55
|
const autoIndex = typeof raw.autoIndex === "boolean" ? raw.autoIndex : DEFAULT_AUTO_INDEX;
|
|
49
56
|
const autoCognify = typeof raw.autoCognify === "boolean" ? raw.autoCognify : DEFAULT_AUTO_COGNIFY;
|
|
50
57
|
const requestTimeoutMs = typeof raw.requestTimeoutMs === "number" ? raw.requestTimeoutMs : DEFAULT_REQUEST_TIMEOUT_MS;
|
|
58
|
+
const ingestionTimeoutMs = typeof raw.ingestionTimeoutMs === "number" ? raw.ingestionTimeoutMs : DEFAULT_INGESTION_TIMEOUT_MS;
|
|
51
59
|
const apiKey = raw.apiKey && raw.apiKey.length > 0
|
|
52
60
|
? resolveEnvVars(raw.apiKey)
|
|
53
61
|
: process.env.COGNEE_API_KEY || "";
|
|
62
|
+
const username = raw.username?.trim() || process.env.COGNEE_USERNAME || "";
|
|
63
|
+
const password = raw.password?.trim() || process.env.COGNEE_PASSWORD || "";
|
|
54
64
|
return {
|
|
55
65
|
baseUrl,
|
|
56
66
|
apiKey,
|
|
67
|
+
username,
|
|
68
|
+
password,
|
|
57
69
|
datasetName,
|
|
58
70
|
searchType,
|
|
71
|
+
searchPrompt,
|
|
72
|
+
deleteMode,
|
|
59
73
|
maxResults,
|
|
60
74
|
minScore,
|
|
61
75
|
maxTokens,
|
|
@@ -63,6 +77,7 @@ function resolveConfig(rawConfig) {
|
|
|
63
77
|
autoIndex,
|
|
64
78
|
autoCognify,
|
|
65
79
|
requestTimeoutMs,
|
|
80
|
+
ingestionTimeoutMs,
|
|
66
81
|
};
|
|
67
82
|
}
|
|
68
83
|
// ---------------------------------------------------------------------------
|
|
@@ -127,7 +142,6 @@ async function collectMemoryFiles(workspaceDir) {
|
|
|
127
142
|
});
|
|
128
143
|
}
|
|
129
144
|
else if (stat.isDirectory()) {
|
|
130
|
-
// Recursively scan the memory/ directory for .md files
|
|
131
145
|
const entries = await scanDir(target, workspaceDir);
|
|
132
146
|
files.push(...entries);
|
|
133
147
|
}
|
|
@@ -136,7 +150,6 @@ async function collectMemoryFiles(workspaceDir) {
|
|
|
136
150
|
if (error.code !== "ENOENT") {
|
|
137
151
|
throw error;
|
|
138
152
|
}
|
|
139
|
-
// File/dir doesn't exist — skip silently
|
|
140
153
|
}
|
|
141
154
|
}
|
|
142
155
|
return files;
|
|
@@ -168,53 +181,151 @@ async function scanDir(dir, workspaceDir) {
|
|
|
168
181
|
class CogneeClient {
|
|
169
182
|
baseUrl;
|
|
170
183
|
apiKey;
|
|
184
|
+
username;
|
|
185
|
+
password;
|
|
171
186
|
timeoutMs;
|
|
172
|
-
|
|
187
|
+
ingestionTimeoutMs;
|
|
188
|
+
authToken;
|
|
189
|
+
loginPromise;
|
|
190
|
+
constructor(baseUrl, apiKey, username, password, timeoutMs = 30_000, ingestionTimeoutMs = DEFAULT_INGESTION_TIMEOUT_MS) {
|
|
173
191
|
this.baseUrl = baseUrl;
|
|
174
192
|
this.apiKey = apiKey;
|
|
193
|
+
this.username = username;
|
|
194
|
+
this.password = password;
|
|
175
195
|
this.timeoutMs = timeoutMs;
|
|
196
|
+
this.ingestionTimeoutMs = ingestionTimeoutMs;
|
|
176
197
|
}
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
}
|
|
185
|
-
async fetchJson(path, init, timeoutMs = this.timeoutMs) {
|
|
198
|
+
/**
|
|
199
|
+
* Authenticate with Cognee via /api/v1/auth/login.
|
|
200
|
+
* Falls back to default local dev credentials when none are configured.
|
|
201
|
+
*/
|
|
202
|
+
async login() {
|
|
203
|
+
const user = this.username || "default_user@example.com";
|
|
204
|
+
const pass = this.password || "default_password";
|
|
186
205
|
const controller = new AbortController();
|
|
187
|
-
const timeout = setTimeout(() => controller.abort(), timeoutMs);
|
|
206
|
+
const timeout = setTimeout(() => controller.abort(), this.timeoutMs);
|
|
188
207
|
try {
|
|
189
|
-
const response = await fetch(`${this.baseUrl}
|
|
190
|
-
|
|
208
|
+
const response = await fetch(`${this.baseUrl}/api/v1/auth/login`, {
|
|
209
|
+
method: "POST",
|
|
210
|
+
headers: { "Content-Type": "application/x-www-form-urlencoded" },
|
|
211
|
+
body: new URLSearchParams({ username: user, password: pass }),
|
|
191
212
|
signal: controller.signal,
|
|
192
213
|
});
|
|
193
214
|
if (!response.ok) {
|
|
194
215
|
const errorText = await response.text();
|
|
195
|
-
throw new Error(`Cognee
|
|
216
|
+
throw new Error(`Cognee login failed (${response.status}): ${errorText}`);
|
|
217
|
+
}
|
|
218
|
+
const data = (await response.json());
|
|
219
|
+
this.authToken = data.access_token ?? data.token;
|
|
220
|
+
if (!this.authToken) {
|
|
221
|
+
throw new Error("Cognee login succeeded but no token in response");
|
|
196
222
|
}
|
|
197
|
-
return (await response.json());
|
|
198
223
|
}
|
|
199
224
|
finally {
|
|
200
225
|
clearTimeout(timeout);
|
|
201
226
|
}
|
|
202
227
|
}
|
|
228
|
+
/**
|
|
229
|
+
* Ensure the client is authenticated (login once, reuse token).
|
|
230
|
+
*/
|
|
231
|
+
async ensureAuth() {
|
|
232
|
+
if (this.authToken || this.apiKey)
|
|
233
|
+
return;
|
|
234
|
+
if (!this.loginPromise) {
|
|
235
|
+
this.loginPromise = this.login().catch((err) => {
|
|
236
|
+
this.loginPromise = undefined;
|
|
237
|
+
throw err;
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
return this.loginPromise;
|
|
241
|
+
}
|
|
242
|
+
buildHeaders() {
|
|
243
|
+
if (this.apiKey) {
|
|
244
|
+
return {
|
|
245
|
+
Authorization: `Bearer ${this.apiKey}`,
|
|
246
|
+
"X-Api-Key": this.apiKey,
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
if (this.authToken) {
|
|
250
|
+
return { Authorization: `Bearer ${this.authToken}` };
|
|
251
|
+
}
|
|
252
|
+
return {};
|
|
253
|
+
}
|
|
254
|
+
async fetchJson(path, init, timeoutMs = this.timeoutMs, retries = MAX_RETRIES) {
|
|
255
|
+
await this.ensureAuth();
|
|
256
|
+
let lastError;
|
|
257
|
+
for (let attempt = 0; attempt <= retries; attempt++) {
|
|
258
|
+
if (attempt > 0) {
|
|
259
|
+
const delay = RETRY_BASE_DELAY_MS * 2 ** (attempt - 1);
|
|
260
|
+
await new Promise((r) => setTimeout(r, delay));
|
|
261
|
+
}
|
|
262
|
+
const controller = new AbortController();
|
|
263
|
+
const timer = setTimeout(() => controller.abort(), timeoutMs);
|
|
264
|
+
try {
|
|
265
|
+
const response = await fetch(`${this.baseUrl}${path}`, {
|
|
266
|
+
...init,
|
|
267
|
+
headers: { ...this.buildHeaders(), ...init.headers },
|
|
268
|
+
signal: controller.signal,
|
|
269
|
+
});
|
|
270
|
+
// On 401, try re-login once and retry
|
|
271
|
+
if (response.status === 401 && !this.apiKey) {
|
|
272
|
+
clearTimeout(timer);
|
|
273
|
+
this.authToken = undefined;
|
|
274
|
+
this.loginPromise = undefined;
|
|
275
|
+
await this.ensureAuth();
|
|
276
|
+
const retryController = new AbortController();
|
|
277
|
+
const retryTimeout = setTimeout(() => retryController.abort(), timeoutMs);
|
|
278
|
+
try {
|
|
279
|
+
const retryResponse = await fetch(`${this.baseUrl}${path}`, {
|
|
280
|
+
...init,
|
|
281
|
+
headers: { ...this.buildHeaders(), ...init.headers },
|
|
282
|
+
signal: retryController.signal,
|
|
283
|
+
});
|
|
284
|
+
if (!retryResponse.ok) {
|
|
285
|
+
const errorText = await retryResponse.text();
|
|
286
|
+
throw new Error(`Cognee request failed (${retryResponse.status}): ${errorText}`);
|
|
287
|
+
}
|
|
288
|
+
return (await retryResponse.json());
|
|
289
|
+
}
|
|
290
|
+
finally {
|
|
291
|
+
clearTimeout(retryTimeout);
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
if (!response.ok) {
|
|
295
|
+
const errorText = await response.text();
|
|
296
|
+
throw new Error(`Cognee request failed (${response.status}): ${errorText}`);
|
|
297
|
+
}
|
|
298
|
+
return (await response.json());
|
|
299
|
+
}
|
|
300
|
+
catch (error) {
|
|
301
|
+
clearTimeout(timer);
|
|
302
|
+
const isTimeout = error instanceof DOMException ||
|
|
303
|
+
(error instanceof Error && error.name === "AbortError");
|
|
304
|
+
if (isTimeout && attempt < retries) {
|
|
305
|
+
lastError = error;
|
|
306
|
+
continue;
|
|
307
|
+
}
|
|
308
|
+
throw error;
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
throw lastError;
|
|
312
|
+
}
|
|
203
313
|
async add(params) {
|
|
204
314
|
const formData = new FormData();
|
|
205
|
-
|
|
315
|
+
const hash8 = createHash("sha256").update(params.data).digest("hex").slice(0, 8);
|
|
316
|
+
const fileName = `openclaw-memory-${hash8}.txt`;
|
|
317
|
+
formData.append("data", new Blob([params.data], { type: "text/plain" }), fileName);
|
|
206
318
|
formData.append("datasetName", params.datasetName);
|
|
207
319
|
if (params.datasetId) {
|
|
208
320
|
formData.append("datasetId", params.datasetId);
|
|
209
321
|
}
|
|
210
|
-
const data = await this.fetchJson("/api/v1/add", {
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
}
|
|
215
|
-
const dataId = this.extractDataId(data.data_id ?? data.data_ingestion_info);
|
|
322
|
+
const data = await this.fetchJson("/api/v1/add", { method: "POST", body: formData }, this.ingestionTimeoutMs);
|
|
323
|
+
let dataId = this.extractDataId(data.data_id ?? data.data_ingestion_info);
|
|
324
|
+
if (!dataId && data.dataset_id) {
|
|
325
|
+
dataId = await this.resolveDataIdFromDataset(data.dataset_id, fileName);
|
|
326
|
+
}
|
|
216
327
|
if (!dataId) {
|
|
217
|
-
console.warn("
|
|
328
|
+
console.warn("cognee-openclaw: add response missing data_id and dataset lookup failed", JSON.stringify({
|
|
218
329
|
keys: Object.keys(data),
|
|
219
330
|
data_id: data.data_id ?? null,
|
|
220
331
|
data_ingestion_info: data.data_ingestion_info ?? null,
|
|
@@ -232,40 +343,80 @@ class CogneeClient {
|
|
|
232
343
|
dataset_id: params.datasetId,
|
|
233
344
|
});
|
|
234
345
|
const formData = new FormData();
|
|
235
|
-
|
|
236
|
-
const
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
346
|
+
const hash8 = createHash("sha256").update(params.data).digest("hex").slice(0, 8);
|
|
347
|
+
const fileName = `openclaw-memory-${hash8}.txt`;
|
|
348
|
+
formData.append("data", new Blob([params.data], { type: "text/plain" }), fileName);
|
|
349
|
+
const data = await this.fetchJson(`/api/v1/update?${query.toString()}`, { method: "PATCH", body: formData }, this.ingestionTimeoutMs);
|
|
350
|
+
let dataId = this.extractDataId(data.data_id ?? data.data_ingestion_info);
|
|
351
|
+
if (!dataId) {
|
|
352
|
+
dataId = await this.resolveDataIdFromDataset(params.datasetId, fileName);
|
|
353
|
+
}
|
|
241
354
|
return {
|
|
242
355
|
datasetId: data.dataset_id,
|
|
243
356
|
datasetName: data.dataset_name,
|
|
244
|
-
dataId
|
|
357
|
+
dataId,
|
|
245
358
|
};
|
|
246
359
|
}
|
|
360
|
+
/**
|
|
361
|
+
* Query the dataset's data items and find a matching entry by filename.
|
|
362
|
+
* Used as fallback when add/update responses don't include a usable data_id.
|
|
363
|
+
*/
|
|
364
|
+
async resolveDataIdFromDataset(datasetId, fileName) {
|
|
365
|
+
try {
|
|
366
|
+
const items = await this.fetchJson(`/api/v1/datasets/${datasetId}/data`, {
|
|
367
|
+
method: "GET",
|
|
368
|
+
});
|
|
369
|
+
if (!Array.isArray(items))
|
|
370
|
+
return undefined;
|
|
371
|
+
const match = items.find((item) => item.name === fileName.replace(/\.txt$/, ""));
|
|
372
|
+
return match?.id;
|
|
373
|
+
}
|
|
374
|
+
catch {
|
|
375
|
+
return undefined;
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
async delete(params) {
|
|
379
|
+
try {
|
|
380
|
+
const query = new URLSearchParams({
|
|
381
|
+
data_id: params.dataId,
|
|
382
|
+
dataset_id: params.datasetId,
|
|
383
|
+
mode: params.mode ?? "soft",
|
|
384
|
+
});
|
|
385
|
+
await this.fetchJson(`/api/v1/delete?${query.toString()}`, {
|
|
386
|
+
method: "DELETE",
|
|
387
|
+
});
|
|
388
|
+
return {
|
|
389
|
+
datasetId: params.datasetId,
|
|
390
|
+
dataId: params.dataId,
|
|
391
|
+
deleted: true,
|
|
392
|
+
};
|
|
393
|
+
}
|
|
394
|
+
catch (error) {
|
|
395
|
+
return {
|
|
396
|
+
datasetId: params.datasetId,
|
|
397
|
+
dataId: params.dataId,
|
|
398
|
+
deleted: false,
|
|
399
|
+
error: error instanceof Error ? error.message : String(error),
|
|
400
|
+
};
|
|
401
|
+
}
|
|
402
|
+
}
|
|
247
403
|
async cognify(params = {}) {
|
|
248
404
|
return this.fetchJson("/api/v1/cognify", {
|
|
249
405
|
method: "POST",
|
|
250
|
-
headers: {
|
|
251
|
-
|
|
252
|
-
...this.buildHeaders(),
|
|
253
|
-
},
|
|
254
|
-
body: JSON.stringify({ datasetIds: params.datasetIds }),
|
|
406
|
+
headers: { "Content-Type": "application/json" },
|
|
407
|
+
body: JSON.stringify({ datasetIds: params.datasetIds, runInBackground: true }),
|
|
255
408
|
});
|
|
256
409
|
}
|
|
257
410
|
async search(params) {
|
|
258
411
|
const data = await this.fetchJson("/api/v1/search", {
|
|
259
412
|
method: "POST",
|
|
260
|
-
headers: {
|
|
261
|
-
"Content-Type": "application/json",
|
|
262
|
-
...this.buildHeaders(),
|
|
263
|
-
},
|
|
413
|
+
headers: { "Content-Type": "application/json" },
|
|
264
414
|
body: JSON.stringify({
|
|
265
415
|
query: params.queryText,
|
|
266
416
|
searchType: params.searchType,
|
|
267
417
|
datasetIds: params.datasetIds,
|
|
268
418
|
max_tokens: params.maxTokens,
|
|
419
|
+
...(params.searchPrompt ? { systemPrompt: params.searchPrompt } : {}),
|
|
269
420
|
}),
|
|
270
421
|
});
|
|
271
422
|
return this.normalizeSearchResults(data);
|
|
@@ -329,14 +480,15 @@ class CogneeClient {
|
|
|
329
480
|
// - Changed file with dataId → update (no re-cognify)
|
|
330
481
|
// - Changed file without dataId → add + cognify
|
|
331
482
|
// - Unchanged file → skip
|
|
483
|
+
// - Deleted file (in index, not on disk) → delete + cognify
|
|
332
484
|
//
|
|
333
|
-
//
|
|
485
|
+
// Based on clawdbot cognee-provider.ts syncFiles(), extended with delete support.
|
|
334
486
|
// ---------------------------------------------------------------------------
|
|
335
|
-
async function syncFiles(client,
|
|
336
|
-
const result = { added: 0, updated: 0, skipped: 0, errors: 0 };
|
|
487
|
+
async function syncFiles(client, changedFiles, fullFiles, syncIndex, cfg, logger) {
|
|
488
|
+
const result = { added: 0, updated: 0, skipped: 0, errors: 0, deleted: 0 };
|
|
337
489
|
let datasetId = syncIndex.datasetId;
|
|
338
490
|
let needsCognify = false;
|
|
339
|
-
for (const file of
|
|
491
|
+
for (const file of changedFiles) {
|
|
340
492
|
const existing = syncIndex.entries[file.path];
|
|
341
493
|
// Skip unchanged files
|
|
342
494
|
if (existing && existing.hash === file.hash) {
|
|
@@ -348,23 +500,27 @@ async function syncFiles(client, files, syncIndex, cfg, logger) {
|
|
|
348
500
|
// Changed file with prior dataId → try update first
|
|
349
501
|
if (existing?.dataId && datasetId) {
|
|
350
502
|
try {
|
|
351
|
-
await client.update({
|
|
503
|
+
const updateResponse = await client.update({
|
|
352
504
|
dataId: existing.dataId,
|
|
353
505
|
datasetId,
|
|
354
506
|
data: dataWithMetadata,
|
|
355
507
|
});
|
|
356
|
-
|
|
508
|
+
const newDataId = updateResponse.dataId;
|
|
509
|
+
if (!newDataId) {
|
|
510
|
+
logger.warn?.(`cognee-openclaw: update for ${file.path} succeeded but could not resolve new data_id`);
|
|
511
|
+
}
|
|
512
|
+
syncIndex.entries[file.path] = { hash: file.hash, dataId: newDataId };
|
|
357
513
|
syncIndex.datasetId = datasetId;
|
|
358
514
|
syncIndex.datasetName = cfg.datasetName;
|
|
359
515
|
result.updated++;
|
|
360
|
-
logger.info?.(`
|
|
516
|
+
logger.info?.(`cognee-openclaw: updated ${file.path}`);
|
|
361
517
|
continue; // Success, move to next file
|
|
362
518
|
}
|
|
363
519
|
catch (updateError) {
|
|
364
520
|
// If update fails (404/409 - document not found), fall back to add
|
|
365
521
|
const errorMsg = updateError instanceof Error ? updateError.message : String(updateError);
|
|
366
522
|
if (errorMsg.includes("404") || errorMsg.includes("409") || errorMsg.includes("not found")) {
|
|
367
|
-
logger.info?.(`
|
|
523
|
+
logger.info?.(`cognee-openclaw: update failed for ${file.path}, falling back to add`);
|
|
368
524
|
// Clear the stale dataId and fall through to add
|
|
369
525
|
delete existing.dataId;
|
|
370
526
|
}
|
|
@@ -394,21 +550,49 @@ async function syncFiles(client, files, syncIndex, cfg, logger) {
|
|
|
394
550
|
syncIndex.datasetName = cfg.datasetName;
|
|
395
551
|
needsCognify = true;
|
|
396
552
|
result.added++;
|
|
397
|
-
logger.info?.(`
|
|
553
|
+
logger.info?.(`cognee-openclaw: added ${file.path}`);
|
|
398
554
|
}
|
|
399
555
|
catch (error) {
|
|
400
556
|
result.errors++;
|
|
401
|
-
logger.warn?.(`
|
|
557
|
+
logger.warn?.(`cognee-openclaw: failed to sync ${file.path}: ${error instanceof Error ? error.message : String(error)}`);
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
// Handle deletions: remove from Cognee any files no longer present
|
|
561
|
+
const currentPaths = new Set(fullFiles.map(f => f.path));
|
|
562
|
+
for (const [path, entry] of Object.entries(syncIndex.entries)) {
|
|
563
|
+
if (!currentPaths.has(path) && entry.dataId && datasetId) {
|
|
564
|
+
const deleteResult = await client.delete({
|
|
565
|
+
dataId: entry.dataId,
|
|
566
|
+
datasetId,
|
|
567
|
+
mode: cfg.deleteMode,
|
|
568
|
+
});
|
|
569
|
+
if (deleteResult.deleted) {
|
|
570
|
+
result.deleted++;
|
|
571
|
+
delete syncIndex.entries[path];
|
|
572
|
+
logger.info?.(`cognee-openclaw: deleted ${path}`);
|
|
573
|
+
}
|
|
574
|
+
else {
|
|
575
|
+
const isNotFound = deleteResult.error && (deleteResult.error.includes("404") || deleteResult.error.includes("409") || deleteResult.error.includes("not found"));
|
|
576
|
+
if (isNotFound) {
|
|
577
|
+
result.deleted++;
|
|
578
|
+
delete syncIndex.entries[path];
|
|
579
|
+
logger.info?.(`cognee-openclaw: deleted ${path} (already removed from Cognee)`);
|
|
580
|
+
}
|
|
581
|
+
else {
|
|
582
|
+
result.errors++;
|
|
583
|
+
logger.warn?.(`cognee-openclaw: failed to delete ${path}${deleteResult.error ? `: ${deleteResult.error}` : ""}`);
|
|
584
|
+
}
|
|
585
|
+
}
|
|
402
586
|
}
|
|
403
587
|
}
|
|
404
|
-
// Cognify only after adds (
|
|
588
|
+
// Cognify only after adds (updates re-process inline; hard-deletes clean up graph nodes inline)
|
|
405
589
|
if (needsCognify && cfg.autoCognify && datasetId) {
|
|
406
590
|
try {
|
|
407
591
|
await client.cognify({ datasetIds: [datasetId] });
|
|
408
|
-
logger.info?.("
|
|
592
|
+
logger.info?.("cognee-openclaw: cognify dispatched");
|
|
409
593
|
}
|
|
410
594
|
catch (error) {
|
|
411
|
-
logger.warn?.(`
|
|
595
|
+
logger.warn?.(`cognee-openclaw: cognify failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
412
596
|
}
|
|
413
597
|
}
|
|
414
598
|
// Save sync index to disk
|
|
@@ -419,13 +603,13 @@ async function syncFiles(client, files, syncIndex, cfg, logger) {
|
|
|
419
603
|
// Plugin registration
|
|
420
604
|
// ---------------------------------------------------------------------------
|
|
421
605
|
const memoryCogneePlugin = {
|
|
422
|
-
id: "
|
|
606
|
+
id: "cognee-openclaw",
|
|
423
607
|
name: "Memory (Cognee)",
|
|
424
608
|
description: "Cognee-backed memory: indexes workspace memory files, auto-recalls before agent runs",
|
|
425
609
|
kind: "memory",
|
|
426
610
|
register(api) {
|
|
427
611
|
const cfg = resolveConfig(api.pluginConfig);
|
|
428
|
-
const client = new CogneeClient(cfg.baseUrl, cfg.apiKey, cfg.requestTimeoutMs);
|
|
612
|
+
const client = new CogneeClient(cfg.baseUrl, cfg.apiKey, cfg.username, cfg.password, cfg.requestTimeoutMs, cfg.ingestionTimeoutMs);
|
|
429
613
|
let datasetId;
|
|
430
614
|
let syncIndex = { entries: {} };
|
|
431
615
|
let syncIndexReady = false;
|
|
@@ -437,7 +621,7 @@ const memoryCogneePlugin = {
|
|
|
437
621
|
datasetId = state[cfg.datasetName];
|
|
438
622
|
})
|
|
439
623
|
.catch((error) => {
|
|
440
|
-
api.logger.warn?.(`
|
|
624
|
+
api.logger.warn?.(`cognee-openclaw: failed to load dataset state: ${String(error)}`);
|
|
441
625
|
}),
|
|
442
626
|
loadSyncIndex()
|
|
443
627
|
.then((state) => {
|
|
@@ -448,7 +632,7 @@ const memoryCogneePlugin = {
|
|
|
448
632
|
}
|
|
449
633
|
})
|
|
450
634
|
.catch((error) => {
|
|
451
|
-
api.logger.warn?.(`
|
|
635
|
+
api.logger.warn?.(`cognee-openclaw: failed to load sync index: ${String(error)}`);
|
|
452
636
|
}),
|
|
453
637
|
]);
|
|
454
638
|
// Helper: run sync with a given workspace dir
|
|
@@ -456,11 +640,11 @@ const memoryCogneePlugin = {
|
|
|
456
640
|
await stateReady;
|
|
457
641
|
const files = await collectMemoryFiles(workspaceDir);
|
|
458
642
|
if (files.length === 0) {
|
|
459
|
-
logger.info?.("
|
|
460
|
-
return { added: 0, updated: 0, skipped: 0, errors: 0 };
|
|
643
|
+
logger.info?.("cognee-openclaw: no memory files found");
|
|
644
|
+
return { added: 0, updated: 0, skipped: 0, errors: 0, deleted: 0 };
|
|
461
645
|
}
|
|
462
|
-
logger.info?.(`
|
|
463
|
-
const result = await syncFiles(client, files, syncIndex, cfg, logger);
|
|
646
|
+
logger.info?.(`cognee-openclaw: found ${files.length} memory file(s), syncing...`);
|
|
647
|
+
const result = await syncFiles(client, files, files, syncIndex, cfg, logger);
|
|
464
648
|
if (result.datasetId) {
|
|
465
649
|
datasetId = result.datasetId;
|
|
466
650
|
}
|
|
@@ -477,7 +661,7 @@ const memoryCogneePlugin = {
|
|
|
477
661
|
.description("Sync memory files to Cognee (add new, update changed, skip unchanged)")
|
|
478
662
|
.action(async () => {
|
|
479
663
|
const result = await runSync(resolvedWorkspaceDir, ctx.logger);
|
|
480
|
-
const summary = `Sync complete: ${result.added} added, ${result.updated} updated, ${result.skipped} unchanged, ${result.errors} errors`;
|
|
664
|
+
const summary = `Sync complete: ${result.added} added, ${result.updated} updated, ${result.deleted} deleted, ${result.skipped} unchanged, ${result.errors} errors`;
|
|
481
665
|
ctx.logger.info?.(summary);
|
|
482
666
|
console.log(summary);
|
|
483
667
|
});
|
|
@@ -523,10 +707,10 @@ const memoryCogneePlugin = {
|
|
|
523
707
|
resolvedWorkspaceDir = ctx.workspaceDir || process.cwd();
|
|
524
708
|
try {
|
|
525
709
|
const result = await runSync(resolvedWorkspaceDir, ctx.logger);
|
|
526
|
-
ctx.logger.info?.(`
|
|
710
|
+
ctx.logger.info?.(`cognee-openclaw: auto-sync complete: ${result.added} added, ${result.updated} updated, ${result.deleted} deleted, ${result.skipped} unchanged`);
|
|
527
711
|
}
|
|
528
712
|
catch (error) {
|
|
529
|
-
ctx.logger.warn?.(`
|
|
713
|
+
ctx.logger.warn?.(`cognee-openclaw: auto-sync failed: ${String(error)}`);
|
|
530
714
|
}
|
|
531
715
|
},
|
|
532
716
|
});
|
|
@@ -539,11 +723,11 @@ const memoryCogneePlugin = {
|
|
|
539
723
|
// Wait for state to load (fixes race condition on first agent run)
|
|
540
724
|
await stateReady;
|
|
541
725
|
if (!event.prompt || event.prompt.length < 5) {
|
|
542
|
-
api.logger.debug?.("
|
|
726
|
+
api.logger.debug?.("cognee-openclaw: skipping recall (prompt too short)");
|
|
543
727
|
return;
|
|
544
728
|
}
|
|
545
729
|
if (!datasetId) {
|
|
546
|
-
api.logger.debug?.("
|
|
730
|
+
api.logger.debug?.("cognee-openclaw: skipping recall (no datasetId)");
|
|
547
731
|
return;
|
|
548
732
|
}
|
|
549
733
|
try {
|
|
@@ -551,13 +735,14 @@ const memoryCogneePlugin = {
|
|
|
551
735
|
queryText: event.prompt,
|
|
552
736
|
searchType: cfg.searchType,
|
|
553
737
|
datasetIds: [datasetId],
|
|
738
|
+
searchPrompt: cfg.searchPrompt,
|
|
554
739
|
maxTokens: cfg.maxTokens,
|
|
555
740
|
});
|
|
556
741
|
const filtered = results
|
|
557
742
|
.filter((result) => result.score >= cfg.minScore)
|
|
558
743
|
.slice(0, cfg.maxResults);
|
|
559
744
|
if (filtered.length === 0) {
|
|
560
|
-
api.logger.debug?.("
|
|
745
|
+
api.logger.debug?.("cognee-openclaw: search returned no results above minScore");
|
|
561
746
|
return;
|
|
562
747
|
}
|
|
563
748
|
const payload = JSON.stringify(filtered.map((result) => ({
|
|
@@ -566,13 +751,13 @@ const memoryCogneePlugin = {
|
|
|
566
751
|
text: result.text,
|
|
567
752
|
metadata: result.metadata,
|
|
568
753
|
})), null, 2);
|
|
569
|
-
api.logger.info?.(`
|
|
754
|
+
api.logger.info?.(`cognee-openclaw: injecting ${filtered.length} memories for session ${ctx.sessionKey ?? "unknown"}`);
|
|
570
755
|
return {
|
|
571
756
|
prependContext: `<cognee_memories>\nRelevant memories:\n${payload}\n</cognee_memories>`,
|
|
572
757
|
};
|
|
573
758
|
}
|
|
574
759
|
catch (error) {
|
|
575
|
-
api.logger.warn?.(`
|
|
760
|
+
api.logger.warn?.(`cognee-openclaw: recall failed: ${String(error)}`);
|
|
576
761
|
}
|
|
577
762
|
});
|
|
578
763
|
}
|
|
@@ -585,6 +770,18 @@ const memoryCogneePlugin = {
|
|
|
585
770
|
if (!event.success)
|
|
586
771
|
return;
|
|
587
772
|
await stateReady;
|
|
773
|
+
// Reload sync index from disk to pick up changes made by CLI or other processes
|
|
774
|
+
try {
|
|
775
|
+
const freshIndex = await loadSyncIndex();
|
|
776
|
+
syncIndex.entries = freshIndex.entries;
|
|
777
|
+
if (freshIndex.datasetId)
|
|
778
|
+
syncIndex.datasetId = freshIndex.datasetId;
|
|
779
|
+
if (freshIndex.datasetName)
|
|
780
|
+
syncIndex.datasetName = freshIndex.datasetName;
|
|
781
|
+
}
|
|
782
|
+
catch {
|
|
783
|
+
// Fall through with existing in-memory index
|
|
784
|
+
}
|
|
588
785
|
// Need workspace dir to find memory files
|
|
589
786
|
const workspaceDir = resolvedWorkspaceDir || process.cwd();
|
|
590
787
|
try {
|
|
@@ -594,21 +791,26 @@ const memoryCogneePlugin = {
|
|
|
594
791
|
const existing = syncIndex.entries[f.path];
|
|
595
792
|
return !existing || existing.hash !== f.hash;
|
|
596
793
|
});
|
|
597
|
-
|
|
794
|
+
// Check for deletions: files tracked in the sync index but no longer on disk
|
|
795
|
+
const currentPaths = new Set(files.map(f => f.path));
|
|
796
|
+
const hasDeletedFiles = Object.keys(syncIndex.entries).some(p => !currentPaths.has(p));
|
|
797
|
+
if (changedFiles.length === 0 && !hasDeletedFiles)
|
|
598
798
|
return;
|
|
599
|
-
api.logger.info?.(`
|
|
600
|
-
const result = await syncFiles(client, changedFiles, syncIndex, cfg, api.logger);
|
|
799
|
+
api.logger.info?.(`cognee-openclaw: detected ${changedFiles.length} changed file(s)${hasDeletedFiles ? " + deletions" : ""}, syncing...`);
|
|
800
|
+
const result = await syncFiles(client, changedFiles, files, syncIndex, cfg, api.logger);
|
|
601
801
|
if (result.datasetId) {
|
|
602
802
|
datasetId = result.datasetId;
|
|
603
803
|
}
|
|
604
|
-
api.logger.info?.(`
|
|
804
|
+
api.logger.info?.(`cognee-openclaw: post-agent sync: ${result.added} added, ${result.updated} updated, ${result.deleted} deleted`);
|
|
605
805
|
}
|
|
606
806
|
catch (error) {
|
|
607
|
-
api.logger.warn?.(`
|
|
807
|
+
api.logger.warn?.(`cognee-openclaw: post-agent sync failed: ${String(error)}`);
|
|
608
808
|
}
|
|
609
809
|
});
|
|
610
810
|
}
|
|
611
811
|
},
|
|
612
812
|
};
|
|
613
813
|
export default memoryCogneePlugin;
|
|
814
|
+
// Exports for testing
|
|
815
|
+
export { CogneeClient, syncFiles };
|
|
614
816
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/openclaw.plugin.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"id": "
|
|
2
|
+
"id": "cognee-openclaw",
|
|
3
3
|
"name": "Memory (Cognee)",
|
|
4
4
|
"kind": "memory",
|
|
5
5
|
"configSchema": {
|
|
@@ -14,6 +14,14 @@
|
|
|
14
14
|
"type": "string",
|
|
15
15
|
"description": "Cognee API key (or use ${COGNEE_API_KEY})"
|
|
16
16
|
},
|
|
17
|
+
"username": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"description": "Cognee login username (default: default_user@example.com)"
|
|
20
|
+
},
|
|
21
|
+
"password": {
|
|
22
|
+
"type": "string",
|
|
23
|
+
"description": "Cognee login password (default: default_password)"
|
|
24
|
+
},
|
|
17
25
|
"datasetName": {
|
|
18
26
|
"type": "string",
|
|
19
27
|
"description": "Cognee dataset name to store memories in"
|
|
@@ -27,6 +35,14 @@
|
|
|
27
35
|
],
|
|
28
36
|
"description": "Cognee search mode"
|
|
29
37
|
},
|
|
38
|
+
"deleteMode": {
|
|
39
|
+
"type": "string",
|
|
40
|
+
"enum": [
|
|
41
|
+
"soft",
|
|
42
|
+
"hard"
|
|
43
|
+
],
|
|
44
|
+
"description": "Cognee delete mode: 'soft' removes raw data only, 'hard' also removes degree-one graph nodes (default: soft)"
|
|
45
|
+
},
|
|
30
46
|
"maxResults": {
|
|
31
47
|
"type": "number",
|
|
32
48
|
"description": "Max recall results to inject (default: 6)"
|
|
@@ -54,6 +70,14 @@
|
|
|
54
70
|
"requestTimeoutMs": {
|
|
55
71
|
"type": "number",
|
|
56
72
|
"description": "HTTP timeout in milliseconds for Cognee requests (default: 60000)"
|
|
73
|
+
},
|
|
74
|
+
"ingestionTimeoutMs": {
|
|
75
|
+
"type": "number",
|
|
76
|
+
"description": "HTTP timeout in milliseconds for add/update (ingestion) requests, which are typically slower (default: 300000 = 5 min)"
|
|
77
|
+
},
|
|
78
|
+
"searchPrompt": {
|
|
79
|
+
"type": "string",
|
|
80
|
+
"description": "System prompt sent to Cognee to guide search query processing (default: '')"
|
|
57
81
|
}
|
|
58
82
|
}
|
|
59
83
|
},
|
|
@@ -67,6 +91,15 @@
|
|
|
67
91
|
"sensitive": true,
|
|
68
92
|
"placeholder": "${COGNEE_API_KEY}"
|
|
69
93
|
},
|
|
94
|
+
"username": {
|
|
95
|
+
"label": "Username",
|
|
96
|
+
"placeholder": "default_user@example.com"
|
|
97
|
+
},
|
|
98
|
+
"password": {
|
|
99
|
+
"label": "Password",
|
|
100
|
+
"sensitive": true,
|
|
101
|
+
"placeholder": "default_password"
|
|
102
|
+
},
|
|
70
103
|
"datasetName": {
|
|
71
104
|
"label": "Dataset Name",
|
|
72
105
|
"placeholder": "openclaw"
|
|
@@ -75,6 +108,10 @@
|
|
|
75
108
|
"label": "Search Type",
|
|
76
109
|
"placeholder": "GRAPH_COMPLETION"
|
|
77
110
|
},
|
|
111
|
+
"deleteMode": {
|
|
112
|
+
"label": "Delete Mode",
|
|
113
|
+
"placeholder": "soft"
|
|
114
|
+
},
|
|
78
115
|
"maxResults": {
|
|
79
116
|
"label": "Max Results",
|
|
80
117
|
"placeholder": "6"
|
|
@@ -99,6 +136,10 @@
|
|
|
99
136
|
"requestTimeoutMs": {
|
|
100
137
|
"label": "Request Timeout (ms)",
|
|
101
138
|
"placeholder": "60000"
|
|
139
|
+
},
|
|
140
|
+
"ingestionTimeoutMs": {
|
|
141
|
+
"label": "Ingestion Timeout (ms)",
|
|
142
|
+
"placeholder": "300000"
|
|
102
143
|
}
|
|
103
144
|
}
|
|
104
145
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cognee/cognee-openclaw",
|
|
3
|
-
"version": "2026.
|
|
3
|
+
"version": "2026.3.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "OpenClaw Cognee-backed memory plugin with auto-recall/capture",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -19,17 +19,33 @@
|
|
|
19
19
|
"build": "tsc",
|
|
20
20
|
"dev": "tsc --watch",
|
|
21
21
|
"clean": "rm -rf dist",
|
|
22
|
-
"typecheck": "tsc --noEmit"
|
|
22
|
+
"typecheck": "tsc --noEmit",
|
|
23
|
+
"test": "jest"
|
|
24
|
+
},
|
|
25
|
+
"jest": {
|
|
26
|
+
"preset": "ts-jest",
|
|
27
|
+
"testEnvironment": "node",
|
|
28
|
+
"transform": {
|
|
29
|
+
"^.+\\.ts$": [
|
|
30
|
+
"ts-jest",
|
|
31
|
+
{
|
|
32
|
+
"useESM": true
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
23
36
|
},
|
|
24
37
|
"peerDependencies": {
|
|
25
38
|
"openclaw": ">=2026.2.3-1"
|
|
26
39
|
},
|
|
27
40
|
"devDependencies": {
|
|
41
|
+
"@types/jest": "^30.0.0",
|
|
28
42
|
"@types/node": "^20.0.0",
|
|
43
|
+
"jest": "^30.2.0",
|
|
29
44
|
"openclaw": "2026.2.3-1",
|
|
45
|
+
"ts-jest": "^29.4.6",
|
|
30
46
|
"typescript": "^5.3.0"
|
|
31
47
|
},
|
|
32
48
|
"overrides": {
|
|
33
49
|
"tar": "7.5.7"
|
|
34
50
|
}
|
|
35
|
-
}
|
|
51
|
+
}
|