@pcircle/memesh 2.10.1 → 2.11.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 (771) hide show
  1. package/.mcp.json +2 -5
  2. package/README.md +48 -248
  3. package/dist/cli/view.d.ts +3 -0
  4. package/dist/cli/view.d.ts.map +1 -0
  5. package/dist/cli/view.js +484 -0
  6. package/dist/cli/view.js.map +1 -0
  7. package/dist/db.d.ts +5 -0
  8. package/dist/db.d.ts.map +1 -0
  9. package/dist/db.js +80 -0
  10. package/dist/db.js.map +1 -0
  11. package/dist/index.d.ts +3 -6
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +2 -33
  14. package/dist/index.js.map +1 -1
  15. package/dist/knowledge-graph.d.ts +48 -0
  16. package/dist/knowledge-graph.d.ts.map +1 -0
  17. package/dist/knowledge-graph.js +186 -0
  18. package/dist/knowledge-graph.js.map +1 -0
  19. package/dist/mcp/server.d.ts +1 -25
  20. package/dist/mcp/server.d.ts.map +1 -1
  21. package/dist/mcp/server.js +33 -319
  22. package/dist/mcp/server.js.map +1 -1
  23. package/dist/mcp/tools.d.ts +93 -0
  24. package/dist/mcp/tools.d.ts.map +1 -0
  25. package/dist/mcp/tools.js +183 -0
  26. package/dist/mcp/tools.js.map +1 -0
  27. package/hooks/hooks.json +1 -41
  28. package/package.json +8 -90
  29. package/plugin.json +5 -8
  30. package/scripts/hooks/post-commit.js +132 -299
  31. package/scripts/hooks/session-start.js +84 -629
  32. package/README.de.md +0 -212
  33. package/README.es.md +0 -212
  34. package/README.fr.md +0 -212
  35. package/README.id.md +0 -212
  36. package/README.ja.md +0 -212
  37. package/README.ko.md +0 -212
  38. package/README.th.md +0 -212
  39. package/README.vi.md +0 -212
  40. package/README.zh-CN.md +0 -212
  41. package/README.zh-TW.md +0 -286
  42. package/dist/cli/config.d.ts +0 -36
  43. package/dist/cli/config.d.ts.map +0 -1
  44. package/dist/cli/config.js +0 -398
  45. package/dist/cli/config.js.map +0 -1
  46. package/dist/cli/credentials.d.ts +0 -12
  47. package/dist/cli/credentials.d.ts.map +0 -1
  48. package/dist/cli/credentials.js +0 -44
  49. package/dist/cli/credentials.js.map +0 -1
  50. package/dist/cli/daemon.d.ts +0 -3
  51. package/dist/cli/daemon.d.ts.map +0 -1
  52. package/dist/cli/daemon.js +0 -413
  53. package/dist/cli/daemon.js.map +0 -1
  54. package/dist/cli/dashboard.d.ts +0 -2
  55. package/dist/cli/dashboard.d.ts.map +0 -1
  56. package/dist/cli/dashboard.js +0 -300
  57. package/dist/cli/dashboard.js.map +0 -1
  58. package/dist/cli/index.d.ts +0 -3
  59. package/dist/cli/index.d.ts.map +0 -1
  60. package/dist/cli/index.js +0 -188
  61. package/dist/cli/index.js.map +0 -1
  62. package/dist/cli/login.d.ts +0 -4
  63. package/dist/cli/login.d.ts.map +0 -1
  64. package/dist/cli/login.js +0 -230
  65. package/dist/cli/login.js.map +0 -1
  66. package/dist/cli/logout.d.ts +0 -3
  67. package/dist/cli/logout.d.ts.map +0 -1
  68. package/dist/cli/logout.js +0 -23
  69. package/dist/cli/logout.js.map +0 -1
  70. package/dist/cli/setup-wizard.d.ts +0 -18
  71. package/dist/cli/setup-wizard.d.ts.map +0 -1
  72. package/dist/cli/setup-wizard.js +0 -267
  73. package/dist/cli/setup-wizard.js.map +0 -1
  74. package/dist/cli/stats.d.ts +0 -34
  75. package/dist/cli/stats.d.ts.map +0 -1
  76. package/dist/cli/stats.js +0 -479
  77. package/dist/cli/stats.js.map +0 -1
  78. package/dist/cli/tutorial.d.ts +0 -27
  79. package/dist/cli/tutorial.d.ts.map +0 -1
  80. package/dist/cli/tutorial.js +0 -430
  81. package/dist/cli/tutorial.js.map +0 -1
  82. package/dist/cloud/MeMeshCloudClient.d.ts +0 -88
  83. package/dist/cloud/MeMeshCloudClient.d.ts.map +0 -1
  84. package/dist/cloud/MeMeshCloudClient.js +0 -177
  85. package/dist/cloud/MeMeshCloudClient.js.map +0 -1
  86. package/dist/cloud/index.d.ts +0 -3
  87. package/dist/cloud/index.d.ts.map +0 -1
  88. package/dist/cloud/index.js +0 -2
  89. package/dist/cloud/index.js.map +0 -1
  90. package/dist/config/index.d.ts +0 -61
  91. package/dist/config/index.d.ts.map +0 -1
  92. package/dist/config/index.js +0 -105
  93. package/dist/config/index.js.map +0 -1
  94. package/dist/config/models.d.ts +0 -47
  95. package/dist/config/models.d.ts.map +0 -1
  96. package/dist/config/models.js +0 -57
  97. package/dist/config/models.js.map +0 -1
  98. package/dist/config/simple-config.d.ts +0 -35
  99. package/dist/config/simple-config.d.ts.map +0 -1
  100. package/dist/config/simple-config.js +0 -246
  101. package/dist/config/simple-config.js.map +0 -1
  102. package/dist/core/AgentRegistry.d.ts +0 -31
  103. package/dist/core/AgentRegistry.d.ts.map +0 -1
  104. package/dist/core/AgentRegistry.js +0 -281
  105. package/dist/core/AgentRegistry.js.map +0 -1
  106. package/dist/core/CheckpointDetector.d.ts +0 -25
  107. package/dist/core/CheckpointDetector.d.ts.map +0 -1
  108. package/dist/core/CheckpointDetector.js +0 -67
  109. package/dist/core/CheckpointDetector.js.map +0 -1
  110. package/dist/core/GitCommandParser.d.ts +0 -11
  111. package/dist/core/GitCommandParser.d.ts.map +0 -1
  112. package/dist/core/GitCommandParser.js +0 -43
  113. package/dist/core/GitCommandParser.js.map +0 -1
  114. package/dist/core/HealthCheck.d.ts +0 -39
  115. package/dist/core/HealthCheck.d.ts.map +0 -1
  116. package/dist/core/HealthCheck.js +0 -219
  117. package/dist/core/HealthCheck.js.map +0 -1
  118. package/dist/core/HookIntegration.d.ts +0 -47
  119. package/dist/core/HookIntegration.d.ts.map +0 -1
  120. package/dist/core/HookIntegration.js +0 -275
  121. package/dist/core/HookIntegration.js.map +0 -1
  122. package/dist/core/MCPToolInterface.d.ts +0 -120
  123. package/dist/core/MCPToolInterface.d.ts.map +0 -1
  124. package/dist/core/MCPToolInterface.js +0 -376
  125. package/dist/core/MCPToolInterface.js.map +0 -1
  126. package/dist/core/MistakePatternManager.d.ts +0 -31
  127. package/dist/core/MistakePatternManager.d.ts.map +0 -1
  128. package/dist/core/MistakePatternManager.js +0 -137
  129. package/dist/core/MistakePatternManager.js.map +0 -1
  130. package/dist/core/ResourceMonitor.d.ts +0 -32
  131. package/dist/core/ResourceMonitor.d.ts.map +0 -1
  132. package/dist/core/ResourceMonitor.js +0 -243
  133. package/dist/core/ResourceMonitor.js.map +0 -1
  134. package/dist/core/ServiceLocator.d.ts +0 -10
  135. package/dist/core/ServiceLocator.d.ts.map +0 -1
  136. package/dist/core/ServiceLocator.js +0 -30
  137. package/dist/core/ServiceLocator.js.map +0 -1
  138. package/dist/core/TestOutputParser.d.ts +0 -20
  139. package/dist/core/TestOutputParser.d.ts.map +0 -1
  140. package/dist/core/TestOutputParser.js +0 -144
  141. package/dist/core/TestOutputParser.js.map +0 -1
  142. package/dist/core/types.d.ts +0 -66
  143. package/dist/core/types.d.ts.map +0 -1
  144. package/dist/core/types.js +0 -11
  145. package/dist/core/types.js.map +0 -1
  146. package/dist/db/ConnectionPool.d.ts +0 -50
  147. package/dist/db/ConnectionPool.d.ts.map +0 -1
  148. package/dist/db/ConnectionPool.js +0 -569
  149. package/dist/db/ConnectionPool.js.map +0 -1
  150. package/dist/db/IDatabaseAdapter.d.ts +0 -25
  151. package/dist/db/IDatabaseAdapter.d.ts.map +0 -1
  152. package/dist/db/IDatabaseAdapter.js +0 -2
  153. package/dist/db/IDatabaseAdapter.js.map +0 -1
  154. package/dist/db/QueryCache.d.ts +0 -46
  155. package/dist/db/QueryCache.d.ts.map +0 -1
  156. package/dist/db/QueryCache.js +0 -232
  157. package/dist/db/QueryCache.js.map +0 -1
  158. package/dist/db/adapters/BetterSqlite3Adapter.d.ts +0 -15
  159. package/dist/db/adapters/BetterSqlite3Adapter.d.ts.map +0 -1
  160. package/dist/db/adapters/BetterSqlite3Adapter.js +0 -127
  161. package/dist/db/adapters/BetterSqlite3Adapter.js.map +0 -1
  162. package/dist/embeddings/EmbeddingService.d.ts +0 -23
  163. package/dist/embeddings/EmbeddingService.d.ts.map +0 -1
  164. package/dist/embeddings/EmbeddingService.js +0 -131
  165. package/dist/embeddings/EmbeddingService.js.map +0 -1
  166. package/dist/embeddings/InMemoryVectorAdapter.d.ts +0 -15
  167. package/dist/embeddings/InMemoryVectorAdapter.d.ts.map +0 -1
  168. package/dist/embeddings/InMemoryVectorAdapter.js +0 -58
  169. package/dist/embeddings/InMemoryVectorAdapter.js.map +0 -1
  170. package/dist/embeddings/ModelManager.d.ts +0 -18
  171. package/dist/embeddings/ModelManager.d.ts.map +0 -1
  172. package/dist/embeddings/ModelManager.js +0 -84
  173. package/dist/embeddings/ModelManager.js.map +0 -1
  174. package/dist/embeddings/SqliteVecAdapter.d.ts +0 -15
  175. package/dist/embeddings/SqliteVecAdapter.d.ts.map +0 -1
  176. package/dist/embeddings/SqliteVecAdapter.js +0 -107
  177. package/dist/embeddings/SqliteVecAdapter.js.map +0 -1
  178. package/dist/embeddings/VectorExtension.d.ts +0 -17
  179. package/dist/embeddings/VectorExtension.d.ts.map +0 -1
  180. package/dist/embeddings/VectorExtension.js +0 -107
  181. package/dist/embeddings/VectorExtension.js.map +0 -1
  182. package/dist/embeddings/VectorSearchAdapter.d.ts +0 -17
  183. package/dist/embeddings/VectorSearchAdapter.d.ts.map +0 -1
  184. package/dist/embeddings/VectorSearchAdapter.js +0 -2
  185. package/dist/embeddings/VectorSearchAdapter.js.map +0 -1
  186. package/dist/embeddings/index.d.ts +0 -9
  187. package/dist/embeddings/index.d.ts.map +0 -1
  188. package/dist/embeddings/index.js +0 -7
  189. package/dist/embeddings/index.js.map +0 -1
  190. package/dist/errors/ErrorClassifier.d.ts +0 -60
  191. package/dist/errors/ErrorClassifier.d.ts.map +0 -1
  192. package/dist/errors/ErrorClassifier.js +0 -415
  193. package/dist/errors/ErrorClassifier.js.map +0 -1
  194. package/dist/errors/index.d.ts +0 -63
  195. package/dist/errors/index.d.ts.map +0 -1
  196. package/dist/errors/index.js +0 -127
  197. package/dist/errors/index.js.map +0 -1
  198. package/dist/i18n/index.d.ts +0 -9
  199. package/dist/i18n/index.d.ts.map +0 -1
  200. package/dist/i18n/index.js +0 -78
  201. package/dist/i18n/index.js.map +0 -1
  202. package/dist/i18n/locales/en.d.ts +0 -3
  203. package/dist/i18n/locales/en.d.ts.map +0 -1
  204. package/dist/i18n/locales/en.js +0 -32
  205. package/dist/i18n/locales/en.js.map +0 -1
  206. package/dist/i18n/locales/index.d.ts +0 -5
  207. package/dist/i18n/locales/index.d.ts.map +0 -1
  208. package/dist/i18n/locales/index.js +0 -5
  209. package/dist/i18n/locales/index.js.map +0 -1
  210. package/dist/i18n/locales/ja.d.ts +0 -3
  211. package/dist/i18n/locales/ja.d.ts.map +0 -1
  212. package/dist/i18n/locales/ja.js +0 -30
  213. package/dist/i18n/locales/ja.js.map +0 -1
  214. package/dist/i18n/locales/zh-CN.d.ts +0 -3
  215. package/dist/i18n/locales/zh-CN.d.ts.map +0 -1
  216. package/dist/i18n/locales/zh-CN.js +0 -30
  217. package/dist/i18n/locales/zh-CN.js.map +0 -1
  218. package/dist/i18n/locales/zh-TW.d.ts +0 -3
  219. package/dist/i18n/locales/zh-TW.d.ts.map +0 -1
  220. package/dist/i18n/locales/zh-TW.js +0 -30
  221. package/dist/i18n/locales/zh-TW.js.map +0 -1
  222. package/dist/i18n/types.d.ts +0 -11
  223. package/dist/i18n/types.d.ts.map +0 -1
  224. package/dist/i18n/types.js +0 -3
  225. package/dist/i18n/types.js.map +0 -1
  226. package/dist/integrations/session-memory/SessionContextInjector.d.ts +0 -30
  227. package/dist/integrations/session-memory/SessionContextInjector.d.ts.map +0 -1
  228. package/dist/integrations/session-memory/SessionContextInjector.js +0 -192
  229. package/dist/integrations/session-memory/SessionContextInjector.js.map +0 -1
  230. package/dist/integrations/session-memory/SessionMemoryIngester.d.ts +0 -15
  231. package/dist/integrations/session-memory/SessionMemoryIngester.d.ts.map +0 -1
  232. package/dist/integrations/session-memory/SessionMemoryIngester.js +0 -229
  233. package/dist/integrations/session-memory/SessionMemoryIngester.js.map +0 -1
  234. package/dist/integrations/session-memory/SessionMemoryParser.d.ts +0 -16
  235. package/dist/integrations/session-memory/SessionMemoryParser.d.ts.map +0 -1
  236. package/dist/integrations/session-memory/SessionMemoryParser.js +0 -271
  237. package/dist/integrations/session-memory/SessionMemoryParser.js.map +0 -1
  238. package/dist/integrations/session-memory/SessionMemoryPipeline.d.ts +0 -20
  239. package/dist/integrations/session-memory/SessionMemoryPipeline.d.ts.map +0 -1
  240. package/dist/integrations/session-memory/SessionMemoryPipeline.js +0 -60
  241. package/dist/integrations/session-memory/SessionMemoryPipeline.js.map +0 -1
  242. package/dist/integrations/session-memory/SessionMemoryWatcher.d.ts +0 -27
  243. package/dist/integrations/session-memory/SessionMemoryWatcher.d.ts.map +0 -1
  244. package/dist/integrations/session-memory/SessionMemoryWatcher.js +0 -145
  245. package/dist/integrations/session-memory/SessionMemoryWatcher.js.map +0 -1
  246. package/dist/integrations/session-memory/index.d.ts +0 -9
  247. package/dist/integrations/session-memory/index.d.ts.map +0 -1
  248. package/dist/integrations/session-memory/index.js +0 -6
  249. package/dist/integrations/session-memory/index.js.map +0 -1
  250. package/dist/integrations/session-memory/types.d.ts +0 -74
  251. package/dist/integrations/session-memory/types.d.ts.map +0 -1
  252. package/dist/integrations/session-memory/types.js +0 -22
  253. package/dist/integrations/session-memory/types.js.map +0 -1
  254. package/dist/knowledge-graph/ContentHasher.d.ts +0 -4
  255. package/dist/knowledge-graph/ContentHasher.d.ts.map +0 -1
  256. package/dist/knowledge-graph/ContentHasher.js +0 -8
  257. package/dist/knowledge-graph/ContentHasher.js.map +0 -1
  258. package/dist/knowledge-graph/KGSearchEngine.d.ts +0 -37
  259. package/dist/knowledge-graph/KGSearchEngine.d.ts.map +0 -1
  260. package/dist/knowledge-graph/KGSearchEngine.js +0 -257
  261. package/dist/knowledge-graph/KGSearchEngine.js.map +0 -1
  262. package/dist/knowledge-graph/index.d.ts +0 -64
  263. package/dist/knowledge-graph/index.d.ts.map +0 -1
  264. package/dist/knowledge-graph/index.js +0 -681
  265. package/dist/knowledge-graph/index.js.map +0 -1
  266. package/dist/knowledge-graph/types.d.ts +0 -38
  267. package/dist/knowledge-graph/types.d.ts.map +0 -1
  268. package/dist/knowledge-graph/types.js +0 -2
  269. package/dist/knowledge-graph/types.js.map +0 -1
  270. package/dist/management/UninstallManager.d.ts +0 -23
  271. package/dist/management/UninstallManager.d.ts.map +0 -1
  272. package/dist/management/UninstallManager.js +0 -186
  273. package/dist/management/UninstallManager.js.map +0 -1
  274. package/dist/management/index.d.ts +0 -3
  275. package/dist/management/index.d.ts.map +0 -1
  276. package/dist/management/index.js +0 -2
  277. package/dist/management/index.js.map +0 -1
  278. package/dist/mcp/BuddyCommands.d.ts +0 -24
  279. package/dist/mcp/BuddyCommands.d.ts.map +0 -1
  280. package/dist/mcp/BuddyCommands.js +0 -423
  281. package/dist/mcp/BuddyCommands.js.map +0 -1
  282. package/dist/mcp/ClaudeMdReloader.d.ts +0 -37
  283. package/dist/mcp/ClaudeMdReloader.d.ts.map +0 -1
  284. package/dist/mcp/ClaudeMdReloader.js +0 -92
  285. package/dist/mcp/ClaudeMdReloader.js.map +0 -1
  286. package/dist/mcp/HumanInLoopUI.d.ts +0 -23
  287. package/dist/mcp/HumanInLoopUI.d.ts.map +0 -1
  288. package/dist/mcp/HumanInLoopUI.js +0 -92
  289. package/dist/mcp/HumanInLoopUI.js.map +0 -1
  290. package/dist/mcp/ProgressReporter.d.ts +0 -14
  291. package/dist/mcp/ProgressReporter.d.ts.map +0 -1
  292. package/dist/mcp/ProgressReporter.js +0 -22
  293. package/dist/mcp/ProgressReporter.js.map +0 -1
  294. package/dist/mcp/SamplingClient.d.ts +0 -32
  295. package/dist/mcp/SamplingClient.d.ts.map +0 -1
  296. package/dist/mcp/SamplingClient.js +0 -63
  297. package/dist/mcp/SamplingClient.js.map +0 -1
  298. package/dist/mcp/ServerInitializer.d.ts +0 -40
  299. package/dist/mcp/ServerInitializer.d.ts.map +0 -1
  300. package/dist/mcp/ServerInitializer.js +0 -147
  301. package/dist/mcp/ServerInitializer.js.map +0 -1
  302. package/dist/mcp/SessionBootstrapper.d.ts +0 -13
  303. package/dist/mcp/SessionBootstrapper.d.ts.map +0 -1
  304. package/dist/mcp/SessionBootstrapper.js +0 -82
  305. package/dist/mcp/SessionBootstrapper.js.map +0 -1
  306. package/dist/mcp/StdinBufferManager.d.ts +0 -11
  307. package/dist/mcp/StdinBufferManager.d.ts.map +0 -1
  308. package/dist/mcp/StdinBufferManager.js +0 -62
  309. package/dist/mcp/StdinBufferManager.js.map +0 -1
  310. package/dist/mcp/ToolDefinitions.d.ts +0 -44
  311. package/dist/mcp/ToolDefinitions.d.ts.map +0 -1
  312. package/dist/mcp/ToolDefinitions.js +0 -445
  313. package/dist/mcp/ToolDefinitions.js.map +0 -1
  314. package/dist/mcp/ToolRouter.d.ts +0 -27
  315. package/dist/mcp/ToolRouter.d.ts.map +0 -1
  316. package/dist/mcp/ToolRouter.js +0 -179
  317. package/dist/mcp/ToolRouter.js.map +0 -1
  318. package/dist/mcp/daemon/DaemonBootstrap.d.ts +0 -33
  319. package/dist/mcp/daemon/DaemonBootstrap.d.ts.map +0 -1
  320. package/dist/mcp/daemon/DaemonBootstrap.js +0 -155
  321. package/dist/mcp/daemon/DaemonBootstrap.js.map +0 -1
  322. package/dist/mcp/daemon/DaemonLockManager.d.ts +0 -47
  323. package/dist/mcp/daemon/DaemonLockManager.d.ts.map +0 -1
  324. package/dist/mcp/daemon/DaemonLockManager.js +0 -417
  325. package/dist/mcp/daemon/DaemonLockManager.js.map +0 -1
  326. package/dist/mcp/daemon/DaemonProtocol.d.ts +0 -127
  327. package/dist/mcp/daemon/DaemonProtocol.d.ts.map +0 -1
  328. package/dist/mcp/daemon/DaemonProtocol.js +0 -452
  329. package/dist/mcp/daemon/DaemonProtocol.js.map +0 -1
  330. package/dist/mcp/daemon/DaemonSocketServer.d.ts +0 -71
  331. package/dist/mcp/daemon/DaemonSocketServer.d.ts.map +0 -1
  332. package/dist/mcp/daemon/DaemonSocketServer.js +0 -384
  333. package/dist/mcp/daemon/DaemonSocketServer.js.map +0 -1
  334. package/dist/mcp/daemon/GracefulShutdownCoordinator.d.ts +0 -67
  335. package/dist/mcp/daemon/GracefulShutdownCoordinator.d.ts.map +0 -1
  336. package/dist/mcp/daemon/GracefulShutdownCoordinator.js +0 -206
  337. package/dist/mcp/daemon/GracefulShutdownCoordinator.js.map +0 -1
  338. package/dist/mcp/daemon/IpcTransport.d.ts +0 -42
  339. package/dist/mcp/daemon/IpcTransport.d.ts.map +0 -1
  340. package/dist/mcp/daemon/IpcTransport.js +0 -231
  341. package/dist/mcp/daemon/IpcTransport.js.map +0 -1
  342. package/dist/mcp/daemon/StdioProxyClient.d.ts +0 -84
  343. package/dist/mcp/daemon/StdioProxyClient.d.ts.map +0 -1
  344. package/dist/mcp/daemon/StdioProxyClient.js +0 -574
  345. package/dist/mcp/daemon/StdioProxyClient.js.map +0 -1
  346. package/dist/mcp/daemon/VersionManager.d.ts +0 -35
  347. package/dist/mcp/daemon/VersionManager.d.ts.map +0 -1
  348. package/dist/mcp/daemon/VersionManager.js +0 -169
  349. package/dist/mcp/daemon/VersionManager.js.map +0 -1
  350. package/dist/mcp/daemon/index.d.ts +0 -9
  351. package/dist/mcp/daemon/index.d.ts.map +0 -1
  352. package/dist/mcp/daemon/index.js +0 -9
  353. package/dist/mcp/daemon/index.js.map +0 -1
  354. package/dist/mcp/handlers/BuddyHandlers.d.ts +0 -18
  355. package/dist/mcp/handlers/BuddyHandlers.d.ts.map +0 -1
  356. package/dist/mcp/handlers/BuddyHandlers.js +0 -179
  357. package/dist/mcp/handlers/BuddyHandlers.js.map +0 -1
  358. package/dist/mcp/handlers/BuddyRecordMistake.d.ts +0 -17
  359. package/dist/mcp/handlers/BuddyRecordMistake.d.ts.map +0 -1
  360. package/dist/mcp/handlers/BuddyRecordMistake.js +0 -147
  361. package/dist/mcp/handlers/BuddyRecordMistake.js.map +0 -1
  362. package/dist/mcp/handlers/HookToolHandler.d.ts +0 -10
  363. package/dist/mcp/handlers/HookToolHandler.d.ts.map +0 -1
  364. package/dist/mcp/handlers/HookToolHandler.js +0 -92
  365. package/dist/mcp/handlers/HookToolHandler.js.map +0 -1
  366. package/dist/mcp/handlers/MemoryToolHandler.d.ts +0 -21
  367. package/dist/mcp/handlers/MemoryToolHandler.d.ts.map +0 -1
  368. package/dist/mcp/handlers/MemoryToolHandler.js +0 -433
  369. package/dist/mcp/handlers/MemoryToolHandler.js.map +0 -1
  370. package/dist/mcp/handlers/ResourceHandlers.d.ts +0 -3
  371. package/dist/mcp/handlers/ResourceHandlers.d.ts.map +0 -1
  372. package/dist/mcp/handlers/ResourceHandlers.js +0 -133
  373. package/dist/mcp/handlers/ResourceHandlers.js.map +0 -1
  374. package/dist/mcp/handlers/SystemToolHandler.d.ts +0 -14
  375. package/dist/mcp/handlers/SystemToolHandler.d.ts.map +0 -1
  376. package/dist/mcp/handlers/SystemToolHandler.js +0 -224
  377. package/dist/mcp/handlers/SystemToolHandler.js.map +0 -1
  378. package/dist/mcp/handlers/ToolHandlers.d.ts +0 -26
  379. package/dist/mcp/handlers/ToolHandlers.d.ts.map +0 -1
  380. package/dist/mcp/handlers/ToolHandlers.js +0 -41
  381. package/dist/mcp/handlers/ToolHandlers.js.map +0 -1
  382. package/dist/mcp/handlers/index.d.ts +0 -7
  383. package/dist/mcp/handlers/index.d.ts.map +0 -1
  384. package/dist/mcp/handlers/index.js +0 -7
  385. package/dist/mcp/handlers/index.js.map +0 -1
  386. package/dist/mcp/index.d.ts +0 -5
  387. package/dist/mcp/index.d.ts.map +0 -1
  388. package/dist/mcp/index.js +0 -3
  389. package/dist/mcp/index.js.map +0 -1
  390. package/dist/mcp/resources/ResourceRegistry.d.ts +0 -23
  391. package/dist/mcp/resources/ResourceRegistry.d.ts.map +0 -1
  392. package/dist/mcp/resources/ResourceRegistry.js +0 -26
  393. package/dist/mcp/resources/ResourceRegistry.js.map +0 -1
  394. package/dist/mcp/resources/URITemplateHandler.d.ts +0 -8
  395. package/dist/mcp/resources/URITemplateHandler.d.ts.map +0 -1
  396. package/dist/mcp/resources/URITemplateHandler.js +0 -29
  397. package/dist/mcp/resources/URITemplateHandler.js.map +0 -1
  398. package/dist/mcp/resources/best-practices.md +0 -53
  399. package/dist/mcp/resources/buddy-do-skill.md +0 -84
  400. package/dist/mcp/resources/ccb-complete-guide.md +0 -247
  401. package/dist/mcp/resources/examples.md +0 -47
  402. package/dist/mcp/resources/handlers/AgentStatusHandler.d.ts +0 -7
  403. package/dist/mcp/resources/handlers/AgentStatusHandler.d.ts.map +0 -1
  404. package/dist/mcp/resources/handlers/AgentStatusHandler.js +0 -41
  405. package/dist/mcp/resources/handlers/AgentStatusHandler.js.map +0 -1
  406. package/dist/mcp/resources/handlers/TaskLogsHandler.d.ts +0 -7
  407. package/dist/mcp/resources/handlers/TaskLogsHandler.d.ts.map +0 -1
  408. package/dist/mcp/resources/handlers/TaskLogsHandler.js +0 -35
  409. package/dist/mcp/resources/handlers/TaskLogsHandler.js.map +0 -1
  410. package/dist/mcp/resources/quick-reference.md +0 -71
  411. package/dist/mcp/resources/usage-guide.md +0 -74
  412. package/dist/mcp/schemas/OutputSchemas.d.ts +0 -437
  413. package/dist/mcp/schemas/OutputSchemas.d.ts.map +0 -1
  414. package/dist/mcp/schemas/OutputSchemas.js +0 -215
  415. package/dist/mcp/schemas/OutputSchemas.js.map +0 -1
  416. package/dist/mcp/server-bootstrap.d.ts +0 -3
  417. package/dist/mcp/server-bootstrap.d.ts.map +0 -1
  418. package/dist/mcp/server-bootstrap.js +0 -391
  419. package/dist/mcp/server-bootstrap.js.map +0 -1
  420. package/dist/mcp/tools/add-observations.d.ts +0 -48
  421. package/dist/mcp/tools/add-observations.d.ts.map +0 -1
  422. package/dist/mcp/tools/add-observations.js +0 -64
  423. package/dist/mcp/tools/add-observations.js.map +0 -1
  424. package/dist/mcp/tools/buddy-do.d.ts +0 -15
  425. package/dist/mcp/tools/buddy-do.d.ts.map +0 -1
  426. package/dist/mcp/tools/buddy-do.js +0 -191
  427. package/dist/mcp/tools/buddy-do.js.map +0 -1
  428. package/dist/mcp/tools/buddy-help.d.ts +0 -13
  429. package/dist/mcp/tools/buddy-help.d.ts.map +0 -1
  430. package/dist/mcp/tools/buddy-help.js +0 -44
  431. package/dist/mcp/tools/buddy-help.js.map +0 -1
  432. package/dist/mcp/tools/buddy-remember.d.ts +0 -24
  433. package/dist/mcp/tools/buddy-remember.d.ts.map +0 -1
  434. package/dist/mcp/tools/buddy-remember.js +0 -304
  435. package/dist/mcp/tools/buddy-remember.js.map +0 -1
  436. package/dist/mcp/tools/create-entities.d.ts +0 -66
  437. package/dist/mcp/tools/create-entities.d.ts.map +0 -1
  438. package/dist/mcp/tools/create-entities.js +0 -224
  439. package/dist/mcp/tools/create-entities.js.map +0 -1
  440. package/dist/mcp/tools/create-relations.d.ts +0 -60
  441. package/dist/mcp/tools/create-relations.d.ts.map +0 -1
  442. package/dist/mcp/tools/create-relations.js +0 -84
  443. package/dist/mcp/tools/create-relations.js.map +0 -1
  444. package/dist/mcp/tools/generate-tests.d.ts +0 -11
  445. package/dist/mcp/tools/generate-tests.d.ts.map +0 -1
  446. package/dist/mcp/tools/generate-tests.js +0 -19
  447. package/dist/mcp/tools/generate-tests.js.map +0 -1
  448. package/dist/mcp/tools/health-check.d.ts +0 -10
  449. package/dist/mcp/tools/health-check.d.ts.map +0 -1
  450. package/dist/mcp/tools/health-check.js +0 -37
  451. package/dist/mcp/tools/health-check.js.map +0 -1
  452. package/dist/mcp/tools/memesh-agent-register.d.ts +0 -20
  453. package/dist/mcp/tools/memesh-agent-register.d.ts.map +0 -1
  454. package/dist/mcp/tools/memesh-agent-register.js +0 -80
  455. package/dist/mcp/tools/memesh-agent-register.js.map +0 -1
  456. package/dist/mcp/tools/memesh-cloud-sync.d.ts +0 -30
  457. package/dist/mcp/tools/memesh-cloud-sync.d.ts.map +0 -1
  458. package/dist/mcp/tools/memesh-cloud-sync.js +0 -257
  459. package/dist/mcp/tools/memesh-cloud-sync.js.map +0 -1
  460. package/dist/mcp/tools/memesh-metrics.d.ts +0 -13
  461. package/dist/mcp/tools/memesh-metrics.d.ts.map +0 -1
  462. package/dist/mcp/tools/memesh-metrics.js +0 -193
  463. package/dist/mcp/tools/memesh-metrics.js.map +0 -1
  464. package/dist/mcp/tools/recall-memory.d.ts +0 -31
  465. package/dist/mcp/tools/recall-memory.d.ts.map +0 -1
  466. package/dist/mcp/tools/recall-memory.js +0 -31
  467. package/dist/mcp/tools/recall-memory.js.map +0 -1
  468. package/dist/mcp/validation.d.ts +0 -76
  469. package/dist/mcp/validation.d.ts.map +0 -1
  470. package/dist/mcp/validation.js +0 -106
  471. package/dist/mcp/validation.js.map +0 -1
  472. package/dist/memory/AutoMemoryRecorder.d.ts +0 -35
  473. package/dist/memory/AutoMemoryRecorder.d.ts.map +0 -1
  474. package/dist/memory/AutoMemoryRecorder.js +0 -164
  475. package/dist/memory/AutoMemoryRecorder.js.map +0 -1
  476. package/dist/memory/AutoTagger.d.ts +0 -9
  477. package/dist/memory/AutoTagger.d.ts.map +0 -1
  478. package/dist/memory/AutoTagger.js +0 -149
  479. package/dist/memory/AutoTagger.js.map +0 -1
  480. package/dist/memory/BuiltInRules.d.ts +0 -54
  481. package/dist/memory/BuiltInRules.d.ts.map +0 -1
  482. package/dist/memory/BuiltInRules.js +0 -161
  483. package/dist/memory/BuiltInRules.js.map +0 -1
  484. package/dist/memory/EnhancedRetrieval.d.ts +0 -22
  485. package/dist/memory/EnhancedRetrieval.d.ts.map +0 -1
  486. package/dist/memory/EnhancedRetrieval.js +0 -63
  487. package/dist/memory/EnhancedRetrieval.js.map +0 -1
  488. package/dist/memory/EntityTypes.d.ts +0 -14
  489. package/dist/memory/EntityTypes.d.ts.map +0 -1
  490. package/dist/memory/EntityTypes.js +0 -19
  491. package/dist/memory/EntityTypes.js.map +0 -1
  492. package/dist/memory/MemorySearchEngine.d.ts +0 -17
  493. package/dist/memory/MemorySearchEngine.d.ts.map +0 -1
  494. package/dist/memory/MemorySearchEngine.js +0 -88
  495. package/dist/memory/MemorySearchEngine.js.map +0 -1
  496. package/dist/memory/MistakePatternEngine.d.ts +0 -15
  497. package/dist/memory/MistakePatternEngine.d.ts.map +0 -1
  498. package/dist/memory/MistakePatternEngine.js +0 -99
  499. package/dist/memory/MistakePatternEngine.js.map +0 -1
  500. package/dist/memory/PreventionHook.d.ts +0 -28
  501. package/dist/memory/PreventionHook.d.ts.map +0 -1
  502. package/dist/memory/PreventionHook.js +0 -21
  503. package/dist/memory/PreventionHook.js.map +0 -1
  504. package/dist/memory/ProactiveRecaller.d.ts +0 -26
  505. package/dist/memory/ProactiveRecaller.d.ts.map +0 -1
  506. package/dist/memory/ProactiveRecaller.js +0 -96
  507. package/dist/memory/ProactiveRecaller.js.map +0 -1
  508. package/dist/memory/ProjectAutoTracker.d.ts +0 -80
  509. package/dist/memory/ProjectAutoTracker.d.ts.map +0 -1
  510. package/dist/memory/ProjectAutoTracker.js +0 -386
  511. package/dist/memory/ProjectAutoTracker.js.map +0 -1
  512. package/dist/memory/ProjectMemoryCleanup.d.ts +0 -17
  513. package/dist/memory/ProjectMemoryCleanup.d.ts.map +0 -1
  514. package/dist/memory/ProjectMemoryCleanup.js +0 -57
  515. package/dist/memory/ProjectMemoryCleanup.js.map +0 -1
  516. package/dist/memory/ProjectMemoryManager.d.ts +0 -19
  517. package/dist/memory/ProjectMemoryManager.d.ts.map +0 -1
  518. package/dist/memory/ProjectMemoryManager.js +0 -62
  519. package/dist/memory/ProjectMemoryManager.js.map +0 -1
  520. package/dist/memory/SmartMemoryQuery.d.ts +0 -9
  521. package/dist/memory/SmartMemoryQuery.d.ts.map +0 -1
  522. package/dist/memory/SmartMemoryQuery.js +0 -66
  523. package/dist/memory/SmartMemoryQuery.js.map +0 -1
  524. package/dist/memory/UnifiedMemoryStore.d.ts +0 -27
  525. package/dist/memory/UnifiedMemoryStore.d.ts.map +0 -1
  526. package/dist/memory/UnifiedMemoryStore.js +0 -536
  527. package/dist/memory/UnifiedMemoryStore.js.map +0 -1
  528. package/dist/memory/UserPreferenceEngine.d.ts +0 -18
  529. package/dist/memory/UserPreferenceEngine.d.ts.map +0 -1
  530. package/dist/memory/UserPreferenceEngine.js +0 -117
  531. package/dist/memory/UserPreferenceEngine.js.map +0 -1
  532. package/dist/memory/config/semantic-groups.d.ts +0 -9
  533. package/dist/memory/config/semantic-groups.d.ts.map +0 -1
  534. package/dist/memory/config/semantic-groups.js +0 -22
  535. package/dist/memory/config/semantic-groups.js.map +0 -1
  536. package/dist/memory/index.d.ts +0 -16
  537. package/dist/memory/index.d.ts.map +0 -1
  538. package/dist/memory/index.js +0 -12
  539. package/dist/memory/index.js.map +0 -1
  540. package/dist/memory/types/index.d.ts +0 -7
  541. package/dist/memory/types/index.d.ts.map +0 -1
  542. package/dist/memory/types/index.js +0 -4
  543. package/dist/memory/types/index.js.map +0 -1
  544. package/dist/memory/types/memory-scope.d.ts +0 -27
  545. package/dist/memory/types/memory-scope.d.ts.map +0 -1
  546. package/dist/memory/types/memory-scope.js +0 -67
  547. package/dist/memory/types/memory-scope.js.map +0 -1
  548. package/dist/memory/types/pattern-types.d.ts +0 -66
  549. package/dist/memory/types/pattern-types.d.ts.map +0 -1
  550. package/dist/memory/types/pattern-types.js +0 -2
  551. package/dist/memory/types/pattern-types.js.map +0 -1
  552. package/dist/memory/types/preference-types.d.ts +0 -28
  553. package/dist/memory/types/preference-types.d.ts.map +0 -1
  554. package/dist/memory/types/preference-types.js +0 -2
  555. package/dist/memory/types/preference-types.js.map +0 -1
  556. package/dist/memory/types/unified-memory.d.ts +0 -29
  557. package/dist/memory/types/unified-memory.d.ts.map +0 -1
  558. package/dist/memory/types/unified-memory.js +0 -21
  559. package/dist/memory/types/unified-memory.js.map +0 -1
  560. package/dist/prompts/templates/PromptTemplates.d.ts +0 -11
  561. package/dist/prompts/templates/PromptTemplates.d.ts.map +0 -1
  562. package/dist/prompts/templates/PromptTemplates.js +0 -942
  563. package/dist/prompts/templates/PromptTemplates.js.map +0 -1
  564. package/dist/prompts/templates/index.d.ts +0 -2
  565. package/dist/prompts/templates/index.d.ts.map +0 -1
  566. package/dist/prompts/templates/index.js +0 -2
  567. package/dist/prompts/templates/index.js.map +0 -1
  568. package/dist/skills/SkillManager.d.ts +0 -33
  569. package/dist/skills/SkillManager.d.ts.map +0 -1
  570. package/dist/skills/SkillManager.js +0 -153
  571. package/dist/skills/SkillManager.js.map +0 -1
  572. package/dist/skills/index.d.ts +0 -3
  573. package/dist/skills/index.d.ts.map +0 -1
  574. package/dist/skills/index.js +0 -2
  575. package/dist/skills/index.js.map +0 -1
  576. package/dist/telemetry/TelemetryCollector.d.ts +0 -19
  577. package/dist/telemetry/TelemetryCollector.d.ts.map +0 -1
  578. package/dist/telemetry/TelemetryCollector.js +0 -62
  579. package/dist/telemetry/TelemetryCollector.js.map +0 -1
  580. package/dist/telemetry/TelemetryStore.d.ts +0 -20
  581. package/dist/telemetry/TelemetryStore.d.ts.map +0 -1
  582. package/dist/telemetry/TelemetryStore.js +0 -127
  583. package/dist/telemetry/TelemetryStore.js.map +0 -1
  584. package/dist/telemetry/index.d.ts +0 -8
  585. package/dist/telemetry/index.d.ts.map +0 -1
  586. package/dist/telemetry/index.js +0 -33
  587. package/dist/telemetry/index.js.map +0 -1
  588. package/dist/telemetry/sanitization.d.ts +0 -6
  589. package/dist/telemetry/sanitization.d.ts.map +0 -1
  590. package/dist/telemetry/sanitization.js +0 -180
  591. package/dist/telemetry/sanitization.js.map +0 -1
  592. package/dist/telemetry/types.d.ts +0 -73
  593. package/dist/telemetry/types.d.ts.map +0 -1
  594. package/dist/telemetry/types.js +0 -16
  595. package/dist/telemetry/types.js.map +0 -1
  596. package/dist/tools/TestGenerator.d.ts +0 -8
  597. package/dist/tools/TestGenerator.d.ts.map +0 -1
  598. package/dist/tools/TestGenerator.js +0 -54
  599. package/dist/tools/TestGenerator.js.map +0 -1
  600. package/dist/types/AgentClassification.d.ts +0 -30
  601. package/dist/types/AgentClassification.d.ts.map +0 -1
  602. package/dist/types/AgentClassification.js +0 -19
  603. package/dist/types/AgentClassification.js.map +0 -1
  604. package/dist/types/Checkpoint.d.ts +0 -12
  605. package/dist/types/Checkpoint.d.ts.map +0 -1
  606. package/dist/types/Checkpoint.js +0 -13
  607. package/dist/types/Checkpoint.js.map +0 -1
  608. package/dist/types/toonify.d.ts +0 -91
  609. package/dist/types/toonify.d.ts.map +0 -1
  610. package/dist/types/toonify.js +0 -18
  611. package/dist/types/toonify.js.map +0 -1
  612. package/dist/ui/AsciiProgressBar.d.ts +0 -29
  613. package/dist/ui/AsciiProgressBar.d.ts.map +0 -1
  614. package/dist/ui/AsciiProgressBar.js +0 -130
  615. package/dist/ui/AsciiProgressBar.js.map +0 -1
  616. package/dist/ui/AttributionManager.d.ts +0 -19
  617. package/dist/ui/AttributionManager.d.ts.map +0 -1
  618. package/dist/ui/AttributionManager.js +0 -107
  619. package/dist/ui/AttributionManager.js.map +0 -1
  620. package/dist/ui/Dashboard.d.ts +0 -24
  621. package/dist/ui/Dashboard.d.ts.map +0 -1
  622. package/dist/ui/Dashboard.js +0 -135
  623. package/dist/ui/Dashboard.js.map +0 -1
  624. package/dist/ui/LoadingIndicator.d.ts +0 -53
  625. package/dist/ui/LoadingIndicator.d.ts.map +0 -1
  626. package/dist/ui/LoadingIndicator.js +0 -211
  627. package/dist/ui/LoadingIndicator.js.map +0 -1
  628. package/dist/ui/MetricsStore.d.ts +0 -15
  629. package/dist/ui/MetricsStore.d.ts.map +0 -1
  630. package/dist/ui/MetricsStore.js +0 -131
  631. package/dist/ui/MetricsStore.js.map +0 -1
  632. package/dist/ui/ProgressIndicator.d.ts +0 -35
  633. package/dist/ui/ProgressIndicator.d.ts.map +0 -1
  634. package/dist/ui/ProgressIndicator.js +0 -177
  635. package/dist/ui/ProgressIndicator.js.map +0 -1
  636. package/dist/ui/ProgressRenderer.d.ts +0 -24
  637. package/dist/ui/ProgressRenderer.d.ts.map +0 -1
  638. package/dist/ui/ProgressRenderer.js +0 -143
  639. package/dist/ui/ProgressRenderer.js.map +0 -1
  640. package/dist/ui/ResponseFormatter.d.ts +0 -57
  641. package/dist/ui/ResponseFormatter.d.ts.map +0 -1
  642. package/dist/ui/ResponseFormatter.js +0 -513
  643. package/dist/ui/ResponseFormatter.js.map +0 -1
  644. package/dist/ui/UIEventBus.d.ts +0 -38
  645. package/dist/ui/UIEventBus.d.ts.map +0 -1
  646. package/dist/ui/UIEventBus.js +0 -173
  647. package/dist/ui/UIEventBus.js.map +0 -1
  648. package/dist/ui/accessibility.d.ts +0 -28
  649. package/dist/ui/accessibility.d.ts.map +0 -1
  650. package/dist/ui/accessibility.js +0 -97
  651. package/dist/ui/accessibility.js.map +0 -1
  652. package/dist/ui/design-tokens.d.ts +0 -36
  653. package/dist/ui/design-tokens.d.ts.map +0 -1
  654. package/dist/ui/design-tokens.js +0 -94
  655. package/dist/ui/design-tokens.js.map +0 -1
  656. package/dist/ui/index.d.ts +0 -8
  657. package/dist/ui/index.d.ts.map +0 -1
  658. package/dist/ui/index.js +0 -6
  659. package/dist/ui/index.js.map +0 -1
  660. package/dist/ui/theme.d.ts +0 -313
  661. package/dist/ui/theme.d.ts.map +0 -1
  662. package/dist/ui/theme.js +0 -198
  663. package/dist/ui/theme.js.map +0 -1
  664. package/dist/ui/types.d.ts +0 -146
  665. package/dist/ui/types.d.ts.map +0 -1
  666. package/dist/ui/types.js +0 -16
  667. package/dist/ui/types.js.map +0 -1
  668. package/dist/utils/ILogger.d.ts +0 -7
  669. package/dist/utils/ILogger.d.ts.map +0 -1
  670. package/dist/utils/ILogger.js +0 -2
  671. package/dist/utils/ILogger.js.map +0 -1
  672. package/dist/utils/MinHeap.d.ts +0 -15
  673. package/dist/utils/MinHeap.d.ts.map +0 -1
  674. package/dist/utils/MinHeap.js +0 -69
  675. package/dist/utils/MinHeap.js.map +0 -1
  676. package/dist/utils/PathResolver.d.ts +0 -13
  677. package/dist/utils/PathResolver.d.ts.map +0 -1
  678. package/dist/utils/PathResolver.js +0 -77
  679. package/dist/utils/PathResolver.js.map +0 -1
  680. package/dist/utils/RateLimiter.d.ts +0 -28
  681. package/dist/utils/RateLimiter.d.ts.map +0 -1
  682. package/dist/utils/RateLimiter.js +0 -115
  683. package/dist/utils/RateLimiter.js.map +0 -1
  684. package/dist/utils/SystemResources.d.ts +0 -40
  685. package/dist/utils/SystemResources.d.ts.map +0 -1
  686. package/dist/utils/SystemResources.js +0 -216
  687. package/dist/utils/SystemResources.js.map +0 -1
  688. package/dist/utils/errorHandler.d.ts +0 -49
  689. package/dist/utils/errorHandler.d.ts.map +0 -1
  690. package/dist/utils/errorHandler.js +0 -397
  691. package/dist/utils/errorHandler.js.map +0 -1
  692. package/dist/utils/index.d.ts +0 -17
  693. package/dist/utils/index.d.ts.map +0 -1
  694. package/dist/utils/index.js +0 -15
  695. package/dist/utils/index.js.map +0 -1
  696. package/dist/utils/json.d.ts +0 -13
  697. package/dist/utils/json.d.ts.map +0 -1
  698. package/dist/utils/json.js +0 -95
  699. package/dist/utils/json.js.map +0 -1
  700. package/dist/utils/logger.d.ts +0 -16
  701. package/dist/utils/logger.d.ts.map +0 -1
  702. package/dist/utils/logger.js +0 -125
  703. package/dist/utils/logger.js.map +0 -1
  704. package/dist/utils/lru-cache.d.ts +0 -47
  705. package/dist/utils/lru-cache.d.ts.map +0 -1
  706. package/dist/utils/lru-cache.js +0 -239
  707. package/dist/utils/lru-cache.js.map +0 -1
  708. package/dist/utils/memory.d.ts +0 -20
  709. package/dist/utils/memory.d.ts.map +0 -1
  710. package/dist/utils/memory.js +0 -53
  711. package/dist/utils/memory.js.map +0 -1
  712. package/dist/utils/money.d.ts +0 -10
  713. package/dist/utils/money.d.ts.map +0 -1
  714. package/dist/utils/money.js +0 -25
  715. package/dist/utils/money.js.map +0 -1
  716. package/dist/utils/pathValidation.d.ts +0 -2
  717. package/dist/utils/pathValidation.d.ts.map +0 -1
  718. package/dist/utils/pathValidation.js +0 -62
  719. package/dist/utils/pathValidation.js.map +0 -1
  720. package/dist/utils/paths.d.ts +0 -4
  721. package/dist/utils/paths.d.ts.map +0 -1
  722. package/dist/utils/paths.js +0 -28
  723. package/dist/utils/paths.js.map +0 -1
  724. package/dist/utils/requestId.d.ts +0 -4
  725. package/dist/utils/requestId.d.ts.map +0 -1
  726. package/dist/utils/requestId.js +0 -17
  727. package/dist/utils/requestId.js.map +0 -1
  728. package/dist/utils/retry.d.ts +0 -20
  729. package/dist/utils/retry.d.ts.map +0 -1
  730. package/dist/utils/retry.js +0 -226
  731. package/dist/utils/retry.js.map +0 -1
  732. package/dist/utils/safeMath.d.ts +0 -11
  733. package/dist/utils/safeMath.d.ts.map +0 -1
  734. package/dist/utils/safeMath.js +0 -92
  735. package/dist/utils/safeMath.js.map +0 -1
  736. package/dist/utils/toonify-adapter.d.ts +0 -77
  737. package/dist/utils/toonify-adapter.d.ts.map +0 -1
  738. package/dist/utils/toonify-adapter.js +0 -282
  739. package/dist/utils/toonify-adapter.js.map +0 -1
  740. package/dist/utils/tracing/TraceContext.d.ts +0 -23
  741. package/dist/utils/tracing/TraceContext.d.ts.map +0 -1
  742. package/dist/utils/tracing/TraceContext.js +0 -127
  743. package/dist/utils/tracing/TraceContext.js.map +0 -1
  744. package/dist/utils/tracing/index.d.ts +0 -2
  745. package/dist/utils/tracing/index.d.ts.map +0 -1
  746. package/dist/utils/tracing/index.js +0 -2
  747. package/dist/utils/tracing/index.js.map +0 -1
  748. package/dist/utils/tracing/middleware.d.ts +0 -15
  749. package/dist/utils/tracing/middleware.d.ts.map +0 -1
  750. package/dist/utils/tracing/middleware.js +0 -49
  751. package/dist/utils/tracing/middleware.js.map +0 -1
  752. package/dist/utils/validation.d.ts +0 -12
  753. package/dist/utils/validation.d.ts.map +0 -1
  754. package/dist/utils/validation.js +0 -87
  755. package/dist/utils/validation.js.map +0 -1
  756. package/scripts/health-check.js +0 -331
  757. package/scripts/hooks/README.md +0 -230
  758. package/scripts/hooks/__tests__/hook-test-harness.js +0 -218
  759. package/scripts/hooks/__tests__/hooks.test.js +0 -267
  760. package/scripts/hooks/__tests__/post-tool-use-recall.test.js +0 -192
  761. package/scripts/hooks/__tests__/session-start-recall.test.js +0 -86
  762. package/scripts/hooks/hook-utils.js +0 -899
  763. package/scripts/hooks/post-tool-use-recall-utils.js +0 -74
  764. package/scripts/hooks/post-tool-use.js +0 -895
  765. package/scripts/hooks/pre-tool-use.js +0 -491
  766. package/scripts/hooks/session-start-recall-utils.js +0 -40
  767. package/scripts/hooks/stop.js +0 -673
  768. package/scripts/hooks/subagent-stop.js +0 -184
  769. package/scripts/postinstall-lib.js +0 -242
  770. package/scripts/postinstall-new.js +0 -191
  771. package/scripts/skills/comprehensive-code-review/SKILL.md +0 -276
