cognitive-core 0.0.2 → 0.1.2

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 (857) hide show
  1. package/.claude/settings.json +88 -0
  2. package/.claude/settings.local.json +11 -0
  3. package/.entire/settings.json +4 -0
  4. package/README.md +563 -107
  5. package/SKILL.md +193 -0
  6. package/dist/agents/index.d.ts +3 -0
  7. package/dist/agents/index.d.ts.map +1 -0
  8. package/dist/agents/index.js +5 -0
  9. package/dist/agents/index.js.map +1 -0
  10. package/dist/agents/mock-provider.d.ts +23 -0
  11. package/dist/agents/mock-provider.d.ts.map +1 -0
  12. package/dist/agents/mock-provider.js +71 -0
  13. package/dist/agents/mock-provider.js.map +1 -0
  14. package/dist/agents/types.d.ts +98 -0
  15. package/dist/agents/types.d.ts.map +1 -0
  16. package/dist/agents/types.js +44 -0
  17. package/dist/agents/types.js.map +1 -0
  18. package/dist/atlas.d.ts +334 -0
  19. package/dist/atlas.d.ts.map +1 -0
  20. package/dist/atlas.js +702 -0
  21. package/dist/atlas.js.map +1 -0
  22. package/dist/bin/cognitive-core.d.ts +18 -0
  23. package/dist/bin/cognitive-core.d.ts.map +1 -0
  24. package/dist/bin/cognitive-core.js +419 -0
  25. package/dist/bin/cognitive-core.js.map +1 -0
  26. package/dist/embeddings/bm25.d.ts +104 -0
  27. package/dist/embeddings/bm25.d.ts.map +1 -0
  28. package/dist/embeddings/bm25.js +264 -0
  29. package/dist/embeddings/bm25.js.map +1 -0
  30. package/dist/embeddings/index.d.ts +12 -0
  31. package/dist/embeddings/index.d.ts.map +1 -0
  32. package/dist/embeddings/index.js +16 -0
  33. package/dist/embeddings/index.js.map +1 -0
  34. package/dist/embeddings/manager.d.ts +112 -0
  35. package/dist/embeddings/manager.d.ts.map +1 -0
  36. package/dist/embeddings/manager.js +215 -0
  37. package/dist/embeddings/manager.js.map +1 -0
  38. package/dist/embeddings/provider.d.ts +101 -0
  39. package/dist/embeddings/provider.d.ts.map +1 -0
  40. package/dist/embeddings/provider.js +235 -0
  41. package/dist/embeddings/provider.js.map +1 -0
  42. package/dist/embeddings/vector-store.d.ts +101 -0
  43. package/dist/embeddings/vector-store.d.ts.map +1 -0
  44. package/dist/embeddings/vector-store.js +256 -0
  45. package/dist/embeddings/vector-store.js.map +1 -0
  46. package/dist/factory.d.ts +193 -0
  47. package/dist/factory.d.ts.map +1 -0
  48. package/dist/factory.js +109 -0
  49. package/dist/factory.js.map +1 -0
  50. package/dist/index.d.ts +32 -453
  51. package/dist/index.d.ts.map +1 -0
  52. package/dist/index.js +115 -509
  53. package/dist/index.js.map +1 -0
  54. package/dist/learning/analyzer.d.ts +110 -0
  55. package/dist/learning/analyzer.d.ts.map +1 -0
  56. package/dist/learning/analyzer.js +213 -0
  57. package/dist/learning/analyzer.js.map +1 -0
  58. package/dist/learning/effectiveness.d.ts +158 -0
  59. package/dist/learning/effectiveness.d.ts.map +1 -0
  60. package/dist/learning/effectiveness.js +251 -0
  61. package/dist/learning/effectiveness.js.map +1 -0
  62. package/dist/learning/index.d.ts +12 -0
  63. package/dist/learning/index.d.ts.map +1 -0
  64. package/dist/learning/index.js +17 -0
  65. package/dist/learning/index.js.map +1 -0
  66. package/dist/learning/knowledge-extractor.d.ts +56 -0
  67. package/dist/learning/knowledge-extractor.d.ts.map +1 -0
  68. package/dist/learning/knowledge-extractor.js +336 -0
  69. package/dist/learning/knowledge-extractor.js.map +1 -0
  70. package/dist/learning/llm-extractor.d.ts +88 -0
  71. package/dist/learning/llm-extractor.d.ts.map +1 -0
  72. package/dist/learning/llm-extractor.js +372 -0
  73. package/dist/learning/llm-extractor.js.map +1 -0
  74. package/dist/learning/meta-learner.d.ts +87 -0
  75. package/dist/learning/meta-learner.d.ts.map +1 -0
  76. package/dist/learning/meta-learner.js +398 -0
  77. package/dist/learning/meta-learner.js.map +1 -0
  78. package/dist/learning/pipeline.d.ts +89 -0
  79. package/dist/learning/pipeline.d.ts.map +1 -0
  80. package/dist/learning/pipeline.js +236 -0
  81. package/dist/learning/pipeline.js.map +1 -0
  82. package/dist/learning/playbook-extractor.d.ts +113 -0
  83. package/dist/learning/playbook-extractor.d.ts.map +1 -0
  84. package/dist/learning/playbook-extractor.js +523 -0
  85. package/dist/learning/playbook-extractor.js.map +1 -0
  86. package/dist/learning/team-ingester.d.ts +152 -0
  87. package/dist/learning/team-ingester.d.ts.map +1 -0
  88. package/dist/learning/team-ingester.js +333 -0
  89. package/dist/learning/team-ingester.js.map +1 -0
  90. package/dist/learning/team-meta-learner.d.ts +50 -0
  91. package/dist/learning/team-meta-learner.d.ts.map +1 -0
  92. package/dist/learning/team-meta-learner.js +417 -0
  93. package/dist/learning/team-meta-learner.js.map +1 -0
  94. package/dist/learning/team-pipeline.d.ts +76 -0
  95. package/dist/learning/team-pipeline.d.ts.map +1 -0
  96. package/dist/learning/team-pipeline.js +266 -0
  97. package/dist/learning/team-pipeline.js.map +1 -0
  98. package/dist/learning/trajectory-sources/dataclaw.d.ts +41 -0
  99. package/dist/learning/trajectory-sources/dataclaw.d.ts.map +1 -0
  100. package/dist/learning/trajectory-sources/dataclaw.js +330 -0
  101. package/dist/learning/trajectory-sources/dataclaw.js.map +1 -0
  102. package/dist/learning/trajectory-sources/entire.d.ts +28 -0
  103. package/dist/learning/trajectory-sources/entire.d.ts.map +1 -0
  104. package/dist/learning/trajectory-sources/entire.js +182 -0
  105. package/dist/learning/trajectory-sources/entire.js.map +1 -0
  106. package/dist/learning/trajectory-sources/file.d.ts +23 -0
  107. package/dist/learning/trajectory-sources/file.d.ts.map +1 -0
  108. package/dist/learning/trajectory-sources/file.js +101 -0
  109. package/dist/learning/trajectory-sources/file.js.map +1 -0
  110. package/dist/learning/trajectory-sources/huggingface.d.ts +36 -0
  111. package/dist/learning/trajectory-sources/huggingface.d.ts.map +1 -0
  112. package/dist/learning/trajectory-sources/huggingface.js +157 -0
  113. package/dist/learning/trajectory-sources/huggingface.js.map +1 -0
  114. package/dist/learning/trajectory-sources/in-memory.d.ts +21 -0
  115. package/dist/learning/trajectory-sources/in-memory.d.ts.map +1 -0
  116. package/dist/learning/trajectory-sources/in-memory.js +43 -0
  117. package/dist/learning/trajectory-sources/in-memory.js.map +1 -0
  118. package/dist/learning/trajectory-sources/index.d.ts +7 -0
  119. package/dist/learning/trajectory-sources/index.d.ts.map +1 -0
  120. package/dist/learning/trajectory-sources/index.js +7 -0
  121. package/dist/learning/trajectory-sources/index.js.map +1 -0
  122. package/dist/learning/trajectory-sources/pipeline.d.ts +24 -0
  123. package/dist/learning/trajectory-sources/pipeline.d.ts.map +1 -0
  124. package/dist/learning/trajectory-sources/pipeline.js +47 -0
  125. package/dist/learning/trajectory-sources/pipeline.js.map +1 -0
  126. package/dist/learning/usage-inference.d.ts +82 -0
  127. package/dist/learning/usage-inference.d.ts.map +1 -0
  128. package/dist/learning/usage-inference.js +261 -0
  129. package/dist/learning/usage-inference.js.map +1 -0
  130. package/dist/mcp/index.d.ts +6 -0
  131. package/dist/mcp/index.d.ts.map +1 -0
  132. package/dist/mcp/index.js +6 -0
  133. package/dist/mcp/index.js.map +1 -0
  134. package/dist/mcp/playbook-server.d.ts +120 -0
  135. package/dist/mcp/playbook-server.d.ts.map +1 -0
  136. package/dist/mcp/playbook-server.js +427 -0
  137. package/dist/mcp/playbook-server.js.map +1 -0
  138. package/dist/memory/curated-loader.d.ts +62 -0
  139. package/dist/memory/curated-loader.d.ts.map +1 -0
  140. package/dist/memory/curated-loader.js +106 -0
  141. package/dist/memory/curated-loader.js.map +1 -0
  142. package/dist/memory/experience.d.ts +122 -0
  143. package/dist/memory/experience.d.ts.map +1 -0
  144. package/dist/memory/experience.js +392 -0
  145. package/dist/memory/experience.js.map +1 -0
  146. package/dist/memory/graph-layers/base.d.ts +29 -0
  147. package/dist/memory/graph-layers/base.d.ts.map +1 -0
  148. package/dist/memory/graph-layers/base.js +143 -0
  149. package/dist/memory/graph-layers/base.js.map +1 -0
  150. package/dist/memory/graph-layers/causal.d.ts +14 -0
  151. package/dist/memory/graph-layers/causal.d.ts.map +1 -0
  152. package/dist/memory/graph-layers/causal.js +14 -0
  153. package/dist/memory/graph-layers/causal.js.map +1 -0
  154. package/dist/memory/graph-layers/entity.d.ts +14 -0
  155. package/dist/memory/graph-layers/entity.d.ts.map +1 -0
  156. package/dist/memory/graph-layers/entity.js +14 -0
  157. package/dist/memory/graph-layers/entity.js.map +1 -0
  158. package/dist/memory/graph-layers/index.d.ts +6 -0
  159. package/dist/memory/graph-layers/index.d.ts.map +1 -0
  160. package/dist/memory/graph-layers/index.js +6 -0
  161. package/dist/memory/graph-layers/index.js.map +1 -0
  162. package/dist/memory/graph-layers/semantic.d.ts +14 -0
  163. package/dist/memory/graph-layers/semantic.d.ts.map +1 -0
  164. package/dist/memory/graph-layers/semantic.js +14 -0
  165. package/dist/memory/graph-layers/semantic.js.map +1 -0
  166. package/dist/memory/graph-layers/temporal.d.ts +14 -0
  167. package/dist/memory/graph-layers/temporal.d.ts.map +1 -0
  168. package/dist/memory/graph-layers/temporal.js +14 -0
  169. package/dist/memory/graph-layers/temporal.js.map +1 -0
  170. package/dist/memory/index.d.ts +14 -0
  171. package/dist/memory/index.d.ts.map +1 -0
  172. package/dist/memory/index.js +19 -0
  173. package/dist/memory/index.js.map +1 -0
  174. package/dist/memory/knowledge-bank.d.ts +220 -0
  175. package/dist/memory/knowledge-bank.d.ts.map +1 -0
  176. package/dist/memory/knowledge-bank.js +1003 -0
  177. package/dist/memory/knowledge-bank.js.map +1 -0
  178. package/dist/memory/knowledge-defrag.d.ts +49 -0
  179. package/dist/memory/knowledge-defrag.d.ts.map +1 -0
  180. package/dist/memory/knowledge-defrag.js +257 -0
  181. package/dist/memory/knowledge-defrag.js.map +1 -0
  182. package/dist/memory/knowledge-graph.d.ts +41 -0
  183. package/dist/memory/knowledge-graph.d.ts.map +1 -0
  184. package/dist/memory/knowledge-graph.js +273 -0
  185. package/dist/memory/knowledge-graph.js.map +1 -0
  186. package/dist/memory/meta.d.ts +90 -0
  187. package/dist/memory/meta.d.ts.map +1 -0
  188. package/dist/memory/meta.js +362 -0
  189. package/dist/memory/meta.js.map +1 -0
  190. package/dist/memory/playbook.d.ts +133 -0
  191. package/dist/memory/playbook.d.ts.map +1 -0
  192. package/dist/memory/playbook.js +357 -0
  193. package/dist/memory/playbook.js.map +1 -0
  194. package/dist/memory/search-provider.d.ts +31 -0
  195. package/dist/memory/search-provider.d.ts.map +1 -0
  196. package/dist/memory/search-provider.js +2 -0
  197. package/dist/memory/search-provider.js.map +1 -0
  198. package/dist/memory/search-providers/index.d.ts +3 -0
  199. package/dist/memory/search-providers/index.d.ts.map +1 -0
  200. package/dist/memory/search-providers/index.js +3 -0
  201. package/dist/memory/search-providers/index.js.map +1 -0
  202. package/dist/memory/search-providers/minimem.d.ts +43 -0
  203. package/dist/memory/search-providers/minimem.d.ts.map +1 -0
  204. package/dist/memory/search-providers/minimem.js +56 -0
  205. package/dist/memory/search-providers/minimem.js.map +1 -0
  206. package/dist/memory/search-providers/text-similarity.d.ts +15 -0
  207. package/dist/memory/search-providers/text-similarity.d.ts.map +1 -0
  208. package/dist/memory/search-providers/text-similarity.js +21 -0
  209. package/dist/memory/search-providers/text-similarity.js.map +1 -0
  210. package/dist/memory/skill-exporter.d.ts +75 -0
  211. package/dist/memory/skill-exporter.d.ts.map +1 -0
  212. package/dist/memory/skill-exporter.js +248 -0
  213. package/dist/memory/skill-exporter.js.map +1 -0
  214. package/dist/memory/system.d.ts +179 -0
  215. package/dist/memory/system.d.ts.map +1 -0
  216. package/dist/memory/system.js +421 -0
  217. package/dist/memory/system.js.map +1 -0
  218. package/dist/memory/team-experience.d.ts +298 -0
  219. package/dist/memory/team-experience.d.ts.map +1 -0
  220. package/dist/memory/team-experience.js +355 -0
  221. package/dist/memory/team-experience.js.map +1 -0
  222. package/dist/runtime/backends/acp-protocol.d.ts +49 -0
  223. package/dist/runtime/backends/acp-protocol.d.ts.map +1 -0
  224. package/dist/runtime/backends/acp-protocol.js +166 -0
  225. package/dist/runtime/backends/acp-protocol.js.map +1 -0
  226. package/dist/runtime/backends/acp.d.ts +67 -0
  227. package/dist/runtime/backends/acp.d.ts.map +1 -0
  228. package/dist/runtime/backends/acp.js +166 -0
  229. package/dist/runtime/backends/acp.js.map +1 -0
  230. package/dist/runtime/backends/index.d.ts +7 -0
  231. package/dist/runtime/backends/index.d.ts.map +1 -0
  232. package/dist/runtime/backends/index.js +8 -0
  233. package/dist/runtime/backends/index.js.map +1 -0
  234. package/dist/runtime/backends/macro-agent.d.ts +104 -0
  235. package/dist/runtime/backends/macro-agent.d.ts.map +1 -0
  236. package/dist/runtime/backends/macro-agent.js +107 -0
  237. package/dist/runtime/backends/macro-agent.js.map +1 -0
  238. package/dist/runtime/backends/mock.d.ts +67 -0
  239. package/dist/runtime/backends/mock.d.ts.map +1 -0
  240. package/dist/runtime/backends/mock.js +153 -0
  241. package/dist/runtime/backends/mock.js.map +1 -0
  242. package/dist/runtime/backends/subprocess.d.ts +56 -0
  243. package/dist/runtime/backends/subprocess.d.ts.map +1 -0
  244. package/dist/runtime/backends/subprocess.js +260 -0
  245. package/dist/runtime/backends/subprocess.js.map +1 -0
  246. package/dist/runtime/compute-provider.d.ts +87 -0
  247. package/dist/runtime/compute-provider.d.ts.map +1 -0
  248. package/dist/runtime/compute-provider.js +87 -0
  249. package/dist/runtime/compute-provider.js.map +1 -0
  250. package/dist/runtime/flows/learning.d.ts +73 -0
  251. package/dist/runtime/flows/learning.d.ts.map +1 -0
  252. package/dist/runtime/flows/learning.js +116 -0
  253. package/dist/runtime/flows/learning.js.map +1 -0
  254. package/dist/runtime/flows/validation.d.ts +122 -0
  255. package/dist/runtime/flows/validation.d.ts.map +1 -0
  256. package/dist/runtime/flows/validation.js +223 -0
  257. package/dist/runtime/flows/validation.js.map +1 -0
  258. package/dist/runtime/index.d.ts +7 -0
  259. package/dist/runtime/index.d.ts.map +1 -0
  260. package/dist/runtime/index.js +10 -0
  261. package/dist/runtime/index.js.map +1 -0
  262. package/dist/runtime/manager.d.ts +149 -0
  263. package/dist/runtime/manager.d.ts.map +1 -0
  264. package/dist/runtime/manager.js +535 -0
  265. package/dist/runtime/manager.js.map +1 -0
  266. package/dist/runtime/types.d.ts +176 -0
  267. package/dist/runtime/types.d.ts.map +1 -0
  268. package/dist/runtime/types.js +2 -0
  269. package/dist/runtime/types.js.map +1 -0
  270. package/dist/search/evaluator.d.ts +109 -0
  271. package/dist/search/evaluator.d.ts.map +1 -0
  272. package/dist/search/evaluator.js +372 -0
  273. package/dist/search/evaluator.js.map +1 -0
  274. package/dist/search/index.d.ts +8 -0
  275. package/dist/search/index.d.ts.map +1 -0
  276. package/dist/search/index.js +13 -0
  277. package/dist/search/index.js.map +1 -0
  278. package/dist/search/refinement-loop.d.ts +90 -0
  279. package/dist/search/refinement-loop.d.ts.map +1 -0
  280. package/dist/search/refinement-loop.js +316 -0
  281. package/dist/search/refinement-loop.js.map +1 -0
  282. package/dist/search/refinement-types.d.ts +154 -0
  283. package/dist/search/refinement-types.d.ts.map +1 -0
  284. package/dist/search/refinement-types.js +99 -0
  285. package/dist/search/refinement-types.js.map +1 -0
  286. package/dist/search/router.d.ts +61 -0
  287. package/dist/search/router.d.ts.map +1 -0
  288. package/dist/search/router.js +197 -0
  289. package/dist/search/router.js.map +1 -0
  290. package/dist/search/solver.d.ts +75 -0
  291. package/dist/search/solver.d.ts.map +1 -0
  292. package/dist/search/solver.js +216 -0
  293. package/dist/search/solver.js.map +1 -0
  294. package/dist/search/team-router.d.ts +91 -0
  295. package/dist/search/team-router.d.ts.map +1 -0
  296. package/dist/search/team-router.js +315 -0
  297. package/dist/search/team-router.js.map +1 -0
  298. package/dist/search/verification-runner.d.ts +125 -0
  299. package/dist/search/verification-runner.d.ts.map +1 -0
  300. package/dist/search/verification-runner.js +440 -0
  301. package/dist/search/verification-runner.js.map +1 -0
  302. package/dist/session-bank/git-reader.d.ts +39 -0
  303. package/dist/session-bank/git-reader.d.ts.map +1 -0
  304. package/dist/session-bank/git-reader.js +165 -0
  305. package/dist/session-bank/git-reader.js.map +1 -0
  306. package/dist/session-bank/index.d.ts +5 -0
  307. package/dist/session-bank/index.d.ts.map +1 -0
  308. package/dist/session-bank/index.js +4 -0
  309. package/dist/session-bank/index.js.map +1 -0
  310. package/dist/session-bank/parser.d.ts +39 -0
  311. package/dist/session-bank/parser.d.ts.map +1 -0
  312. package/dist/session-bank/parser.js +231 -0
  313. package/dist/session-bank/parser.js.map +1 -0
  314. package/dist/session-bank/session-bank.d.ts +35 -0
  315. package/dist/session-bank/session-bank.d.ts.map +1 -0
  316. package/dist/session-bank/session-bank.js +326 -0
  317. package/dist/session-bank/session-bank.js.map +1 -0
  318. package/dist/session-bank/types.d.ts +129 -0
  319. package/dist/session-bank/types.d.ts.map +1 -0
  320. package/dist/session-bank/types.js +7 -0
  321. package/dist/session-bank/types.js.map +1 -0
  322. package/dist/surfacing/index.d.ts +6 -0
  323. package/dist/surfacing/index.d.ts.map +1 -0
  324. package/dist/surfacing/index.js +5 -0
  325. package/dist/surfacing/index.js.map +1 -0
  326. package/dist/surfacing/publisher.d.ts +22 -0
  327. package/dist/surfacing/publisher.d.ts.map +1 -0
  328. package/dist/surfacing/publisher.js +9 -0
  329. package/dist/surfacing/publisher.js.map +1 -0
  330. package/dist/surfacing/skill-library.d.ts +170 -0
  331. package/dist/surfacing/skill-library.d.ts.map +1 -0
  332. package/dist/surfacing/skill-library.js +455 -0
  333. package/dist/surfacing/skill-library.js.map +1 -0
  334. package/dist/surfacing/skill-publisher.d.ts +43 -0
  335. package/dist/surfacing/skill-publisher.d.ts.map +1 -0
  336. package/dist/surfacing/skill-publisher.js +197 -0
  337. package/dist/surfacing/skill-publisher.js.map +1 -0
  338. package/dist/surfacing/sqlite-storage-adapter.d.ts +42 -0
  339. package/dist/surfacing/sqlite-storage-adapter.d.ts.map +1 -0
  340. package/dist/surfacing/sqlite-storage-adapter.js +207 -0
  341. package/dist/surfacing/sqlite-storage-adapter.js.map +1 -0
  342. package/dist/surfacing/team-skill-library.d.ts +180 -0
  343. package/dist/surfacing/team-skill-library.d.ts.map +1 -0
  344. package/dist/surfacing/team-skill-library.js +384 -0
  345. package/dist/surfacing/team-skill-library.js.map +1 -0
  346. package/dist/types/config.d.ts +2287 -0
  347. package/dist/types/config.d.ts.map +1 -0
  348. package/dist/types/config.js +490 -0
  349. package/dist/types/config.js.map +1 -0
  350. package/dist/types/dataclaw.d.ts +286 -0
  351. package/dist/types/dataclaw.d.ts.map +1 -0
  352. package/dist/types/dataclaw.js +84 -0
  353. package/dist/types/dataclaw.js.map +1 -0
  354. package/dist/types/index.d.ts +16 -0
  355. package/dist/types/index.d.ts.map +1 -0
  356. package/dist/types/index.js +26 -0
  357. package/dist/types/index.js.map +1 -0
  358. package/dist/types/knowledge-graph.d.ts +148 -0
  359. package/dist/types/knowledge-graph.d.ts.map +1 -0
  360. package/dist/types/knowledge-graph.js +40 -0
  361. package/dist/types/knowledge-graph.js.map +1 -0
  362. package/dist/types/knowledge.d.ts +280 -0
  363. package/dist/types/knowledge.d.ts.map +1 -0
  364. package/dist/types/knowledge.js +191 -0
  365. package/dist/types/knowledge.js.map +1 -0
  366. package/dist/types/memory.d.ts +339 -0
  367. package/dist/types/memory.d.ts.map +1 -0
  368. package/dist/types/memory.js +207 -0
  369. package/dist/types/memory.js.map +1 -0
  370. package/dist/types/meta.d.ts +146 -0
  371. package/dist/types/meta.d.ts.map +1 -0
  372. package/dist/types/meta.js +51 -0
  373. package/dist/types/meta.js.map +1 -0
  374. package/dist/types/outcome.d.ts +42 -0
  375. package/dist/types/outcome.d.ts.map +1 -0
  376. package/dist/types/outcome.js +50 -0
  377. package/dist/types/outcome.js.map +1 -0
  378. package/dist/types/playbook.d.ts +119 -0
  379. package/dist/types/playbook.d.ts.map +1 -0
  380. package/dist/types/playbook.js +71 -0
  381. package/dist/types/playbook.js.map +1 -0
  382. package/dist/types/step.d.ts +44 -0
  383. package/dist/types/step.d.ts.map +1 -0
  384. package/dist/types/step.js +32 -0
  385. package/dist/types/step.js.map +1 -0
  386. package/dist/types/task.d.ts +91 -0
  387. package/dist/types/task.d.ts.map +1 -0
  388. package/dist/types/task.js +39 -0
  389. package/dist/types/task.js.map +1 -0
  390. package/dist/types/team-meta.d.ts +160 -0
  391. package/dist/types/team-meta.d.ts.map +1 -0
  392. package/dist/types/team-meta.js +42 -0
  393. package/dist/types/team-meta.js.map +1 -0
  394. package/dist/types/team-playbook.d.ts +276 -0
  395. package/dist/types/team-playbook.d.ts.map +1 -0
  396. package/dist/types/team-playbook.js +85 -0
  397. package/dist/types/team-playbook.js.map +1 -0
  398. package/dist/types/team-trajectory.d.ts +305 -0
  399. package/dist/types/team-trajectory.d.ts.map +1 -0
  400. package/dist/types/team-trajectory.js +304 -0
  401. package/dist/types/team-trajectory.js.map +1 -0
  402. package/dist/types/trajectory-source.d.ts +39 -0
  403. package/dist/types/trajectory-source.d.ts.map +1 -0
  404. package/dist/types/trajectory-source.js +2 -0
  405. package/dist/types/trajectory-source.js.map +1 -0
  406. package/dist/types/trajectory.d.ts +221 -0
  407. package/dist/types/trajectory.d.ts.map +1 -0
  408. package/dist/types/trajectory.js +60 -0
  409. package/dist/types/trajectory.js.map +1 -0
  410. package/dist/utils/frontmatter.d.ts +34 -0
  411. package/dist/utils/frontmatter.d.ts.map +1 -0
  412. package/dist/utils/frontmatter.js +93 -0
  413. package/dist/utils/frontmatter.js.map +1 -0
  414. package/dist/utils/index.d.ts +5 -0
  415. package/dist/utils/index.d.ts.map +1 -0
  416. package/dist/utils/index.js +5 -0
  417. package/dist/utils/index.js.map +1 -0
  418. package/dist/utils/similarity.d.ts +31 -0
  419. package/dist/utils/similarity.d.ts.map +1 -0
  420. package/dist/utils/similarity.js +107 -0
  421. package/dist/utils/similarity.js.map +1 -0
  422. package/dist/utils/storage.d.ts +106 -0
  423. package/dist/utils/storage.d.ts.map +1 -0
  424. package/dist/utils/storage.js +203 -0
  425. package/dist/utils/storage.js.map +1 -0
  426. package/dist/utils/validation.d.ts +129 -0
  427. package/dist/utils/validation.d.ts.map +1 -0
  428. package/dist/utils/validation.js +171 -0
  429. package/dist/utils/validation.js.map +1 -0
  430. package/dist/workspace/index.d.ts +6 -0
  431. package/dist/workspace/index.d.ts.map +1 -0
  432. package/dist/workspace/index.js +11 -0
  433. package/dist/workspace/index.js.map +1 -0
  434. package/dist/workspace/runner.d.ts +50 -0
  435. package/dist/workspace/runner.d.ts.map +1 -0
  436. package/dist/workspace/runner.js +219 -0
  437. package/dist/workspace/runner.js.map +1 -0
  438. package/dist/workspace/skill-converter.d.ts +18 -0
  439. package/dist/workspace/skill-converter.d.ts.map +1 -0
  440. package/dist/workspace/skill-converter.js +257 -0
  441. package/dist/workspace/skill-converter.js.map +1 -0
  442. package/dist/workspace/templates/index.d.ts +11 -0
  443. package/dist/workspace/templates/index.d.ts.map +1 -0
  444. package/dist/workspace/templates/index.js +21 -0
  445. package/dist/workspace/templates/index.js.map +1 -0
  446. package/dist/workspace/templates/knowledge-defrag.d.ts +25 -0
  447. package/dist/workspace/templates/knowledge-defrag.d.ts.map +1 -0
  448. package/dist/workspace/templates/knowledge-defrag.js +154 -0
  449. package/dist/workspace/templates/knowledge-defrag.js.map +1 -0
  450. package/dist/workspace/templates/knowledge-extraction.d.ts +25 -0
  451. package/dist/workspace/templates/knowledge-extraction.d.ts.map +1 -0
  452. package/dist/workspace/templates/knowledge-extraction.js +246 -0
  453. package/dist/workspace/templates/knowledge-extraction.js.map +1 -0
  454. package/dist/workspace/templates/meta-reflection.d.ts +47 -0
  455. package/dist/workspace/templates/meta-reflection.d.ts.map +1 -0
  456. package/dist/workspace/templates/meta-reflection.js +135 -0
  457. package/dist/workspace/templates/meta-reflection.js.map +1 -0
  458. package/dist/workspace/templates/playbook-extraction.d.ts +20 -0
  459. package/dist/workspace/templates/playbook-extraction.d.ts.map +1 -0
  460. package/dist/workspace/templates/playbook-extraction.js +189 -0
  461. package/dist/workspace/templates/playbook-extraction.js.map +1 -0
  462. package/dist/workspace/templates/refinement-analysis.d.ts +31 -0
  463. package/dist/workspace/templates/refinement-analysis.d.ts.map +1 -0
  464. package/dist/workspace/templates/refinement-analysis.js +107 -0
  465. package/dist/workspace/templates/refinement-analysis.js.map +1 -0
  466. package/dist/workspace/templates/solution-evaluation.d.ts +21 -0
  467. package/dist/workspace/templates/solution-evaluation.d.ts.map +1 -0
  468. package/dist/workspace/templates/solution-evaluation.js +131 -0
  469. package/dist/workspace/templates/solution-evaluation.js.map +1 -0
  470. package/dist/workspace/templates/team-playbook-extraction.d.ts +44 -0
  471. package/dist/workspace/templates/team-playbook-extraction.d.ts.map +1 -0
  472. package/dist/workspace/templates/team-playbook-extraction.js +497 -0
  473. package/dist/workspace/templates/team-playbook-extraction.js.map +1 -0
  474. package/dist/workspace/templates/team-trajectory-analysis.d.ts +19 -0
  475. package/dist/workspace/templates/team-trajectory-analysis.d.ts.map +1 -0
  476. package/dist/workspace/templates/team-trajectory-analysis.js +442 -0
  477. package/dist/workspace/templates/team-trajectory-analysis.js.map +1 -0
  478. package/dist/workspace/templates/trajectory-analysis.d.ts +19 -0
  479. package/dist/workspace/templates/trajectory-analysis.d.ts.map +1 -0
  480. package/dist/workspace/templates/trajectory-analysis.js +170 -0
  481. package/dist/workspace/templates/trajectory-analysis.js.map +1 -0
  482. package/dist/workspace/templates/usage-inference.d.ts +19 -0
  483. package/dist/workspace/templates/usage-inference.d.ts.map +1 -0
  484. package/dist/workspace/templates/usage-inference.js +125 -0
  485. package/dist/workspace/templates/usage-inference.js.map +1 -0
  486. package/dist/workspace/types.d.ts +145 -0
  487. package/dist/workspace/types.d.ts.map +1 -0
  488. package/dist/workspace/types.js +17 -0
  489. package/dist/workspace/types.js.map +1 -0
  490. package/docs/DESIGN-agentic-workspace.md +2057 -0
  491. package/docs/DESIGN-semantic-memory-knowledge-bank.md +1789 -0
  492. package/docs/DESIGN-session-bank.md +1134 -0
  493. package/docs/DESIGN-team-extraction-pipeline.md +1369 -0
  494. package/docs/DESIGN-workspace-migration.md +1079 -0
  495. package/docs/PLAN-agentic-workspace-implementation.md +717 -0
  496. package/docs/PLAN-graph-migration.md +299 -0
  497. package/docs/PLAN-session-bank-implementation.md +474 -0
  498. package/docs/PROPOSAL-team-aware-learning.md +1080 -0
  499. package/docs/RESEARCH-semantic-memory-knowledge-structures.md +517 -0
  500. package/docs/RESEARCH-team-trajectory-learning.md +553 -0
  501. package/gaps.md +204 -0
  502. package/package.json +67 -33
  503. package/references/agent-workspace/CLAUDE.md +74 -0
  504. package/references/agent-workspace/README.md +587 -0
  505. package/references/agent-workspace/media/banner.png +0 -0
  506. package/references/agent-workspace/package-lock.json +2061 -0
  507. package/references/agent-workspace/package.json +54 -0
  508. package/references/agent-workspace/src/handle.ts +122 -0
  509. package/references/agent-workspace/src/index.ts +32 -0
  510. package/references/agent-workspace/src/manager.ts +102 -0
  511. package/references/agent-workspace/src/readers/json.ts +71 -0
  512. package/references/agent-workspace/src/readers/markdown.ts +37 -0
  513. package/references/agent-workspace/src/readers/raw.ts +27 -0
  514. package/references/agent-workspace/src/types.ts +68 -0
  515. package/references/agent-workspace/src/validation.ts +93 -0
  516. package/references/agent-workspace/src/writers/json.ts +17 -0
  517. package/references/agent-workspace/src/writers/markdown.ts +27 -0
  518. package/references/agent-workspace/src/writers/raw.ts +22 -0
  519. package/references/agent-workspace/tests/errors.test.ts +652 -0
  520. package/references/agent-workspace/tests/handle.test.ts +144 -0
  521. package/references/agent-workspace/tests/manager.test.ts +124 -0
  522. package/references/agent-workspace/tests/readers.test.ts +205 -0
  523. package/references/agent-workspace/tests/validation.test.ts +196 -0
  524. package/references/agent-workspace/tests/writers.test.ts +108 -0
  525. package/references/agent-workspace/tsconfig.json +20 -0
  526. package/references/agent-workspace/tsup.config.ts +9 -0
  527. package/references/minimem/.claude/settings.json +7 -0
  528. package/references/minimem/.sudocode/issues.jsonl +18 -0
  529. package/references/minimem/.sudocode/specs.jsonl +1 -0
  530. package/references/minimem/CLAUDE.md +310 -0
  531. package/references/minimem/README.md +556 -0
  532. package/references/minimem/claude-plugin/.claude-plugin/plugin.json +10 -0
  533. package/references/minimem/claude-plugin/.mcp.json +7 -0
  534. package/references/minimem/claude-plugin/README.md +158 -0
  535. package/references/minimem/claude-plugin/commands/recall.md +47 -0
  536. package/references/minimem/claude-plugin/commands/remember.md +41 -0
  537. package/references/minimem/claude-plugin/hooks/__tests__/hooks.test.ts +272 -0
  538. package/references/minimem/claude-plugin/hooks/hooks.json +27 -0
  539. package/references/minimem/claude-plugin/hooks/session-end.sh +86 -0
  540. package/references/minimem/claude-plugin/hooks/session-start.sh +85 -0
  541. package/references/minimem/claude-plugin/skills/memory/SKILL.md +108 -0
  542. package/references/minimem/package-lock.json +5373 -0
  543. package/references/minimem/package.json +60 -0
  544. package/references/minimem/scripts/postbuild.js +35 -0
  545. package/references/minimem/src/__tests__/edge-cases.test.ts +371 -0
  546. package/references/minimem/src/__tests__/errors.test.ts +265 -0
  547. package/references/minimem/src/__tests__/helpers.ts +199 -0
  548. package/references/minimem/src/__tests__/internal.test.ts +407 -0
  549. package/references/minimem/src/__tests__/knowledge.test.ts +287 -0
  550. package/references/minimem/src/__tests__/minimem.integration.test.ts +1127 -0
  551. package/references/minimem/src/__tests__/session.test.ts +190 -0
  552. package/references/minimem/src/cli/__tests__/commands.test.ts +759 -0
  553. package/references/minimem/src/cli/commands/__tests__/conflicts.test.ts +141 -0
  554. package/references/minimem/src/cli/commands/append.ts +76 -0
  555. package/references/minimem/src/cli/commands/config.ts +262 -0
  556. package/references/minimem/src/cli/commands/conflicts.ts +413 -0
  557. package/references/minimem/src/cli/commands/daemon.ts +169 -0
  558. package/references/minimem/src/cli/commands/index.ts +12 -0
  559. package/references/minimem/src/cli/commands/init.ts +88 -0
  560. package/references/minimem/src/cli/commands/mcp.ts +177 -0
  561. package/references/minimem/src/cli/commands/push-pull.ts +213 -0
  562. package/references/minimem/src/cli/commands/search.ts +158 -0
  563. package/references/minimem/src/cli/commands/status.ts +84 -0
  564. package/references/minimem/src/cli/commands/sync-init.ts +290 -0
  565. package/references/minimem/src/cli/commands/sync.ts +70 -0
  566. package/references/minimem/src/cli/commands/upsert.ts +197 -0
  567. package/references/minimem/src/cli/config.ts +584 -0
  568. package/references/minimem/src/cli/index.ts +264 -0
  569. package/references/minimem/src/cli/shared.ts +161 -0
  570. package/references/minimem/src/cli/sync/__tests__/central.test.ts +152 -0
  571. package/references/minimem/src/cli/sync/__tests__/conflicts.test.ts +209 -0
  572. package/references/minimem/src/cli/sync/__tests__/daemon.test.ts +118 -0
  573. package/references/minimem/src/cli/sync/__tests__/detection.test.ts +207 -0
  574. package/references/minimem/src/cli/sync/__tests__/integration.test.ts +476 -0
  575. package/references/minimem/src/cli/sync/__tests__/registry.test.ts +363 -0
  576. package/references/minimem/src/cli/sync/__tests__/state.test.ts +255 -0
  577. package/references/minimem/src/cli/sync/__tests__/validation.test.ts +193 -0
  578. package/references/minimem/src/cli/sync/__tests__/watcher.test.ts +178 -0
  579. package/references/minimem/src/cli/sync/central.ts +292 -0
  580. package/references/minimem/src/cli/sync/conflicts.ts +204 -0
  581. package/references/minimem/src/cli/sync/daemon.ts +407 -0
  582. package/references/minimem/src/cli/sync/detection.ts +138 -0
  583. package/references/minimem/src/cli/sync/index.ts +107 -0
  584. package/references/minimem/src/cli/sync/operations.ts +373 -0
  585. package/references/minimem/src/cli/sync/registry.ts +279 -0
  586. package/references/minimem/src/cli/sync/state.ts +355 -0
  587. package/references/minimem/src/cli/sync/validation.ts +206 -0
  588. package/references/minimem/src/cli/sync/watcher.ts +234 -0
  589. package/references/minimem/src/cli/version.ts +34 -0
  590. package/references/minimem/src/core/index.ts +9 -0
  591. package/references/minimem/src/core/indexer.ts +628 -0
  592. package/references/minimem/src/core/searcher.ts +221 -0
  593. package/references/minimem/src/db/schema.ts +183 -0
  594. package/references/minimem/src/db/sqlite-vec.ts +24 -0
  595. package/references/minimem/src/embeddings/__tests__/embeddings.test.ts +431 -0
  596. package/references/minimem/src/embeddings/batch-gemini.ts +392 -0
  597. package/references/minimem/src/embeddings/batch-openai.ts +409 -0
  598. package/references/minimem/src/embeddings/embeddings.ts +434 -0
  599. package/references/minimem/src/index.ts +109 -0
  600. package/references/minimem/src/internal.ts +299 -0
  601. package/references/minimem/src/minimem.ts +1276 -0
  602. package/references/minimem/src/search/__tests__/hybrid.test.ts +247 -0
  603. package/references/minimem/src/search/graph.ts +234 -0
  604. package/references/minimem/src/search/hybrid.ts +151 -0
  605. package/references/minimem/src/search/search.ts +256 -0
  606. package/references/minimem/src/server/__tests__/mcp.test.ts +341 -0
  607. package/references/minimem/src/server/__tests__/tools.test.ts +364 -0
  608. package/references/minimem/src/server/mcp.ts +326 -0
  609. package/references/minimem/src/server/tools.ts +720 -0
  610. package/references/minimem/src/session.ts +460 -0
  611. package/references/minimem/tsconfig.json +19 -0
  612. package/references/minimem/tsup.config.ts +26 -0
  613. package/references/minimem/vitest.config.ts +24 -0
  614. package/references/skill-tree/.claude/settings.json +6 -0
  615. package/references/skill-tree/.sudocode/issues.jsonl +11 -0
  616. package/references/skill-tree/.sudocode/specs.jsonl +1 -0
  617. package/references/skill-tree/CLAUDE.md +150 -0
  618. package/references/skill-tree/README.md +324 -0
  619. package/references/skill-tree/docs/GAPS_v1.md +221 -0
  620. package/references/skill-tree/docs/INTEGRATION_PLAN.md +467 -0
  621. package/references/skill-tree/docs/TODOS.md +91 -0
  622. package/references/skill-tree/docs/anthropic_skill_guide.md +1364 -0
  623. package/references/skill-tree/docs/design/federated-skill-trees.md +524 -0
  624. package/references/skill-tree/docs/design/multi-agent-sync.md +759 -0
  625. package/references/skill-tree/docs/scraper/BRAINSTORM.md +583 -0
  626. package/references/skill-tree/docs/scraper/POC_PLAN.md +420 -0
  627. package/references/skill-tree/docs/scraper/README.md +170 -0
  628. package/references/skill-tree/examples/basic-usage.ts +190 -0
  629. package/references/skill-tree/package-lock.json +1509 -0
  630. package/references/skill-tree/package.json +66 -0
  631. package/references/skill-tree/scraper/README.md +123 -0
  632. package/references/skill-tree/scraper/docs/DESIGN.md +683 -0
  633. package/references/skill-tree/scraper/docs/PLAN.md +336 -0
  634. package/references/skill-tree/scraper/drizzle.config.ts +10 -0
  635. package/references/skill-tree/scraper/package-lock.json +6329 -0
  636. package/references/skill-tree/scraper/package.json +68 -0
  637. package/references/skill-tree/scraper/test/fixtures/invalid-skill/missing-description.md +7 -0
  638. package/references/skill-tree/scraper/test/fixtures/invalid-skill/missing-name.md +7 -0
  639. package/references/skill-tree/scraper/test/fixtures/minimal-skill/SKILL.md +27 -0
  640. package/references/skill-tree/scraper/test/fixtures/skill-json/SKILL.json +21 -0
  641. package/references/skill-tree/scraper/test/fixtures/skill-with-meta/SKILL.md +54 -0
  642. package/references/skill-tree/scraper/test/fixtures/skill-with-meta/_meta.json +24 -0
  643. package/references/skill-tree/scraper/test/fixtures/valid-skill/SKILL.md +93 -0
  644. package/references/skill-tree/scraper/test/fixtures/valid-skill/_meta.json +22 -0
  645. package/references/skill-tree/scraper/tsup.config.ts +14 -0
  646. package/references/skill-tree/scraper/vitest.config.ts +17 -0
  647. package/references/skill-tree/scripts/convert-to-vitest.ts +166 -0
  648. package/references/skill-tree/skills/skill-writer/SKILL.md +339 -0
  649. package/references/skill-tree/skills/skill-writer/references/examples.md +326 -0
  650. package/references/skill-tree/skills/skill-writer/references/patterns.md +210 -0
  651. package/references/skill-tree/skills/skill-writer/references/quality-checklist.md +123 -0
  652. package/references/skill-tree/test/run-all.ts +106 -0
  653. package/references/skill-tree/test/utils.ts +128 -0
  654. package/references/skill-tree/vitest.config.ts +16 -0
  655. package/scripts/migrate-to-playbooks.ts +307 -0
  656. package/src/agents/index.ts +14 -0
  657. package/src/agents/mock-provider.ts +93 -0
  658. package/src/agents/types.ts +137 -0
  659. package/src/atlas.ts +1072 -0
  660. package/src/bin/cognitive-core.ts +470 -0
  661. package/src/embeddings/bm25.ts +337 -0
  662. package/src/embeddings/index.ts +39 -0
  663. package/src/embeddings/manager.ts +288 -0
  664. package/src/embeddings/provider.ts +318 -0
  665. package/src/embeddings/vector-store.ts +353 -0
  666. package/src/factory.ts +263 -0
  667. package/src/index.ts +368 -0
  668. package/src/learning/analyzer.ts +335 -0
  669. package/src/learning/effectiveness.ts +428 -0
  670. package/src/learning/index.ts +93 -0
  671. package/src/learning/knowledge-extractor.ts +470 -0
  672. package/src/learning/meta-learner.ts +570 -0
  673. package/src/learning/pipeline.ts +323 -0
  674. package/src/learning/playbook-extractor.ts +702 -0
  675. package/src/learning/team-ingester.ts +499 -0
  676. package/src/learning/team-meta-learner.ts +558 -0
  677. package/src/learning/team-pipeline.ts +364 -0
  678. package/src/learning/trajectory-sources/dataclaw.ts +403 -0
  679. package/src/learning/trajectory-sources/entire.ts +240 -0
  680. package/src/learning/trajectory-sources/file.ts +136 -0
  681. package/src/learning/trajectory-sources/huggingface.ts +248 -0
  682. package/src/learning/trajectory-sources/in-memory.ts +61 -0
  683. package/src/learning/trajectory-sources/index.ts +15 -0
  684. package/src/learning/trajectory-sources/pipeline.ts +69 -0
  685. package/src/learning/usage-inference.ts +372 -0
  686. package/src/mcp/index.ts +12 -0
  687. package/src/mcp/playbook-server.ts +565 -0
  688. package/src/memory/curated-loader.ts +160 -0
  689. package/src/memory/experience.ts +515 -0
  690. package/src/memory/graph-layers/base.ts +184 -0
  691. package/src/memory/graph-layers/causal.ts +16 -0
  692. package/src/memory/graph-layers/entity.ts +16 -0
  693. package/src/memory/graph-layers/index.ts +5 -0
  694. package/src/memory/graph-layers/semantic.ts +16 -0
  695. package/src/memory/graph-layers/temporal.ts +16 -0
  696. package/src/memory/index.ts +72 -0
  697. package/src/memory/knowledge-bank.ts +1260 -0
  698. package/src/memory/knowledge-defrag.ts +329 -0
  699. package/src/memory/knowledge-graph.ts +361 -0
  700. package/src/memory/meta.ts +506 -0
  701. package/src/memory/playbook.ts +493 -0
  702. package/src/memory/search-provider.ts +35 -0
  703. package/src/memory/search-providers/index.ts +3 -0
  704. package/src/memory/search-providers/minimem.ts +84 -0
  705. package/src/memory/search-providers/text-similarity.ts +35 -0
  706. package/src/memory/skill-exporter.ts +357 -0
  707. package/src/memory/system.ts +604 -0
  708. package/src/memory/team-experience.ts +604 -0
  709. package/src/runtime/backends/acp-protocol.ts +231 -0
  710. package/src/runtime/backends/acp.ts +239 -0
  711. package/src/runtime/backends/index.ts +38 -0
  712. package/src/runtime/backends/macro-agent.ts +177 -0
  713. package/src/runtime/backends/mock.ts +218 -0
  714. package/src/runtime/backends/subprocess.ts +356 -0
  715. package/src/runtime/compute-provider.ts +206 -0
  716. package/src/runtime/flows/learning.ts +183 -0
  717. package/src/runtime/flows/validation.ts +381 -0
  718. package/src/runtime/index.ts +75 -0
  719. package/src/runtime/manager.ts +685 -0
  720. package/src/runtime/types.ts +198 -0
  721. package/src/search/evaluator.ts +499 -0
  722. package/src/search/index.ts +68 -0
  723. package/src/search/refinement-loop.ts +457 -0
  724. package/src/search/refinement-types.ts +159 -0
  725. package/src/search/router.ts +261 -0
  726. package/src/search/solver.ts +303 -0
  727. package/src/search/team-router.ts +459 -0
  728. package/src/search/verification-runner.ts +570 -0
  729. package/src/session-bank/git-reader.ts +190 -0
  730. package/src/session-bank/index.ts +24 -0
  731. package/src/session-bank/parser.ts +366 -0
  732. package/src/session-bank/session-bank.ts +464 -0
  733. package/src/session-bank/types.ts +173 -0
  734. package/src/surfacing/index.ts +29 -0
  735. package/src/surfacing/publisher.ts +23 -0
  736. package/src/surfacing/skill-library.ts +625 -0
  737. package/src/surfacing/skill-publisher.ts +223 -0
  738. package/src/surfacing/sqlite-storage-adapter.ts +301 -0
  739. package/src/surfacing/team-skill-library.ts +610 -0
  740. package/src/types/config.ts +585 -0
  741. package/src/types/dataclaw.ts +99 -0
  742. package/src/types/huggingface-transformers.d.ts +12 -0
  743. package/src/types/index.ts +286 -0
  744. package/src/types/knowledge-graph.ts +246 -0
  745. package/src/types/knowledge.ts +388 -0
  746. package/src/types/memory.ts +270 -0
  747. package/src/types/meta.ts +218 -0
  748. package/src/types/outcome.ts +66 -0
  749. package/src/types/playbook.ts +196 -0
  750. package/src/types/step.ts +40 -0
  751. package/src/types/task.ts +52 -0
  752. package/src/types/team-meta.ts +212 -0
  753. package/src/types/team-playbook.ts +384 -0
  754. package/src/types/team-trajectory.ts +673 -0
  755. package/src/types/trajectory-source.ts +47 -0
  756. package/src/types/trajectory.ts +80 -0
  757. package/src/utils/frontmatter.ts +118 -0
  758. package/src/utils/index.ts +45 -0
  759. package/src/utils/similarity.ts +139 -0
  760. package/src/utils/storage.ts +249 -0
  761. package/src/utils/validation.ts +286 -0
  762. package/src/workspace/index.ts +48 -0
  763. package/src/workspace/runner.ts +281 -0
  764. package/src/workspace/skill-converter.ts +288 -0
  765. package/src/workspace/templates/index.ts +64 -0
  766. package/src/workspace/templates/knowledge-defrag.ts +223 -0
  767. package/src/workspace/templates/knowledge-extraction.ts +337 -0
  768. package/src/workspace/templates/meta-reflection.ts +208 -0
  769. package/src/workspace/templates/playbook-extraction.ts +240 -0
  770. package/src/workspace/templates/refinement-analysis.ts +162 -0
  771. package/src/workspace/templates/solution-evaluation.ts +199 -0
  772. package/src/workspace/templates/team-playbook-extraction.ts +631 -0
  773. package/src/workspace/templates/team-trajectory-analysis.ts +564 -0
  774. package/src/workspace/templates/trajectory-analysis.ts +234 -0
  775. package/src/workspace/templates/usage-inference.ts +163 -0
  776. package/src/workspace/types.ts +233 -0
  777. package/tests/atlas-knowledge.test.ts +165 -0
  778. package/tests/embeddings/bm25.test.ts +130 -0
  779. package/tests/embeddings/manager.test.ts +205 -0
  780. package/tests/gap-fixes.test.ts +1103 -0
  781. package/tests/integration/atlas.test.ts +266 -0
  782. package/tests/integration/dataclaw-e2e.test.ts +559 -0
  783. package/tests/integration/e2e.test.ts +1336 -0
  784. package/tests/integration/entire-e2e.test.ts +187 -0
  785. package/tests/integration/huggingface-e2e.test.ts +627 -0
  786. package/tests/integration/session-bank.test.ts +225 -0
  787. package/tests/integration/skill-tree-wiring.test.ts +152 -0
  788. package/tests/learning/analyzer.test.ts +426 -0
  789. package/tests/learning/dataclaw-trajectory-source.test.ts +642 -0
  790. package/tests/learning/effectiveness.test.ts +542 -0
  791. package/tests/learning/entire-trajectory-source.test.ts +380 -0
  792. package/tests/learning/huggingface-trajectory-source.test.ts +817 -0
  793. package/tests/learning/knowledge-extractor.test.ts +491 -0
  794. package/tests/learning/pipeline.test.ts +176 -0
  795. package/tests/learning/playbook-extractor-provenance.test.ts +114 -0
  796. package/tests/learning/team-ingester.test.ts +349 -0
  797. package/tests/learning/team-meta-learner.test.ts +618 -0
  798. package/tests/learning/team-pipeline.test.ts +334 -0
  799. package/tests/learning/trajectory-sources.test.ts +312 -0
  800. package/tests/learning/usage-inference.test.ts +254 -0
  801. package/tests/mcp/playbook-server.test.ts +252 -0
  802. package/tests/memory/experience.test.ts +198 -0
  803. package/tests/memory/graph-layers/semantic.test.ts +219 -0
  804. package/tests/memory/knowledge-bank-extraction.test.ts +558 -0
  805. package/tests/memory/knowledge-bank.test.ts +705 -0
  806. package/tests/memory/knowledge-defrag.test.ts +366 -0
  807. package/tests/memory/knowledge-evolution.test.ts +563 -0
  808. package/tests/memory/knowledge-graph.test.ts +492 -0
  809. package/tests/memory/knowledge-inbox.test.ts +258 -0
  810. package/tests/memory/knowledge-minimem.test.ts +251 -0
  811. package/tests/memory/playbook.test.ts +338 -0
  812. package/tests/memory/provenance.test.ts +639 -0
  813. package/tests/memory/skill-exporter.test.ts +470 -0
  814. package/tests/memory/system.test.ts +325 -0
  815. package/tests/memory/team-experience.test.ts +411 -0
  816. package/tests/runtime/agent-manager.test.ts +512 -0
  817. package/tests/runtime/compute-provider.test.ts +288 -0
  818. package/tests/runtime/delegate.test.ts +349 -0
  819. package/tests/runtime/macro-agent-backend.test.ts +266 -0
  820. package/tests/runtime/mock-backend.test.ts +248 -0
  821. package/tests/search/refinement-loop.test.ts +468 -0
  822. package/tests/search/refinement.test.ts +267 -0
  823. package/tests/search/router.test.ts +427 -0
  824. package/tests/search/team-router.test.ts +376 -0
  825. package/tests/session-bank/fixtures/multi-tool-session/full.jsonl +12 -0
  826. package/tests/session-bank/fixtures/multi-tool-session/metadata.json +28 -0
  827. package/tests/session-bank/fixtures/root-metadata.json +18 -0
  828. package/tests/session-bank/fixtures/simple-session/full.jsonl +6 -0
  829. package/tests/session-bank/fixtures/simple-session/metadata.json +38 -0
  830. package/tests/session-bank/git-reader.test.ts +232 -0
  831. package/tests/session-bank/parser.test.ts +321 -0
  832. package/tests/session-bank/session-bank.test.ts +546 -0
  833. package/tests/surfacing/skill-library.test.ts +292 -0
  834. package/tests/surfacing/skill-publisher.test.ts +398 -0
  835. package/tests/surfacing/sqlite-storage-adapter.test.ts +218 -0
  836. package/tests/surfacing/team-skill-library.test.ts +444 -0
  837. package/tests/types/outcome.test.ts +147 -0
  838. package/tests/types/step.test.ts +133 -0
  839. package/tests/types/task.test.ts +158 -0
  840. package/tests/types/team-meta.test.ts +147 -0
  841. package/tests/types/team-playbook.test.ts +246 -0
  842. package/tests/types/team-trajectory.test.ts +557 -0
  843. package/tests/types/trajectory.test.ts +253 -0
  844. package/tests/utils/frontmatter.test.ts +208 -0
  845. package/tests/utils/similarity.test.ts +188 -0
  846. package/tests/utils/validation.test.ts +252 -0
  847. package/tests/workspace/full-flow.test.ts +839 -0
  848. package/tests/workspace/manager.test.ts +215 -0
  849. package/tests/workspace/runner.test.ts +330 -0
  850. package/tests/workspace/skill-converter.test.ts +205 -0
  851. package/tests/workspace/templates/knowledge-extraction.test.ts +235 -0
  852. package/tests/workspace/templates/team-playbook-extraction.test.ts +341 -0
  853. package/tests/workspace/templates/team-trajectory-analysis.test.ts +417 -0
  854. package/tsconfig.json +25 -0
  855. package/vitest.config.ts +22 -0
  856. package/dist/index.d.mts +0 -466
  857. package/dist/index.mjs +0 -478
