@vheins/local-memory-mcp 0.5.32 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (506) hide show
  1. package/README.md +9 -6
  2. package/dist/chunk-XIJO63UU.js +3618 -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
@@ -30,7 +30,7 @@ You are **STRICTLY FORBIDDEN** from performing any of the following actions:
30
30
  * Read code and analyze context
31
31
  * Create tasks via `local-memory-mcp` MCP tools `task-create`
32
32
  * Record decisions via `local-memory-mcp` MCP tools `memory-store`
33
- * List tasks via `local-memory-mcp` MCP tools `task-active` (navigation) or `task-list` (extended search)
33
+ * List tasks via `local-memory-mcp` MCP tools `task-list` (navigation and search)
34
34
  * Search memory via `local-memory-mcp` MCP tools `memory-search`
35
35
 
36
36
  ---
@@ -40,7 +40,6 @@ You are **STRICTLY FORBIDDEN** from performing any of the following actions:
40
40
  Your output MUST ONLY consist of calls to:
41
41
  * `local-memory-mcp` MCP tools `task-create`
42
42
  * `local-memory-mcp` MCP tools `memory-store`
43
- * `local-memory-mcp` MCP tools `task-active`
44
43
  * `local-memory-mcp` MCP tools `task-list`
45
44
  * `local-memory-mcp` MCP tools `memory-search`
46
45
 
@@ -55,7 +54,8 @@ Your output MUST ONLY consist of calls to:
55
54
 
56
55
  Before creating tasks, you MUST:
57
56
  1. **Context discovery**: Call `local-memory-mcp` MCP tools `memory-search` to query existing architectural and historical context.
58
- 2. **Sync backlog**: Call `local-memory-mcp` MCP tools `task-active` first (returns compact table of active tasks). Then call `task-list` if you need to check backlog or completed tasks. **CRITICAL: Do NOT create a new task if a similar, redundant task already exists in `backlog` or `pending` status. If your new findings are distinct but related to an existing task, link them using `parent_id` or `depends_on` instead of creating an isolated task.**
57
+ 2. **Conflict Prevention**: Respect the 0.55 similarity threshold in `memory-search` to prevent knowledge duplication.
58
+ 3. **Sync backlog**: Call `local-memory-mcp` MCP tools `task-list` (defaults to active tasks: in_progress/pending). **CRITICAL: Do NOT create a new task if a similar, redundant task already exists in `backlog` or `pending` status. If your new findings are distinct but related to an existing task, link them using `parent_id` or `depends_on` instead of creating an isolated task.**
59
59
 
60
60
  ---
61
61
 
@@ -113,6 +113,7 @@ If the instruction or prompt involves a decision, new feature, or architectural
113
113
  If a directive is complex:
114
114
  1. Create a parent task.
115
115
  2. Create child tasks using `parent_id` and `depends_on`.
116
+ 3. **Bulk Limit**: You are limited to 500 records per transaction for bulk task operations.
116
117
 
117
118
  ---
118
119
 
@@ -19,6 +19,8 @@ Core Behavioral Rules:
19
19
  3. Never use memory from another repository UNLESS it shares the same technology tags (Affinity) or is marked as Global.
20
20
  4. If memory conflicts with the user's new request, detect the conflict and ask for clarification or propose a 'supersedes' update.
21
21
  5. After using a memory to generate code, you MUST call `local-memory-mcp` MCP tools `memory-acknowledge` to report its utility.
22
+ 6. The system uses Hybrid Search: Score = (Cosine_Similarity * 0.7) + (BM25_Score * 0.3).
23
+ 7. Semantic Conflict Detection: A 0.55 similarity threshold is enforced to prevent redundant entries.
22
24
 
23
25
  Memory Usage Policy:
24
26
  Before generating code:
@@ -10,8 +10,10 @@ Do not store:
10
10
  - Generic coding knowledge available in public docs.
11
11
 
12
12
  Only store:
13
+ - Supported Types: `code_fact`, `decision`, `mistake`, `pattern`, `agent_handoff`, `agent_registered`, `file_claim`, `task_archive`.
13
14
  - Specific project decisions (Architecture, UI/UX).
14
15
  - Learned patterns for this specific tech-stack.
15
16
  - Hard-won bug fixes (Mistakes to avoid).
17
+ - Persistence: Only mark as `is_global` if the knowledge applies beyond a single repository (e.g., framework-specific anti-patterns).
16
18
 
17
19
  Memory is a permanent record, categorize it properly with tags.
@@ -61,7 +61,9 @@ If gaps are found, your output MUST ONLY consist of calls to:
61
61
  ### 3. PRE-ANALYSIS FOR TASK GENERATION (MANDATORY)
62
62
  Before creating tasks, you MUST:
63
63
  1. **Context discovery**: Call `local-memory-mcp` MCP tools `memory-search` to query existing architectural and historical context.
64
- 2. **Sync backlog**: Call `local-memory-mcp` MCP tools `task-list` to check existing tasks. **CRITICAL: Do NOT create a new task if a similar, redundant task already exists in `backlog` or `pending` status. If your new findings are distinct but related to an existing task, link them using `parent_id` or `depends_on` instead of creating an isolated task.**
64
+ 2. **Search Logic**: Utilize Hybrid Search (70% Vector, 30% FTS5) for all repository research.
65
+ 3. **Conflict Prevention**: Respect the 0.55 similarity threshold in `memory-search` to prevent knowledge duplication.
66
+ 4. **Sync backlog**: Call `local-memory-mcp` MCP tools `task-list` to check existing tasks. **CRITICAL: Do NOT create a new task if a similar, redundant task already exists in `backlog` or `pending` status. If your new findings are distinct but related to an existing task, link them using `parent_id` or `depends_on` instead of creating an isolated task.**
65
67
 
66
68
  ---
67
69
 
@@ -64,7 +64,9 @@ If gaps are found, your output MUST ONLY consist of calls to:
64
64
  ### 3. PRE-ANALYSIS FOR ISSUE GENERATION (MANDATORY)
65
65
  Before creating issues, you MUST:
66
66
  1. **Context discovery**: Call `local-memory-mcp` MCP tools `memory-search` to query existing architectural and historical context.
67
- 2. **Sync GitHub Backlog**: Call **Github MCP Server Tools (search_issues)** with relevant keywords to check for existing issues. **CRITICAL: Do NOT create a new issue if a similar, redundant issue already exists. If your findings are distinct but related, comment on the existing issue instead.**
67
+ 2. **Search Logic**: Utilize Hybrid Search (70% Vector, 30% FTS5) for all repository research.
68
+ 3. **Conflict Prevention**: Respect the 0.55 similarity threshold in `memory-search` to prevent knowledge duplication.
69
+ 4. **Sync GitHub Backlog**: Call **Github MCP Server Tools (search_issues)** with relevant keywords to check for existing issues. **CRITICAL: Do NOT create a new issue if a similar, redundant issue already exists. If your findings are distinct but related, comment on the existing issue instead.**
68
70
 
69
71
  ---
70
72
 