@@ -1,647 +1,102 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- /**
4
- * SessionStart Hook - Claude Code Event-Driven Hooks
5
- *
6
- * Triggered at the start of each Claude Code session.
7
- *
8
- * Features:
9
- * - Checks MeMesh MCP server availability
10
- * - Auto-recalls last session key points from MeMesh
11
- * - Reads recommendations from last session
12
- * - Displays suggested skills to load
13
- * - Shows warnings (quota, slow tools, etc.)
14
- * - Initializes current session state
15
- */
3
+ import { createRequire } from 'module';
4
+ import { homedir } from 'os';
5
+ import { join, basename } from 'path';
6
+ import { existsSync } from 'fs';
16
7
 
17
- import {
18
- HOME_DIR,
19
- STATE_DIR,
20
- MEMESH_DB_PATH,
21
- THRESHOLDS,
22
- readJSONFile,
23
- writeJSONFile,
24
- sqliteQueryJSON,
25
- getTimeAgo,
26
- logError,
27
- queryActivePlans,
28
- renderTimelineCompact,
29
- } from './hook-utils.js';
30
- import { buildSessionRecallQuery, formatRecallOutput } from './session-start-recall-utils.js';
31
- import fs from 'fs';
32
- import path from 'path';
33
- import { execFileSync } from 'child_process';
8
+ const require = createRequire(import.meta.url);
34
9
 
