@vheins/local-memory-mcp 0.5.33 → 0.6.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 (506) hide show
  1. package/README.md +9 -6
  2. package/dist/chunk-EQTLHCFK.js +3619 -0
  3. package/dist/dashboard/public/assets/{index-C8FB4maW.css → index-Bd7v94SO.css} +1 -1
  4. package/dist/dashboard/public/assets/index-Df97JpLg.js +84 -0
  5. package/dist/dashboard/public/index.html +2 -2
  6. package/dist/dashboard/server.js +790 -451
  7. package/dist/mcp/server.js +2121 -305
  8. package/dist/{mcp/prompts/definitions → prompts}/create-task.md +4 -3
  9. package/dist/{mcp/prompts/definitions → prompts}/memory-agent-core.md +2 -0
  10. package/dist/{mcp/prompts/definitions → prompts}/memory-index-policy.md +2 -0
  11. package/dist/{mcp/prompts/definitions → prompts}/review-and-audit.md +3 -1
  12. package/dist/{mcp/prompts/definitions → prompts}/review-and-post-issue.md +3 -1
  13. package/dist/prompts/task-management-guidelines.md +28 -0
  14. package/dist/{mcp/prompts/definitions → prompts}/task-memory-executor.md +6 -5
  15. package/package.json +22 -6
  16. package/dist/capabilities.d.ts +0 -22
  17. package/dist/capabilities.d.ts.map +0 -1
  18. package/dist/capabilities.js +0 -38
  19. package/dist/capabilities.js.map +0 -1
  20. package/dist/completion.d.ts +0 -25
  21. package/dist/completion.d.ts.map +0 -1
  22. package/dist/completion.js +0 -127
  23. package/dist/completion.js.map +0 -1
  24. package/dist/dashboard/dashboard.test.d.ts +0 -2
  25. package/dist/dashboard/dashboard.test.d.ts.map +0 -1
  26. package/dist/dashboard/dashboard.test.js +0 -370
  27. package/dist/dashboard/dashboard.test.js.map +0 -1
  28. package/dist/dashboard/public/assets/index-DIhCu9qA.js +0 -78
  29. package/dist/dashboard/server.d.ts +0 -3
  30. package/dist/dashboard/server.d.ts.map +0 -1
  31. package/dist/dashboard/server.js.map +0 -1
  32. package/dist/e2e.test.d.ts +0 -2
  33. package/dist/e2e.test.d.ts.map +0 -1
  34. package/dist/e2e.test.js +0 -250
  35. package/dist/e2e.test.js.map +0 -1
  36. package/dist/mcp/capabilities.d.ts +0 -22
  37. package/dist/mcp/capabilities.d.ts.map +0 -1
  38. package/dist/mcp/capabilities.js +0 -38
  39. package/dist/mcp/capabilities.js.map +0 -1
  40. package/dist/mcp/client.d.ts +0 -34
  41. package/dist/mcp/client.d.ts.map +0 -1
  42. package/dist/mcp/client.js +0 -188
  43. package/dist/mcp/client.js.map +0 -1
  44. package/dist/mcp/client.test.d.ts +0 -2
  45. package/dist/mcp/client.test.d.ts.map +0 -1
  46. package/dist/mcp/client.test.js +0 -130
  47. package/dist/mcp/client.test.js.map +0 -1
  48. package/dist/mcp/completion.d.ts +0 -25
  49. package/dist/mcp/completion.d.ts.map +0 -1
  50. package/dist/mcp/completion.js +0 -127
  51. package/dist/mcp/completion.js.map +0 -1
  52. package/dist/mcp/elicitation.d.ts +0 -24
  53. package/dist/mcp/elicitation.d.ts.map +0 -1
  54. package/dist/mcp/elicitation.js +0 -13
  55. package/dist/mcp/elicitation.js.map +0 -1
  56. package/dist/mcp/prompts/definitions/task-management-guidelines.md +0 -30
  57. package/dist/mcp/prompts/loader.d.ts +0 -10
  58. package/dist/mcp/prompts/loader.d.ts.map +0 -1
  59. package/dist/mcp/prompts/loader.js +0 -31
  60. package/dist/mcp/prompts/loader.js.map +0 -1
  61. package/dist/mcp/prompts/registry.d.ts +0 -35
  62. package/dist/mcp/prompts/registry.d.ts.map +0 -1
  63. package/dist/mcp/prompts/registry.js +0 -95
  64. package/dist/mcp/prompts/registry.js.map +0 -1
  65. package/dist/mcp/resources/index.d.ts +0 -68
  66. package/dist/mcp/resources/index.d.ts.map +0 -1
  67. package/dist/mcp/resources/index.js +0 -359
  68. package/dist/mcp/resources/index.js.map +0 -1
  69. package/dist/mcp/router.d.ts +0 -14
  70. package/dist/mcp/router.d.ts.map +0 -1
  71. package/dist/mcp/router.js +0 -255
  72. package/dist/mcp/router.js.map +0 -1
  73. package/dist/mcp/sampling.d.ts +0 -69
  74. package/dist/mcp/sampling.d.ts.map +0 -1
  75. package/dist/mcp/sampling.js +0 -13
  76. package/dist/mcp/sampling.js.map +0 -1
  77. package/dist/mcp/server.d.ts +0 -3
  78. package/dist/mcp/server.d.ts.map +0 -1
  79. package/dist/mcp/server.js.map +0 -1
  80. package/dist/mcp/session.d.ts +0 -28
  81. package/dist/mcp/session.d.ts.map +0 -1
  82. package/dist/mcp/session.js +0 -106
  83. package/dist/mcp/session.js.map +0 -1
  84. package/dist/mcp/storage/sqlite.d.ts +0 -87
  85. package/dist/mcp/storage/sqlite.d.ts.map +0 -1
  86. package/dist/mcp/storage/sqlite.js +0 -1327
  87. package/dist/mcp/storage/sqlite.js.map +0 -1
  88. package/dist/mcp/storage/vectors.d.ts +0 -19
  89. package/dist/mcp/storage/vectors.d.ts.map +0 -1
  90. package/dist/mcp/storage/vectors.js +0 -74
  91. package/dist/mcp/storage/vectors.js.map +0 -1
  92. package/dist/mcp/storage/vectors.stub.d.ts +0 -12
  93. package/dist/mcp/storage/vectors.stub.d.ts.map +0 -1
  94. package/dist/mcp/storage/vectors.stub.js +0 -88
  95. package/dist/mcp/storage/vectors.stub.js.map +0 -1
  96. package/dist/mcp/tests/client.test.d.ts +0 -2
  97. package/dist/mcp/tests/client.test.d.ts.map +0 -1
  98. package/dist/mcp/tests/client.test.js +0 -130
  99. package/dist/mcp/tests/client.test.js.map +0 -1
  100. package/dist/mcp/tests/dashboard.test.d.ts +0 -2
  101. package/dist/mcp/tests/dashboard.test.d.ts.map +0 -1
  102. package/dist/mcp/tests/dashboard.test.js +0 -370
  103. package/dist/mcp/tests/dashboard.test.js.map +0 -1
  104. package/dist/mcp/tests/detail-tools.test.d.ts +0 -2
  105. package/dist/mcp/tests/detail-tools.test.d.ts.map +0 -1
  106. package/dist/mcp/tests/detail-tools.test.js +0 -109
  107. package/dist/mcp/tests/detail-tools.test.js.map +0 -1
  108. package/dist/mcp/tests/e2e.test.d.ts +0 -2
  109. package/dist/mcp/tests/e2e.test.d.ts.map +0 -1
  110. package/dist/mcp/tests/e2e.test.js +0 -255
  111. package/dist/mcp/tests/e2e.test.js.map +0 -1
  112. package/dist/mcp/tests/index.test.d.ts +0 -2
  113. package/dist/mcp/tests/index.test.d.ts.map +0 -1
  114. package/dist/mcp/tests/index.test.js +0 -185
  115. package/dist/mcp/tests/index.test.js.map +0 -1
  116. package/dist/mcp/tests/logger.test.d.ts +0 -2
  117. package/dist/mcp/tests/logger.test.d.ts.map +0 -1
  118. package/dist/mcp/tests/logger.test.js +0 -104
  119. package/dist/mcp/tests/logger.test.js.map +0 -1
  120. package/dist/mcp/tests/memory.bulk.test.d.ts +0 -2
  121. package/dist/mcp/tests/memory.bulk.test.d.ts.map +0 -1
  122. package/dist/mcp/tests/memory.bulk.test.js +0 -53
  123. package/dist/mcp/tests/memory.bulk.test.js.map +0 -1
  124. package/dist/mcp/tests/memory.search.test.d.ts +0 -2
  125. package/dist/mcp/tests/memory.search.test.d.ts.map +0 -1
  126. package/dist/mcp/tests/memory.search.test.js +0 -181
  127. package/dist/mcp/tests/memory.search.test.js.map +0 -1
  128. package/dist/mcp/tests/normalize.test.d.ts +0 -2
  129. package/dist/mcp/tests/normalize.test.d.ts.map +0 -1
  130. package/dist/mcp/tests/normalize.test.js +0 -181
  131. package/dist/mcp/tests/normalize.test.js.map +0 -1
  132. package/dist/mcp/tests/query-expander.test.d.ts +0 -2
  133. package/dist/mcp/tests/query-expander.test.d.ts.map +0 -1
  134. package/dist/mcp/tests/query-expander.test.js +0 -33
  135. package/dist/mcp/tests/query-expander.test.js.map +0 -1
  136. package/dist/mcp/tests/router.test.d.ts +0 -2
  137. package/dist/mcp/tests/router.test.d.ts.map +0 -1
  138. package/dist/mcp/tests/router.test.js +0 -481
  139. package/dist/mcp/tests/router.test.js.map +0 -1
  140. package/dist/mcp/tests/spec_compliance.test.d.ts +0 -2
  141. package/dist/mcp/tests/spec_compliance.test.d.ts.map +0 -1
  142. package/dist/mcp/tests/spec_compliance.test.js +0 -61
  143. package/dist/mcp/tests/spec_compliance.test.js.map +0 -1
  144. package/dist/mcp/tests/sqlite.test.d.ts +0 -2
  145. package/dist/mcp/tests/sqlite.test.d.ts.map +0 -1
  146. package/dist/mcp/tests/sqlite.test.js +0 -367
  147. package/dist/mcp/tests/sqlite.test.js.map +0 -1
  148. package/dist/mcp/tests/tasks-search.test.d.ts +0 -2
  149. package/dist/mcp/tests/tasks-search.test.d.ts.map +0 -1
  150. package/dist/mcp/tests/tasks-search.test.js +0 -156
  151. package/dist/mcp/tests/tasks-search.test.js.map +0 -1
  152. package/dist/mcp/tests/tasks-transition.test.d.ts +0 -2
  153. package/dist/mcp/tests/tasks-transition.test.d.ts.map +0 -1
  154. package/dist/mcp/tests/tasks-transition.test.js +0 -174
  155. package/dist/mcp/tests/tasks-transition.test.js.map +0 -1
  156. package/dist/mcp/tests/tasks.bulk.test.d.ts +0 -2
  157. package/dist/mcp/tests/tasks.bulk.test.d.ts.map +0 -1
  158. package/dist/mcp/tests/tasks.bulk.test.js +0 -410
  159. package/dist/mcp/tests/tasks.bulk.test.js.map +0 -1
  160. package/dist/mcp/tests/tasks.e2e.test.d.ts +0 -2
  161. package/dist/mcp/tests/tasks.e2e.test.d.ts.map +0 -1
  162. package/dist/mcp/tests/tasks.e2e.test.js +0 -289
  163. package/dist/mcp/tests/tasks.e2e.test.js.map +0 -1
  164. package/dist/mcp/tests/tasks.pending-limit-refined.test.d.ts +0 -2
  165. package/dist/mcp/tests/tasks.pending-limit-refined.test.d.ts.map +0 -1
  166. package/dist/mcp/tests/tasks.pending-limit-refined.test.js +0 -72
  167. package/dist/mcp/tests/tasks.pending-limit-refined.test.js.map +0 -1
  168. package/dist/mcp/tests/v2-features.test.d.ts +0 -2
  169. package/dist/mcp/tests/v2-features.test.d.ts.map +0 -1
  170. package/dist/mcp/tests/v2-features.test.js +0 -209
  171. package/dist/mcp/tests/v2-features.test.js.map +0 -1
  172. package/dist/mcp/tools/memory.acknowledge.d.ts +0 -4
  173. package/dist/mcp/tools/memory.acknowledge.d.ts.map +0 -1
  174. package/dist/mcp/tools/memory.acknowledge.js +0 -32
  175. package/dist/mcp/tools/memory.acknowledge.js.map +0 -1
  176. package/dist/mcp/tools/memory.bulk-delete.d.ts +0 -4
  177. package/dist/mcp/tools/memory.bulk-delete.d.ts.map +0 -1
  178. package/dist/mcp/tools/memory.bulk-delete.js +0 -40
  179. package/dist/mcp/tools/memory.bulk-delete.js.map +0 -1
  180. package/dist/mcp/tools/memory.delete.d.ts +0 -9
  181. package/dist/mcp/tools/memory.delete.d.ts.map +0 -1
  182. package/dist/mcp/tools/memory.delete.js +0 -40
  183. package/dist/mcp/tools/memory.delete.js.map +0 -1
  184. package/dist/mcp/tools/memory.get.d.ts +0 -3
  185. package/dist/mcp/tools/memory.get.d.ts.map +0 -1
  186. package/dist/mcp/tools/memory.get.js +0 -24
  187. package/dist/mcp/tools/memory.get.js.map +0 -1
  188. package/dist/mcp/tools/memory.recap.d.ts +0 -4
  189. package/dist/mcp/tools/memory.recap.d.ts.map +0 -1
  190. package/dist/mcp/tools/memory.recap.js +0 -52
  191. package/dist/mcp/tools/memory.recap.js.map +0 -1
  192. package/dist/mcp/tools/memory.search.d.ts +0 -5
  193. package/dist/mcp/tools/memory.search.d.ts.map +0 -1
  194. package/dist/mcp/tools/memory.search.js +0 -144
  195. package/dist/mcp/tools/memory.search.js.map +0 -1
  196. package/dist/mcp/tools/memory.store.d.ts +0 -5
  197. package/dist/mcp/tools/memory.store.d.ts.map +0 -1
  198. package/dist/mcp/tools/memory.store.js +0 -120
  199. package/dist/mcp/tools/memory.store.js.map +0 -1
  200. package/dist/mcp/tools/memory.summarize.d.ts +0 -4
  201. package/dist/mcp/tools/memory.summarize.d.ts.map +0 -1
  202. package/dist/mcp/tools/memory.summarize.js +0 -32
  203. package/dist/mcp/tools/memory.summarize.js.map +0 -1
  204. package/dist/mcp/tools/memory.synthesize.d.ts +0 -14
  205. package/dist/mcp/tools/memory.synthesize.d.ts.map +0 -1
  206. package/dist/mcp/tools/memory.synthesize.js +0 -230
  207. package/dist/mcp/tools/memory.synthesize.js.map +0 -1
  208. package/dist/mcp/tools/memory.update.d.ts +0 -5
  209. package/dist/mcp/tools/memory.update.d.ts.map +0 -1
  210. package/dist/mcp/tools/memory.update.js +0 -74
  211. package/dist/mcp/tools/memory.update.js.map +0 -1
  212. package/dist/mcp/tools/schemas.d.ts +0 -3177
  213. package/dist/mcp/tools/schemas.d.ts.map +0 -1
  214. package/dist/mcp/tools/schemas.js +0 -1081
  215. package/dist/mcp/tools/schemas.js.map +0 -1
  216. package/dist/mcp/tools/task.bulk-manage.d.ts +0 -4
  217. package/dist/mcp/tools/task.bulk-manage.d.ts.map +0 -1
  218. package/dist/mcp/tools/task.bulk-manage.js +0 -190
  219. package/dist/mcp/tools/task.bulk-manage.js.map +0 -1
  220. package/dist/mcp/tools/task.get.d.ts +0 -3
  221. package/dist/mcp/tools/task.get.d.ts.map +0 -1
  222. package/dist/mcp/tools/task.get.js +0 -32
  223. package/dist/mcp/tools/task.get.js.map +0 -1
  224. package/dist/mcp/tools/task.manage.d.ts +0 -18
  225. package/dist/mcp/tools/task.manage.d.ts.map +0 -1
  226. package/dist/mcp/tools/task.manage.js +0 -477
  227. package/dist/mcp/tools/task.manage.js.map +0 -1
  228. package/dist/mcp/types.d.ts +0 -87
  229. package/dist/mcp/types.d.ts.map +0 -1
  230. package/dist/mcp/types.js +0 -3
  231. package/dist/mcp/types.js.map +0 -1
  232. package/dist/mcp/utils/completion.d.ts +0 -2
  233. package/dist/mcp/utils/completion.d.ts.map +0 -1
  234. package/dist/mcp/utils/completion.js +0 -28
  235. package/dist/mcp/utils/completion.js.map +0 -1
  236. package/dist/mcp/utils/git-scope.d.ts +0 -8
  237. package/dist/mcp/utils/git-scope.d.ts.map +0 -1
  238. package/dist/mcp/utils/git-scope.js +0 -38
  239. package/dist/mcp/utils/git-scope.js.map +0 -1
  240. package/dist/mcp/utils/logger.d.ts +0 -25
  241. package/dist/mcp/utils/logger.d.ts.map +0 -1
  242. package/dist/mcp/utils/logger.js +0 -152
  243. package/dist/mcp/utils/logger.js.map +0 -1
  244. package/dist/mcp/utils/mcp-response.d.ts +0 -82
  245. package/dist/mcp/utils/mcp-response.d.ts.map +0 -1
  246. package/dist/mcp/utils/mcp-response.js +0 -182
  247. package/dist/mcp/utils/mcp-response.js.map +0 -1
  248. package/dist/mcp/utils/normalize.d.ts +0 -9
  249. package/dist/mcp/utils/normalize.d.ts.map +0 -1
  250. package/dist/mcp/utils/normalize.js +0 -62
  251. package/dist/mcp/utils/normalize.js.map +0 -1
  252. package/dist/mcp/utils/pagination.d.ts +0 -6
  253. package/dist/mcp/utils/pagination.d.ts.map +0 -1
  254. package/dist/mcp/utils/pagination.js +0 -32
  255. package/dist/mcp/utils/pagination.js.map +0 -1
  256. package/dist/mcp/utils/query-expander.d.ts +0 -2
  257. package/dist/mcp/utils/query-expander.d.ts.map +0 -1
  258. package/dist/mcp/utils/query-expander.js +0 -29
  259. package/dist/mcp/utils/query-expander.js.map +0 -1
  260. package/dist/memory.bulk.test.d.ts +0 -2
  261. package/dist/memory.bulk.test.d.ts.map +0 -1
  262. package/dist/memory.bulk.test.js +0 -52
  263. package/dist/memory.bulk.test.js.map +0 -1
  264. package/dist/memory.db +0 -0
  265. package/dist/prompts/registry.d.ts +0 -314
  266. package/dist/prompts/registry.d.ts.map +0 -1
  267. package/dist/prompts/registry.js +0 -936
  268. package/dist/prompts/registry.js.map +0 -1
  269. package/dist/resources/index.d.ts +0 -68
  270. package/dist/resources/index.d.ts.map +0 -1
  271. package/dist/resources/index.js +0 -323
  272. package/dist/resources/index.js.map +0 -1
  273. package/dist/resources/index.test.d.ts +0 -2
  274. package/dist/resources/index.test.d.ts.map +0 -1
  275. package/dist/resources/index.test.js +0 -105
  276. package/dist/resources/index.test.js.map +0 -1
  277. package/dist/router.d.ts +0 -14
  278. package/dist/router.d.ts.map +0 -1
  279. package/dist/router.js +0 -242
  280. package/dist/router.js.map +0 -1
  281. package/dist/router.test.d.ts +0 -2
  282. package/dist/router.test.d.ts.map +0 -1
  283. package/dist/router.test.js +0 -122
  284. package/dist/router.test.js.map +0 -1
  285. package/dist/server.d.ts +0 -3
  286. package/dist/server.d.ts.map +0 -1
  287. package/dist/server.js +0 -338
  288. package/dist/server.js.map +0 -1
  289. package/dist/storage/sqlite.d.ts +0 -79
  290. package/dist/storage/sqlite.d.ts.map +0 -1
  291. package/dist/storage/sqlite.js +0 -1148
  292. package/dist/storage/sqlite.js.map +0 -1
  293. package/dist/storage/sqlite.test.d.ts +0 -2
  294. package/dist/storage/sqlite.test.d.ts.map +0 -1
  295. package/dist/storage/sqlite.test.js +0 -367
  296. package/dist/storage/sqlite.test.js.map +0 -1
  297. package/dist/storage/vectors.d.ts +0 -19
  298. package/dist/storage/vectors.d.ts.map +0 -1
  299. package/dist/storage/vectors.js +0 -74
  300. package/dist/storage/vectors.js.map +0 -1
  301. package/dist/storage/vectors.stub.d.ts +0 -12
  302. package/dist/storage/vectors.stub.d.ts.map +0 -1
  303. package/dist/storage/vectors.stub.js +0 -88
  304. package/dist/storage/vectors.stub.js.map +0 -1
  305. package/dist/tasks.archive.test.d.ts +0 -2
  306. package/dist/tasks.archive.test.d.ts.map +0 -1
  307. package/dist/tasks.archive.test.js +0 -75
  308. package/dist/tasks.archive.test.js.map +0 -1
  309. package/dist/tasks.bulk.test.d.ts +0 -2
  310. package/dist/tasks.bulk.test.d.ts.map +0 -1
  311. package/dist/tasks.bulk.test.js +0 -250
  312. package/dist/tasks.bulk.test.js.map +0 -1
  313. package/dist/tasks.e2e.test.d.ts +0 -2
  314. package/dist/tasks.e2e.test.d.ts.map +0 -1
  315. package/dist/tasks.e2e.test.js +0 -289
  316. package/dist/tasks.e2e.test.js.map +0 -1
  317. package/dist/tests/client.test.d.ts +0 -2
  318. package/dist/tests/client.test.d.ts.map +0 -1
  319. package/dist/tests/client.test.js +0 -130
  320. package/dist/tests/client.test.js.map +0 -1
  321. package/dist/tests/dashboard.test.d.ts +0 -2
  322. package/dist/tests/dashboard.test.d.ts.map +0 -1
  323. package/dist/tests/dashboard.test.js +0 -370
  324. package/dist/tests/dashboard.test.js.map +0 -1
  325. package/dist/tests/e2e.test.d.ts +0 -2
  326. package/dist/tests/e2e.test.d.ts.map +0 -1
  327. package/dist/tests/e2e.test.js +0 -250
  328. package/dist/tests/e2e.test.js.map +0 -1
  329. package/dist/tests/index.test.d.ts +0 -2
  330. package/dist/tests/index.test.d.ts.map +0 -1
  331. package/dist/tests/index.test.js +0 -185
  332. package/dist/tests/index.test.js.map +0 -1
  333. package/dist/tests/logger.test.d.ts +0 -2
  334. package/dist/tests/logger.test.d.ts.map +0 -1
  335. package/dist/tests/logger.test.js +0 -104
  336. package/dist/tests/logger.test.js.map +0 -1
  337. package/dist/tests/memory.bulk.test.d.ts +0 -2
  338. package/dist/tests/memory.bulk.test.d.ts.map +0 -1
  339. package/dist/tests/memory.bulk.test.js +0 -52
  340. package/dist/tests/memory.bulk.test.js.map +0 -1
  341. package/dist/tests/memory.search.test.d.ts +0 -2
  342. package/dist/tests/memory.search.test.d.ts.map +0 -1
  343. package/dist/tests/memory.search.test.js +0 -181
  344. package/dist/tests/memory.search.test.js.map +0 -1
  345. package/dist/tests/normalize.test.d.ts +0 -2
  346. package/dist/tests/normalize.test.d.ts.map +0 -1
  347. package/dist/tests/normalize.test.js +0 -181
  348. package/dist/tests/normalize.test.js.map +0 -1
  349. package/dist/tests/query-expander.test.d.ts +0 -2
  350. package/dist/tests/query-expander.test.d.ts.map +0 -1
  351. package/dist/tests/query-expander.test.js +0 -33
  352. package/dist/tests/query-expander.test.js.map +0 -1
  353. package/dist/tests/router.test.d.ts +0 -2
  354. package/dist/tests/router.test.d.ts.map +0 -1
  355. package/dist/tests/router.test.js +0 -470
  356. package/dist/tests/router.test.js.map +0 -1
  357. package/dist/tests/sqlite.test.d.ts +0 -2
  358. package/dist/tests/sqlite.test.d.ts.map +0 -1
  359. package/dist/tests/sqlite.test.js +0 -367
  360. package/dist/tests/sqlite.test.js.map +0 -1
  361. package/dist/tests/tasks-search.test.d.ts +0 -2
  362. package/dist/tests/tasks-search.test.d.ts.map +0 -1
  363. package/dist/tests/tasks-search.test.js +0 -154
  364. package/dist/tests/tasks-search.test.js.map +0 -1
  365. package/dist/tests/tasks-transition.test.d.ts +0 -2
  366. package/dist/tests/tasks-transition.test.d.ts.map +0 -1
  367. package/dist/tests/tasks-transition.test.js +0 -174
  368. package/dist/tests/tasks-transition.test.js.map +0 -1
  369. package/dist/tests/tasks.bulk.test.d.ts +0 -2
  370. package/dist/tests/tasks.bulk.test.d.ts.map +0 -1
  371. package/dist/tests/tasks.bulk.test.js +0 -254
  372. package/dist/tests/tasks.bulk.test.js.map +0 -1
  373. package/dist/tests/tasks.e2e.test.d.ts +0 -2
  374. package/dist/tests/tasks.e2e.test.d.ts.map +0 -1
  375. package/dist/tests/tasks.e2e.test.js +0 -289
  376. package/dist/tests/tasks.e2e.test.js.map +0 -1
  377. package/dist/tests/tasks.pending-limit-refined.test.d.ts +0 -2
  378. package/dist/tests/tasks.pending-limit-refined.test.d.ts.map +0 -1
  379. package/dist/tests/tasks.pending-limit-refined.test.js +0 -72
  380. package/dist/tests/tasks.pending-limit-refined.test.js.map +0 -1
  381. package/dist/tests/v2-features.test.d.ts +0 -2
  382. package/dist/tests/v2-features.test.d.ts.map +0 -1
  383. package/dist/tests/v2-features.test.js +0 -209
  384. package/dist/tests/v2-features.test.js.map +0 -1
  385. package/dist/tools/memory.acknowledge.d.ts +0 -4
  386. package/dist/tools/memory.acknowledge.d.ts.map +0 -1
  387. package/dist/tools/memory.acknowledge.js +0 -30
  388. package/dist/tools/memory.acknowledge.js.map +0 -1
  389. package/dist/tools/memory.bulk-delete.d.ts +0 -4
  390. package/dist/tools/memory.bulk-delete.d.ts.map +0 -1
  391. package/dist/tools/memory.bulk-delete.js +0 -39
  392. package/dist/tools/memory.bulk-delete.js.map +0 -1
  393. package/dist/tools/memory.delete.d.ts +0 -9
  394. package/dist/tools/memory.delete.d.ts.map +0 -1
  395. package/dist/tools/memory.delete.js +0 -39
  396. package/dist/tools/memory.delete.js.map +0 -1
  397. package/dist/tools/memory.recap.d.ts +0 -4
  398. package/dist/tools/memory.recap.d.ts.map +0 -1
  399. package/dist/tools/memory.recap.js +0 -90
  400. package/dist/tools/memory.recap.js.map +0 -1
  401. package/dist/tools/memory.search.d.ts +0 -5
  402. package/dist/tools/memory.search.d.ts.map +0 -1
  403. package/dist/tools/memory.search.js +0 -134
  404. package/dist/tools/memory.search.js.map +0 -1
  405. package/dist/tools/memory.search.test.d.ts +0 -2
  406. package/dist/tools/memory.search.test.d.ts.map +0 -1
  407. package/dist/tools/memory.search.test.js +0 -181
  408. package/dist/tools/memory.search.test.js.map +0 -1
  409. package/dist/tools/memory.store.d.ts +0 -5
  410. package/dist/tools/memory.store.d.ts.map +0 -1
  411. package/dist/tools/memory.store.js +0 -117
  412. package/dist/tools/memory.store.js.map +0 -1
  413. package/dist/tools/memory.summarize.d.ts +0 -4
  414. package/dist/tools/memory.summarize.d.ts.map +0 -1
  415. package/dist/tools/memory.summarize.js +0 -31
  416. package/dist/tools/memory.summarize.js.map +0 -1
  417. package/dist/tools/memory.synthesize.d.ts +0 -14
  418. package/dist/tools/memory.synthesize.d.ts.map +0 -1
  419. package/dist/tools/memory.synthesize.js +0 -228
  420. package/dist/tools/memory.synthesize.js.map +0 -1
  421. package/dist/tools/memory.update.d.ts +0 -5
  422. package/dist/tools/memory.update.d.ts.map +0 -1
  423. package/dist/tools/memory.update.js +0 -73
  424. package/dist/tools/memory.update.js.map +0 -1
  425. package/dist/tools/schemas.d.ts +0 -2762
  426. package/dist/tools/schemas.d.ts.map +0 -1
  427. package/dist/tools/schemas.js +0 -952
  428. package/dist/tools/schemas.js.map +0 -1
  429. package/dist/tools/task.bulk-manage.d.ts +0 -4
  430. package/dist/tools/task.bulk-manage.d.ts.map +0 -1
  431. package/dist/tools/task.bulk-manage.js +0 -146
  432. package/dist/tools/task.bulk-manage.js.map +0 -1
  433. package/dist/tools/task.manage.d.ts +0 -16
  434. package/dist/tools/task.manage.d.ts.map +0 -1
  435. package/dist/tools/task.manage.js +0 -395
  436. package/dist/tools/task.manage.js.map +0 -1
  437. package/dist/tools/tasks-transition.test.d.ts +0 -2
  438. package/dist/tools/tasks-transition.test.d.ts.map +0 -1
  439. package/dist/tools/tasks-transition.test.js +0 -174
  440. package/dist/tools/tasks-transition.test.js.map +0 -1
  441. package/dist/tools/tasks.pending-limit-refined.test.d.ts +0 -2
  442. package/dist/tools/tasks.pending-limit-refined.test.d.ts.map +0 -1
  443. package/dist/tools/tasks.pending-limit-refined.test.js +0 -72
  444. package/dist/tools/tasks.pending-limit-refined.test.js.map +0 -1
  445. package/dist/types.d.ts +0 -87
  446. package/dist/types.d.ts.map +0 -1
  447. package/dist/types.js +0 -3
  448. package/dist/types.js.map +0 -1
  449. package/dist/utils/completion.d.ts +0 -2
  450. package/dist/utils/completion.d.ts.map +0 -1
  451. package/dist/utils/completion.js +0 -28
  452. package/dist/utils/completion.js.map +0 -1
  453. package/dist/utils/git-scope.d.ts +0 -8
  454. package/dist/utils/git-scope.d.ts.map +0 -1
  455. package/dist/utils/git-scope.js +0 -38
  456. package/dist/utils/git-scope.js.map +0 -1
  457. package/dist/utils/logger.d.ts +0 -25
  458. package/dist/utils/logger.d.ts.map +0 -1
  459. package/dist/utils/logger.js +0 -152
  460. package/dist/utils/logger.js.map +0 -1
  461. package/dist/utils/logger.test.d.ts +0 -2
  462. package/dist/utils/logger.test.d.ts.map +0 -1
  463. package/dist/utils/logger.test.js +0 -76
  464. package/dist/utils/logger.test.js.map +0 -1
  465. package/dist/utils/mcp-response.d.ts +0 -96
  466. package/dist/utils/mcp-response.d.ts.map +0 -1
  467. package/dist/utils/mcp-response.js +0 -131
  468. package/dist/utils/mcp-response.js.map +0 -1
  469. package/dist/utils/normalize.d.ts +0 -9
  470. package/dist/utils/normalize.d.ts.map +0 -1
  471. package/dist/utils/normalize.js +0 -62
  472. package/dist/utils/normalize.js.map +0 -1
  473. package/dist/utils/normalize.test.d.ts +0 -2
  474. package/dist/utils/normalize.test.d.ts.map +0 -1
  475. package/dist/utils/normalize.test.js +0 -159
  476. package/dist/utils/normalize.test.js.map +0 -1
  477. package/dist/utils/pagination.d.ts +0 -6
  478. package/dist/utils/pagination.d.ts.map +0 -1
  479. package/dist/utils/pagination.js +0 -32
  480. package/dist/utils/pagination.js.map +0 -1
  481. package/dist/utils/query-expander.d.ts +0 -2
  482. package/dist/utils/query-expander.d.ts.map +0 -1
  483. package/dist/utils/query-expander.js +0 -29
  484. package/dist/utils/query-expander.js.map +0 -1
  485. package/dist/utils/query-expander.test.d.ts +0 -2
  486. package/dist/utils/query-expander.test.d.ts.map +0 -1
  487. package/dist/utils/query-expander.test.js +0 -33
  488. package/dist/utils/query-expander.test.js.map +0 -1
  489. package/dist/v2-features.test.d.ts +0 -2
  490. package/dist/v2-features.test.d.ts.map +0 -1
  491. package/dist/v2-features.test.js +0 -209
  492. package/dist/v2-features.test.js.map +0 -1
  493. /package/dist/{mcp/prompts/definitions → prompts}/architecture-design.md +0 -0
  494. /package/dist/{mcp/prompts/definitions → prompts}/documentation-sync.md +0 -0
  495. /package/dist/{mcp/prompts/definitions → prompts}/fix-suggestion.md +0 -0
  496. /package/dist/{mcp/prompts/definitions → prompts}/import-github-issues.md +0 -0
  497. /package/dist/{mcp/prompts/definitions → prompts}/learning-retrospective.md +0 -0
  498. /package/dist/{mcp/prompts/definitions → prompts}/memory-guided-review.md +0 -0
  499. /package/dist/{mcp/prompts/definitions → prompts}/project-briefing.md +0 -0
  500. /package/dist/{mcp/prompts/definitions → prompts}/root-cause-analysis.md +0 -0
  501. /package/dist/{mcp/prompts/definitions → prompts}/security-triage.md +0 -0
  502. /package/dist/{mcp/prompts/definitions → prompts}/senior-code-review.md +0 -0
  503. /package/dist/{mcp/prompts/definitions → prompts}/session-planner.md +0 -0
  504. /package/dist/{mcp/prompts/definitions → prompts}/tech-affinity-scout.md +0 -0
  505. /package/dist/{mcp/prompts/definitions → prompts}/technical-planning.md +0 -0
  506. /package/dist/{mcp/prompts/definitions → prompts}/tool-usage-guidelines.md +0 -0