@@ -0,0 +1,28 @@
1
+ ---
2
+ name: task-management-guidelines
3
+ description: Best practices for task tracking and progress management
4
+ arguments: []
5
+ agent: Project Manager
6
+ ---
7
+ Guidelines for Task Management:
8
+
9
+ 1. task-list (PRIMARY NAVIGATION & SEARCH):
10
+ - MANDATORY: Always call `local-memory-mcp` MCP tools `task-list` (with no status specified to get active tasks) at the very start of a new session.
11
+ - Returns a compact table: columns = [id, task_code, title, status, priority, comments_count]. Rows are pointers — NOT full tasks.
12
+ - Default behavior: returns `in_progress` and `pending` tasks if `status` is omitted.
13
+ - Filter by status via the `status` param (comma-separated, e.g., `"in_progress,pending"`).
14
+ - Search by keyword matching task_code, title, or description via the `query` param.
15
+ - After selecting a task from the table, fetch its full context via `task-detail` tool.
16
+ - Coordinate: If a task is already 'in_progress', do not attempt to work on it unless specifically asked to collaborate.
17
+ - DO NOT work on multiple tasks simultaneously.
18
+
19
+ 3. Detail Tools:
20
+ - Use `local-memory-mcp` MCP tools `task-detail` to fetch full task details (including comments and history) by ID or task_code.
21
+ - Use `local-memory-mcp` MCP tools `memory-detail` to fetch full memory content by ID.
22
+
23
+ 4. Workflow Integration:
24
+ - Plan first: Create tasks for the entire lifecycle (Research → Strategy → Execution → Validation).
25
+ - Atomic Updates: Update the task status to 'in_progress' EXACTLY ONCE when you begin working on a task.
26
+ - Workflow Enforcement (MANDATORY): You cannot move a task from 'pending' or 'backlog' directly to 'completed'. You MUST transition to 'in_progress' first for status transition safety.
27
+ - Finalize: Only mark a task as 'completed' after successful validation (tests passed).
28
+ - Automatic Archiving: Marking a task as 'completed' automatically triggers `archiveTaskToMemory`, creating a 'task_archive' memory entry with the full history and token usage report.
@@ -19,15 +19,16 @@ description: Execute all pending tasks for the current repository
19
19
  Please follow this strict execution flow:
20
20
 
21
21
  1. **Identify Repository**: Determine the current repository name (e.g., from git config or workspace context).
22
- 2. **Fetch Active Tasks**: Call `local-memory-mcp` MCP tools `task-active` for the identified repository.
23
- - This returns a compact table: `columns = [id, title, status, priority]`, `rows` = task pointers.
24
- - Default: returns `in_progress` tasks first; falls back to `pending` if none exist.
25
- - DO NOT call task-active in a loop. Call it ONCE.
22
+ 2. **Fetch Active Tasks**: Call `local-memory-mcp` MCP tools `task-list` for the identified repository (defaults to active tasks).
23
+ - This returns a compact table: `columns = [id, task_code, title, status, priority, comments_count]`, `rows` = task pointers.
24
+ - DO NOT call task-list in a loop. Call it ONCE.
26
25
  3. **Filter Stale**: From the in_progress rows, identify tasks that are **stale** (stale = no update for > 30 minutes, often because an agent stopped or crashed). Fetch their full data via `task-detail` tool to inspect timestamps.
27
26
  4. **Task Execution Loop**: You MUST process tasks EXACTLY ONE AT A TIME (STRICT). You are STRICTLY FORBIDDEN from spinning up parallel sub-agents or using parallel execution. For each task you select:
28
27
  - **Hydrate**: Fetch full task context via `task-detail` tool before starting work.
29
28
  - **Start**: Call `local-memory-mcp` MCP tools `task-update` to set status='in_progress' for this task ONLY. Provide current agent/role information in the metadata.
29
+ - **Transition Safety (MANDATORY)**: You are FORBIDDEN from transitioning a task straight to `completed`. You MUST set it to `in_progress` first.
30
30
  - **Execute**: Perform the work described in the task title and description.
31
+ - **Context Gathering**: Utilize Hybrid Search (70% Vector, 30% FTS5) for all repository research.
31
32
  - **Inspect Codebase Logic & Documentation First (MANDATORY)**: Before marking anything done, inspect the relevant code paths, call sites, configs, tests, and affected modules in the repository. Also read the relevant documentation, as it might need to be updated or fixed. Do not infer correctness from file presence alone.
32
33
  - **Validate Behavior (MANDATORY)**: Ensure the implementation logic satisfies the task intent and follows project standards. Validation must focus on behavior, control flow, data flow, and integration points, not just whether a file/class/function exists.
33
34
  - **Complete Only With Evidence**: Call `local-memory-mcp` MCP tools `task-update` to set status='completed' only after recording concrete evidence in the 'comment' field. The comment must include: files inspected, logic verified, checks/tests run (or why they could not run), and the exact reason the task is considered complete.
