@cortexmemory/cli 0.31.0 → 0.33.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.
@@ -75,4 +75,42 @@ export declare function listApps(config: CLIConfig): Array<{
75
75
  enabled: boolean;
76
76
  port?: number;
77
77
  }>;
78
+ /**
79
+ * Discovered app that's not yet registered
80
+ */
81
+ export interface DiscoveredApp {
82
+ /** Suggested name for the app */
83
+ name: string;
84
+ /** Detected app type */
85
+ type: "basic" | "vercel-ai-quickstart";
86
+ /** Relative path from deployment root */
87
+ path: string;
88
+ /** Absolute path to deployment root */
89
+ projectPath: string;
90
+ /** Full path to the app directory */
91
+ fullPath: string;
92
+ /** Associated deployment name (if any) */
93
+ deploymentName?: string;
94
+ }
95
+ /**
96
+ * Discover unregistered apps in deployment directories
97
+ *
98
+ * Scans all deployment directories for known app patterns that aren't
99
+ * yet registered in the config's apps section.
100
+ *
101
+ * Patterns detected:
102
+ * - quickstart/ folder with Next.js + @cortexmemory/vercel-ai-provider
103
+ * - Any folder with @cortexmemory/sdk (basic app)
104
+ *
105
+ * @param config - Current CLI configuration
106
+ * @returns Array of discovered apps not yet registered
107
+ */
108
+ export declare function discoverUnregisteredApps(config: CLIConfig): DiscoveredApp[];
109
+ /**
110
+ * Register a discovered app in the config
111
+ */
112
+ export declare function registerApp(app: DiscoveredApp, options?: {
113
+ enabled?: boolean;
114
+ port?: number;
115
+ }): Promise<CLIConfig>;
78
116
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH,OAAO,KAAK,EACV,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,YAAY,EACb,MAAM,aAAa,CAAC;AAyBrB;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC,CA6BrD;AAqCD;;GAEG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAUrE;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAGxE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,SAAS,EACjB,IAAI,CAAC,EAAE,MAAM,GACZ,gBAAgB,GAAG,IAAI,CAGzB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,aAAa,GACrB;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;CAChB,CA6BA;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,gBAAgB,EAC5B,UAAU,UAAO,GAChB,OAAO,CAAC,SAAS,CAAC,CASpB;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAStE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CAoCf;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,KAAK,CAAC;IACxD,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC,CAQD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,KAAK,CAAC;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC,CAYD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@
9
9
  */
10
10
  import { cosmiconfig } from "cosmiconfig";
11
11
  import { readFile, writeFile, mkdir } from "fs/promises";
12
- import { existsSync } from "fs";
12
+ import { existsSync, readdirSync, readFileSync } from "fs";
13
13
  import { homedir } from "os";
14
14
  import { join, dirname } from "path";