@@ -1,32 +0,0 @@
1
- import { MemoryAcknowledgeSchema } from "./schemas.js";
2
- import { logger } from "../utils/logger.js";
3
- import { createMcpResponse } from "../utils/mcp-response.js";
4
- export async function handleMemoryAcknowledge(params, db) {
5
- // Validate input
6
- const validated = MemoryAcknowledgeSchema.parse(params);
7
- // Check if memory exists
8
- const memory = db.getById(validated.memory_id);
9
- if (!memory) {
10
- throw new Error(`Memory with ID ${validated.memory_id} not found.`);
11
- }
12
- // Update statistics based on status
13
- if (validated.status === "used") {
14
- db.incrementRecallCount(memory.id);
15
- logger.info("[MCP] memory.acknowledge - used", { id: memory.id, context: validated.application_context });
16
- }
17
- else if (validated.status === "contradictory") {
18
- // Flag for potential manual audit later
19
- logger.warn("[MCP] memory.acknowledge - contradiction reported", { id: memory.id, context: validated.application_context });
20
- }
21
- else {
22
- logger.info("[MCP] memory.acknowledge - irrelevant", { id: memory.id, context: validated.application_context });
23
- }
24
- return createMcpResponse({
25
- success: true,
26
- id: memory.id,
27
- status: validated.status
28
- }, `Acknowledged memory ${memory.id} as "${validated.status}".`, {
29
- structuredContentPathHint: "status",
30
- });
31
- }
32
- //# sourceMappingURL=memory.acknowledge.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.acknowledge.js","sourceRoot":"","sources":["../../../src/mcp/tools/memory.acknowledge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAe,MAAM,0BAA0B,CAAC;AAE1E,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAAW,EACX,EAAe;IAEf,iBAAiB;IACjB,MAAM,SAAS,GAAG,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAExD,yBAAyB;IACzB,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,kBAAkB,SAAS,CAAC,SAAS,aAAa,CAAC,CAAC;IACtE,CAAC;IAED,oCAAoC;IACpC,IAAI,SAAS,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAChC,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnC,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAC5G,CAAC;SAAM,IAAI,SAAS,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;QAChD,wCAAwC;QACxC,MAAM,CAAC,IAAI,CAAC,mDAAmD,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAC9H,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAClH,CAAC;IAED,OAAO,iBAAiB,CACtB;QACE,OAAO,EAAE,IAAI;QACb,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,MAAM,EAAE,SAAS,CAAC,MAAM;KACzB,EACD,uBAAuB,MAAM,CAAC,EAAE,QAAQ,SAAS,CAAC,MAAM,IAAI,EAC5D;QACE,yBAAyB,EAAE,QAAQ;KACpC,CACF,CAAC;AACJ,CAAC"}
@@ -1,4 +0,0 @@
1
- import { SQLiteStore } from "../storage/sqlite.js";
2
- import { VectorStore } from "../types.js";
3
- export declare function handleMemoryBulkDelete(args: any, storage: SQLiteStore, vectors: VectorStore, onProgress?: (progress: number, total?: number) => void): Promise<import("../utils/mcp-response.js").McpResponse>;
4
- //# sourceMappingURL=memory.bulk-delete.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.bulk-delete.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/memory.bulk-delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI1C,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,WAAW,EACpB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,2DA8CxD"}
@@ -1,40 +0,0 @@
1
- import { createMcpResponse } from "../utils/mcp-response.js";
2
- import { MemoryBulkDeleteSchema } from "./schemas.js";
3
- export async function handleMemoryBulkDelete(args, storage, vectors, onProgress) {
4
- const { repo, ids } = MemoryBulkDeleteSchema.parse(args);
5
- const total = ids.length;
6
- let progress = 0;
7
- for (const id of ids) {
8
- if (onProgress) {
9
- onProgress(progress, total);
10
- }
11
- storage.delete(id);
12
- await vectors.remove(id);
13
- progress++;
14
- }
15
- if (onProgress) {
16
- onProgress(progress, total);
17
- }
18
- storage.logAction("delete", repo, { resultCount: ids.length, query: "Bulk Delete" });
19
- return createMcpResponse({
20
- success: true,
21
- repo,
22
- deletedCount: ids.length,
23
- ids,
24
- }, `Deleted ${ids.length} memories from repo "${repo}".`, {
25
- structuredContentPathHint: "ids",
26
- resourceLinks: [
27
- {
28
- uri: `memory://index?repo=${encodeURIComponent(repo)}`,
29
- name: `Memory Index (${repo})`,
30
- description: "Repository memory index after bulk deletion",
31
- mimeType: "application/json",
32
- annotations: {
33
- audience: ["assistant"],
34
- priority: 0.5,
35
- },
36
- },
37
- ],
38
- });
39
- }
40
- //# sourceMappingURL=memory.bulk-delete.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.bulk-delete.js","sourceRoot":"","sources":["../../../src/mcp/tools/memory.bulk-delete.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAS,EACT,OAAoB,EACpB,OAAoB,EACpB,UAAuD;IAEvD,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEzD,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC;IACzB,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,IAAI,UAAU,EAAE,CAAC;YACf,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnB,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzB,QAAQ,EAAE,CAAC;IACb,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACf,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;IAErF,OAAO,iBAAiB,CACtB;QACE,OAAO,EAAE,IAAI;QACb,IAAI;QACJ,YAAY,EAAE,GAAG,CAAC,MAAM;QACxB,GAAG;KACJ,EACD,WAAW,GAAG,CAAC,MAAM,wBAAwB,IAAI,IAAI,EACrD;QACE,yBAAyB,EAAE,KAAK;QAChC,aAAa,EAAE;YACb;gBACE,GAAG,EAAE,uBAAuB,kBAAkB,CAAC,IAAI,CAAC,EAAE;gBACtD,IAAI,EAAE,iBAAiB,IAAI,GAAG;gBAC9B,WAAW,EAAE,6CAA6C;gBAC1D,QAAQ,EAAE,kBAAkB;gBAC5B,WAAW,EAAE;oBACX,QAAQ,EAAE,CAAC,WAAW,CAAC;oBACvB,QAAQ,EAAE,GAAG;iBACd;aACF;SACF;KACF,CACF,CAAC;AACJ,CAAC"}
@@ -1,9 +0,0 @@
1
- import { z } from "zod";
2
- import { SQLiteStore } from "../storage/sqlite.js";
3
- import { VectorStore } from "../types.js";
4
- import { McpResponse } from "../utils/mcp-response.js";
5
- export declare const MemoryDeleteSchema: z.ZodObject<{
6
- id: z.ZodString;
7
- }, z.core.$strip>;
8
- export declare function handleMemoryDelete(params: any, db: SQLiteStore, vectors: VectorStore): Promise<McpResponse>;
9
- //# sourceMappingURL=memory.delete.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.delete.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/memory.delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAqB,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG1E,eAAO,MAAM,kBAAkB;;iBAE7B,CAAC;AAEH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,GAAG,EACX,EAAE,EAAE,WAAW,EACf,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,WAAW,CAAC,CAyCtB"}
@@ -1,40 +0,0 @@
1
- import { z } from "zod";
2
- import { createMcpResponse } from "../utils/mcp-response.js";
3
- import { logger } from "../utils/logger.js";
4
- export const MemoryDeleteSchema = z.object({
5
- id: z.string().uuid()
6
- });
7
- export async function handleMemoryDelete(params, db, vectors) {
8
- // Validate input
9
- const validated = MemoryDeleteSchema.parse(params);
10
- // Check if memory exists
11
- const existing = db.getById(validated.id);
12
- if (!existing) {
13
- throw new Error(`Memory not found: ${validated.id}`);
14
- }
15
- // Delete from SQLite
16
- db.delete(validated.id);
17
- // Delete from vector store
18
- await vectors.remove(validated.id);
19
- logger.info("[MCP] memory.delete", { repo: existing.scope.repo, id: validated.id, title: existing.title });
20
- return createMcpResponse({
21
- success: true,
22
- id: validated.id,
23
- repo: existing.scope.repo,
24
- }, `Deleted memory ${validated.id} from repo "${existing.scope.repo}".`, {
25
- structuredContentPathHint: "id",
26
- resourceLinks: [
27
- {
28
- uri: `memory://index?repo=${encodeURIComponent(existing.scope.repo)}`,
29
- name: `Memory Index (${existing.scope.repo})`,
30
- description: "Repository memory index after deletion",
31
- mimeType: "application/json",
32
- annotations: {
33
- audience: ["assistant"],
34
- priority: 0.5,
35
- },
36
- },
37
- ],
38
- });
39
- }
40
- //# sourceMappingURL=memory.delete.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.delete.js","sourceRoot":"","sources":["../../../src/mcp/tools/memory.delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAe,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;CACtB,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAW,EACX,EAAe,EACf,OAAoB;IAEpB,iBAAiB;IACjB,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEnD,yBAAyB;IACzB,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,qBAAqB;IACrB,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAExB,2BAA2B;IAC3B,MAAM,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAEnC,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAE3G,OAAO,iBAAiB,CACtB;QACE,OAAO,EAAE,IAAI;QACb,EAAE,EAAE,SAAS,CAAC,EAAE;QAChB,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI;KAC1B,EACD,kBAAkB,SAAS,CAAC,EAAE,eAAe,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,EACpE;QACE,yBAAyB,EAAE,IAAI;QAC/B,aAAa,EAAE;YACb;gBACE,GAAG,EAAE,uBAAuB,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;gBACrE,IAAI,EAAE,iBAAiB,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG;gBAC7C,WAAW,EAAE,wCAAwC;gBACrD,QAAQ,EAAE,kBAAkB;gBAC5B,WAAW,EAAE;oBACX,QAAQ,EAAE,CAAC,WAAW,CAAC;oBACvB,QAAQ,EAAE,GAAG;iBACd;aACF;SACF;KACF,CACF,CAAC;AACJ,CAAC"}
@@ -1,3 +0,0 @@
1
- import { SQLiteStore } from "../storage/sqlite.js";
2
- export declare function handleMemoryGet(args: any, storage: SQLiteStore): Promise<import("../utils/mcp-response.js").McpResponse>;
3
- //# sourceMappingURL=memory.get.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.get.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/memory.get.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAInD,wBAAsB,eAAe,CACnC,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,WAAW,2DA6BrB"}
@@ -1,24 +0,0 @@
1
- import { createMcpResponse } from "../utils/mcp-response.js";
2
- import { MemoryGetSchema } from "./schemas.js";
3
- export async function handleMemoryGet(args, storage) {
4
- const { id } = MemoryGetSchema.parse(args);
5
- const memory = storage.getById(id);
6
- if (!memory) {
7
- throw new Error(`Memory not found: ${id}`);
8
- }
9
- // Increment hit count when explicitly fetched
10
- storage.incrementHitCount(id);
11
- const summary = `Memory [${memory.type}] ${memory.title}: ${memory.content.substring(0, 100)}${memory.content.length > 100 ? "..." : ""}`;
12
- return createMcpResponse(memory, summary, {
13
- contentSummary: summary,
14
- includeSerializedStructuredContent: true,
15
- resourceLinks: [
16
- {
17
- uri: `memory://${id}`,
18
- name: `Memory: ${memory.title}`,
19
- mimeType: "application/json",
20
- },
21
- ],
22
- });
23
- }
24
- //# sourceMappingURL=memory.get.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.get.js","sourceRoot":"","sources":["../../../src/mcp/tools/memory.get.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAS,EACT,OAAoB;IAEpB,MAAM,EAAE,EAAE,EAAE,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAEnC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,8CAA8C;IAC9C,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAE9B,MAAM,OAAO,GAAG,WAAW,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAE1I,OAAO,iBAAiB,CACtB,MAAM,EACN,OAAO,EACP;QACE,cAAc,EAAE,OAAO;QACvB,kCAAkC,EAAE,IAAI;QACxC,aAAa,EAAE;YACb;gBACE,GAAG,EAAE,YAAY,EAAE,EAAE;gBACrB,IAAI,EAAE,WAAW,MAAM,CAAC,KAAK,EAAE;gBAC/B,QAAQ,EAAE,kBAAkB;aAC7B;SACF;KACF,CACF,CAAC;AACJ,CAAC"}
@@ -1,4 +0,0 @@
1
- import { SQLiteStore } from "../storage/sqlite.js";
2
- import { McpResponse } from "../utils/mcp-response.js";
3
- export declare function handleMemoryRecap(params: any, db: SQLiteStore): Promise<McpResponse>;
4
- //# sourceMappingURL=memory.recap.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.recap.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/memory.recap.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAqB,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG1E,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,GAAG,EACX,EAAE,EAAE,WAAW,GACd,OAAO,CAAC,WAAW,CAAC,CA4DtB"}
@@ -1,52 +0,0 @@
1
- import { MemoryRecapSchema } from "./schemas.js";
2
- import { createMcpResponse } from "../utils/mcp-response.js";
3
- import { logger } from "../utils/logger.js";
4
- export async function handleMemoryRecap(params, db) {
5
- const validated = MemoryRecapSchema.parse(params);
6
- logger.info("[MCP] memory.recap", { repo: validated.repo, limit: validated.limit, offset: validated.offset });
7
- // Fetch aggregate stats (counts by type, total)
8
- const stats = db.getStats(validated.repo);
9
- // Total active memories (excluding task_archive)
10
- const total = db.getTotalCount(validated.repo, false, ["task_archive"]);
11
- // Fetch top memories ordered by importance DESC, created_at DESC
12
- const rows = db.getRecentMemories(validated.repo, validated.limit, validated.offset, false, ["task_archive"]);
13
- // Build pointer table — columns: [id, title, type, importance]
14
- const COLUMNS = ["id", "title", "type", "importance"];
15
- const topRows = rows.map(row => [
16
- row.id,
17
- row.title ?? "Untitled",
18
- row.type,
19
- row.importance,
20
- ]);
21
- // Build by_type stats, excluding task_archive
22
- const byType = {};
23
- for (const [type, count] of Object.entries(stats.byType)) {
24
- if (type !== "task_archive") {
25
- byType[type] = count;
26
- }
27
- }
28
- const structuredContent = {
29
- schema: "memory-recap",
30
- repo: validated.repo,
31
- count: rows.length,
32
- total,
33
- offset: validated.offset,
34
- limit: validated.limit,
35
- stats: {
36
- by_type: byType,
37
- },
38
- top: {
39
- columns: [...COLUMNS],
40
- rows: topRows,
41
- },
42
- };
43
- const memoryList = rows.map(row => `"${row.title}" (ID: ${row.id})`).join(", ");
44
- const contentSummary = total > 0
45
- ? `Repo "${validated.repo}" has ${total} active memories. Showing ${rows.length} at offset ${validated.offset}: ${memoryList}. Use memory-detail to read full content.`
46
- : `No memories found for repo "${validated.repo}".`;
47
- return createMcpResponse(structuredContent, contentSummary, {
48
- contentSummary,
49
- includeSerializedStructuredContent: false,
50
- });
51
- }
52
- //# sourceMappingURL=memory.recap.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.recap.js","sourceRoot":"","sources":["../../../src/mcp/tools/memory.recap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,iBAAiB,EAAe,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAW,EACX,EAAe;IAEf,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAElD,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IAE9G,gDAAgD;IAChD,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAE1C,iDAAiD;IACjD,MAAM,KAAK,GAAG,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAExE,iEAAiE;IACjE,MAAM,IAAI,GAAG,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAE9G,+DAA+D;IAC/D,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAU,CAAC;IAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,GAAG,CAAC,EAAE;QACN,GAAG,CAAC,KAAK,IAAI,UAAU;QACvB,GAAG,CAAC,IAAI;QACR,GAAG,CAAC,UAAU;KACf,CAAC,CAAC;IAEH,8CAA8C;IAC9C,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACzD,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACvB,CAAC;IACH,CAAC;IAED,MAAM,iBAAiB,GAAG;QACxB,MAAM,EAAE,cAAuB;QAC/B,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,KAAK,EAAE,IAAI,CAAC,MAAM;QAClB,KAAK;QACL,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,KAAK,EAAE;YACL,OAAO,EAAE,MAAM;SAChB;QACD,GAAG,EAAE;YACH,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC;YACrB,IAAI,EAAE,OAAO;SACd;KACF,CAAC;IAEF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,UAAU,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChF,MAAM,cAAc,GAAG,KAAK,GAAG,CAAC;QAC9B,CAAC,CAAC,SAAS,SAAS,CAAC,IAAI,SAAS,KAAK,6BAA6B,IAAI,CAAC,MAAM,cAAc,SAAS,CAAC,MAAM,KAAK,UAAU,2CAA2C;QACvK,CAAC,CAAC,+BAA+B,SAAS,CAAC,IAAI,IAAI,CAAC;IAEtD,OAAO,iBAAiB,CACtB,iBAAiB,EACjB,cAAc,EACd;QACE,cAAc;QACd,kCAAkC,EAAE,KAAK;KAC1C,CACF,CAAC;AACJ,CAAC"}
@@ -1,5 +0,0 @@
1
- import { SQLiteStore } from "../storage/sqlite.js";
2
- import { VectorStore } from "../types.js";
3
- import { McpResponse } from "../utils/mcp-response.js";
4
- export declare function handleMemorySearch(params: any, db: SQLiteStore, vectors: VectorStore): Promise<McpResponse>;
5
- //# sourceMappingURL=memory.search.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.search.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/memory.search.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAe,MAAM,aAAa,CAAC;AAGvD,OAAO,EAAqB,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAc1E,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,GAAG,EACX,EAAE,EAAE,WAAW,EACf,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,WAAW,CAAC,CA+JtB"}
@@ -1,144 +0,0 @@
1
- import { MemorySearchSchema } from "./schemas.js";
2
- import { logger } from "../utils/logger.js";
3
- import { createMcpResponse } from "../utils/mcp-response.js";
4
- import { expandQuery } from "../utils/query-expander.js";
5
- const HYBRID_WEIGHTS_VECTOR = {
6
- similarity: 0.4,
7
- vector: 0.4,
8
- importance: 0.2,
9
- };
10
- const HYBRID_WEIGHTS_NO_VECTOR = {
11
- similarity: 0.8,
12
- importance: 0.2,
13
- };
14
- export async function handleMemorySearch(params, db, vectors) {
15
- const validated = MemorySearchSchema.parse(params);
16
- const searchQuery = expandQuery(validated.query, validated.prompt);
17
- // 1. Get Candidates from SQLite
18
- // Fetch more than limit to support offset slicing after scoring
19
- const fetchLimit = (validated.offset + validated.limit) * 3;
20
- const similarityResults = db.searchBySimilarity(searchQuery, validated.repo, fetchLimit, validated.include_archived, validated.current_tags ?? []);
21
- let candidates = similarityResults.map(r => ({
22
- memory: r,
23
- similarityScore: r.similarity
24
- }));
25
- // 2. Workspace & Tag Affinity Boost
26
- if (candidates.length > 0) {
27
- const currentPath = validated.current_file_path?.toLowerCase();
28
- const currentTags = (validated.current_tags || []).map(t => t.toLowerCase());
29
- const currentBranch = validated.scope?.branch;
30
- candidates = candidates.map(c => {
31
- let boost = 0;
32
- // Branch boost (+0.1)
33
- if (currentBranch && c.memory.scope.branch === currentBranch) {
34
- boost += 0.1;
35
- }
36
- // Folder boost (+0.15)
37
- if (currentPath && c.memory.scope.folder && currentPath.includes(c.memory.scope.folder.toLowerCase())) {
38
- boost += 0.15;
39
- }
40
- // Language boost (+0.1)
41
- if (currentPath && c.memory.scope.language) {
42
- const ext = currentPath.split('.').pop();
43
- if (ext && ext.includes(c.memory.scope.language.toLowerCase()))
44
- boost += 0.1;
45
- }
46
- // Tag affinity boost (+0.2)
47
- if (currentTags.length > 0 && c.memory.tags.some(t => currentTags.includes(t.toLowerCase()))) {
48
- boost += 0.2;
49
- }
50
- return { ...c, similarityScore: Math.min(1.0, c.similarityScore + boost) };
51
- });
52
- }
53
- // 3. Vector Re-ranking
54
- let scoredMemories = [];
55
- try {
56
- const vectorResults = await vectors.search(searchQuery, candidates.length || 10, validated.repo);
57
- const vectorScoreMap = new Map(vectorResults.map(vr => [vr.id, vr.score]));
58
- if (candidates.length > 0) {
59
- scoredMemories = candidates.map(c => {
60
- const vScore = vectorScoreMap.get(c.memory.id) ?? 0;
61
- const impBoost = c.memory.importance / 5;
62
- const finalScore = (c.similarityScore * HYBRID_WEIGHTS_VECTOR.similarity) +
63
- (vScore * HYBRID_WEIGHTS_VECTOR.vector) +
64
- (impBoost * HYBRID_WEIGHTS_VECTOR.importance);
65
- return { ...c, vectorScore: vScore, finalScore };
66
- });
67
- }
68
- else if (vectorResults.length > 0) {
69
- const vectorIds = vectorResults.map((vr) => vr.id);
70
- const fetchedMemories = db.getByIds(vectorIds);
71
- const memoryMap = new Map(fetchedMemories.map(m => [m.id, m]));
72
- for (const vr of vectorResults) {
73
- const mem = memoryMap.get(vr.id);
74
- if (mem) {
75
- const impBoost = mem.importance / 5;
76
- scoredMemories.push({
77
- memory: mem,
78
- similarityScore: 0,
79
- vectorScore: vr.score,
80
- finalScore: (vr.score * 0.8) + (impBoost * 0.2)
81
- });
82
- }
83
- }
84
- }
85
- }
86
- catch (error) {
87
- logger.warn("Vector search failed, using similarity only", { error: String(error) });
88
- scoredMemories = candidates.map(c => ({
89
- ...c,
90
- vectorScore: 0,
91
- finalScore: (c.similarityScore * 0.8) + ((c.memory.importance / 5) * 0.2)
92
- }));
93
- }
94
- // 4. Threshold & Final Selection
95
- scoredMemories.sort((a, b) => b.finalScore - a.finalScore);
96
- const threshold = scoredMemories.length <= 5 ? 0.10 : 0.40;
97
- let allMatches = scoredMemories.filter(sm => sm.finalScore >= threshold).map(sm => sm.memory);
98
- // Absolute fallback: if repo has data but search failed threshold, return top 1
99
- if (allMatches.length === 0 && scoredMemories.length > 0) {
100
- allMatches = [scoredMemories[0].memory];
101
- }
102
- // Total count of all matches (before pagination)
103
- const total = allMatches.length;
104
- // Apply pagination (offset + limit)
105
- const paginatedResults = allMatches.slice(validated.offset, validated.offset + validated.limit);
106
- // 5. Post-processing — increment hit count only for pages actually returned
107
- db.incrementHitCounts(paginatedResults.map(m => m.id));
108
- logger.info("[MCP] memory.search", {
109
- repo: validated.repo,
110
- query: validated.query,
111
- total,
112
- offset: validated.offset,
113
- returned: paginatedResults.length
114
- });
115
- // 6. Build pointer table — columns: [id, title, type, importance]
116
- const COLUMNS = ["id", "title", "type", "importance"];
117
- const rows = paginatedResults.map(m => [
118
- m.id,
119
- m.title ?? "Untitled",
120
- m.type,
121
- m.importance,
122
- ]);
123
- const structuredContent = {
124
- schema: "memory-search",
125
- query: validated.query,
126
- count: paginatedResults.length,
127
- total,
128
- offset: validated.offset,
129
- limit: validated.limit,
130
- results: {
131
- columns: [...COLUMNS],
132
- rows,
133
- },
134
- };
135
- const memoryList = paginatedResults.map(m => `"${m.title}" (ID: ${m.id})`).join(", ");
136
- const contentSummary = paginatedResults.length > 0
137
- ? `Found ${total} memories for "${validated.query}" (showing ${paginatedResults.length} at offset ${validated.offset}): ${memoryList}. Use memory-detail to read full content.`
138
- : `No memories found for "${validated.query}" in repo "${validated.repo}".`;
139
- return createMcpResponse(structuredContent, contentSummary, {
140
- contentSummary,
141
- includeSerializedStructuredContent: false,
142
- });
143
- }
144
- //# sourceMappingURL=memory.search.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.search.js","sourceRoot":"","sources":["../../../src/mcp/tools/memory.search.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { SQLiteStore } from "../storage/sqlite.js";
2
- import { VectorStore } from "../types.js";
3
- import { McpResponse } from "../utils/mcp-response.js";
4
- export declare function handleMemoryStore(params: any, db: SQLiteStore, vectors: VectorStore): Promise<McpResponse>;
5
- //# sourceMappingURL=memory.store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.store.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/memory.store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAe,MAAM,aAAa,CAAC;AAEvD,OAAO,EAAqB,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAO1E,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,GAAG,EACX,EAAE,EAAE,WAAW,EACf,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,WAAW,CAAC,CAiItB"}
@@ -1,120 +0,0 @@
1
- import { randomUUID } from "crypto";
2
- import { MemoryStoreSchema } from "./schemas.js";
3
- import { logger } from "../utils/logger.js";
4
- import { createMcpResponse } from "../utils/mcp-response.js";
5
- function hasMetadataLikeTitle(title) {
6
- const normalized = title.trim();
7
- return /^\[[^\]]{0,200}(agent:|role:|model:|\d{4}-\d{2}-\d{2}|source_)[^\]]*\]/i.test(normalized);
8
- }
9
- export async function handleMemoryStore(params, db, vectors) {
10
- // Validate input
11
- const validated = MemoryStoreSchema.parse(params);
12
- if (hasMetadataLikeTitle(validated.title)) {
13
- throw new Error("Title appears to contain metadata. Keep title concise and move agent/role/date details into metadata or dedicated fields.");
14
- }
15
- // Create memory entry
16
- const now = new Date().toISOString();
17
- // Compute expires_at if ttlDays is provided
18
- const expires_at = validated.ttlDays != null
19
- ? new Date(Date.now() + validated.ttlDays * 86400000).toISOString()
20
- : null;
21
- // Check for semantic conflicts before storing (threshold: 0.55)
22
- if (!validated.supersedes) {
23
- const conflict = await db.checkConflicts(validated.content, validated.scope.repo, validated.type, vectors, 0.55);
24
- if (conflict) {
25
- return createMcpResponse({
26
- success: false,
27
- error: "MEMORY_CONFLICT",
28
- message: `This memory content overlaps significantly with an existing memory (ID: ${conflict.id}).`,
29
- conflicting_memory: {
30
- id: conflict.id,
31
- title: conflict.title,
32
- content: conflict.content
33
- },
34
- instruction: "Use 'memory-update' on the existing ID, or provide 'supersedes' if this new memory replaces it. If the old memory is no longer relevant, you can delete it first."
35
- }, `Rejected due to conflict with ${conflict.id}. Hint: Use 'supersedes' if this replaces the old memory, or 'memory-update' if you're updating it. If the old memory is no longer relevant, delete it first using 'memory-delete'.`, {
36
- structuredContentPathHint: "conflicting_memory",
37
- });
38
- }
39
- }
40
- // If this memory supersedes an old one, archive the old one
41
- if (validated.supersedes) {
42
- const oldMemory = db.getById(validated.supersedes);
43
- if (oldMemory) {
44
- db.update(oldMemory.id, { status: "archived" });
45
- logger.info("[MCP] memory.store - archived superseded memory", { oldId: oldMemory.id, newId: validated.supersedes });
46
- }
47
- }
48
- // Auto-tagging based on language scope
49
- const tags = validated.tags ?? [];
50
- if (validated.scope.language && !tags.includes(validated.scope.language.toLowerCase())) {
51
- tags.push(validated.scope.language.toLowerCase());
52
- }
53
- const entry = {
54
- id: randomUUID(),
55
- type: validated.type,
56
- title: validated.title,
57
- content: validated.content,
58
- importance: validated.importance,
59
- agent: validated.agent,
60
- role: validated.role,
61
- model: validated.model,
62
- scope: validated.scope,
63
- created_at: now,
64
- updated_at: now,
65
- completed_at: null,
66
- hit_count: 0,
67
- recall_count: 0,
68
- last_used_at: null,
69
- expires_at,
70
- supersedes: validated.supersedes ?? null,
71
- status: "active",
72
- tags,
73
- metadata: validated.metadata ?? {},
74
- is_global: validated.is_global
75
- };
76
- // Store in SQLite
77
- db.insert(entry);
78
- // Automatically generate and store vector embedding
79
- try {
80
- await vectors.upsert(entry.id, entry.content);
81
- }
82
- catch (error) {
83
- logger.warn("Failed to generate vector embedding", { error: String(error) });
84
- // Continue anyway - vectors are optional for search fallback
85
- }
86
- logger.info("[MCP] memory.store", { repo: validated.scope.repo, id: entry.id, title: entry.title, type: entry.type, importance: entry.importance });
87
- return createMcpResponse({
88
- success: true,
89
- id: entry.id,
90
- repo: entry.scope.repo,
91
- type: entry.type,
92
- title: entry.title,
93
- }, `Stored memory "${entry.title}" in repo "${entry.scope.repo}".`, {
94
- structuredContentPathHint: "id",
95
- resourceLinks: [
96
- {
97
- uri: `memory://${entry.id}`,
98
- name: entry.title,
99
- description: `Stored memory in repo ${entry.scope.repo}`,
100
- mimeType: "application/json",
101
- annotations: {
102
- audience: ["assistant"],
103
- priority: 0.9,
104
- lastModified: entry.updated_at,
105
- },
106
- },
107
- {
108
- uri: `memory://index?repo=${encodeURIComponent(entry.scope.repo)}`,
109
- name: `Memory Index (${entry.scope.repo})`,
110
- description: "Repository memory index",
111
- mimeType: "application/json",
112
- annotations: {
113
- audience: ["assistant"],
114
- priority: 0.6,
115
- },
116
- },
117
- ],
118
- });
119
- }
120
- //# sourceMappingURL=memory.store.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.store.js","sourceRoot":"","sources":["../../../src/mcp/tools/memory.store.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import { SQLiteStore } from "../storage/sqlite.js";
2
- import { McpResponse } from "../utils/mcp-response.js";
3
- export declare function handleMemorySummarize(params: any, db: SQLiteStore): Promise<McpResponse>;
4
- //# sourceMappingURL=memory.summarize.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.summarize.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/memory.summarize.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAqB,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE1E,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,GAAG,EACX,EAAE,EAAE,WAAW,GACd,OAAO,CAAC,WAAW,CAAC,CAmCtB"}
@@ -1,32 +0,0 @@
1
- import { MemorySummarizeSchema } from "./schemas.js";
2
- import { createMcpResponse } from "../utils/mcp-response.js";
3
- export async function handleMemorySummarize(params, db) {
4
- // Validate input
5
- const validated = MemorySummarizeSchema.parse(params);
6
- // Create summary from signals
7
- const summary = validated.signals.join("\n- ");
8
- const fullSummary = `Project summary:\n- ${summary}`;
9
- // Store summary
10
- db.upsertSummary(validated.repo, fullSummary);
11
- return createMcpResponse({
12
- success: true,
13
- repo: validated.repo,
14
- summary: fullSummary,
15
- signalCount: validated.signals.length,
16
- }, `Updated summary for repo "${validated.repo}" with ${validated.signals.length} signals.`, {
17
- structuredContentPathHint: "summary",
18
- resourceLinks: [
19
- {
20
- uri: `memory://summary/${validated.repo}`,
21
- name: `Memory Summary (${validated.repo})`,
22
- description: "Repository summary resource",
23
- mimeType: "text/plain",
24
- annotations: {
25
- audience: ["assistant"],
26
- priority: 0.9,
27
- },
28
- },
29
- ],
30
- });
31
- }
32
- //# sourceMappingURL=memory.summarize.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.summarize.js","sourceRoot":"","sources":["../../../src/mcp/tools/memory.summarize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAErD,OAAO,EAAE,iBAAiB,EAAe,MAAM,0BAA0B,CAAC;AAE1E,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAW,EACX,EAAe;IAEf,iBAAiB;IACjB,MAAM,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEtD,8BAA8B;IAC9B,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,uBAAuB,OAAO,EAAE,CAAC;IAErD,gBAAgB;IAChB,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAE9C,OAAO,iBAAiB,CACtB;QACE,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,OAAO,EAAE,WAAW;QACpB,WAAW,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM;KACtC,EACD,6BAA6B,SAAS,CAAC,IAAI,UAAU,SAAS,CAAC,OAAO,CAAC,MAAM,WAAW,EACxF;QACE,yBAAyB,EAAE,SAAS;QACpC,aAAa,EAAE;YACb;gBACE,GAAG,EAAE,oBAAoB,SAAS,CAAC,IAAI,EAAE;gBACzC,IAAI,EAAE,mBAAmB,SAAS,CAAC,IAAI,GAAG;gBAC1C,WAAW,EAAE,6BAA6B;gBAC1C,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE;oBACX,QAAQ,EAAE,CAAC,WAAW,CAAC;oBACvB,QAAQ,EAAE,GAAG;iBACd;aACF;SACF;KACF,CACF,CAAC;AACJ,CAAC"}