cognitive-core 0.0.2 → 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 (329) hide show
  1. package/README.md +302 -116
  2. package/SKILL.md +193 -0
  3. package/dist/agents/index.d.ts +3 -0
  4. package/dist/agents/index.d.ts.map +1 -0
  5. package/dist/agents/index.js +5 -0
  6. package/dist/agents/index.js.map +1 -0
  7. package/dist/agents/mock-provider.d.ts +23 -0
  8. package/dist/agents/mock-provider.d.ts.map +1 -0
  9. package/dist/agents/mock-provider.js +71 -0
  10. package/dist/agents/mock-provider.js.map +1 -0
  11. package/dist/agents/types.d.ts +98 -0
  12. package/dist/agents/types.d.ts.map +1 -0
  13. package/dist/agents/types.js +44 -0
  14. package/dist/agents/types.js.map +1 -0
  15. package/dist/atlas.d.ts +196 -0
  16. package/dist/atlas.d.ts.map +1 -0
  17. package/dist/atlas.js +373 -0
  18. package/dist/atlas.js.map +1 -0
  19. package/dist/bin/cognitive-core.d.ts +18 -0
  20. package/dist/bin/cognitive-core.d.ts.map +1 -0
  21. package/dist/bin/cognitive-core.js +419 -0
  22. package/dist/bin/cognitive-core.js.map +1 -0
  23. package/dist/embeddings/bm25.d.ts +104 -0
  24. package/dist/embeddings/bm25.d.ts.map +1 -0
  25. package/dist/embeddings/bm25.js +264 -0
  26. package/dist/embeddings/bm25.js.map +1 -0
  27. package/dist/embeddings/index.d.ts +12 -0
  28. package/dist/embeddings/index.d.ts.map +1 -0
  29. package/dist/embeddings/index.js +16 -0
  30. package/dist/embeddings/index.js.map +1 -0
  31. package/dist/embeddings/manager.d.ts +112 -0
  32. package/dist/embeddings/manager.d.ts.map +1 -0
  33. package/dist/embeddings/manager.js +215 -0
  34. package/dist/embeddings/manager.js.map +1 -0
  35. package/dist/embeddings/provider.d.ts +101 -0
  36. package/dist/embeddings/provider.d.ts.map +1 -0
  37. package/dist/embeddings/provider.js +232 -0
  38. package/dist/embeddings/provider.js.map +1 -0
  39. package/dist/embeddings/vector-store.d.ts +101 -0
  40. package/dist/embeddings/vector-store.d.ts.map +1 -0
  41. package/dist/embeddings/vector-store.js +256 -0
  42. package/dist/embeddings/vector-store.js.map +1 -0
  43. package/dist/factory.d.ts +193 -0
  44. package/dist/factory.d.ts.map +1 -0
  45. package/dist/factory.js +109 -0
  46. package/dist/factory.js.map +1 -0
  47. package/dist/index.d.ts +30 -453
  48. package/dist/index.d.ts.map +1 -0
  49. package/dist/index.js +84 -509
  50. package/dist/index.js.map +1 -0
  51. package/dist/learning/analyzer.d.ts +110 -0
  52. package/dist/learning/analyzer.d.ts.map +1 -0
  53. package/dist/learning/analyzer.js +213 -0
  54. package/dist/learning/analyzer.js.map +1 -0
  55. package/dist/learning/effectiveness.d.ts +158 -0
  56. package/dist/learning/effectiveness.d.ts.map +1 -0
  57. package/dist/learning/effectiveness.js +251 -0
  58. package/dist/learning/effectiveness.js.map +1 -0
  59. package/dist/learning/index.d.ts +8 -0
  60. package/dist/learning/index.d.ts.map +1 -0
  61. package/dist/learning/index.js +11 -0
  62. package/dist/learning/index.js.map +1 -0
  63. package/dist/learning/llm-extractor.d.ts +88 -0
  64. package/dist/learning/llm-extractor.d.ts.map +1 -0
  65. package/dist/learning/llm-extractor.js +372 -0
  66. package/dist/learning/llm-extractor.js.map +1 -0
  67. package/dist/learning/meta-learner.d.ts +80 -0
  68. package/dist/learning/meta-learner.d.ts.map +1 -0
  69. package/dist/learning/meta-learner.js +355 -0
  70. package/dist/learning/meta-learner.js.map +1 -0
  71. package/dist/learning/pipeline.d.ts +65 -0
  72. package/dist/learning/pipeline.d.ts.map +1 -0
  73. package/dist/learning/pipeline.js +170 -0
  74. package/dist/learning/pipeline.js.map +1 -0
  75. package/dist/learning/playbook-extractor.d.ts +113 -0
  76. package/dist/learning/playbook-extractor.d.ts.map +1 -0
  77. package/dist/learning/playbook-extractor.js +523 -0
  78. package/dist/learning/playbook-extractor.js.map +1 -0
  79. package/dist/learning/usage-inference.d.ts +82 -0
  80. package/dist/learning/usage-inference.d.ts.map +1 -0
  81. package/dist/learning/usage-inference.js +261 -0
  82. package/dist/learning/usage-inference.js.map +1 -0
  83. package/dist/mcp/index.d.ts +6 -0
  84. package/dist/mcp/index.d.ts.map +1 -0
  85. package/dist/mcp/index.js +6 -0
  86. package/dist/mcp/index.js.map +1 -0
  87. package/dist/mcp/playbook-server.d.ts +120 -0
  88. package/dist/mcp/playbook-server.d.ts.map +1 -0
  89. package/dist/mcp/playbook-server.js +427 -0
  90. package/dist/mcp/playbook-server.js.map +1 -0
  91. package/dist/memory/curated-loader.d.ts +62 -0
  92. package/dist/memory/curated-loader.d.ts.map +1 -0
  93. package/dist/memory/curated-loader.js +106 -0
  94. package/dist/memory/curated-loader.js.map +1 -0
  95. package/dist/memory/experience.d.ts +122 -0
  96. package/dist/memory/experience.d.ts.map +1 -0
  97. package/dist/memory/experience.js +392 -0
  98. package/dist/memory/experience.js.map +1 -0
  99. package/dist/memory/index.d.ts +6 -0
  100. package/dist/memory/index.d.ts.map +1 -0
  101. package/dist/memory/index.js +9 -0
  102. package/dist/memory/index.js.map +1 -0
  103. package/dist/memory/meta.d.ts +90 -0
  104. package/dist/memory/meta.d.ts.map +1 -0
  105. package/dist/memory/meta.js +362 -0
  106. package/dist/memory/meta.js.map +1 -0
  107. package/dist/memory/playbook.d.ts +133 -0
  108. package/dist/memory/playbook.d.ts.map +1 -0
  109. package/dist/memory/playbook.js +357 -0
  110. package/dist/memory/playbook.js.map +1 -0
  111. package/dist/memory/system.d.ts +167 -0
  112. package/dist/memory/system.d.ts.map +1 -0
  113. package/dist/memory/system.js +383 -0
  114. package/dist/memory/system.js.map +1 -0
  115. package/dist/runtime/backends/acp.d.ts +67 -0
  116. package/dist/runtime/backends/acp.d.ts.map +1 -0
  117. package/dist/runtime/backends/acp.js +290 -0
  118. package/dist/runtime/backends/acp.js.map +1 -0
  119. package/dist/runtime/backends/index.d.ts +5 -0
  120. package/dist/runtime/backends/index.d.ts.map +1 -0
  121. package/dist/runtime/backends/index.js +6 -0
  122. package/dist/runtime/backends/index.js.map +1 -0
  123. package/dist/runtime/backends/mock.d.ts +67 -0
  124. package/dist/runtime/backends/mock.d.ts.map +1 -0
  125. package/dist/runtime/backends/mock.js +153 -0
  126. package/dist/runtime/backends/mock.js.map +1 -0
  127. package/dist/runtime/backends/subprocess.d.ts +56 -0
  128. package/dist/runtime/backends/subprocess.d.ts.map +1 -0
  129. package/dist/runtime/backends/subprocess.js +260 -0
  130. package/dist/runtime/backends/subprocess.js.map +1 -0
  131. package/dist/runtime/flows/learning.d.ts +73 -0
  132. package/dist/runtime/flows/learning.d.ts.map +1 -0
  133. package/dist/runtime/flows/learning.js +116 -0
  134. package/dist/runtime/flows/learning.js.map +1 -0
  135. package/dist/runtime/flows/validation.d.ts +122 -0
  136. package/dist/runtime/flows/validation.d.ts.map +1 -0
  137. package/dist/runtime/flows/validation.js +223 -0
  138. package/dist/runtime/flows/validation.js.map +1 -0
  139. package/dist/runtime/index.d.ts +6 -0
  140. package/dist/runtime/index.d.ts.map +1 -0
  141. package/dist/runtime/index.js +8 -0
  142. package/dist/runtime/index.js.map +1 -0
  143. package/dist/runtime/manager.d.ts +116 -0
  144. package/dist/runtime/manager.d.ts.map +1 -0
  145. package/dist/runtime/manager.js +416 -0
  146. package/dist/runtime/manager.js.map +1 -0
  147. package/dist/runtime/types.d.ts +138 -0
  148. package/dist/runtime/types.d.ts.map +1 -0
  149. package/dist/runtime/types.js +2 -0
  150. package/dist/runtime/types.js.map +1 -0
  151. package/dist/search/evaluator.d.ts +102 -0
  152. package/dist/search/evaluator.d.ts.map +1 -0
  153. package/dist/search/evaluator.js +352 -0
  154. package/dist/search/evaluator.js.map +1 -0
  155. package/dist/search/index.d.ts +7 -0
  156. package/dist/search/index.d.ts.map +1 -0
  157. package/dist/search/index.js +11 -0
  158. package/dist/search/index.js.map +1 -0
  159. package/dist/search/refinement-loop.d.ts +73 -0
  160. package/dist/search/refinement-loop.d.ts.map +1 -0
  161. package/dist/search/refinement-loop.js +245 -0
  162. package/dist/search/refinement-loop.js.map +1 -0
  163. package/dist/search/refinement-types.d.ts +154 -0
  164. package/dist/search/refinement-types.d.ts.map +1 -0
  165. package/dist/search/refinement-types.js +99 -0
  166. package/dist/search/refinement-types.js.map +1 -0
  167. package/dist/search/router.d.ts +61 -0
  168. package/dist/search/router.d.ts.map +1 -0
  169. package/dist/search/router.js +197 -0
  170. package/dist/search/router.js.map +1 -0
  171. package/dist/search/solver.d.ts +75 -0
  172. package/dist/search/solver.d.ts.map +1 -0
  173. package/dist/search/solver.js +216 -0
  174. package/dist/search/solver.js.map +1 -0
  175. package/dist/search/verification-runner.d.ts +125 -0
  176. package/dist/search/verification-runner.d.ts.map +1 -0
  177. package/dist/search/verification-runner.js +440 -0
  178. package/dist/search/verification-runner.js.map +1 -0
  179. package/dist/surfacing/index.d.ts +2 -0
  180. package/dist/surfacing/index.d.ts.map +1 -0
  181. package/dist/surfacing/index.js +2 -0
  182. package/dist/surfacing/index.js.map +1 -0
  183. package/dist/surfacing/skill-library.d.ts +158 -0
  184. package/dist/surfacing/skill-library.d.ts.map +1 -0
  185. package/dist/surfacing/skill-library.js +429 -0
  186. package/dist/surfacing/skill-library.js.map +1 -0
  187. package/dist/types/config.d.ts +1113 -0
  188. package/dist/types/config.d.ts.map +1 -0
  189. package/dist/types/config.js +274 -0
  190. package/dist/types/config.js.map +1 -0
  191. package/dist/types/index.d.ts +9 -0
  192. package/dist/types/index.d.ts.map +1 -0
  193. package/dist/types/index.js +14 -0
  194. package/dist/types/index.js.map +1 -0
  195. package/dist/types/memory.d.ts +339 -0
  196. package/dist/types/memory.d.ts.map +1 -0
  197. package/dist/types/memory.js +207 -0
  198. package/dist/types/memory.js.map +1 -0
  199. package/dist/types/meta.d.ts +146 -0
  200. package/dist/types/meta.d.ts.map +1 -0
  201. package/dist/types/meta.js +51 -0
  202. package/dist/types/meta.js.map +1 -0
  203. package/dist/types/outcome.d.ts +42 -0
  204. package/dist/types/outcome.d.ts.map +1 -0
  205. package/dist/types/outcome.js +50 -0
  206. package/dist/types/outcome.js.map +1 -0
  207. package/dist/types/playbook.d.ts +119 -0
  208. package/dist/types/playbook.d.ts.map +1 -0
  209. package/dist/types/playbook.js +71 -0
  210. package/dist/types/playbook.js.map +1 -0
  211. package/dist/types/step.d.ts +44 -0
  212. package/dist/types/step.d.ts.map +1 -0
  213. package/dist/types/step.js +32 -0
  214. package/dist/types/step.js.map +1 -0
  215. package/dist/types/task.d.ts +91 -0
  216. package/dist/types/task.d.ts.map +1 -0
  217. package/dist/types/task.js +39 -0
  218. package/dist/types/task.js.map +1 -0
  219. package/dist/types/trajectory.d.ts +221 -0
  220. package/dist/types/trajectory.d.ts.map +1 -0
  221. package/dist/types/trajectory.js +60 -0
  222. package/dist/types/trajectory.js.map +1 -0
  223. package/dist/utils/index.d.ts +4 -0
  224. package/dist/utils/index.d.ts.map +1 -0
  225. package/dist/utils/index.js +4 -0
  226. package/dist/utils/index.js.map +1 -0
  227. package/dist/utils/similarity.d.ts +31 -0
  228. package/dist/utils/similarity.d.ts.map +1 -0
  229. package/dist/utils/similarity.js +107 -0
  230. package/dist/utils/similarity.js.map +1 -0
  231. package/dist/utils/storage.d.ts +106 -0
  232. package/dist/utils/storage.d.ts.map +1 -0
  233. package/dist/utils/storage.js +203 -0
  234. package/dist/utils/storage.js.map +1 -0
  235. package/dist/utils/validation.d.ts +129 -0
  236. package/dist/utils/validation.d.ts.map +1 -0
  237. package/dist/utils/validation.js +171 -0
  238. package/dist/utils/validation.js.map +1 -0
  239. package/package.json +50 -34
  240. package/scripts/migrate-to-playbooks.ts +307 -0
  241. package/src/agents/index.ts +14 -0
  242. package/src/agents/mock-provider.ts +93 -0
  243. package/src/agents/types.ts +137 -0
  244. package/src/atlas.ts +560 -0
  245. package/src/bin/cognitive-core.ts +470 -0
  246. package/src/embeddings/bm25.ts +337 -0
  247. package/src/embeddings/index.ts +39 -0
  248. package/src/embeddings/manager.ts +288 -0
  249. package/src/embeddings/provider.ts +311 -0
  250. package/src/embeddings/vector-store.ts +353 -0
  251. package/src/factory.ts +263 -0
  252. package/src/index.ts +246 -0
  253. package/src/learning/analyzer.ts +335 -0
  254. package/src/learning/effectiveness.ts +428 -0
  255. package/src/learning/index.ts +58 -0
  256. package/src/learning/llm-extractor.ts +542 -0
  257. package/src/learning/meta-learner.ts +516 -0
  258. package/src/learning/pipeline.ts +244 -0
  259. package/src/learning/playbook-extractor.ts +702 -0
  260. package/src/learning/usage-inference.ts +372 -0
  261. package/src/mcp/index.ts +12 -0
  262. package/src/mcp/playbook-server.ts +565 -0
  263. package/src/memory/curated-loader.ts +160 -0
  264. package/src/memory/experience.ts +515 -0
  265. package/src/memory/index.ts +27 -0
  266. package/src/memory/meta.ts +506 -0
  267. package/src/memory/playbook.ts +493 -0
  268. package/src/memory/system.ts +551 -0
  269. package/src/runtime/backends/acp.ts +378 -0
  270. package/src/runtime/backends/index.ts +24 -0
  271. package/src/runtime/backends/mock.ts +218 -0
  272. package/src/runtime/backends/subprocess.ts +356 -0
  273. package/src/runtime/flows/learning.ts +183 -0
  274. package/src/runtime/flows/validation.ts +381 -0
  275. package/src/runtime/index.ts +53 -0
  276. package/src/runtime/manager.ts +541 -0
  277. package/src/runtime/types.ts +157 -0
  278. package/src/search/evaluator.ts +474 -0
  279. package/src/search/index.ts +59 -0
  280. package/src/search/refinement-loop.ts +363 -0
  281. package/src/search/refinement-types.ts +159 -0
  282. package/src/search/router.ts +261 -0
  283. package/src/search/solver.ts +303 -0
  284. package/src/search/verification-runner.ts +570 -0
  285. package/src/surfacing/index.ts +6 -0
  286. package/src/surfacing/skill-library.ts +594 -0
  287. package/src/types/config.ts +333 -0
  288. package/src/types/index.ts +130 -0
  289. package/src/types/memory.ts +270 -0
  290. package/src/types/meta.ts +218 -0
  291. package/src/types/outcome.ts +66 -0
  292. package/src/types/playbook.ts +196 -0
  293. package/src/types/step.ts +40 -0
  294. package/src/types/task.ts +52 -0
  295. package/src/types/trajectory.ts +80 -0
  296. package/src/utils/index.ts +38 -0
  297. package/src/utils/similarity.ts +139 -0
  298. package/src/utils/storage.ts +249 -0
  299. package/src/utils/validation.ts +286 -0
  300. package/tests/embeddings/bm25.test.ts +130 -0
  301. package/tests/embeddings/manager.test.ts +205 -0
  302. package/tests/integration/atlas.test.ts +266 -0
  303. package/tests/integration/e2e.test.ts +929 -0
  304. package/tests/learning/analyzer.test.ts +426 -0
  305. package/tests/learning/effectiveness.test.ts +542 -0
  306. package/tests/learning/pipeline.test.ts +176 -0
  307. package/tests/learning/playbook-extractor-provenance.test.ts +114 -0
  308. package/tests/learning/usage-inference.test.ts +254 -0
  309. package/tests/mcp/playbook-server.test.ts +252 -0
  310. package/tests/memory/experience.test.ts +198 -0
  311. package/tests/memory/playbook.test.ts +338 -0
  312. package/tests/memory/provenance.test.ts +639 -0
  313. package/tests/memory/system.test.ts +325 -0
  314. package/tests/runtime/agent-manager.test.ts +512 -0
  315. package/tests/runtime/mock-backend.test.ts +248 -0
  316. package/tests/search/refinement-loop.test.ts +468 -0
  317. package/tests/search/refinement.test.ts +267 -0
  318. package/tests/search/router.test.ts +427 -0
  319. package/tests/surfacing/skill-library.test.ts +292 -0
  320. package/tests/types/outcome.test.ts +147 -0
  321. package/tests/types/step.test.ts +133 -0
  322. package/tests/types/task.test.ts +158 -0
  323. package/tests/types/trajectory.test.ts +253 -0
  324. package/tests/utils/similarity.test.ts +188 -0
  325. package/tests/utils/validation.test.ts +252 -0
  326. package/tsconfig.json +25 -0
  327. package/vitest.config.ts +22 -0
  328. package/dist/index.d.mts +0 -466
  329. package/dist/index.mjs +0 -478