@@ -35,7 +36,7 @@ Please follow this strict execution flow:
35
36
  - **Retrospective**: Invoke the `learning-retrospective` skill. If the skill is unavailable, use the `learning-retrospective` prompt from `local-memory-mcp` to extract and store durable knowledge (mistakes, decisions, patterns) from this task.
36
37
  - **Commit**: Perform an atomic git commit and push for the changes made in the task.
37
38
  - **Handoff**: Use `local-memory-mcp` MCP tools `task-update` to document **detailed fix steps**, milestones, project-specific knowledge gained during execution, and validation evidence. If complex, decompose into smaller tasks using `local-memory-mcp` MCP tools `task-create`.
38
- - **Next**: Call `task-active` once more to get the next actionable task and repeat this loop.
39
+ - **Next**: Call `task-list` once more (optionally with `status='in_progress,pending'`) to get the next actionable task and repeat this loop.
39
40
  5. **Backlog Migration**: Once all 'pending' and 'in_progress' tasks are completed or blocked, call `local-memory-mcp` MCP tools `task-list` with status='backlog'. If any exist, select up to 20 tasks (prioritizing by priority field) and update their status to 'pending' using `local-memory-mcp` MCP tools `task-update` to ensure the next agent has work ready.
40
41
  6. **Report**: After processing all tasks, provide a summary of your progress.
41
42
 
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@vheins/local-memory-mcp",
3
- "version": "0.5.32",
3
+ "version": "0.6.0",
4
4
  "description": "MCP Local Memory Service for coding copilot agents",
5
5
  "mcpName": "io.github.vheins/local-memory-mcp",
6
6
  "type": "module",
7
- "main": "dist/mcp/server.js",
7
+ "main": "dist/server.js",
8
8
  "bin": {
9
9
  "local-memory-mcp": "bin/mcp-memory-server.js",
10
10
  "mcp-memory-server": "bin/mcp-memory-server.js",
@@ -14,7 +14,7 @@
14
14
  "dist",
15
15
  "bin",
16
16
  "storage/.gitkeep",
17
- "dist/mcp/prompts/definitions"
17
+ "dist/prompts/definitions"
18
18
  ],