15
15
  /**
@@ -251,4 +251,172 @@ export function listApps(config) {
251
251
  port: app.port,
252
252
  }));
253
253
  }
254
+ /**
255
+ * Detect app type from a directory by examining package.json
256
+ */
257
+ function detectAppType(appPath) {
258
+ const packageJsonPath = join(appPath, "package.json");
259
+ if (!existsSync(packageJsonPath)) {
260
+ return null;
261
+ }
262
+ try {
263
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, "utf-8"));
264
+ const deps = {
265
+ ...packageJson.dependencies,
266
+ ...packageJson.devDependencies,
267
+ };
268
+ // Check for vercel-ai-quickstart pattern
269
+ if (deps["@cortexmemory/vercel-ai-provider"] &&
270
+ (deps["next"] || deps["@ai-sdk/react"])) {
271
+ return "vercel-ai-quickstart";
272
+ }
273
+ // Check for basic app pattern
274
+ if (deps["@cortexmemory/sdk"] && !deps["next"]) {
275
+ return "basic";
276
+ }
277
+ return null;
278
+ }
279
+ catch {
280
+ return null;
281
+ }
282
+ }
283
+ /**
284
+ * Discover unregistered apps in deployment directories
285
+ *
286
+ * Scans all deployment directories for known app patterns that aren't
287
+ * yet registered in the config's apps section.
288
+ *
289
+ * Patterns detected:
290
+ * - quickstart/ folder with Next.js + @cortexmemory/vercel-ai-provider
291
+ * - Any folder with @cortexmemory/sdk (basic app)
292
+ *
293
+ * @param config - Current CLI configuration
294
+ * @returns Array of discovered apps not yet registered
295
+ */
296
+ export function discoverUnregisteredApps(config) {
297
+ const discovered = [];
298
+ const registeredPaths = new Set();
299
+ // Build set of already-registered app paths
300
+ if (config.apps) {
301
+ for (const app of Object.values(config.apps)) {
302
+ const fullPath = join(app.projectPath, app.path);
303
+ registeredPaths.add(fullPath);
304
+ }
305
+ }
306
+ // Scan each deployment directory
307
+ for (const [deploymentName, deployment] of Object.entries(config.deployments)) {
308
+ if (!deployment.projectPath || !existsSync(deployment.projectPath)) {
309
+ continue;
310
+ }
311
+ const projectPath = deployment.projectPath;
312
+ // Check common app locations within deployment
313
+ const appLocations = [
314
+ { path: "quickstart", defaultName: `${deploymentName}-quickstart` },
315
+ { path: "app", defaultName: `${deploymentName}-app` },
316
+ { path: ".", defaultName: deploymentName }, // App in root
317
+ ];
318
+ for (const location of appLocations) {
319
+ const appPath = join(projectPath, location.path);
320
+ // Skip if already registered
321
+ if (registeredPaths.has(appPath)) {
322
+ continue;
323
+ }
324
+ // Skip if doesn't exist
325
+ if (!existsSync(appPath)) {
326
+ continue;
327
+ }
328
+ // Detect app type
329
+ const appType = detectAppType(appPath);
330
+ if (!appType) {
331
+ continue;
332
+ }
333
+ // Generate unique name
334
+ let name = location.defaultName;
335
+ let counter = 1;
336
+ while (config.apps?.[name] || discovered.some((d) => d.name === name)) {
337
+ name = `${location.defaultName}-${counter}`;
338
+ counter++;
339
+ }
340
+ discovered.push({
341
+ name,
342
+ type: appType,
343
+ path: location.path,
344
+ projectPath,
345
+ fullPath: appPath,
346
+ deploymentName,
347
+ });
348
+ }
349
+ // Also scan for subdirectories that might be apps
350
+ try {
351
+ const entries = readdirSync(projectPath, { withFileTypes: true });
352
+ for (const entry of entries) {
353
+ if (!entry.isDirectory())
354
+ continue;
355
+ // Skip common non-app directories
356
+ if ([
357
+ "node_modules",
358
+ ".next",
359
+ ".git",
360
+ "convex",
361
+ "dist",
362
+ "build",
363
+ "src",
364
+ ].includes(entry.name)) {
365
+ continue;
366
+ }
367
+ // Skip already checked locations
368
+ if (appLocations.some((l) => l.path === entry.name)) {
369
+ continue;
370
+ }
371
+ const appPath = join(projectPath, entry.name);
372
+ // Skip if already registered
373
+ if (registeredPaths.has(appPath)) {
374
+ continue;
375
+ }
376
+ // Detect app type
377
+ const appType = detectAppType(appPath);
378
+ if (!appType) {
379
+ continue;
380
+ }
381
+ // Generate unique name
382
+ let name = `${deploymentName}-${entry.name}`;
383
+ let counter = 1;
384
+ while (config.apps?.[name] || discovered.some((d) => d.name === name)) {
385
+ name = `${deploymentName}-${entry.name}-${counter}`;
386
+ counter++;
387
+ }
388
+ discovered.push({
389
+ name,
390
+ type: appType,
391
+ path: entry.name,
392
+ projectPath,
393
+ fullPath: appPath,
394
+ deploymentName,
395
+ });
396
+ }
397
+ }
398
+ catch {
399
+ // Can't read directory, skip
400
+ }
401
+ }
402
+ return discovered;
403
+ }
404
+ /**
405
+ * Register a discovered app in the config
406
+ */
407
+ export async function registerApp(app, options) {
408
+ const config = await loadConfig();
409
+ if (!config.apps) {
410
+ config.apps = {};
411
+ }
412
+ config.apps[app.name] = {
413
+ type: app.type,
414
+ path: app.path,
415
+ projectPath: app.projectPath,
416
+ enabled: options?.enabled ?? true,
417
+ port: options?.port ?? (app.type === "vercel-ai-quickstart" ? 3000 : 3001),
418
+ };
419
+ await saveUserConfig(config);
420
+ return config;
421
+ }
254
422
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cortexmemory/cli",
3
- "version": "0.31.0",
3
+ "version": "0.33.0",
4
4
  "description": "CLI tool for managing Cortex Memory deployments, performing administrative tasks, and streamlining development workflows",
5
5
  "type": "module",
