@pcircle/memesh 2.10.1 → 3.0.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 (818) hide show
  1. package/.mcp.json +2 -5
  2. package/README.md +122 -221
  3. package/dist/cli/assets/d3.v7.min.js +2 -0
  4. package/dist/cli/view.d.ts +4 -0
  5. package/dist/cli/view.d.ts.map +1 -0
  6. package/dist/cli/view.js +2672 -0
  7. package/dist/cli/view.js.map +1 -0
  8. package/dist/core/config.d.ts +33 -0
  9. package/dist/core/config.d.ts.map +1 -0
  10. package/dist/core/config.js +70 -0
  11. package/dist/core/config.js.map +1 -0
  12. package/dist/core/extractor.d.ts +26 -0
  13. package/dist/core/extractor.d.ts.map +1 -0
  14. package/dist/core/extractor.js +106 -0
  15. package/dist/core/extractor.js.map +1 -0
  16. package/dist/core/lifecycle.d.ts +9 -0
  17. package/dist/core/lifecycle.d.ts.map +1 -0
  18. package/dist/core/lifecycle.js +51 -0
  19. package/dist/core/lifecycle.js.map +1 -0
  20. package/dist/core/operations.d.ts +9 -0
  21. package/dist/core/operations.d.ts.map +1 -0
  22. package/dist/core/operations.js +342 -0
  23. package/dist/core/operations.js.map +1 -0
  24. package/dist/core/query-expander.d.ts +4 -0
  25. package/dist/core/query-expander.d.ts.map +1 -0
  26. package/dist/core/query-expander.js +114 -0
  27. package/dist/core/query-expander.js.map +1 -0
  28. package/dist/core/schema-export.d.ts +2 -0
  29. package/dist/core/schema-export.d.ts.map +1 -0
  30. package/dist/core/schema-export.js +67 -0
  31. package/dist/core/schema-export.js.map +1 -0
  32. package/dist/core/scoring.d.ts +25 -0
  33. package/dist/core/scoring.d.ts.map +1 -0
  34. package/dist/core/scoring.js +40 -0
  35. package/dist/core/scoring.js.map +1 -0
  36. package/dist/core/types.d.ts +116 -58
  37. package/dist/core/types.d.ts.map +1 -1
  38. package/dist/core/types.js +1 -10
  39. package/dist/core/types.js.map +1 -1
  40. package/dist/core/version-check.d.ts +10 -0
  41. package/dist/core/version-check.d.ts.map +1 -0
  42. package/dist/core/version-check.js +44 -0
  43. package/dist/core/version-check.js.map +1 -0
  44. package/dist/db.d.ts +5 -0
  45. package/dist/db.d.ts.map +1 -0
  46. package/dist/db.js +113 -0
  47. package/dist/db.js.map +1 -0
  48. package/dist/index.d.ts +3 -6
  49. package/dist/index.d.ts.map +1 -1
  50. package/dist/index.js +2 -33
  51. package/dist/index.js.map +1 -1
  52. package/dist/knowledge-graph.d.ts +34 -0
  53. package/dist/knowledge-graph.d.ts.map +1 -0
  54. package/dist/knowledge-graph.js +367 -0
  55. package/dist/knowledge-graph.js.map +1 -0
  56. package/dist/mcp/server.d.ts +1 -25
  57. package/dist/mcp/server.d.ts.map +1 -1
  58. package/dist/mcp/server.js +39 -318
  59. package/dist/mcp/server.js.map +1 -1
  60. package/dist/mcp/tools.d.ts +2 -0
  61. package/dist/mcp/tools.d.ts.map +1 -0
  62. package/dist/mcp/tools.js +2 -0
  63. package/dist/mcp/tools.js.map +1 -0
  64. package/dist/transports/cli/cli.d.ts +3 -0
  65. package/dist/transports/cli/cli.d.ts.map +1 -0
  66. package/dist/transports/cli/cli.js +378 -0
  67. package/dist/transports/cli/cli.js.map +1 -0
  68. package/dist/transports/http/server.d.ts +5 -0
  69. package/dist/transports/http/server.d.ts.map +1 -0
  70. package/dist/transports/http/server.js +314 -0
  71. package/dist/transports/http/server.js.map +1 -0
  72. package/dist/transports/mcp/handlers.d.ts +184 -0
  73. package/dist/transports/mcp/handlers.d.ts.map +1 -0
  74. package/dist/transports/mcp/handlers.js +271 -0
  75. package/dist/transports/mcp/handlers.js.map +1 -0
  76. package/hooks/hooks.json +8 -24
  77. package/package.json +26 -90
  78. package/plugin.json +7 -10
  79. package/scripts/hooks/post-commit.js +160 -298
  80. package/scripts/hooks/pre-compact.js +198 -0
  81. package/scripts/hooks/session-start.js +130 -627
  82. package/scripts/hooks/session-summary.js +255 -0
  83. package/README.de.md +0 -212
  84. package/README.es.md +0 -212
  85. package/README.fr.md +0 -212
  86. package/README.id.md +0 -212
  87. package/README.ja.md +0 -212
  88. package/README.ko.md +0 -212
  89. package/README.th.md +0 -212
  90. package/README.vi.md +0 -212
  91. package/README.zh-CN.md +0 -212
  92. package/README.zh-TW.md +0 -286
  93. package/dist/cli/config.d.ts +0 -36
  94. package/dist/cli/config.d.ts.map +0 -1
  95. package/dist/cli/config.js +0 -398
  96. package/dist/cli/config.js.map +0 -1
  97. package/dist/cli/credentials.d.ts +0 -12
  98. package/dist/cli/credentials.d.ts.map +0 -1
  99. package/dist/cli/credentials.js +0 -44
  100. package/dist/cli/credentials.js.map +0 -1
  101. package/dist/cli/daemon.d.ts +0 -3
  102. package/dist/cli/daemon.d.ts.map +0 -1
  103. package/dist/cli/daemon.js +0 -413
  104. package/dist/cli/daemon.js.map +0 -1
  105. package/dist/cli/dashboard.d.ts +0 -2
  106. package/dist/cli/dashboard.d.ts.map +0 -1
  107. package/dist/cli/dashboard.js +0 -300
  108. package/dist/cli/dashboard.js.map +0 -1
  109. package/dist/cli/index.d.ts +0 -3
  110. package/dist/cli/index.d.ts.map +0 -1
  111. package/dist/cli/index.js +0 -188
  112. package/dist/cli/index.js.map +0 -1
  113. package/dist/cli/login.d.ts +0 -4
  114. package/dist/cli/login.d.ts.map +0 -1
  115. package/dist/cli/login.js +0 -230
  116. package/dist/cli/login.js.map +0 -1
  117. package/dist/cli/logout.d.ts +0 -3
  118. package/dist/cli/logout.d.ts.map +0 -1
  119. package/dist/cli/logout.js +0 -23
  120. package/dist/cli/logout.js.map +0 -1
  121. package/dist/cli/setup-wizard.d.ts +0 -18
  122. package/dist/cli/setup-wizard.d.ts.map +0 -1
  123. package/dist/cli/setup-wizard.js +0 -267
  124. package/dist/cli/setup-wizard.js.map +0 -1
  125. package/dist/cli/stats.d.ts +0 -34
  126. package/dist/cli/stats.d.ts.map +0 -1
  127. package/dist/cli/stats.js +0 -479
  128. package/dist/cli/stats.js.map +0 -1
  129. package/dist/cli/tutorial.d.ts +0 -27
  130. package/dist/cli/tutorial.d.ts.map +0 -1
  131. package/dist/cli/tutorial.js +0 -430
  132. package/dist/cli/tutorial.js.map +0 -1
  133. package/dist/cloud/MeMeshCloudClient.d.ts +0 -88
  134. package/dist/cloud/MeMeshCloudClient.d.ts.map +0 -1
  135. package/dist/cloud/MeMeshCloudClient.js +0 -177
  136. package/dist/cloud/MeMeshCloudClient.js.map +0 -1
  137. package/dist/cloud/index.d.ts +0 -3
  138. package/dist/cloud/index.d.ts.map +0 -1
  139. package/dist/cloud/index.js +0 -2
  140. package/dist/cloud/index.js.map +0 -1
  141. package/dist/config/index.d.ts +0 -61
  142. package/dist/config/index.d.ts.map +0 -1
  143. package/dist/config/index.js +0 -105
  144. package/dist/config/index.js.map +0 -1
  145. package/dist/config/models.d.ts +0 -47
  146. package/dist/config/models.d.ts.map +0 -1
  147. package/dist/config/models.js +0 -57
  148. package/dist/config/models.js.map +0 -1
  149. package/dist/config/simple-config.d.ts +0 -35
  150. package/dist/config/simple-config.d.ts.map +0 -1
  151. package/dist/config/simple-config.js +0 -246
  152. package/dist/config/simple-config.js.map +0 -1
  153. package/dist/core/AgentRegistry.d.ts +0 -31
  154. package/dist/core/AgentRegistry.d.ts.map +0 -1
  155. package/dist/core/AgentRegistry.js +0 -281
  156. package/dist/core/AgentRegistry.js.map +0 -1
  157. package/dist/core/CheckpointDetector.d.ts +0 -25
  158. package/dist/core/CheckpointDetector.d.ts.map +0 -1
  159. package/dist/core/CheckpointDetector.js +0 -67
  160. package/dist/core/CheckpointDetector.js.map +0 -1
  161. package/dist/core/GitCommandParser.d.ts +0 -11
  162. package/dist/core/GitCommandParser.d.ts.map +0 -1
  163. package/dist/core/GitCommandParser.js +0 -43
  164. package/dist/core/GitCommandParser.js.map +0 -1
  165. package/dist/core/HealthCheck.d.ts +0 -39
  166. package/dist/core/HealthCheck.d.ts.map +0 -1
  167. package/dist/core/HealthCheck.js +0 -219
  168. package/dist/core/HealthCheck.js.map +0 -1
  169. package/dist/core/HookIntegration.d.ts +0 -47
  170. package/dist/core/HookIntegration.d.ts.map +0 -1
  171. package/dist/core/HookIntegration.js +0 -275
  172. package/dist/core/HookIntegration.js.map +0 -1
  173. package/dist/core/MCPToolInterface.d.ts +0 -120
  174. package/dist/core/MCPToolInterface.d.ts.map +0 -1
  175. package/dist/core/MCPToolInterface.js +0 -376
  176. package/dist/core/MCPToolInterface.js.map +0 -1
  177. package/dist/core/MistakePatternManager.d.ts +0 -31
  178. package/dist/core/MistakePatternManager.d.ts.map +0 -1
  179. package/dist/core/MistakePatternManager.js +0 -137
  180. package/dist/core/MistakePatternManager.js.map +0 -1
  181. package/dist/core/ResourceMonitor.d.ts +0 -32
  182. package/dist/core/ResourceMonitor.d.ts.map +0 -1
  183. package/dist/core/ResourceMonitor.js +0 -243
  184. package/dist/core/ResourceMonitor.js.map +0 -1
  185. package/dist/core/ServiceLocator.d.ts +0 -10
  186. package/dist/core/ServiceLocator.d.ts.map +0 -1
  187. package/dist/core/ServiceLocator.js +0 -30
  188. package/dist/core/ServiceLocator.js.map +0 -1
  189. package/dist/core/TestOutputParser.d.ts +0 -20
  190. package/dist/core/TestOutputParser.d.ts.map +0 -1
  191. package/dist/core/TestOutputParser.js +0 -144
  192. package/dist/core/TestOutputParser.js.map +0 -1
  193. package/dist/db/ConnectionPool.d.ts +0 -50
  194. package/dist/db/ConnectionPool.d.ts.map +0 -1
  195. package/dist/db/ConnectionPool.js +0 -569
  196. package/dist/db/ConnectionPool.js.map +0 -1
  197. package/dist/db/IDatabaseAdapter.d.ts +0 -25
  198. package/dist/db/IDatabaseAdapter.d.ts.map +0 -1
  199. package/dist/db/IDatabaseAdapter.js +0 -2
  200. package/dist/db/IDatabaseAdapter.js.map +0 -1
  201. package/dist/db/QueryCache.d.ts +0 -46
  202. package/dist/db/QueryCache.d.ts.map +0 -1
  203. package/dist/db/QueryCache.js +0 -232
  204. package/dist/db/QueryCache.js.map +0 -1
  205. package/dist/db/adapters/BetterSqlite3Adapter.d.ts +0 -15
  206. package/dist/db/adapters/BetterSqlite3Adapter.d.ts.map +0 -1
  207. package/dist/db/adapters/BetterSqlite3Adapter.js +0 -127
  208. package/dist/db/adapters/BetterSqlite3Adapter.js.map +0 -1
  209. package/dist/embeddings/EmbeddingService.d.ts +0 -23
  210. package/dist/embeddings/EmbeddingService.d.ts.map +0 -1
  211. package/dist/embeddings/EmbeddingService.js +0 -131
  212. package/dist/embeddings/EmbeddingService.js.map +0 -1
  213. package/dist/embeddings/InMemoryVectorAdapter.d.ts +0 -15
  214. package/dist/embeddings/InMemoryVectorAdapter.d.ts.map +0 -1
  215. package/dist/embeddings/InMemoryVectorAdapter.js +0 -58
  216. package/dist/embeddings/InMemoryVectorAdapter.js.map +0 -1
  217. package/dist/embeddings/ModelManager.d.ts +0 -18
  218. package/dist/embeddings/ModelManager.d.ts.map +0 -1
  219. package/dist/embeddings/ModelManager.js +0 -84
  220. package/dist/embeddings/ModelManager.js.map +0 -1
  221. package/dist/embeddings/SqliteVecAdapter.d.ts +0 -15
  222. package/dist/embeddings/SqliteVecAdapter.d.ts.map +0 -1
  223. package/dist/embeddings/SqliteVecAdapter.js +0 -107
  224. package/dist/embeddings/SqliteVecAdapter.js.map +0 -1
  225. package/dist/embeddings/VectorExtension.d.ts +0 -17
  226. package/dist/embeddings/VectorExtension.d.ts.map +0 -1
  227. package/dist/embeddings/VectorExtension.js +0 -107
  228. package/dist/embeddings/VectorExtension.js.map +0 -1
  229. package/dist/embeddings/VectorSearchAdapter.d.ts +0 -17
  230. package/dist/embeddings/VectorSearchAdapter.d.ts.map +0 -1
  231. package/dist/embeddings/VectorSearchAdapter.js +0 -2
  232. package/dist/embeddings/VectorSearchAdapter.js.map +0 -1
  233. package/dist/embeddings/index.d.ts +0 -9
  234. package/dist/embeddings/index.d.ts.map +0 -1
  235. package/dist/embeddings/index.js +0 -7
  236. package/dist/embeddings/index.js.map +0 -1
  237. package/dist/errors/ErrorClassifier.d.ts +0 -60
  238. package/dist/errors/ErrorClassifier.d.ts.map +0 -1
  239. package/dist/errors/ErrorClassifier.js +0 -415
  240. package/dist/errors/ErrorClassifier.js.map +0 -1
  241. package/dist/errors/index.d.ts +0 -63
  242. package/dist/errors/index.d.ts.map +0 -1
  243. package/dist/errors/index.js +0 -127
  244. package/dist/errors/index.js.map +0 -1
  245. package/dist/i18n/index.d.ts +0 -9
  246. package/dist/i18n/index.d.ts.map +0 -1
  247. package/dist/i18n/index.js +0 -78
  248. package/dist/i18n/index.js.map +0 -1
  249. package/dist/i18n/locales/en.d.ts +0 -3
  250. package/dist/i18n/locales/en.d.ts.map +0 -1
  251. package/dist/i18n/locales/en.js +0 -32
  252. package/dist/i18n/locales/en.js.map +0 -1
  253. package/dist/i18n/locales/index.d.ts +0 -5
  254. package/dist/i18n/locales/index.d.ts.map +0 -1
  255. package/dist/i18n/locales/index.js +0 -5
  256. package/dist/i18n/locales/index.js.map +0 -1
  257. package/dist/i18n/locales/ja.d.ts +0 -3
  258. package/dist/i18n/locales/ja.d.ts.map +0 -1
  259. package/dist/i18n/locales/ja.js +0 -30
  260. package/dist/i18n/locales/ja.js.map +0 -1
  261. package/dist/i18n/locales/zh-CN.d.ts +0 -3
  262. package/dist/i18n/locales/zh-CN.d.ts.map +0 -1
  263. package/dist/i18n/locales/zh-CN.js +0 -30
  264. package/dist/i18n/locales/zh-CN.js.map +0 -1
  265. package/dist/i18n/locales/zh-TW.d.ts +0 -3
  266. package/dist/i18n/locales/zh-TW.d.ts.map +0 -1
  267. package/dist/i18n/locales/zh-TW.js +0 -30
  268. package/dist/i18n/locales/zh-TW.js.map +0 -1
  269. package/dist/i18n/types.d.ts +0 -11
  270. package/dist/i18n/types.d.ts.map +0 -1
  271. package/dist/i18n/types.js +0 -3
  272. package/dist/i18n/types.js.map +0 -1
  273. package/dist/integrations/session-memory/SessionContextInjector.d.ts +0 -30
  274. package/dist/integrations/session-memory/SessionContextInjector.d.ts.map +0 -1
  275. package/dist/integrations/session-memory/SessionContextInjector.js +0 -192
  276. package/dist/integrations/session-memory/SessionContextInjector.js.map +0 -1
  277. package/dist/integrations/session-memory/SessionMemoryIngester.d.ts +0 -15
  278. package/dist/integrations/session-memory/SessionMemoryIngester.d.ts.map +0 -1
  279. package/dist/integrations/session-memory/SessionMemoryIngester.js +0 -229
  280. package/dist/integrations/session-memory/SessionMemoryIngester.js.map +0 -1
  281. package/dist/integrations/session-memory/SessionMemoryParser.d.ts +0 -16
  282. package/dist/integrations/session-memory/SessionMemoryParser.d.ts.map +0 -1
  283. package/dist/integrations/session-memory/SessionMemoryParser.js +0 -271
  284. package/dist/integrations/session-memory/SessionMemoryParser.js.map +0 -1
  285. package/dist/integrations/session-memory/SessionMemoryPipeline.d.ts +0 -20
  286. package/dist/integrations/session-memory/SessionMemoryPipeline.d.ts.map +0 -1
  287. package/dist/integrations/session-memory/SessionMemoryPipeline.js +0 -60
  288. package/dist/integrations/session-memory/SessionMemoryPipeline.js.map +0 -1
  289. package/dist/integrations/session-memory/SessionMemoryWatcher.d.ts +0 -27
  290. package/dist/integrations/session-memory/SessionMemoryWatcher.d.ts.map +0 -1
  291. package/dist/integrations/session-memory/SessionMemoryWatcher.js +0 -145
  292. package/dist/integrations/session-memory/SessionMemoryWatcher.js.map +0 -1
  293. package/dist/integrations/session-memory/index.d.ts +0 -9
  294. package/dist/integrations/session-memory/index.d.ts.map +0 -1
  295. package/dist/integrations/session-memory/index.js +0 -6
  296. package/dist/integrations/session-memory/index.js.map +0 -1
  297. package/dist/integrations/session-memory/types.d.ts +0 -74
  298. package/dist/integrations/session-memory/types.d.ts.map +0 -1
  299. package/dist/integrations/session-memory/types.js +0 -22
  300. package/dist/integrations/session-memory/types.js.map +0 -1
  301. package/dist/knowledge-graph/ContentHasher.d.ts +0 -4
  302. package/dist/knowledge-graph/ContentHasher.d.ts.map +0 -1
  303. package/dist/knowledge-graph/ContentHasher.js +0 -8
  304. package/dist/knowledge-graph/ContentHasher.js.map +0 -1
  305. package/dist/knowledge-graph/KGSearchEngine.d.ts +0 -37
  306. package/dist/knowledge-graph/KGSearchEngine.d.ts.map +0 -1
  307. package/dist/knowledge-graph/KGSearchEngine.js +0 -257
  308. package/dist/knowledge-graph/KGSearchEngine.js.map +0 -1
  309. package/dist/knowledge-graph/index.d.ts +0 -64
  310. package/dist/knowledge-graph/index.d.ts.map +0 -1
  311. package/dist/knowledge-graph/index.js +0 -681
  312. package/dist/knowledge-graph/index.js.map +0 -1
  313. package/dist/knowledge-graph/types.d.ts +0 -38
  314. package/dist/knowledge-graph/types.d.ts.map +0 -1
  315. package/dist/knowledge-graph/types.js +0 -2
  316. package/dist/knowledge-graph/types.js.map +0 -1
  317. package/dist/management/UninstallManager.d.ts +0 -23
  318. package/dist/management/UninstallManager.d.ts.map +0 -1
  319. package/dist/management/UninstallManager.js +0 -186
  320. package/dist/management/UninstallManager.js.map +0 -1
  321. package/dist/management/index.d.ts +0 -3
  322. package/dist/management/index.d.ts.map +0 -1
  323. package/dist/management/index.js +0 -2
  324. package/dist/management/index.js.map +0 -1
  325. package/dist/mcp/BuddyCommands.d.ts +0 -24
  326. package/dist/mcp/BuddyCommands.d.ts.map +0 -1
  327. package/dist/mcp/BuddyCommands.js +0 -423
  328. package/dist/mcp/BuddyCommands.js.map +0 -1
  329. package/dist/mcp/ClaudeMdReloader.d.ts +0 -37
  330. package/dist/mcp/ClaudeMdReloader.d.ts.map +0 -1
  331. package/dist/mcp/ClaudeMdReloader.js +0 -92
  332. package/dist/mcp/ClaudeMdReloader.js.map +0 -1
  333. package/dist/mcp/HumanInLoopUI.d.ts +0 -23
  334. package/dist/mcp/HumanInLoopUI.d.ts.map +0 -1
  335. package/dist/mcp/HumanInLoopUI.js +0 -92
  336. package/dist/mcp/HumanInLoopUI.js.map +0 -1
  337. package/dist/mcp/ProgressReporter.d.ts +0 -14
  338. package/dist/mcp/ProgressReporter.d.ts.map +0 -1
  339. package/dist/mcp/ProgressReporter.js +0 -22
  340. package/dist/mcp/ProgressReporter.js.map +0 -1
  341. package/dist/mcp/SamplingClient.d.ts +0 -32
  342. package/dist/mcp/SamplingClient.d.ts.map +0 -1
  343. package/dist/mcp/SamplingClient.js +0 -63
  344. package/dist/mcp/SamplingClient.js.map +0 -1
  345. package/dist/mcp/ServerInitializer.d.ts +0 -40
  346. package/dist/mcp/ServerInitializer.d.ts.map +0 -1
  347. package/dist/mcp/ServerInitializer.js +0 -147
  348. package/dist/mcp/ServerInitializer.js.map +0 -1
  349. package/dist/mcp/SessionBootstrapper.d.ts +0 -13
  350. package/dist/mcp/SessionBootstrapper.d.ts.map +0 -1
  351. package/dist/mcp/SessionBootstrapper.js +0 -82
  352. package/dist/mcp/SessionBootstrapper.js.map +0 -1
  353. package/dist/mcp/StdinBufferManager.d.ts +0 -11
  354. package/dist/mcp/StdinBufferManager.d.ts.map +0 -1
  355. package/dist/mcp/StdinBufferManager.js +0 -62
  356. package/dist/mcp/StdinBufferManager.js.map +0 -1
  357. package/dist/mcp/ToolDefinitions.d.ts +0 -44
  358. package/dist/mcp/ToolDefinitions.d.ts.map +0 -1
  359. package/dist/mcp/ToolDefinitions.js +0 -445
  360. package/dist/mcp/ToolDefinitions.js.map +0 -1
  361. package/dist/mcp/ToolRouter.d.ts +0 -27
  362. package/dist/mcp/ToolRouter.d.ts.map +0 -1
  363. package/dist/mcp/ToolRouter.js +0 -179
  364. package/dist/mcp/ToolRouter.js.map +0 -1
  365. package/dist/mcp/daemon/DaemonBootstrap.d.ts +0 -33
  366. package/dist/mcp/daemon/DaemonBootstrap.d.ts.map +0 -1
  367. package/dist/mcp/daemon/DaemonBootstrap.js +0 -155
  368. package/dist/mcp/daemon/DaemonBootstrap.js.map +0 -1
  369. package/dist/mcp/daemon/DaemonLockManager.d.ts +0 -47
  370. package/dist/mcp/daemon/DaemonLockManager.d.ts.map +0 -1
  371. package/dist/mcp/daemon/DaemonLockManager.js +0 -417
  372. package/dist/mcp/daemon/DaemonLockManager.js.map +0 -1
  373. package/dist/mcp/daemon/DaemonProtocol.d.ts +0 -127
  374. package/dist/mcp/daemon/DaemonProtocol.d.ts.map +0 -1
  375. package/dist/mcp/daemon/DaemonProtocol.js +0 -452
  376. package/dist/mcp/daemon/DaemonProtocol.js.map +0 -1
  377. package/dist/mcp/daemon/DaemonSocketServer.d.ts +0 -71
  378. package/dist/mcp/daemon/DaemonSocketServer.d.ts.map +0 -1
  379. package/dist/mcp/daemon/DaemonSocketServer.js +0 -384
  380. package/dist/mcp/daemon/DaemonSocketServer.js.map +0 -1
  381. package/dist/mcp/daemon/GracefulShutdownCoordinator.d.ts +0 -67
  382. package/dist/mcp/daemon/GracefulShutdownCoordinator.d.ts.map +0 -1
  383. package/dist/mcp/daemon/GracefulShutdownCoordinator.js +0 -206
  384. package/dist/mcp/daemon/GracefulShutdownCoordinator.js.map +0 -1
  385. package/dist/mcp/daemon/IpcTransport.d.ts +0 -42
  386. package/dist/mcp/daemon/IpcTransport.d.ts.map +0 -1
  387. package/dist/mcp/daemon/IpcTransport.js +0 -231
  388. package/dist/mcp/daemon/IpcTransport.js.map +0 -1
  389. package/dist/mcp/daemon/StdioProxyClient.d.ts +0 -84
  390. package/dist/mcp/daemon/StdioProxyClient.d.ts.map +0 -1
  391. package/dist/mcp/daemon/StdioProxyClient.js +0 -574
  392. package/dist/mcp/daemon/StdioProxyClient.js.map +0 -1
  393. package/dist/mcp/daemon/VersionManager.d.ts +0 -35
  394. package/dist/mcp/daemon/VersionManager.d.ts.map +0 -1
  395. package/dist/mcp/daemon/VersionManager.js +0 -169
  396. package/dist/mcp/daemon/VersionManager.js.map +0 -1
  397. package/dist/mcp/daemon/index.d.ts +0 -9
  398. package/dist/mcp/daemon/index.d.ts.map +0 -1
  399. package/dist/mcp/daemon/index.js +0 -9
  400. package/dist/mcp/daemon/index.js.map +0 -1
  401. package/dist/mcp/handlers/BuddyHandlers.d.ts +0 -18
  402. package/dist/mcp/handlers/BuddyHandlers.d.ts.map +0 -1
  403. package/dist/mcp/handlers/BuddyHandlers.js +0 -179
  404. package/dist/mcp/handlers/BuddyHandlers.js.map +0 -1
  405. package/dist/mcp/handlers/BuddyRecordMistake.d.ts +0 -17
  406. package/dist/mcp/handlers/BuddyRecordMistake.d.ts.map +0 -1
  407. package/dist/mcp/handlers/BuddyRecordMistake.js +0 -147
  408. package/dist/mcp/handlers/BuddyRecordMistake.js.map +0 -1
  409. package/dist/mcp/handlers/HookToolHandler.d.ts +0 -10
  410. package/dist/mcp/handlers/HookToolHandler.d.ts.map +0 -1
  411. package/dist/mcp/handlers/HookToolHandler.js +0 -92
  412. package/dist/mcp/handlers/HookToolHandler.js.map +0 -1
  413. package/dist/mcp/handlers/MemoryToolHandler.d.ts +0 -21
  414. package/dist/mcp/handlers/MemoryToolHandler.d.ts.map +0 -1
  415. package/dist/mcp/handlers/MemoryToolHandler.js +0 -433
  416. package/dist/mcp/handlers/MemoryToolHandler.js.map +0 -1
  417. package/dist/mcp/handlers/ResourceHandlers.d.ts +0 -3
  418. package/dist/mcp/handlers/ResourceHandlers.d.ts.map +0 -1
  419. package/dist/mcp/handlers/ResourceHandlers.js +0 -133
  420. package/dist/mcp/handlers/ResourceHandlers.js.map +0 -1
  421. package/dist/mcp/handlers/SystemToolHandler.d.ts +0 -14
  422. package/dist/mcp/handlers/SystemToolHandler.d.ts.map +0 -1
  423. package/dist/mcp/handlers/SystemToolHandler.js +0 -224
  424. package/dist/mcp/handlers/SystemToolHandler.js.map +0 -1
  425. package/dist/mcp/handlers/ToolHandlers.d.ts +0 -26
  426. package/dist/mcp/handlers/ToolHandlers.d.ts.map +0 -1
  427. package/dist/mcp/handlers/ToolHandlers.js +0 -41
  428. package/dist/mcp/handlers/ToolHandlers.js.map +0 -1
  429. package/dist/mcp/handlers/index.d.ts +0 -7
  430. package/dist/mcp/handlers/index.d.ts.map +0 -1
  431. package/dist/mcp/handlers/index.js +0 -7
  432. package/dist/mcp/handlers/index.js.map +0 -1
  433. package/dist/mcp/index.d.ts +0 -5
  434. package/dist/mcp/index.d.ts.map +0 -1
  435. package/dist/mcp/index.js +0 -3
  436. package/dist/mcp/index.js.map +0 -1
  437. package/dist/mcp/resources/ResourceRegistry.d.ts +0 -23
  438. package/dist/mcp/resources/ResourceRegistry.d.ts.map +0 -1
  439. package/dist/mcp/resources/ResourceRegistry.js +0 -26
  440. package/dist/mcp/resources/ResourceRegistry.js.map +0 -1
  441. package/dist/mcp/resources/URITemplateHandler.d.ts +0 -8
  442. package/dist/mcp/resources/URITemplateHandler.d.ts.map +0 -1
  443. package/dist/mcp/resources/URITemplateHandler.js +0 -29
  444. package/dist/mcp/resources/URITemplateHandler.js.map +0 -1
  445. package/dist/mcp/resources/best-practices.md +0 -53
  446. package/dist/mcp/resources/buddy-do-skill.md +0 -84
  447. package/dist/mcp/resources/ccb-complete-guide.md +0 -247
  448. package/dist/mcp/resources/examples.md +0 -47
  449. package/dist/mcp/resources/handlers/AgentStatusHandler.d.ts +0 -7
  450. package/dist/mcp/resources/handlers/AgentStatusHandler.d.ts.map +0 -1
  451. package/dist/mcp/resources/handlers/AgentStatusHandler.js +0 -41
  452. package/dist/mcp/resources/handlers/AgentStatusHandler.js.map +0 -1
  453. package/dist/mcp/resources/handlers/TaskLogsHandler.d.ts +0 -7
  454. package/dist/mcp/resources/handlers/TaskLogsHandler.d.ts.map +0 -1
  455. package/dist/mcp/resources/handlers/TaskLogsHandler.js +0 -35
  456. package/dist/mcp/resources/handlers/TaskLogsHandler.js.map +0 -1
  457. package/dist/mcp/resources/quick-reference.md +0 -71
  458. package/dist/mcp/resources/usage-guide.md +0 -74
  459. package/dist/mcp/schemas/OutputSchemas.d.ts +0 -437
  460. package/dist/mcp/schemas/OutputSchemas.d.ts.map +0 -1
  461. package/dist/mcp/schemas/OutputSchemas.js +0 -215
  462. package/dist/mcp/schemas/OutputSchemas.js.map +0 -1
  463. package/dist/mcp/server-bootstrap.d.ts +0 -3
  464. package/dist/mcp/server-bootstrap.d.ts.map +0 -1
  465. package/dist/mcp/server-bootstrap.js +0 -391
  466. package/dist/mcp/server-bootstrap.js.map +0 -1
  467. package/dist/mcp/tools/add-observations.d.ts +0 -48
  468. package/dist/mcp/tools/add-observations.d.ts.map +0 -1
  469. package/dist/mcp/tools/add-observations.js +0 -64
  470. package/dist/mcp/tools/add-observations.js.map +0 -1
  471. package/dist/mcp/tools/buddy-do.d.ts +0 -15
  472. package/dist/mcp/tools/buddy-do.d.ts.map +0 -1
  473. package/dist/mcp/tools/buddy-do.js +0 -191
  474. package/dist/mcp/tools/buddy-do.js.map +0 -1
  475. package/dist/mcp/tools/buddy-help.d.ts +0 -13
  476. package/dist/mcp/tools/buddy-help.d.ts.map +0 -1
  477. package/dist/mcp/tools/buddy-help.js +0 -44
  478. package/dist/mcp/tools/buddy-help.js.map +0 -1
  479. package/dist/mcp/tools/buddy-remember.d.ts +0 -24
  480. package/dist/mcp/tools/buddy-remember.d.ts.map +0 -1
  481. package/dist/mcp/tools/buddy-remember.js +0 -304
  482. package/dist/mcp/tools/buddy-remember.js.map +0 -1
  483. package/dist/mcp/tools/create-entities.d.ts +0 -66
  484. package/dist/mcp/tools/create-entities.d.ts.map +0 -1
  485. package/dist/mcp/tools/create-entities.js +0 -224
  486. package/dist/mcp/tools/create-entities.js.map +0 -1
  487. package/dist/mcp/tools/create-relations.d.ts +0 -60
  488. package/dist/mcp/tools/create-relations.d.ts.map +0 -1
  489. package/dist/mcp/tools/create-relations.js +0 -84
  490. package/dist/mcp/tools/create-relations.js.map +0 -1
  491. package/dist/mcp/tools/generate-tests.d.ts +0 -11
  492. package/dist/mcp/tools/generate-tests.d.ts.map +0 -1
  493. package/dist/mcp/tools/generate-tests.js +0 -19
  494. package/dist/mcp/tools/generate-tests.js.map +0 -1
  495. package/dist/mcp/tools/health-check.d.ts +0 -10
  496. package/dist/mcp/tools/health-check.d.ts.map +0 -1
  497. package/dist/mcp/tools/health-check.js +0 -37
  498. package/dist/mcp/tools/health-check.js.map +0 -1
  499. package/dist/mcp/tools/memesh-agent-register.d.ts +0 -20
  500. package/dist/mcp/tools/memesh-agent-register.d.ts.map +0 -1
  501. package/dist/mcp/tools/memesh-agent-register.js +0 -80
  502. package/dist/mcp/tools/memesh-agent-register.js.map +0 -1
  503. package/dist/mcp/tools/memesh-cloud-sync.d.ts +0 -30
  504. package/dist/mcp/tools/memesh-cloud-sync.d.ts.map +0 -1
  505. package/dist/mcp/tools/memesh-cloud-sync.js +0 -257
  506. package/dist/mcp/tools/memesh-cloud-sync.js.map +0 -1
  507. package/dist/mcp/tools/memesh-metrics.d.ts +0 -13
  508. package/dist/mcp/tools/memesh-metrics.d.ts.map +0 -1
  509. package/dist/mcp/tools/memesh-metrics.js +0 -193
  510. package/dist/mcp/tools/memesh-metrics.js.map +0 -1
  511. package/dist/mcp/tools/recall-memory.d.ts +0 -31
  512. package/dist/mcp/tools/recall-memory.d.ts.map +0 -1
  513. package/dist/mcp/tools/recall-memory.js +0 -31
  514. package/dist/mcp/tools/recall-memory.js.map +0 -1
  515. package/dist/mcp/validation.d.ts +0 -76
  516. package/dist/mcp/validation.d.ts.map +0 -1
  517. package/dist/mcp/validation.js +0 -106
  518. package/dist/mcp/validation.js.map +0 -1
  519. package/dist/memory/AutoMemoryRecorder.d.ts +0 -35
  520. package/dist/memory/AutoMemoryRecorder.d.ts.map +0 -1
  521. package/dist/memory/AutoMemoryRecorder.js +0 -164
  522. package/dist/memory/AutoMemoryRecorder.js.map +0 -1
  523. package/dist/memory/AutoTagger.d.ts +0 -9
  524. package/dist/memory/AutoTagger.d.ts.map +0 -1
  525. package/dist/memory/AutoTagger.js +0 -149
  526. package/dist/memory/AutoTagger.js.map +0 -1
  527. package/dist/memory/BuiltInRules.d.ts +0 -54
  528. package/dist/memory/BuiltInRules.d.ts.map +0 -1
  529. package/dist/memory/BuiltInRules.js +0 -161
  530. package/dist/memory/BuiltInRules.js.map +0 -1
  531. package/dist/memory/EnhancedRetrieval.d.ts +0 -22
  532. package/dist/memory/EnhancedRetrieval.d.ts.map +0 -1
  533. package/dist/memory/EnhancedRetrieval.js +0 -63
  534. package/dist/memory/EnhancedRetrieval.js.map +0 -1
  535. package/dist/memory/EntityTypes.d.ts +0 -14
  536. package/dist/memory/EntityTypes.d.ts.map +0 -1
  537. package/dist/memory/EntityTypes.js +0 -19
  538. package/dist/memory/EntityTypes.js.map +0 -1
  539. package/dist/memory/MemorySearchEngine.d.ts +0 -17
  540. package/dist/memory/MemorySearchEngine.d.ts.map +0 -1
  541. package/dist/memory/MemorySearchEngine.js +0 -88
  542. package/dist/memory/MemorySearchEngine.js.map +0 -1
  543. package/dist/memory/MistakePatternEngine.d.ts +0 -15
  544. package/dist/memory/MistakePatternEngine.d.ts.map +0 -1
  545. package/dist/memory/MistakePatternEngine.js +0 -99
  546. package/dist/memory/MistakePatternEngine.js.map +0 -1
  547. package/dist/memory/PreventionHook.d.ts +0 -28
  548. package/dist/memory/PreventionHook.d.ts.map +0 -1
  549. package/dist/memory/PreventionHook.js +0 -21
  550. package/dist/memory/PreventionHook.js.map +0 -1
  551. package/dist/memory/ProactiveRecaller.d.ts +0 -26
  552. package/dist/memory/ProactiveRecaller.d.ts.map +0 -1
  553. package/dist/memory/ProactiveRecaller.js +0 -96
  554. package/dist/memory/ProactiveRecaller.js.map +0 -1
  555. package/dist/memory/ProjectAutoTracker.d.ts +0 -80
  556. package/dist/memory/ProjectAutoTracker.d.ts.map +0 -1
  557. package/dist/memory/ProjectAutoTracker.js +0 -386
  558. package/dist/memory/ProjectAutoTracker.js.map +0 -1
  559. package/dist/memory/ProjectMemoryCleanup.d.ts +0 -17
  560. package/dist/memory/ProjectMemoryCleanup.d.ts.map +0 -1
  561. package/dist/memory/ProjectMemoryCleanup.js +0 -57
  562. package/dist/memory/ProjectMemoryCleanup.js.map +0 -1
  563. package/dist/memory/ProjectMemoryManager.d.ts +0 -19
  564. package/dist/memory/ProjectMemoryManager.d.ts.map +0 -1
  565. package/dist/memory/ProjectMemoryManager.js +0 -62
  566. package/dist/memory/ProjectMemoryManager.js.map +0 -1
  567. package/dist/memory/SmartMemoryQuery.d.ts +0 -9
  568. package/dist/memory/SmartMemoryQuery.d.ts.map +0 -1
  569. package/dist/memory/SmartMemoryQuery.js +0 -66
  570. package/dist/memory/SmartMemoryQuery.js.map +0 -1
  571. package/dist/memory/UnifiedMemoryStore.d.ts +0 -27
  572. package/dist/memory/UnifiedMemoryStore.d.ts.map +0 -1
  573. package/dist/memory/UnifiedMemoryStore.js +0 -536
  574. package/dist/memory/UnifiedMemoryStore.js.map +0 -1
  575. package/dist/memory/UserPreferenceEngine.d.ts +0 -18
  576. package/dist/memory/UserPreferenceEngine.d.ts.map +0 -1
  577. package/dist/memory/UserPreferenceEngine.js +0 -117
  578. package/dist/memory/UserPreferenceEngine.js.map +0 -1
  579. package/dist/memory/config/semantic-groups.d.ts +0 -9
  580. package/dist/memory/config/semantic-groups.d.ts.map +0 -1
  581. package/dist/memory/config/semantic-groups.js +0 -22
  582. package/dist/memory/config/semantic-groups.js.map +0 -1
  583. package/dist/memory/index.d.ts +0 -16
  584. package/dist/memory/index.d.ts.map +0 -1
  585. package/dist/memory/index.js +0 -12
  586. package/dist/memory/index.js.map +0 -1
  587. package/dist/memory/types/index.d.ts +0 -7
  588. package/dist/memory/types/index.d.ts.map +0 -1
  589. package/dist/memory/types/index.js +0 -4
  590. package/dist/memory/types/index.js.map +0 -1
  591. package/dist/memory/types/memory-scope.d.ts +0 -27
  592. package/dist/memory/types/memory-scope.d.ts.map +0 -1
  593. package/dist/memory/types/memory-scope.js +0 -67
  594. package/dist/memory/types/memory-scope.js.map +0 -1
  595. package/dist/memory/types/pattern-types.d.ts +0 -66
  596. package/dist/memory/types/pattern-types.d.ts.map +0 -1
  597. package/dist/memory/types/pattern-types.js +0 -2
  598. package/dist/memory/types/pattern-types.js.map +0 -1
  599. package/dist/memory/types/preference-types.d.ts +0 -28
  600. package/dist/memory/types/preference-types.d.ts.map +0 -1
  601. package/dist/memory/types/preference-types.js +0 -2
  602. package/dist/memory/types/preference-types.js.map +0 -1
  603. package/dist/memory/types/unified-memory.d.ts +0 -29
  604. package/dist/memory/types/unified-memory.d.ts.map +0 -1
  605. package/dist/memory/types/unified-memory.js +0 -21
  606. package/dist/memory/types/unified-memory.js.map +0 -1
  607. package/dist/prompts/templates/PromptTemplates.d.ts +0 -11
  608. package/dist/prompts/templates/PromptTemplates.d.ts.map +0 -1
  609. package/dist/prompts/templates/PromptTemplates.js +0 -942
  610. package/dist/prompts/templates/PromptTemplates.js.map +0 -1
  611. package/dist/prompts/templates/index.d.ts +0 -2
  612. package/dist/prompts/templates/index.d.ts.map +0 -1
  613. package/dist/prompts/templates/index.js +0 -2
  614. package/dist/prompts/templates/index.js.map +0 -1
  615. package/dist/skills/SkillManager.d.ts +0 -33
  616. package/dist/skills/SkillManager.d.ts.map +0 -1
  617. package/dist/skills/SkillManager.js +0 -153
  618. package/dist/skills/SkillManager.js.map +0 -1
  619. package/dist/skills/index.d.ts +0 -3
  620. package/dist/skills/index.d.ts.map +0 -1
  621. package/dist/skills/index.js +0 -2
  622. package/dist/skills/index.js.map +0 -1
  623. package/dist/telemetry/TelemetryCollector.d.ts +0 -19
  624. package/dist/telemetry/TelemetryCollector.d.ts.map +0 -1
  625. package/dist/telemetry/TelemetryCollector.js +0 -62
  626. package/dist/telemetry/TelemetryCollector.js.map +0 -1
  627. package/dist/telemetry/TelemetryStore.d.ts +0 -20
  628. package/dist/telemetry/TelemetryStore.d.ts.map +0 -1
  629. package/dist/telemetry/TelemetryStore.js +0 -127
  630. package/dist/telemetry/TelemetryStore.js.map +0 -1
  631. package/dist/telemetry/index.d.ts +0 -8
  632. package/dist/telemetry/index.d.ts.map +0 -1
  633. package/dist/telemetry/index.js +0 -33
  634. package/dist/telemetry/index.js.map +0 -1
  635. package/dist/telemetry/sanitization.d.ts +0 -6
  636. package/dist/telemetry/sanitization.d.ts.map +0 -1
  637. package/dist/telemetry/sanitization.js +0 -180
  638. package/dist/telemetry/sanitization.js.map +0 -1
  639. package/dist/telemetry/types.d.ts +0 -73
  640. package/dist/telemetry/types.d.ts.map +0 -1
  641. package/dist/telemetry/types.js +0 -16
  642. package/dist/telemetry/types.js.map +0 -1
  643. package/dist/tools/TestGenerator.d.ts +0 -8
  644. package/dist/tools/TestGenerator.d.ts.map +0 -1
  645. package/dist/tools/TestGenerator.js +0 -54
  646. package/dist/tools/TestGenerator.js.map +0 -1
  647. package/dist/types/AgentClassification.d.ts +0 -30
  648. package/dist/types/AgentClassification.d.ts.map +0 -1
  649. package/dist/types/AgentClassification.js +0 -19
  650. package/dist/types/AgentClassification.js.map +0 -1
  651. package/dist/types/Checkpoint.d.ts +0 -12
  652. package/dist/types/Checkpoint.d.ts.map +0 -1
  653. package/dist/types/Checkpoint.js +0 -13
  654. package/dist/types/Checkpoint.js.map +0 -1
  655. package/dist/types/toonify.d.ts +0 -91
  656. package/dist/types/toonify.d.ts.map +0 -1
  657. package/dist/types/toonify.js +0 -18
  658. package/dist/types/toonify.js.map +0 -1
  659. package/dist/ui/AsciiProgressBar.d.ts +0 -29
  660. package/dist/ui/AsciiProgressBar.d.ts.map +0 -1
  661. package/dist/ui/AsciiProgressBar.js +0 -130
  662. package/dist/ui/AsciiProgressBar.js.map +0 -1
  663. package/dist/ui/AttributionManager.d.ts +0 -19
  664. package/dist/ui/AttributionManager.d.ts.map +0 -1
  665. package/dist/ui/AttributionManager.js +0 -107
  666. package/dist/ui/AttributionManager.js.map +0 -1
  667. package/dist/ui/Dashboard.d.ts +0 -24
  668. package/dist/ui/Dashboard.d.ts.map +0 -1
  669. package/dist/ui/Dashboard.js +0 -135
  670. package/dist/ui/Dashboard.js.map +0 -1
  671. package/dist/ui/LoadingIndicator.d.ts +0 -53
  672. package/dist/ui/LoadingIndicator.d.ts.map +0 -1
  673. package/dist/ui/LoadingIndicator.js +0 -211
  674. package/dist/ui/LoadingIndicator.js.map +0 -1
  675. package/dist/ui/MetricsStore.d.ts +0 -15
  676. package/dist/ui/MetricsStore.d.ts.map +0 -1
  677. package/dist/ui/MetricsStore.js +0 -131
  678. package/dist/ui/MetricsStore.js.map +0 -1
  679. package/dist/ui/ProgressIndicator.d.ts +0 -35
  680. package/dist/ui/ProgressIndicator.d.ts.map +0 -1
  681. package/dist/ui/ProgressIndicator.js +0 -177
  682. package/dist/ui/ProgressIndicator.js.map +0 -1
  683. package/dist/ui/ProgressRenderer.d.ts +0 -24
  684. package/dist/ui/ProgressRenderer.d.ts.map +0 -1
  685. package/dist/ui/ProgressRenderer.js +0 -143
  686. package/dist/ui/ProgressRenderer.js.map +0 -1
  687. package/dist/ui/ResponseFormatter.d.ts +0 -57
  688. package/dist/ui/ResponseFormatter.d.ts.map +0 -1
  689. package/dist/ui/ResponseFormatter.js +0 -513
  690. package/dist/ui/ResponseFormatter.js.map +0 -1
  691. package/dist/ui/UIEventBus.d.ts +0 -38
  692. package/dist/ui/UIEventBus.d.ts.map +0 -1
  693. package/dist/ui/UIEventBus.js +0 -173
  694. package/dist/ui/UIEventBus.js.map +0 -1
  695. package/dist/ui/accessibility.d.ts +0 -28
  696. package/dist/ui/accessibility.d.ts.map +0 -1
  697. package/dist/ui/accessibility.js +0 -97
  698. package/dist/ui/accessibility.js.map +0 -1
  699. package/dist/ui/design-tokens.d.ts +0 -36
  700. package/dist/ui/design-tokens.d.ts.map +0 -1
  701. package/dist/ui/design-tokens.js +0 -94
  702. package/dist/ui/design-tokens.js.map +0 -1
  703. package/dist/ui/index.d.ts +0 -8
  704. package/dist/ui/index.d.ts.map +0 -1
  705. package/dist/ui/index.js +0 -6
  706. package/dist/ui/index.js.map +0 -1
  707. package/dist/ui/theme.d.ts +0 -313
  708. package/dist/ui/theme.d.ts.map +0 -1
  709. package/dist/ui/theme.js +0 -198
  710. package/dist/ui/theme.js.map +0 -1
  711. package/dist/ui/types.d.ts +0 -146
  712. package/dist/ui/types.d.ts.map +0 -1
  713. package/dist/ui/types.js +0 -16
  714. package/dist/ui/types.js.map +0 -1
  715. package/dist/utils/ILogger.d.ts +0 -7
  716. package/dist/utils/ILogger.d.ts.map +0 -1
  717. package/dist/utils/ILogger.js +0 -2
  718. package/dist/utils/ILogger.js.map +0 -1
  719. package/dist/utils/MinHeap.d.ts +0 -15
  720. package/dist/utils/MinHeap.d.ts.map +0 -1
  721. package/dist/utils/MinHeap.js +0 -69
  722. package/dist/utils/MinHeap.js.map +0 -1
  723. package/dist/utils/PathResolver.d.ts +0 -13
  724. package/dist/utils/PathResolver.d.ts.map +0 -1
  725. package/dist/utils/PathResolver.js +0 -77
  726. package/dist/utils/PathResolver.js.map +0 -1
  727. package/dist/utils/RateLimiter.d.ts +0 -28
  728. package/dist/utils/RateLimiter.d.ts.map +0 -1
  729. package/dist/utils/RateLimiter.js +0 -115
  730. package/dist/utils/RateLimiter.js.map +0 -1
  731. package/dist/utils/SystemResources.d.ts +0 -40
  732. package/dist/utils/SystemResources.d.ts.map +0 -1
  733. package/dist/utils/SystemResources.js +0 -216
  734. package/dist/utils/SystemResources.js.map +0 -1
  735. package/dist/utils/errorHandler.d.ts +0 -49
  736. package/dist/utils/errorHandler.d.ts.map +0 -1
  737. package/dist/utils/errorHandler.js +0 -397
  738. package/dist/utils/errorHandler.js.map +0 -1
  739. package/dist/utils/index.d.ts +0 -17
  740. package/dist/utils/index.d.ts.map +0 -1
  741. package/dist/utils/index.js +0 -15
  742. package/dist/utils/index.js.map +0 -1
  743. package/dist/utils/json.d.ts +0 -13
  744. package/dist/utils/json.d.ts.map +0 -1
  745. package/dist/utils/json.js +0 -95
  746. package/dist/utils/json.js.map +0 -1
  747. package/dist/utils/logger.d.ts +0 -16
  748. package/dist/utils/logger.d.ts.map +0 -1
  749. package/dist/utils/logger.js +0 -125
  750. package/dist/utils/logger.js.map +0 -1
  751. package/dist/utils/lru-cache.d.ts +0 -47
  752. package/dist/utils/lru-cache.d.ts.map +0 -1
  753. package/dist/utils/lru-cache.js +0 -239
  754. package/dist/utils/lru-cache.js.map +0 -1
  755. package/dist/utils/memory.d.ts +0 -20
  756. package/dist/utils/memory.d.ts.map +0 -1
  757. package/dist/utils/memory.js +0 -53
  758. package/dist/utils/memory.js.map +0 -1
  759. package/dist/utils/money.d.ts +0 -10
  760. package/dist/utils/money.d.ts.map +0 -1
  761. package/dist/utils/money.js +0 -25
  762. package/dist/utils/money.js.map +0 -1
  763. package/dist/utils/pathValidation.d.ts +0 -2
  764. package/dist/utils/pathValidation.d.ts.map +0 -1
  765. package/dist/utils/pathValidation.js +0 -62
  766. package/dist/utils/pathValidation.js.map +0 -1
  767. package/dist/utils/paths.d.ts +0 -4
  768. package/dist/utils/paths.d.ts.map +0 -1
  769. package/dist/utils/paths.js +0 -28
  770. package/dist/utils/paths.js.map +0 -1
  771. package/dist/utils/requestId.d.ts +0 -4
  772. package/dist/utils/requestId.d.ts.map +0 -1
  773. package/dist/utils/requestId.js +0 -17
  774. package/dist/utils/requestId.js.map +0 -1
  775. package/dist/utils/retry.d.ts +0 -20
  776. package/dist/utils/retry.d.ts.map +0 -1
  777. package/dist/utils/retry.js +0 -226
  778. package/dist/utils/retry.js.map +0 -1
  779. package/dist/utils/safeMath.d.ts +0 -11
  780. package/dist/utils/safeMath.d.ts.map +0 -1
  781. package/dist/utils/safeMath.js +0 -92
  782. package/dist/utils/safeMath.js.map +0 -1
  783. package/dist/utils/toonify-adapter.d.ts +0 -77
  784. package/dist/utils/toonify-adapter.d.ts.map +0 -1
  785. package/dist/utils/toonify-adapter.js +0 -282
  786. package/dist/utils/toonify-adapter.js.map +0 -1
  787. package/dist/utils/tracing/TraceContext.d.ts +0 -23
  788. package/dist/utils/tracing/TraceContext.d.ts.map +0 -1
  789. package/dist/utils/tracing/TraceContext.js +0 -127
  790. package/dist/utils/tracing/TraceContext.js.map +0 -1
  791. package/dist/utils/tracing/index.d.ts +0 -2
  792. package/dist/utils/tracing/index.d.ts.map +0 -1
  793. package/dist/utils/tracing/index.js +0 -2
  794. package/dist/utils/tracing/index.js.map +0 -1
  795. package/dist/utils/tracing/middleware.d.ts +0 -15
  796. package/dist/utils/tracing/middleware.d.ts.map +0 -1
  797. package/dist/utils/tracing/middleware.js +0 -49
  798. package/dist/utils/tracing/middleware.js.map +0 -1
  799. package/dist/utils/validation.d.ts +0 -12
  800. package/dist/utils/validation.d.ts.map +0 -1
  801. package/dist/utils/validation.js +0 -87
  802. package/dist/utils/validation.js.map +0 -1
  803. package/scripts/health-check.js +0 -331
  804. package/scripts/hooks/README.md +0 -230
  805. package/scripts/hooks/__tests__/hook-test-harness.js +0 -218
  806. package/scripts/hooks/__tests__/hooks.test.js +0 -267
  807. package/scripts/hooks/__tests__/post-tool-use-recall.test.js +0 -192
  808. package/scripts/hooks/__tests__/session-start-recall.test.js +0 -86
  809. package/scripts/hooks/hook-utils.js +0 -899
  810. package/scripts/hooks/post-tool-use-recall-utils.js +0 -74
  811. package/scripts/hooks/post-tool-use.js +0 -895
  812. package/scripts/hooks/pre-tool-use.js +0 -491
  813. package/scripts/hooks/session-start-recall-utils.js +0 -40
  814. package/scripts/hooks/stop.js +0 -673
  815. package/scripts/hooks/subagent-stop.js +0 -184
  816. package/scripts/postinstall-lib.js +0 -242
  817. package/scripts/postinstall-new.js +0 -191
  818. package/scripts/skills/comprehensive-code-review/SKILL.md +0 -276
