cortex-engine 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.
Files changed (139) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +154 -0
  3. package/dist/bin/cli.d.ts +13 -0
  4. package/dist/bin/cli.d.ts.map +1 -0
  5. package/dist/bin/cli.js +92 -0
  6. package/dist/bin/cli.js.map +1 -0
  7. package/dist/bin/config-cmd.d.ts +12 -0
  8. package/dist/bin/config-cmd.d.ts.map +1 -0
  9. package/dist/bin/config-cmd.js +184 -0
  10. package/dist/bin/config-cmd.js.map +1 -0
  11. package/dist/bin/config-loader.d.ts +12 -0
  12. package/dist/bin/config-loader.d.ts.map +1 -0
  13. package/dist/bin/config-loader.js +42 -0
  14. package/dist/bin/config-loader.js.map +1 -0
  15. package/dist/bin/digest-cmd.d.ts +13 -0
  16. package/dist/bin/digest-cmd.d.ts.map +1 -0
  17. package/dist/bin/digest-cmd.js +286 -0
  18. package/dist/bin/digest-cmd.js.map +1 -0
  19. package/dist/bin/init.d.ts +33 -0
  20. package/dist/bin/init.d.ts.map +1 -0
  21. package/dist/bin/init.js +355 -0
  22. package/dist/bin/init.js.map +1 -0
  23. package/dist/bin/serve.d.ts +15 -0
  24. package/dist/bin/serve.d.ts.map +1 -0
  25. package/dist/bin/serve.js +21 -0
  26. package/dist/bin/serve.js.map +1 -0
  27. package/dist/bridges/bridge.d.ts +46 -0
  28. package/dist/bridges/bridge.d.ts.map +1 -0
  29. package/dist/bridges/bridge.js +128 -0
  30. package/dist/bridges/bridge.js.map +1 -0
  31. package/dist/bridges/registry.d.ts +19 -0
  32. package/dist/bridges/registry.d.ts.map +1 -0
  33. package/dist/bridges/registry.js +36 -0
  34. package/dist/bridges/registry.js.map +1 -0
  35. package/dist/core/config.d.ts +108 -0
  36. package/dist/core/config.d.ts.map +1 -0
  37. package/dist/core/config.js +29 -0
  38. package/dist/core/config.js.map +1 -0
  39. package/dist/core/embed.d.ts +16 -0
  40. package/dist/core/embed.d.ts.map +1 -0
  41. package/dist/core/embed.js +7 -0
  42. package/dist/core/embed.js.map +1 -0
  43. package/dist/core/llm.d.ts +31 -0
  44. package/dist/core/llm.d.ts.map +1 -0
  45. package/dist/core/llm.js +13 -0
  46. package/dist/core/llm.js.map +1 -0
  47. package/dist/core/nli.d.ts +26 -0
  48. package/dist/core/nli.d.ts.map +1 -0
  49. package/dist/core/nli.js +11 -0
  50. package/dist/core/nli.js.map +1 -0
  51. package/dist/core/session.d.ts +26 -0
  52. package/dist/core/session.d.ts.map +1 -0
  53. package/dist/core/session.js +71 -0
  54. package/dist/core/session.js.map +1 -0
  55. package/dist/core/store.d.ts +58 -0
  56. package/dist/core/store.d.ts.map +1 -0
  57. package/dist/core/store.js +8 -0
  58. package/dist/core/store.js.map +1 -0
  59. package/dist/core/types.d.ts +148 -0
  60. package/dist/core/types.d.ts.map +1 -0
  61. package/dist/core/types.js +8 -0
  62. package/dist/core/types.js.map +1 -0
  63. package/dist/engines/cognition.d.ts +76 -0
  64. package/dist/engines/cognition.d.ts.map +1 -0
  65. package/dist/engines/cognition.js +441 -0
  66. package/dist/engines/cognition.js.map +1 -0
  67. package/dist/engines/digest.d.ts +52 -0
  68. package/dist/engines/digest.d.ts.map +1 -0
  69. package/dist/engines/digest.js +351 -0
  70. package/dist/engines/digest.js.map +1 -0
  71. package/dist/engines/fsrs.d.ts +44 -0
  72. package/dist/engines/fsrs.d.ts.map +1 -0
  73. package/dist/engines/fsrs.js +122 -0
  74. package/dist/engines/fsrs.js.map +1 -0
  75. package/dist/engines/keywords.d.ts +12 -0
  76. package/dist/engines/keywords.d.ts.map +1 -0
  77. package/dist/engines/keywords.js +45 -0
  78. package/dist/engines/keywords.js.map +1 -0
  79. package/dist/engines/memory.d.ts +55 -0
  80. package/dist/engines/memory.d.ts.map +1 -0
  81. package/dist/engines/memory.js +147 -0
  82. package/dist/engines/memory.js.map +1 -0
  83. package/dist/index.d.ts +42 -0
  84. package/dist/index.d.ts.map +1 -0
  85. package/dist/index.js +38 -0
  86. package/dist/index.js.map +1 -0
  87. package/dist/mcp/server.d.ts +12 -0
  88. package/dist/mcp/server.d.ts.map +1 -0
  89. package/dist/mcp/server.js +173 -0
  90. package/dist/mcp/server.js.map +1 -0
  91. package/dist/mcp/tools.d.ts +45 -0
  92. package/dist/mcp/tools.d.ts.map +1 -0
  93. package/dist/mcp/tools.js +814 -0
  94. package/dist/mcp/tools.js.map +1 -0
  95. package/dist/namespace/manager.d.ts +28 -0
  96. package/dist/namespace/manager.d.ts.map +1 -0
  97. package/dist/namespace/manager.js +73 -0
  98. package/dist/namespace/manager.js.map +1 -0
  99. package/dist/namespace/scoped-store.d.ts +43 -0
  100. package/dist/namespace/scoped-store.d.ts.map +1 -0
  101. package/dist/namespace/scoped-store.js +91 -0
  102. package/dist/namespace/scoped-store.js.map +1 -0
  103. package/dist/plugins/loader.d.ts +18 -0
  104. package/dist/plugins/loader.d.ts.map +1 -0
  105. package/dist/plugins/loader.js +71 -0
  106. package/dist/plugins/loader.js.map +1 -0
  107. package/dist/providers/nli-http.d.ts +34 -0
  108. package/dist/providers/nli-http.d.ts.map +1 -0
  109. package/dist/providers/nli-http.js +83 -0
  110. package/dist/providers/nli-http.js.map +1 -0
  111. package/dist/providers/ollama.d.ts +37 -0
  112. package/dist/providers/ollama.d.ts.map +1 -0
  113. package/dist/providers/ollama.js +103 -0
  114. package/dist/providers/ollama.js.map +1 -0
  115. package/dist/providers/vertex-embed.d.ts +38 -0
  116. package/dist/providers/vertex-embed.d.ts.map +1 -0
  117. package/dist/providers/vertex-embed.js +69 -0
  118. package/dist/providers/vertex-embed.js.map +1 -0
  119. package/dist/providers/vertex-llm.d.ts +25 -0
  120. package/dist/providers/vertex-llm.d.ts.map +1 -0
  121. package/dist/providers/vertex-llm.js +75 -0
  122. package/dist/providers/vertex-llm.js.map +1 -0
  123. package/dist/stores/firestore.d.ts +59 -0
  124. package/dist/stores/firestore.d.ts.map +1 -0
  125. package/dist/stores/firestore.js +530 -0
  126. package/dist/stores/firestore.js.map +1 -0
  127. package/dist/stores/sqlite.d.ts +43 -0
  128. package/dist/stores/sqlite.d.ts.map +1 -0
  129. package/dist/stores/sqlite.js +593 -0
  130. package/dist/stores/sqlite.js.map +1 -0
  131. package/dist/triggers/pipeline.d.ts +21 -0
  132. package/dist/triggers/pipeline.d.ts.map +1 -0
  133. package/dist/triggers/pipeline.js +30 -0
  134. package/dist/triggers/pipeline.js.map +1 -0
  135. package/dist/triggers/registry.d.ts +17 -0
  136. package/dist/triggers/registry.d.ts.map +1 -0
  137. package/dist/triggers/registry.js +32 -0
  138. package/dist/triggers/registry.js.map +1 -0
  139. package/package.json +94 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * NamespaceManager — manages multiple cognitive namespaces from config.
