squish-memory 1.2.0 → 1.2.1

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 (449) hide show
  1. package/bin/squish-mcp.mjs +40 -42
  2. package/core/scheduler/cron-scheduler.ts +10 -1
  3. package/core/worker.ts +10 -1
  4. package/package.json +119 -119
  5. package/packages/mcp/src/index.ts +99 -36
  6. package/dist/config.d.ts +0 -106
  7. package/dist/config.js +0 -194
  8. package/dist/core/adapters/config/claude-code.d.ts +0 -45
  9. package/dist/core/adapters/config/claude-code.js +0 -113
  10. package/dist/core/adapters/config/cursor.d.ts +0 -26
  11. package/dist/core/adapters/config/cursor.js +0 -74
  12. package/dist/core/adapters/config/opencode.d.ts +0 -23
  13. package/dist/core/adapters/config/opencode.js +0 -73
  14. package/dist/core/adapters/config/windsurf.d.ts +0 -26
  15. package/dist/core/adapters/config/windsurf.js +0 -74
  16. package/dist/core/adapters/index.d.ts +0 -45
  17. package/dist/core/adapters/index.js +0 -84
  18. package/dist/core/adapters/scripts/install-adapter.d.ts +0 -19
  19. package/dist/core/adapters/scripts/install-adapter.js +0 -149
  20. package/dist/core/adapters/timeline.d.ts +0 -23
  21. package/dist/core/adapters/timeline.js +0 -88
  22. package/dist/core/adapters/types.d.ts +0 -137
  23. package/dist/core/adapters/types.js +0 -50
  24. package/dist/core/agent-preferences.d.ts +0 -16
  25. package/dist/core/agent-preferences.js +0 -124
  26. package/dist/core/algorithms/analytics/token-estimator.d.ts +0 -50
  27. package/dist/core/algorithms/analytics/token-estimator.js +0 -154
  28. package/dist/core/algorithms/detection/hash-filters.d.ts +0 -47
  29. package/dist/core/algorithms/detection/hash-filters.js +0 -190
  30. package/dist/core/algorithms/detection/semantic-ranker.d.ts +0 -32
  31. package/dist/core/algorithms/detection/semantic-ranker.js +0 -118
  32. package/dist/core/algorithms/detection/two-stage-detector.d.ts +0 -52
  33. package/dist/core/algorithms/detection/two-stage-detector.js +0 -299
  34. package/dist/core/algorithms/handlers/approve-merge.d.ts +0 -22
  35. package/dist/core/algorithms/handlers/approve-merge.js +0 -179
  36. package/dist/core/algorithms/handlers/detect-duplicates.d.ts +0 -47
  37. package/dist/core/algorithms/handlers/detect-duplicates.js +0 -145
  38. package/dist/core/algorithms/handlers/get-stats.d.ts +0 -39
  39. package/dist/core/algorithms/handlers/get-stats.js +0 -88
  40. package/dist/core/algorithms/handlers/list-proposals.d.ts +0 -45
  41. package/dist/core/algorithms/handlers/list-proposals.js +0 -83
  42. package/dist/core/algorithms/handlers/preview-merge.d.ts +0 -39
  43. package/dist/core/algorithms/handlers/preview-merge.js +0 -93
  44. package/dist/core/algorithms/handlers/reject-merge.d.ts +0 -28
  45. package/dist/core/algorithms/handlers/reject-merge.js +0 -69
  46. package/dist/core/algorithms/handlers/reverse-merge.d.ts +0 -21
  47. package/dist/core/algorithms/handlers/reverse-merge.js +0 -121
  48. package/dist/core/algorithms/index.d.ts +0 -21
  49. package/dist/core/algorithms/index.js +0 -26
  50. package/dist/core/algorithms/operations/cache-maintenance.d.ts +0 -12
  51. package/dist/core/algorithms/operations/cache-maintenance.js +0 -157
  52. package/dist/core/algorithms/safety/safety-checks.d.ts +0 -18
  53. package/dist/core/algorithms/safety/safety-checks.js +0 -179
  54. package/dist/core/algorithms/strategies/merge-strategies.d.ts +0 -50
  55. package/dist/core/algorithms/strategies/merge-strategies.js +0 -288
  56. package/dist/core/algorithms/types.d.ts +0 -125
  57. package/dist/core/algorithms/types.js +0 -5
  58. package/dist/core/algorithms/utils/response-builder.d.ts +0 -28
  59. package/dist/core/algorithms/utils/response-builder.js +0 -37
  60. package/dist/core/associations.d.ts +0 -33
  61. package/dist/core/associations.js +0 -284
  62. package/dist/core/autosave.d.ts +0 -19
  63. package/dist/core/autosave.js +0 -16
  64. package/dist/core/beliefs/decay.d.ts +0 -27
  65. package/dist/core/beliefs/decay.js +0 -217
  66. package/dist/core/beliefs/extractor.d.ts +0 -9
  67. package/dist/core/beliefs/extractor.js +0 -113
  68. package/dist/core/beliefs/store.d.ts +0 -46
  69. package/dist/core/beliefs/store.js +0 -466
  70. package/dist/core/beliefs/types.d.ts +0 -28
  71. package/dist/core/beliefs/types.js +0 -2
  72. package/dist/core/commands/mcp-server.d.ts +0 -2
  73. package/dist/core/commands/mcp-server.js +0 -6
  74. package/dist/core/commands/remember.d.ts +0 -24
  75. package/dist/core/commands/remember.js +0 -144
  76. package/dist/core/compression.d.ts +0 -45
  77. package/dist/core/compression.js +0 -160
  78. package/dist/core/consolidation.d.ts +0 -37
  79. package/dist/core/consolidation.js +0 -248
  80. package/dist/core/context/agent-context.d.ts +0 -106
  81. package/dist/core/context/agent-context.js +0 -274
  82. package/dist/core/context/context-paging.d.ts +0 -80
  83. package/dist/core/context/context-paging.js +0 -328
  84. package/dist/core/context/context-window.d.ts +0 -40
  85. package/dist/core/context/context-window.js +0 -177
  86. package/dist/core/context/context.d.ts +0 -7
  87. package/dist/core/context/context.js +0 -22
  88. package/dist/core/embeddings/embeddings.d.ts +0 -29
  89. package/dist/core/embeddings/embeddings.js +0 -546
  90. package/dist/core/embeddings/google-multimodal.d.ts +0 -14
  91. package/dist/core/embeddings/google-multimodal.js +0 -146
  92. package/dist/core/embeddings/local-embeddings.d.ts +0 -11
  93. package/dist/core/embeddings/local-embeddings.js +0 -11
  94. package/dist/core/embeddings/qmd-client.d.ts +0 -136
  95. package/dist/core/embeddings/qmd-client.js +0 -403
  96. package/dist/core/embeddings/transformers-local.d.ts +0 -64
  97. package/dist/core/embeddings/transformers-local.js +0 -213
  98. package/dist/core/embeddings.d.ts +0 -2
  99. package/dist/core/embeddings.js +0 -3
  100. package/dist/core/error-handling.d.ts +0 -63
  101. package/dist/core/error-handling.js +0 -173
  102. package/dist/core/graph/entity-deduplicator.d.ts +0 -24
  103. package/dist/core/graph/entity-deduplicator.js +0 -183
  104. package/dist/core/graph/graph-builder.d.ts +0 -46
  105. package/dist/core/graph/graph-builder.js +0 -174
  106. package/dist/core/graph/graph-traversal.d.ts +0 -80
  107. package/dist/core/graph/graph-traversal.js +0 -315
  108. package/dist/core/graph/index.d.ts +0 -19
  109. package/dist/core/graph/index.js +0 -13
  110. package/dist/core/graph/llm-entity-extractor.d.ts +0 -49
  111. package/dist/core/graph/llm-entity-extractor.js +0 -313
  112. package/dist/core/graph/multi-hop-retrieval.d.ts +0 -48
  113. package/dist/core/graph/multi-hop-retrieval.js +0 -215
  114. package/dist/core/graph/relationship-extractor.d.ts +0 -48
  115. package/dist/core/graph/relationship-extractor.js +0 -351
  116. package/dist/core/hooks/agent-hooks.d.ts +0 -83
  117. package/dist/core/hooks/agent-hooks.js +0 -521
  118. package/dist/core/hooks/auto-tagger.d.ts +0 -19
  119. package/dist/core/hooks/auto-tagger.js +0 -155
  120. package/dist/core/hooks/capture-filter.d.ts +0 -41
  121. package/dist/core/hooks/capture-filter.js +0 -128
  122. package/dist/core/hot-cache.d.ts +0 -86
  123. package/dist/core/hot-cache.js +0 -285
  124. package/dist/core/index.d.ts +0 -10
  125. package/dist/core/index.js +0 -11
  126. package/dist/core/ingestion/agent-memory.d.ts +0 -22
  127. package/dist/core/ingestion/agent-memory.js +0 -109
  128. package/dist/core/ingestion/core-memory.d.ts +0 -78
  129. package/dist/core/ingestion/core-memory.js +0 -226
  130. package/dist/core/ingestion/learnings.d.ts +0 -57
  131. package/dist/core/ingestion/learnings.js +0 -205
  132. package/dist/core/ingestion/signal-engine.d.ts +0 -41
  133. package/dist/core/ingestion/signal-engine.js +0 -201
  134. package/dist/core/integrations/obsidian-vault.d.ts +0 -31
  135. package/dist/core/integrations/obsidian-vault.js +0 -156
  136. package/dist/core/layers/generator.d.ts +0 -25
  137. package/dist/core/layers/generator.js +0 -76
  138. package/dist/core/lib/db-client.d.ts +0 -114
  139. package/dist/core/lib/db-client.js +0 -130
  140. package/dist/core/lib/parse-embedding.d.ts +0 -9
  141. package/dist/core/lib/parse-embedding.js +0 -58
  142. package/dist/core/lib/schemas.d.ts +0 -132
  143. package/dist/core/lib/schemas.js +0 -87
  144. package/dist/core/lib/types.d.ts +0 -45
  145. package/dist/core/lib/types.js +0 -6
  146. package/dist/core/lib/utils.d.ts +0 -18
  147. package/dist/core/lib/utils.js +0 -145
  148. package/dist/core/lib/validation.d.ts +0 -38
  149. package/dist/core/lib/validation.js +0 -151
  150. package/dist/core/lifecycle.d.ts +0 -25
  151. package/dist/core/lifecycle.js +0 -292
  152. package/dist/core/logger.d.ts +0 -17
  153. package/dist/core/logger.js +0 -46
  154. package/dist/core/mcp/client.d.ts +0 -17
  155. package/dist/core/mcp/client.js +0 -101
  156. package/dist/core/mcp/index.d.ts +0 -6
  157. package/dist/core/mcp/index.js +0 -6
  158. package/dist/core/mcp/server.d.ts +0 -18
  159. package/dist/core/mcp/server.js +0 -157
  160. package/dist/core/mcp/standalone-server.d.ts +0 -13
  161. package/dist/core/mcp/standalone-server.js +0 -46
  162. package/dist/core/mcp/tools.d.ts +0 -7
  163. package/dist/core/mcp/tools.js +0 -278
  164. package/dist/core/mcp/types.d.ts +0 -87
  165. package/dist/core/mcp/types.js +0 -48
  166. package/dist/core/memory/bridge-discovery.d.ts +0 -50
  167. package/dist/core/memory/bridge-discovery.js +0 -291
  168. package/dist/core/memory/categorizer.d.ts +0 -27
  169. package/dist/core/memory/categorizer.js +0 -306
  170. package/dist/core/memory/conflict-detector.d.ts +0 -7
  171. package/dist/core/memory/conflict-detector.js +0 -43
  172. package/dist/core/memory/consolidation.d.ts +0 -42
  173. package/dist/core/memory/consolidation.js +0 -277
  174. package/dist/core/memory/context-collector.d.ts +0 -10
  175. package/dist/core/memory/context-collector.js +0 -56
  176. package/dist/core/memory/contradiction-resolver.d.ts +0 -40
  177. package/dist/core/memory/contradiction-resolver.js +0 -368
  178. package/dist/core/memory/edit-workflow.d.ts +0 -19
  179. package/dist/core/memory/edit-workflow.js +0 -120
  180. package/dist/core/memory/entity-extractor.d.ts +0 -37
  181. package/dist/core/memory/entity-extractor.js +0 -350
  182. package/dist/core/memory/entity-resolver.d.ts +0 -23
  183. package/dist/core/memory/entity-resolver.js +0 -64
  184. package/dist/core/memory/explain.d.ts +0 -18
  185. package/dist/core/memory/explain.js +0 -92
  186. package/dist/core/memory/fact-deriver.d.ts +0 -31
  187. package/dist/core/memory/fact-deriver.js +0 -236
  188. package/dist/core/memory/fact-extractor.d.ts +0 -24
  189. package/dist/core/memory/fact-extractor.js +0 -89
  190. package/dist/core/memory/feedback-tracker.d.ts +0 -12
  191. package/dist/core/memory/feedback-tracker.js +0 -155
  192. package/dist/core/memory/hooks.d.ts +0 -88
  193. package/dist/core/memory/hooks.js +0 -174
  194. package/dist/core/memory/hybrid-retrieval.d.ts +0 -27
  195. package/dist/core/memory/hybrid-retrieval.js +0 -37
  196. package/dist/core/memory/hybrid-scorer.d.ts +0 -40
  197. package/dist/core/memory/hybrid-scorer.js +0 -267
  198. package/dist/core/memory/hybrid-search.d.ts +0 -23
  199. package/dist/core/memory/hybrid-search.js +0 -596
  200. package/dist/core/memory/importance.d.ts +0 -46
  201. package/dist/core/memory/importance.js +0 -241
  202. package/dist/core/memory/index.d.ts +0 -9
  203. package/dist/core/memory/index.js +0 -11
  204. package/dist/core/memory/loader.d.ts +0 -31
  205. package/dist/core/memory/loader.js +0 -141
  206. package/dist/core/memory/markdown/markdown-storage.d.ts +0 -72
  207. package/dist/core/memory/markdown/markdown-storage.js +0 -243
  208. package/dist/core/memory/memories.d.ts +0 -43
  209. package/dist/core/memory/memories.js +0 -452
  210. package/dist/core/memory/memory-lifecycle.d.ts +0 -8
  211. package/dist/core/memory/memory-lifecycle.js +0 -47
  212. package/dist/core/memory/memory-manager.d.ts +0 -15
  213. package/dist/core/memory/memory-manager.js +0 -46
  214. package/dist/core/memory/migrate.d.ts +0 -21
  215. package/dist/core/memory/migrate.js +0 -134
  216. package/dist/core/memory/normalization.d.ts +0 -7
  217. package/dist/core/memory/normalization.js +0 -26
  218. package/dist/core/memory/path-strengthener.d.ts +0 -39
  219. package/dist/core/memory/path-strengthener.js +0 -150
  220. package/dist/core/memory/progressive-disclosure.d.ts +0 -43
  221. package/dist/core/memory/progressive-disclosure.js +0 -280
  222. package/dist/core/memory/query-processor.d.ts +0 -21
  223. package/dist/core/memory/query-processor.js +0 -106
  224. package/dist/core/memory/query-rewriter.d.ts +0 -13
  225. package/dist/core/memory/query-rewriter.js +0 -118
  226. package/dist/core/memory/response-analyzer.d.ts +0 -9
  227. package/dist/core/memory/response-analyzer.js +0 -61
  228. package/dist/core/memory/retrieval-feedback.d.ts +0 -70
  229. package/dist/core/memory/retrieval-feedback.js +0 -213
  230. package/dist/core/memory/serialization.d.ts +0 -10
  231. package/dist/core/memory/serialization.js +0 -84
  232. package/dist/core/memory/stale-cleaner.d.ts +0 -26
  233. package/dist/core/memory/stale-cleaner.js +0 -97
  234. package/dist/core/memory/stats.d.ts +0 -32
  235. package/dist/core/memory/stats.js +0 -143
  236. package/dist/core/memory/telemetry.d.ts +0 -69
  237. package/dist/core/memory/telemetry.js +0 -313
  238. package/dist/core/memory/temporal-facts.d.ts +0 -41
  239. package/dist/core/memory/temporal-facts.js +0 -283
  240. package/dist/core/memory/temporal-parser.d.ts +0 -32
  241. package/dist/core/memory/temporal-parser.js +0 -385
  242. package/dist/core/memory/trigger-detector.d.ts +0 -21
  243. package/dist/core/memory/trigger-detector.js +0 -79
  244. package/dist/core/memory/write-gate.d.ts +0 -54
  245. package/dist/core/memory/write-gate.js +0 -210
  246. package/dist/core/places/index.d.ts +0 -14
  247. package/dist/core/places/index.js +0 -14
  248. package/dist/core/places/memory-places.d.ts +0 -68
  249. package/dist/core/places/memory-places.js +0 -261
  250. package/dist/core/places/places.d.ts +0 -88
  251. package/dist/core/places/places.js +0 -314
  252. package/dist/core/places/rules.d.ts +0 -74
  253. package/dist/core/places/rules.js +0 -240
  254. package/dist/core/places/walking.d.ts +0 -56
  255. package/dist/core/places/walking.js +0 -121
  256. package/dist/core/projects.d.ts +0 -17
  257. package/dist/core/projects.js +0 -116
  258. package/dist/core/redis.d.ts +0 -11
  259. package/dist/core/redis.js +0 -69
  260. package/dist/core/responses.d.ts +0 -96
  261. package/dist/core/responses.js +0 -122
  262. package/dist/core/runtime/trust-report.d.ts +0 -102
  263. package/dist/core/runtime/trust-report.js +0 -107
  264. package/dist/core/runtime/trust-state.d.ts +0 -12
  265. package/dist/core/runtime/trust-state.js +0 -309
  266. package/dist/core/scheduler/cron-scheduler.d.ts +0 -32
  267. package/dist/core/scheduler/cron-scheduler.js +0 -493
  268. package/dist/core/scheduler/heartbeat.d.ts +0 -11
  269. package/dist/core/scheduler/heartbeat.js +0 -73
  270. package/dist/core/scheduler/index.d.ts +0 -8
  271. package/dist/core/scheduler/index.js +0 -8
  272. package/dist/core/scheduler/job-runner.d.ts +0 -11
  273. package/dist/core/scheduler/job-runner.js +0 -164
  274. package/dist/core/search/conversations.d.ts +0 -25
  275. package/dist/core/search/conversations.js +0 -110
  276. package/dist/core/search/entities.d.ts +0 -12
  277. package/dist/core/search/entities.js +0 -31
  278. package/dist/core/search/folder-context.d.ts +0 -25
  279. package/dist/core/search/folder-context.js +0 -119
  280. package/dist/core/search/graph-boost.d.ts +0 -7
  281. package/dist/core/search/graph-boost.js +0 -23
  282. package/dist/core/search/index.d.ts +0 -4
  283. package/dist/core/search/index.js +0 -5
  284. package/dist/core/search/qmd-wrapper.d.ts +0 -36
  285. package/dist/core/search/qmd-wrapper.js +0 -58
  286. package/dist/core/security/encrypt.d.ts +0 -6
  287. package/dist/core/security/encrypt.js +0 -47
  288. package/dist/core/security/governance.d.ts +0 -26
  289. package/dist/core/security/governance.js +0 -79
  290. package/dist/core/security/privacy.d.ts +0 -23
  291. package/dist/core/security/privacy.js +0 -82
  292. package/dist/core/security/secret-detector.d.ts +0 -32
  293. package/dist/core/security/secret-detector.js +0 -88
  294. package/dist/core/session/auto-load.d.ts +0 -6
  295. package/dist/core/session/auto-load.js +0 -144
  296. package/dist/core/session/entity-tracker.d.ts +0 -62
  297. package/dist/core/session/entity-tracker.js +0 -287
  298. package/dist/core/session/index.d.ts +0 -7
  299. package/dist/core/session/index.js +0 -7
  300. package/dist/core/session/reference-resolver.d.ts +0 -26
  301. package/dist/core/session/reference-resolver.js +0 -121
  302. package/dist/core/session/self-iteration-job.d.ts +0 -35
  303. package/dist/core/session/self-iteration-job.js +0 -387
  304. package/dist/core/session/session-hooks.d.ts +0 -18
  305. package/dist/core/session/session-hooks.js +0 -58
  306. package/dist/core/session/types.d.ts +0 -26
  307. package/dist/core/session/types.js +0 -10
  308. package/dist/core/session/working-set.d.ts +0 -50
  309. package/dist/core/session/working-set.js +0 -212
  310. package/dist/core/snapshots/cleanup.d.ts +0 -9
  311. package/dist/core/snapshots/cleanup.js +0 -12
  312. package/dist/core/snapshots/comparison.d.ts +0 -19
  313. package/dist/core/snapshots/comparison.js +0 -43
  314. package/dist/core/snapshots/creation.d.ts +0 -13
  315. package/dist/core/snapshots/creation.js +0 -117
  316. package/dist/core/snapshots/retrieval.d.ts +0 -7
  317. package/dist/core/snapshots/retrieval.js +0 -41
  318. package/dist/core/snapshots/stats.d.ts +0 -11
  319. package/dist/core/snapshots/stats.js +0 -52
  320. package/dist/core/storage/cache.d.ts +0 -13
  321. package/dist/core/storage/cache.js +0 -202
  322. package/dist/core/storage/database.d.ts +0 -12
  323. package/dist/core/storage/database.js +0 -12
  324. package/dist/core/summarization/cleanup.d.ts +0 -9
  325. package/dist/core/summarization/cleanup.js +0 -12
  326. package/dist/core/summarization/queries.d.ts +0 -9
  327. package/dist/core/summarization/queries.js +0 -28
  328. package/dist/core/summarization/stats.d.ts +0 -14
  329. package/dist/core/summarization/stats.js +0 -52
  330. package/dist/core/summarization/strategies.d.ts +0 -24
  331. package/dist/core/summarization/strategies.js +0 -28
  332. package/dist/core/summarization.d.ts +0 -37
  333. package/dist/core/summarization.js +0 -188
  334. package/dist/core/temporal-facts.d.ts +0 -54
  335. package/dist/core/temporal-facts.js +0 -193
  336. package/dist/core/tracing/collector.d.ts +0 -111
  337. package/dist/core/tracing/collector.js +0 -350
  338. package/dist/core/tracing/visualizer.d.ts +0 -32
  339. package/dist/core/tracing/visualizer.js +0 -165
  340. package/dist/core/utils/cleanup-operations.d.ts +0 -13
  341. package/dist/core/utils/cleanup-operations.js +0 -44
  342. package/dist/core/utils/content-extraction.d.ts +0 -19
  343. package/dist/core/utils/content-extraction.js +0 -75
  344. package/dist/core/utils/filter-builder.d.ts +0 -13
  345. package/dist/core/utils/filter-builder.js +0 -44
  346. package/dist/core/utils/history-traversal.d.ts +0 -13
  347. package/dist/core/utils/history-traversal.js +0 -50
  348. package/dist/core/utils/memory-operations.d.ts +0 -17
  349. package/dist/core/utils/memory-operations.js +0 -43
  350. package/dist/core/utils/query-operations.d.ts +0 -18
  351. package/dist/core/utils/query-operations.js +0 -65
  352. package/dist/core/utils/summarization-helpers.d.ts +0 -17
  353. package/dist/core/utils/summarization-helpers.js +0 -33
  354. package/dist/core/utils/temporal-queries.d.ts +0 -13
  355. package/dist/core/utils/temporal-queries.js +0 -27
  356. package/dist/core/utils/vector-operations.d.ts +0 -71
  357. package/dist/core/utils/vector-operations.js +0 -129
  358. package/dist/core/utils/version-management.d.ts +0 -9
  359. package/dist/core/utils/version-management.js +0 -61
  360. package/dist/core/worker.d.ts +0 -82
  361. package/dist/core/worker.js +0 -272
  362. package/dist/db/adapter.d.ts +0 -7
  363. package/dist/db/adapter.js +0 -175
  364. package/dist/db/bootstrap.d.ts +0 -11
  365. package/dist/db/bootstrap.js +0 -1034
  366. package/dist/db/drizzle/schema-sqlite.d.ts +0 -5538
  367. package/dist/db/drizzle/schema-sqlite.js +0 -763
  368. package/dist/db/drizzle/schema.d.ts +0 -4734
  369. package/dist/db/drizzle/schema.js +0 -859
  370. package/dist/db/drizzle.config.d.ts +0 -3
  371. package/dist/db/drizzle.config.js +0 -12
  372. package/dist/db/index.d.ts +0 -7
  373. package/dist/db/index.js +0 -89
  374. package/dist/db/migrations/associations.d.ts +0 -6
  375. package/dist/db/migrations/associations.js +0 -29
  376. package/dist/db/migrations/beliefs.d.ts +0 -10
  377. package/dist/db/migrations/beliefs.js +0 -76
  378. package/dist/db/migrations/core-memory.d.ts +0 -6
  379. package/dist/db/migrations/core-memory.js +0 -29
  380. package/dist/db/migrations/fts.d.ts +0 -6
  381. package/dist/db/migrations/fts.js +0 -52
  382. package/dist/db/migrations/index.d.ts +0 -25
  383. package/dist/db/migrations/index.js +0 -51
  384. package/dist/db/migrations/indexes.d.ts +0 -6
  385. package/dist/db/migrations/indexes.js +0 -30
  386. package/dist/db/migrations/learnings.d.ts +0 -7
  387. package/dist/db/migrations/learnings.js +0 -26
  388. package/dist/db/migrations/maintenance.d.ts +0 -6
  389. package/dist/db/migrations/maintenance.js +0 -61
  390. package/dist/db/migrations/memories.d.ts +0 -7
  391. package/dist/db/migrations/memories.js +0 -16
  392. package/dist/db/migrations/memory-places.d.ts +0 -6
  393. package/dist/db/migrations/memory-places.js +0 -29
  394. package/dist/db/migrations/places.d.ts +0 -6
  395. package/dist/db/migrations/places.js +0 -43
  396. package/dist/db/migrations/projects.d.ts +0 -3
  397. package/dist/db/migrations/projects.js +0 -13
  398. package/dist/db/migrations/tier-conversion.d.ts +0 -7
  399. package/dist/db/migrations/tier-conversion.js +0 -20
  400. package/dist/db/neon.d.ts +0 -8
  401. package/dist/db/neon.js +0 -20
  402. package/dist/db/schema/beliefs.d.ts +0 -9
  403. package/dist/db/schema/beliefs.js +0 -46
  404. package/dist/db/schema/generator.d.ts +0 -38
  405. package/dist/db/schema/generator.js +0 -108
  406. package/dist/db/schema/index.d.ts +0 -39
  407. package/dist/db/schema/index.js +0 -51
  408. package/dist/db/schema/learnings.d.ts +0 -7
  409. package/dist/db/schema/learnings.js +0 -30
  410. package/dist/db/schema/memories.d.ts +0 -7
  411. package/dist/db/schema/memories.js +0 -81
  412. package/dist/db/schema/projects.d.ts +0 -4
  413. package/dist/db/schema/projects.js +0 -31
  414. package/dist/db/schema/tables/context-sessions.d.ts +0 -9
  415. package/dist/db/schema/tables/context-sessions.js +0 -37
  416. package/dist/db/schema/tables/conversations.d.ts +0 -9
  417. package/dist/db/schema/tables/conversations.js +0 -47
  418. package/dist/db/schema/tables/core-memory.d.ts +0 -9
  419. package/dist/db/schema/tables/core-memory.js +0 -41
  420. package/dist/db/schema/tables/entities.d.ts +0 -9
  421. package/dist/db/schema/tables/entities.js +0 -39
  422. package/dist/db/schema/tables/entity-relations.d.ts +0 -9
  423. package/dist/db/schema/tables/entity-relations.js +0 -31
  424. package/dist/db/schema/tables/learnings.d.ts +0 -9
  425. package/dist/db/schema/tables/learnings.js +0 -66
  426. package/dist/db/schema/tables/memories.d.ts +0 -9
  427. package/dist/db/schema/tables/memories.js +0 -161
  428. package/dist/db/schema/tables/memory-associations.d.ts +0 -9
  429. package/dist/db/schema/tables/memory-associations.js +0 -39
  430. package/dist/db/schema/tables/memory-hash-cache.d.ts +0 -9
  431. package/dist/db/schema/tables/memory-hash-cache.js +0 -29
  432. package/dist/db/schema/tables/memory-merge-history.d.ts +0 -9
  433. package/dist/db/schema/tables/memory-merge-history.js +0 -33
  434. package/dist/db/schema/tables/memory-merge-proposals.d.ts +0 -9
  435. package/dist/db/schema/tables/memory-merge-proposals.js +0 -39
  436. package/dist/db/schema/tables/messages.d.ts +0 -9
  437. package/dist/db/schema/tables/messages.js +0 -41
  438. package/dist/db/schema/tables/namespaces.d.ts +0 -9
  439. package/dist/db/schema/tables/namespaces.js +0 -37
  440. package/dist/db/schema/tables/projects.d.ts +0 -9
  441. package/dist/db/schema/tables/projects.js +0 -31
  442. package/dist/db/schema/tables/users.d.ts +0 -9
  443. package/dist/db/schema/tables/users.js +0 -27
  444. package/dist/db/schema.d.ts +0 -3
  445. package/dist/db/schema.js +0 -11
  446. package/dist/db/supabase.d.ts +0 -9
  447. package/dist/db/supabase.js +0 -24
  448. package/dist/packages/mcp/src/index.d.ts +0 -3
  449. package/dist/packages/mcp/src/index.js +0 -733
