@ubundi/openclaw-cortex 2.5.0 → 2.7.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.
@@ -3,7 +3,31 @@ import { createHash } from "node:crypto";
3
3
  import { join } from "node:path";
4
4
  const MARKER = "## Cortex Memory";
5
5
  const MARKER_END = "<!-- /cortex-memory -->";
6
- const CORTEX_INSTRUCTIONS = `
6
+ function buildCustomSaveGuidance(opts) {
7
+ const customInstructions = opts?.captureInstructions?.trim();
8
+ const customCategories = (opts?.captureCategories ?? [])
9
+ .map((category) => category.trim())
10
+ .filter(Boolean);
11
+ if (!customInstructions && customCategories.length === 0)
12
+ return "";
13
+ const lines = ["### Custom save guidance", ""];
14
+ if (customInstructions) {
15
+ lines.push(customInstructions);
16
+ }
17
+ if (customCategories.length > 0) {
18
+ if (customInstructions) {
19
+ lines.push("");
20
+ }
21
+ lines.push("Pay special attention to these categories:");
22
+ for (const category of customCategories) {
23
+ lines.push(`- ${category}`);
24
+ }
25
+ }
26
+ return lines.join("\n");
27
+ }
28
+ export function buildCortexInstructions(opts) {
29
+ const customSaveGuidance = buildCustomSaveGuidance(opts);
30
+ return `
7
31
 
8
32
  ## Cortex Memory
9
33
 
@@ -15,25 +39,39 @@ You have a long-term memory system powered by Cortex. Before each conversation t
15
39
  - **For volatile current-state facts, verify against live workspace/runtime first.** Examples: versions, ports, env/config defaults, active dependencies, and script commands.
16
40
  - **If memory and live state conflict, report both with timing context.** Example: "Memory says X (from March 4, 2026), current repo shows Y."
17
41
  - **Memories include a confidence score** (e.g., \`[0.85]\`). Higher scores indicate stronger relevance to the current conversation.
18
- - **You also have \`cortex_search_memory\`, \`cortex_save_memory\`, and \`cortex_forget\` tools** for explicit search, save, and selective removal when the automatic recall isn't sufficient.
42
+ - **You also have \`cortex_search_memory\`, \`cortex_get_memory\`, \`cortex_save_memory\`, and \`cortex_forget\` tools** for explicit search, lookup by ID, save, and selective removal when the automatic recall isn't sufficient.
19
43
 
20
44
  ### When to search explicitly
21
45
 
22
46
  - When asked a specific factual question (port numbers, library choices, config values), use \`cortex_search_memory\` to look up the answer before responding from general knowledge.
23
47
  - When auto-recalled memories don't cover the topic being asked about, search before saying "I don't know."
24
48
  - Use \`mode\` to narrow results: \`"decisions"\` for "why did we do X?", \`"preferences"\` for style/config questions, \`"facts"\` for durable knowledge, \`"recent"\` when recency matters more than relevance.
49
+ - Use \`scope\` to focus the search on the current session, older long-term memories, or all stored memories.
50
+ - Use \`cortex_get_memory\` when you already have a specific memory ID and want the full details for that node.
25
51
 
26
- ### When to save
52
+ ### How auto-capture works
53
+
54
+ After each conversation turn, the plugin automatically extracts facts from the conversation and stores them in long-term memory. You do **not** need to explicitly save things that are clearly stated in the conversation — auto-capture handles this. However:
55
+
56
+ - Auto-capture **strips volatile state** (version numbers, task statuses, "currently working on X", port numbers, deploy status) before extraction to prevent stale facts from entering long-term memory.
57
+ - Auto-capture submits the conversation transcript and the backend extracts facts — you don't control exactly what gets extracted.
58
+ - If something is important and you're unsure whether auto-capture will pick it up, use \`cortex_save_memory\` explicitly.
59
+
60
+ ### When to save explicitly
27
61
 
28
62
  - When the user explicitly asks you to remember something.
29
63
  - When a significant **decision, preference, or durable fact** is stated — especially if it would be useful in future sessions.
64
+ - When the information is a **nuanced interpretation** that auto-capture might miss (e.g., "the user prefers X because of Y" rather than a bare statement of X).
30
65
  - Set \`type\` (\`"preference"\`, \`"decision"\`, \`"fact"\`, \`"transient"\`) and \`importance\` (\`"high"\`, \`"normal"\`, \`"low"\`) to improve future recall quality.
66
+ - Use \`type: "transient"\` for state that **will change soon** (current task in progress, temporary workaround, short-lived config). Transient memories are useful for session continuity but should not be treated as durable truth.
31
67
  - **Don't save** transient tool output, debug logs, or information you just recalled — that creates feedback loops.
68
+ - **Don't save your own inferences or assumptions as facts.** Only save things the user has directly stated or confirmed. If you're uncertain about a fact, ask the user before saving it.${customSaveGuidance ? `\n\n${customSaveGuidance}` : ""}
32
69
 
33
70
  ### When to forget
34
71
 
35
72
  - When the user says something you remembered is **wrong, outdated, or should be forgotten**, use \`cortex_forget\` with the entity name to remove those memories.
36
73
  - When the user wants to clear all memories from a specific session, use \`cortex_forget\` with the session ID.
74
+ - Use \`query\` on \`cortex_forget\` to find candidate memories and entity names when the user describes the memory but doesn't know the exact entity or session yet.
37
75
  - **Always confirm with the user before forgetting** — deletion is permanent.
38
76
 
39
77
  ### What NOT to do
@@ -44,14 +82,17 @@ You have a long-term memory system powered by Cortex. Before each conversation t
44
82
  - **Don't act on personal facts (birthdays, ages, anniversaries, family details) from recalled memories without explicit prior confirmation from the user.** Recalled memories can contain hallucinations that were captured as facts — ask to verify before acting on personal claims.
45
83
  - **Don't make unsolicited factual claims about the user.** If the user didn't ask, don't volunteer personal details from memory (e.g., don't spontaneously wish happy birthday based on a recalled memory).
46
84
  - **Don't assume a recalled fact is true because it appears multiple times.** Hallucinations can get captured and re-recalled repeatedly, creating false confidence through repetition.
85
+ - **Don't save facts that originated from your own reasoning rather than the user's statements.** If you infer "the user's birthday is March 10" from context clues, do NOT save that — only save what the user explicitly tells you.
86
+ - **Don't save version numbers, task statuses, or "currently X" statements** unless the user explicitly asks you to remember them. These go stale fast and auto-capture already filters them out.
47
87
  `;
88
+ }
48
89
  /** Short hash of the instructions content for staleness detection. */