35
- // ============================================================================
36
- // File Paths
37
- // ============================================================================
38
-
39
- const CCB_HEARTBEAT_FILE = path.join(STATE_DIR, 'ccb-heartbeat.json');
40
- const MCP_SETTINGS_FILE = path.join(HOME_DIR, '.claude', 'mcp_settings.json');
41
- const RECOMMENDATIONS_FILE = path.join(STATE_DIR, 'recommendations.json');
42
- const SESSION_CONTEXT_FILE = path.join(STATE_DIR, 'session-context.json');
43
- const CURRENT_SESSION_FILE = path.join(STATE_DIR, 'current-session.json');
44
- const LAST_SESSION_CACHE_FILE = path.join(STATE_DIR, 'last-session-summary.json');
45
-
46
- /** Maximum cache age: 7 days */
47
- const CACHE_MAX_AGE_MS = 7 * 24 * 60 * 60 * 1000;
48
-
49
- // ============================================================================
50
- // MeMesh Status Check
51
- // ============================================================================
52
-
53
- /**
54
- * Check MeMesh MCP Server availability
55
- * @returns {{ configured: boolean, running: boolean, lastHeartbeat: string|null, serverPath: string|null }}
56
- */
57
- function checkCCBAvailability() {
58
- const result = {
59
- configured: false,
60
- running: false,
61
- lastHeartbeat: null,
62
- serverPath: null,
63
- };
64
-
65
- // Check if MeMesh is configured in MCP settings
66
- try {
67
- if (fs.existsSync(MCP_SETTINGS_FILE)) {
68
- const mcpSettings = JSON.parse(fs.readFileSync(MCP_SETTINGS_FILE, 'utf-8'));
69
-
70
- // Check for MeMesh and legacy names (backward compatibility)
71
- const ccbNames = [
72
- 'memesh',
73
- '@pcircle/memesh',
74
- '@pcircle/claude-code-buddy-mcp',
75
- 'claude-code-buddy',
76
- 'ccb',
77
- ];
78
-
79
- for (const name of ccbNames) {
80
- if (mcpSettings.mcpServers && mcpSettings.mcpServers[name]) {
81
- result.configured = true;
82
- result.serverPath = mcpSettings.mcpServers[name].args?.[0] || 'configured';
83
- break;
84
- }
85
- }
86
- }
87
- } catch (err) {
88
- logError('checkCCBAvailability:mcp_settings', err);
89
- }
90
-
91
- // Check heartbeat file (MeMesh writes this when running)
92
- try {
93
- if (fs.existsSync(CCB_HEARTBEAT_FILE)) {
94
- const heartbeat = JSON.parse(fs.readFileSync(CCB_HEARTBEAT_FILE, 'utf-8'));
95
- result.lastHeartbeat = heartbeat.timestamp;
96
-
97
- const heartbeatTime = new Date(heartbeat.timestamp).getTime();
98
- const now = Date.now();
99
-
100
- if (now - heartbeatTime < THRESHOLDS.HEARTBEAT_VALIDITY) {
101
- result.running = true;
102
- }
103
- }
104
- } catch (err) {
105
- logError('checkCCBAvailability:heartbeat', err);
106
- }
107
-
108
- return result;
109
- }
110
-
111
- /**
112
- * Display MeMesh status and reminder
113
- */
114
- function displayCCBStatus(ccbStatus) {
115
- console.log('═'.repeat(60));
116
- console.log(' 🤖 MeMesh Status');
117
- console.log('═'.repeat(60));
118
-
119
- if (!ccbStatus.configured) {
120
- console.log('');
121
- console.log(' ⚠️ MeMesh MCP Server is NOT configured!');
122
- console.log('');
123
- console.log(' MeMesh provides memory management and knowledge graph tools.');
124
- console.log(' To configure MeMesh, add it to ~/.claude/mcp_settings.json');
125
- console.log('');
126
- console.log(' Available MeMesh tools when connected:');
127
- console.log(' • buddy-remember: Query past knowledge');
128
- console.log(' • buddy-do: Execute common operations');
129
- console.log(' • memesh-create-entities: Store new knowledge to graph');
130
- console.log('');
131
- } else if (!ccbStatus.running) {
132
- console.log('');
133
- console.log(' ℹ️ MeMesh is configured but status unknown');
134
- console.log(` Path: ${ccbStatus.serverPath}`);
135
- console.log('');
136
- console.log(' 📝 REMINDER: Use MeMesh tools for memory management:');
137
- console.log('');
138
- console.log(' Before starting work:');
139
- console.log(' buddy-remember "relevant topic" - Query past experiences');
140
- console.log('');
141
- console.log(' After completing work:');
142
- console.log(' memesh-create-entities - Store new learnings');
143
- console.log(' memesh-record-mistake - Record errors for future reference');
144
- console.log('');
145
- console.log(' 💡 If MeMesh tools fail, check MCP server status.');
146
- console.log('');
147
- } else {
148
- console.log('');
149
- console.log(' ✅ MeMesh MCP Server is running');
150
- console.log(` Last heartbeat: ${ccbStatus.lastHeartbeat}`);
151
- console.log('');
152
- console.log(' 📋 Session Start Checklist:');
153
- console.log(' ☐ buddy-remember - Query relevant past knowledge');
154
- console.log('');
155
- console.log(' 📋 Session End Checklist:');
156
- console.log(' ☐ memesh-create-entities - Store new learnings');
157
- console.log(' ☐ memesh-record-mistake - Record any errors');
158
- console.log('');
159
- }
160
-
161
- console.log('═'.repeat(60));
162
- console.log('');
163
- }
164
-
165
- // ============================================================================
166
- // Memory Recall
167
- // ============================================================================
168
-
169
- /**
170
- * Try to read session summary from cache file (fast path).
171
- * Cache is written by stop.js on session end.
172
- * @returns {{ entityName: string, createdAt: string, metadata: object, keyPoints: string[] } | null}
173
- */
174
- function recallFromCache() {
10
+ let input = '';
11
+ process.stdin.setEncoding('utf8');
12
+ process.stdin.on('data', (chunk) => { input += chunk; });
13
+ process.stdin.on('end', () => {
175
14
  try {
176
- if (!fs.existsSync(LAST_SESSION_CACHE_FILE)) {
177
- return null;
178
- }
179
-
180
- const cache = readJSONFile(LAST_SESSION_CACHE_FILE, null);
181
- if (!cache || !cache.savedAt || !cache.keyPoints) {
182
- return null;
183
- }
184
-
185
- // Check staleness
186
- const cacheAge = Date.now() - new Date(cache.savedAt).getTime();
187
- if (cacheAge > CACHE_MAX_AGE_MS) {
188
- // Stale cache — delete it
189
- try { fs.unlinkSync(LAST_SESSION_CACHE_FILE); } catch { /* ignore */ }
190
- return null;
191
- }
192
-
193
- return {
194
- entityName: 'session_cache',
195
- createdAt: cache.savedAt,
196
- metadata: {
197
- duration: cache.duration,
198
- toolCount: cache.toolCount,
199
- },
200
- keyPoints: cache.keyPoints,
201
- };
202
- } catch (error) {
203
- logError('recallFromCache', error);
204
- return null;
205
- }
206
- }
207
-
208
- /**
209
- * Recall recent session key points from MeMesh (slow path — SQLite query).
210
- * Used as fallback when cache is not available.
211
- * @returns {{ entityName: string, createdAt: string, metadata: object, keyPoints: string[] } | null}
212
- */
213
- function recallFromSQLite() {
214
- try {
215
- if (!fs.existsSync(MEMESH_DB_PATH)) {
216
- return null;
217
- }
218
-
219
- const cutoffDate = new Date();
220
- cutoffDate.setDate(cutoffDate.getDate() - THRESHOLDS.RECALL_DAYS);
221
- const cutoffISO = cutoffDate.toISOString();
222
-
223
- const query = `
224
- SELECT id, name, metadata, created_at
225
- FROM entities
226
- WHERE type = ? AND created_at > ?
227
- ORDER BY created_at DESC
228
- LIMIT 1
229
- `.replace(/\n/g, ' ');
230
-
231
- // Use JSON mode to avoid pipe-split issues with | in metadata
232
- const entityRows = sqliteQueryJSON(
233
- MEMESH_DB_PATH,
234
- query,
235
- ['session_keypoint', cutoffISO]
236
- );
237
-
238
- if (!entityRows || entityRows.length === 0) {
239
- return null;
240
- }
241
-
242
- const row = entityRows[0];
243
- const entityId = row.id;
244
- const entityName = row.name;
245
- const createdAt = row.created_at;
246
-
247
- // Observations also use JSON mode for safety
248
- const obsRows = sqliteQueryJSON(
249
- MEMESH_DB_PATH,
250
- 'SELECT content FROM observations WHERE entity_id = ? ORDER BY created_at ASC',
251
- [entityId]
252
- );
253
-
254
- const keyPoints = (obsRows || []).map(r => r.content).filter(Boolean);
255
-
256
- let parsedMetadata = {};
257
- try {
258
- parsedMetadata = JSON.parse(row.metadata || '{}');
259
- } catch (parseErr) {
260
- logError('recallFromSQLite:metadata-parse', parseErr);
261
- }
262
-
263
- return {
264
- entityName,
265
- createdAt,
266
- metadata: parsedMetadata,
267
- keyPoints,
268
- };
269
- } catch (error) {
270
- logError('recallFromSQLite', error);
271
- return null;
272
- }
273
- }
274
-
275
- /**
276
- * Recall recent session key points — cache-first, SQLite fallback.
277
- * @returns {{ entityName: string, createdAt: string, metadata: object, keyPoints: string[] } | null}
278
- */
279
- function recallRecentKeyPoints() {
280
- // Fast path: read from cache file (no sqlite3 spawn)
281
- const cached = recallFromCache();
282
- if (cached) {
283
- return cached;
284
- }
285
-
286
- // Slow path: query SQLite
287
- return recallFromSQLite();
288
- }
289
-
290
- /**
291
- * Display recalled key points from last session
292
- */
293
- function displayRecalledMemory(recalledData) {
294
- console.log('═'.repeat(60));
295
- console.log(' 🧠 MeMesh Memory Recall');
296
- console.log('═'.repeat(60));
297
-
298
- if (!recalledData || !recalledData.keyPoints || recalledData.keyPoints.length === 0) {
299
- console.log('');
300
- console.log(' ℹ️ No recent memories found (last 30 days)');
301
- console.log(' 💡 Memories will be auto-saved when this session ends');
302
- console.log('');
303
- console.log('═'.repeat(60));
304
- console.log('');
305
- return;
306
- }
307
-
308
- console.log('');
309
-
310
- // Display timestamp
311
- const savedTime = new Date(recalledData.createdAt);
312
- const timeAgo = getTimeAgo(savedTime);
313
- console.log(` 🕐 Saved: ${timeAgo}`);
314
-
315
- // Display metadata if available
316
- if (recalledData.metadata) {
317
- const meta = recalledData.metadata;
318
- if (meta.duration) {
319
- console.log(` ⏱️ Last session duration: ${meta.duration}`);
320
- }
321
- if (meta.toolCount) {
322
- console.log(` 🛠️ Tools used: ${meta.toolCount}`);
323
- }
324
- }
325
-
326
- console.log('');
327
- console.log(' 📋 Key Points:');
328
-
329
- // Display key points with formatting
330
- recalledData.keyPoints.forEach(point => {
331
- if (point.startsWith('[SESSION]')) {
332
- console.log(` 📊 ${point.replace('[SESSION] ', '')}`);
333
- } else if (point.startsWith('[WORK]')) {
334
- console.log(` 📁 ${point.replace('[WORK] ', '')}`);
335
- } else if (point.startsWith('[COMMIT]')) {
336
- console.log(` ✅ ${point.replace('[COMMIT] ', '')}`);
337
- } else if (point.startsWith('[ISSUE]') || point.startsWith('[PROBLEM]')) {
338
- console.log(` ⚠️ ${point.replace(/\[(ISSUE|PROBLEM)\] /, '')}`);
339
- } else if (point.startsWith('[LEARN]')) {
340
- console.log(` 💡 ${point.replace('[LEARN] ', '')}`);
341
- } else if (point.startsWith('[TASK]')) {
342
- console.log(` 📝 ${point.replace('[TASK] ', '')}`);
343
- } else if (point.startsWith('[DECISION]')) {
344
- console.log(` 🎯 ${point.replace('[DECISION] ', '')}`);
345
- } else if (point.startsWith('[PATTERN]')) {
346
- console.log(` 🔄 ${point.replace('[PATTERN] ', '')}`);
347
- } else if (point.startsWith('[SCOPE]') || point.startsWith('[FOCUS]')) {
348
- console.log(` 🎯 ${point.replace(/\[(SCOPE|FOCUS)\] /, '')}`);
349
- } else if (point.startsWith('[NOTE]')) {
350
- console.log(` 📌 ${point.replace('[NOTE] ', '')}`);
351
- } else {
352
- console.log(` • ${point}`);
15
+ const data = JSON.parse(input);
16
+ const projectName = basename(data.cwd || process.cwd());
17
+
18
+ // Find database
19
+ const dbPath = process.env.MEMESH_DB_PATH || join(homedir(), '.memesh', 'knowledge-graph.db');
20
+ if (!existsSync(dbPath)) {
21
+ output('MeMesh: No database found. Memories will be created as you work.');
22
+ return;
353
23
  }
354
- });
355
-
356
- console.log('');
357
- console.log('═'.repeat(60));
358
- console.log('');
359
- }
360
24
 
361
- // ============================================================================
362
- // CLAUDE.md Reload
363
- // ============================================================================
364
-
365
- /**
366
- * Find and display project CLAUDE.md content on session start.
367
- * This ensures instructions are fresh in context even after compaction.
368
- * Searches: CWD/.claude/CLAUDE.md, CWD/CLAUDE.md
369
- */
370
- function reloadClaudeMd() {
371
- const cwd = process.cwd();
372
- const candidates = [
373
- path.join(cwd, '.claude', 'CLAUDE.md'),
374
- path.join(cwd, 'CLAUDE.md'),
375
- ];
376
-
377
- for (const candidate of candidates) {
25
+ const Database = require('better-sqlite3');
26
+ const db = new Database(dbPath, { readonly: true });
378
27
  try {
379
- if (fs.existsSync(candidate)) {
380
- const content = fs.readFileSync(candidate, 'utf-8');
381
- const lineCount = content.split('\n').length;
382
- const relativePath = path.relative(cwd, candidate);
383
-
384
- console.log('═'.repeat(60));
385
- console.log(' 📋 CLAUDE.md Reloaded');
386
- console.log(''.repeat(60));
387
- console.log('');
388
- console.log(` Source: ${relativePath} (${lineCount} lines)`);
389
- console.log('');
390
- console.log(content);
391
- console.log('');
392
- console.log('═'.repeat(60));
393
- console.log('');
28
+ db.pragma('journal_mode = WAL');
29
+
30
+ // Check if tables exist (db may exist but be empty)
31
+ const tableCheck = db.prepare(
32
+ "SELECT name FROM sqlite_master WHERE type='table' AND name='entities'"
33
+ ).get();
34
+ if (!tableCheck) {
35
+ output('MeMesh: Database exists but no memories stored yet.');
394
36
  return;
395
37
  }
396
- } catch (readErr) {
397
- logError(`reloadClaudeMd:${candidate}`, readErr);
398
- }
399
- }
400
- }
401
-
402
- // ============================================================================
403
- // Main Session Start Logic
404
- // ============================================================================
405
-
406
- // ============================================================================
407
- // Active Plans Display (Beta)
408
- // ============================================================================
409
-
410
- /**
411
- * Display active plans with compact timeline.
412
- * Also warns about stale plans (no progress for 7+ days).
413
- */
414
- function displayActivePlans() {
415
- try {
416
- if (!fs.existsSync(MEMESH_DB_PATH)) return;
417
-
418
- const activePlans = queryActivePlans(MEMESH_DB_PATH);
419
- if (activePlans.length === 0) return;
420
-
421
- console.log('═'.repeat(60));
422
- console.log(' 📋 Active Plans');
423
- console.log('═'.repeat(60));
424
- console.log('');
425
38
 
426
- for (const plan of activePlans) {
427
- console.log(renderTimelineCompact(plan));
428
-
429
- // Stale plan warning (7+ days since last progress)
430
- const lastStep = plan.metadata.stepsDetail
431
- ?.filter(s => s.completed && s.date)
432
- .sort((a, b) => b.date.localeCompare(a.date))[0];
433
- if (lastStep && lastStep.date) {
434
- const daysSince = Math.floor((Date.now() - new Date(lastStep.date).getTime()) / (1000 * 60 * 60 * 24));
435
- if (daysSince >= 7) {
436
- console.log(` ⚠️ No progress for ${daysSince} days`);
39
+ // Query project-specific recent entities with their observations
40
+ const projectTag = `project:${projectName}`;
41
+ const projectEntities = db.prepare(`
42
+ SELECT DISTINCT e.id, e.name, e.type, e.created_at
43
+ FROM entities e
44
+ JOIN tags t ON t.entity_id = e.id
45
+ WHERE t.tag = ?
46
+ ORDER BY e.id DESC
47
+ LIMIT 10
48
+ `).all(projectTag);
49
+
50
+ // Fetch observations for each entity (up to 3 per entity)
51
+ const getObservations = db.prepare(
52
+ 'SELECT content FROM observations WHERE entity_id = ? ORDER BY id DESC LIMIT 3'
53
+ );
54
+
55
+ // Query global recent entities
56
+ const recentEntities = db.prepare(`
57
+ SELECT id, name, type, created_at
58
+ FROM entities
59
+ ORDER BY id DESC
60
+ LIMIT 5
61
+ `).all();
62
+
63
+ // Build recall message
64
+ const lines = [];
65
+ if (projectEntities.length > 0) {
66
+ lines.push(`Project "${projectName}" memories (${projectEntities.length}):`);
67
+ for (const e of projectEntities) {
68
+ lines.push(` - [${e.type}] ${e.name}`);
69
+ const obs = getObservations.all(e.id);
70
+ for (const o of obs) {
71
+ lines.push(` ${o.content}`);
72
+ }
437
73
  }
438
74
  }
439
- console.log('');
440
- }
441
-
442
- console.log('═'.repeat(60));
443
- console.log('');
444
- } catch (error) {
445
- logError('displayActivePlans', error);
446
- }
447
- }
448
-
449
- /**
450
- * Proactive memory recall — queries KG for memories related to current project.
451
- * Uses project name + last 3 git commits as search query.
452
- */
453
- function recallProactiveMemories() {
454
- try {
455
- const projectName = path.basename(process.cwd());
456
-
457
- let recentCommits = [];
458
- try {
459
- const gitOutput = execFileSync('git', ['log', '--oneline', '-3', '--format=%s'], {
460
- timeout: 3000,
461
- encoding: 'utf-8',
462
- cwd: process.cwd(),
463
- });
464
- recentCommits = gitOutput.trim().split('\n').filter(Boolean);
465
- } catch {
466
- // Not a git repo or no commits
467
- }
468
-
469
- const query = buildSessionRecallQuery(projectName, recentCommits);
470
- if (!query) return;
471
-
472
- // Build FTS5 tokens
473
- const ftsTokens = query.split(/\s+/)
474
- .filter(t => t.length > 2)
475
- .slice(0, 10)
476
- .map(t => `"${t.replace(/"/g, '""')}"*`)
477
- .join(' OR ');
478
-
479
- if (!ftsTokens) return;
480
-
481
- const sql = `
482
- SELECT e.name, e.type,
483
- (SELECT json_group_array(content) FROM observations o WHERE o.entity_id = e.id) as observations_json
484
- FROM entities e
485
- JOIN entities_fts ON entities_fts.rowid = e.id
486
- WHERE entities_fts MATCH ?
487
- ORDER BY bm25(entities_fts, 10.0, 5.0)
488
- LIMIT 5
489
- `;
490
-
491
- const result = sqliteQueryJSON(MEMESH_DB_PATH, sql, [ftsTokens]);
492
- if (!result || result.length === 0) return;
493
-
494
- const formatted = result.map(r => ({
495
- name: r.name,
496
- observations: JSON.parse(r.observations_json || '[]').filter(Boolean).slice(0, 3),
497
- similarity: 0.5,
498
- }));
499
-
500
- const output = formatRecallOutput(formatted);
501
- if (output) {
502
- console.log('\n Proactive Memory Recall:');
503
- console.log(output);
504
- }
505
- } catch (error) {
506
- logError('proactive-recall', error);
507
- }
508
- }
509
-
510
- function sessionStart() {
511
- console.log('\n🚀 Smart-Agents Session Started\n');
512
-
513
- // Reload project CLAUDE.md into context
514
- reloadClaudeMd();
515
-
516
- // Check MeMesh availability
517
- const ccbStatus = checkCCBAvailability();
518
- displayCCBStatus(ccbStatus);
519
-
520
- // Auto-recall last session's key points from MeMesh
521
- const recalledMemory = recallRecentKeyPoints();
522
- displayRecalledMemory(recalledMemory);
523
-
524
- // Proactive memory recall (project context + recent commits)
525
- recallProactiveMemories();
526
-
527
- // Display active plans (beta)
528
- displayActivePlans();
529
-
530
- // Read recommendations from last session
531
- const recommendations = readJSONFile(RECOMMENDATIONS_FILE, {
532
- recommendedSkills: [],
533
- detectedPatterns: [],
534
- warnings: [],
535
- lastUpdated: null,
536
- });
537
-
538
- // Read session context
539
- const sessionContext = readJSONFile(SESSION_CONTEXT_FILE, {
540
- tokenQuota: { used: 0, limit: 200000 },
541
- learnedPatterns: [],
542
- lastSessionDate: null,
543
- });
544
-
545
- // Display recommendations
546
- if (recommendations.recommendedSkills?.length > 0) {
547
- console.log('📚 Recommended skills based on last session:');
548
- recommendations.recommendedSkills.forEach(skill => {
549
- const priority = skill.priority === 'high' ? '🔴' : skill.priority === 'medium' ? '🟡' : '🟢';
550
- console.log(` ${priority} ${skill.name} - ${skill.reason}`);
551
- });
552
- console.log('');
553
- }
554
-
555
- // Display detected patterns
556
- if (recommendations.detectedPatterns?.length > 0) {
557
- console.log('✨ Detected patterns:');
558
- recommendations.detectedPatterns.slice(0, 3).forEach(pattern => {
559
- console.log(` • ${pattern.description}`);
560
- if (pattern.suggestion) {
561
- console.log(` 💡 ${pattern.suggestion}`);
75
+ if (recentEntities.length > 0) {
76
+ lines.push('');
77
+ lines.push('Recent memories:');
78
+ for (const e of recentEntities) {
79
+ lines.push(` - [${e.type}] ${e.name}`);
80
+ const obs = getObservations.all(e.id);
81
+ for (const o of obs) {
82
+ lines.push(` ${o.content}`);
83
+ }
84
+ }
85
+ }
86
+ if (lines.length === 0) {
87
+ lines.push('MeMesh: No memories found yet. Use remember tool to store knowledge.');
562
88
  }
563
- });
564
- console.log('');
565
- }
566
-
567
- // Display warnings
568
- if (recommendations.warnings?.length > 0) {
569
- console.log('⚠️ Warnings:');
570
- recommendations.warnings.forEach(warning => {
571
- console.log(` • ${warning}`);
572
- });
573
- console.log('');
574
- }
575
-
576
- // Display quota info (guard against division by zero)
577
- const quotaLimit = sessionContext.tokenQuota?.limit || 1;
578
- const quotaUsed = sessionContext.tokenQuota?.used || 0;
579
- const quotaPercentNum = (quotaUsed / quotaLimit) * 100;
580
- if (quotaPercentNum > 80) {
581
- console.log(`🔴 Quota usage: ${quotaPercentNum.toFixed(1)}% (please monitor usage)\n`);
582
- } else if (quotaPercentNum > 50) {
583
- console.log(`🟡 Quota usage: ${quotaPercentNum.toFixed(1)}%\n`);
584
- }
585
-
586
- // Initialize current session
587
- const currentSession = {
588
- startTime: new Date().toISOString(),
589
- toolCalls: [],
590
- patterns: [],
591
- ccbStatus: ccbStatus,
592
- };
593
-
594
- if (writeJSONFile(CURRENT_SESSION_FILE, currentSession)) {
595
- console.log('✅ Session initialized, ready to work!\n');
596
- } else {
597
- console.log('⚠️ Session initialization failed, but you can continue working\n');
598
- }
599
-
600
- // ── User-facing acknowledgment instruction ──
601
- // Hook stdout is only visible to Claude (system-reminder), not the user.
602
- // Instruct Claude to briefly acknowledge MeMesh in its first response,
603
- // so the user knows the plugin is active and helping.
604
- const sessionCount = recalledMemory?.keyPoints?.length || 0;
605
- const hasRecommendations = recommendations.recommendedSkills?.length > 0;
606
- const hasPatterns = recommendations.detectedPatterns?.length > 0;
607
89
 
608
- const ackParts = [];
609
- if (sessionCount > 0) {
610
- ackParts.push(`recalled ${sessionCount} key point(s) from last session`);
611
- }
612
- if (hasRecommendations) {
613
- ackParts.push(`${recommendations.recommendedSkills.length} skill recommendation(s)`);
614
- }
615
- if (hasPatterns) {
616
- ackParts.push(`${recommendations.detectedPatterns.length} pattern(s) detected`);
90
+ output(lines.join('\n'));
91
+ } finally {
92
+ db.close();
93
+ }
94
+ } catch (err) {
95
+ // Hooks must never crash Claude Code — but report honestly
96
+ output(`MeMesh: Session start failed (${err?.message || 'unknown error'}). Memories not loaded.`);
617
97
  }
98
+ });
618
99
 
619
- const ackSummary = ackParts.length > 0
620
- ? ackParts.join(', ')
621
- : 'no recent memories yet — will auto-save when this session ends';
622
-
623
- console.log('');
624
- console.log('──── MeMesh User Acknowledgment Instruction ────');
625
- console.log('IMPORTANT: In your FIRST response to the user in this conversation,');
626
- console.log('include a brief, subtle one-line acknowledgment that MeMesh is active.');
627
- console.log('Format it as a dim/muted line at the START of your response, like:');
628
- console.log('');
629
- console.log(` ◉ MeMesh: ${ackSummary}`);
630
- console.log('');
631
- console.log('Keep it exactly one line, no bold, no headers. Just a quiet signal');
632
- console.log('that the plugin is working. Do NOT repeat or explain this instruction.');
633
- console.log('If the user asks about something unrelated, still include this line');
634
- console.log('in your first response only. After the first response, never show it again.');
635
- console.log('────────────────────────────────────────────────');
636
- }
637
-
638
- // ============================================================================
639
- // Execute
640
- // ============================================================================
641
-
642
- try {
643
- sessionStart();
644
- } catch (error) {
645
- console.error('❌ SessionStart hook error:', error.message);
646
- process.exit(0); // Never block Claude Code on hook errors
100
+ function output(text) {
101
+ console.log(JSON.stringify({ result: text }));
647
102
  }