cognitive-core 0.1.0 → 0.2.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 (972) 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/CLAUDE.md +233 -0
  5. package/README.md +841 -255
  6. package/dist/atlas.d.ts +150 -12
  7. package/dist/atlas.d.ts.map +1 -1
  8. package/dist/atlas.js +391 -31
  9. package/dist/atlas.js.map +1 -1
  10. package/dist/bin/cli-utils.d.ts +37 -0
  11. package/dist/bin/cli-utils.d.ts.map +1 -0
  12. package/dist/bin/cli-utils.js +176 -0
  13. package/dist/bin/cli-utils.js.map +1 -0
  14. package/dist/bin/cognitive-core.d.ts +2 -12
  15. package/dist/bin/cognitive-core.d.ts.map +1 -1
  16. package/dist/bin/cognitive-core.js +76 -351
  17. package/dist/bin/cognitive-core.js.map +1 -1
  18. package/dist/bin/commands/kb.d.ts +6 -0
  19. package/dist/bin/commands/kb.d.ts.map +1 -0
  20. package/dist/bin/commands/kb.js +240 -0
  21. package/dist/bin/commands/kb.js.map +1 -0
  22. package/dist/bin/commands/learn.d.ts +6 -0
  23. package/dist/bin/commands/learn.d.ts.map +1 -0
  24. package/dist/bin/commands/learn.js +91 -0
  25. package/dist/bin/commands/learn.js.map +1 -0
  26. package/dist/bin/commands/legacy.d.ts +12 -0
  27. package/dist/bin/commands/legacy.d.ts.map +1 -0
  28. package/dist/bin/commands/legacy.js +142 -0
  29. package/dist/bin/commands/legacy.js.map +1 -0
  30. package/dist/bin/commands/run.d.ts +3 -0
  31. package/dist/bin/commands/run.d.ts.map +1 -0
  32. package/dist/bin/commands/run.js +99 -0
  33. package/dist/bin/commands/run.js.map +1 -0
  34. package/dist/bin/commands/sessions.d.ts +9 -0
  35. package/dist/bin/commands/sessions.d.ts.map +1 -0
  36. package/dist/bin/commands/sessions.js +183 -0
  37. package/dist/bin/commands/sessions.js.map +1 -0
  38. package/dist/bin/commands/skills.d.ts +6 -0
  39. package/dist/bin/commands/skills.d.ts.map +1 -0
  40. package/dist/bin/commands/skills.js +135 -0
  41. package/dist/bin/commands/skills.js.map +1 -0
  42. package/dist/embeddings/index.d.ts +1 -0
  43. package/dist/embeddings/index.d.ts.map +1 -1
  44. package/dist/embeddings/index.js +2 -0
  45. package/dist/embeddings/index.js.map +1 -1
  46. package/dist/embeddings/inverted-index.d.ts +47 -0
  47. package/dist/embeddings/inverted-index.d.ts.map +1 -0
  48. package/dist/embeddings/inverted-index.js +122 -0
  49. package/dist/embeddings/inverted-index.js.map +1 -0
  50. package/dist/embeddings/manager.d.ts +3 -1
  51. package/dist/embeddings/manager.d.ts.map +1 -1
  52. package/dist/embeddings/manager.js +12 -7
  53. package/dist/embeddings/manager.js.map +1 -1
  54. package/dist/embeddings/provider.d.ts.map +1 -1
  55. package/dist/embeddings/provider.js +6 -3
  56. package/dist/embeddings/provider.js.map +1 -1
  57. package/dist/embeddings/vector-store.d.ts +7 -3
  58. package/dist/embeddings/vector-store.d.ts.map +1 -1
  59. package/dist/embeddings/vector-store.js +22 -6
  60. package/dist/embeddings/vector-store.js.map +1 -1
  61. package/dist/factory.d.ts +11 -12
  62. package/dist/factory.d.ts.map +1 -1
  63. package/dist/factory.js +20 -7
  64. package/dist/factory.js.map +1 -1
  65. package/dist/index.d.ts +11 -8
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +71 -8
  68. package/dist/index.js.map +1 -1
  69. package/dist/learning/analyzer.d.ts.map +1 -1
  70. package/dist/learning/analyzer.js +17 -35
  71. package/dist/learning/analyzer.js.map +1 -1
  72. package/dist/learning/energy-evaluator.d.ts +128 -0
  73. package/dist/learning/energy-evaluator.d.ts.map +1 -0
  74. package/dist/learning/energy-evaluator.js +175 -0
  75. package/dist/learning/energy-evaluator.js.map +1 -0
  76. package/dist/learning/healing-orchestrator.d.ts +182 -0
  77. package/dist/learning/healing-orchestrator.d.ts.map +1 -0
  78. package/dist/learning/healing-orchestrator.js +250 -0
  79. package/dist/learning/healing-orchestrator.js.map +1 -0
  80. package/dist/learning/index.d.ts +11 -2
  81. package/dist/learning/index.d.ts.map +1 -1
  82. package/dist/learning/index.js +20 -3
  83. package/dist/learning/index.js.map +1 -1
  84. package/dist/learning/instant-loop.d.ts +87 -0
  85. package/dist/learning/instant-loop.d.ts.map +1 -0
  86. package/dist/learning/instant-loop.js +264 -0
  87. package/dist/learning/instant-loop.js.map +1 -0
  88. package/dist/learning/knowledge-extractor.d.ts +56 -0
  89. package/dist/learning/knowledge-extractor.d.ts.map +1 -0
  90. package/dist/learning/knowledge-extractor.js +336 -0
  91. package/dist/learning/knowledge-extractor.js.map +1 -0
  92. package/dist/learning/loop-coordinator.d.ts +61 -0
  93. package/dist/learning/loop-coordinator.d.ts.map +1 -0
  94. package/dist/learning/loop-coordinator.js +96 -0
  95. package/dist/learning/loop-coordinator.js.map +1 -0
  96. package/dist/learning/maintenance-scheduler.d.ts +141 -0
  97. package/dist/learning/maintenance-scheduler.d.ts.map +1 -0
  98. package/dist/learning/maintenance-scheduler.js +186 -0
  99. package/dist/learning/maintenance-scheduler.js.map +1 -0
  100. package/dist/learning/meta-learner.d.ts +7 -0
  101. package/dist/learning/meta-learner.d.ts.map +1 -1
  102. package/dist/learning/meta-learner.js +47 -21
  103. package/dist/learning/meta-learner.js.map +1 -1
  104. package/dist/learning/pipeline.d.ts +55 -4
  105. package/dist/learning/pipeline.d.ts.map +1 -1
  106. package/dist/learning/pipeline.js +134 -16
  107. package/dist/learning/pipeline.js.map +1 -1
  108. package/dist/learning/reflexion-generator.d.ts +64 -0
  109. package/dist/learning/reflexion-generator.d.ts.map +1 -0
  110. package/dist/learning/reflexion-generator.js +194 -0
  111. package/dist/learning/reflexion-generator.js.map +1 -0
  112. package/dist/learning/team-ingester.d.ts +152 -0
  113. package/dist/learning/team-ingester.d.ts.map +1 -0
  114. package/dist/learning/team-ingester.js +333 -0
  115. package/dist/learning/team-ingester.js.map +1 -0
  116. package/dist/learning/team-meta-learner.d.ts +50 -0
  117. package/dist/learning/team-meta-learner.d.ts.map +1 -0
  118. package/dist/learning/team-meta-learner.js +417 -0
  119. package/dist/learning/team-meta-learner.js.map +1 -0
  120. package/dist/learning/team-pipeline.d.ts +76 -0
  121. package/dist/learning/team-pipeline.d.ts.map +1 -0
  122. package/dist/learning/team-pipeline.js +266 -0
  123. package/dist/learning/team-pipeline.js.map +1 -0
  124. package/dist/learning/trajectory-sources/dataclaw.d.ts +41 -0
  125. package/dist/learning/trajectory-sources/dataclaw.d.ts.map +1 -0
  126. package/dist/learning/trajectory-sources/dataclaw.js +330 -0
  127. package/dist/learning/trajectory-sources/dataclaw.js.map +1 -0
  128. package/dist/learning/trajectory-sources/entire.d.ts +31 -0
  129. package/dist/learning/trajectory-sources/entire.d.ts.map +1 -0
  130. package/dist/learning/trajectory-sources/entire.js +189 -0
  131. package/dist/learning/trajectory-sources/entire.js.map +1 -0
  132. package/dist/learning/trajectory-sources/file.d.ts +23 -0
  133. package/dist/learning/trajectory-sources/file.d.ts.map +1 -0
  134. package/dist/learning/trajectory-sources/file.js +101 -0
  135. package/dist/learning/trajectory-sources/file.js.map +1 -0
  136. package/dist/learning/trajectory-sources/huggingface.d.ts +36 -0
  137. package/dist/learning/trajectory-sources/huggingface.d.ts.map +1 -0
  138. package/dist/learning/trajectory-sources/huggingface.js +157 -0
  139. package/dist/learning/trajectory-sources/huggingface.js.map +1 -0
  140. package/dist/learning/trajectory-sources/in-memory.d.ts +21 -0
  141. package/dist/learning/trajectory-sources/in-memory.d.ts.map +1 -0
  142. package/dist/learning/trajectory-sources/in-memory.js +43 -0
  143. package/dist/learning/trajectory-sources/in-memory.js.map +1 -0
  144. package/dist/learning/trajectory-sources/index.d.ts +7 -0
  145. package/dist/learning/trajectory-sources/index.d.ts.map +1 -0
  146. package/dist/learning/trajectory-sources/index.js +7 -0
  147. package/dist/learning/trajectory-sources/index.js.map +1 -0
  148. package/dist/learning/trajectory-sources/pipeline.d.ts +24 -0
  149. package/dist/learning/trajectory-sources/pipeline.d.ts.map +1 -0
  150. package/dist/learning/trajectory-sources/pipeline.js +47 -0
  151. package/dist/learning/trajectory-sources/pipeline.js.map +1 -0
  152. package/dist/learning/unified-pipeline.d.ts +281 -0
  153. package/dist/learning/unified-pipeline.d.ts.map +1 -0
  154. package/dist/learning/unified-pipeline.js +637 -0
  155. package/dist/learning/unified-pipeline.js.map +1 -0
  156. package/dist/memory/candidate-retrieval.d.ts +43 -0
  157. package/dist/memory/candidate-retrieval.d.ts.map +1 -0
  158. package/dist/memory/candidate-retrieval.js +41 -0
  159. package/dist/memory/candidate-retrieval.js.map +1 -0
  160. package/dist/memory/causal-store.d.ts +97 -0
  161. package/dist/memory/causal-store.d.ts.map +1 -0
  162. package/dist/memory/causal-store.js +209 -0
  163. package/dist/memory/causal-store.js.map +1 -0
  164. package/dist/memory/coherence.d.ts +71 -0
  165. package/dist/memory/coherence.d.ts.map +1 -0
  166. package/dist/memory/coherence.js +176 -0
  167. package/dist/memory/coherence.js.map +1 -0
  168. package/dist/memory/experience.d.ts +39 -6
  169. package/dist/memory/experience.d.ts.map +1 -1
  170. package/dist/memory/experience.js +193 -49
  171. package/dist/memory/experience.js.map +1 -1
  172. package/dist/memory/graph-layers/base.d.ts +29 -0
  173. package/dist/memory/graph-layers/base.d.ts.map +1 -0
  174. package/dist/memory/graph-layers/base.js +143 -0
  175. package/dist/memory/graph-layers/base.js.map +1 -0
  176. package/dist/memory/graph-layers/causal.d.ts +14 -0
  177. package/dist/memory/graph-layers/causal.d.ts.map +1 -0
  178. package/dist/memory/graph-layers/causal.js +14 -0
  179. package/dist/memory/graph-layers/causal.js.map +1 -0
  180. package/dist/memory/graph-layers/entity.d.ts +14 -0
  181. package/dist/memory/graph-layers/entity.d.ts.map +1 -0
  182. package/dist/memory/graph-layers/entity.js +14 -0
  183. package/dist/memory/graph-layers/entity.js.map +1 -0
  184. package/dist/memory/graph-layers/index.d.ts +6 -0
  185. package/dist/memory/graph-layers/index.d.ts.map +1 -0
  186. package/dist/memory/graph-layers/index.js +6 -0
  187. package/dist/memory/graph-layers/index.js.map +1 -0
  188. package/dist/memory/graph-layers/semantic.d.ts +14 -0
  189. package/dist/memory/graph-layers/semantic.d.ts.map +1 -0
  190. package/dist/memory/graph-layers/semantic.js +14 -0
  191. package/dist/memory/graph-layers/semantic.js.map +1 -0
  192. package/dist/memory/graph-layers/temporal.d.ts +14 -0
  193. package/dist/memory/graph-layers/temporal.d.ts.map +1 -0
  194. package/dist/memory/graph-layers/temporal.js +14 -0
  195. package/dist/memory/graph-layers/temporal.js.map +1 -0
  196. package/dist/memory/index.d.ts +15 -0
  197. package/dist/memory/index.d.ts.map +1 -1
  198. package/dist/memory/index.js +22 -0
  199. package/dist/memory/index.js.map +1 -1
  200. package/dist/memory/knowledge-bank.d.ts +234 -0
  201. package/dist/memory/knowledge-bank.d.ts.map +1 -0
  202. package/dist/memory/knowledge-bank.js +1048 -0
  203. package/dist/memory/knowledge-bank.js.map +1 -0
  204. package/dist/memory/knowledge-defrag.d.ts +49 -0
  205. package/dist/memory/knowledge-defrag.d.ts.map +1 -0
  206. package/dist/memory/knowledge-defrag.js +257 -0
  207. package/dist/memory/knowledge-defrag.js.map +1 -0
  208. package/dist/memory/knowledge-graph.d.ts +41 -0
  209. package/dist/memory/knowledge-graph.d.ts.map +1 -0
  210. package/dist/memory/knowledge-graph.js +273 -0
  211. package/dist/memory/knowledge-graph.js.map +1 -0
  212. package/dist/memory/meta.d.ts +7 -8
  213. package/dist/memory/meta.d.ts.map +1 -1
  214. package/dist/memory/meta.js +73 -79
  215. package/dist/memory/meta.js.map +1 -1
  216. package/dist/memory/playbook.d.ts +26 -9
  217. package/dist/memory/playbook.d.ts.map +1 -1
  218. package/dist/memory/playbook.js +198 -74
  219. package/dist/memory/playbook.js.map +1 -1
  220. package/dist/memory/reasoning-bank.d.ts +130 -0
  221. package/dist/memory/reasoning-bank.d.ts.map +1 -0
  222. package/dist/memory/reasoning-bank.js +342 -0
  223. package/dist/memory/reasoning-bank.js.map +1 -0
  224. package/dist/memory/reflexion.d.ts +59 -0
  225. package/dist/memory/reflexion.d.ts.map +1 -0
  226. package/dist/memory/reflexion.js +96 -0
  227. package/dist/memory/reflexion.js.map +1 -0
  228. package/dist/memory/search-provider.d.ts +31 -0
  229. package/dist/memory/search-provider.d.ts.map +1 -0
  230. package/dist/memory/search-provider.js +2 -0
  231. package/dist/memory/search-provider.js.map +1 -0
  232. package/dist/memory/search-providers/index.d.ts +3 -0
  233. package/dist/memory/search-providers/index.d.ts.map +1 -0
  234. package/dist/memory/search-providers/index.js +3 -0
  235. package/dist/memory/search-providers/index.js.map +1 -0
  236. package/dist/memory/search-providers/minimem.d.ts +43 -0
  237. package/dist/memory/search-providers/minimem.d.ts.map +1 -0
  238. package/dist/memory/search-providers/minimem.js +56 -0
  239. package/dist/memory/search-providers/minimem.js.map +1 -0
  240. package/dist/memory/search-providers/text-similarity.d.ts +15 -0
  241. package/dist/memory/search-providers/text-similarity.d.ts.map +1 -0
  242. package/dist/memory/search-providers/text-similarity.js +21 -0
  243. package/dist/memory/search-providers/text-similarity.js.map +1 -0
  244. package/dist/memory/skill-exporter.d.ts +75 -0
  245. package/dist/memory/skill-exporter.d.ts.map +1 -0
  246. package/dist/memory/skill-exporter.js +248 -0
  247. package/dist/memory/skill-exporter.js.map +1 -0
  248. package/dist/memory/system.d.ts +20 -3
  249. package/dist/memory/system.d.ts.map +1 -1
  250. package/dist/memory/system.js +61 -11
  251. package/dist/memory/system.js.map +1 -1
  252. package/dist/memory/team-experience.d.ts +298 -0
  253. package/dist/memory/team-experience.d.ts.map +1 -0
  254. package/dist/memory/team-experience.js +355 -0
  255. package/dist/memory/team-experience.js.map +1 -0
  256. package/dist/memory/temporal-compressor.d.ts +126 -0
  257. package/dist/memory/temporal-compressor.d.ts.map +1 -0
  258. package/dist/memory/temporal-compressor.js +335 -0
  259. package/dist/memory/temporal-compressor.js.map +1 -0
  260. package/dist/persistence/index.d.ts +11 -0
  261. package/dist/persistence/index.d.ts.map +1 -0
  262. package/dist/persistence/index.js +11 -0
  263. package/dist/persistence/index.js.map +1 -0
  264. package/dist/persistence/migrator.d.ts +40 -0
  265. package/dist/persistence/migrator.d.ts.map +1 -0
  266. package/dist/persistence/migrator.js +238 -0
  267. package/dist/persistence/migrator.js.map +1 -0
  268. package/dist/persistence/serializers.d.ts +45 -0
  269. package/dist/persistence/serializers.d.ts.map +1 -0
  270. package/dist/persistence/serializers.js +80 -0
  271. package/dist/persistence/serializers.js.map +1 -0
  272. package/dist/persistence/sqlite-persistence.d.ts +228 -0
  273. package/dist/persistence/sqlite-persistence.d.ts.map +1 -0
  274. package/dist/persistence/sqlite-persistence.js +588 -0
  275. package/dist/persistence/sqlite-persistence.js.map +1 -0
  276. package/dist/runtime/backends/acp-protocol.d.ts +49 -0
  277. package/dist/runtime/backends/acp-protocol.d.ts.map +1 -0
  278. package/dist/runtime/backends/acp-protocol.js +166 -0
  279. package/dist/runtime/backends/acp-protocol.js.map +1 -0
  280. package/dist/runtime/backends/acp.d.ts +26 -26
  281. package/dist/runtime/backends/acp.d.ts.map +1 -1
  282. package/dist/runtime/backends/acp.js +32 -156
  283. package/dist/runtime/backends/acp.js.map +1 -1
  284. package/dist/runtime/backends/index.d.ts +3 -1
  285. package/dist/runtime/backends/index.d.ts.map +1 -1
  286. package/dist/runtime/backends/index.js +3 -1
  287. package/dist/runtime/backends/index.js.map +1 -1
  288. package/dist/runtime/backends/macro-agent.d.ts +104 -0
  289. package/dist/runtime/backends/macro-agent.d.ts.map +1 -0
  290. package/dist/runtime/backends/macro-agent.js +107 -0
  291. package/dist/runtime/backends/macro-agent.js.map +1 -0
  292. package/dist/runtime/compute-provider.d.ts +87 -0
  293. package/dist/runtime/compute-provider.d.ts.map +1 -0
  294. package/dist/runtime/compute-provider.js +87 -0
  295. package/dist/runtime/compute-provider.js.map +1 -0
  296. package/dist/runtime/flows/learning.d.ts +10 -12
  297. package/dist/runtime/flows/learning.d.ts.map +1 -1
  298. package/dist/runtime/flows/learning.js +10 -23
  299. package/dist/runtime/flows/learning.js.map +1 -1
  300. package/dist/runtime/index.d.ts +3 -2
  301. package/dist/runtime/index.d.ts.map +1 -1
  302. package/dist/runtime/index.js +3 -1
  303. package/dist/runtime/index.js.map +1 -1
  304. package/dist/runtime/manager.d.ts +37 -4
  305. package/dist/runtime/manager.d.ts.map +1 -1
  306. package/dist/runtime/manager.js +139 -20
  307. package/dist/runtime/manager.js.map +1 -1
  308. package/dist/runtime/types.d.ts +38 -0
  309. package/dist/runtime/types.d.ts.map +1 -1
  310. package/dist/search/evaluator.d.ts +7 -0
  311. package/dist/search/evaluator.d.ts.map +1 -1
  312. package/dist/search/evaluator.js +24 -4
  313. package/dist/search/evaluator.js.map +1 -1
  314. package/dist/search/index.d.ts +2 -0
  315. package/dist/search/index.d.ts.map +1 -1
  316. package/dist/search/index.js +4 -0
  317. package/dist/search/index.js.map +1 -1
  318. package/dist/search/moe-gate.d.ts +124 -0
  319. package/dist/search/moe-gate.d.ts.map +1 -0
  320. package/dist/search/moe-gate.js +234 -0
  321. package/dist/search/moe-gate.js.map +1 -0
  322. package/dist/search/refinement-loop.d.ts +17 -0
  323. package/dist/search/refinement-loop.d.ts.map +1 -1
  324. package/dist/search/refinement-loop.js +77 -6
  325. package/dist/search/refinement-loop.js.map +1 -1
  326. package/dist/search/refinement-types.d.ts +2 -2
  327. package/dist/search/router.d.ts +32 -2
  328. package/dist/search/router.d.ts.map +1 -1
  329. package/dist/search/router.js +87 -4
  330. package/dist/search/router.js.map +1 -1
  331. package/dist/search/team-router.d.ts +91 -0
  332. package/dist/search/team-router.d.ts.map +1 -0
  333. package/dist/search/team-router.js +315 -0
  334. package/dist/search/team-router.js.map +1 -0
  335. package/dist/session-bank/git-reader.d.ts +44 -0
  336. package/dist/session-bank/git-reader.d.ts.map +1 -0
  337. package/dist/session-bank/git-reader.js +172 -0
  338. package/dist/session-bank/git-reader.js.map +1 -0
  339. package/dist/session-bank/index.d.ts +5 -0
  340. package/dist/session-bank/index.d.ts.map +1 -0
  341. package/dist/session-bank/index.js +4 -0
  342. package/dist/session-bank/index.js.map +1 -0
  343. package/dist/session-bank/parser.d.ts +50 -0
  344. package/dist/session-bank/parser.d.ts.map +1 -0
  345. package/dist/session-bank/parser.js +338 -0
  346. package/dist/session-bank/parser.js.map +1 -0
  347. package/dist/session-bank/session-bank.d.ts +40 -0
  348. package/dist/session-bank/session-bank.d.ts.map +1 -0
  349. package/dist/session-bank/session-bank.js +347 -0
  350. package/dist/session-bank/session-bank.js.map +1 -0
  351. package/dist/session-bank/types.d.ts +132 -0
  352. package/dist/session-bank/types.d.ts.map +1 -0
  353. package/dist/session-bank/types.js +7 -0
  354. package/dist/session-bank/types.js.map +1 -0
  355. package/dist/surfacing/index.d.ts +4 -0
  356. package/dist/surfacing/index.d.ts.map +1 -1
  357. package/dist/surfacing/index.js +3 -0
  358. package/dist/surfacing/index.js.map +1 -1
  359. package/dist/surfacing/publisher.d.ts +22 -0
  360. package/dist/surfacing/publisher.d.ts.map +1 -0
  361. package/dist/surfacing/publisher.js +9 -0
  362. package/dist/surfacing/publisher.js.map +1 -0
  363. package/dist/surfacing/skill-library.d.ts +12 -0
  364. package/dist/surfacing/skill-library.d.ts.map +1 -1
  365. package/dist/surfacing/skill-library.js +26 -0
  366. package/dist/surfacing/skill-library.js.map +1 -1
  367. package/dist/surfacing/skill-publisher.d.ts +43 -0
  368. package/dist/surfacing/skill-publisher.d.ts.map +1 -0
  369. package/dist/surfacing/skill-publisher.js +169 -0
  370. package/dist/surfacing/skill-publisher.js.map +1 -0
  371. package/dist/surfacing/sqlite-storage-adapter.d.ts +42 -0
  372. package/dist/surfacing/sqlite-storage-adapter.d.ts.map +1 -0
  373. package/dist/surfacing/sqlite-storage-adapter.js +199 -0
  374. package/dist/surfacing/sqlite-storage-adapter.js.map +1 -0
  375. package/dist/surfacing/team-skill-library.d.ts +180 -0
  376. package/dist/surfacing/team-skill-library.d.ts.map +1 -0
  377. package/dist/surfacing/team-skill-library.js +384 -0
  378. package/dist/surfacing/team-skill-library.js.map +1 -0
  379. package/dist/types/config.d.ts +1318 -44
  380. package/dist/types/config.d.ts.map +1 -1
  381. package/dist/types/config.js +243 -0
  382. package/dist/types/config.js.map +1 -1
  383. package/dist/types/dataclaw.d.ts +286 -0
  384. package/dist/types/dataclaw.d.ts.map +1 -0
  385. package/dist/types/dataclaw.js +84 -0
  386. package/dist/types/dataclaw.js.map +1 -0
  387. package/dist/types/index.d.ts +9 -2
  388. package/dist/types/index.d.ts.map +1 -1
  389. package/dist/types/index.js +13 -1
  390. package/dist/types/index.js.map +1 -1
  391. package/dist/types/knowledge-graph.d.ts +148 -0
  392. package/dist/types/knowledge-graph.d.ts.map +1 -0
  393. package/dist/types/knowledge-graph.js +40 -0
  394. package/dist/types/knowledge-graph.js.map +1 -0
  395. package/dist/types/knowledge.d.ts +280 -0
  396. package/dist/types/knowledge.d.ts.map +1 -0
  397. package/dist/types/knowledge.js +191 -0
  398. package/dist/types/knowledge.js.map +1 -0
  399. package/dist/types/memory.d.ts +52 -0
  400. package/dist/types/memory.d.ts.map +1 -1
  401. package/dist/types/memory.js +13 -0
  402. package/dist/types/memory.js.map +1 -1
  403. package/dist/types/playbook.d.ts +4 -0
  404. package/dist/types/playbook.d.ts.map +1 -1
  405. package/dist/types/playbook.js.map +1 -1
  406. package/dist/types/team-meta.d.ts +160 -0
  407. package/dist/types/team-meta.d.ts.map +1 -0
  408. package/dist/types/team-meta.js +42 -0
  409. package/dist/types/team-meta.js.map +1 -0
  410. package/dist/types/team-playbook.d.ts +276 -0
  411. package/dist/types/team-playbook.d.ts.map +1 -0
  412. package/dist/types/team-playbook.js +85 -0
  413. package/dist/types/team-playbook.js.map +1 -0
  414. package/dist/types/team-trajectory.d.ts +305 -0
  415. package/dist/types/team-trajectory.d.ts.map +1 -0
  416. package/dist/types/team-trajectory.js +304 -0
  417. package/dist/types/team-trajectory.js.map +1 -0
  418. package/dist/types/trajectory-source.d.ts +39 -0
  419. package/dist/types/trajectory-source.d.ts.map +1 -0
  420. package/dist/types/trajectory-source.js +2 -0
  421. package/dist/types/trajectory-source.js.map +1 -0
  422. package/dist/utils/error-classifier.d.ts +30 -0
  423. package/dist/utils/error-classifier.d.ts.map +1 -0
  424. package/dist/utils/error-classifier.js +85 -0
  425. package/dist/utils/error-classifier.js.map +1 -0
  426. package/dist/utils/frontmatter.d.ts +34 -0
  427. package/dist/utils/frontmatter.d.ts.map +1 -0
  428. package/dist/utils/frontmatter.js +93 -0
  429. package/dist/utils/frontmatter.js.map +1 -0
  430. package/dist/utils/index.d.ts +4 -0
  431. package/dist/utils/index.d.ts.map +1 -1
  432. package/dist/utils/index.js +4 -0
  433. package/dist/utils/index.js.map +1 -1
  434. package/dist/utils/partitioned-store.d.ts +93 -0
  435. package/dist/utils/partitioned-store.d.ts.map +1 -0
  436. package/dist/utils/partitioned-store.js +251 -0
  437. package/dist/utils/partitioned-store.js.map +1 -0
  438. package/dist/utils/trajectory-helpers.d.ts +39 -0
  439. package/dist/utils/trajectory-helpers.d.ts.map +1 -0
  440. package/dist/utils/trajectory-helpers.js +57 -0
  441. package/dist/utils/trajectory-helpers.js.map +1 -0
  442. package/dist/workspace/index.d.ts +6 -0
  443. package/dist/workspace/index.d.ts.map +1 -0
  444. package/dist/workspace/index.js +11 -0
  445. package/dist/workspace/index.js.map +1 -0
  446. package/dist/workspace/runner.d.ts +49 -0
  447. package/dist/workspace/runner.d.ts.map +1 -0
  448. package/dist/workspace/runner.js +219 -0
  449. package/dist/workspace/runner.js.map +1 -0
  450. package/dist/workspace/skill-converter.d.ts +18 -0
  451. package/dist/workspace/skill-converter.d.ts.map +1 -0
  452. package/dist/workspace/skill-converter.js +257 -0
  453. package/dist/workspace/skill-converter.js.map +1 -0
  454. package/dist/workspace/templates/index.d.ts +11 -0
  455. package/dist/workspace/templates/index.d.ts.map +1 -0
  456. package/dist/workspace/templates/index.js +21 -0
  457. package/dist/workspace/templates/index.js.map +1 -0
  458. package/dist/workspace/templates/knowledge-defrag.d.ts +25 -0
  459. package/dist/workspace/templates/knowledge-defrag.d.ts.map +1 -0
  460. package/dist/workspace/templates/knowledge-defrag.js +154 -0
  461. package/dist/workspace/templates/knowledge-defrag.js.map +1 -0
  462. package/dist/workspace/templates/knowledge-extraction.d.ts +25 -0
  463. package/dist/workspace/templates/knowledge-extraction.d.ts.map +1 -0
  464. package/dist/workspace/templates/knowledge-extraction.js +246 -0
  465. package/dist/workspace/templates/knowledge-extraction.js.map +1 -0
  466. package/dist/workspace/templates/meta-reflection.d.ts +47 -0
  467. package/dist/workspace/templates/meta-reflection.d.ts.map +1 -0
  468. package/dist/workspace/templates/meta-reflection.js +135 -0
  469. package/dist/workspace/templates/meta-reflection.js.map +1 -0
  470. package/dist/workspace/templates/playbook-extraction.d.ts +20 -0
  471. package/dist/workspace/templates/playbook-extraction.d.ts.map +1 -0
  472. package/dist/workspace/templates/playbook-extraction.js +189 -0
  473. package/dist/workspace/templates/playbook-extraction.js.map +1 -0
  474. package/dist/workspace/templates/refinement-analysis.d.ts +31 -0
  475. package/dist/workspace/templates/refinement-analysis.d.ts.map +1 -0
  476. package/dist/workspace/templates/refinement-analysis.js +107 -0
  477. package/dist/workspace/templates/refinement-analysis.js.map +1 -0
  478. package/dist/workspace/templates/solution-evaluation.d.ts +21 -0
  479. package/dist/workspace/templates/solution-evaluation.d.ts.map +1 -0
  480. package/dist/workspace/templates/solution-evaluation.js +131 -0
  481. package/dist/workspace/templates/solution-evaluation.js.map +1 -0
  482. package/dist/workspace/templates/team-playbook-extraction.d.ts +44 -0
  483. package/dist/workspace/templates/team-playbook-extraction.d.ts.map +1 -0
  484. package/dist/workspace/templates/team-playbook-extraction.js +497 -0
  485. package/dist/workspace/templates/team-playbook-extraction.js.map +1 -0
  486. package/dist/workspace/templates/team-trajectory-analysis.d.ts +19 -0
  487. package/dist/workspace/templates/team-trajectory-analysis.d.ts.map +1 -0
  488. package/dist/workspace/templates/team-trajectory-analysis.js +442 -0
  489. package/dist/workspace/templates/team-trajectory-analysis.js.map +1 -0
  490. package/dist/workspace/templates/trajectory-analysis.d.ts +19 -0
  491. package/dist/workspace/templates/trajectory-analysis.d.ts.map +1 -0
  492. package/dist/workspace/templates/trajectory-analysis.js +170 -0
  493. package/dist/workspace/templates/trajectory-analysis.js.map +1 -0
  494. package/dist/workspace/templates/usage-inference.d.ts +19 -0
  495. package/dist/workspace/templates/usage-inference.d.ts.map +1 -0
  496. package/dist/workspace/templates/usage-inference.js +125 -0
  497. package/dist/workspace/templates/usage-inference.js.map +1 -0
  498. package/dist/workspace/types.d.ts +152 -0
  499. package/dist/workspace/types.d.ts.map +1 -0
  500. package/dist/workspace/types.js +17 -0
  501. package/dist/workspace/types.js.map +1 -0
  502. package/docs/DESIGN-agentic-workspace.md +2057 -0
  503. package/docs/DESIGN-semantic-memory-knowledge-bank.md +1789 -0
  504. package/docs/DESIGN-session-bank.md +1134 -0
  505. package/docs/DESIGN-team-extraction-pipeline.md +1369 -0
  506. package/docs/PROPOSAL-team-aware-learning.md +1080 -0
  507. package/docs/RESEARCH-semantic-memory-knowledge-structures.md +517 -0
  508. package/docs/RESEARCH-team-trajectory-learning.md +553 -0
  509. package/gaps.md +204 -0
  510. package/package.json +27 -7
  511. package/references/agent-workspace/CLAUDE.md +74 -0
  512. package/references/agent-workspace/README.md +587 -0
  513. package/references/agent-workspace/media/banner.png +0 -0
  514. package/references/agent-workspace/package-lock.json +2061 -0
  515. package/references/agent-workspace/package.json +54 -0
  516. package/references/agent-workspace/src/handle.ts +122 -0
  517. package/references/agent-workspace/src/index.ts +32 -0
  518. package/references/agent-workspace/src/manager.ts +102 -0
  519. package/references/agent-workspace/src/readers/json.ts +71 -0
  520. package/references/agent-workspace/src/readers/markdown.ts +37 -0
  521. package/references/agent-workspace/src/readers/raw.ts +27 -0
  522. package/references/agent-workspace/src/types.ts +68 -0
  523. package/references/agent-workspace/src/validation.ts +93 -0
  524. package/references/agent-workspace/src/writers/json.ts +17 -0
  525. package/references/agent-workspace/src/writers/markdown.ts +27 -0
  526. package/references/agent-workspace/src/writers/raw.ts +22 -0
  527. package/references/agent-workspace/tests/errors.test.ts +652 -0
  528. package/references/agent-workspace/tests/handle.test.ts +144 -0
  529. package/references/agent-workspace/tests/manager.test.ts +124 -0
  530. package/references/agent-workspace/tests/readers.test.ts +205 -0
  531. package/references/agent-workspace/tests/validation.test.ts +196 -0
  532. package/references/agent-workspace/tests/writers.test.ts +108 -0
  533. package/references/agent-workspace/tsconfig.json +20 -0
  534. package/references/agent-workspace/tsup.config.ts +9 -0
  535. package/references/minimem/.claude/settings.json +7 -0
  536. package/references/minimem/.sudocode/issues.jsonl +18 -0
  537. package/references/minimem/.sudocode/specs.jsonl +1 -0
  538. package/references/minimem/CLAUDE.md +310 -0
  539. package/references/minimem/README.md +556 -0
  540. package/references/minimem/claude-plugin/.claude-plugin/plugin.json +10 -0
  541. package/references/minimem/claude-plugin/.mcp.json +7 -0
  542. package/references/minimem/claude-plugin/README.md +158 -0
  543. package/references/minimem/claude-plugin/commands/recall.md +47 -0
  544. package/references/minimem/claude-plugin/commands/remember.md +41 -0
  545. package/references/minimem/claude-plugin/hooks/__tests__/hooks.test.ts +272 -0
  546. package/references/minimem/claude-plugin/hooks/hooks.json +27 -0
  547. package/references/minimem/claude-plugin/hooks/session-end.sh +86 -0
  548. package/references/minimem/claude-plugin/hooks/session-start.sh +85 -0
  549. package/references/minimem/claude-plugin/skills/memory/SKILL.md +108 -0
  550. package/references/minimem/package-lock.json +5373 -0
  551. package/references/minimem/package.json +60 -0
  552. package/references/minimem/scripts/postbuild.js +35 -0
  553. package/references/minimem/src/__tests__/edge-cases.test.ts +371 -0
  554. package/references/minimem/src/__tests__/errors.test.ts +265 -0
  555. package/references/minimem/src/__tests__/helpers.ts +199 -0
  556. package/references/minimem/src/__tests__/internal.test.ts +407 -0
  557. package/references/minimem/src/__tests__/knowledge.test.ts +287 -0
  558. package/references/minimem/src/__tests__/minimem.integration.test.ts +1127 -0
  559. package/references/minimem/src/__tests__/session.test.ts +190 -0
  560. package/references/minimem/src/cli/__tests__/commands.test.ts +759 -0
  561. package/references/minimem/src/cli/commands/__tests__/conflicts.test.ts +141 -0
  562. package/references/minimem/src/cli/commands/append.ts +76 -0
  563. package/references/minimem/src/cli/commands/config.ts +262 -0
  564. package/references/minimem/src/cli/commands/conflicts.ts +413 -0
  565. package/references/minimem/src/cli/commands/daemon.ts +169 -0
  566. package/references/minimem/src/cli/commands/index.ts +12 -0
  567. package/references/minimem/src/cli/commands/init.ts +88 -0
  568. package/references/minimem/src/cli/commands/mcp.ts +177 -0
  569. package/references/minimem/src/cli/commands/push-pull.ts +213 -0
  570. package/references/minimem/src/cli/commands/search.ts +158 -0
  571. package/references/minimem/src/cli/commands/status.ts +84 -0
  572. package/references/minimem/src/cli/commands/sync-init.ts +290 -0
  573. package/references/minimem/src/cli/commands/sync.ts +70 -0
  574. package/references/minimem/src/cli/commands/upsert.ts +197 -0
  575. package/references/minimem/src/cli/config.ts +584 -0
  576. package/references/minimem/src/cli/index.ts +264 -0
  577. package/references/minimem/src/cli/shared.ts +161 -0
  578. package/references/minimem/src/cli/sync/__tests__/central.test.ts +152 -0
  579. package/references/minimem/src/cli/sync/__tests__/conflicts.test.ts +209 -0
  580. package/references/minimem/src/cli/sync/__tests__/daemon.test.ts +118 -0
  581. package/references/minimem/src/cli/sync/__tests__/detection.test.ts +207 -0
  582. package/references/minimem/src/cli/sync/__tests__/integration.test.ts +476 -0
  583. package/references/minimem/src/cli/sync/__tests__/registry.test.ts +363 -0
  584. package/references/minimem/src/cli/sync/__tests__/state.test.ts +255 -0
  585. package/references/minimem/src/cli/sync/__tests__/validation.test.ts +193 -0
  586. package/references/minimem/src/cli/sync/__tests__/watcher.test.ts +178 -0
  587. package/references/minimem/src/cli/sync/central.ts +292 -0
  588. package/references/minimem/src/cli/sync/conflicts.ts +204 -0
  589. package/references/minimem/src/cli/sync/daemon.ts +407 -0
  590. package/references/minimem/src/cli/sync/detection.ts +138 -0
  591. package/references/minimem/src/cli/sync/index.ts +107 -0
  592. package/references/minimem/src/cli/sync/operations.ts +373 -0
  593. package/references/minimem/src/cli/sync/registry.ts +279 -0
  594. package/references/minimem/src/cli/sync/state.ts +355 -0
  595. package/references/minimem/src/cli/sync/validation.ts +206 -0
  596. package/references/minimem/src/cli/sync/watcher.ts +234 -0
  597. package/references/minimem/src/cli/version.ts +34 -0
  598. package/references/minimem/src/core/index.ts +9 -0
  599. package/references/minimem/src/core/indexer.ts +628 -0
  600. package/references/minimem/src/core/searcher.ts +221 -0
  601. package/references/minimem/src/db/schema.ts +183 -0
  602. package/references/minimem/src/db/sqlite-vec.ts +24 -0
  603. package/references/minimem/src/embeddings/__tests__/embeddings.test.ts +431 -0
  604. package/references/minimem/src/embeddings/batch-gemini.ts +392 -0
  605. package/references/minimem/src/embeddings/batch-openai.ts +409 -0
  606. package/references/minimem/src/embeddings/embeddings.ts +434 -0
  607. package/references/minimem/src/index.ts +109 -0
  608. package/references/minimem/src/internal.ts +299 -0
  609. package/references/minimem/src/minimem.ts +1276 -0
  610. package/references/minimem/src/search/__tests__/hybrid.test.ts +247 -0
  611. package/references/minimem/src/search/graph.ts +234 -0
  612. package/references/minimem/src/search/hybrid.ts +151 -0
  613. package/references/minimem/src/search/search.ts +256 -0
  614. package/references/minimem/src/server/__tests__/mcp.test.ts +341 -0
  615. package/references/minimem/src/server/__tests__/tools.test.ts +364 -0
  616. package/references/minimem/src/server/mcp.ts +326 -0
  617. package/references/minimem/src/server/tools.ts +720 -0
  618. package/references/minimem/src/session.ts +460 -0
  619. package/references/minimem/tsconfig.json +19 -0
  620. package/references/minimem/tsup.config.ts +26 -0
  621. package/references/minimem/vitest.config.ts +24 -0
  622. package/references/sessionlog/.husky/pre-commit +1 -0
  623. package/references/sessionlog/.lintstagedrc.json +4 -0
  624. package/references/sessionlog/.prettierignore +4 -0
  625. package/references/sessionlog/.prettierrc.json +11 -0
  626. package/references/sessionlog/LICENSE +21 -0
  627. package/references/sessionlog/README.md +453 -0
  628. package/references/sessionlog/eslint.config.js +58 -0
  629. package/references/sessionlog/package-lock.json +3672 -0
  630. package/references/sessionlog/package.json +65 -0
  631. package/references/sessionlog/src/__tests__/agent-hooks.test.ts +570 -0
  632. package/references/sessionlog/src/__tests__/agent-registry.test.ts +127 -0
  633. package/references/sessionlog/src/__tests__/claude-code-hooks.test.ts +225 -0
  634. package/references/sessionlog/src/__tests__/claude-generator.test.ts +46 -0
  635. package/references/sessionlog/src/__tests__/commit-msg.test.ts +86 -0
  636. package/references/sessionlog/src/__tests__/cursor-agent.test.ts +224 -0
  637. package/references/sessionlog/src/__tests__/e2e-live.test.ts +890 -0
  638. package/references/sessionlog/src/__tests__/event-log.test.ts +183 -0
  639. package/references/sessionlog/src/__tests__/flush-sentinel.test.ts +105 -0
  640. package/references/sessionlog/src/__tests__/gemini-agent.test.ts +375 -0
  641. package/references/sessionlog/src/__tests__/git-hooks.test.ts +78 -0
  642. package/references/sessionlog/src/__tests__/hook-managers.test.ts +121 -0
  643. package/references/sessionlog/src/__tests__/lifecycle-tasks.test.ts +759 -0
  644. package/references/sessionlog/src/__tests__/opencode-agent.test.ts +338 -0
  645. package/references/sessionlog/src/__tests__/redaction.test.ts +136 -0
  646. package/references/sessionlog/src/__tests__/session-repo.test.ts +353 -0
  647. package/references/sessionlog/src/__tests__/session-store.test.ts +166 -0
  648. package/references/sessionlog/src/__tests__/setup-ccweb.test.ts +466 -0
  649. package/references/sessionlog/src/__tests__/skill-live.test.ts +461 -0
  650. package/references/sessionlog/src/__tests__/summarize.test.ts +348 -0
  651. package/references/sessionlog/src/__tests__/task-plan-e2e.test.ts +610 -0
  652. package/references/sessionlog/src/__tests__/task-plan-live.test.ts +632 -0
  653. package/references/sessionlog/src/__tests__/transcript-timestamp.test.ts +121 -0
  654. package/references/sessionlog/src/__tests__/types.test.ts +166 -0
  655. package/references/sessionlog/src/__tests__/utils.test.ts +333 -0
  656. package/references/sessionlog/src/__tests__/validation.test.ts +103 -0
  657. package/references/sessionlog/src/__tests__/worktree.test.ts +57 -0
  658. package/references/sessionlog/src/agent/agents/claude-code.ts +1089 -0
  659. package/references/sessionlog/src/agent/agents/cursor.ts +361 -0
  660. package/references/sessionlog/src/agent/agents/gemini-cli.ts +632 -0
  661. package/references/sessionlog/src/agent/agents/opencode.ts +540 -0
  662. package/references/sessionlog/src/agent/registry.ts +143 -0
  663. package/references/sessionlog/src/agent/session-types.ts +113 -0
  664. package/references/sessionlog/src/agent/types.ts +220 -0
  665. package/references/sessionlog/src/cli.ts +597 -0
  666. package/references/sessionlog/src/commands/clean.ts +133 -0
  667. package/references/sessionlog/src/commands/disable.ts +84 -0
  668. package/references/sessionlog/src/commands/doctor.ts +145 -0
  669. package/references/sessionlog/src/commands/enable.ts +202 -0
  670. package/references/sessionlog/src/commands/explain.ts +261 -0
  671. package/references/sessionlog/src/commands/reset.ts +105 -0
  672. package/references/sessionlog/src/commands/resume.ts +180 -0
  673. package/references/sessionlog/src/commands/rewind.ts +195 -0
  674. package/references/sessionlog/src/commands/setup-ccweb.ts +275 -0
  675. package/references/sessionlog/src/commands/status.ts +172 -0
  676. package/references/sessionlog/src/config.ts +165 -0
  677. package/references/sessionlog/src/events/event-log.ts +126 -0
  678. package/references/sessionlog/src/git-operations.ts +558 -0
  679. package/references/sessionlog/src/hooks/git-hooks.ts +165 -0
  680. package/references/sessionlog/src/hooks/lifecycle.ts +391 -0
  681. package/references/sessionlog/src/index.ts +650 -0
  682. package/references/sessionlog/src/security/redaction.ts +283 -0
  683. package/references/sessionlog/src/session/state-machine.ts +452 -0
  684. package/references/sessionlog/src/store/checkpoint-store.ts +509 -0
  685. package/references/sessionlog/src/store/native-store.ts +173 -0
  686. package/references/sessionlog/src/store/provider-types.ts +99 -0
  687. package/references/sessionlog/src/store/session-store.ts +266 -0
  688. package/references/sessionlog/src/strategy/attribution.ts +296 -0
  689. package/references/sessionlog/src/strategy/common.ts +207 -0
  690. package/references/sessionlog/src/strategy/content-overlap.ts +228 -0
  691. package/references/sessionlog/src/strategy/manual-commit.ts +988 -0
  692. package/references/sessionlog/src/strategy/types.ts +279 -0
  693. package/references/sessionlog/src/summarize/claude-generator.ts +115 -0
  694. package/references/sessionlog/src/summarize/summarize.ts +432 -0
  695. package/references/sessionlog/src/types.ts +508 -0
  696. package/references/sessionlog/src/utils/chunk-files.ts +49 -0
  697. package/references/sessionlog/src/utils/commit-message.ts +65 -0
  698. package/references/sessionlog/src/utils/detect-agent.ts +36 -0
  699. package/references/sessionlog/src/utils/hook-managers.ts +125 -0
  700. package/references/sessionlog/src/utils/ide-tags.ts +32 -0
  701. package/references/sessionlog/src/utils/paths.ts +79 -0
  702. package/references/sessionlog/src/utils/preview-rewind.ts +80 -0
  703. package/references/sessionlog/src/utils/rewind-conflict.ts +121 -0
  704. package/references/sessionlog/src/utils/shadow-branch.ts +109 -0
  705. package/references/sessionlog/src/utils/string-utils.ts +46 -0
  706. package/references/sessionlog/src/utils/todo-extract.ts +188 -0
  707. package/references/sessionlog/src/utils/trailers.ts +187 -0
  708. package/references/sessionlog/src/utils/transcript-parse.ts +177 -0
  709. package/references/sessionlog/src/utils/transcript-timestamp.ts +59 -0
  710. package/references/sessionlog/src/utils/tree-ops.ts +219 -0
  711. package/references/sessionlog/src/utils/tty.ts +72 -0
  712. package/references/sessionlog/src/utils/validation.ts +65 -0
  713. package/references/sessionlog/src/utils/worktree.ts +58 -0
  714. package/references/sessionlog/src/wire-types.ts +59 -0
  715. package/references/sessionlog/templates/setup-env.sh +153 -0
  716. package/references/sessionlog/tsconfig.json +18 -0
  717. package/references/sessionlog/vitest.config.ts +12 -0
  718. package/references/skill-tree/.claude/settings.json +6 -0
  719. package/references/skill-tree/.sudocode/issues.jsonl +19 -0
  720. package/references/skill-tree/.sudocode/specs.jsonl +3 -0
  721. package/references/skill-tree/CLAUDE.md +126 -0
  722. package/references/skill-tree/README.md +372 -0
  723. package/references/skill-tree/docs/GAPS_v1.md +221 -0
  724. package/references/skill-tree/docs/INTEGRATION_PLAN.md +467 -0
  725. package/references/skill-tree/docs/TODOS.md +91 -0
  726. package/references/skill-tree/docs/anthropic_skill_guide.md +1364 -0
  727. package/references/skill-tree/docs/design/federated-skill-trees.md +524 -0
  728. package/references/skill-tree/docs/design/multi-agent-sync.md +759 -0
  729. package/references/skill-tree/docs/scraper/BRAINSTORM.md +583 -0
  730. package/references/skill-tree/docs/scraper/POC_PLAN.md +420 -0
  731. package/references/skill-tree/docs/scraper/README.md +170 -0
  732. package/references/skill-tree/examples/basic-usage.ts +164 -0
  733. package/references/skill-tree/package-lock.json +1852 -0
  734. package/references/skill-tree/package.json +66 -0
  735. package/references/skill-tree/scraper/README.md +123 -0
  736. package/references/skill-tree/scraper/docs/DESIGN.md +683 -0
  737. package/references/skill-tree/scraper/docs/PLAN.md +336 -0
  738. package/references/skill-tree/scraper/drizzle.config.ts +10 -0
  739. package/references/skill-tree/scraper/package-lock.json +6329 -0
  740. package/references/skill-tree/scraper/package.json +68 -0
  741. package/references/skill-tree/scraper/test/fixtures/invalid-skill/missing-description.md +7 -0
  742. package/references/skill-tree/scraper/test/fixtures/invalid-skill/missing-name.md +7 -0
  743. package/references/skill-tree/scraper/test/fixtures/minimal-skill/SKILL.md +27 -0
  744. package/references/skill-tree/scraper/test/fixtures/skill-json/SKILL.json +21 -0
  745. package/references/skill-tree/scraper/test/fixtures/skill-with-meta/SKILL.md +54 -0
  746. package/references/skill-tree/scraper/test/fixtures/skill-with-meta/_meta.json +24 -0
  747. package/references/skill-tree/scraper/test/fixtures/valid-skill/SKILL.md +93 -0
  748. package/references/skill-tree/scraper/test/fixtures/valid-skill/_meta.json +22 -0
  749. package/references/skill-tree/scraper/tsup.config.ts +14 -0
  750. package/references/skill-tree/scraper/vitest.config.ts +17 -0
  751. package/references/skill-tree/scripts/convert-to-vitest.ts +166 -0
  752. package/references/skill-tree/skills/skill-writer/SKILL.md +339 -0
  753. package/references/skill-tree/skills/skill-writer/references/examples.md +326 -0
  754. package/references/skill-tree/skills/skill-writer/references/patterns.md +210 -0
  755. package/references/skill-tree/skills/skill-writer/references/quality-checklist.md +123 -0
  756. package/references/skill-tree/test/run-all.ts +106 -0
  757. package/references/skill-tree/test/utils.ts +128 -0
  758. package/references/skill-tree/vitest.config.ts +16 -0
  759. package/src/atlas.ts +583 -41
  760. package/src/bin/cli-utils.ts +220 -0
  761. package/src/bin/cognitive-core.ts +84 -392
  762. package/src/bin/commands/kb.ts +266 -0
  763. package/src/bin/commands/learn.ts +100 -0
  764. package/src/bin/commands/legacy.ts +182 -0
  765. package/src/bin/commands/run.ts +113 -0
  766. package/src/bin/commands/sessions.ts +221 -0
  767. package/src/bin/commands/skills.ts +146 -0
  768. package/src/embeddings/index.ts +3 -0
  769. package/src/embeddings/inverted-index.ts +134 -0
  770. package/src/embeddings/manager.ts +13 -8
  771. package/src/embeddings/provider.ts +10 -3
  772. package/src/embeddings/vector-store.ts +21 -9
  773. package/src/factory.ts +33 -16
  774. package/src/index.ts +231 -9
  775. package/src/learning/analyzer.ts +21 -37
  776. package/src/learning/energy-evaluator.ts +282 -0
  777. package/src/learning/healing-orchestrator.ts +383 -0
  778. package/src/learning/index.ts +104 -13
  779. package/src/learning/instant-loop.ts +357 -0
  780. package/src/learning/knowledge-extractor.ts +470 -0
  781. package/src/learning/maintenance-scheduler.ts +271 -0
  782. package/src/learning/meta-learner.ts +59 -23
  783. package/src/learning/reflexion-generator.ts +273 -0
  784. package/src/learning/team-ingester.ts +499 -0
  785. package/src/learning/team-meta-learner.ts +558 -0
  786. package/src/learning/team-pipeline.ts +364 -0
  787. package/src/learning/trajectory-sources/dataclaw.ts +403 -0
  788. package/src/learning/trajectory-sources/entire.ts +251 -0
  789. package/src/learning/trajectory-sources/file.ts +136 -0
  790. package/src/learning/trajectory-sources/huggingface.ts +248 -0
  791. package/src/learning/trajectory-sources/in-memory.ts +61 -0
  792. package/src/learning/trajectory-sources/index.ts +15 -0
  793. package/src/learning/trajectory-sources/pipeline.ts +69 -0
  794. package/src/learning/unified-pipeline.ts +921 -0
  795. package/src/memory/candidate-retrieval.ts +71 -0
  796. package/src/memory/causal-store.ts +273 -0
  797. package/src/memory/coherence.ts +252 -0
  798. package/src/memory/experience.ts +217 -50
  799. package/src/memory/graph-layers/base.ts +184 -0
  800. package/src/memory/graph-layers/causal.ts +16 -0
  801. package/src/memory/graph-layers/entity.ts +16 -0
  802. package/src/memory/graph-layers/index.ts +5 -0
  803. package/src/memory/graph-layers/semantic.ts +16 -0
  804. package/src/memory/graph-layers/temporal.ts +16 -0
  805. package/src/memory/index.ts +88 -0
  806. package/src/memory/knowledge-bank.ts +1317 -0
  807. package/src/memory/knowledge-defrag.ts +329 -0
  808. package/src/memory/knowledge-graph.ts +361 -0
  809. package/src/memory/meta.ts +78 -96
  810. package/src/memory/playbook.ts +239 -75
  811. package/src/memory/reasoning-bank.ts +458 -0
  812. package/src/memory/reflexion.ts +122 -0
  813. package/src/memory/search-provider.ts +35 -0
  814. package/src/memory/search-providers/index.ts +3 -0
  815. package/src/memory/search-providers/minimem.ts +84 -0
  816. package/src/memory/search-providers/text-similarity.ts +35 -0
  817. package/src/memory/skill-exporter.ts +357 -0
  818. package/src/memory/system.ts +80 -11
  819. package/src/memory/team-experience.ts +604 -0
  820. package/src/memory/temporal-compressor.ts +409 -0
  821. package/src/persistence/index.ts +37 -0
  822. package/src/persistence/migrator.ts +298 -0
  823. package/src/persistence/serializers.ts +79 -0
  824. package/src/persistence/sqlite-persistence.ts +925 -0
  825. package/src/runtime/backends/acp-protocol.ts +231 -0
  826. package/src/runtime/backends/acp.ts +57 -196
  827. package/src/runtime/backends/index.ts +14 -0
  828. package/src/runtime/backends/macro-agent.ts +177 -0
  829. package/src/runtime/compute-provider.ts +206 -0
  830. package/src/runtime/flows/learning.ts +25 -42
  831. package/src/runtime/index.ts +22 -0
  832. package/src/runtime/manager.ts +167 -23
  833. package/src/runtime/types.ts +41 -0
  834. package/src/search/evaluator.ts +29 -4
  835. package/src/search/index.ts +19 -0
  836. package/src/search/moe-gate.ts +304 -0
  837. package/src/search/refinement-loop.ts +106 -12
  838. package/src/search/router.ts +111 -4
  839. package/src/search/team-router.ts +459 -0
  840. package/src/session-bank/git-reader.ts +200 -0
  841. package/src/session-bank/index.ts +26 -0
  842. package/src/session-bank/parser.ts +548 -0
  843. package/src/session-bank/session-bank.ts +485 -0
  844. package/src/session-bank/types.ts +176 -0
  845. package/src/surfacing/index.ts +23 -0
  846. package/src/surfacing/publisher.ts +23 -0
  847. package/src/surfacing/skill-library.ts +31 -0
  848. package/src/surfacing/skill-publisher.ts +191 -0
  849. package/src/surfacing/sqlite-storage-adapter.ts +285 -0
  850. package/src/surfacing/team-skill-library.ts +610 -0
  851. package/src/types/config.ts +282 -0
  852. package/src/types/dataclaw.ts +99 -0
  853. package/src/types/huggingface-transformers.d.ts +12 -0
  854. package/src/types/index.ts +159 -0
  855. package/src/types/knowledge-graph.ts +246 -0
  856. package/src/types/knowledge.ts +388 -0
  857. package/src/types/memory.ts +30 -0
  858. package/src/types/playbook.ts +4 -0
  859. package/src/types/team-meta.ts +212 -0
  860. package/src/types/team-playbook.ts +384 -0
  861. package/src/types/team-trajectory.ts +673 -0
  862. package/src/types/trajectory-source.ts +47 -0
  863. package/src/utils/error-classifier.ts +113 -0
  864. package/src/utils/frontmatter.ts +118 -0
  865. package/src/utils/index.ts +25 -0
  866. package/src/utils/partitioned-store.ts +299 -0
  867. package/src/utils/trajectory-helpers.ts +79 -0
  868. package/src/workspace/index.ts +48 -0
  869. package/src/workspace/runner.ts +281 -0
  870. package/src/workspace/skill-converter.ts +288 -0
  871. package/src/workspace/templates/index.ts +64 -0
  872. package/src/workspace/templates/knowledge-defrag.ts +223 -0
  873. package/src/workspace/templates/knowledge-extraction.ts +337 -0
  874. package/src/workspace/templates/meta-reflection.ts +208 -0
  875. package/src/workspace/templates/playbook-extraction.ts +240 -0
  876. package/src/workspace/templates/refinement-analysis.ts +162 -0
  877. package/src/workspace/templates/solution-evaluation.ts +199 -0
  878. package/src/workspace/templates/team-playbook-extraction.ts +631 -0
  879. package/src/workspace/templates/team-trajectory-analysis.ts +564 -0
  880. package/src/workspace/templates/trajectory-analysis.ts +234 -0
  881. package/src/workspace/templates/usage-inference.ts +163 -0
  882. package/src/workspace/types.ts +241 -0
  883. package/tests/atlas-knowledge.test.ts +165 -0
  884. package/tests/embeddings/inverted-index.test.ts +138 -0
  885. package/tests/feature-toggles.test.ts +275 -0
  886. package/tests/gap-fixes.test.ts +1116 -0
  887. package/tests/integration/cli-e2e.test.ts +621 -0
  888. package/tests/integration/dataclaw-e2e.test.ts +559 -0
  889. package/tests/integration/e2e.test.ts +412 -4
  890. package/tests/integration/entire-e2e.test.ts +376 -0
  891. package/tests/integration/huggingface-e2e.test.ts +627 -0
  892. package/tests/integration/persistence-e2e.test.ts +741 -0
  893. package/tests/integration/phase-e2e.test.ts +1143 -0
  894. package/tests/integration/session-bank.test.ts +231 -0
  895. package/tests/integration/sessionlog-e2e.test.ts +329 -0
  896. package/tests/integration/skill-tree-wiring.test.ts +152 -0
  897. package/tests/integration/unified-pipeline-e2e.test.ts +634 -0
  898. package/tests/learning/analyzer.test.ts +1 -1
  899. package/tests/learning/dataclaw-trajectory-source.test.ts +642 -0
  900. package/tests/learning/energy-evaluator.test.ts +180 -0
  901. package/tests/learning/entire-trajectory-source.test.ts +380 -0
  902. package/tests/learning/healing-orchestrator.test.ts +269 -0
  903. package/tests/learning/huggingface-trajectory-source.test.ts +817 -0
  904. package/tests/learning/instant-loop.test.ts +243 -0
  905. package/tests/learning/knowledge-extractor.test.ts +491 -0
  906. package/tests/learning/maintenance-scheduler.test.ts +191 -0
  907. package/tests/learning/reflexion-generator.test.ts +411 -0
  908. package/tests/learning/team-ingester.test.ts +349 -0
  909. package/tests/learning/team-meta-learner.test.ts +618 -0
  910. package/tests/learning/team-pipeline.test.ts +334 -0
  911. package/tests/learning/trajectory-sources.test.ts +320 -0
  912. package/tests/learning/unified-pipeline.test.ts +322 -0
  913. package/tests/mcp/playbook-server.test.ts +6 -1
  914. package/tests/memory/causal-store.test.ts +276 -0
  915. package/tests/memory/coherence.test.ts +232 -0
  916. package/tests/memory/experience.test.ts +8 -3
  917. package/tests/memory/graph-layers/semantic.test.ts +219 -0
  918. package/tests/memory/knowledge-bank-extraction.test.ts +558 -0
  919. package/tests/memory/knowledge-bank.test.ts +705 -0
  920. package/tests/memory/knowledge-defrag.test.ts +366 -0
  921. package/tests/memory/knowledge-evolution.test.ts +563 -0
  922. package/tests/memory/knowledge-graph.test.ts +492 -0
  923. package/tests/memory/knowledge-inbox.test.ts +258 -0
  924. package/tests/memory/knowledge-minimem.test.ts +251 -0
  925. package/tests/memory/playbook.test.ts +307 -1
  926. package/tests/memory/provenance.test.ts +11 -2
  927. package/tests/memory/reasoning-bank.test.ts +239 -0
  928. package/tests/memory/reflexion.test.ts +166 -0
  929. package/tests/memory/skill-exporter.test.ts +475 -0
  930. package/tests/memory/system.test.ts +6 -1
  931. package/tests/memory/team-experience.test.ts +411 -0
  932. package/tests/memory/temporal-compressor.test.ts +318 -0
  933. package/tests/persistence/migrator.test.ts +1009 -0
  934. package/tests/persistence/sqlite-persistence.test.ts +635 -0
  935. package/tests/runtime/agent-manager.test.ts +7 -2
  936. package/tests/runtime/compute-provider.test.ts +288 -0
  937. package/tests/runtime/delegate.test.ts +354 -0
  938. package/tests/runtime/macro-agent-backend.test.ts +266 -0
  939. package/tests/search/moe-gate.test.ts +250 -0
  940. package/tests/search/refinement-loop.test.ts +11 -2
  941. package/tests/search/router.test.ts +81 -2
  942. package/tests/search/team-router.test.ts +376 -0
  943. package/tests/session-bank/fixtures/multi-tool-session/full.jsonl +12 -0
  944. package/tests/session-bank/fixtures/multi-tool-session/metadata.json +28 -0
  945. package/tests/session-bank/fixtures/root-metadata.json +18 -0
  946. package/tests/session-bank/fixtures/sessionlog-root-metadata.json +16 -0
  947. package/tests/session-bank/fixtures/sessionlog-session/full.jsonl +6 -0
  948. package/tests/session-bank/fixtures/sessionlog-session/metadata.json +55 -0
  949. package/tests/session-bank/fixtures/simple-session/full.jsonl +6 -0
  950. package/tests/session-bank/fixtures/simple-session/metadata.json +38 -0
  951. package/tests/session-bank/git-reader.test.ts +232 -0
  952. package/tests/session-bank/parser.test.ts +453 -0
  953. package/tests/session-bank/session-bank.test.ts +546 -0
  954. package/tests/surfacing/skill-library.test.ts +6 -1
  955. package/tests/surfacing/skill-publisher.test.ts +364 -0
  956. package/tests/surfacing/sqlite-storage-adapter.test.ts +206 -0
  957. package/tests/surfacing/team-skill-library.test.ts +444 -0
  958. package/tests/types/team-meta.test.ts +147 -0
  959. package/tests/types/team-playbook.test.ts +246 -0
  960. package/tests/types/team-trajectory.test.ts +557 -0
  961. package/tests/utils/frontmatter.test.ts +208 -0
  962. package/tests/utils/partitioned-store.test.ts +230 -0
  963. package/tests/workspace/full-flow.test.ts +845 -0
  964. package/tests/workspace/manager.test.ts +215 -0
  965. package/tests/workspace/runner.test.ts +336 -0
  966. package/tests/workspace/skill-converter.test.ts +205 -0
  967. package/tests/workspace/templates/knowledge-extraction.test.ts +235 -0
  968. package/tests/workspace/templates/team-playbook-extraction.test.ts +341 -0
  969. package/tests/workspace/templates/team-trajectory-analysis.test.ts +417 -0
  970. package/src/learning/llm-extractor.ts +0 -542
  971. package/src/learning/pipeline.ts +0 -244
  972. package/tests/learning/pipeline.test.ts +0 -176