@@ -1,387 +0,0 @@
1
- /** Self-Iteration Job - Auto-extract key facts from ended conversations
2
- *
3
- * Processes conversations to extract memories and generate summaries
4
- */
5
- import { sql, eq } from 'drizzle-orm';
6
- import { getDb } from '../../db/index.js';
7
- import { getSchema } from '../../db/schema.js';
8
- import { getProjectById } from '../projects.js';
9
- import { rememberMemory, search } from '../memory/memories.js';
10
- import { serializeMetadata, deserializeMetadata } from '../memory/serialization.js';
11
- import { logger } from '../logger.js';
12
- import { generateExtractiveSummary, extractMessageContent } from '../utils/content-extraction.js';
13
- const DEFAULT_CONFIG = {
14
- enabled: true,
15
- extractFacts: true,
16
- generateSummaries: true,
17
- consolidateMemories: true,
18
- minMessageCount: 5,
19
- maxMessagesToProcess: 50,
20
- };
21
- const MIN_CONFIDENCE_TO_STORE = 75;
22
- const FORBIDDEN_BRAND_TERMS = new RegExp(`\\b(?:${['mem' + '\\s*' + 'palace', 'mem' + '-' + 'palace', 'om' + 'ni'].join('|')})\\b`, 'i');
23
- const LOW_SIGNAL_PATTERNS = [
24
- /^\s*(?:thanks?|thank you|hello|hi|hey)\b/i,
25
- /\b(?:can you|could you|please|help me|show me|explain|what is|how do i)\b/i,
26
- /\b(?:i'll|i will|we will|let's|todo|task|goal|next step|follow up|remind me)\b/i,
27
- /^\s*[-*]\s+\[[ x]\]/i,
28
- ];
29
- const EXTRACTION_PATTERNS = [
30
- {
31
- pattern: /\b(?:i|we)\s+(?:decided|chose|picked|selected|settled on|agreed to use|agreed on)\b/i,
32
- type: 'decision',
33
- confidence: 90,
34
- prefix: 'Decision',
35
- },
36
- {
37
- pattern: /\b(?:final decision|decision)\s*:/i,
38
- type: 'decision',
39
- confidence: 90,
40
- prefix: 'Decision',
41
- },
42
- {
43
- pattern: /\b(?:i|we)\s+(?:prefer|like|dislike|hate|love)\b/i,
44
- type: 'preference',
45
- confidence: 85,
46
- prefix: 'Preference',
47
- },
48
- {
49
- pattern: /\b(?:my|our|the user's)\s+(?:preference|preferred)\b/i,
50
- type: 'preference',
51
- confidence: 85,
52
- prefix: 'Preference',
53
- },
54
- {
55
- pattern: /\b(?:remember|don't forget)\s+(?:that\s+)?\S+/i,
56
- type: 'fact',
57
- confidence: 80,
58
- prefix: 'Fact',
59
- },
60
- {
61
- pattern: /\b(?:project|repo|workspace|service|app)\s+\S+\s+(?:uses|runs on|depends on|requires|stores)\b/i,
62
- type: 'fact',
63
- confidence: 80,
64
- prefix: 'Fact',
65
- },
66
- ];
67
- /**
68
- * Build fact extraction prompt
69
- */
70
- function buildFactExtractionPrompt(messages) {
71
- const messagesText = messages.map(m => `[${m.role}]: ${m.content}`).join('\n\n');
72
- return `Extract key facts, decisions, and user preferences from this conversation.
73
-
74
- Format your response as JSON:
75
- {
76
- "extractedFacts": [
77
- {
78
- "content": "specific fact text",
79
- "type": "fact|decision|preference|observation",
80
- "confidence": 0-100
81
- }
82
- ]
83
- }
84
-
85
- Only extract truly meaningful information that should be remembered:
86
- - Facts that are useful for future work or decisions
87
- - User preferences and choices
88
- - Important decisions made
89
- - Patterns or behaviors observed
90
-
91
- Do NOT extract:
92
- - Temporary conversational details
93
- - Greetings or pleasantries
94
- - Unless they indicate something significant
95
-
96
- Conversation messages:
97
- ${messagesText}`;
98
- }
99
- /**
100
- * Build summary generation prompt
101
- */
102
- function buildSummaryPrompt(messages) {
103
- const messagesText = messages.map(m => `[${m.role}]: ${m.content}`).join('\n\n');
104
- return `Generate a concise summary of this conversation (2-3 sentences, under 300 characters).
105
-
106
- Focus on:
107
- - What was accomplished
108
- - Key decisions made
109
- - Important context established
110
-
111
- Conversation messages:
112
- ${messagesText}`;
113
- }
114
- /**
115
- * Parse LLM fact extraction response
116
- */
117
- function parseExtractedFacts(llmResponse) {
118
- try {
119
- const jsonMatch = llmResponse.match(/\{[\s\S]*\}/);
120
- if (!jsonMatch)
121
- return [];
122
- const json = JSON.parse(jsonMatch[0]);
123
- return json.extractedFacts || [];
124
- }
125
- catch {
126
- logger.warn('[SelfIteration] Failed to parse fact extraction response');
127
- return [];
128
- }
129
- }
130
- function normalizeCaptureKey(content) {
131
- return content
132
- .toLowerCase()
133
- .replace(/^(?:decision|preference|fact):\s*/i, '')
134
- .replace(/['"`]/g, '')
135
- .replace(/\s+/g, ' ')
136
- .replace(/[^\w\s./:-]/g, '')
137
- .trim();
138
- }
139
- function isLowSignalCapture(content) {
140
- const text = content.trim();
141
- if (text.length < 20 || text.split(/\s+/).length < 4)
142
- return true;
143
- if (text.endsWith('?'))
144
- return true;
145
- if (FORBIDDEN_BRAND_TERMS.test(text))
146
- return true;
147
- return LOW_SIGNAL_PATTERNS.some((pattern) => pattern.test(text));
148
- }
149
- function splitCandidateStatements(content) {
150
- return content
151
- .split(/\n+|(?<=[.!?])\s+/)
152
- .map((part) => part.trim())
153
- .filter(Boolean);
154
- }
155
- export function extractDurableSelfIterationFacts(messages) {
156
- const captures = new Map();
157
- for (const msg of messages) {
158
- if (msg.role !== 'user')
159
- continue;
160
- for (const statement of splitCandidateStatements(msg.content)) {
161
- if (isLowSignalCapture(statement))
162
- continue;
163
- for (const { pattern, type, confidence, prefix } of EXTRACTION_PATTERNS) {
164
- if (!pattern.test(statement))
165
- continue;
166
- const normalizedStatement = statement.replace(/^(?:decision|preference|fact):\s*/i, '');
167
- const content = `${prefix}: ${normalizedStatement}`;
168
- const key = `${type}:${normalizeCaptureKey(content)}`;
169
- const existing = captures.get(key);
170
- if (!existing || confidence > existing.confidence) {
171
- captures.set(key, { content, type, confidence });
172
- }
173
- }
174
- }
175
- }
176
- return Array.from(captures.values()).filter((fact) => fact.confidence >= MIN_CONFIDENCE_TO_STORE);
177
- }
178
- async function hasSimilarSelfIterationMemory(fact, projectPath) {
179
- const matches = await search({
180
- query: fact.content,
181
- type: fact.type,
182
- project: projectPath,
183
- limit: 5,
184
- });
185
- const factKey = normalizeCaptureKey(fact.content);
186
- return matches.some((match) => {
187
- const matchMetadata = match.metadata ?? {};
188
- if (matchMetadata.extractionMethod !== 'self-iteration')
189
- return false;
190
- if ((match.similarity ?? 0) >= 0.92)
191
- return true;
192
- return normalizeCaptureKey(match.content) === factKey;
193
- });
194
- }
195
- /**
196
- * Get conversations ready for self-iteration
197
- */
198
- async function getConversationsForIteration(minMessageCount) {
199
- const db = await getDb();
200
- if (!db)
201
- return [];
202
- const schema = await getSchema();
203
- const sqliteDb = db;
204
- // Get conversations that:
205
- // 1. Have ended (endedAt is not null)
206
- // 2. Haven't been processed yet (metadata.selfIterationProcessed is not set)
207
- // 3. Have enough messages (messageCount >= minMessageCount)
208
- const conversations = await sqliteDb.select()
209
- .from(schema.conversations)
210
- .where(sql `${schema.conversations.endedAt} IS NOT NULL
211
- AND ${schema.conversations.messageCount} >= ${minMessageCount}`)
212
- .limit(10);
213
- return conversations
214
- .map((conversation) => ({
215
- ...conversation,
216
- metadata: deserializeMetadata(conversation.metadata ?? null),
217
- }))
218
- .filter((conversation) => !conversation.metadata?.selfIterationProcessed);
219
- }
220
- /**
221
- * Get messages for a conversation
222
- */
223
- async function getConversationMessages(conversationId) {
224
- const db = await getDb();
225
- if (!db)
226
- return [];
227
- const schema = await getSchema();
228
- const sqliteDb = db;
229
- const messages = await sqliteDb.select()
230
- .from(schema.messages)
231
- .where(eq(schema.messages.conversationId, conversationId))
232
- .orderBy(schema.messages.createdAt);
233
- return messages.map((m) => ({
234
- id: m.id,
235
- conversationId: m.conversation_id,
236
- role: m.role,
237
- content: m.content,
238
- createdAt: new Date(m.createdAt),
239
- }));
240
- }
241
- /**
242
- * Mark conversation as processed
243
- */
244
- async function markConversationProcessed(conversationId) {
245
- const db = await getDb();
246
- if (!db)
247
- return;
248
- const schema = await getSchema();
249
- const sqliteDb = db;
250
- const rows = await sqliteDb.select()
251
- .from(schema.conversations)
252
- .where(eq(schema.conversations.id, conversationId))
253
- .limit(1);
254
- const existingMetadata = deserializeMetadata(rows[0]?.metadata ?? null) ?? {};
255
- await sqliteDb.update(schema.conversations)
256
- .set({
257
- metadata: serializeMetadata({
258
- ...existingMetadata,
259
- selfIterationProcessed: true,
260
- selfIterationProcessedAt: new Date().toISOString(),
261
- }),
262
- })
263
- .where(eq(schema.conversations.id, conversationId));
264
- }
265
- /**
266
- * Process a single conversation
267
- */
268
- async function processConversation(conversation, config) {
269
- const messages = await getConversationMessages(conversation.id);
270
- let memoriesCreated = 0;
271
- let summariesCreated = 0;
272
- // Limit messages if configured
273
- const messagesToProcess = config.maxMessagesToProcess > 0
274
- ? messages.slice(-config.maxMessagesToProcess)
275
- : messages;
276
- if (messagesToProcess.length === 0) {
277
- return { memoriesCreated, summariesCreated };
278
- }
279
- // Extract facts using improved pattern matching
280
- if (config.extractFacts) {
281
- const extractedFacts = extractDurableSelfIterationFacts(messagesToProcess);
282
- const project = conversation.projectId ? await getProjectById(conversation.projectId) : null;
283
- const projectPath = project?.path;
284
- // Store extracted facts as memories
285
- for (const fact of extractedFacts) {
286
- try {
287
- if (await hasSimilarSelfIterationMemory(fact, projectPath)) {
288
- logger.debug(`[SelfIteration] Suppressed duplicate memory: ${fact.type} - ${fact.content.substring(0, 50)}...`);
289
- continue;
290
- }
291
- await rememberMemory({
292
- content: fact.content,
293
- type: fact.type,
294
- project: projectPath,
295
- metadata: {
296
- extractionMethod: 'self-iteration',
297
- confidence: fact.confidence,
298
- conversationId: conversation.id,
299
- sessionId: conversation.sessionId,
300
- },
301
- source: 'self-iteration',
302
- });
303
- memoriesCreated++;
304
- logger.info(`[SelfIteration] Extracted memory: ${fact.type} - ${fact.content.substring(0, 50)}...`);
305
- }
306
- catch (error) {
307
- logger.error(`[SelfIteration] Failed to store memory:`, error);
308
- }
309
- }
310
- }
311
- // Generate summary
312
- if (config.generateSummaries && messagesToProcess.length > 0) {
313
- // Use extractive summarization for better results
314
- const extracted = extractMessageContent(messagesToProcess);
315
- const summary = generateExtractiveSummary(extracted);
316
- // Update conversation with summary
317
- const db = await getDb();
318
- const schema = await getSchema();
319
- const sqliteDb = db;
320
- await sqliteDb.update(schema.conversations)
321
- .set({ summary })
322
- .where(eq(schema.conversations.id, conversation.id));
323
- summariesCreated++;
324
- logger.info(`[SelfIteration] Generated summary for conversation ${conversation.sessionId}`);
325
- }
326
- return { memoriesCreated, summariesCreated };
327
- }
328
- /**
329
- * Register self-iteration job handler
330
- */
331
- const selfIterationHandler = async (context) => {
332
- logger.info('[SelfIteration] Starting job');
333
- const config = {
334
- ...DEFAULT_CONFIG,
335
- ...context.config,
336
- };
337
- if (!config.enabled) {
338
- logger.info('[SelfIteration] Job disabled, skipping');
339
- return { recordsProcessed: 0, summary: { status: 'disabled' } };
340
- }
341
- try {
342
- const conversations = await getConversationsForIteration(config.minMessageCount || DEFAULT_CONFIG.minMessageCount);
343
- if (conversations.length === 0) {
344
- logger.info('[SelfIteration] No conversations to process');
345
- return { recordsProcessed: 0, summary: { status: 'no_conversations' } };
346
- }
347
- let totalMemoriesCreated = 0;
348
- let totalSummariesGenerated = 0;
349
- let processedCount = 0;
350
- for (const conversation of conversations) {
351
- // Skip if already processed
352
- if (conversation.metadata?.selfIterationProcessed) {
353
- continue;
354
- }
355
- try {
356
- const result = await processConversation(conversation, config);
357
- totalMemoriesCreated += result.memoriesCreated;
358
- totalSummariesGenerated += result.summariesCreated;
359
- await markConversationProcessed(conversation.id);
360
- processedCount++;
361
- }
362
- catch (error) {
363
- logger.error(`[SelfIteration] Failed to process conversation ${conversation.id}:`, error);
364
- }
365
- }
366
- logger.info(`[SelfIteration] Processed ${processedCount}/${conversations.length} conversations`);
367
- logger.info(`[SelfIteration] Created ${totalMemoriesCreated} memories`);
368
- logger.info(`[SelfIteration] Generated ${totalSummariesGenerated} summaries`);
369
- return {
370
- recordsProcessed: processedCount,
371
- summary: {
372
- memoriesCreated: totalMemoriesCreated,
373
- summariesGenerated: totalSummariesGenerated,
374
- totalConversations: conversations.length,
375
- },
376
- };
377
- }
378
- catch (error) {
379
- logger.error('[SelfIteration] Job failed:', error);
380
- return {
381
- recordsProcessed: 0,
382
- summary: { error: error instanceof Error ? error.message : String(error) },
383
- };
384
- }
385
- };
386
- export { selfIterationHandler, DEFAULT_CONFIG };
387
- //# sourceMappingURL=self-iteration-job.js.map
@@ -1,18 +0,0 @@
1
- /** Session Hooks - Lifecycle hooks for conversation management
2
- *
3
- * Provides functions to be called when sessions start/end
4
- */
5
- /**
6
- * Called when a session ends
7
- * Marks the conversation as ended so self-iteration can process it
8
- */
9
- export declare function onSessionEnd(sessionId: string): Promise<void>;
10
- /**
11
- * Get active sessions for a project
12
- */
13
- export declare function getActiveSessions(projectId: string): Promise<string[]>;
14
- /**
15
- * End all sessions for a project
16
- */
17
- export declare function endAllProjectSessions(projectId: string): Promise<number>;
18
- //# sourceMappingURL=session-hooks.d.ts.map
@@ -1,58 +0,0 @@
1
- /** Session Hooks - Lifecycle hooks for conversation management
2
- *
3
- * Provides functions to be called when sessions start/end
4
- */
5
- import { sql, eq } from 'drizzle-orm';
6
- import { getDb } from '../../db/index.js';
7
- import { getSchema } from '../../db/schema.js';
8
- import { logger } from '../logger.js';
9
- /**
10
- * Called when a session ends
11
- * Marks the conversation as ended so self-iteration can process it
12
- */
13
- export async function onSessionEnd(sessionId) {
14
- logger.info(`[SessionHooks] Session ended: ${sessionId}`);
15
- const db = await getDb();
16
- if (!db) {
17
- logger.warn('[SessionHooks] Database unavailable, cannot end session');
18
- return;
19
- }
20
- const schema = await getSchema();
21
- const sqliteDb = db;
22
- // Mark conversation as ended
23
- await sqliteDb.update(schema.conversations)
24
- .set({ endedAt: new Date() })
25
- .where(eq(schema.conversations.sessionId, sessionId));
26
- logger.info(`[SessionHooks] Session ${sessionId} marked as ended`);
27
- }
28
- /**
29
- * Get active sessions for a project
30
- */
31
- export async function getActiveSessions(projectId) {
32
- const db = await getDb();
33
- if (!db)
34
- return [];
35
- const schema = await getSchema();
36
- const sqliteDb = db;
37
- const sessions = await sqliteDb.select()
38
- .from(schema.conversations)
39
- .where(eq(schema.conversations.projectId, projectId))
40
- .where(sql `${schema.conversations.endedAt} IS NULL`);
41
- return sessions.map((s) => s.session_id);
42
- }
43
- /**
44
- * End all sessions for a project
45
- */
46
- export async function endAllProjectSessions(projectId) {
47
- const db = await getDb();
48
- if (!db)
49
- return 0;
50
- const schema = await getSchema();
51
- const sqliteDb = db;
52
- const result = await sqliteDb.update(schema.conversations)
53
- .set({ endedAt: new Date() })
54
- .where(eq(schema.conversations.projectId, projectId));
55
- logger.info(`[SessionHooks] Ended ${result.rowCount} sessions for project ${projectId}`);
56
- return result.rowCount || 0;
57
- }
58
- //# sourceMappingURL=session-hooks.js.map
@@ -1,26 +0,0 @@
1
- /** Session Auto-Load Types */
2
- export interface AutoLoadConfig {
3
- enabled: boolean;
4
- includeCoreMemory: boolean;
5
- includeRecentMemories: boolean;
6
- recentMemoryCount: number;
7
- importanceThreshold: number;
8
- includeProjectContext: boolean;
9
- }
10
- export interface AutoLoadResult {
11
- coreMemoryLoaded: boolean;
12
- memoriesLoaded: number;
13
- projectContextLoaded: boolean;
14
- tokensUsed: number;
15
- duration: number;
16
- warnings: string[];
17
- }
18
- export interface SessionState {
19
- sessionId: string;
20
- projectId: string;
21
- autoLoaded: boolean;
22
- startedAt: Date;
23
- lastActivityAt: Date;
24
- }
25
- export declare const DEFAULT_AUTO_LOAD_CONFIG: AutoLoadConfig;
26
- //# sourceMappingURL=types.d.ts.map
@@ -1,10 +0,0 @@
1
- /** Session Auto-Load Types */
2
- export const DEFAULT_AUTO_LOAD_CONFIG = {
3
- enabled: true,
4
- includeCoreMemory: true,
5
- includeRecentMemories: true,
6
- recentMemoryCount: 5,
7
- importanceThreshold: 70,
8
- includeProjectContext: true,
9
- };
10
- //# sourceMappingURL=types.js.map
@@ -1,50 +0,0 @@
1
- export interface WorkingSetCommand {
2
- command: string;
3
- outcome?: string;
4
- at: string;
5
- }
6
- export interface SessionWorkingSet {
7
- activeFiles: string[];
8
- activePlaces: string[];
9
- graphEntities: string[];
10
- recentCommands: WorkingSetCommand[];
11
- currentHypotheses: string[];
12
- recentFailures: string[];
13
- recentAttempts: string[];
14
- projectPath?: string;
15
- sessionId: string;
16
- signalStats: {
17
- captured: number;
18
- suppressed: number;
19
- sessionOnly: number;
20
- durable: number;
21
- durableWithRaw: number;
22
- tokensSaved: number;
23
- placeRouted: number;
24
- graphEnriched: number;
25
- };
26
- recentEvents: Array<{
27
- classification: string;
28
- content: string;
29
- target?: string;
30
- hash?: string;
31
- at: string;
32
- }>;
33
- }
34
- export declare function getSessionWorkingSet(sessionId: string, projectPath?: string): Promise<SessionWorkingSet>;
35
- export declare function recordSessionSignal(input: {
36
- sessionId: string;
37
- projectPath: string;
38
- classification: 'discard' | 'session-only' | 'durable-distilled' | 'durable-raw+distilled';
39
- distilledContent: string;
40
- toolName: string;
41
- target?: string;
42
- metadata?: Record<string, unknown>;
43
- }): Promise<SessionWorkingSet>;
44
- export declare function compactSessionWorkingSet(sessionId: string, projectPath?: string): Promise<{
45
- summary: string;
46
- workingSet: SessionWorkingSet;
47
- }>;
48
- export declare function getProjectSignalStats(projectPath: string): Promise<any>;
49
- export declare function getLatestProjectWorkingSetSummary(projectPath: string): Promise<string>;
50
- //# sourceMappingURL=working-set.d.ts.map