6
6
  "bin": {
@@ -63,7 +63,7 @@
63
63
  "@cortexmemory/sdk": "*",
64
64
  "cli-table3": "^0.6.5",
65
65
  "commander": "^14.0.2",
66
- "convex": "^1.31.4",
66
+ "convex": "^1.31.5",
67
67
  "cosmiconfig": "^9.0.0",
68
68
  "dotenv": "^17.2.3",
69
69
  "fs-extra": "^11.3.3",
@@ -76,10 +76,10 @@
76
76
  "@eslint/js": "^9.39.2",
77
77
  "@types/fs-extra": "^11.0.4",
78
78
  "@types/jest": "^30.0.0",
79
- "@types/node": "^25.0.7",
79
+ "@types/node": "^25.0.9",
80
80
  "@types/prompts": "^2.4.9",
81
- "@typescript-eslint/eslint-plugin": "^8.53.0",
82
- "@typescript-eslint/parser": "^8.53.0",
81
+ "@typescript-eslint/eslint-plugin": "^8.53.1",
82
+ "@typescript-eslint/parser": "^8.53.1",
83
83
  "eslint": "^9.39.2",
84
84
  "globals": "^17.0.0",
85
85
  "jest": "^30.2.0",
@@ -9,13 +9,13 @@
9
9
  "version": "1.0.0",
10
10
  "dependencies": {
11
11
  "@cortexmemory/sdk": "latest",
12
- "@hono/node-server": "^1.19.8",
13
- "convex": "^1.31.4",
12
+ "@hono/node-server": "^1.19.9",
13
+ "convex": "^1.31.5",
14
14
  "dotenv": "^17.2.3",
15
15
  "hono": "^4.11.4"
16
16
  },
17
17
  "devDependencies": {
18
- "@types/node": "^25.0.7",
18
+ "@types/node": "^25.0.9",
19
19
  "@vitest/coverage-v8": "^4.0.17",
20
20
  "tsx": "^4.21.0",
21
21
  "typescript": "^5.9.3",
@@ -533,9 +533,9 @@
533
533
  }
534
534
  },