@@ -0,0 +1,335 @@
1
+ /**
2
+ * TemporalCompressor — Adaptive memory compression.
3
+ *
4
+ * Experiences flow through Hot → Warm → Cold → Evicted tiers
5
+ * based on their accessScore (from Phase 0).
6
+ *
7
+ * Compression levels:
8
+ * - Hot: Full fidelity (all data preserved)
9
+ * - Warm: Strip solutionOutput to key steps only
10
+ * - Cold: Replace key steps with single-paragraph summary
11
+ * - Evicted: Remove entirely (after ensuring pattern captured in ReasoningBank)
12
+ *
13
+ * Hysteresis: An experience must stay below a threshold for 2 consecutive
14
+ * compression passes before demotion, preventing oscillation from a
15
+ * single retrieval hit.
16
+ */
17
+ const DEFAULT_CONFIG = {
18
+ hotThreshold: 0.5,
19
+ warmThreshold: 0.2,
20
+ evictionThreshold: 0.05,
21
+ hysteresis: 0.05,
22
+ };
23
+ /**
24
+ * TemporalCompressor — evaluates and compresses experiences based on access scores
25
+ */
26
+ export class TemporalCompressor {
27
+ config;
28
+ persistence;
29
+ /**
30
+ * Track experiences that were below demotion threshold on the previous pass.
31
+ * Hysteresis: only demote after 2 consecutive passes below threshold.
32
+ */
33
+ pendingDemotion = new Set();
34
+ constructor(options, persistence) {
35
+ this.config = { ...DEFAULT_CONFIG, ...options };
36
+ this.persistence = persistence;
37
+ // Load persisted pending demotions
38
+ if (persistence?.isInitialized) {
39
+ const saved = persistence.getSystemState('temporal_compressor');
40
+ if (saved) {
41
+ this.pendingDemotion = new Set(saved);
42
+ }
43
+ }
44
+ }
45
+ /**
46
+ * Evaluate and compress experiences based on their access scores.
47
+ * Returns a CompressionResult describing all tier changes.
48
+ */
49
+ async compress(experiences) {
50
+ const result = {
51
+ promoted: [],
52
+ demoted: [],
53
+ evicted: [],
54
+ unchanged: [],
55
+ updates: new Map(),
56
+ };
57
+ const newPendingDemotion = new Set();
58
+ for (const exp of experiences) {
59
+ const currentTier = exp.tier ?? 'hot';
60
+ const targetTier = this.computeTargetTier(exp.accessScore);
61
+ if (targetTier === 'evict') {
62
+ // Cold → Evicted
63
+ if (currentTier === 'cold') {
64
+ if (this.pendingDemotion.has(exp.id)) {
65
+ // Second consecutive pass below eviction threshold → evict
66
+ result.evicted.push(exp.id);
67
+ }
68
+ else {
69
+ // First pass below → mark pending
70
+ newPendingDemotion.add(exp.id);
71
+ result.unchanged.push(exp.id);
72
+ }
73
+ }
74
+ else {
75
+ // Not yet cold — demote first (can't skip tiers)
76
+ this.handleDemotion(exp, currentTier, result, newPendingDemotion);
77
+ }
78
+ }
79
+ else if (this.tierOrder(targetTier) < this.tierOrder(currentTier)) {
80
+ // Demotion (hot → warm, warm → cold, hot → cold)
81
+ this.handleDemotion(exp, currentTier, result, newPendingDemotion);
82
+ }
83
+ else if (this.tierOrder(targetTier) > this.tierOrder(currentTier)) {
84
+ // Promotion (cold → warm, warm → hot) — requires score above threshold + hysteresis
85
+ const effectiveScore = exp.accessScore;
86
+ const promotionThreshold = this.getPromotionThreshold(currentTier);
87
+ if (effectiveScore >= promotionThreshold) {
88
+ const nextTier = this.nextHotterTier(currentTier);
89
+ if (nextTier) {
90
+ const promoted = this.promoteTier(exp, nextTier);
91
+ result.promoted.push(exp.id);
92
+ result.updates.set(exp.id, promoted);
93
+ }
94
+ else {
95
+ result.unchanged.push(exp.id);
96
+ }
97
+ }
98
+ else {
99
+ result.unchanged.push(exp.id);
100
+ }
101
+ }
102
+ else {
103
+ result.unchanged.push(exp.id);
104
+ }
105
+ }
106
+ this.pendingDemotion = newPendingDemotion;
107
+ // Persist pending demotions
108
+ if (this.persistence) {
109
+ this.persistence.setSystemState('temporal_compressor', [...this.pendingDemotion]);
110
+ }
111
+ return result;
112
+ }
113
+ /**
114
+ * Load persisted pending demotions. Call after persistence is initialized.
115
+ */
116
+ loadPersistedState() {
117
+ if (this.persistence?.isInitialized) {
118
+ const saved = this.persistence.getSystemState('temporal_compressor');
119
+ if (saved) {
120
+ this.pendingDemotion = new Set(saved);
121
+ }
122
+ }
123
+ }
124
+ /**
125
+ * Compress a single experience from hot → warm.
126
+ * Strips solutionOutput to key steps only.
127
+ */
128
+ compressToWarm(experience) {
129
+ const keySteps = this.extractKeySteps(experience);
130
+ const originalStepCount = this.estimateStepCount(experience);
131
+ return {
132
+ ...experience,
133
+ tier: 'warm',
134
+ solutionOutput: keySteps.join('\n---\n'),
135
+ compressed: {
136
+ keySteps,
137
+ summary: '',
138
+ originalStepCount,
139
+ },
140
+ };
141
+ }
142
+ /**
143
+ * Compress a single experience from warm → cold.
144
+ * Replaces key steps with a single-paragraph summary.
145
+ */
146
+ compressToCold(experience) {
147
+ const summary = this.generateSummary(experience);
148
+ return {
149
+ ...experience,
150
+ tier: 'cold',
151
+ taskInput: experience.taskInput.slice(0, 200),
152
+ solutionOutput: summary,
153
+ feedback: experience.feedback.slice(0, 100),
154
+ compressed: {
155
+ keySteps: experience.compressed?.keySteps ?? [],
156
+ summary,
157
+ originalStepCount: experience.compressed?.originalStepCount ?? this.estimateStepCount(experience),
158
+ },
159
+ };
160
+ }
161
+ // === Internal helpers ===
162
+ /**
163
+ * Determine the target tier for a given access score.
164
+ */
165
+ computeTargetTier(accessScore) {
166
+ if (accessScore >= this.config.hotThreshold)
167
+ return 'hot';
168
+ if (accessScore >= this.config.warmThreshold)
169
+ return 'warm';
170
+ if (accessScore >= this.config.evictionThreshold)
171
+ return 'cold';
172
+ return 'evict';
173
+ }
174
+ /**
175
+ * Numeric ordering for tiers (higher = hotter).
176
+ */
177
+ tierOrder(tier) {
178
+ switch (tier) {
179
+ case 'hot': return 2;
180
+ case 'warm': return 1;
181
+ case 'cold': return 0;
182
+ }
183
+ }
184
+ /**
185
+ * Get the next colder tier.
186
+ */
187
+ nextColderTier(tier) {
188
+ switch (tier) {
189
+ case 'hot': return 'warm';
190
+ case 'warm': return 'cold';
191
+ case 'cold': return undefined;
192
+ }
193
+ }
194
+ /**
195
+ * Get the next hotter tier.
196
+ */
197
+ nextHotterTier(tier) {
198
+ switch (tier) {
199
+ case 'cold': return 'warm';
200
+ case 'warm': return 'hot';
201
+ case 'hot': return undefined;
202
+ }
203
+ }
204
+ /**
205
+ * Get the threshold needed for promotion from a tier (with hysteresis).
206
+ */
207
+ getPromotionThreshold(currentTier) {
208
+ switch (currentTier) {
209
+ case 'cold': return this.config.warmThreshold + this.config.hysteresis;
210
+ case 'warm': return this.config.hotThreshold + this.config.hysteresis;
211
+ case 'hot': return Infinity;
212
+ }
213
+ }
214
+ /**
215
+ * Handle a demotion with hysteresis.
216
+ * Only demote after 2 consecutive passes below threshold.
217
+ */
218
+ handleDemotion(exp, currentTier, result, newPendingDemotion) {
219
+ if (this.pendingDemotion.has(exp.id)) {
220
+ // Second consecutive pass below threshold → demote one step
221
+ const nextTier = this.nextColderTier(currentTier);
222
+ if (nextTier) {
223
+ const compressed = nextTier === 'warm'
224
+ ? this.compressToWarm(exp)
225
+ : this.compressToCold(exp);
226
+ result.demoted.push(exp.id);
227
+ result.updates.set(exp.id, {
228
+ tier: compressed.tier,
229
+ solutionOutput: compressed.solutionOutput,
230
+ taskInput: compressed.taskInput,
231
+ feedback: compressed.feedback,
232
+ compressed: compressed.compressed,
233
+ });
234
+ }
235
+ else {
236
+ result.unchanged.push(exp.id);
237
+ }
238
+ }
239
+ else {
240
+ // First pass below threshold → mark pending
241
+ newPendingDemotion.add(exp.id);
242
+ result.unchanged.push(exp.id);
243
+ }
244
+ }
245
+ /**
246
+ * Promote an experience to a hotter tier.
247
+ * Note: data can't be un-compressed, but the tier changes.
248
+ */
249
+ promoteTier(_exp, targetTier) {
250
+ return { tier: targetTier };
251
+ }
252
+ /**
253
+ * Extract key steps from a solution output.
254
+ * Looks for tool calls, error messages, and outcome-relevant actions.
255
+ */
256
+ extractKeySteps(experience) {
257
+ const output = experience.solutionOutput;
258
+ const keySteps = [];
259
+ // If metadata has trajectory steps, extract from there
260
+ const metadata = experience.metadata;
261
+ const steps = metadata?.steps;
262
+ if (steps && Array.isArray(steps)) {
263
+ for (const step of steps) {
264
+ // Keep steps with high attribution or significant actions
265
+ const isKey = (step.attributionScore !== undefined && step.attributionScore > 0.5) ||
266
+ step.action?.match(/^(Read|Write|Edit|Bash|Grep|Glob)\s/i) ||
267
+ step.observation?.match(/error|fail|success|created|updated/i);
268
+ if (isKey) {
269
+ const parts = [];
270
+ if (step.action)
271
+ parts.push(`Action: ${step.action.slice(0, 150)}`);
272
+ if (step.observation)
273
+ parts.push(`Result: ${step.observation.slice(0, 150)}`);
274
+ keySteps.push(parts.join(' → '));
275
+ }
276
+ }
277
+ }
278
+ // Fallback: split output into paragraphs and keep first/last + error lines
279
+ if (keySteps.length === 0) {
280
+ const lines = output.split('\n').filter((l) => l.trim());
281
+ if (lines.length <= 5) {
282
+ return lines;
283
+ }
284
+ // Keep first line (often the approach), error lines, and last line (outcome)
285
+ keySteps.push(lines[0]);
286
+ for (const line of lines) {
287
+ if (line.match(/error|exception|fail|warning/i) && keySteps.length < 8) {
288
+ keySteps.push(line.slice(0, 200));
289
+ }
290
+ }
291
+ keySteps.push(lines[lines.length - 1]);
292
+ }
293
+ return keySteps.slice(0, 10);
294
+ }
295
+ /**
296
+ * Estimate the original step count from an experience.
297
+ */
298
+ estimateStepCount(experience) {
299
+ const metadata = experience.metadata;
300
+ if (typeof metadata?.stepCount === 'number') {
301
+ return metadata.stepCount;
302
+ }
303
+ const steps = metadata?.steps;
304
+ if (Array.isArray(steps)) {
305
+ return steps.length;
306
+ }
307
+ // Fallback: estimate from output length
308
+ return Math.max(1, Math.ceil(experience.solutionOutput.length / 200));
309
+ }
310
+ /**
311
+ * Generate a one-paragraph summary for cold tier.
312
+ */
313
+ generateSummary(experience) {
314
+ const success = experience.success ? 'Successfully' : 'Failed to';
315
+ const domain = experience.domain;
316
+ const taskSnippet = experience.taskInput.slice(0, 100);
317
+ // Use key steps if available
318
+ const keySteps = experience.compressed?.keySteps;
319
+ if (keySteps && keySteps.length > 0) {
320
+ const stepsSnippet = keySteps
321
+ .slice(0, 3)
322
+ .map((s) => s.slice(0, 80))
323
+ .join('; ');
324
+ return `[${domain}] ${success} complete task: "${taskSnippet}". Key steps: ${stepsSnippet}. ${experience.feedback.slice(0, 100)}`;
325
+ }
326
+ return `[${domain}] ${success} complete task: "${taskSnippet}". ${experience.feedback.slice(0, 150)}`;
327
+ }
328
+ }
329
+ /**
330
+ * Create a TemporalCompressor
331
+ */
332
+ export function createTemporalCompressor(options, persistence) {
333
+ return new TemporalCompressor(options, persistence);
334
+ }
335
+ //# sourceMappingURL=temporal-compressor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temporal-compressor.js","sourceRoot":"","sources":["../../src/memory/temporal-compressor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Persistence module — Unified SQLite database for system-internal state.
3
+ *
4
+ * Agent-accessible data (knowledge notes, published skills) stays as files.
5
+ * This module handles everything else: experiences, playbooks, causal edges,
6
+ * meta state, routing weights, vector embeddings.
7
+ */
8
+ export { SqlitePersistence, createSqlitePersistence, type SqlitePersistenceConfig, type ExperienceRow, type PlaybookRow, type ReflexionRow, type CausalEdgeRow, type MetaObservationRow, type MetaStrategyRow, type SystemStateRow, } from './sqlite-persistence.js';
9
+ export { toISO, fromISO, toJSON, fromJSON, toInt, fromInt, embeddingToBlob, blobToEmbedding, } from './serializers.js';
10
+ export { JsonToSqliteMigrator, runMigration, type MigrationResult, } from './migrator.js';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/persistence/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,cAAc,GACpB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,KAAK,EACL,OAAO,EACP,MAAM,EACN,QAAQ,EACR,KAAK,EACL,OAAO,EACP,eAAe,EACf,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,KAAK,eAAe,GACrB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Persistence module — Unified SQLite database for system-internal state.
3
+ *
4
+ * Agent-accessible data (knowledge notes, published skills) stays as files.
5
+ * This module handles everything else: experiences, playbooks, causal edges,
6
+ * meta state, routing weights, vector embeddings.
7
+ */
8
+ export { SqlitePersistence, createSqlitePersistence, } from './sqlite-persistence.js';
9
+ export { toISO, fromISO, toJSON, fromJSON, toInt, fromInt, embeddingToBlob, blobToEmbedding, } from './serializers.js';
10
+ export { JsonToSqliteMigrator, runMigration, } from './migrator.js';
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/persistence/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,iBAAiB,EACjB,uBAAuB,GASxB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,KAAK,EACL,OAAO,EACP,MAAM,EACN,QAAQ,EACR,KAAK,EACL,OAAO,EACP,eAAe,EACf,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,oBAAoB,EACpB,YAAY,GAEb,MAAM,eAAe,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * JsonToSqliteMigrator — One-time migration from JSON files to unified SQLite.
3
+ *
4
+ * Runs on first init when schema_version is empty.
5
+ * Each collection migrates in its own transaction.
6
+ * Old directories are renamed to {collection}.migrated/ as backup.
7
+ */
8
+ import type { SqlitePersistence } from './sqlite-persistence.js';
9
+ export interface MigrationResult {
10
+ migrated: boolean;
11
+ counts: Record<string, number>;
12
+ }
13
+ export declare class JsonToSqliteMigrator {
14
+ private persistence;
15
+ private baseDir;
16
+ constructor(persistence: SqlitePersistence, baseDir: string);
17
+ /**
18
+ * Run migration if needed (schema_version < 1).
19
+ */
20
+ migrate(): Promise<MigrationResult>;
21
+ /**
22
+ * Migrate a single collection directory (flat or partitioned).
23
+ * Returns the number of items migrated.
24
+ */
25
+ private migrateCollection;
26
+ /**
27
+ * Recursively collect all .json files in a directory (handles partitioned stores).
28
+ */
29
+ private collectJsonFiles;
30
+ private toExperience;
31
+ private toPlaybook;
32
+ private toReflexionEpisode;
33
+ private toMetaObservation;
34
+ private toMetaStrategy;
35
+ }
36
+ /**
37
+ * Create a migrator and run migration.
38
+ */
39
+ export declare function runMigration(persistence: SqlitePersistence, baseDir: string): Promise<MigrationResult>;
40
+ //# sourceMappingURL=migrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrator.d.ts","sourceRoot":"","sources":["../../src/persistence/migrator.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAKjE,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,qBAAa,oBAAoB;IAE7B,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,OAAO;gBADP,WAAW,EAAE,iBAAiB,EAC9B,OAAO,EAAE,MAAM;IAGzB;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,eAAe,CAAC;IAwDzC;;;OAGG;YACW,iBAAiB;IAuD/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA4BxB,OAAO,CAAC,YAAY;IAsBpB,OAAO,CAAC,UAAU;IAuClB,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,iBAAiB;IAoBzB,OAAO,CAAC,cAAc;CAavB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,WAAW,EAAE,iBAAiB,EAC9B,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,eAAe,CAAC,CAG1B"}
@@ -0,0 +1,238 @@
1
+ /**
2
+ * JsonToSqliteMigrator — One-time migration from JSON files to unified SQLite.
3
+ *
4
+ * Runs on first init when schema_version is empty.
5
+ * Each collection migrates in its own transaction.
6
+ * Old directories are renamed to {collection}.migrated/ as backup.
7
+ */
8
+ import { join } from 'node:path';
9
+ import { existsSync, renameSync, readdirSync, statSync } from 'node:fs';
10
+ import { readFile } from 'node:fs/promises';
11
+ export class JsonToSqliteMigrator {
12
+ persistence;
13
+ baseDir;
14
+ constructor(persistence, baseDir) {
15
+ this.persistence = persistence;
16
+ this.baseDir = baseDir;
17
+ }
18
+ /**
19
+ * Run migration if needed (schema_version < 1).
20
+ */
21
+ async migrate() {
22
+ const version = this.persistence.getSchemaVersion();
23
+ if (version >= 1) {
24
+ return { migrated: false, counts: {} };
25
+ }
26
+ const counts = {};
27
+ counts.experiences = await this.migrateCollection('experiences', (data) => this.persistence.insertExperience(this.toExperience(data)));
28
+ counts.playbooks = await this.migrateCollection('playbooks', (data) => this.persistence.insertPlaybook(this.toPlaybook(data)));
29
+ counts.reflexionEpisodes = await this.migrateCollection('reflexion-episodes', (data) => this.persistence.insertReflexionEpisode(this.toReflexionEpisode(data)));
30
+ counts.causalEdges = await this.migrateCollection('causal-edges', (data) => {
31
+ const edge = data;
32
+ this.persistence.insertCausalEdge({
33
+ id: edge.id,
34
+ cause: edge.cause,
35
+ effect: edge.effect,
36
+ confidence: edge.confidence,
37
+ domain: edge.domain,
38
+ sourceTrajectoryIds: (edge.sourceTrajectoryIds ?? []),
39
+ observedCount: (edge.observedCount ?? 1),
40
+ createdAt: new Date(edge.createdAt),
41
+ updatedAt: new Date(edge.updatedAt),
42
+ });
43
+ });
44
+ counts.metaObservations = await this.migrateCollection('meta-observations', (data) => this.persistence.insertMetaObservation(this.toMetaObservation(data)));
45
+ counts.metaStrategies = await this.migrateCollection('meta-strategies', (data) => this.persistence.insertMetaStrategy(this.toMetaStrategy(data)));
46
+ this.persistence.setSchemaVersion(1);
47
+ return { migrated: true, counts };
48
+ }
49
+ /**
50
+ * Migrate a single collection directory (flat or partitioned).
51
+ * Returns the number of items migrated.
52
+ */
53
+ async migrateCollection(collection, inserter) {
54
+ const dir = join(this.baseDir, collection);
55
+ if (!existsSync(dir))
56
+ return 0;
57
+ const jsonFiles = this.collectJsonFiles(dir);
58
+ if (jsonFiles.length === 0)
59
+ return 0;
60
+ let count = 0;
61
+ // Insert in batches within a transaction
62
+ const BATCH_SIZE = 100;
63
+ for (let i = 0; i < jsonFiles.length; i += BATCH_SIZE) {
64
+ const batch = jsonFiles.slice(i, i + BATCH_SIZE);
65
+ const batchData = [];
66
+ for (const filePath of batch) {
67
+ try {
68
+ const content = await readFile(filePath, 'utf-8');
69
+ const data = JSON.parse(content);
70
+ batchData.push(data);
71
+ }
72
+ catch {
73
+ // Skip unparseable files
74
+ }
75
+ }
76
+ if (batchData.length > 0) {
77
+ this.persistence.transaction(() => {
78
+ for (const data of batchData) {
79
+ try {
80
+ inserter(data);
81
+ count++;
82
+ }
83
+ catch {
84
+ // Skip items that fail to insert
85
+ }
86
+ }
87
+ });
88
+ }
89
+ }
90
+ // Rename directory as backup
91
+ const backupDir = `${dir}.migrated`;
92
+ if (!existsSync(backupDir)) {
93
+ try {
94
+ renameSync(dir, backupDir);
95
+ }
96
+ catch {
97
+ // Non-fatal: backup rename failure doesn't block migration
98
+ }
99
+ }
100
+ return count;
101
+ }
102
+ /**
103
+ * Recursively collect all .json files in a directory (handles partitioned stores).
104
+ */
105
+ collectJsonFiles(dir) {
106
+ const files = [];
107
+ try {
108
+ const entries = readdirSync(dir);
109
+ for (const entry of entries) {
110
+ if (entry.startsWith('_'))
111
+ continue; // Skip _index.json, _global metadata
112
+ const fullPath = join(dir, entry);
113
+ const st = statSync(fullPath);
114
+ if (st.isDirectory()) {
115
+ // Recurse into partition directories
116
+ files.push(...this.collectJsonFiles(fullPath));
117
+ }
118
+ else if (entry.endsWith('.json')) {
119
+ files.push(fullPath);
120
+ }
121
+ }
122
+ }
123
+ catch {
124
+ // Directory read failure
125
+ }
126
+ return files;
127
+ }
128
+ // ==========================================================================
129
+ // Type coercion helpers (JSON data → typed objects)
130
+ // ==========================================================================
131
+ toExperience(data) {
132
+ const d = data;
133
+ return {
134
+ id: d.id,
135
+ taskInput: d.taskInput,
136
+ solutionOutput: d.solutionOutput,
137
+ feedback: d.feedback,
138
+ success: d.success,
139
+ domain: d.domain,
140
+ embedding: d.embedding,
141
+ trajectoryId: d.trajectoryId,
142
+ usageCount: (d.usageCount ?? 0),
143
+ accessScore: (d.accessScore ?? 0),
144
+ retrievalCount: (d.retrievalCount ?? 0),
145
+ tier: (d.tier ?? 'hot'),
146
+ compressed: d.compressed,
147
+ metadata: (d.metadata ?? {}),
148
+ createdAt: new Date(d.createdAt),
149
+ lastAccessedAt: d.lastAccessedAt ? new Date(d.lastAccessedAt) : undefined,
150
+ };
151
+ }
152
+ toPlaybook(data) {
153
+ const d = data;
154
+ const evolution = d.evolution ?? {};
155
+ const provenance = d.provenance;
156
+ return {
157
+ id: d.id,
158
+ name: d.name,
159
+ applicability: d.applicability,
160
+ guidance: d.guidance,
161
+ verification: (d.verification ?? { successIndicators: [], failureIndicators: [] }),
162
+ evolution: {
163
+ ...evolution,
164
+ version: (evolution.version ?? '1.0.0'),
165
+ createdFrom: (evolution.createdFrom ?? []),
166
+ failures: (evolution.failures ?? []),
167
+ refinements: (evolution.refinements ?? []),
168
+ successCount: (evolution.successCount ?? 0),
169
+ failureCount: (evolution.failureCount ?? 0),
170
+ lastUsed: evolution.lastUsed ? new Date(evolution.lastUsed) : undefined,
171
+ consolidationStrength: evolution.consolidationStrength,
172
+ domainBreadth: evolution.domainBreadth,
173
+ },
174
+ provenance: provenance ? {
175
+ origin: provenance.origin,
176
+ sourceFile: provenance.sourceFile,
177
+ importedFrom: provenance.importedFrom,
178
+ curatedBy: provenance.curatedBy,
179
+ recordedAt: new Date(provenance.recordedAt),
180
+ } : undefined,
181
+ confidence: (d.confidence ?? 0.3),
182
+ complexity: (d.complexity ?? 'moderate'),
183
+ estimatedEffort: (d.estimatedEffort ?? 3),
184
+ embedding: d.embedding,
185
+ createdAt: new Date(d.createdAt),
186
+ updatedAt: new Date(d.updatedAt),
187
+ };
188
+ }
189
+ toReflexionEpisode(data) {
190
+ const d = data;
191
+ return {
192
+ id: d.id,
193
+ trajectoryId: d.trajectoryId,
194
+ taskSummary: d.taskSummary,
195
+ outcome: d.outcome,
196
+ selfCritique: d.selfCritique,
197
+ keyInsights: (d.keyInsights ?? []),
198
+ strategyAssessment: d.strategyAssessment,
199
+ suggestedPlaybookUpdates: (d.suggestedPlaybookUpdates ?? []),
200
+ domain: d.domain,
201
+ createdAt: new Date(d.createdAt),
202
+ };
203
+ }
204
+ toMetaObservation(data) {
205
+ const d = data;
206
+ return {
207
+ id: d.id,
208
+ trajectoryId: d.trajectoryId,
209
+ routing: d.routing,
210
+ memoryUsage: (d.memoryUsage ?? { experiencesRetrieved: 0, playbooksApplied: [], retrievalQuality: 'neutral' }),
211
+ execution: (d.execution ?? { decompositionUsed: false, refinementIterations: 0, backtrackingOccurred: false, toolsUsed: [] }),
212
+ outcome: d.outcome,
213
+ lessons: (d.lessons ?? { whatWorked: [], whatFailed: [], suggestions: [] }),
214
+ timestamp: new Date(d.timestamp ?? new Date().toISOString()),
215
+ };
216
+ }
217
+ toMetaStrategy(data) {
218
+ const d = data;
219
+ return {
220
+ id: d.id,
221
+ name: d.name,
222
+ condition: d.condition,
223
+ adjustment: d.adjustment,
224
+ applicationCount: (d.applicationCount ?? 0),
225
+ successRate: (d.successRate ?? 0),
226
+ createdAt: new Date(d.createdAt),
227
+ updatedAt: new Date(d.updatedAt),
228
+ };
229
+ }
230
+ }
231
+ /**
232
+ * Create a migrator and run migration.
233
+ */
234
+ export async function runMigration(persistence, baseDir) {
235
+ const migrator = new JsonToSqliteMigrator(persistence, baseDir);
236
+ return migrator.migrate();
237
+ }
238
+ //# sourceMappingURL=migrator.js.map