package/dist/index.js CHANGED
@@ -1,509 +1,84 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/index.ts
21
- var index_exports = {};
22
- __export(index_exports, {
23
- CognitiveCore: () => CognitiveCore,
24
- CognitiveCoreClient: () => CognitiveCoreClient,
25
- default: () => index_default,
26
- getPythonPath: () => getPythonPath,
27
- isSetUp: () => isSetUp,
28
- setup: () => setup
29
- });
30
- module.exports = __toCommonJS(index_exports);
31
-
32
- // src/client.ts
33
- var import_child_process = require("child_process");
34
- var import_events = require("events");
35
- var CognitiveCoreClient = class extends import_events.EventEmitter {
36
- process = null;
37
- buffer = "";
38
- pendingRequests = /* @__PURE__ */ new Map();
39
- requestId = 0;
40
- options;
41
- constructor(options = {}) {
42
- super();
43
- this.options = {
44
- pythonPath: options.pythonPath ?? "python",
45
- cwd: options.cwd ?? process.cwd(),
46
- env: options.env ?? {},
47
- timeout: options.timeout ?? 3e4
48
- };
49
- }
50
- /**
51
- * Start the Python subprocess.
52
- */
53
- async start() {
54
- if (this.process) {
55
- throw new Error("Client already started");
56
- }
57
- return new Promise((resolve2, reject) => {
58
- this.process = (0, import_child_process.spawn)(
59
- this.options.pythonPath,
60
- ["-m", "cognitive_core.cli", "--json"],
61
- {
62
- cwd: this.options.cwd,
63
- env: { ...process.env, ...this.options.env },
64
- stdio: ["pipe", "pipe", "pipe"]
65
- }
66
- );
67
- this.process.on("error", (error) => {
68
- this.emit("error", error);
69
- reject(error);
70
- });
71
- this.process.on("exit", (code, signal) => {
72
- this.emit("exit", { code, signal });
73
- this.cleanup();
74
- });
75
- this.process.stdout?.on("data", (data) => {
76
- this.handleData(data.toString());
77
- });
78
- this.process.stderr?.on("data", (data) => {
79
- this.emit("stderr", data.toString());
80
- });
81
- setTimeout(async () => {
82
- try {
83
- const response = await this.execute("version");
84
- if (response.version) {
85
- this.emit("ready", response);
86
- resolve2();
87
- } else {
88
- reject(new Error("Failed to verify Python process"));
89
- }
90
- } catch (error) {
91
- reject(error);
92
- }
93
- }, 100);
94
- });
95
- }
96
- /**
97
- * Stop the Python subprocess.
98
- */
99
- async stop() {
100
- if (!this.process) {
101
- return;
102
- }
103
- return new Promise((resolve2) => {
104
- if (this.process) {
105
- this.process.once("exit", () => {
106
- this.cleanup();
107
- resolve2();
108
- });
109
- this.process.stdin?.end();
110
- this.process.kill("SIGTERM");
111
- setTimeout(() => {
112
- if (this.process) {
113
- this.process.kill("SIGKILL");
114
- }
115
- resolve2();
116
- }, 5e3);
117
- } else {
118
- resolve2();
119
- }
120
- });
121
- }
122
- /**
123
- * Execute a command on the Python process.
124
- *
125
- * @param command - Command to execute (e.g., "memory.search", "env.reset")
126
- * @param args - Command arguments
127
- * @returns Command result
128
- */
129
- async execute(command, args = {}) {
130
- if (!this.process?.stdin) {
131
- throw new Error("Client not started. Call start() first.");
132
- }
133
- const request = { command, args };
134
- const response = await this.sendRequest(request);
135
- if (!response.success) {
136
- throw new Error(response.error ?? "Unknown error");
137
- }
138
- return response.result;
139
- }
140
- /**
141
- * Check if the client is running.
142
- */
143
- get isRunning() {
144
- return this.process !== null && !this.process.killed;
145
- }
146
- sendRequest(request) {
147
- return new Promise((resolve2, reject) => {
148
- const id = this.requestId++;
149
- const json = JSON.stringify(request);
150
- const timeout = setTimeout(() => {
151
- this.pendingRequests.delete(id);
152
- reject(new Error(`Command timed out: ${request.command}`));
153
- }, this.options.timeout);
154
- this.pendingRequests.set(id, { resolve: resolve2, reject, timeout });
155
- this.process?.stdin?.write(json + "\n");
156
- });
157
- }
158
- handleData(data) {
159
- this.buffer += data;
160
- const lines = this.buffer.split("\n");
161
- this.buffer = lines.pop() ?? "";
162
- for (const line of lines) {
163
- if (line.trim()) {
164
- try {
165
- const response = JSON.parse(line);
166
- this.handleResponse(response);
167
- } catch (error) {
168
- this.emit("parseError", { line, error });
169
- }
170
- }
171
- }
172
- }
173
- handleResponse(response) {
174
- const [id, pending] = this.pendingRequests.entries().next().value ?? [
175
- null,
176
- null
177
- ];
178
- if (id !== null && pending) {
179
- clearTimeout(pending.timeout);
180
- this.pendingRequests.delete(id);
181
- pending.resolve(response);
182
- }
183
- }
184
- cleanup() {
185
- for (const [id, pending] of this.pendingRequests) {
186
- clearTimeout(pending.timeout);
187
- pending.reject(new Error("Process terminated"));
188
- }
189
- this.pendingRequests.clear();
190
- this.process = null;
191
- this.buffer = "";
192
- }
193
- };
194
-
195
- // src/setup.ts
196
- var import_child_process2 = require("child_process");
197
- var import_fs = require("fs");
198
- var import_path = require("path");
199
- var import_os = require("os");
200
- function findPython(preferredPath) {
201
- const candidates = preferredPath ? [preferredPath] : (0, import_os.platform)() === "win32" ? ["python", "python3", "py"] : ["python3", "python"];
202
- for (const cmd of candidates) {
203
- try {
204
- (0, import_child_process2.execSync)(`${cmd} --version`, { stdio: "pipe" });
205
- return cmd;
206
- } catch {
207
- continue;
208
- }
209
- }
210
- throw new Error(
211
- "Python not found. Please install Python 3.10+ and ensure it's in your PATH.\nDownload from: https://www.python.org/downloads/"
212
- );
213
- }
214
- function getVenvPaths(venvDir) {
215
- const isWindows = (0, import_os.platform)() === "win32";
216
- const binDir = isWindows ? "Scripts" : "bin";
217
- const ext = isWindows ? ".exe" : "";
218
- return {
219
- python: (0, import_path.join)(venvDir, binDir, `python${ext}`),
220
- pip: (0, import_path.join)(venvDir, binDir, `pip${ext}`)
221
- };
222
- }
223
- function runCommand(command, args, options = {}) {
224
- return new Promise((resolve2, reject) => {
225
- const proc = (0, import_child_process2.spawn)(command, args, {
226
- cwd: options.cwd,
227
- stdio: options.verbose ? "inherit" : "pipe",
228
- shell: (0, import_os.platform)() === "win32"
229
- });
230
- let output = "";
231
- if (!options.verbose) {
232
- proc.stdout?.on("data", (data) => {
233
- output += data.toString();
234
- });
235
- proc.stderr?.on("data", (data) => {
236
- output += data.toString();
237
- });
238
- }
239
- proc.on("error", reject);
240
- proc.on("close", (code) => {
241
- if (code === 0) {
242
- resolve2(output);
243
- } else {
244
- reject(new Error(`Command failed with code ${code}: ${command} ${args.join(" ")}
245
- ${output}`));
246
- }
247
- });
248
- });
249
- }
250
- async function getInstalledVersion(pythonPath) {
251
- try {
252
- const output = await runCommand(pythonPath, [
253
- "-c",
254
- "import cognitive_core; print(cognitive_core.__version__)"
255
- ]);
256
- return output.trim();
257
- } catch {
258
- return null;
259
- }
260
- }
261
- async function setup(options = {}) {
262
- const {
263
- venvDir = ".cognitive-core",
264
- pythonPath: preferredPython,
265
- version,
266
- extras = [],
267
- verbose = true
268
- } = options;
269
- const venvPath = (0, import_path.resolve)(venvDir);
270
- const log = verbose ? console.log.bind(console) : () => {
271
- };
272
- log("\u{1F50D} Finding Python...");
273
- const systemPython = findPython(preferredPython);
274
- log(` Found: ${systemPython}`);
275
- const versionOutput = (0, import_child_process2.execSync)(`${systemPython} --version`, { encoding: "utf-8" });
276
- const versionMatch = versionOutput.match(/Python (\d+)\.(\d+)/);
277
- if (versionMatch) {
278
- const [, major, minor] = versionMatch;
279
- if (parseInt(major) < 3 || parseInt(major) === 3 && parseInt(minor) < 10) {
280
- throw new Error(
281
- `Python 3.10+ required, found ${versionOutput.trim()}.
282
- Please upgrade Python: https://www.python.org/downloads/`
283
- );
284
- }
285
- }
286
- const venvPaths = getVenvPaths(venvPath);
287
- const venvExists = (0, import_fs.existsSync)(venvPaths.python);
288
- let created = false;
289
- if (!venvExists) {
290
- log("\u{1F4E6} Creating virtual environment...");
291
- (0, import_fs.mkdirSync)(venvPath, { recursive: true });
292
- await runCommand(systemPython, ["-m", "venv", venvPath], { verbose });
293
- created = true;
294
- log(` Created: ${venvPath}`);
295
- } else {
296
- log(`\u{1F4E6} Using existing virtual environment: ${venvPath}`);
297
- }
298
- let installedVersion = await getInstalledVersion(venvPaths.python);
299
- if (!installedVersion) {
300
- log("\u2B07\uFE0F Installing cognitive-core...");
301
- let packageSpec = "cognitive-core";
302
- if (version) {
303
- packageSpec += `==${version}`;
304
- }
305
- if (extras.length > 0) {
306
- packageSpec += `[${extras.join(",")}]`;
307
- }
308
- await runCommand(
309
- venvPaths.pip,
310
- ["install", "--upgrade", "pip"],
311
- { verbose }
312
- );
313
- await runCommand(
314
- venvPaths.pip,
315
- ["install", packageSpec],
316
- { verbose }
317
- );
318
- installedVersion = await getInstalledVersion(venvPaths.python);
319
- log(` Installed: cognitive-core ${installedVersion}`);
320
- } else {
321
- log(`\u2705 cognitive-core ${installedVersion} already installed`);
322
- }
323
- log("");
324
- log("\u{1F389} Setup complete!");
325
- log(` Python: ${venvPaths.python}`);
326
- log(` Version: ${installedVersion}`);
327
- log("");
328
- return {
329
- venvPath,
330
- pythonPath: venvPaths.python,
331
- pipPath: venvPaths.pip,
332
- created,
333
- version: installedVersion ?? "unknown"
334
- };
335
- }
336
- function isSetUp(venvDir = ".cognitive-core") {
337
- const venvPath = (0, import_path.resolve)(venvDir);
338
- const venvPaths = getVenvPaths(venvPath);
339
- return (0, import_fs.existsSync)(venvPaths.python);
340
- }
341
- function getPythonPath(venvDir = ".cognitive-core") {
342
- const venvPath = (0, import_path.resolve)(venvDir);
343
- const venvPaths = getVenvPaths(venvPath);
344
- return (0, import_fs.existsSync)(venvPaths.python) ? venvPaths.python : null;
345
- }
346
-
347
- // src/index.ts
348
- var EnvironmentAPI = class {
349
- constructor(client) {
350
- this.client = client;
351
- }
352
- /**
353
- * Create a new environment.
354
- */
355
- async create(domain = "passthrough") {
356
- const result = await this.client.execute(
357
- "env.create",
358
- { domain }
359
- );
360
- return { envId: result.env_id, domain: result.domain };
361
- }
362
- /**
363
- * Reset an environment with a task.
364
- */
365
- async reset(envId, task) {
366
- const result = await this.client.execute(
367
- "env.reset",
368
- { env_id: envId, task }
369
- );
370
- return { envId: result.env_id, observation: result.observation };
371
- }
372
- /**
373
- * Execute an action in the environment.
374
- */
375
- async step(envId, action) {
376
- return this.client.execute("env.step", { env_id: envId, action });
377
- }
378
- /**
379
- * Verify a solution.
380
- */
381
- async verify(envId, solution) {
382
- const result = await this.client.execute("env.verify", { env_id: envId, solution });
383
- return {
384
- success: result.success,
385
- partialScore: result.partial_score,
386
- verificationDetails: result.details
387
- };
388
- }
389
- };
390
- var MemoryAPI = class {
391
- constructor(client) {
392
- this.client = client;
393
- }
394
- /**
395
- * Search for similar experiences.
396
- */
397
- async searchExperiences(query, k = 5) {
398
- const result = await this.client.execute(
399
- "memory.search",
400
- { query, k, type: "experience" }
401
- );
402
- return result.experiences ?? [];
403
- }
404
- /**
405
- * Search for relevant strategies.
406
- */
407
- async searchStrategies(query, k = 5) {
408
- const result = await this.client.execute(
409
- "memory.search",
410
- { query, k, type: "strategy" }
411
- );
412
- return result.strategies ?? [];
413
- }
414
- /**
415
- * Search for relevant concepts.
416
- */
417
- async searchConcepts(query, k = 5) {
418
- const result = await this.client.execute(
419
- "memory.search",
420
- { query, k, type: "concept" }
421
- );
422
- return result.concepts ?? [];
423
- }
424
- /**
425
- * Store a trajectory in memory.
426
- */
427
- async store(trajectory) {
428
- return this.client.execute("memory.store", { trajectory });
429
- }
430
- };
431
- var SearchAPI = class {
432
- constructor(client) {
433
- this.client = client;
434
- }
435
- /**
436
- * Solve a task using the configured search strategy.
437
- */
438
- async solve(task) {
439
- return this.client.execute("search.solve", { task });
440
- }
441
- };
442
- var CognitiveCore = class {
443
- client;
444
- /**
445
- * Environment operations (create, reset, step, verify)
446
- */
447
- env;
448
- /**
449
- * Memory operations (search, store)
450
- */
451
- memory;
452
- /**
453
- * Search operations (solve)
454
- */
455
- search;
456
- constructor(options = {}) {
457
- let pythonPath = options.pythonPath;
458
- if (!pythonPath) {
459
- const venvPython = getPythonPath();
460
- if (venvPython) {
461
- pythonPath = venvPython;
462
- }
463
- }
464
- this.client = new CognitiveCoreClient({ ...options, pythonPath });
465
- this.env = new EnvironmentAPI(this.client);
466
- this.memory = new MemoryAPI(this.client);
467
- this.search = new SearchAPI(this.client);
468
- }
469
- /**
470
- * Start the Python subprocess.
471
- */
472
- async start() {
473
- await this.client.start();
474
- }
475
- /**
476
- * Stop the Python subprocess.
477
- */
478
- async stop() {
479
- await this.client.stop();
480
- }
481
- /**
482
- * Get the version of the Python cognitive-core package.
483
- */
484
- async version() {
485
- const result = await this.client.execute("version");
486
- return result.version;
487
- }
488
- /**
489
- * Check if the client is running.
490
- */
491
- get isRunning() {
492
- return this.client.isRunning;
493
- }
494
- /**
495
- * Access the underlying client for advanced usage.
496
- */
497
- get rawClient() {
498
- return this.client;
499
- }
500
- };
501
- var index_default = CognitiveCore;
502
- // Annotate the CommonJS export names for ESM import in node:
503
- 0 && (module.exports = {
504
- CognitiveCore,
505
- CognitiveCoreClient,
506
- getPythonPath,
507
- isSetUp,
508
- setup
509
- });
1
+ /**
2
+ * Atlas - Adaptive Trajectory Learning and Abstraction System
3
+ *
4
+ * A TypeScript-native cognitive core for building agents that learn
5
+ * from experience. Extracts playbooks from problem-solving trajectories
6
+ * to guide future task solving.
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * import { createAtlas, createTask } from 'cognitive-core';
11
+ *
12
+ * const atlas = createAtlas();
13
+ * await atlas.init();
14
+ *
15
+ * // Set your LLM provider
16
+ * atlas.setProvider(myProvider);
17
+ *
18
+ * // Solve a task
19
+ * const task = createTask({
20
+ * domain: 'code',
21
+ * description: 'Write a function that...',
22
+ * });
23
+ *
24
+ * const result = await atlas.solve(task);
25
+ * console.log(result.trajectory.outcome);
26
+ *
27
+ * // Close when done
28
+ * await atlas.close();
29
+ * ```
30
+ */
31
+ // Main Atlas class
32
+ export { Atlas, createAtlas, createAtlasWithProvider, createAtlasWithAgents, } from './atlas.js';
33
+ // Types
34
+ export * from './types/index.js';
35
+ // Memory system
36
+ export { MemorySystem, createMemorySystem, ExperienceMemory,
37
+ // Playbook-based memory
38
+ PlaybookLibrary, createPlaybookLibrary,
39
+ // Meta-learning memory
40
+ MetaMemory, createMetaMemory, } from './memory/index.js';
41
+ // Learning engine
42
+ export { LearningPipeline, createLearningPipeline, TrajectoryAnalyzer, createAnalyzer,
43
+ // Playbook-based learning
44
+ PlaybookExtractor, createPlaybookExtractor,
45
+ // Meta-learning
46
+ MetaLearner, createMetaLearner,
47
+ // Usage inference
48
+ PlaybookUsageInference, createUsageInference,
49
+ // LLM-based extraction
50
+ LLMPlaybookExtractor, createLLMExtractor, } from './learning/index.js';
51
+ // Search/solving
52
+ export { TaskRouter, createRouter, DirectSolver, createSolver,
53
+ // Refinement
54
+ SolutionEvaluator, createSolutionEvaluator, RefinementLoop, createRefinementLoop, createEvaluationResult, scoreToQuality, isQualityAcceptable,
55
+ // Verification runner
56
+ VerificationRunner, createVerificationRunner, TestRunners, } from './search/index.js';
57
+ // Agents
58
+ export { Agent, MockLLMProvider, createMockProvider, } from './agents/index.js';
59
+ // Utilities
60
+ export { cosineSimilarity, textSimilarity, findTopK, JsonStore, saveJson, loadJson, } from './utils/index.js';
61
+ // Embeddings - Vector search and similarity
62
+ export { OpenAIEmbeddingProvider, VoyageEmbeddingProvider, LocalEmbeddingProvider, createEmbeddingProvider,
63
+ // BM25 text search fallback
64
+ BM25Index, createBM25Index,
65
+ // Vector store
66
+ SqliteVectorStore, createVectorStore,
67
+ // Embedding manager
68
+ EmbeddingManager, createEmbeddingManager, } from './embeddings/index.js';
69
+ // Runtime - Agent management and flows
70
+ export {
71
+ // Manager
72
+ AgentManager, createAgentManager, DefaultKnowledgeInjector, DefaultTrajectoryExtractor,
73
+ // Backends
74
+ SubprocessBackend, createSubprocessBackend, claudeCodeConfig, MockBackend, createMockBackend, ACPBackend, createACPBackend, claudeCodeACPConfig, claudeCodeDirectConfig,
75
+ // Flows
76
+ LearningFlow, createLearningFlow, ValidationFlow, createValidationFlow, } from './runtime/index.js';
77
+ // Surfacing - Skill library for agent consumption
78
+ export { SkillLibrary, createSkillLibrary, } from './surfacing/index.js';
79
+ // MCP Server - On-demand playbook access
80
+ // @deprecated Use the CLI (bin/cognitive-core) + SKILL.md approach instead
81
+ export { PlaybookMCPServer, createPlaybookMCPServer, } from './mcp/index.js';
82
+ // Factory - Unified interface for external integration (e.g., skill-tree)
83
+ export { createCognitiveCoreFactory, cognitiveCoreFactory, } from './factory.js';
84
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,mBAAmB;AACnB,OAAO,EACL,KAAK,EACL,WAAW,EACX,uBAAuB,EACvB,qBAAqB,GAGtB,MAAM,YAAY,CAAC;AAEpB,QAAQ;AACR,cAAc,kBAAkB,CAAC;AAEjC,gBAAgB;AAChB,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,gBAAgB;AAGhB,wBAAwB;AACxB,eAAe,EACf,qBAAqB;AAErB,uBAAuB;AACvB,UAAU,EACV,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAE3B,kBAAkB;AAClB,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc;AAId,0BAA0B;AAC1B,iBAAiB,EACjB,uBAAuB;AAIvB,gBAAgB;AAChB,WAAW,EACX,iBAAiB;AAEjB,kBAAkB;AAClB,sBAAsB,EACtB,oBAAoB;AAGpB,uBAAuB;AACvB,oBAAoB,EACpB,kBAAkB,GAGnB,MAAM,qBAAqB,CAAC;AAE7B,iBAAiB;AACjB,OAAO,EACL,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,YAAY;AAGZ,aAAa;AACb,iBAAiB,EACjB,uBAAuB,EACvB,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,cAAc,EACd,mBAAmB;AAWnB,sBAAsB;AACtB,kBAAkB,EAClB,wBAAwB,EACxB,WAAW,GAIZ,MAAM,mBAAmB,CAAC;AAE3B,SAAS;AACT,OAAO,EACL,KAAK,EACL,eAAe,EACf,kBAAkB,GAKnB,MAAM,mBAAmB,CAAC;AAE3B,YAAY;AACZ,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,QAAQ,GACT,MAAM,kBAAkB,CAAC;AAE1B,4CAA4C;AAC5C,OAAO,EAIL,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,uBAAuB;AACvB,4BAA4B;AAC5B,SAAS,EACT,eAAe;AAEf,eAAe;AACf,iBAAiB,EACjB,iBAAiB;AAEjB,oBAAoB;AACpB,gBAAgB,EAChB,sBAAsB,GAGvB,MAAM,uBAAuB,CAAC;AAE/B,uCAAuC;AACvC,OAAO;AACL,UAAU;AACV,YAAY,EACZ,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B;AAC1B,WAAW;AACX,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB;AACtB,QAAQ;AACR,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,oBAAoB,GAoBrB,MAAM,oBAAoB,CAAC;AAE5B,kDAAkD;AAClD,OAAO,EACL,YAAY,EACZ,kBAAkB,GAGnB,MAAM,sBAAsB,CAAC;AAE9B,yCAAyC;AACzC,2EAA2E;AAC3E,OAAO,EACL,iBAAiB,EACjB,uBAAuB,GAKxB,MAAM,gBAAgB,CAAC;AAExB,0EAA0E;AAC1E,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,GASrB,MAAM,cAAc,CAAC"}