@@ -1,307 +1,169 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- /**
4
- * PostCommit Hook - Auto-save commit context to MeMesh Knowledge Graph
5
- *
6
- * Registered as a PostToolUse hook. Detects git commit commands and
7
- * saves the commit details (message, files changed, diff summary)
8
- * to the MeMesh knowledge graph for future recall.
9
- *
10
- * Commit saving runs silently. Plan progress prints a timeline to stderr.
11
- */
12
-
13
- import {
14
- MEMESH_DB_PATH,
15
- readStdin,
16
- sqliteBatchEntity,
17
- getDateString,
18
- logError,
19
- logMemorySave,
20
- queryActivePlans,
21
- matchCommitToStep,
22
- addObservation,
23
- updateEntityMetadata,
24
- updateEntityTag,
25
- createRelation,
26
- renderTimeline,
27
- } from './hook-utils.js';
28
- import fs from 'fs';
3
+ import { createRequire } from 'module';
29
4
  import { execFileSync } from 'child_process';
30
-
31
- // ============================================================================
32
- // Git Commit Detection
33
- // ============================================================================
34
-
35
- /**
36
- * Check if a Bash tool call is a git commit
37
- * @param {Object} toolData - Normalized tool data
38
- * @returns {boolean}
39
- */
40
- function isGitCommit(toolData) {
41
- if (toolData.toolName !== 'Bash') return false;
42
- if (!toolData.success) return false;
43
-
44
- const cmd = toolData.arguments?.command || '';
45
- return /git\s+commit\s/.test(cmd) && !cmd.includes('--amend');
46
- }
47
-
48
- // ============================================================================
49
- // Git Info Extraction
50
- // ============================================================================
51
-
52
- /**
53
- * Extract latest commit details using git CLI
54
- * @returns {{ hash: string, subject: string, body: string, filesChanged: string[], diffStat: string } | null}
55
- */
56
- function getLatestCommitInfo() {
57
- try {
58
- // Get commit hash and message
59
- const logOutput = execFileSync('git', [
60
- 'log', '-1',
61
- '--format=%H%n%s%n%b',
62
- ], { encoding: 'utf-8', timeout: 5000 }).trim();
63
-
64
- const lines = logOutput.split('\n');
65
- const hash = lines[0] || '';
66
- const subject = lines[1] || '';
67
- const body = lines.slice(2).join('\n').trim();
68
-
69
- // Get files changed
70
- const diffNameOnly = execFileSync('git', [
71
- 'diff-tree', '--no-commit-id', '--name-only', '-r', 'HEAD',
72
- ], { encoding: 'utf-8', timeout: 5000 }).trim();
73
-
74
- const filesChanged = diffNameOnly ? diffNameOnly.split('\n').filter(Boolean) : [];
75
-
76
- // Get diff stat (compact summary)
77
- const diffStat = execFileSync('git', [
78
- 'diff-tree', '--no-commit-id', '--stat', 'HEAD',
79
- ], { encoding: 'utf-8', timeout: 5000 }).trim();
80
-
81
- return { hash, subject, body, filesChanged, diffStat };
82
- } catch (error) {
83
- logError('getLatestCommitInfo', error);
84
- return null;
85
- }
86
- }
87
-
88
- // ============================================================================
89
- // MeMesh KG Save
90
- // ============================================================================
91
-
92
- /**
93
- * Save commit context to MeMesh knowledge graph.
94
- * Uses sqliteBatchEntity for performance (3 spawns instead of 8+).
95
- * @param {Object} commitInfo - Commit details
96
- * @returns {boolean} True if saved
97
- */
98
- function saveCommitToKG(commitInfo) {
5
+ import { homedir } from 'os';
6
+ import { join, basename } from 'path';
7
+ import { existsSync, mkdirSync } from 'fs';
8
+
9
+ const require = createRequire(import.meta.url);
10
+
11
+ const SCHEMA_SQL = `
12
+ CREATE TABLE IF NOT EXISTS entities (
13
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
14
+ name TEXT NOT NULL UNIQUE,
15
+ type TEXT NOT NULL,
16
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
17
+ metadata JSON
18
+ );
19
+
20
+ CREATE TABLE IF NOT EXISTS observations (
21
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
22
+ entity_id INTEGER NOT NULL,
23
+ content TEXT NOT NULL,
24
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
25
+ FOREIGN KEY (entity_id) REFERENCES entities(id) ON DELETE CASCADE
26
+ );
27
+
28
+ CREATE TABLE IF NOT EXISTS relations (
29
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
30
+ from_entity_id INTEGER NOT NULL,
31
+ to_entity_id INTEGER NOT NULL,
32
+ relation_type TEXT NOT NULL,
33
+ metadata JSON,
34
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
35
+ FOREIGN KEY (from_entity_id) REFERENCES entities(id) ON DELETE CASCADE,
36
+ FOREIGN KEY (to_entity_id) REFERENCES entities(id) ON DELETE CASCADE,
37
+ UNIQUE(from_entity_id, to_entity_id, relation_type)
38
+ );
39
+
40
+ CREATE TABLE IF NOT EXISTS tags (
41
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
42
+ entity_id INTEGER NOT NULL,
43
+ tag TEXT NOT NULL,
44
+ FOREIGN KEY (entity_id) REFERENCES entities(id) ON DELETE CASCADE
45
+ );
46
+
47
+ CREATE INDEX IF NOT EXISTS idx_tags_entity ON tags(entity_id);
48
+ CREATE INDEX IF NOT EXISTS idx_tags_tag ON tags(tag);
49
+ DELETE FROM tags
50
+ WHERE id NOT IN (
51
+ SELECT MIN(id)
52
+ FROM tags
53
+ GROUP BY entity_id, tag
54
+ );
55
+ CREATE UNIQUE INDEX IF NOT EXISTS idx_tags_entity_tag_unique ON tags(entity_id, tag);
56
+ CREATE INDEX IF NOT EXISTS idx_observations_entity ON observations(entity_id);
57
+ CREATE INDEX IF NOT EXISTS idx_relations_from ON relations(from_entity_id);
58
+ CREATE INDEX IF NOT EXISTS idx_relations_to ON relations(to_entity_id);
59
+
60
+ CREATE VIRTUAL TABLE IF NOT EXISTS entities_fts USING fts5(
61
+ name, observations, content='',
62
+ tokenize='unicode61 remove_diacritics 1'
63
+ );
64
+ `;
65
+
66
+ let input = '';
67
+ process.stdin.setEncoding('utf8');
68
+ process.stdin.on('data', (chunk) => { input += chunk; });
69
+ process.stdin.on('end', () => {
99
70
  try {
100
- if (!fs.existsSync(MEMESH_DB_PATH)) {
101
- return false;
102
- }
103
-
104
- const { hash, subject, body, filesChanged, diffStat } = commitInfo;
105
- const shortHash = hash.substring(0, 7);
106
- const entityName = `Commit ${shortHash}: ${subject}`;
107
-
108
- // Build observations
109
- const observations = [];
110
- observations.push(`Commit: ${shortHash} - ${subject}`);
111
-
112
- if (body) {
113
- observations.push(`Details: ${body.substring(0, 200)}`);
114
- }
115
-
116
- if (filesChanged.length > 0) {
117
- const fileList = filesChanged.length <= 10
118
- ? filesChanged.join(', ')
119
- : `${filesChanged.slice(0, 10).join(', ')} (+${filesChanged.length - 10} more)`;
120
- observations.push(`Files changed (${filesChanged.length}): ${fileList}`);
121
- }
122
-
123
- // Group files by directory for context
124
- if (filesChanged.length > 0) {
125
- const dirs = {};
126
- filesChanged.forEach(f => {
127
- const dir = f.split('/').slice(0, 2).join('/');
128
- dirs[dir] = (dirs[dir] || 0) + 1;
129
- });
130
- const areaSummary = Object.entries(dirs)
131
- .sort((a, b) => b[1] - a[1])
132
- .slice(0, 5)
133
- .map(([dir, count]) => `${dir} (${count})`)
134
- .join(', ');
135
- observations.push(`Areas: ${areaSummary}`);
136
- }
137
-
138
- if (diffStat) {
139
- const statLines = diffStat.split('\n');
140
- const summaryLine = statLines[statLines.length - 1]?.trim();
141
- if (summaryLine) {
142
- observations.push(`Stats: ${summaryLine}`);
71
+ const data = JSON.parse(input);
72
+
73
+ // Only process Bash tool outputs
74
+ if (data.tool_name !== 'Bash') return exit0();
75
+ const toolOutput = typeof data.tool_output === 'string'
76
+ ? data.tool_output
77
+ : JSON.stringify(data.tool_output || '');
78
+
79
+ // Detect git commit in output
80
+ // Pattern: [branch hash] commit message
81
+ const commitMatch = toolOutput.match(/\[[\w/.-]+ ([a-f0-9]{7,})\] (.+)/);
82
+ if (!commitMatch) return exit0();
83
+
84
+ const branchMatch = commitMatch[0].match(/^\[([^\s]+)\s/);
85
+ const branch = branchMatch ? branchMatch[1] : 'unknown';
86
+
87
+ const commitHash = commitMatch[1];
88
+ const commitMsg = commitMatch[2];
89
+ const projectName = basename(data.cwd || process.cwd());
90
+
91
+ // Open database (create dir if needed)
92
+ const dbPath = process.env.MEMESH_DB_PATH || join(homedir(), '.memesh', 'knowledge-graph.db');
93
+ const dbDir = process.env.MEMESH_DB_PATH
94
+ ? join(process.env.MEMESH_DB_PATH, '..')
95
+ : join(homedir(), '.memesh');
96
+ if (!existsSync(dbDir)) mkdirSync(dbDir, { recursive: true });
97
+
98
+ const Database = require('better-sqlite3');
99
+ const db = new Database(dbPath);
100
+ try {
101
+ db.pragma('journal_mode = WAL');
102
+ db.pragma('foreign_keys = ON');
103
+
104
+ // Ensure schema exists
105
+ db.exec(SCHEMA_SQL);
106
+
107
+ const entityName = `commit-${commitHash}`;
108
+
109
+ // Check if this is a new or existing entity
110
+ const insertResult = db.prepare('INSERT OR IGNORE INTO entities (name, type) VALUES (?, ?)').run(entityName, 'commit');
111
+ const isNew = insertResult.changes > 0;
112
+ const entity = db.prepare('SELECT id FROM entities WHERE name = ?').get(entityName);
113
+ if (entity) {
114
+ // Capture existing observations for FTS delete (before inserting new one)
115
+ const prevObs = isNew
116
+ ? []
117
+ : db.prepare('SELECT content FROM observations WHERE entity_id = ?').all(entity.id);
118
+ const prevObsText = isNew ? undefined : prevObs.map(o => o.content).join(' ');
119
+
120
+ // Add observations
121
+ db.prepare('INSERT INTO observations (entity_id, content) VALUES (?, ?)').run(entity.id, commitMsg);
122
+ db.prepare('INSERT INTO observations (entity_id, content) VALUES (?, ?)').run(entity.id, `Branch: ${branch}`);
123
+
124
+ // Add richer diff stats as an observation (backward compatible — failures are silently ignored)
125
+ try {
126
+ const stat = execFileSync('git', ['show', '--stat', '--format=', commitHash], {
127
+ cwd: data.cwd || process.cwd(),
128
+ encoding: 'utf8',
129
+ timeout: 5000,
130
+ }).trim();
131
+ if (stat) {
132
+ // Last non-empty line is the summary, e.g. "3 files changed, 45 insertions(+), 12 deletions(-)"
133
+ const statLines = stat.split('\n').filter(l => l.trim());
134
+ const summary = statLines[statLines.length - 1]?.trim() || '';
135
+ if (summary) {
136
+ db.prepare('INSERT INTO observations (entity_id, content) VALUES (?, ?)').run(entity.id, `Diff stats: ${summary}`);
137
+ }
138
+ }
139
+ } catch {
140
+ // git show failed — no diff stats recorded, existing behavior unchanged
141
+ }
142
+
143
+ // Add project tag
144
+ const projectTag = `project:${projectName}`;
145
+ db.prepare('INSERT OR IGNORE INTO tags (entity_id, tag) VALUES (?, ?)').run(entity.id, projectTag);
146
+
147
+ // Update FTS index — delete old entry first if entity existed
148
+ if (prevObsText !== undefined) {
149
+ db.prepare("INSERT INTO entities_fts(entities_fts, rowid, name, observations) VALUES('delete', ?, ?, ?)").run(entity.id, entityName, prevObsText);
150
+ }
151
+ // Fetch all observations (including the one just added) for the new FTS entry
152
+ const allObs = db.prepare('SELECT content FROM observations WHERE entity_id = ?').all(entity.id);
153
+ const allObsText = allObs.map(o => o.content).join(' ');
154
+ db.prepare('INSERT INTO entities_fts(rowid, name, observations) VALUES(?, ?, ?)').run(entity.id, entityName, allObsText);
143
155
  }
156
+ } finally {
157
+ db.close();
144
158
  }
145
-
146
- // Batch: entity + observations + tags in 2 process spawns (was 8+)
147
- const metadata = JSON.stringify({
148
- hash: shortHash,
149
- fullHash: hash,
150
- filesCount: filesChanged.length,
151
- source: 'post-commit-hook',
152
- });
153
-
154
- const tags = ['commit', 'auto-tracked', `date:${getDateString()}`, 'scope:project'];
155
-
156
- const entityId = sqliteBatchEntity(
157
- MEMESH_DB_PATH,
158
- { name: entityName, type: 'commit', metadata },
159
- observations,
160
- tags
161
- );
162
-
163
- if (entityId === null) return false;
164
-
165
- logMemorySave(`Commit saved: ${shortHash} - ${subject} (${filesChanged.length} files)`);
166
- return true;
167
- } catch (error) {
168
- logError('saveCommitToKG', error);
169
- return false;
159
+ } catch (err) {
160
+ // Never crash Claude Code but leave a trace for debugging
161
+ try { process.stderr.write(`[memesh post-commit] ${err?.message || err}\n`); } catch {}
170
162
  }
171
- }
163
+ console.log(JSON.stringify({ suppressOutput: true }));
164
+ exit0();
165
+ });
172
166
 
173
- // ============================================================================
174
- // Plan Progress Tracking (Beta)
175
- // ============================================================================
176
-
177
- /**
178
- * Match commit to active plan steps and update progress.
179
- * Prints Style B timeline to stderr (visible to user).
180
- * @param {Object} commitInfo - Commit details from git
181
- * @param {boolean} commitEntitySaved - Whether commit entity was saved to KG
182
- */
183
- function updatePlanProgress(commitInfo, commitEntitySaved = false) {
184
- try {
185
- const activePlans = queryActivePlans(MEMESH_DB_PATH);
186
- if (activePlans.length === 0) return;
187
-
188
- const { hash, subject, filesChanged } = commitInfo;
189
- const shortHash = hash.substring(0, 7);
190
- const commitEntityName = `Commit ${shortHash}: ${subject}`;
191
-
192
- for (const plan of activePlans) {
193
- const stepsDetail = plan.metadata?.stepsDetail;
194
- if (!stepsDetail || stepsDetail.length === 0) continue;
195
-
196
- const matchResult = matchCommitToStep(
197
- { subject, filesChanged },
198
- stepsDetail
199
- );
200
-
201
- if (!matchResult) continue;
202
-
203
- const { step: matched, confidence } = matchResult;
204
-
205
- // Update step as completed
206
- const updatedSteps = stepsDetail.map(s =>
207
- s.number === matched.number
208
- ? { ...s, completed: true, commitHash: shortHash, date: getDateString(), confidence }
209
- : s
210
- );
211
- const rawCompleted = updatedSteps.filter(s => s.completed).length;
212
- const newCompleted = Math.min(rawCompleted, plan.metadata.totalSteps);
213
-
214
- // Update entity metadata
215
- updateEntityMetadata(MEMESH_DB_PATH, plan.name, {
216
- ...plan.metadata,
217
- completed: newCompleted,
218
- stepsDetail: updatedSteps,
219
- status: newCompleted >= plan.metadata.totalSteps ? 'completed' : 'active',
220
- });
221
-
222
- // Add completion observation
223
- addObservation(MEMESH_DB_PATH, plan.name,
224
- `\u2705 Step ${matched.number} completed by ${shortHash} (${getDateString()})`
225
- );
226
-
227
- // Create relation: commit → plan (only if commit entity exists in KG)
228
- if (commitEntitySaved) {
229
- createRelation(MEMESH_DB_PATH, commitEntityName, plan.name, 'depends_on');
230
- }
231
-
232
- // If all steps completed, swap tag and create lesson_learned
233
- if (newCompleted === plan.metadata.totalSteps) {
234
- updateEntityTag(MEMESH_DB_PATH, plan.name, 'active', 'completed');
235
- addObservation(MEMESH_DB_PATH, plan.name,
236
- `\ud83c\udf89 Plan completed on ${getDateString()}`
237
- );
238
-
239
- // Auto-create lesson_learned entity for the completed plan
240
- const planName = plan.name.replace('Plan: ', '');
241
- const completedSteps = updatedSteps.filter(s => s.completed);
242
- const lessonObs = [
243
- `Plan "${planName}" completed (${plan.metadata.totalSteps} steps)`,
244
- `Steps: ${completedSteps.map(s => s.description).join(', ')}`,
245
- `Commits: ${completedSteps.filter(s => s.commitHash).map(s => s.commitHash).join(', ')}`,
246
- ];
247
- sqliteBatchEntity(MEMESH_DB_PATH,
248
- { name: `Lesson: ${planName} completed`, type: 'lesson_learned', metadata: '{}' },
249
- lessonObs,
250
- ['lesson', 'plan-completion', `plan:${planName}`, 'scope:project']
251
- );
252
- }
253
-
254
- // Print timeline to stderr (visible to user — stdout goes to transcript)
255
- const timelinePlan = {
256
- ...plan,
257
- metadata: { ...plan.metadata, completed: newCompleted, stepsDetail: updatedSteps },
258
- _lastCommit: shortHash,
259
- _matchConfidence: confidence,
260
- };
261
- console.error('\n' + renderTimeline(timelinePlan, matched.number) + '\n');
262
-
263
- logMemorySave(`Plan progress: ${plan.name} ${newCompleted}/${plan.metadata.totalSteps}`);
264
- }
265
- } catch (error) {
266
- logError('updatePlanProgress', error);
267
- }
268
- }
269
-
270
- // ============================================================================
271
- // Main
272
- // ============================================================================
273
-
274
- async function postCommit() {
275
- try {
276
- const input = await readStdin(3000);
277
- if (!input || input.trim() === '') {
278
- process.exit(0);
279
- }
280
-
281
- const rawData = JSON.parse(input);
282
- const toolData = {
283
- toolName: rawData.tool_name || rawData.toolName || 'unknown',
284
- arguments: rawData.tool_input || rawData.arguments || {},
285
- success: rawData.success !== false,
286
- };
287
-
288
- // Only act on successful git commits
289
- if (!isGitCommit(toolData)) {
290
- process.exit(0);
291
- }
292
-
293
- // Extract commit info and save
294
- const commitInfo = getLatestCommitInfo();
295
- if (commitInfo) {
296
- const saved = saveCommitToKG(commitInfo);
297
- updatePlanProgress(commitInfo, saved);
298
- }
299
-
300
- process.exit(0);
301
- } catch (error) {
302
- logError('PostCommit', error);
303
- process.exit(0); // Never block Claude Code on hook errors
304
- }
167
+ function exit0() {
168
+ process.exit(0);
305
169
  }
306
-
307
- postCommit();
@@ -0,0 +1,198 @@
1
+ #!/usr/bin/env node
2
+
3
+ import { createRequire } from 'module';
4
+ import { homedir } from 'os';
5
+ import { join, basename } from 'path';
6
+ import { existsSync, mkdirSync, readFileSync } from 'fs';
7
+
8
+ const require = createRequire(import.meta.url);
9
+
10
+ const SCHEMA_SQL = `
11
+ CREATE TABLE IF NOT EXISTS entities (
12
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
13
+ name TEXT NOT NULL UNIQUE,
14
+ type TEXT NOT NULL,
15
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
16
+ metadata JSON
17
+ );
18
+
19
+ CREATE TABLE IF NOT EXISTS observations (
20
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
21
+ entity_id INTEGER NOT NULL,
22
+ content TEXT NOT NULL,
23
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
24
+ FOREIGN KEY (entity_id) REFERENCES entities(id) ON DELETE CASCADE
25
+ );
26
+
27
+ CREATE TABLE IF NOT EXISTS relations (
28
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
29
+ from_entity_id INTEGER NOT NULL,
30
+ to_entity_id INTEGER NOT NULL,
31
+ relation_type TEXT NOT NULL,
32
+ metadata JSON,
33
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
34
+ FOREIGN KEY (from_entity_id) REFERENCES entities(id) ON DELETE CASCADE,
35
+ FOREIGN KEY (to_entity_id) REFERENCES entities(id) ON DELETE CASCADE,
36
+ UNIQUE(from_entity_id, to_entity_id, relation_type)
37
+ );
38
+
39
+ CREATE TABLE IF NOT EXISTS tags (
40
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
41
+ entity_id INTEGER NOT NULL,
42
+ tag TEXT NOT NULL,
43
+ FOREIGN KEY (entity_id) REFERENCES entities(id) ON DELETE CASCADE
44
+ );
45
+
46
+ CREATE INDEX IF NOT EXISTS idx_tags_entity ON tags(entity_id);
47
+ CREATE INDEX IF NOT EXISTS idx_tags_tag ON tags(tag);
48
+ DELETE FROM tags
49
+ WHERE id NOT IN (
50
+ SELECT MIN(id)
51
+ FROM tags
52
+ GROUP BY entity_id, tag
53
+ );
54
+ CREATE UNIQUE INDEX IF NOT EXISTS idx_tags_entity_tag_unique ON tags(entity_id, tag);
55
+ CREATE INDEX IF NOT EXISTS idx_observations_entity ON observations(entity_id);
56
+ CREATE INDEX IF NOT EXISTS idx_relations_from ON relations(from_entity_id);
57
+ CREATE INDEX IF NOT EXISTS idx_relations_to ON relations(to_entity_id);
58
+
59
+ CREATE VIRTUAL TABLE IF NOT EXISTS entities_fts USING fts5(
60
+ name, observations, content='',
61
+ tokenize='unicode61 remove_diacritics 1'
62
+ );
63
+ `;
64
+
65
+ // Timeout guard: always exit within 10 seconds
66
+ const TIMEOUT_MS = 10000;
67
+ const timeoutHandle = setTimeout(() => {
68
+ try { process.stderr.write('[memesh pre-compact] Timed out after 10s\n'); } catch {}
69
+ process.exit(0);
70
+ }, TIMEOUT_MS);
71
+ timeoutHandle.unref();
72
+
73
+ let input = '';
74
+ process.stdin.setEncoding('utf8');
75
+ process.stdin.on('data', (chunk) => { input += chunk; });
76
+ process.stdin.on('end', () => {
77
+ try {
78
+ // Opt-out check
79
+ if (process.env.MEMESH_AUTO_CAPTURE === 'false') {
80
+ return exit0();
81
+ }
82
+
83
+ const data = JSON.parse(input);
84
+ const sessionId = data.session_id || 'unknown';
85
+ const transcriptPath = data.transcript_path || '';
86
+ const cwd = data.cwd || process.cwd();
87
+ const reason = data.reason || 'auto';
88
+ const projectName = basename(cwd);
89
+
90
+ // Parse transcript to gather insights
91
+ let toolCallCount = 0;
92
+ const editedFiles = new Set();
93
+
94
+ if (transcriptPath && existsSync(transcriptPath)) {
95
+ try {
96
+ const lines = readFileSync(transcriptPath, 'utf8').split('\n');
97
+ for (const line of lines) {
98
+ if (!line.trim()) continue;
99
+ try {
100
+ const entry = JSON.parse(line);
101
+ // Count tool uses from assistant message content blocks
102
+ if (entry.role === 'assistant' && Array.isArray(entry.content)) {
103
+ for (const block of entry.content) {
104
+ if (block.type === 'tool_use') {
105
+ toolCallCount++;
106
+ // Track file edits
107
+ const name = block.name || '';
108
+ if (name === 'Edit' || name === 'Write' || name === 'MultiEdit') {
109
+ const filePath = block.input?.file_path || block.input?.path || '';
110
+ if (filePath) editedFiles.add(basename(filePath));
111
+ }
112
+ }
113
+ }
114
+ }
115
+ } catch {
116
+ // Skip malformed lines
117
+ }
118
+ }
119
+ } catch {
120
+ // Transcript read failed — proceed with zero counts
121
+ }
122
+ }
123
+
124
+ const insightCount = editedFiles.size + (toolCallCount > 0 ? 1 : 0);
125
+ const entityName = `pre-compact-${sessionId}`;
126
+
127
+ // Build observation content
128
+ const obsLines = [`Compaction reason: ${reason}`, `Tool calls: ${toolCallCount}`];
129
+ if (editedFiles.size > 0) {
130
+ obsLines.push(`Files edited: ${Array.from(editedFiles).join(', ')}`);
131
+ }
132
+
133
+ // Open (or create) database
134
+ const dbPath = process.env.MEMESH_DB_PATH || join(homedir(), '.memesh', 'knowledge-graph.db');
135
+ const dbDir = process.env.MEMESH_DB_PATH
136
+ ? join(process.env.MEMESH_DB_PATH, '..')
137
+ : join(homedir(), '.memesh');
138
+ if (!existsSync(dbDir)) mkdirSync(dbDir, { recursive: true });
139
+
140
+ const Database = require('better-sqlite3');
141
+ const db = new Database(dbPath);
142
+ try {
143
+ db.pragma('journal_mode = WAL');
144
+ db.pragma('foreign_keys = ON');
145
+ db.exec(SCHEMA_SQL);
146
+
147
+ // Upsert entity
148
+ const insertResult = db.prepare('INSERT OR IGNORE INTO entities (name, type) VALUES (?, ?)').run(entityName, 'session-summary');
149
+ const isNew = insertResult.changes > 0;
150
+ const entity = db.prepare('SELECT id FROM entities WHERE name = ?').get(entityName);
151
+
152
+ if (entity) {
153
+ // Capture existing observations for FTS delete
154
+ const prevObs = isNew
155
+ ? []
156
+ : db.prepare('SELECT content FROM observations WHERE entity_id = ?').all(entity.id);
157
+ const prevObsText = isNew ? undefined : prevObs.map(o => o.content).join(' ');
158
+
159
+ // Insert each observation line
160
+ for (const line of obsLines) {
161
+ db.prepare('INSERT INTO observations (entity_id, content) VALUES (?, ?)').run(entity.id, line);
162
+ }
163
+
164
+ // Add tags
165
+ const tags = ['source:auto-capture', 'urgency:pre-compact', `project:${projectName}`];
166
+ for (const tag of tags) {
167
+ db.prepare('INSERT OR IGNORE INTO tags (entity_id, tag) VALUES (?, ?)').run(entity.id, tag);
168
+ }
169
+
170
+ // Update FTS
171
+ if (prevObsText !== undefined) {
172
+ db.prepare("INSERT INTO entities_fts(entities_fts, rowid, name, observations) VALUES('delete', ?, ?, ?)").run(entity.id, entityName, prevObsText);
173
+ }
174
+ const allObs = db.prepare('SELECT content FROM observations WHERE entity_id = ?').all(entity.id);
175
+ const allObsText = allObs.map(o => o.content).join(' ');
176
+ db.prepare('INSERT INTO entities_fts(rowid, name, observations) VALUES(?, ?, ?)').run(entity.id, entityName, allObsText);
177
+ }
178
+ } finally {
179
+ db.close();
180
+ }
181
+
182
+ const hookOutput = {
183
+ hookSpecificOutput: {
184
+ hookEventName: 'PreCompact',
185
+ additionalContext: `Saved ${insightCount} insights to MeMesh before compaction`,
186
+ },
187
+ };
188
+ console.log(JSON.stringify(hookOutput));
189
+ } catch (err) {
190
+ // Hooks must never crash Claude Code — exit cleanly
191
+ try { process.stderr.write(`[memesh pre-compact] ${err?.message || err}\n`); } catch {}
192
+ }
193
+ exit0();
194
+ });
195
+
196
+ function exit0() {
197
+ process.exit(0);
198
+ }