49
- function instructionsHash() {
50
- return createHash("sha256").update(CORTEX_INSTRUCTIONS).digest("hex").slice(0, 12);
90
+ export function instructionsHash(opts) {
91
+ return createHash("sha256").update(buildCortexInstructions(opts)).digest("hex").slice(0, 12);
51
92
  }
52
93
  /** Build the full block with version marker for replacement detection. */
53
- function buildBlock() {
54
- return `${CORTEX_INSTRUCTIONS.trimEnd()}\n\n<!-- cortex-memory-hash:${instructionsHash()} -->\n${MARKER_END}\n`;
94
+ function buildBlock(opts) {
95
+ return `${buildCortexInstructions(opts).trimEnd()}\n\n<!-- cortex-memory-hash:${instructionsHash(opts)} -->\n${MARKER_END}\n`;
55
96
  }
56
97
  /**
57
98
  * Injects or updates Cortex memory instructions in AGENTS.md.
@@ -63,7 +104,7 @@ function buildBlock() {
63
104
  *
64
105
  * Non-fatal — logs a warning and returns silently on any error.
65
106
  */
66
- export async function injectAgentInstructions(workspaceDir, logger) {
107
+ export async function injectAgentInstructions(workspaceDir, logger, opts) {
67
108
  const agentsMdPath = join(workspaceDir, "AGENTS.md");
68
109
  try {
69
110
  let content;
@@ -77,8 +118,8 @@ export async function injectAgentInstructions(workspaceDir, logger) {
77
118
  }
78
119
  throw err;
79
120
  }
80
- const currentHash = instructionsHash();
81
- const block = buildBlock();
121
+ const currentHash = instructionsHash(opts);
122
+ const block = buildBlock(opts);
82
123
  if (!content.includes(MARKER)) {
83
124
  // Fresh injection
84
125
  await writeFile(agentsMdPath, content + block, "utf-8");
@@ -1 +1 @@
1
- {"version":3,"file":"agent-instructions.js","sourceRoot":"","sources":["../../src/internal/agent-instructions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-instructions.js","sourceRoot":"","sources":["../../src/internal/agent-instructions.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,5 @@
3
3
  * In source this is a placeholder; the dist file contains the real value.
4
4
  * Never commit a real key here.
5
5
  */
6
- export const BAKED_API_KEY = "95134e1c-7c62-42d2-8672-c1ebee09553e";
6
+ export const BAKED_API_KEY = "__OPENCLAW_API_KEY__";
7
7
  //# sourceMappingURL=api-key.js.map
@@ -1,5 +1,6 @@
1
1
  import { z } from "zod";
2
2
  export declare const CortexConfigSchema: z.ZodObject<{
3
+ apiKey: z.ZodOptional<z.ZodString>;
3
4
  baseUrl: z.ZodDefault<z.ZodEffects<z.ZodString, string, string>>;
4
5
  userId: z.ZodOptional<z.ZodString>;
5
6
  autoRecall: z.ZodDefault<z.ZodBoolean>;
@@ -16,6 +17,8 @@ export declare const CortexConfigSchema: z.ZodObject<{
16
17
  noveltyThreshold: z.ZodDefault<z.ZodNumber>;
17
18
  auditLog: z.ZodDefault<z.ZodBoolean>;
18
19
  namespace: z.ZodDefault<z.ZodString>;
20
+ captureInstructions: z.ZodOptional<z.ZodString>;
21
+ captureCategories: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
19
22
  /**
20
23
  * Optional fixed reference date (ISO 8601) to use as the temporal anchor for
21
24
  * all recall queries instead of `new Date()`. Useful when replaying historical
@@ -43,9 +46,13 @@ export declare const CortexConfigSchema: z.ZodObject<{
43
46
  noveltyThreshold: number;
44
47
  auditLog: boolean;
45
48
  namespace: string;
49
+ apiKey?: string | undefined;
46
50
  userId?: string | undefined;
51
+ captureInstructions?: string | undefined;
52
+ captureCategories?: string[] | undefined;
47
53
  recallReferenceDate?: string | undefined;
48
54
  }, {
55
+ apiKey?: string | undefined;
49
56
  baseUrl?: string | undefined;
50
57
  userId?: string | undefined;
51
58
  autoRecall?: boolean | undefined;
@@ -62,6 +69,8 @@ export declare const CortexConfigSchema: z.ZodObject<{
62
69
  noveltyThreshold?: number | undefined;
63
70
  auditLog?: boolean | undefined;
64
71
  namespace?: string | undefined;
72
+ captureInstructions?: string | undefined;
73
+ captureCategories?: string[] | undefined;
65
74
  recallReferenceDate?: string | undefined;
66
75
  }>;
67
76
  export type CortexConfig = z.infer<typeof CortexConfigSchema>;
@@ -71,6 +80,7 @@ export type CortexConfig = z.infer<typeof CortexConfigSchema>;
71
80
  */
72
81
  export declare const configSchema: {
73
82
  safeParse(value: unknown): z.SafeParseReturnType<{
83
+ apiKey?: string | undefined;
74
84
  baseUrl?: string | undefined;
75
85
  userId?: string | undefined;
76
86
  autoRecall?: boolean | undefined;
@@ -87,6 +97,8 @@ export declare const configSchema: {
87
97
  noveltyThreshold?: number | undefined;
88
98
  auditLog?: boolean | undefined;
89
99
  namespace?: string | undefined;
100
+ captureInstructions?: string | undefined;
101
+ captureCategories?: string[] | undefined;
90
102
  recallReferenceDate?: string | undefined;
91
103
  }, {
92
104
  baseUrl: string;
@@ -104,7 +116,10 @@ export declare const configSchema: {
104
116
  noveltyThreshold: number;
105
117
  auditLog: boolean;
106
118
  namespace: string;
119
+ apiKey?: string | undefined;
107
120
  userId?: string | undefined;
121
+ captureInstructions?: string | undefined;
122
+ captureCategories?: string[] | undefined;
108
123
  recallReferenceDate?: string | undefined;
109
124
  }>;
110
125
  };
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/plugin/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwBxB,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;IAmB7B;;;;;;;;;OASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEH,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;GAGG;AACH,eAAO,MAAM,YAAY;qBACN,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGzB,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/plugin/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwBxB,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;IAsB7B;;;;;;;;;OASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEH,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;GAGG;AACH,eAAO,MAAM,YAAY;qBACN,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGzB,CAAC"}
@@ -17,6 +17,7 @@ const httpsUrl = z
17
17
  return false;
18
18
  }, { message: "baseUrl must use HTTPS (http allowed only for localhost)" });
19
19
  export const CortexConfigSchema = z.object({
20
+ apiKey: z.string().min(1).optional(),
20
21
  baseUrl: httpsUrl.default("https://q5p64iw9c9.execute-api.us-east-1.amazonaws.com/prod"),
21
22
  userId: z.string().min(1).optional(),
22
23
  autoRecall: z.boolean().default(true),
@@ -33,6 +34,8 @@ export const CortexConfigSchema = z.object({
33
34
  noveltyThreshold: z.number().min(0).max(1).default(0.85),
34
35
  auditLog: z.boolean().default(false),
35
36
  namespace: z.string().min(1).default("openclaw"),
37
+ captureInstructions: z.string().max(2000).optional(),
38
+ captureCategories: z.array(z.string().min(1).max(100)).max(20).optional(),
36
39
  /**
37
40
  * Optional fixed reference date (ISO 8601) to use as the temporal anchor for
38
41
  * all recall queries instead of `new Date()`. Useful when replaying historical
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/plugin/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/plugin/config.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ declare const plugin: {
13
13
  version: string;
14
14
  configSchema: {
15
15
  safeParse(value: unknown): import("zod").SafeParseReturnType<{
16
+ apiKey?: string | undefined;
16
17
  baseUrl?: string | undefined;
17
18
  userId?: string | undefined;
18
19
  autoRecall?: boolean | undefined;
@@ -29,6 +30,8 @@ declare const plugin: {
29
30
  noveltyThreshold?: number | undefined;
30
31
  auditLog?: boolean | undefined;
31
32
  namespace?: string | undefined;
33
+ captureInstructions?: string | undefined;
34
+ captureCategories?: string[] | undefined;
32
35
  recallReferenceDate?: string | undefined;
33
36
  }, {
34
37
  baseUrl: string;
@@ -46,7 +49,10 @@ declare const plugin: {
46
49
  noveltyThreshold: number;
47
50
  auditLog: boolean;
48
51
  namespace: string;
52
+ apiKey?: string | undefined;
49
53
  userId?: string | undefined;
54
+ captureInstructions?: string | undefined;
55
+ captureCategories?: string[] | undefined;
50
56
  recallReferenceDate?: string | undefined;
51
57
  }>;
52
58
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAEV,SAAS,EAEV,MAAM,YAAY,CAAC;AA8CpB,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;IACpD,WAAW,EAAE,MAAM,CAAC;CACrB;AAgPD,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBASI,SAAS;CA2bxB,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAEV,SAAS,EAEV,MAAM,YAAY,CAAC;AA8CpB,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;IACpD,WAAW,EAAE,MAAM,CAAC;CACrB;AAqPD,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBASI,SAAS;CA8cxB,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -20,7 +20,7 @@ import { createHeartbeatHandler } from "../features/heartbeat/handler.js";
20
20
  import { buildSessionSummaryFromMessages, formatRecoveryContext, SessionStateStore, } from "../internal/session-state.js";
21
21
  import { sanitizeMessageForTranscript } from "../internal/message-sanitizer.js";
22
22
  import { registerCliCommands } from "./cli.js";
23
- import { buildSearchMemoryTool, buildSaveMemoryTool, buildForgetMemoryTool } from "./tools.js";
23
+ import { buildSearchMemoryTool, buildSaveMemoryTool, buildForgetMemoryTool, buildGetMemoryTool } from "./tools.js";
24
24
  import { buildCommands } from "./commands.js";
25
25
  const version = packageJson.version;
26
26
  const PACKAGE_NAME = packageJson.name;
@@ -185,7 +185,12 @@ function registerHookCompat(api, hookName, handler, metadata) {
185
185
  }
186
186
  }
187
187
  /** Tool names that must survive the tools.profile allowlist filter. */
188
- const CORTEX_TOOL_NAMES = ["cortex_search_memory", "cortex_save_memory", "cortex_forget"];
188
+ const CORTEX_TOOL_NAMES = [
189
+ "cortex_search_memory",
190
+ "cortex_get_memory",
191
+ "cortex_save_memory",
192
+ "cortex_forget",
193
+ ];
189
194
  const PLUGIN_ID = "openclaw-cortex";
190
195
  /**
191
196
  * Ensures `plugins.allow` in the OpenClaw config includes our plugin id.
@@ -254,7 +259,7 @@ function ensureToolsAllowlist(logger) {
254
259
  catch {
255
260
  // Config unreadable — tools may be filtered by the profile allowlist.
256
261
  // Hooks (auto-recall, auto-capture) still work regardless.
257
- logger.warn(`Cortex: could not verify tool access — if the agent cannot use cortex_search_memory or cortex_save_memory, add them to tools.alsoAllow in openclaw.json`);
262
+ logger.warn(`Cortex: could not verify tool access — if the agent cannot use cortex_search_memory, cortex_get_memory, cortex_save_memory, or cortex_forget, add them to tools.alsoAllow in openclaw.json`);
258
263
  }
259
264
  }
260
265
  const plugin = {
@@ -271,21 +276,25 @@ const plugin = {
271
276
  api.logger.error("Cortex plugin config invalid:", parsed.error.issues.map((i) => `${i.path.join(".")}: ${i.message}`).join("; "));
272
277
  return;
273
278
  }
274
- // BUILD_API_KEY must be injected into dist at build/publish time.
275
- // If the placeholder "__OPENCLAW_API_KEY__" is still present, Cortex
276
- // calls will fail but we allow it so unit tests (which mock the
277
- // client) can exercise registration. Only bail on a truly empty key
278
- // (which can happen if inject-api-key.mjs runs with an empty var).
279
- if (!BAKED_API_KEY) {
280
- api.logger.error("Cortex plugin misconfigured: empty API key. Rebuild with BUILD_API_KEY=... npm run build, or install the published package.");
279
+ const config = parsed.data;
280
+ // Resolve API key: plugin config CORTEX_API_KEY env var → baked build key.
281
+ // The baked key is a placeholder ("__OPENCLAW_API_KEY__") in source and may
282
+ // be empty in published builds, so user-provided keys take priority.
283
+ const resolvedApiKey = config.apiKey ||
284
+ process.env.CORTEX_API_KEY ||
285
+ (BAKED_API_KEY !== "__OPENCLAW_API_KEY__" && BAKED_API_KEY) ||
286
+ "";
287
+ if (!resolvedApiKey) {
288
+ api.logger.warn("[Cortex] This plugin is currently in early testing and requires an API key to use.");
289
+ api.logger.warn('[Cortex] Set "apiKey" in your plugin config (openclaw.json) or export the CORTEX_API_KEY environment variable.');
290
+ api.logger.warn("[Cortex] To request access, reach out to the Ubundi team: https://ubundi.com");
281
291
  return;
282
292
  }
283
293
  // Ensure our plugin is in the explicit allowlist (suppresses auto-load warning)
284
294
  ensurePluginsAllowlist(api.logger);
285
295
  // Ensure our tools survive the profile allowlist filter (one-time config patch)
286
296
  ensureToolsAllowlist(api.logger);
287
- const config = parsed.data;
288
- const client = new CortexClient(config.baseUrl, BAKED_API_KEY);
297
+ const client = new CortexClient(config.baseUrl, resolvedApiKey);
289
298
  const retryQueue = new RetryQueue(api.logger);
290
299
  const recallMetrics = new LatencyMetrics();
291
300
  const sessionState = new SessionStateStore();
@@ -311,6 +320,7 @@ const plugin = {
311
320
  // start logging without a restart when toggled on at runtime.
312
321
  let auditLoggerInner;
313
322
  let workspaceDirResolved;
323
+ let currentSessionKey;
314
324
  const auditLoggerProxy = {
315
325
  log(entry) {
316
326
  return auditLoggerInner?.log(entry) ?? Promise.resolve();
@@ -343,7 +353,7 @@ const plugin = {
343
353
  void userIdReady.then(() => bootstrapClient(client, api.logger, knowledgeState, userId));
344
354
  void checkForUpdate(api.logger);
345
355
  }
346
- api.logger.info(`Cortex v${version} ready`);
356
+ api.logger.info(`Cortex v${version} ready (early testing)`);
347
357
  // Show a getting-started hint on first install or after version upgrade
348
358
  if (!isCliInvocation) {
349
359
  try {
@@ -373,6 +383,7 @@ const plugin = {
373
383
  // Auto-Recall: inject relevant memories before every agent turn
374
384
  registerHookCompat(api, "before_agent_start", async (event, ctx) => {
375
385
  const activeSessionKey = resolveSessionKey(ctx, sessionId);
386
+ currentSessionKey = activeSessionKey;
376
387
  let recoveryContext;
377
388
  if (!recoveryCheckedSessions.has(activeSessionKey)) {
378
389
  recoveryCheckedSessions.add(activeSessionKey);
@@ -408,6 +419,7 @@ const plugin = {
408
419
  if (event.messages?.length) {
409
420
  lastMessages = event.messages;
410
421
  const activeSessionKey = resolveSessionKey(event, sessionId);
422
+ currentSessionKey = activeSessionKey;
411
423
  const summary = buildSessionSummaryFromMessages(event.messages);
412
424
  try {
413
425
  await sessionState.markDirty({
@@ -466,6 +478,7 @@ const plugin = {
466
478
  config,
467
479
  logger: api.logger,
468
480
  getUserId: () => userId,
481
+ getActiveSessionKey: () => currentSessionKey,
469
482
  userIdReady,
470
483
  sessionId,
471
484
  sessionStats,
@@ -475,9 +488,10 @@ const plugin = {
475
488
  recentSaves,
476
489
  };
477
490
  api.registerTool(buildSearchMemoryTool(toolsDeps));
491
+ api.registerTool(buildGetMemoryTool(toolsDeps));
478
492
  api.registerTool(buildSaveMemoryTool(toolsDeps));
479
493
  api.registerTool(buildForgetMemoryTool(toolsDeps));
480
- api.logger.debug?.("Cortex tools registered: cortex_search_memory, cortex_save_memory, cortex_forget");
494
+ api.logger.debug?.("Cortex tools registered: cortex_search_memory, cortex_get_memory, cortex_save_memory, cortex_forget");
481
495
  }
482
496
  // --- Auto-Reply Commands ---
483
497
  if (api.registerCommand) {
@@ -598,7 +612,10 @@ const plugin = {
598
612
  }
599
613
  // Inject Cortex instructions into AGENTS.md (idempotent)
600
614
  if (ctx.workspaceDir) {
601
- void injectAgentInstructions(ctx.workspaceDir, api.logger);
615
+ void injectAgentInstructions(ctx.workspaceDir, api.logger, {
616
+ captureInstructions: config.captureInstructions,
617
+ captureCategories: config.captureCategories,
618
+ });
602
619
  }
603
620
  api.logger.debug?.("Cortex services started");
604
621
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/plugin/index.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ export interface ToolsDeps {
18
18
  config: CortexConfig;
19
19
  logger: Logger;
20
20
  getUserId: () => string | undefined;
21
+ getActiveSessionKey?: () => string | undefined;
21
22
  userIdReady: Promise<void>;
22
23
  sessionId: string;
23
24
  sessionStats: SessionStats;
@@ -29,4 +30,5 @@ export interface ToolsDeps {
29
30
  export declare function buildSearchMemoryTool(deps: ToolsDeps): ToolDefinition;
30
31
  export declare function buildSaveMemoryTool(deps: ToolsDeps): ToolDefinition;
31
32
  export declare function buildForgetMemoryTool(deps: ToolsDeps): ToolDefinition;
33
+ export declare function buildGetMemoryTool(deps: ToolsDeps): ToolDefinition;
32
34
  //# sourceMappingURL=tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/plugin/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAIjD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,yBAAyB,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACpC,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC5C,gBAAgB,EAAE,WAAW,CAAC;IAC9B,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;CACjC;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,SAAS,GAAG,cAAc,CA2FrE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,cAAc,CA6KnE;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,SAAS,GAAG,cAAc,CAkFrE"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/plugin/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAIjD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,yBAAyB,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACpC,mBAAmB,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IAC/C,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC5C,gBAAgB,EAAE,WAAW,CAAC;IAC9B,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;CACjC;AAgHD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,SAAS,GAAG,cAAc,CAwJrE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,cAAc,CA+KnE;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,SAAS,GAAG,cAAc,CAgJrE;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,GAAG,cAAc,CAiDlE"}