3
+ *
4
+ * Each namespace gets its own CortexStore instance (via storeFactory) so typed
5
+ * tables are fully isolated. ScopedStore wraps each instance to prefix generic
6
+ * collection names, preventing cross-namespace collisions on arbitrary collections.
7
+ */
8
+ import type { CortexConfig, NamespaceConfig } from '../core/config.js';
9
+ import type { CortexStore } from '../core/store.js';
10
+ export declare class NamespaceManager {
11
+ private readonly namespaces;
12
+ private readonly defaultNamespace;
13
+ private readonly configs;
14
+ constructor(config: CortexConfig, storeFactory: (namespace: string, prefix: string) => CortexStore);
15
+ /** Get the scoped store for a namespace (defaults to the default namespace). */
16
+ getStore(namespace?: string): CortexStore;
17
+ /** Get the config for a namespace (defaults to the default namespace). */
18
+ getConfig(namespace?: string): NamespaceConfig;
19
+ /** Get the default namespace name. */
20
+ getDefaultNamespace(): string;
21
+ /** Get all namespace names. */
22
+ getNamespaceNames(): string[];
23
+ /** Get the union of all active cognitive tools across every namespace. */
24
+ getActiveTools(): Set<string>;
25
+ /** Check whether a cognitive tool is active for a given namespace. */
26
+ isToolActive(toolName: string, namespace?: string): boolean;
27
+ }
28
+ //# sourceMappingURL=manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/namespace/manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2B;IACtD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;gBAGrD,MAAM,EAAE,YAAY,EACpB,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,WAAW;IA4BlE,gFAAgF;IAChF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,WAAW;IAOzC,0EAA0E;IAC1E,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,eAAe;IAO9C,sCAAsC;IACtC,mBAAmB,IAAI,MAAM;IAI7B,+BAA+B;IAC/B,iBAAiB,IAAI,MAAM,EAAE;IAI7B,0EAA0E;IAC1E,cAAc,IAAI,GAAG,CAAC,MAAM,CAAC;IAU7B,sEAAsE;IACtE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO;CAG5D"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * NamespaceManager — manages multiple cognitive namespaces from config.
3
+ *
4
+ * Each namespace gets its own CortexStore instance (via storeFactory) so typed
5
+ * tables are fully isolated. ScopedStore wraps each instance to prefix generic
6
+ * collection names, preventing cross-namespace collisions on arbitrary collections.
7
+ */
8
+ import { ScopedStore } from './scoped-store.js';
9
+ export class NamespaceManager {
10
+ namespaces;
11
+ defaultNamespace;
12
+ configs;
13
+ constructor(config, storeFactory) {
14
+ this.namespaces = new Map();
15
+ this.configs = new Map();
16
+ let resolvedDefault = null;
17
+ let firstNamespace = null;
18
+ for (const [name, nsConfig] of Object.entries(config.namespaces)) {
19
+ const store = storeFactory(name, nsConfig.collections_prefix);
20
+ this.namespaces.set(name, new ScopedStore(store, nsConfig.collections_prefix));
21
+ this.configs.set(name, nsConfig);
22
+ if (firstNamespace === null) {
23
+ firstNamespace = name;
24
+ }
25
+ if (nsConfig.default === true && resolvedDefault === null) {
26
+ resolvedDefault = name;
27
+ }
28
+ }
29
+ if (firstNamespace === null) {
30
+ throw new Error('CortexConfig must define at least one namespace');
31
+ }
32
+ this.defaultNamespace = resolvedDefault ?? firstNamespace;
33
+ }
34
+ /** Get the scoped store for a namespace (defaults to the default namespace). */
35
+ getStore(namespace) {
36
+ const ns = namespace ?? this.defaultNamespace;
37
+ const store = this.namespaces.get(ns);
38
+ if (!store)
39
+ throw new Error(`Unknown namespace: ${ns}`);
40
+ return store;
41
+ }
42
+ /** Get the config for a namespace (defaults to the default namespace). */
43
+ getConfig(namespace) {
44
+ const ns = namespace ?? this.defaultNamespace;
45
+ const cfg = this.configs.get(ns);
46
+ if (!cfg)
47
+ throw new Error(`Unknown namespace: ${ns}`);
48
+ return cfg;
49
+ }
50
+ /** Get the default namespace name. */
51
+ getDefaultNamespace() {
52
+ return this.defaultNamespace;
53
+ }
54
+ /** Get all namespace names. */
55
+ getNamespaceNames() {
56
+ return Array.from(this.namespaces.keys());
57
+ }
58
+ /** Get the union of all active cognitive tools across every namespace. */
59
+ getActiveTools() {
60
+ const tools = new Set();
61
+ for (const cfg of this.configs.values()) {
62
+ for (const tool of cfg.cognitive_tools) {
63
+ tools.add(tool);
64
+ }
65
+ }
66
+ return tools;
67
+ }
68
+ /** Check whether a cognitive tool is active for a given namespace. */
69
+ isToolActive(toolName, namespace) {
70
+ return this.getConfig(namespace).cognitive_tools.includes(toolName);
71
+ }
72
+ }
73
+ //# sourceMappingURL=manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/namespace/manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * ScopedStore — a CortexStore wrapper that prefixes generic collection names.
3
+ *
4
+ * Each namespace gets its own underlying CortexStore instance (created by
5
+ * NamespaceManager) so typed tables (memories, observations, etc.) are already
6
+ * isolated by the store's namespace prefix. ScopedStore's only job is to
7
+ * prefix the generic put/get/query collection names so that arbitrary
8
+ * collections written by one namespace don't collide with another.
9
+ */
10
+ import type { CortexStore } from '../core/store.js';
11
+ import type { Memory, Observation, Edge, OpsEntry, OpsFilters, Signal, BeliefEntry, SearchResult, FSRSData, QueryFilter } from '../core/types.js';
12
+ export declare class ScopedStore implements CortexStore {
13
+ private readonly inner;
14
+ private readonly prefix;
15
+ constructor(inner: CortexStore, prefix: string);
16
+ putMemory(memory: Omit<Memory, 'id'>): Promise<string>;
17
+ getMemory(id: string): Promise<Memory | null>;
18
+ updateMemory(id: string, updates: Partial<Omit<Memory, 'id'>>): Promise<void>;
19
+ findNearest(embedding: number[], limit: number): Promise<SearchResult[]>;
20
+ touchMemory(id: string, fsrsUpdates: Partial<FSRSData>): Promise<void>;
21
+ getAllMemories(): Promise<Memory[]>;
22
+ putObservation(obs: Omit<Observation, 'id'>): Promise<string>;
23
+ getUnprocessedObservations(limit: number): Promise<Observation[]>;
24
+ markObservationProcessed(id: string): Promise<void>;
25
+ putEdge(edge: Omit<Edge, 'id'>): Promise<string>;
26
+ getEdgesFrom(memoryId: string): Promise<Edge[]>;
27
+ getEdgesForMemories(memoryIds: string[]): Promise<Edge[]>;
28
+ appendOps(entry: Omit<OpsEntry, 'id'>): Promise<string>;
29
+ queryOps(filters: OpsFilters): Promise<OpsEntry[]>;
30
+ updateOps(id: string, updates: Partial<Omit<OpsEntry, 'id'>>): Promise<void>;
31
+ putSignal(signal: Omit<Signal, 'id'>): Promise<string>;
32
+ putBelief(entry: Omit<BeliefEntry, 'id'>): Promise<string>;
33
+ getBeliefHistory(conceptId: string): Promise<BeliefEntry[]>;
34
+ put(collection: string, doc: Record<string, unknown>): Promise<string>;
35
+ get(collection: string, id: string): Promise<Record<string, unknown> | null>;
36
+ update(collection: string, id: string, updates: Record<string, unknown>): Promise<void>;
37
+ query(collection: string, filters: QueryFilter[], options?: {
38
+ limit?: number;
39
+ orderBy?: string;
40
+ orderDir?: 'asc' | 'desc';
41
+ }): Promise<Record<string, unknown>[]>;
42
+ }
43
+ //# sourceMappingURL=scoped-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoped-store.d.ts","sourceRoot":"","sources":["../../src/namespace/scoped-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,MAAM,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAE1B,qBAAa,WAAY,YAAW,WAAW;IAE3C,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,MAAM;IAKjC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAItD,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAI7C,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7E,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAIxE,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAItE,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAMnC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAI7D,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAIjE,wBAAwB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnD,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAIhD,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAI/C,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAMzD,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAIvD,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAIlD,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5E,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAMtD,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1D,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAM3D,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAItE,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAI5E,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvF,KAAK,CACH,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,WAAW,EAAE,EACtB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;KAAE,GACxE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;CAGtC"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * ScopedStore — a CortexStore wrapper that prefixes generic collection names.
3
+ *
4
+ * Each namespace gets its own underlying CortexStore instance (created by
5
+ * NamespaceManager) so typed tables (memories, observations, etc.) are already
6
+ * isolated by the store's namespace prefix. ScopedStore's only job is to
7
+ * prefix the generic put/get/query collection names so that arbitrary
8
+ * collections written by one namespace don't collide with another.
9
+ */
10
+ export class ScopedStore {
11
+ inner;
12
+ prefix;
13
+ constructor(inner, prefix) {
14
+ this.inner = inner;
15
+ this.prefix = prefix;
16
+ }
17
+ // ─── Memory — delegate directly (store instance is already namespace-scoped) ─
18
+ putMemory(memory) {
19
+ return this.inner.putMemory(memory);
20
+ }
21
+ getMemory(id) {
22
+ return this.inner.getMemory(id);
23
+ }
24
+ updateMemory(id, updates) {
25
+ return this.inner.updateMemory(id, updates);
26
+ }
27
+ findNearest(embedding, limit) {
28
+ return this.inner.findNearest(embedding, limit);
29
+ }
30
+ touchMemory(id, fsrsUpdates) {
31
+ return this.inner.touchMemory(id, fsrsUpdates);
32
+ }
33
+ getAllMemories() {
34
+ return this.inner.getAllMemories();
35
+ }
36
+ // ─── Observation ──────────────────────────────────────────────────────────
37
+ putObservation(obs) {
38
+ return this.inner.putObservation(obs);
39
+ }
40
+ getUnprocessedObservations(limit) {
41
+ return this.inner.getUnprocessedObservations(limit);
42
+ }
43
+ markObservationProcessed(id) {
44
+ return this.inner.markObservationProcessed(id);
45
+ }
46
+ // ─── Edge ─────────────────────────────────────────────────────────────────
47
+ putEdge(edge) {
48
+ return this.inner.putEdge(edge);
49
+ }
50
+ getEdgesFrom(memoryId) {
51
+ return this.inner.getEdgesFrom(memoryId);
52
+ }
53
+ getEdgesForMemories(memoryIds) {
54
+ return this.inner.getEdgesForMemories(memoryIds);
55
+ }
56
+ // ─── Ops ──────────────────────────────────────────────────────────────────
57
+ appendOps(entry) {
58
+ return this.inner.appendOps(entry);
59
+ }
60
+ queryOps(filters) {
61
+ return this.inner.queryOps(filters);
62
+ }
63
+ updateOps(id, updates) {
64
+ return this.inner.updateOps(id, updates);
65
+ }
66
+ // ─── Signal ───────────────────────────────────────────────────────────────
67
+ putSignal(signal) {
68
+ return this.inner.putSignal(signal);
69
+ }
70
+ // ─── Belief ───────────────────────────────────────────────────────────────
71
+ putBelief(entry) {
72
+ return this.inner.putBelief(entry);
73
+ }
74
+ getBeliefHistory(conceptId) {
75
+ return this.inner.getBeliefHistory(conceptId);
76
+ }
77
+ // ─── Generic — prefix the collection name ─────────────────────────────────
78
+ put(collection, doc) {
79
+ return this.inner.put(this.prefix + collection, doc);
80
+ }
81
+ get(collection, id) {
82
+ return this.inner.get(this.prefix + collection, id);
83
+ }
84
+ update(collection, id, updates) {
85
+ return this.inner.update(this.prefix + collection, id, updates);
86
+ }
87
+ query(collection, filters, options) {
88
+ return this.inner.query(this.prefix + collection, filters, options);
89
+ }
90
+ }
91
+ //# sourceMappingURL=scoped-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoped-store.js","sourceRoot":"","sources":["../../src/namespace/scoped-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Plugin loader — dynamically imports plugin packages and extracts tool definitions.
3
+ *
4
+ * Plugins are npm packages or local paths that export a ToolPlugin object as their
5
+ * default export. Each plugin contributes a set of ToolDefinition[] to the engine.
6
+ */
7
+ import type { ToolDefinition } from '../mcp/tools.js';
8
+ /**
9
+ * Load plugins by dynamic import and return a flat array of contributed tools.
10
+ *
11
+ * Each plugin module must have a default export conforming to ToolPlugin:
12
+ * { name: string, tools: ToolDefinition[] }
13
+ *
14
+ * Invalid plugins are skipped with a console warning (fail-open for resilience).
15
+ * Duplicate tool names are detected and skipped with a warning.
16
+ */
17
+ export declare function loadPlugins(pluginPaths: string[], coreToolNames?: Set<string>): Promise<ToolDefinition[]>;
18
+ //# sourceMappingURL=loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/plugins/loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAoBtD;;;;;;;;GAQG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EAAE,EACrB,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAC1B,OAAO,CAAC,cAAc,EAAE,CAAC,CAwC3B"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Plugin loader — dynamically imports plugin packages and extracts tool definitions.
3
+ *
4
+ * Plugins are npm packages or local paths that export a ToolPlugin object as their
5
+ * default export. Each plugin contributes a set of ToolDefinition[] to the engine.
6
+ */
7
+ import { resolve, isAbsolute } from 'node:path';
8
+ import { pathToFileURL } from 'node:url';
9
+ /**
10
+ * Resolve a plugin specifier to an importable path.
11
+ *
12
+ * npm packages (e.g., "@fozikio/tools-threads") are returned as-is.
13
+ * Relative paths (e.g., "./plugins/custom") are resolved against cwd,
14
+ * not the loader file location, then converted to a file:// URL for ESM.
15
+ */
16
+ function resolvePluginPath(spec) {
17
+ // npm package names start with a letter, @, or are scoped
18
+ if (!spec.startsWith('.') && !spec.startsWith('/') && !isAbsolute(spec)) {
19
+ return spec; // npm package — let Node resolve it
20
+ }
21
+ // Relative or absolute path — resolve against cwd and convert to file URL
22
+ const abs = resolve(process.cwd(), spec);
23
+ return pathToFileURL(abs).href;
24
+ }
25
+ /**
26
+ * Load plugins by dynamic import and return a flat array of contributed tools.
27
+ *
28
+ * Each plugin module must have a default export conforming to ToolPlugin:
29
+ * { name: string, tools: ToolDefinition[] }
30
+ *
31
+ * Invalid plugins are skipped with a console warning (fail-open for resilience).
32
+ * Duplicate tool names are detected and skipped with a warning.
33
+ */
34
+ export async function loadPlugins(pluginPaths, coreToolNames) {
35
+ if (pluginPaths.length === 0)
36
+ return [];
37
+ const tools = [];
38
+ const seenNames = new Set(coreToolNames ?? []);
39
+ for (const spec of pluginPaths) {
40
+ try {
41
+ const importPath = resolvePluginPath(spec);
42
+ const mod = await import(importPath);
43
+ const plugin = mod.default;
44
+ if (!plugin || typeof plugin.name !== 'string' || !Array.isArray(plugin.tools)) {
45
+ console.warn(`[cortex-engine] Plugin "${spec}" does not export a valid ToolPlugin (expected { name, tools }). Skipping.`);
46
+ continue;
47
+ }
48
+ let added = 0;
49
+ for (const tool of plugin.tools) {
50
+ if (typeof tool.name !== 'string' || typeof tool.handler !== 'function') {
51
+ console.warn(`[cortex-engine] Plugin "${plugin.name}" has invalid tool definition. Skipping tool.`);
52
+ continue;
53
+ }
54
+ if (seenNames.has(tool.name)) {
55
+ console.warn(`[cortex-engine] Plugin "${plugin.name}" defines tool "${tool.name}" which already exists. Skipping duplicate.`);
56
+ continue;
57
+ }
58
+ seenNames.add(tool.name);
59
+ tools.push(tool);
60
+ added++;
61
+ }
62
+ console.log(`[cortex-engine] Loaded plugin "${plugin.name}" with ${added} tool(s).`);
63
+ }
64
+ catch (err) {
65
+ const message = err instanceof Error ? err.message : String(err);
66
+ console.warn(`[cortex-engine] Failed to load plugin "${spec}": ${message}. Skipping.`);
67
+ }
68
+ }
69
+ return tools;
70
+ }
71
+ //# sourceMappingURL=loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/plugins/loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAIzC;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,IAAY;IACrC,0DAA0D;IAC1D,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACxE,OAAO,IAAI,CAAC,CAAC,oCAAoC;IACnD,CAAC;IACD,0EAA0E;IAC1E,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;IACzC,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,WAAqB,EACrB,aAA2B;IAE3B,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAExC,MAAM,KAAK,GAAqB,EAAE,CAAC;IACnC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAS,aAAa,IAAI,EAAE,CAAC,CAAC;IAEvD,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC3C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,UAAU,CAA6B,CAAC;YACjE,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;YAE3B,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/E,OAAO,CAAC,IAAI,CAAC,2BAA2B,IAAI,4EAA4E,CAAC,CAAC;gBAC1H,SAAS;YACX,CAAC;YAED,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBAChC,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;oBACxE,OAAO,CAAC,IAAI,CAAC,2BAA2B,MAAM,CAAC,IAAI,+CAA+C,CAAC,CAAC;oBACpG,SAAS;gBACX,CAAC;gBACD,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7B,OAAO,CAAC,IAAI,CAAC,2BAA2B,MAAM,CAAC,IAAI,mBAAmB,IAAI,CAAC,IAAI,6CAA6C,CAAC,CAAC;oBAC9H,SAAS;gBACX,CAAC;gBACD,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjB,KAAK,EAAE,CAAC;YACV,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,kCAAkC,MAAM,CAAC,IAAI,UAAU,KAAK,WAAW,CAAC,CAAC;QACvF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,0CAA0C,IAAI,MAAM,OAAO,aAAa,CAAC,CAAC;QACzF,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * LocalNLIProvider — HTTP client for the NLI cross-encoder service.
3
+ *
4
+ * Talks to a local Python service running cross-encoder/nli-roberta-base
5
+ * (default: http://127.0.0.1:11435). Falls back gracefully if the
6
+ * service is unavailable.
7
+ */
8
+ import type { NLIProvider, NLIResult, NLILabel } from '../core/nli.js';
9
+ export declare class LocalNLIProvider implements NLIProvider {
10
+ readonly name = "nli-http";
11
+ private readonly baseUrl;
12
+ constructor(options?: {
13
+ baseUrl?: string;
14
+ });
15
+ classify(premise: string, hypothesis: string): Promise<NLIResult>;
16
+ classifyBatch(pairs: Array<{
17
+ premise: string;
18
+ hypothesis: string;
19
+ }>): Promise<NLIResult[]>;
20
+ /**
21
+ * Check if the NLI service is available.
22
+ * Returns false if the service is down — callers can fall back to LLM.
23
+ */
24
+ isAvailable(): Promise<boolean>;
25
+ }
26
+ /**
27
+ * Map NLI labels to the contradiction evaluation vocabulary used by cortex.
28
+ *
29
+ * NLI "contradiction" → cortex "genuine"
30
+ * NLI "entailment" → cortex "complementary"
31
+ * NLI "neutral" → cortex "tension" (may or may not be meaningful)
32
+ */
33
+ export declare function nliToCortexVerdict(label: NLILabel, scores: Record<NLILabel, number>): 'genuine' | 'tension' | 'complementary' | 'unrelated';
34
+ //# sourceMappingURL=nli-http.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nli-http.d.ts","sourceRoot":"","sources":["../../src/providers/nli-http.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEvE,qBAAa,gBAAiB,YAAW,WAAW;IAClD,QAAQ,CAAC,IAAI,cAAc;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;IAIpC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAejE,aAAa,CACjB,KAAK,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,GACpD,OAAO,CAAC,SAAS,EAAE,CAAC;IAgBvB;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;CAUtC;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAC/B,SAAS,GAAG,SAAS,GAAG,eAAe,GAAG,WAAW,CAwBvD"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * LocalNLIProvider — HTTP client for the NLI cross-encoder service.
3
+ *
4
+ * Talks to a local Python service running cross-encoder/nli-roberta-base
5
+ * (default: http://127.0.0.1:11435). Falls back gracefully if the
6
+ * service is unavailable.
7
+ */
8
+ export class LocalNLIProvider {
9
+ name = 'nli-http';
10
+ baseUrl;
11
+ constructor(options) {
12
+ this.baseUrl = options?.baseUrl ?? 'http://127.0.0.1:11435';
13
+ }
14
+ async classify(premise, hypothesis) {
15
+ const response = await fetch(`${this.baseUrl}/classify`, {
16
+ method: 'POST',
17
+ headers: { 'Content-Type': 'application/json' },
18
+ body: JSON.stringify({ premise, hypothesis }),
19
+ });
20
+ if (!response.ok) {
21
+ const text = await response.text().catch(() => '(no body)');
22
+ throw new Error(`NLI service error: HTTP ${response.status} — ${text}`);
23
+ }
24
+ return response.json();
25
+ }
26
+ async classifyBatch(pairs) {
27
+ const response = await fetch(`${this.baseUrl}/batch`, {
28
+ method: 'POST',
29
+ headers: { 'Content-Type': 'application/json' },
30
+ body: JSON.stringify({ pairs }),
31
+ });
32
+ if (!response.ok) {
33
+ const text = await response.text().catch(() => '(no body)');
34
+ throw new Error(`NLI batch error: HTTP ${response.status} — ${text}`);
35
+ }
36
+ const data = await response.json();
37
+ return data.results;
38
+ }
39
+ /**
40
+ * Check if the NLI service is available.
41
+ * Returns false if the service is down — callers can fall back to LLM.
42
+ */
43
+ async isAvailable() {
44
+ try {
45
+ const response = await fetch(`${this.baseUrl}/health`, {
46
+ signal: AbortSignal.timeout(2000),
47
+ });
48
+ return response.ok;
49
+ }
50
+ catch {
51
+ return false;
52
+ }
53
+ }
54
+ }
55
+ /**
56
+ * Map NLI labels to the contradiction evaluation vocabulary used by cortex.
57
+ *
58
+ * NLI "contradiction" → cortex "genuine"
59
+ * NLI "entailment" → cortex "complementary"
60
+ * NLI "neutral" → cortex "tension" (may or may not be meaningful)
61
+ */
62
+ export function nliToCortexVerdict(label, scores) {
63
+ // High-confidence contradiction
64
+ if (label === 'contradiction' && scores.contradiction > 0.8) {
65
+ return 'genuine';
66
+ }
67
+ // High-confidence entailment = complementary
68
+ if (label === 'entailment' && scores.entailment > 0.7) {
69
+ return 'complementary';
70
+ }
71
+ // Low scores all around = likely unrelated
72
+ const maxScore = Math.max(scores.contradiction, scores.entailment, scores.neutral);
73
+ if (maxScore < 0.5) {
74
+ return 'unrelated';
75
+ }
76
+ // Moderate contradiction signal = productive tension
77
+ if (label === 'contradiction' && scores.contradiction > 0.4) {
78
+ return 'tension';
79
+ }
80
+ // Default: neutral with some signal = tension
81
+ return 'tension';
82
+ }
83
+ //# sourceMappingURL=nli-http.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nli-http.js","sourceRoot":"","sources":["../../src/providers/nli-http.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * OllamaEmbedProvider and OllamaLLMProvider — Ollama REST API implementations.
3
+ *
4
+ * Talks to a local Ollama instance (default: http://localhost:11434).
5
+ * Uses Node.js built-in fetch — no extra HTTP dependencies.
6
+ *
7
+ * Defaults:
8
+ * embed model — qwen3-embedding:0.6b (1024 dimensions, MRL to 32)
9
+ * LLM model — qwen2.5:14b
10
+ */
11
+ import type { EmbedProvider } from '../core/embed.js';
12
+ import type { LLMProvider, GenerateOptions, GenerateJSONOptions } from '../core/llm.js';
13
+ export declare class OllamaEmbedProvider implements EmbedProvider {
14
+ readonly name = "ollama";
15
+ readonly dimensions: number;
16
+ private readonly model;
17
+ private readonly baseUrl;
18
+ constructor(options?: {
19
+ model?: string;
20
+ baseUrl?: string;
21
+ dimensions?: number;
22
+ });
23
+ embed(text: string): Promise<number[]>;
24
+ embedBatch(texts: string[]): Promise<number[][]>;
25
+ }
26
+ export declare class OllamaLLMProvider implements LLMProvider {
27
+ readonly name = "ollama";
28
+ readonly modelId: string;
29
+ private readonly baseUrl;
30
+ constructor(options?: {
31
+ model?: string;
32
+ baseUrl?: string;
33
+ });
34
+ generate(prompt: string, options?: GenerateOptions): Promise<string>;
35
+ generateJSON<T>(prompt: string, options?: GenerateJSONOptions): Promise<T>;
36
+ }
37
+ //# sourceMappingURL=ollama.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ollama.d.ts","sourceRoot":"","sources":["../../src/providers/ollama.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AA2CxF,qBAAa,mBAAoB,YAAW,aAAa;IACvD,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,CAAC,EAAE;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB;IAMK,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAStC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;CAQvD;AAUD,qBAAa,iBAAkB,YAAW,WAAW;IACnD,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,CAAC,EAAE;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;IAKK,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IAwBpE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,CAAC,CAAC;CAsCjF"}