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,44 @@
1
+ export interface GitReaderOptions {
2
+ repoPath: string;
3
+ branch?: string;
4
+ /** Trailer keys to search for checkpoint IDs in commit messages.
5
+ * Defaults to ['Sessionlog-Checkpoint']. */
6
+ trailerKeys?: string[];
7
+ }
8
+ export declare class CheckpointGitReader {
9
+ readonly repoPath: string;
10
+ readonly branch: string;
11
+ private trailerKeys;
12
+ constructor(options: GitReaderOptions);
13
+ /** Check if the orphan branch exists in this repo */
14
+ branchExists(): Promise<boolean>;
15
+ /**
16
+ * List all checkpoint directories.
17
+ * Returns paths like ["a3/b2c4d5e6f7", "f1/0a9b8c7d6e5f", ...]
18
+ */
19
+ listCheckpoints(): Promise<string[]>;
20
+ /**
21
+ * List session subdirectories within a checkpoint.
22
+ * Returns numeric session indices like ["0", "1"].
23
+ */
24
+ listSessions(checkpointPath: string): Promise<string[]>;
25
+ /** Read a single file from the orphan branch */
26
+ readFile(path: string): Promise<string>;
27
+ /**
28
+ * Read multiple files in batch.
29
+ * Returns Map<path, content>. Missing files are omitted.
30
+ */
31
+ readFiles(paths: string[]): Promise<Map<string, string>>;
32
+ /** Read a file, returning null if it doesn't exist */
33
+ readFileOrNull(path: string): Promise<string | null>;
34
+ /** Get the HEAD commit SHA of the orphan branch */
35
+ getBranchHead(): Promise<string | null>;
36
+ /**
37
+ * Find a checkpoint trailer value for a given commit.
38
+ * Tries each configured trailer key in order.
39
+ * Returns the checkpoint ID or null.
40
+ */
41
+ getCheckpointTrailer(commitSha: string): Promise<string | null>;
42
+ private git;
43
+ }
44
+ //# sourceMappingURL=git-reader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-reader.d.ts","sourceRoot":"","sources":["../../src/session-bank/git-reader.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;iDAC6C;IAC7C,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,qBAAa,mBAAmB;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,WAAW,CAAW;gBAElB,OAAO,EAAE,gBAAgB;IAMrC,qDAAqD;IAC/C,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAStC;;;OAGG;IACG,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAyC1C;;;OAGG;IACG,YAAY,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAwB7D,gDAAgD;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI7C;;;OAGG;IACG,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAoB9D,sDAAsD;IAChD,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAQ1D,mDAAmD;IAC7C,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAS7C;;;;OAIG;IACG,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAoBrE,OAAO,CAAC,GAAG;CAgBZ"}
@@ -0,0 +1,172 @@
1
+ import { execFile } from 'node:child_process';
2
+ export class CheckpointGitReader {
3
+ repoPath;
4
+ branch;
5
+ trailerKeys;
6
+ constructor(options) {
7
+ this.repoPath = options.repoPath;
8
+ this.branch = options.branch ?? 'sessionlog/checkpoints/v1';
9
+ this.trailerKeys = options.trailerKeys ?? ['Sessionlog-Checkpoint'];
10
+ }
11
+ /** Check if the orphan branch exists in this repo */
12
+ async branchExists() {
13
+ try {
14
+ await this.git(['rev-parse', '--verify', this.branch]);
15
+ return true;
16
+ }
17
+ catch {
18
+ return false;
19
+ }
20
+ }
21
+ /**
22
+ * List all checkpoint directories.
23
+ * Returns paths like ["a3/b2c4d5e6f7", "f1/0a9b8c7d6e5f", ...]
24
+ */
25
+ async listCheckpoints() {
26
+ // First list shard directories (2-char hex prefixes)
27
+ let shardOutput;
28
+ try {
29
+ shardOutput = await this.git([
30
+ 'ls-tree',
31
+ '--name-only',
32
+ this.branch,
33
+ ]);
34
+ }
35
+ catch {
36
+ return [];
37
+ }
38
+ const shards = shardOutput
39
+ .split('\n')
40
+ .map((s) => s.trim())
41
+ .filter((s) => s.length > 0);
42
+ // For each shard, list checkpoint subdirectories
43
+ const checkpoints = [];
44
+ for (const shard of shards) {
45
+ try {
46
+ const innerOutput = await this.git([
47
+ 'ls-tree',
48
+ '--name-only',
49
+ this.branch,
50
+ shard + '/',
51
+ ]);
52
+ const entries = innerOutput
53
+ .split('\n')
54
+ .map((e) => e.trim())
55
+ .filter((e) => e.length > 0);
56
+ checkpoints.push(...entries);
57
+ }
58
+ catch {
59
+ // Skip shards that fail to list
60
+ }
61
+ }
62
+ return checkpoints;
63
+ }
64
+ /**
65
+ * List session subdirectories within a checkpoint.
66
+ * Returns numeric session indices like ["0", "1"].
67
+ */
68
+ async listSessions(checkpointPath) {
69
+ try {
70
+ const output = await this.git([
71
+ 'ls-tree',
72
+ '--name-only',
73
+ this.branch,
74
+ checkpointPath + '/',
75
+ ]);
76
+ return output
77
+ .split('\n')
78
+ .map((e) => e.trim())
79
+ .filter((e) => e.length > 0)
80
+ // Extract just the directory name from the full path
81
+ .map((e) => {
82
+ const parts = e.split('/');
83
+ return parts[parts.length - 1];
84
+ })
85
+ // Keep only numeric directories (sessions), skip "tasks", "metadata.json" etc.
86
+ .filter((e) => /^\d+$/.test(e));
87
+ }
88
+ catch {
89
+ return [];
90
+ }
91
+ }
92
+ /** Read a single file from the orphan branch */
93
+ async readFile(path) {
94
+ return this.git(['show', `${this.branch}:${path}`]);
95
+ }
96
+ /**
97
+ * Read multiple files in batch.
98
+ * Returns Map<path, content>. Missing files are omitted.
99
+ */
100
+ async readFiles(paths) {
101
+ const result = new Map();
102
+ // Use parallel readFile calls (git show is fast for individual files)
103
+ const settled = await Promise.allSettled(paths.map(async (path) => {
104
+ const content = await this.readFileOrNull(path);
105
+ return { path, content };
106
+ }));
107
+ for (const entry of settled) {
108
+ if (entry.status === 'fulfilled' && entry.value.content !== null) {
109
+ result.set(entry.value.path, entry.value.content);
110
+ }
111
+ }
112
+ return result;
113
+ }
114
+ /** Read a file, returning null if it doesn't exist */
115
+ async readFileOrNull(path) {
116
+ try {
117
+ return await this.readFile(path);
118
+ }
119
+ catch {
120
+ return null;
121
+ }
122
+ }
123
+ /** Get the HEAD commit SHA of the orphan branch */
124
+ async getBranchHead() {
125
+ try {
126
+ const sha = await this.git(['rev-parse', this.branch]);
127
+ return sha.trim();
128
+ }
129
+ catch {
130
+ return null;
131
+ }
132
+ }
133
+ /**
134
+ * Find a checkpoint trailer value for a given commit.
135
+ * Tries each configured trailer key in order.
136
+ * Returns the checkpoint ID or null.
137
+ */
138
+ async getCheckpointTrailer(commitSha) {
139
+ for (const key of this.trailerKeys) {
140
+ try {
141
+ const output = await this.git([
142
+ 'log',
143
+ `--format=%(trailers:key=${key},valueonly)`,
144
+ commitSha,
145
+ '-1',
146
+ ]);
147
+ const value = output.trim();
148
+ if (value)
149
+ return value;
150
+ }
151
+ catch {
152
+ // Try next key
153
+ }
154
+ }
155
+ return null;
156
+ }
157
+ // ── Private ──────────────────────────────────────────────────
158
+ git(args) {
159
+ return new Promise((resolve, reject) => {
160
+ execFile('git', ['-C', this.repoPath, ...args], { maxBuffer: 100 * 1024 * 1024 }, // 100MB for large transcripts
161
+ (error, stdout, stderr) => {
162
+ if (error) {
163
+ reject(new Error(`git ${args[0]} failed: ${stderr || error.message}`));
164
+ }
165
+ else {
166
+ resolve(stdout);
167
+ }
168
+ });
169
+ });
170
+ }
171
+ }
172
+ //# sourceMappingURL=git-reader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-reader.js","sourceRoot":"","sources":["../../src/session-bank/git-reader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export { SessionBank } from './session-bank.js';
2
+ export { CheckpointGitReader, type GitReaderOptions } from './git-reader.js';
3
+ export { CheckpointParser, detectFormat, type CheckpointFormat, type ParsedMetadata, } from './parser.js';
4
+ export type { SessionRecord, SessionMetadata, TranscriptMessage, ContentBlock, TextBlock, ToolUseBlock, ToolResultBlock, SessionSummary, TokenUsage, Attribution, SessionSource, CheckpointRef, SessionQuery, SessionQueryResult, ProcessingLogEntry, SessionBankOptions, } from './types.js';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/session-bank/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,KAAK,gBAAgB,EACrB,KAAK,cAAc,GACpB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,eAAe,EACf,cAAc,EACd,UAAU,EACV,WAAW,EACX,aAAa,EACb,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { SessionBank } from './session-bank.js';
2
+ export { CheckpointGitReader } from './git-reader.js';
3
+ export { CheckpointParser, detectFormat, } from './parser.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/session-bank/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAyB,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EACL,gBAAgB,EAChB,YAAY,GAGb,MAAM,aAAa,CAAC"}
@@ -0,0 +1,50 @@
1
+ import type { SessionRecord, SessionMetadata, TranscriptMessage, SessionSummary, TokenUsage, Attribution, CheckpointRef } from './types.js';
2
+ export type CheckpointFormat = 'entire' | 'sessionlog' | 'unknown';
3
+ /** Auto-detect whether raw metadata JSON is Entire CLI or SessionLog format. */
4
+ export declare function detectFormat(raw: Record<string, unknown>): CheckpointFormat;
5
+ export interface ParsedMetadata {
6
+ sessionId: string;
7
+ checkpointId: string;
8
+ metadata: SessionMetadata;
9
+ summary?: SessionSummary;
10
+ tokenUsage: TokenUsage;
11
+ attribution?: Attribution;
12
+ format: CheckpointFormat;
13
+ }
14
+ export declare class CheckpointParser {
15
+ /**
16
+ * Parse a full session from its component files.
17
+ */
18
+ parseSession(metadataJson: string, transcriptJsonl: string, checkpointPath: string, sessionIndex: string, sourceBranch?: string): SessionRecord;
19
+ /**
20
+ * Parse per-session metadata.json (fast path — no transcript).
21
+ * Auto-detects Entire (snake_case) vs SessionLog (camelCase) format.
22
+ */
23
+ parseMetadata(metadataJson: string): ParsedMetadata;
24
+ /**
25
+ * Parse a JSONL transcript into structured messages.
26
+ * Tolerant of malformed lines — skips them silently.
27
+ * Handles both Entire ("human") and SessionLog ("user") role types.
28
+ */
29
+ parseTranscript(jsonlContent: string): TranscriptMessage[];
30
+ /**
31
+ * Parse chunked transcripts (full.jsonl.001, .002, etc.)
32
+ */
33
+ parseChunkedTranscript(chunks: string[]): TranscriptMessage[];
34
+ /**
35
+ * Parse the root checkpoint summary to discover session subdirectories.
36
+ */
37
+ parseCheckpointSummary(metadataJson: string, checkpointPath: string): CheckpointRef;
38
+ private parseEntireMetadata;
39
+ private parseEntireTokenUsage;
40
+ private parseEntireSummary;
41
+ private parseEntireAttribution;
42
+ private parseSessionLogMetadata;
43
+ private parseSessionLogTokenUsage;
44
+ private parseSessionLogSummary;
45
+ private parseSessionLogAttribution;
46
+ private parseTranscriptLine;
47
+ private parseContentBlock;
48
+ private checkpointIdFromPath;
49
+ }
50
+ //# sourceMappingURL=parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/session-bank/parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,iBAAiB,EAEjB,cAAc,EACd,UAAU,EACV,WAAW,EACX,aAAa,EACd,MAAM,YAAY,CAAC;AAIpB,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,YAAY,GAAG,SAAS,CAAC;AAEnE,gFAAgF;AAChF,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAM3E;AAoJD,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,eAAe,CAAC;IAC1B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED,qBAAa,gBAAgB;IAC3B;;OAEG;IACH,YAAY,CACV,YAAY,EAAE,MAAM,EACpB,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,EACpB,YAAY,CAAC,EAAE,MAAM,GACpB,aAAa;IAoBhB;;;OAGG;IACH,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc;IAUnD;;;;OAIG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,iBAAiB,EAAE;IAoB1D;;OAEG;IACH,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE;IAK7D;;OAEG;IACH,sBAAsB,CACpB,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,GACrB,aAAa;IAehB,OAAO,CAAC,mBAAmB;IA4B3B,OAAO,CAAC,qBAAqB;IAiC7B,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,sBAAsB;IAa9B,OAAO,CAAC,uBAAuB;IA4B/B,OAAO,CAAC,yBAAyB;IAkCjC,OAAO,CAAC,sBAAsB;IAoB9B,OAAO,CAAC,0BAA0B;IAalC,OAAO,CAAC,mBAAmB;IAuD3B,OAAO,CAAC,iBAAiB;IAuBzB,OAAO,CAAC,oBAAoB;CAQ7B"}
@@ -0,0 +1,338 @@
1
+ /** Auto-detect whether raw metadata JSON is Entire CLI or SessionLog format. */
2
+ export function detectFormat(raw) {
3
+ if ('checkpointID' in raw)
4
+ return 'sessionlog';
5
+ if ('checkpoint_id' in raw)
6
+ return 'entire';
7
+ if (raw.cliVersion === 'opentasks-sessionlog')
8
+ return 'sessionlog';
9
+ if (typeof raw.cli_version === 'string')
10
+ return 'entire';
11
+ return 'unknown';
12
+ }
13
+ export class CheckpointParser {
14
+ /**
15
+ * Parse a full session from its component files.
16
+ */
17
+ parseSession(metadataJson, transcriptJsonl, checkpointPath, sessionIndex, sourceBranch) {
18
+ const parsed = this.parseMetadata(metadataJson);
19
+ const transcript = this.parseTranscript(transcriptJsonl);
20
+ return {
21
+ sessionId: parsed.sessionId,
22
+ checkpointId: parsed.checkpointId,
23
+ metadata: parsed.metadata,
24
+ transcript,
25
+ summary: parsed.summary,
26
+ tokenUsage: parsed.tokenUsage,
27
+ attribution: parsed.attribution,
28
+ source: {
29
+ branch: sourceBranch ?? 'sessionlog/checkpoints/v1',
30
+ checkpointPath,
31
+ sessionIndex,
32
+ },
33
+ };
34
+ }
35
+ /**
36
+ * Parse per-session metadata.json (fast path — no transcript).
37
+ * Auto-detects Entire (snake_case) vs SessionLog (camelCase) format.
38
+ */
39
+ parseMetadata(metadataJson) {
40
+ const raw = JSON.parse(metadataJson);
41
+ const format = detectFormat(raw);
42
+ if (format === 'sessionlog') {
43
+ return this.parseSessionLogMetadata(raw);
44
+ }
45
+ return this.parseEntireMetadata(raw);
46
+ }
47
+ /**
48
+ * Parse a JSONL transcript into structured messages.
49
+ * Tolerant of malformed lines — skips them silently.
50
+ * Handles both Entire ("human") and SessionLog ("user") role types.
51
+ */
52
+ parseTranscript(jsonlContent) {
53
+ const messages = [];
54
+ const lines = jsonlContent.split('\n');
55
+ for (let i = 0; i < lines.length; i++) {
56
+ const line = lines[i].trim();
57
+ if (!line)
58
+ continue;
59
+ try {
60
+ const raw = JSON.parse(line);
61
+ const msg = this.parseTranscriptLine(raw, i);
62
+ if (msg)
63
+ messages.push(msg);
64
+ }
65
+ catch {
66
+ // Skip malformed lines
67
+ }
68
+ }
69
+ return messages;
70
+ }
71
+ /**
72
+ * Parse chunked transcripts (full.jsonl.001, .002, etc.)
73
+ */
74
+ parseChunkedTranscript(chunks) {
75
+ const combined = chunks.join('\n');
76
+ return this.parseTranscript(combined);
77
+ }
78
+ /**
79
+ * Parse the root checkpoint summary to discover session subdirectories.
80
+ */
81
+ parseCheckpointSummary(metadataJson, checkpointPath) {
82
+ const raw = JSON.parse(metadataJson);
83
+ const sessions = raw.sessions ?? [];
84
+ const checkpointId = this.checkpointIdFromPath(checkpointPath);
85
+ return {
86
+ checkpointId,
87
+ sessionIds: [], // populated later from per-session metadata
88
+ path: checkpointPath,
89
+ sessionCount: sessions.length,
90
+ };
91
+ }
92
+ // ── Entire format parsing (snake_case) ────────────────────────
93
+ parseEntireMetadata(raw) {
94
+ const tokenUsage = this.parseEntireTokenUsage(raw.token_usage);
95
+ const summary = raw.summary ? this.parseEntireSummary(raw.summary) : undefined;
96
+ const attribution = raw.initial_attribution
97
+ ? this.parseEntireAttribution(raw.initial_attribution)
98
+ : undefined;
99
+ return {
100
+ sessionId: raw.session_id ?? '',
101
+ checkpointId: raw.checkpoint_id ?? '',
102
+ metadata: {
103
+ cliVersion: raw.cli_version ?? '',
104
+ strategy: raw.strategy === 'auto-commit' ? 'auto-commit' : 'manual-commit',
105
+ createdAt: raw.created_at ? new Date(raw.created_at) : new Date(0),
106
+ branch: raw.branch ?? '',
107
+ agent: raw.agent ?? '',
108
+ filesTouched: raw.files_touched ?? [],
109
+ isTask: raw.is_task ?? false,
110
+ toolUseId: raw.tool_use_id,
111
+ checkpointTranscriptStart: raw.checkpoint_transcript_start ?? 0,
112
+ },
113
+ summary,
114
+ tokenUsage,
115
+ attribution,
116
+ format: 'entire',
117
+ };
118
+ }
119
+ parseEntireTokenUsage(raw) {
120
+ if (!raw) {
121
+ return {
122
+ inputTokens: 0,
123
+ cacheCreationTokens: 0,
124
+ cacheReadTokens: 0,
125
+ outputTokens: 0,
126
+ apiCallCount: 0,
127
+ total: 0,
128
+ };
129
+ }
130
+ const inputTokens = raw.input_tokens ?? 0;
131
+ const cacheCreationTokens = raw.cache_creation_tokens ?? 0;
132
+ const cacheReadTokens = raw.cache_read_tokens ?? 0;
133
+ const outputTokens = raw.output_tokens ?? 0;
134
+ const apiCallCount = raw.api_call_count ?? 0;
135
+ const subagentUsage = raw.subagent_usage?.map((s) => this.parseEntireTokenUsage(s));
136
+ return {
137
+ inputTokens,
138
+ cacheCreationTokens,
139
+ cacheReadTokens,
140
+ outputTokens,
141
+ apiCallCount,
142
+ subagentUsage,
143
+ total: inputTokens + cacheCreationTokens + cacheReadTokens + outputTokens,
144
+ };
145
+ }
146
+ parseEntireSummary(raw) {
147
+ return {
148
+ intent: raw.intent ?? '',
149
+ outcome: raw.outcome ?? '',
150
+ learnings: {
151
+ repoPatterns: raw.learnings?.repo_patterns ?? [],
152
+ codeFindings: raw.learnings?.code_findings ?? [],
153
+ workflowPractices: raw.learnings?.workflow_practices ?? [],
154
+ },
155
+ frictionPoints: raw.friction_points ?? [],
156
+ openItems: raw.open_items ?? [],
157
+ };
158
+ }
159
+ parseEntireAttribution(raw) {
160
+ return {
161
+ agentLinesAdded: raw.agent_lines_added ?? 0,
162
+ humanAdditions: raw.human_additions ?? 0,
163
+ humanModifications: raw.human_modifications ?? 0,
164
+ humanRemovals: raw.human_removals ?? 0,
165
+ totalCommittedLines: raw.total_committed_lines ?? 0,
166
+ agentContribution: raw.agent_contribution ?? 0,
167
+ };
168
+ }
169
+ // ── SessionLog format parsing (camelCase) ─────────────────────
170
+ parseSessionLogMetadata(raw) {
171
+ const tokenUsage = this.parseSessionLogTokenUsage(raw.tokenUsage);
172
+ const summary = raw.summary ? this.parseSessionLogSummary(raw.summary) : undefined;
173
+ const attribution = raw.initialAttribution
174
+ ? this.parseSessionLogAttribution(raw.initialAttribution)
175
+ : undefined;
176
+ return {
177
+ sessionId: raw.sessionID ?? '',
178
+ checkpointId: raw.checkpointID ?? '',
179
+ metadata: {
180
+ cliVersion: raw.cliVersion ?? '',
181
+ strategy: raw.strategy === 'auto-commit' ? 'auto-commit' : 'manual-commit',
182
+ createdAt: raw.createdAt ? new Date(raw.createdAt) : new Date(0),
183
+ branch: raw.branch ?? '',
184
+ agent: raw.agent ?? '',
185
+ filesTouched: raw.filesTouched ?? [],
186
+ isTask: raw.isTask ?? false,
187
+ toolUseId: raw.toolUseID,
188
+ checkpointTranscriptStart: raw.checkpointTranscriptStart ?? 0,
189
+ },
190
+ summary,
191
+ tokenUsage,
192
+ attribution,
193
+ format: 'sessionlog',
194
+ };
195
+ }
196
+ parseSessionLogTokenUsage(raw) {
197
+ if (!raw) {
198
+ return {
199
+ inputTokens: 0,
200
+ cacheCreationTokens: 0,
201
+ cacheReadTokens: 0,
202
+ outputTokens: 0,
203
+ apiCallCount: 0,
204
+ total: 0,
205
+ };
206
+ }
207
+ const inputTokens = raw.inputTokens ?? 0;
208
+ const cacheCreationTokens = raw.cacheCreationTokens ?? 0;
209
+ const cacheReadTokens = raw.cacheReadTokens ?? 0;
210
+ const outputTokens = raw.outputTokens ?? 0;
211
+ const apiCallCount = raw.apiCallCount ?? 0;
212
+ // SessionLog uses single subagentTokens object; wrap in array for compatibility
213
+ const subagentUsage = raw.subagentTokens
214
+ ? [this.parseSessionLogTokenUsage(raw.subagentTokens)]
215
+ : undefined;
216
+ return {
217
+ inputTokens,
218
+ cacheCreationTokens,
219
+ cacheReadTokens,
220
+ outputTokens,
221
+ apiCallCount,
222
+ subagentUsage,
223
+ total: inputTokens + cacheCreationTokens + cacheReadTokens + outputTokens,
224
+ };
225
+ }
226
+ parseSessionLogSummary(raw) {
227
+ // SessionLog uses learnings.code as CodeLearning[] — normalize to string[]
228
+ const codeFindings = (raw.learnings?.code ?? []).map((cl) => {
229
+ const loc = cl.line ? `${cl.path}:${cl.line}` : cl.path;
230
+ return `${loc} - ${cl.finding}`;
231
+ });
232
+ return {
233
+ intent: raw.intent ?? '',
234
+ outcome: raw.outcome ?? '',
235
+ learnings: {
236
+ repoPatterns: raw.learnings?.repo ?? [],
237
+ codeFindings,
238
+ workflowPractices: raw.learnings?.workflow ?? [],
239
+ },
240
+ frictionPoints: raw.friction ?? [],
241
+ openItems: raw.openItems ?? [],
242
+ };
243
+ }
244
+ parseSessionLogAttribution(raw) {
245
+ return {
246
+ agentLinesAdded: raw.agentLines ?? 0,
247
+ humanAdditions: raw.humanAdded ?? 0,
248
+ humanModifications: raw.humanModified ?? 0,
249
+ humanRemovals: raw.humanRemoved ?? 0,
250
+ totalCommittedLines: raw.totalCommitted ?? 0,
251
+ agentContribution: raw.agentPercentage ?? 0,
252
+ };
253
+ }
254
+ // ── Transcript parsing (shared — works for both formats) ──────
255
+ parseTranscriptLine(raw, lineIndex) {
256
+ // Map Entire CLI's "human" → "user", keep "assistant" as-is.
257
+ // SessionLog always uses "user". Both handled here.
258
+ let role;
259
+ if (raw.type === 'user' || raw.type === 'human') {
260
+ role = 'user';
261
+ }
262
+ else if (raw.type === 'assistant') {
263
+ role = 'assistant';
264
+ }
265
+ else if (raw.type === 'tool_result') {
266
+ // Entire CLI emits tool_result as a top-level JSONL line.
267
+ // Wrap it as a user message containing a tool_result block.
268
+ const toolResultBlock = {
269
+ type: 'tool_result',
270
+ toolUseId: raw.tool_use_id ?? '',
271
+ content: typeof raw.content === 'string'
272
+ ? raw.content
273
+ : Array.isArray(raw.content)
274
+ ? raw.content
275
+ .filter((b) => b.type === 'text')
276
+ .map((b) => b.text ?? '')
277
+ .join('\n')
278
+ : '',
279
+ isError: raw.is_error,
280
+ };
281
+ return {
282
+ role: 'user',
283
+ uuid: raw.uuid ?? `line-${lineIndex}`,
284
+ content: [toolResultBlock],
285
+ lineIndex,
286
+ };
287
+ }
288
+ else {
289
+ return null;
290
+ }
291
+ const uuid = raw.uuid ?? `line-${lineIndex}`;
292
+ const rawContent = raw.message?.content;
293
+ let content;
294
+ if (typeof rawContent === 'string') {
295
+ content = [{ type: 'text', text: rawContent }];
296
+ }
297
+ else if (Array.isArray(rawContent)) {
298
+ content = rawContent
299
+ .map((block) => this.parseContentBlock(block))
300
+ .filter((b) => b !== null);
301
+ }
302
+ else {
303
+ content = [];
304
+ }
305
+ return { role, uuid, content, lineIndex };
306
+ }
307
+ parseContentBlock(raw) {
308
+ switch (raw.type) {
309
+ case 'text':
310
+ return { type: 'text', text: raw.text ?? '' };
311
+ case 'tool_use':
312
+ return {
313
+ type: 'tool_use',
314
+ id: raw.id ?? '',
315
+ name: raw.name ?? '',
316
+ input: raw.input ?? {},
317
+ };
318
+ case 'tool_result':
319
+ return {
320
+ type: 'tool_result',
321
+ toolUseId: raw.tool_use_id ?? '',
322
+ content: raw.content ?? '',
323
+ isError: raw.is_error,
324
+ };
325
+ default:
326
+ return null;
327
+ }
328
+ }
329
+ checkpointIdFromPath(path) {
330
+ // Path is "<shard>/<rest>" → checkpoint ID is shard + rest
331
+ const parts = path.split('/');
332
+ if (parts.length >= 2) {
333
+ return parts[0] + parts[1];
334
+ }
335
+ return path;
336
+ }
337
+ }
338
+ //# sourceMappingURL=parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/session-bank/parser.ts"],"names":[],"mappings":"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"}