package/README.md CHANGED
@@ -1,6 +1,36 @@
1
1
  # cognitive-core
2
2
 
3
- TypeScript client for [Cognitive Core](https://github.com/alexngai/meta-learning-engine) - A meta-learning framework for learning from agent trajectories.
3
+ A TypeScript learning system for AI agents. Records how agents solve problems, extracts reusable playbooks and factual knowledge from trajectories, and injects relevant guidance into future tasks.
4
+
5
+ ## Table of Contents
6
+
7
+ - [Motivation](#motivation)
8
+ - [Installation](#installation)
9
+ - [Quick Start](#quick-start)
10
+ - [How It Works](#how-it-works)
11
+ - [Knowledge Bank](#knowledge-bank)
12
+ - [CLI](#cli)
13
+ - [Agent Backends](#agent-backends)
14
+ - [Skill Library](#skill-library)
15
+ - [Configuration](#configuration)
16
+ - [Core Types](#core-types)
17
+ - [Research References](#research-references)
18
+ - [Limitations](#limitations)
19
+ - [Contributing](#contributing)
20
+ - [License](#license)
21
+
22
+ ## Motivation
23
+
24
+
25
+ cognitive-core gives agents persistent, structured memory:
26
+
27
+ 1. **Trajectories** record what the agent did (ReAct-style thought/action/observation steps)
28
+ 2. **Playbooks** distill trajectories into reusable guidance (strategy, tactics, verification criteria)
29
+ 3. **Knowledge Bank** extracts and organizes factual knowledge — what agents learn about tools, libraries, and patterns
30
+ 4. **Routing** matches incoming tasks to relevant playbooks before the agent starts working
31
+ 5. **Meta-learning** tracks which playbooks helped and adjusts routing over time
32
+
33
+ The result: agents that get measurably better at recurring problem types without fine-tuning or prompt engineering.
4
34
 
5
35
  ## Installation
6
36
 
@@ -8,169 +38,595 @@ TypeScript client for [Cognitive Core](https://github.com/alexngai/meta-learning
8
38
  npm install cognitive-core
9
39
  ```
10
40
 
11
- **Prerequisites:** Python 3.10+
41
+ Requires Node.js 18+.
12
42
 
13
- ## Setup
43
+ ## Quick Start
14
44
 
15
- The package can automatically set up a Python virtual environment and install dependencies:
45
+ ### Solve a task with memory-augmented agents
16
46
 
17
47
  ```typescript
18
- import { setup, CognitiveCore } from "cognitive-core";
48
+ import { createAtlasWithAgents, createTask, createMockBackend } from 'cognitive-core';
19
49
 
20
- // One-time setup (creates .cognitive-core/ venv)
21
- const { pythonPath, version } = await setup();
22
- console.log(`Installed cognitive-core ${version}`);
50
+ const atlas = createAtlasWithAgents(
51
+ [createMockBackend()],
52
+ { storage: { baseDir: '.cognitive-core' } }
53
+ );
23
54
 
24
- // CognitiveCore automatically uses the venv
25
- const core = new CognitiveCore();
26
- await core.start();
55
+ await atlas.init();
56
+
57
+ const result = await atlas.solve(createTask({
58
+ domain: 'code',
59
+ description: 'Fix the TypeScript compilation error in auth.ts',
60
+ }));
61
+
62
+ console.log(result.trajectory.outcome.success); // true
63
+ console.log(result.routing?.strategy); // 'direct' | 'adapt' | 'explore' | 'fallback'
64
+ console.log(result.injectedPlaybooks?.length); // number of playbooks injected
65
+
66
+ await atlas.close();
27
67
  ```
28
68
 
29
- ### Setup Options
69
+ ### Feed trajectories from external agents
70
+
71
+ cognitive-core can learn from trajectories produced by external agents. Record what happened elsewhere and feed it in.
30
72
 
31
73
  ```typescript
32
- await setup({
33
- // Custom venv location (default: ".cognitive-core")
34
- venvDir: "./my-venv",
74
+ import { createAtlas, createTrajectory, createTask, createStep, successOutcome } from 'cognitive-core';
75
+
76
+ const atlas = createAtlas({ storage: { baseDir: '.cognitive-core' } });
77
+ await atlas.init();
78
+
79
+ const trajectory = createTrajectory({
80
+ task: createTask({
81
+ domain: 'code',
82
+ description: 'Fix the null pointer exception in user service',
83
+ }),
84
+ steps: [
85
+ createStep({
86
+ thought: 'Check where the null value originates',
87
+ action: 'Read src/services/user.ts',
88
+ observation: 'getUserById returns undefined when user not found',
89
+ }),
90
+ createStep({
91
+ thought: 'Add a guard clause before accessing user properties',
92
+ action: 'Edit src/services/user.ts to add null check',
93
+ observation: 'Added: if (!user) return null',
94
+ }),
95
+ ],
96
+ outcome: successOutcome('Fixed by adding null check in getUserById'),
97
+ agentId: 'claude-code',
98
+ });
99
+
100
+ const result = await atlas.processTrajectory(trajectory);
101
+ console.log(result.abstractable); // true - system can extract a playbook from this
35
102
 
36
- // Install optional features
37
- extras: ["arc", "embeddings", "llm"],
103
+ await atlas.close();
104
+ ```
38
105
 
39
- // Specific version
40
- version: "0.1.0",
106
+ ### Query memory directly
41
107
 
42
- // Quiet mode
43
- verbose: false,
108
+ ```typescript
109
+ const context = await atlas.queryMemory('typescript import resolution error', {
110
+ domains: ['code'],
111
+ includePlaybooks: true,
44
112
  });
113
+
114
+ for (const { playbook, score } of context.playbooks) {
115
+ console.log(`${playbook.name} (${Math.round(score * 100)}% match)`);
116
+ console.log(` Strategy: ${playbook.guidance.strategy}`);
117
+ console.log(` Tactics: ${playbook.guidance.tactics.join(', ')}`);
118
+ }
45
119
  ```
46
120
 
47
- ### Manual Installation
121
+ ## How It Works
48
122
 
49
- If you prefer to manage Python yourself:
123
+ ### Solve flow
50
124
 
51
- ```bash
52
- pip install cognitive-core
125
+ Every call to `atlas.solve(task)` runs through this pipeline:
126
+
127
+ ```mermaid
128
+ flowchart TD
129
+ Task[Task arrives] --> Router[TaskRouter]
130
+
131
+ Router -->|queries| Memory[MemorySystem]
132
+ Memory --> Exp[ExperienceMemory]
133
+ Memory --> PB[PlaybookLibrary]
134
+ Memory --> KB[KnowledgeBank]
135
+ Memory --> Meta[MetaMemory]
136
+
137
+ Router --> Decision{RoutingDecision}
138
+
139
+ Decision --> Agent[AgentManager]
140
+ Agent -->|injects playbooks + knowledge| Backend[Backend]
141
+ Backend -->|returns trajectory| Session[AgentSession]
142
+
143
+ Session --> Check{Succeeded?}
144
+ Check -->|Yes| Learn[LearningPipeline]
145
+ Check -->|No| Refine{Retry?}
146
+ Refine -->|Yes, max 3x| Agent
147
+ Refine -->|No| Learn
148
+
149
+ Learn --> Analyze[TrajectoryAnalyzer]
150
+ Learn --> Extract[PlaybookExtractor]
151
+ Learn --> KnowExtract[KnowledgeExtractor]
152
+ Learn --> Usage[UsageInference]
153
+ Learn --> MetaLearn[MetaLearner]
154
+
155
+ Analyze --> Updated[Memory updated]
156
+ Extract --> Updated
157
+ KnowExtract --> Updated
158
+ Usage --> Updated
159
+ MetaLearn --> Updated
160
+
161
+ Updated -.->|next task| Router
162
+ ```
163
+
164
+ ### Playbook lifecycle
165
+
166
+ A playbook starts with low confidence (0.3) after extraction from a cluster of similar trajectories. Each time it's injected into an agent and the task succeeds, confidence grows. After enough successful uses (default: 5 successes, 80%+ success rate), it gets promoted to a **core skill** that's always in the system prompt. If it starts failing in specific contexts, the system records refinements rather than discarding the playbook entirely.
167
+
168
+ ```mermaid
169
+ stateDiagram-v2
170
+ [*] --> Extracted : pattern found across trajectories
171
+
172
+ Extracted --> Contextual : confidence above 0.3
173
+ Contextual --> Domain : tagged to domain
174
+
175
+ Contextual --> Contextual : success
176
+ Domain --> Domain : success
177
+
178
+ Domain --> Core : 0.85+ confidence, 5+ successes, 80%+ rate
179
+ Core --> Core : success
180
+
181
+ Core --> Domain : 3 consecutive failures
182
+ Domain --> Contextual : confidence drops
183
+
184
+ Contextual --> Refined : failure in specific context
185
+ Refined --> Contextual : refinement recorded
53
186
  ```
54
187
 
55
- Then use the system Python:
188
+ ### Memory architecture
189
+
190
+ The four memory stores serve different retrieval patterns:
191
+
192
+ ```mermaid
193
+ graph LR
194
+ subgraph MemorySystem
195
+ E[ExperienceMemory]
196
+ P[PlaybookLibrary]
197
+ K[KnowledgeBank]
198
+ M[MetaMemory]
199
+ end
200
+
201
+ subgraph Search
202
+ BM[BM25 Index]
203
+ VS[sqlite-vec]
204
+ TS[Text Similarity]
205
+ end
206
+
207
+ subgraph Providers
208
+ OAI[OpenAI]
209
+ VOY[Voyage]
210
+ HF[HuggingFace local]
211
+ MM[minimem optional]
212
+ end
213
+
214
+ E --> BM
215
+ E --> VS
216
+ P --> BM
217
+ P --> VS
218
+ K --> TS
219
+ K -.-> MM
220
+ VS -.-> OAI
221
+ VS -.-> VOY
222
+ VS -.-> HF
223
+
224
+ subgraph Storage
225
+ JSON[JSON files]
226
+ SQL[SQLite]
227
+ MD[Markdown + YAML]
228
+ end
229
+
230
+ E --> JSON
231
+ P --> JSON
232
+ M --> JSON
233
+ K --> MD
234
+ VS --> SQL
235
+ ```
236
+
237
+ | Store | Purpose | Format |
238
+ |-------|---------|--------|
239
+ | **ExperienceMemory** | Episodic — *what happened* | JSON |
240
+ | **PlaybookLibrary** | Procedural — *how to do things* | JSON |
241
+ | **KnowledgeBank** | Semantic — *facts, concepts, relationships* | Markdown + YAML frontmatter |
242
+ | **MetaMemory** | Meta-learning — *what worked* | JSON |
243
+
244
+ ### Search and matching
245
+
246
+ Memory search uses BM25 text matching by default. For higher-quality retrieval, plug in an embedding provider (OpenAI, Voyage, or local via `@huggingface/transformers`) and cognitive-core switches to hybrid BM25 + vector search backed by `sqlite-vec`.
247
+
248
+ Knowledge bank search uses text similarity by default, with optional delegation to [minimem](https://github.com/alexngai/minimem) for hybrid vector + BM25 search when available.
249
+
250
+ ## Knowledge Bank
251
+
252
+ The knowledge bank is a **semantic memory** store for facts, concepts, and relationships that agents learn from experience. While playbooks capture *how* to do things, the knowledge bank captures *what agents know* — facts about tools, libraries, version-specific behavior, and causal relationships.
253
+
254
+ ### Knowledge note types
255
+
256
+ | Type | Purpose | Example |
257
+ |------|---------|---------|
258
+ | **Observation** | Atomic fact learned from experience | "Prisma requires `db push` before `migrate dev` when schema has drifted" |
259
+ | **Entity** | Living document about a tool/library/pattern | "Everything I know about Prisma" |
260
+ | **Domain summary** | High-level overview of a knowledge domain | "Database knowledge overview" |
261
+
262
+ ### How knowledge is stored
263
+
264
+ Knowledge notes are plain Markdown files with structured YAML frontmatter, organized on the filesystem:
265
+
266
+ ```
267
+ knowledge/
268
+ ├── observations/ # Atomic facts (k-*.md)
269
+ ├── entities/ # Living entity docs (prisma.md, vitest.md)
270
+ └── domains/ # Domain summaries (database.md, testing.md)
271
+ ```
272
+
273
+ Any agent with filesystem access can browse, grep, and read knowledge directly — no special API required.
274
+
275
+ ### Multi-layer knowledge graph
276
+
277
+ Relationships between knowledge notes are tracked in a multi-layer graph overlay (inspired by [MAGMA](https://arxiv.org/abs/2601.03236)):
278
+
279
+ | Layer | Captures | Example |
280
+ |-------|----------|---------|
281
+ | **Semantic** | Conceptual relationships | "Prisma *depends-on* PostgreSQL" |
282
+ | **Temporal** | When knowledge was learned | "Observation A *supersedes* B" |
283
+ | **Causal** | Cause-effect chains | "Upgrading TS 5.4 *broke* enum const exports" |
284
+ | **Entity** | Tool/component interactions | "Next.js *uses* React" |
285
+
286
+ ### Knowledge lifecycle
287
+
288
+ ```
289
+ Trajectory → KnowledgeExtractor → Observations (confidence: 0.3)
290
+
291
+ reinforced by more trajectories
292
+
293
+ Observations (confidence: 0.5-0.8)
294
+
295
+ consolidated into entity notes
296
+
297
+ Entity Notes (living docs)
298
+
299
+ domain summaries regenerated
300
+
301
+ Domain Summaries
302
+ ```
303
+
304
+ Knowledge evolves through:
305
+ - **Reinforcement** — same fact observed again increases confidence
306
+ - **Contradiction detection** — conflicting facts are flagged and resolved
307
+ - **Consolidation** — observations about the same entity merge into entity notes
308
+ - **Decay** — unvalidated knowledge gradually loses confidence
309
+
310
+ ### Knowledge surfacing
311
+
312
+ During `atlas.solve()`, relevant knowledge is surfaced alongside playbooks as an independent context section:
56
313
 
57
314
  ```typescript
58
- const core = new CognitiveCore({ pythonPath: "python3" });
315
+ const result = await atlas.solve(task);
316
+ console.log(result.surfacedKnowledge?.length); // knowledge notes injected
59
317
  ```
60
318
 
61
- ## Quick Start
319
+ Three-tier retrieval:
320
+ 1. **Domain match** — if the task domain matches a knowledge domain, include the domain summary
321
+ 2. **Entity match** — if the task mentions known entities, include their notes
322
+ 3. **Semantic match** — text similarity search for contextually relevant observations
323
+
324
+ ### minimem integration
325
+
326
+ When [minimem](https://github.com/alexngai/minimem) is available, the knowledge bank can delegate search to minimem's hybrid search (vector + BM25) for higher-quality retrieval. Set `minimemAware: true` in config to enable. The two systems communicate via file conventions only — no cross-package imports.
327
+
328
+ See [Design Doc](docs/DESIGN-semantic-memory-knowledge-bank.md) for the full architecture.
329
+
330
+ ## CLI
331
+
332
+ cognitive-core ships a CLI for querying playbooks and storing trajectories without writing code.
333
+
334
+ ```bash
335
+ # Initialize storage
336
+ cognitive-core init --dir .cognitive-core
337
+
338
+ # Store a trajectory from a JSON file
339
+ cognitive-core store ./trajectory.json
340
+
341
+ # Search for relevant playbooks
342
+ cognitive-core search "fix typescript import errors" --domain code
343
+ # Found 2 playbook(s) matching "fix typescript import errors":
344
+ #
345
+ # Match: 92% (trigger)
346
+ # ## typescript-import-resolution
347
+ # Confidence: 85%
348
+ # Strategy: Check tsconfig.json paths configuration
349
+ # Tactics:
350
+ # - Verify moduleResolution setting
351
+ # - Check baseUrl and paths mapping
352
+ # - Inspect file extensions (.js vs .ts)
353
+
354
+ # Get full playbook details
355
+ cognitive-core get playbook-abc123
356
+
357
+ # List domains with playbooks
358
+ cognitive-core domains
359
+
360
+ # View memory statistics
361
+ cognitive-core stats
362
+ # Experiences: 47
363
+ # Playbooks: 12
364
+ # Meta-observations: 31
365
+ ```
366
+
367
+ All commands support `--json` for structured output:
368
+
369
+ ```bash
370
+ cognitive-core search "debug async errors" --json | jq '.results[0].strategy'
371
+ ```
372
+
373
+ ## Agent Backends
374
+
375
+ cognitive-core delegates execution to backends that handle spawning, message passing, and trajectory extraction.
376
+
377
+ ### Subprocess backend
378
+
379
+ Spawns agents as child processes. Works with any CLI agent.
62
380
 
63
381
  ```typescript
64
- import { CognitiveCore } from "cognitive-core";
65
-
66
- const core = new CognitiveCore();
67
-
68
- // Start the Python subprocess
69
- await core.start();
70
-
71
- // Get version
72
- const version = await core.version();
73
- console.log(`Running cognitive-core v${version}`);
74
-
75
- // Create an environment
76
- const env = await core.env.create("arc");
77
-
78
- // Reset with a task
79
- const { observation } = await core.env.reset(env.envId, {
80
- id: "task-1",
81
- domain: "arc",
82
- description: "Transform the input grid",
83
- context: {
84
- grids: {
85
- train: [
86
- [[[0, 1], [1, 0]], [[1, 0], [0, 1]]],
87
- ],
88
- test: [
89
- [[[0, 0], [1, 1]], [[1, 1], [0, 0]]],
90
- ],
91
- },
382
+ import { createAtlasWithAgents, createSubprocessBackend, claudeCodeConfig } from 'cognitive-core';
383
+
384
+ const backend = createSubprocessBackend({
385
+ 'claude-code': claudeCodeConfig, // Pre-configured for Claude Code CLI
386
+ });
387
+
388
+ const atlas = createAtlasWithAgents([backend], {
389
+ execution: {
390
+ defaultAgentType: 'claude-code',
391
+ maxExecutionTime: 300,
392
+ captureToolCalls: true,
92
393
  },
93
394
  });
395
+ ```
94
396
 
95
- // Verify a solution
96
- const outcome = await core.env.verify(env.envId, [[1, 1], [0, 0]]);
97
- console.log(`Success: ${outcome.success}, Score: ${outcome.partialScore}`);
397
+ ### ACP backend
98
398
 
99
- // Stop the subprocess
100
- await core.stop();
399
+ Uses the [Agent Communication Protocol](https://www.npmjs.com/package/acp-factory) for richer interaction with ACP-compatible agents.
400
+
401
+ ```typescript
402
+ import { createACPBackend, claudeCodeACPConfig } from 'cognitive-core';
403
+
404
+ const backend = createACPBackend({
405
+ 'claude-code': claudeCodeACPConfig, // Uses npx claude-code-acp
406
+ });
101
407
  ```
102
408
 
103
- ## API
409
+ ### Custom backends
104
410
 
105
- ### CognitiveCore
411
+ Implement the `AgentBackend` interface:
412
+
413
+ ```typescript
414
+ import type { AgentBackend, AgentSpawnConfig, AgentSession } from 'cognitive-core';
415
+
416
+ class MyBackend implements AgentBackend {
417
+ readonly name = 'my-agent';
418
+ readonly supportedTypes = ['my-agent'];
419
+
420
+ async isAvailable(): Promise<boolean> { return true; }
421
+
422
+ async spawn(config: AgentSpawnConfig): Promise<AgentSession> {
423
+ // config.task - the task to solve
424
+ // config.systemPromptAdditions - playbook context to inject
425
+ // config.timeout - max execution time
426
+ const session = await launchMyAgent(config);
427
+ return session;
428
+ }
429
+
430
+ async getSession(id: string): Promise<AgentSession | undefined> { /* ... */ }
431
+ async terminate(id: string): Promise<void> { /* ... */ }
432
+ }
433
+ ```
106
434
 
107
- Main client class.
435
+ ### Observing agent execution
108
436
 
109
437
  ```typescript
110
- const core = new CognitiveCore(options?: CognitiveCoreOptions);
438
+ const manager = atlas.getAgentManager();
439
+
440
+ manager.addObserver({
441
+ onSessionStart: (session) => console.log('Started:', session.id),
442
+ onToolCall: (session, toolCall) => console.log('Tool:', toolCall.name),
443
+ onSessionEnd: (session, trajectory) => {
444
+ console.log('Done:', trajectory.outcome.success);
445
+ console.log('Steps:', trajectory.steps.length);
446
+ },
447
+ });
111
448
  ```
112
449
 
113
- **Options:**
114
- - `pythonPath`: Path to Python executable (default: `"python"`)
115
- - `cwd`: Working directory for Python process
116
- - `env`: Environment variables for Python process
117
- - `timeout`: Command timeout in milliseconds (default: `30000`)
450
+ ## Skill Library
118
451
 
119
- **Methods:**
120
- - `start()`: Start the Python subprocess
121
- - `stop()`: Stop the Python subprocess
122
- - `version()`: Get Python package version
123
- - `isRunning`: Check if client is running
452
+ The skill library manages how playbooks are surfaced to agents across four tiers:
124
453
 
125
- ### Environment API (`core.env`)
454
+ | Tier | When loaded | Criteria |
455
+ |------|-------------|----------|
456
+ | **Core** | Always in system prompt | 85%+ confidence, 5+ successes, 80%+ success rate |
457
+ | **Domain** | When task domain matches | Domain-tagged playbooks |
458
+ | **Contextual** | When task query matches | Semantic/trigger match |
459
+ | **On-demand** | Agent explicitly requests | Available via CLI |
126
460
 
127
- - `create(domain)`: Create a new environment
128
- - `reset(envId, task)`: Reset environment with a task
129
- - `step(envId, action)`: Execute an action
130
- - `verify(envId, solution)`: Verify a solution
461
+ Playbooks are automatically promoted and demoted based on usage outcomes. Three consecutive failures trigger demotion review.
131
462
 
132
- ### Memory API (`core.memory`)
463
+ ```typescript
464
+ const skills = await atlas.getSkillLibrary()?.getSkillsForAgent(task);
465
+ // skills.core - always-on playbooks
466
+ // skills.domain - relevant to task domain
467
+ // skills.contextual - matched to this specific task
468
+ ```
133
469
 
134
- - `searchExperiences(query, k)`: Search for similar experiences
135
- - `searchStrategies(query, k)`: Search for relevant strategies
136
- - `searchConcepts(query, k)`: Search for code concepts
137
- - `store(trajectory)`: Store a trajectory
470
+ ## Configuration
138
471
 
139
- ### Search API (`core.search`)
472
+ ```typescript
473
+ const atlas = createAtlasWithAgents([backend], {
474
+ storage: {
475
+ baseDir: '.cognitive-core',
476
+ persistenceEnabled: true,
477
+ },
478
+ learning: {
479
+ creditStrategy: 'simple', // 'simple' | 'contribution'
480
+ minTrajectories: 10, // batch learning threshold
481
+ deduplicationThreshold: 0.9, // prevent duplicate playbooks
482
+ },
483
+ router: {
484
+ similarityThreshold: 0.85, // match confidence threshold
485
+ useDomainRouting: true,
486
+ },
487
+ memory: {
488
+ maxExperiences: 4, // k for experience retrieval
489
+ maxContextTokens: 4000,
490
+ capacity: {
491
+ maxExperiences: 1000, // total stored experiences
492
+ maxPlaybooks: 200,
493
+ autoPrune: true,
494
+ preserveDomainCoverage: true,
495
+ },
496
+ },
497
+ knowledgeBank: {
498
+ enabled: true, // enable semantic memory (default: false)
499
+ memoryDir: 'memory',
500
+ extraction: {
501
+ enabled: true, // auto-extract from trajectories
502
+ useLlmExtraction: false, // use heuristic extraction
503
+ },
504
+ graph: {
505
+ enabledLayers: ['semantic'], // semantic | temporal | causal | entity
506
+ },
507
+ surfacing: {
508
+ maxNotesPerTask: 5,
509
+ maxTokensForKnowledge: 2000,
510
+ },
511
+ minimemAware: false, // set true if using minimem
512
+ },
513
+ execution: {
514
+ defaultAgentType: 'claude-code',
515
+ maxExecutionTime: 300,
516
+ captureToolCalls: true,
517
+ },
518
+ refinement: {
519
+ useAgentEvaluation: true,
520
+ maxIterations: 3,
521
+ acceptableScore: 0.7,
522
+ },
523
+ });
524
+ ```
140
525
 
141
- - `solve(task)`: Solve a task using configured search strategy
526
+ ## Core Types
142
527
 
143
- ## Low-Level Client
528
+ ### Playbook
144
529
 
145
- For advanced usage, access the raw subprocess client:
530
+ The central learning unit. Combines when to apply, what to do, and how to verify results.
146
531
 
147
532
  ```typescript
148
- import { CognitiveCoreClient } from "cognitive-core";
533
+ interface Playbook {
534
+ id: string;
535
+ name: string;
536
+ applicability: {
537
+ situations: string[]; // "debugging async code"
538
+ triggers: string[]; // "Promise rejection", "TS2307"
539
+ antiPatterns: string[]; // when NOT to use
540
+ domains: string[]; // "typescript", "react", "testing"
541
+ };
542
+ guidance: {
543
+ strategy: string; // high-level approach
544
+ tactics: string[]; // mid-level steps
545
+ steps?: string[]; // concrete commands
546
+ codeExample?: string;
547
+ };
548
+ verification: {
549
+ successIndicators: string[]; // "Tests pass", "No errors"
550
+ failureIndicators: string[]; // "Same error persists"
551
+ rollbackStrategy?: string;
552
+ };
553
+ evolution: {
554
+ version: string;
555
+ successCount: number;
556
+ failureCount: number;
557
+ refinements: Refinement[]; // context-specific adaptations
558
+ failures: FailureRecord[];
559
+ };
560
+ confidence: number; // 0-1, grows with successful use
561
+ complexity: 'simple' | 'moderate' | 'complex';
562
+ }
563
+ ```
149
564
 
150
- const client = new CognitiveCoreClient();
151
- await client.start();
565
+ ### Trajectory
152
566
 
153
- // Execute arbitrary commands
154
- const result = await client.execute("custom.command", { arg: "value" });
567
+ A recorded problem-solving session in ReAct format.
155
568
 
156
- await client.stop();
569
+ ```typescript
570
+ interface Trajectory {
571
+ id: string;
572
+ task: Task;
573
+ steps: Step[]; // thought -> action -> observation
574
+ outcome: Outcome; // success/failure + solution
575
+ agentId: string;
576
+ llmCalls: number;
577
+ totalTokens: number;
578
+ wallTimeSeconds: number;
579
+ }
157
580
  ```
158
581
 
159
- ## Types
582
+ ### RoutingDecision
160
583
 
161
- Full TypeScript types are included for all data structures:
584
+ How the system decides to approach a task.
162
585
 
163
586
  ```typescript
164
- import type {
165
- Task,
166
- Trajectory,
167
- Outcome,
168
- Experience,
169
- Strategy,
170
- CodeConcept,
171
- Grid,
172
- ARCTask,
173
- } from "cognitive-core";
587
+ interface RoutingDecision {
588
+ strategy: 'direct' | 'adapt' | 'explore' | 'fallback';
589
+ confidence: number;
590
+ memoryContext: MemoryQueryResultV2;
591
+ estimatedBudget: number;
592
+ reasoning: string;
593
+ }
594
+ ```
595
+
596
+ ## Research References
597
+
598
+ cognitive-core draws from several lines of research on agent memory and learning:
599
+
600
+ - **ArcMemo** - Concept-level memory outperforms instance-level at all compute scales
601
+ - **ReMem** - Experience retrieval with k=4, iterative refinement loops
602
+ - **Stitch** - Library learning through compression
603
+ - **LILO** - AutoDoc for concept naming
604
+ - **Voyager** - Ever-growing skill libraries with verification
605
+ - **Claudeception** - Lightweight skill persistence for code agents
606
+ - **[A-MEM](https://arxiv.org/abs/2502.12110)** - Zettelkasten-inspired structured notes with dynamic linking (knowledge note format)
607
+ - **[MAGMA](https://arxiv.org/abs/2601.03236)** - Multi-graph decomposition into semantic, temporal, causal, entity layers (graph overlay design)
608
+ - **[Zep](https://arxiv.org/pdf/2501.13956)** - Entity extraction, community detection, temporal tracking
609
+ - **[Memory Survey](https://arxiv.org/abs/2512.13564)** - Comprehensive survey and taxonomy of factual/experiential/procedural memory
610
+
611
+ ## Limitations
612
+
613
+ - **No cross-domain transfer**. A playbook learned in the `code` domain won't surface for `testing` tasks even if the underlying pattern is the same. Domain tags are string-matched, not semantically compared.
614
+ - **Cold start**. The system needs ~10 trajectories before batch learning kicks in and playbooks start appearing. Until then, agents run without memory augmentation. Knowledge extraction works per-trajectory, so knowledge is available sooner.
615
+ - **Text-based matching by default**. BM25 works but misses semantic similarity. Vector search requires configuring an embedding provider and adds latency. Knowledge bank search uses text similarity unless minimem is available.
616
+ - **No trajectory quality filtering**. The system stores all trajectories, including ones from poorly-performing agents. Low-quality trajectories can produce low-quality playbooks and knowledge. The deduplication threshold and confidence model help, but don't solve the garbage-in problem.
617
+ - **Single-machine storage**. Persistence is JSON file-based (experiences, playbooks), Markdown file-based (knowledge), and SQLite (vector store). There's no built-in replication, multi-agent concurrency, or cloud storage.
618
+ - **Extraction is heuristic by default**. Without an LLM extractor configured, both playbook and knowledge extraction use text pattern matching, which produces lower-quality results. LLM-assisted extraction is available via workspace templates.
619
+ - **Knowledge extraction is not auto-wired into the learning pipeline**. Knowledge must be extracted explicitly via `KnowledgeBank.extractFromTrajectory()`. This is by design — it allows callers to control when extraction runs.
620
+
621
+ ## Contributing
622
+
623
+ Contributions welcome. The test suite uses Vitest:
624
+
625
+ ```bash
626
+ npm install
627
+ npm run test:run # run tests once
628
+ npm run test # watch mode
629
+ npm run typecheck # type checking without emit
174
630
  ```
175
631
 
176
632
  ## License