535
535
  "node_modules/@hono/node-server": {
536
- "version": "1.19.8",
537
- "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.8.tgz",
538
- "integrity": "sha512-0/g2lIOPzX8f3vzW1ggQgvG5mjtFBDBHFAzI5SFAi2DzSqS9luJwqg9T6O/gKYLi+inS7eNxBeIFkkghIPvrMA==",
536
+ "version": "1.19.9",
537
+ "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.9.tgz",
538
+ "integrity": "sha512-vHL6w3ecZsky+8P5MD+eFfaGTyCeOHUIFYMGpQGbrBTSmNNoxv0if69rEZ5giu36weC5saFuznL411gRX7bJDw==",
539
539
  "license": "MIT",
540
540
  "engines": {
541
541
  "node": ">=18.14.1"
@@ -955,9 +955,9 @@
955
955
  "license": "MIT"
956
956
  },
957
957
  "node_modules/@types/node": {
958
- "version": "25.0.7",
959
- "resolved": "https://registry.npmjs.org/@types/node/-/node-25.0.7.tgz",
960
- "integrity": "sha512-C/er7DlIZgRJO7WtTdYovjIFzGsz0I95UlMyR9anTb4aCpBSRWe5Jc1/RvLKUfzmOxHPGjSE5+63HgLtndxU4w==",
958
+ "version": "25.0.9",
959
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-25.0.9.tgz",
960
+ "integrity": "sha512-/rpCXHlCWeqClNBwUhDcusJxXYDjZTyE8v5oTO7WbL8eij2nKhUeU89/6xgjU7N4/Vh3He0BtyhJdQbDyhiXAw==",
961
961
  "dev": true,
962
962
  "license": "MIT",
963
963
  "dependencies": {
@@ -1189,9 +1189,9 @@
1189
1189
  }
1190
1190
  },
1191
1191
  "node_modules/convex": {
1192
- "version": "1.31.4",
1193
- "resolved": "https://registry.npmjs.org/convex/-/convex-1.31.4.tgz",
1194
- "integrity": "sha512-iDm283Gb/CFRb30cvhH6Z9qlYof6dhtin415FarKUKB3K7gumO0rn8snY0CTvUrThV3UnCtttbuL/1oY7LscyA==",
1192
+ "version": "1.31.5",
1193
+ "resolved": "https://registry.npmjs.org/convex/-/convex-1.31.5.tgz",
1194
+ "integrity": "sha512-E1IuJKFwMCHDToNGukBPs6c7RFaarR3t8chLF9n98TM5/Tgmj8lM6l7sKM1aJ3VwqGaB4wbeUAPY8osbCOXBhQ==",
1195
1195
  "license": "Apache-2.0",
1196
1196
  "dependencies": {
1197
1197
  "esbuild": "0.27.0",
@@ -19,13 +19,13 @@
19
19
  },
20
20
  "dependencies": {
21
21
  "@cortexmemory/sdk": "latest",
22
- "convex": "^1.31.4",
22
+ "convex": "^1.31.5",
23
23
  "dotenv": "^17.2.3",
24
24
  "hono": "^4.11.4",
25
- "@hono/node-server": "^1.19.8"
25
+ "@hono/node-server": "^1.19.9"
26
26
  },
27
27
  "devDependencies": {
28
- "@types/node": "^25.0.7",
28
+ "@types/node": "^25.0.9",
29
29
  "@vitest/coverage-v8": "^4.0.17",
30
30
  "typescript": "^5.9.3",
31
31
  "tsx": "^4.21.0",
@@ -13,11 +13,11 @@
13
13
  * infrastructure is identical to ensure feature parity.
14
14
  */
15
15
 
16
- import { createCortexMemoryAsync } from "@cortexmemory/vercel-ai-provider";
17
- import type {
18
- LayerObserver,
19
- CortexMemoryConfig,
16
+ import {
17
+ createCortexMemoryAsync,
18
+ createLayerStreamObserver,
20
19
  } from "@cortexmemory/vercel-ai-provider";
20
+ import type { CortexMemoryConfig } from "@cortexmemory/vercel-ai-provider";
21
21
  import { openai, createOpenAI } from "@ai-sdk/openai";
22
22
  import {
23
23
  streamText,
@@ -52,8 +52,7 @@ function getCortexMemoryConfig(
52
52
  memorySpaceId: string,
53
53
  userId: string,
54
54
  conversationId: string,
55
- layerObserver?: LayerObserver,
56
- ): CortexMemoryConfig {
55
+ ): Omit<CortexMemoryConfig, "layerObserver"> {
57
56
  return {
58
57
  convexUrl: process.env.CONVEX_URL!,
59
58
  memorySpaceId,
@@ -103,9 +102,6 @@ function getCortexMemoryConfig(
103
102
  // Memory recall configuration
104
103
  memorySearchLimit: 20,
105
104
 
106
- // Real-time layer tracking
107
- layerObserver,
108
-
109
105
  // Debug in development
110
106
  debug: process.env.NODE_ENV === "development",
111
107
  };
@@ -233,54 +229,23 @@ export async function POST(req: Request) {
233
229
  return createUIMessageStreamResponse({
234
230
  stream: createUIMessageStream({
235
231
  execute: async ({ writer }) => {
236
- // Create layer observer for real-time UI updates
237
- const layerObserver: LayerObserver = {
238
- onOrchestrationStart: (orchestrationId) => {
239
- writer.write({
240
- type: "data-orchestration-start",
241
- data: { orchestrationId },
242
- transient: true,
243
- });
244
- },
245
- onLayerUpdate: (event) => {
246
- writer.write({
247
- type: "data-layer-update",
248
- data: {
249
- layer: event.layer,
250
- status: event.status,
251
- timestamp: event.timestamp,
252
- latencyMs: event.latencyMs,
253
- data: event.data,
254
- error: event.error,
255
- revisionAction: event.revisionAction,
256
- supersededFacts: event.supersededFacts,
257
- },
258
- transient: true,
259
- });
260
- },
261
- onOrchestrationComplete: (summary) => {
262
- writer.write({
263
- type: "data-orchestration-complete",
264
- data: {
265
- orchestrationId: summary.orchestrationId,
266
- totalLatencyMs: summary.totalLatencyMs,
267
- createdIds: summary.createdIds,
268
- },
269
- transient: true,
270
- });
271
- },
272
- };
232
+ // Create layer observer using the streaming helper
233
+ // This replaces ~35 lines of manual observer setup with 2 lines!
234
+ const { observer, emitTo } = createLayerStreamObserver();
235
+ emitTo(writer);
273
236
 
274
237
  // Build config with observer
275
238
  const config = getCortexMemoryConfig(
276
239
  memorySpaceId,
277
240
  userId,
278
241
  conversationId,
279
- layerObserver,
280
242
  );
281
243
 
282
244
  // Create memory-augmented model - THIS handles both recall AND storage!
283
- const cortexMemory = await createCortexMemoryAsync(config);
245
+ const cortexMemory = await createCortexMemoryAsync({
246
+ ...config,
247
+ layerObserver: observer,
248
+ });
284
249
 
285
250
  // Stream response with automatic memory integration
286
251
  const result = streamText({