19
19
  "repository": {
20
20
  "type": "git",
@@ -27,17 +27,20 @@
27
27
  "author": "Muhammad Rheza Alfin <m.rheza.alfin@gmail.com>",
28
28
  "license": "MIT",
29
29
  "scripts": {
30
- "build": "npm run dashboard:build && tsc && mkdir -p bin && cp -r src/mcp/prompts/definitions dist/mcp/prompts/ && printf \"#!/usr/bin/env node\\nimport '../dist/dashboard/server.js';\\n\" > bin/mcp-memory-dashboard.js && shx chmod +x dist/mcp/server.js dist/dashboard/server.js bin/mcp-memory-server.js bin/mcp-memory-dashboard.js",
30
+ "build": "rm -rf dist && npm run dashboard:build && tsup src/mcp/server.ts src/dashboard/server.ts --format esm && mkdir -p bin && cp -r src/mcp/prompts/definitions dist/prompts/ && printf \"#!/usr/bin/env node\\nimport '../dist/dashboard/server.js';\\n\" > bin/mcp-memory-dashboard.js && shx chmod +x dist/mcp/server.js dist/dashboard/server.js bin/mcp-memory-server.js bin/mcp-memory-dashboard.js",
31
31
  "dashboard:build": "vite build --config src/dashboard/ui/vite.config.ts",
32
32
  "dashboard:dev": "vite dev --config src/dashboard/ui/vite.config.ts",
33
33
  "prepare": "npm run build",
34
- "dev": "tsc --watch",
34
+ "dev": "tsx watch src/mcp/server.ts",
35
35
  "start": "node dist/mcp/server.js",
36
36
  "start:mcp": "node dist/mcp/server.js",
37
37
  "dashboard": "node dist/dashboard/server.js",
38
38
  "both": "npm run start & npm run dashboard",
39
39
  "test": "vitest --run",
40
- "test:watch": "vitest"
40
+ "test:watch": "vitest",
41
+ "lint": "eslint . --ext .ts,.svelte",
42
+ "lint:fix": "eslint . --ext .ts,.svelte --fix",
43
+ "format": "prettier --write \"src/**/*.{ts,js,svelte}\""
41
44
  },
42
45
  "dependencies": {
43
46
  "@xenova/transformers": "^2.17.2",
@@ -51,6 +54,7 @@
51
54
  "zod": "^4.3.5"
52
55
  },
53
56
  "devDependencies": {
57
+ "@eslint/js": "^10.0.1",
54
58
  "@fast-check/vitest": "^0.3.0",
55
59
  "@sveltejs/vite-plugin-svelte": "^7.0.0",
56
60
  "@types/better-sqlite3": "^7.6.13",
@@ -58,12 +62,24 @@
58
62
  "@types/express": "^5.0.6",
59
63
  "@types/marked": "^5.0.2",
60
64
  "@types/node": "^22.19.7",
65
+ "@typescript-eslint/eslint-plugin": "^8.58.1",
66
+ "@typescript-eslint/parser": "^8.58.1",
67
+ "eslint": "^9.39.4",
68
+ "eslint-config-prettier": "^10.1.8",
69
+ "eslint-plugin-prettier": "^5.5.5",
70
+ "eslint-plugin-svelte": "^2.46.1",
61
71
  "fast-check": "^4.6.0",
72
+ "globals": "^17.4.0",
73
+ "prettier": "^3.8.2",
74
+ "prettier-plugin-svelte": "^3.5.1",
62
75
  "shx": "^0.4.0",
63
76
  "svelte": "^5.55.1",
64
77
  "svelte-check": "^4.4.6",
78
+ "svelte-eslint-parser": "^1.6.0",
79
+ "tsup": "^8.5.1",
65
80
  "tsx": "^4.21.0",
66
81
  "typescript": "^5.7.3",
82
+ "typescript-eslint": "^8.58.1",
67
83
  "vite": "^8.0.6",
68
84
  "vitest": "^4.1.1"
69
85
  }
@@ -1,22 +0,0 @@
1
- export declare const MCP_PROTOCOL_VERSION = "2025-11-25";
2
- export declare const CAPABILITIES: {
3
- serverInfo: {
4
- name: string;
5
- version: string;
6
- };
7
- capabilities: {
8
- completions: {};
9
- logging: {};
10
- resources: {
11
- subscribe: boolean;
12
- listChanged: boolean;
13
- };
14
- tools: {
15
- listChanged: boolean;
16
- };
17
- prompts: {
18
- listChanged: boolean;
19
- };
20
- };
21
- };
22
- //# sourceMappingURL=capabilities.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,oBAAoB,eAAe,CAAC;AAEjD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;CAmBxB,CAAC"}
@@ -1,38 +0,0 @@
1
- import { fileURLToPath } from "url";
2
- import path from "path";
3
- import fs from "fs";
4
- const __dirname = path.dirname(fileURLToPath(import.meta.url));
5
- const pkgPath = path.join(__dirname, "../package.json");
6
- let pkgVersion = "0.1.0";
7
- try {
8
- if (fs.existsSync(pkgPath)) {
9
- const pkg = JSON.parse(fs.readFileSync(pkgPath, "utf8"));
10
- pkgVersion = pkg.version;
11
- }
12
- }
13
- catch (e) {
14
- // Fallback to default version if reading fails
15
- }
16
- // MCP Server Capabilities
17
- export const MCP_PROTOCOL_VERSION = "2025-11-25";
18
- export const CAPABILITIES = {
19
- serverInfo: {
20
- name: "mcp-memory-local",
21
- version: pkgVersion
22
- },
23
- capabilities: {
24
- completions: {},
25
- logging: {},
26
- resources: {
27
- subscribe: true,
28
- listChanged: true
29
- },
30
- tools: {
31
- listChanged: false
32
- },
33
- prompts: {
34
- listChanged: true
35
- }
36
- }
37
- };
38
- //# sourceMappingURL=capabilities.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;AACxD,IAAI,UAAU,GAAG,OAAO,CAAC;AAEzB,IAAI,CAAC;IACH,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACzD,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC;IAC3B,CAAC;AACH,CAAC;AAAC,OAAO,CAAC,EAAE,CAAC;IACX,+CAA+C;AACjD,CAAC;AAED,0BAA0B;AAC1B,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAEjD,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,UAAU,EAAE;QACV,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,UAAU;KACpB;IACD,YAAY,EAAE;QACZ,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,EAAE;QACX,SAAS,EAAE;YACT,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,IAAI;SAClB;QACD,KAAK,EAAE;YACL,WAAW,EAAE,KAAK;SACnB;QACD,OAAO,EAAE;YACP,WAAW,EAAE,IAAI;SAClB;KACF;CACF,CAAC"}
@@ -1,25 +0,0 @@
1
- import { SQLiteStore } from "./storage/sqlite.js";
2
- import { SessionContext } from "./mcp/session.js";
3
- type CompletionRequest = {
4
- ref?: {
5
- type?: string;
6
- name?: string;
7
- uri?: string;
8
- };
9
- argument?: {
10
- name?: string;
11
- value?: string;
12
- };
13
- context?: {
14
- arguments?: Record<string, unknown>;
15
- };
16
- };
17
- export declare function complete(params: CompletionRequest, db: SQLiteStore, session?: SessionContext): {
18
- completion: {
19
- values: string[];
20
- total: number;
21
- hasMore: boolean;
22
- };
23
- };
24
- export {};
25
- //# sourceMappingURL=completion.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../src/completion.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,cAAc,EAA4C,MAAM,kBAAkB,CAAC;AAK5F,KAAK,iBAAiB,GAAG;IACvB,GAAG,CAAC,EAAE;QACJ,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,OAAO,CAAC,EAAE;QACR,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrC,CAAC;CACH,CAAC;AAKF,wBAAgB,QAAQ,CACtB,MAAM,EAAE,iBAAiB,EACzB,EAAE,EAAE,WAAW,EACf,OAAO,CAAC,EAAE,cAAc;;;;;;EA6CzB"}
@@ -1,127 +0,0 @@
1
- import fs from "fs";
2
- import path from "path";
3
- import { getFilesystemRoots, inferRepoFromSession } from "./mcp/session.js";
4
- import { completePromptArgument } from "./prompts/registry.js";
5
- import { completeResourceArgument } from "./resources/index.js";
6
- const MAX_COMPLETION_VALUES = 100;
7
- const MAX_FILE_SCAN_RESULTS = 300;
8
- export function complete(params, db, session) {
9
- const refType = params?.ref?.type;
10
- const argumentName = typeof params?.argument?.name === "string" ? params.argument.name : "";
11
- const argumentValue = typeof params?.argument?.value === "string" ? params.argument.value : "";
12
- const contextArguments = params?.context?.arguments ?? {};
13
- if (!refType || !argumentName) {
14
- throw invalidCompletionParams("completion/complete requires ref.type and argument.name");
15
- }
16
- const dataSources = {
17
- repos: getSuggestedRepos(db, session),
18
- tags: getSuggestedTags(db),
19
- filePaths: getSuggestedFilePaths(session),
20
- tasks: getSuggestedTasks(db, session, contextArguments),
21
- };
22
- if (refType === "ref/prompt") {
23
- const promptName = typeof params?.ref?.name === "string" ? params.ref.name : "";
24
- if (!promptName) {
25
- throw invalidCompletionParams("Prompt completion requires ref.name");
26
- }
27
- return {
28
- completion: buildCompletionResult(completePromptArgument(promptName, argumentName, argumentValue, contextArguments, dataSources)),
29
- };
30
- }
31
- if (refType === "ref/resource") {
32
- const resourceUri = typeof params?.ref?.uri === "string" ? params.ref.uri : "";
33
- if (!resourceUri) {
34
- throw invalidCompletionParams("Resource completion requires ref.uri");
35
- }
36
- return {
37
- completion: buildCompletionResult(completeResourceArgument(resourceUri, argumentName, argumentValue, contextArguments, dataSources)),
38
- };
39
- }
40
- throw invalidCompletionParams(`Unsupported completion ref type: ${refType}`);
41
- }
42
- function buildCompletionResult(values) {
43
- const capped = values.slice(0, MAX_COMPLETION_VALUES);
44
- return {
45
- values: capped,
46
- total: values.length,
47
- hasMore: values.length > capped.length,
48
- };
49
- }
50
- function getSuggestedRepos(db, session) {
51
- const values = new Set();
52
- const inferredRepo = inferRepoFromSession(session);
53
- if (inferredRepo)
54
- values.add(inferredRepo);
55
- for (const rootPath of getFilesystemRoots(session)) {
56
- values.add(path.basename(rootPath));
57
- }
58
- for (const repo of db.listRepos()) {
59
- values.add(repo);
60
- }
61
- return [...values].sort((a, b) => a.localeCompare(b));
62
- }
63
- function getSuggestedTags(db) {
64
- const values = new Set();
65
- const memories = db.getAllMemoriesWithStats();
66
- for (const memory of memories) {
67
- for (const tag of memory.tags || []) {
68
- if (typeof tag === "string" && tag.trim()) {
69
- values.add(tag.trim());
70
- }
71
- }
72
- }
73
- return [...values].sort((a, b) => a.localeCompare(b));
74
- }
75
- function getSuggestedTasks(db, session, contextArguments) {
76
- const repo = typeof contextArguments.repo === "string" && contextArguments.repo.trim()
77
- ? contextArguments.repo.trim()
78
- : inferRepoFromSession(session);
79
- if (!repo)
80
- return [];
81
- return db.getTasksByRepo(repo, undefined, 100).map((task) => ({
82
- id: task.id,
83
- task_code: task.task_code,
84
- title: task.title,
85
- }));
86
- }
87
- function getSuggestedFilePaths(session) {
88
- const roots = getFilesystemRoots(session);
89
- const results = [];
90
- for (const rootPath of roots) {
91
- collectFiles(rootPath, rootPath, results);
92
- if (results.length >= MAX_FILE_SCAN_RESULTS)
93
- break;
94
- }
95
- return results.sort((a, b) => a.localeCompare(b));
96
- }
97
- function collectFiles(rootPath, currentPath, results) {
98
- if (results.length >= MAX_FILE_SCAN_RESULTS)
99
- return;
100
- let entries;
101
- try {
102
- entries = fs.readdirSync(currentPath, { withFileTypes: true });
103
- }
104
- catch {
105
- return;
106
- }
107
- for (const entry of entries) {
108
- if (results.length >= MAX_FILE_SCAN_RESULTS)
109
- return;
110
- if (entry.name === "node_modules" || entry.name === ".git" || entry.name === "dist")
111
- continue;
112
- const fullPath = path.join(currentPath, entry.name);
113
- if (entry.isDirectory()) {
114
- collectFiles(rootPath, fullPath, results);
115
- continue;
116
- }
117
- if (!entry.isFile())
118
- continue;
119
- results.push(path.relative(rootPath, fullPath) || entry.name);
120
- }
121
- }
122
- function invalidCompletionParams(message) {
123
- const error = new Error(message);
124
- error.code = -32602;
125
- return error;
126
- }
127
- //# sourceMappingURL=completion.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"completion.js","sourceRoot":"","sources":["../src/completion.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=dashboard.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard.test.d.ts","sourceRoot":"","sources":["../../src/dashboard/dashboard.test.ts"],"names":[],"mappings":""}