@nxuss/lemma 1.42.0 → 1.44.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 (331) hide show
  1. package/README.md +1 -1
  2. package/bin/brain-ingest.js +18 -0
  3. package/bin/cloud.js +228 -0
  4. package/bin/init.js +1 -1
  5. package/dist/cjs/cli/hostHooks.d.ts +6 -0
  6. package/dist/cjs/cli/hostHooks.d.ts.map +1 -1
  7. package/dist/cjs/cli/hostHooks.js +13 -3
  8. package/dist/cjs/cli/hostHooks.js.map +1 -1
  9. package/dist/cjs/cloud/CloudBrainClient.d.ts +52 -0
  10. package/dist/cjs/cloud/CloudBrainClient.d.ts.map +1 -0
  11. package/dist/cjs/cloud/CloudBrainClient.js +161 -0
  12. package/dist/cjs/cloud/CloudBrainClient.js.map +1 -0
  13. package/dist/cjs/cloud/CloudConfig.d.ts +41 -0
  14. package/dist/cjs/cloud/CloudConfig.d.ts.map +1 -0
  15. package/dist/cjs/cloud/CloudConfig.js +133 -0
  16. package/dist/cjs/cloud/CloudConfig.js.map +1 -0
  17. package/dist/cjs/cloud/CloudEntitlement.d.ts +55 -0
  18. package/dist/cjs/cloud/CloudEntitlement.d.ts.map +1 -0
  19. package/dist/cjs/cloud/CloudEntitlement.js +174 -0
  20. package/dist/cjs/cloud/CloudEntitlement.js.map +1 -0
  21. package/dist/cjs/cloud/billing/stripeApi.d.ts +43 -0
  22. package/dist/cjs/cloud/billing/stripeApi.d.ts.map +1 -0
  23. package/dist/cjs/cloud/billing/stripeApi.js +111 -0
  24. package/dist/cjs/cloud/billing/stripeApi.js.map +1 -0
  25. package/dist/cjs/cloud/billing/stripeWebhook.d.ts +35 -0
  26. package/dist/cjs/cloud/billing/stripeWebhook.d.ts.map +1 -0
  27. package/dist/cjs/cloud/billing/stripeWebhook.js +185 -0
  28. package/dist/cjs/cloud/billing/stripeWebhook.js.map +1 -0
  29. package/dist/cjs/cloud/console/ConsoleStore.d.ts +111 -0
  30. package/dist/cjs/cloud/console/ConsoleStore.d.ts.map +1 -0
  31. package/dist/cjs/cloud/console/ConsoleStore.js +172 -0
  32. package/dist/cjs/cloud/console/ConsoleStore.js.map +1 -0
  33. package/dist/cjs/cloud/console/consoleRouter.d.ts +68 -0
  34. package/dist/cjs/cloud/console/consoleRouter.d.ts.map +1 -0
  35. package/dist/cjs/cloud/console/consoleRouter.js +263 -0
  36. package/dist/cjs/cloud/console/consoleRouter.js.map +1 -0
  37. package/dist/cjs/cloud/console/mailer.d.ts +22 -0
  38. package/dist/cjs/cloud/console/mailer.d.ts.map +1 -0
  39. package/dist/cjs/cloud/console/mailer.js +35 -0
  40. package/dist/cjs/cloud/console/mailer.js.map +1 -0
  41. package/dist/cjs/cloud/identity/PlanPolicy.d.ts +16 -1
  42. package/dist/cjs/cloud/identity/PlanPolicy.d.ts.map +1 -1
  43. package/dist/cjs/cloud/identity/PlanPolicy.js +47 -7
  44. package/dist/cjs/cloud/identity/PlanPolicy.js.map +1 -1
  45. package/dist/cjs/cloud/identity/RateLimiter.d.ts +21 -1
  46. package/dist/cjs/cloud/identity/RateLimiter.d.ts.map +1 -1
  47. package/dist/cjs/cloud/identity/RateLimiter.js +59 -2
  48. package/dist/cjs/cloud/identity/RateLimiter.js.map +1 -1
  49. package/dist/cjs/cloud/identity/TenantResolver.d.ts +4 -1
  50. package/dist/cjs/cloud/identity/TenantResolver.d.ts.map +1 -1
  51. package/dist/cjs/cloud/identity/TenantResolver.js +1 -1
  52. package/dist/cjs/cloud/identity/TenantResolver.js.map +1 -1
  53. package/dist/cjs/cloud/identity/authenticateV2.d.ts.map +1 -1
  54. package/dist/cjs/cloud/identity/authenticateV2.js +7 -4
  55. package/dist/cjs/cloud/identity/authenticateV2.js.map +1 -1
  56. package/dist/cjs/cloud/identity/identityStore.d.ts +85 -10
  57. package/dist/cjs/cloud/identity/identityStore.d.ts.map +1 -1
  58. package/dist/cjs/cloud/identity/identityStore.js +184 -2
  59. package/dist/cjs/cloud/identity/identityStore.js.map +1 -1
  60. package/dist/cjs/cloud/metering/PostgresLedgerStore.d.ts +16 -0
  61. package/dist/cjs/cloud/metering/PostgresLedgerStore.d.ts.map +1 -0
  62. package/dist/cjs/cloud/metering/PostgresLedgerStore.js +44 -0
  63. package/dist/cjs/cloud/metering/PostgresLedgerStore.js.map +1 -0
  64. package/dist/cjs/cloud/metering/UsageLedger.d.ts +37 -0
  65. package/dist/cjs/cloud/metering/UsageLedger.d.ts.map +1 -1
  66. package/dist/cjs/cloud/metering/UsageLedger.js +80 -17
  67. package/dist/cjs/cloud/metering/UsageLedger.js.map +1 -1
  68. package/dist/cjs/cloud/metering/index.d.ts +1 -0
  69. package/dist/cjs/cloud/metering/index.d.ts.map +1 -1
  70. package/dist/cjs/cloud/metering/index.js +1 -0
  71. package/dist/cjs/cloud/metering/index.js.map +1 -1
  72. package/dist/cjs/cloud/store/FileBrainStore.d.ts +1 -0
  73. package/dist/cjs/cloud/store/FileBrainStore.d.ts.map +1 -1
  74. package/dist/cjs/cloud/store/FileBrainStore.js +3 -0
  75. package/dist/cjs/cloud/store/FileBrainStore.js.map +1 -1
  76. package/dist/cjs/cloud/store/PostgresBrainStore.d.ts +1 -0
  77. package/dist/cjs/cloud/store/PostgresBrainStore.d.ts.map +1 -1
  78. package/dist/cjs/cloud/store/PostgresBrainStore.js +4 -0
  79. package/dist/cjs/cloud/store/PostgresBrainStore.js.map +1 -1
  80. package/dist/cjs/cloud/v2/app.d.ts.map +1 -1
  81. package/dist/cjs/cloud/v2/app.js +6 -0
  82. package/dist/cjs/cloud/v2/app.js.map +1 -1
  83. package/dist/cjs/cloud/v2/inputGuard.d.ts +23 -0
  84. package/dist/cjs/cloud/v2/inputGuard.d.ts.map +1 -0
  85. package/dist/cjs/cloud/v2/inputGuard.js +71 -0
  86. package/dist/cjs/cloud/v2/inputGuard.js.map +1 -0
  87. package/dist/cjs/cloud/v2/routes/admin.d.ts +24 -0
  88. package/dist/cjs/cloud/v2/routes/admin.d.ts.map +1 -0
  89. package/dist/cjs/cloud/v2/routes/admin.js +329 -0
  90. package/dist/cjs/cloud/v2/routes/admin.js.map +1 -0
  91. package/dist/cjs/cloud/v2/routes/entitlement.d.ts +13 -0
  92. package/dist/cjs/cloud/v2/routes/entitlement.d.ts.map +1 -0
  93. package/dist/cjs/cloud/v2/routes/entitlement.js +24 -0
  94. package/dist/cjs/cloud/v2/routes/entitlement.js.map +1 -0
  95. package/dist/cjs/cloud/v2/routes/index.d.ts +14 -1
  96. package/dist/cjs/cloud/v2/routes/index.d.ts.map +1 -1
  97. package/dist/cjs/cloud/v2/routes/index.js +36 -0
  98. package/dist/cjs/cloud/v2/routes/index.js.map +1 -1
  99. package/dist/cjs/cloud/v2/routes/memories.d.ts +21 -2
  100. package/dist/cjs/cloud/v2/routes/memories.d.ts.map +1 -1
  101. package/dist/cjs/cloud/v2/routes/memories.js +77 -0
  102. package/dist/cjs/cloud/v2/routes/memories.js.map +1 -1
  103. package/dist/cjs/cloud/v2/routes/recall.d.ts +1 -0
  104. package/dist/cjs/cloud/v2/routes/recall.d.ts.map +1 -1
  105. package/dist/cjs/cloud/v2/routes/recall.js +4 -0
  106. package/dist/cjs/cloud/v2/routes/recall.js.map +1 -1
  107. package/dist/cjs/cloud/v2/routes/tenant.d.ts +35 -0
  108. package/dist/cjs/cloud/v2/routes/tenant.d.ts.map +1 -0
  109. package/dist/cjs/cloud/v2/routes/tenant.js +62 -0
  110. package/dist/cjs/cloud/v2/routes/tenant.js.map +1 -0
  111. package/dist/cjs/cloud/v2/routes/usage.d.ts +1 -1
  112. package/dist/cjs/cloud/v2/routes/usage.d.ts.map +1 -1
  113. package/dist/cjs/cloud/v2/routes/verify.d.ts +1 -0
  114. package/dist/cjs/cloud/v2/routes/verify.d.ts.map +1 -1
  115. package/dist/cjs/cloud/v2/routes/verify.js +4 -0
  116. package/dist/cjs/cloud/v2/routes/verify.js.map +1 -1
  117. package/dist/cjs/cloud/v2/server.d.ts +9 -3
  118. package/dist/cjs/cloud/v2/server.d.ts.map +1 -1
  119. package/dist/cjs/cloud/v2/server.js +36 -2
  120. package/dist/cjs/cloud/v2/server.js.map +1 -1
  121. package/dist/cjs/cloud/v2/usageRecorder.d.ts +19 -0
  122. package/dist/cjs/cloud/v2/usageRecorder.d.ts.map +1 -0
  123. package/dist/cjs/cloud/v2/usageRecorder.js +42 -0
  124. package/dist/cjs/cloud/v2/usageRecorder.js.map +1 -0
  125. package/dist/cjs/contracts/api-v2.types.d.ts +90 -2
  126. package/dist/cjs/contracts/api-v2.types.d.ts.map +1 -1
  127. package/dist/cjs/contracts/store.d.ts +2 -0
  128. package/dist/cjs/contracts/store.d.ts.map +1 -1
  129. package/dist/cjs/mcp/index.js +3 -0
  130. package/dist/cjs/mcp/index.js.map +1 -1
  131. package/dist/cjs/mcp/tools/memory.d.ts.map +1 -1
  132. package/dist/cjs/mcp/tools/memory.js +104 -11
  133. package/dist/cjs/mcp/tools/memory.js.map +1 -1
  134. package/dist/cjs/mcp/tools.d.ts.map +1 -1
  135. package/dist/cjs/mcp/tools.js.map +1 -1
  136. package/dist/cjs/proxy/KeyManager.d.ts.map +1 -1
  137. package/dist/cjs/proxy/KeyManager.js +5 -0
  138. package/dist/cjs/proxy/KeyManager.js.map +1 -1
  139. package/dist/cjs/subconscious/CloudBrain.d.ts +77 -0
  140. package/dist/cjs/subconscious/CloudBrain.d.ts.map +1 -0
  141. package/dist/cjs/subconscious/CloudBrain.js +347 -0
  142. package/dist/cjs/subconscious/CloudBrain.js.map +1 -0
  143. package/dist/cjs/subconscious/ProjectIdentity.d.ts +9 -0
  144. package/dist/cjs/subconscious/ProjectIdentity.d.ts.map +1 -0
  145. package/dist/cjs/subconscious/ProjectIdentity.js +63 -0
  146. package/dist/cjs/subconscious/ProjectIdentity.js.map +1 -0
  147. package/dist/cjs/subconscious/TeamBrain.d.ts +9 -3
  148. package/dist/cjs/subconscious/TeamBrain.d.ts.map +1 -1
  149. package/dist/cjs/subconscious/TeamBrain.js +39 -5
  150. package/dist/cjs/subconscious/TeamBrain.js.map +1 -1
  151. package/dist/cjs/subconscious/TheBrainV2.d.ts +7 -0
  152. package/dist/cjs/subconscious/TheBrainV2.d.ts.map +1 -1
  153. package/dist/cjs/subconscious/TheBrainV2.js +25 -0
  154. package/dist/cjs/subconscious/TheBrainV2.js.map +1 -1
  155. package/dist/cjs/utils/ProLicense.d.ts.map +1 -1
  156. package/dist/cjs/utils/ProLicense.js +11 -3
  157. package/dist/cjs/utils/ProLicense.js.map +1 -1
  158. package/dist/cjs/utils/SessionCapture.d.ts +2 -0
  159. package/dist/cjs/utils/SessionCapture.d.ts.map +1 -1
  160. package/dist/cjs/utils/SessionCapture.js +5 -0
  161. package/dist/cjs/utils/SessionCapture.js.map +1 -1
  162. package/dist/cjs/utils/StopNudge.d.ts +8 -0
  163. package/dist/cjs/utils/StopNudge.d.ts.map +1 -0
  164. package/dist/cjs/utils/StopNudge.js +93 -0
  165. package/dist/cjs/utils/StopNudge.js.map +1 -0
  166. package/dist/esm/cli/hostHooks.d.ts +6 -0
  167. package/dist/esm/cli/hostHooks.d.ts.map +1 -1
  168. package/dist/esm/cli/hostHooks.js +12 -2
  169. package/dist/esm/cli/hostHooks.js.map +1 -1
  170. package/dist/esm/cloud/CloudBrainClient.d.ts +52 -0
  171. package/dist/esm/cloud/CloudBrainClient.d.ts.map +1 -0
  172. package/dist/esm/cloud/CloudBrainClient.js +153 -0
  173. package/dist/esm/cloud/CloudBrainClient.js.map +1 -0
  174. package/dist/esm/cloud/CloudConfig.d.ts +41 -0
  175. package/dist/esm/cloud/CloudConfig.d.ts.map +1 -0
  176. package/dist/esm/cloud/CloudConfig.js +118 -0
  177. package/dist/esm/cloud/CloudConfig.js.map +1 -0
  178. package/dist/esm/cloud/CloudEntitlement.d.ts +55 -0
  179. package/dist/esm/cloud/CloudEntitlement.d.ts.map +1 -0
  180. package/dist/esm/cloud/CloudEntitlement.js +159 -0
  181. package/dist/esm/cloud/CloudEntitlement.js.map +1 -0
  182. package/dist/esm/cloud/billing/stripeApi.d.ts +43 -0
  183. package/dist/esm/cloud/billing/stripeApi.d.ts.map +1 -0
  184. package/dist/esm/cloud/billing/stripeApi.js +103 -0
  185. package/dist/esm/cloud/billing/stripeApi.js.map +1 -0
  186. package/dist/esm/cloud/billing/stripeWebhook.d.ts +35 -0
  187. package/dist/esm/cloud/billing/stripeWebhook.d.ts.map +1 -0
  188. package/dist/esm/cloud/billing/stripeWebhook.js +176 -0
  189. package/dist/esm/cloud/billing/stripeWebhook.js.map +1 -0
  190. package/dist/esm/cloud/console/ConsoleStore.d.ts +111 -0
  191. package/dist/esm/cloud/console/ConsoleStore.d.ts.map +1 -0
  192. package/dist/esm/cloud/console/ConsoleStore.js +161 -0
  193. package/dist/esm/cloud/console/ConsoleStore.js.map +1 -0
  194. package/dist/esm/cloud/console/consoleRouter.d.ts +68 -0
  195. package/dist/esm/cloud/console/consoleRouter.d.ts.map +1 -0
  196. package/dist/esm/cloud/console/consoleRouter.js +252 -0
  197. package/dist/esm/cloud/console/consoleRouter.js.map +1 -0
  198. package/dist/esm/cloud/console/mailer.d.ts +22 -0
  199. package/dist/esm/cloud/console/mailer.d.ts.map +1 -0
  200. package/dist/esm/cloud/console/mailer.js +30 -0
  201. package/dist/esm/cloud/console/mailer.js.map +1 -0
  202. package/dist/esm/cloud/identity/PlanPolicy.d.ts +16 -1
  203. package/dist/esm/cloud/identity/PlanPolicy.d.ts.map +1 -1
  204. package/dist/esm/cloud/identity/PlanPolicy.js +46 -6
  205. package/dist/esm/cloud/identity/PlanPolicy.js.map +1 -1
  206. package/dist/esm/cloud/identity/RateLimiter.d.ts +21 -1
  207. package/dist/esm/cloud/identity/RateLimiter.d.ts.map +1 -1
  208. package/dist/esm/cloud/identity/RateLimiter.js +57 -2
  209. package/dist/esm/cloud/identity/RateLimiter.js.map +1 -1
  210. package/dist/esm/cloud/identity/TenantResolver.d.ts +4 -1
  211. package/dist/esm/cloud/identity/TenantResolver.d.ts.map +1 -1
  212. package/dist/esm/cloud/identity/TenantResolver.js +1 -1
  213. package/dist/esm/cloud/identity/TenantResolver.js.map +1 -1
  214. package/dist/esm/cloud/identity/authenticateV2.d.ts.map +1 -1
  215. package/dist/esm/cloud/identity/authenticateV2.js +7 -4
  216. package/dist/esm/cloud/identity/authenticateV2.js.map +1 -1
  217. package/dist/esm/cloud/identity/identityStore.d.ts +85 -10
  218. package/dist/esm/cloud/identity/identityStore.d.ts.map +1 -1
  219. package/dist/esm/cloud/identity/identityStore.js +180 -1
  220. package/dist/esm/cloud/identity/identityStore.js.map +1 -1
  221. package/dist/esm/cloud/metering/PostgresLedgerStore.d.ts +16 -0
  222. package/dist/esm/cloud/metering/PostgresLedgerStore.d.ts.map +1 -0
  223. package/dist/esm/cloud/metering/PostgresLedgerStore.js +40 -0
  224. package/dist/esm/cloud/metering/PostgresLedgerStore.js.map +1 -0
  225. package/dist/esm/cloud/metering/UsageLedger.d.ts +37 -0
  226. package/dist/esm/cloud/metering/UsageLedger.d.ts.map +1 -1
  227. package/dist/esm/cloud/metering/UsageLedger.js +78 -16
  228. package/dist/esm/cloud/metering/UsageLedger.js.map +1 -1
  229. package/dist/esm/cloud/metering/index.d.ts +1 -0
  230. package/dist/esm/cloud/metering/index.d.ts.map +1 -1
  231. package/dist/esm/cloud/metering/index.js +1 -0
  232. package/dist/esm/cloud/metering/index.js.map +1 -1
  233. package/dist/esm/cloud/store/FileBrainStore.d.ts +1 -0
  234. package/dist/esm/cloud/store/FileBrainStore.d.ts.map +1 -1
  235. package/dist/esm/cloud/store/FileBrainStore.js +3 -0
  236. package/dist/esm/cloud/store/FileBrainStore.js.map +1 -1
  237. package/dist/esm/cloud/store/PostgresBrainStore.d.ts +1 -0
  238. package/dist/esm/cloud/store/PostgresBrainStore.d.ts.map +1 -1
  239. package/dist/esm/cloud/store/PostgresBrainStore.js +4 -0
  240. package/dist/esm/cloud/store/PostgresBrainStore.js.map +1 -1
  241. package/dist/esm/cloud/v2/app.d.ts.map +1 -1
  242. package/dist/esm/cloud/v2/app.js +6 -0
  243. package/dist/esm/cloud/v2/app.js.map +1 -1
  244. package/dist/esm/cloud/v2/inputGuard.d.ts +23 -0
  245. package/dist/esm/cloud/v2/inputGuard.d.ts.map +1 -0
  246. package/dist/esm/cloud/v2/inputGuard.js +63 -0
  247. package/dist/esm/cloud/v2/inputGuard.js.map +1 -0
  248. package/dist/esm/cloud/v2/routes/admin.d.ts +24 -0
  249. package/dist/esm/cloud/v2/routes/admin.d.ts.map +1 -0
  250. package/dist/esm/cloud/v2/routes/admin.js +322 -0
  251. package/dist/esm/cloud/v2/routes/admin.js.map +1 -0
  252. package/dist/esm/cloud/v2/routes/entitlement.d.ts +13 -0
  253. package/dist/esm/cloud/v2/routes/entitlement.d.ts.map +1 -0
  254. package/dist/esm/cloud/v2/routes/entitlement.js +21 -0
  255. package/dist/esm/cloud/v2/routes/entitlement.js.map +1 -0
  256. package/dist/esm/cloud/v2/routes/index.d.ts +14 -1
  257. package/dist/esm/cloud/v2/routes/index.d.ts.map +1 -1
  258. package/dist/esm/cloud/v2/routes/index.js +37 -1
  259. package/dist/esm/cloud/v2/routes/index.js.map +1 -1
  260. package/dist/esm/cloud/v2/routes/memories.d.ts +21 -2
  261. package/dist/esm/cloud/v2/routes/memories.d.ts.map +1 -1
  262. package/dist/esm/cloud/v2/routes/memories.js +75 -0
  263. package/dist/esm/cloud/v2/routes/memories.js.map +1 -1
  264. package/dist/esm/cloud/v2/routes/recall.d.ts +1 -0
  265. package/dist/esm/cloud/v2/routes/recall.d.ts.map +1 -1
  266. package/dist/esm/cloud/v2/routes/recall.js +5 -1
  267. package/dist/esm/cloud/v2/routes/recall.js.map +1 -1
  268. package/dist/esm/cloud/v2/routes/tenant.d.ts +35 -0
  269. package/dist/esm/cloud/v2/routes/tenant.d.ts.map +1 -0
  270. package/dist/esm/cloud/v2/routes/tenant.js +58 -0
  271. package/dist/esm/cloud/v2/routes/tenant.js.map +1 -0
  272. package/dist/esm/cloud/v2/routes/usage.d.ts +1 -1
  273. package/dist/esm/cloud/v2/routes/usage.d.ts.map +1 -1
  274. package/dist/esm/cloud/v2/routes/verify.d.ts +1 -0
  275. package/dist/esm/cloud/v2/routes/verify.d.ts.map +1 -1
  276. package/dist/esm/cloud/v2/routes/verify.js +5 -1
  277. package/dist/esm/cloud/v2/routes/verify.js.map +1 -1
  278. package/dist/esm/cloud/v2/server.d.ts +9 -3
  279. package/dist/esm/cloud/v2/server.d.ts.map +1 -1
  280. package/dist/esm/cloud/v2/server.js +36 -3
  281. package/dist/esm/cloud/v2/server.js.map +1 -1
  282. package/dist/esm/cloud/v2/usageRecorder.d.ts +19 -0
  283. package/dist/esm/cloud/v2/usageRecorder.d.ts.map +1 -0
  284. package/dist/esm/cloud/v2/usageRecorder.js +37 -0
  285. package/dist/esm/cloud/v2/usageRecorder.js.map +1 -0
  286. package/dist/esm/contracts/api-v2.types.d.ts +90 -2
  287. package/dist/esm/contracts/api-v2.types.d.ts.map +1 -1
  288. package/dist/esm/contracts/store.d.ts +2 -0
  289. package/dist/esm/contracts/store.d.ts.map +1 -1
  290. package/dist/esm/mcp/index.js +3 -0
  291. package/dist/esm/mcp/index.js.map +1 -1
  292. package/dist/esm/mcp/tools/memory.d.ts.map +1 -1
  293. package/dist/esm/mcp/tools/memory.js +104 -11
  294. package/dist/esm/mcp/tools/memory.js.map +1 -1
  295. package/dist/esm/mcp/tools.d.ts.map +1 -1
  296. package/dist/esm/mcp/tools.js.map +1 -1
  297. package/dist/esm/proxy/KeyManager.d.ts.map +1 -1
  298. package/dist/esm/proxy/KeyManager.js +5 -0
  299. package/dist/esm/proxy/KeyManager.js.map +1 -1
  300. package/dist/esm/subconscious/CloudBrain.d.ts +77 -0
  301. package/dist/esm/subconscious/CloudBrain.d.ts.map +1 -0
  302. package/dist/esm/subconscious/CloudBrain.js +330 -0
  303. package/dist/esm/subconscious/CloudBrain.js.map +1 -0
  304. package/dist/esm/subconscious/ProjectIdentity.d.ts +9 -0
  305. package/dist/esm/subconscious/ProjectIdentity.d.ts.map +1 -0
  306. package/dist/esm/subconscious/ProjectIdentity.js +56 -0
  307. package/dist/esm/subconscious/ProjectIdentity.js.map +1 -0
  308. package/dist/esm/subconscious/TeamBrain.d.ts +9 -3
  309. package/dist/esm/subconscious/TeamBrain.d.ts.map +1 -1
  310. package/dist/esm/subconscious/TeamBrain.js +39 -7
  311. package/dist/esm/subconscious/TeamBrain.js.map +1 -1
  312. package/dist/esm/subconscious/TheBrainV2.d.ts +7 -0
  313. package/dist/esm/subconscious/TheBrainV2.d.ts.map +1 -1
  314. package/dist/esm/subconscious/TheBrainV2.js +25 -0
  315. package/dist/esm/subconscious/TheBrainV2.js.map +1 -1
  316. package/dist/esm/utils/ProLicense.d.ts.map +1 -1
  317. package/dist/esm/utils/ProLicense.js +11 -3
  318. package/dist/esm/utils/ProLicense.js.map +1 -1
  319. package/dist/esm/utils/SessionCapture.d.ts +2 -0
  320. package/dist/esm/utils/SessionCapture.d.ts.map +1 -1
  321. package/dist/esm/utils/SessionCapture.js +5 -0
  322. package/dist/esm/utils/SessionCapture.js.map +1 -1
  323. package/dist/esm/utils/StopNudge.d.ts +8 -0
  324. package/dist/esm/utils/StopNudge.d.ts.map +1 -0
  325. package/dist/esm/utils/StopNudge.js +86 -0
  326. package/dist/esm/utils/StopNudge.js.map +1 -0
  327. package/lemma-proxy.cjs +5 -0
  328. package/package.json +2 -1
  329. package/sdks/crewai/dist/ts/src/client.d.ts +5 -1
  330. package/sdks/crewai/dist/ts/src/client.js +8 -0
  331. package/sdks/crewai/dist/ts/src/types.d.ts +32 -1
@@ -24,6 +24,42 @@ export interface MemoryClaim {
24
24
  symbolHashes?: Evidence['symbols'];
25
25
  symbolNormalizedHashes?: Evidence['symbolsNormalized'];
26
26
  }
27
+ /**
28
+ * Which repository a memory was written in. A tenant is a whole company and a company has many
29
+ * repos, but a memory's evidence is only relative paths, so without this a reader cannot tell
30
+ * whether `src/db.js` is its own file or another service's.
31
+ */
32
+ export interface ProjectRef {
33
+ /** Stable across machines for one repo (derived from its git remote). Compared, never displayed. */
34
+ id: string;
35
+ /** Short display name, e.g. the repo's name. Restricted to [A-Za-z0-9._-]: it is shown to other developers' agents. */
36
+ name?: string;
37
+ }
38
+ /** Who wrote a memory: the API key that stored it. Never the key material. */
39
+ export interface MemoryAuthor {
40
+ keyId: string;
41
+ keyName?: string;
42
+ }
43
+ /**
44
+ * What a reader gets back of a stored memory: the readable claims plus
45
+ * provenance. The freshness hashes stay server-side (see CreateMemoryResponse).
46
+ */
47
+ export interface MemoryView {
48
+ id: string;
49
+ claims: Array<{
50
+ id: string;
51
+ text: string;
52
+ /** Paths this claim is judged against (names only, never their hashes). */
53
+ files?: string[];
54
+ /** `path::symbol` keys this claim is judged against (names only). */
55
+ symbols?: string[];
56
+ }>;
57
+ createdAt: number;
58
+ author?: MemoryAuthor;
59
+ /** The repo it was written in; absent on memories stored before projects were recorded. */
60
+ project?: ProjectRef;
61
+ derivedFrom?: string[];
62
+ }
27
63
  /** A worker result inside /v2/recall or /v2/verify. */
28
64
  export interface VerifiedResult {
29
65
  id: string;
@@ -32,8 +68,8 @@ export interface VerifiedResult {
32
68
  staleFiles?: string[];
33
69
  /** Cosmetic-only changes ignored under semantic diff, when applicable. */
34
70
  cosmeticChanges?: string[];
35
- /** The original memory/claim payload, when the caller asked for it. */
36
- memory?: unknown;
71
+ /** The memory's readable content, present only when the request set `includeMemory`. */
72
+ memory?: MemoryView;
37
73
  }
38
74
  export interface CreateMemoryRequest {
39
75
  claims: Array<{
@@ -45,6 +81,8 @@ export interface CreateMemoryRequest {
45
81
  }>;
46
82
  }>;
47
83
  evidence: Evidence;
84
+ /** The repo this was learned in, so other repos' developers can tell it apart. */
85
+ project?: ProjectRef;
48
86
  /** Optional ids this memory was derived from (transitive freshness). */
49
87
  derivedFrom?: string[];
50
88
  }
@@ -57,6 +95,8 @@ export interface RecallRequest {
57
95
  /** The client's current evidence for the candidate set, if it has any. */
58
96
  currentEvidence?: Evidence;
59
97
  limit?: number;
98
+ /** Return each hit's readable content in `memory`. Default false. */
99
+ includeMemory?: boolean;
60
100
  }
61
101
  export interface RecallResponse {
62
102
  results: VerifiedResult[];
@@ -66,6 +106,8 @@ export interface VerifyRequest {
66
106
  /** Ids whose freshness to resolve. */
67
107
  ids: string[];
68
108
  currentEvidence: Evidence;
109
+ /** Return each found memory's readable content in `memory`. Default false. */
110
+ includeMemory?: boolean;
69
111
  }
70
112
  export interface VerifyResponse {
71
113
  results: VerifiedResult[];
@@ -94,6 +136,52 @@ export interface UsageStat {
94
136
  measurement: 'counted';
95
137
  value: number;
96
138
  }
139
+ /** What the presented key is entitled to. Read-only; the plan comes from the tenant, never from the caller. */
140
+ export interface EntitlementResponse {
141
+ tenantId: string;
142
+ plan: string;
143
+ /** True when a seat on this plan also unlocks the local Pro tools. */
144
+ includesPro: boolean;
145
+ /** Label of the presented key, when it has one. */
146
+ keyName?: string;
147
+ }
148
+ /** GET /v2/tenant: the tenant's plan, what it is allowed, what it has used and where it stands with billing. */
149
+ export interface TenantOverviewResponse {
150
+ tenantId: string;
151
+ name: string;
152
+ plan: string;
153
+ includesPro: boolean;
154
+ /** Every ceiling the plan declares. Only those named in `enforced` are actually applied by the API today. */
155
+ limits: {
156
+ activeMemories: number;
157
+ seats: number;
158
+ dailyRequests: number;
159
+ monthlyRequests: number;
160
+ };
161
+ enforced: Array<'seats' | 'dailyRequests' | 'monthlyRequests' | 'activeMemories'>;
162
+ usage: {
163
+ seats: number;
164
+ /** Requests counted against `dailyRequests` in the current window; null when the limiter cannot report it. */
165
+ requestsToday: number | null;
166
+ /** Epoch ms when the daily window resets. */
167
+ dailyResetsAt: number;
168
+ /** Requests counted against `monthlyRequests` in the current UTC calendar month; null when the limiter cannot report it. */
169
+ requestsThisMonth: number | null;
170
+ /** Epoch ms of the first instant of next UTC month, when the monthly count resets. */
171
+ monthlyResetsAt: number;
172
+ /** Memories held, counted against `activeMemories`; null when the store was not given to the overview. */
173
+ memories: number | null;
174
+ };
175
+ billing: {
176
+ /** Stripe's subscription status verbatim, or null when the tenant has never been billed through Stripe. */
177
+ status: string | null;
178
+ /** Epoch ms: next charge, or the end of service when the subscription is set to cancel. */
179
+ currentPeriodEnd: number | null;
180
+ /** Epoch ms of the first failed payment of the current late streak; null while paid up. */
181
+ pastDueSince: number | null;
182
+ };
183
+ upgradeUrl: string;
184
+ }
97
185
  export interface UsageResponse {
98
186
  /** Keyed by metric name → counted value. */
99
187
  metrics: Record<string, UsageStat>;
@@ -1 +1 @@
1
- {"version":3,"file":"api-v2.types.d.ts","sourceRoot":"","sources":["../../../src/contracts/api-v2.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C;;;;;;;;;GASG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,OAAO,GAAG,YAAY,GAAG,cAAc,CAAC;AAE5E,iDAAiD;AACjD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC/B,YAAY,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IACnC,sBAAsB,CAAC,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;CACxD;AAED,uDAAuD;AACvD,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,WAAW,CAAC;IACnB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,0EAA0E;IAC1E,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,uEAAuE;IACvE,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC,CAAC;IACjH,QAAQ,EAAE,QAAQ,CAAC;IACnB,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,0EAA0E;IAC1E,eAAe,CAAC,EAAE,QAAQ,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,sCAAsC;IACtC,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,eAAe,EAAE,QAAQ,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAED,iCAAiC;AACjC,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED,sFAAsF;AACtF,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,SAAS,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACnC,yEAAyE;IACzE,cAAc,EAAE,MAAM,CAAC;CACxB"}
1
+ {"version":3,"file":"api-v2.types.d.ts","sourceRoot":"","sources":["../../../src/contracts/api-v2.types.ts"],"names":[],"mappings":"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"}
@@ -26,5 +26,7 @@ export interface BrainStore {
26
26
  listByIds(tenantId: string, ids: string[]): Promise<Map<string, unknown>>;
27
27
  /** Hard delete (forget), scoped to the tenant. */
28
28
  delete(tenantId: string, id: string): Promise<boolean>;
29
+ /** How many memories the tenant holds (what the plan's activeMemories ceiling is measured against). */
30
+ count(tenantId: string): Promise<number>;
29
31
  }
30
32
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/contracts/store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,UAAU;IACzB,yDAAyD;IACzD,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAExD,gFAAgF;IAChF,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAE3D;;;OAGG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAEvF,iFAAiF;IACjF,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAE1E,kDAAkD;IAClD,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACxD"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/contracts/store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,UAAU;IACzB,yDAAyD;IACzD,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAExD,gFAAgF;IAChF,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAE3D;;;OAGG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAEvF,iFAAiF;IACjF,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAE1E,kDAAkD;IAClD,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvD,uGAAuG;IACvG,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC1C"}
@@ -16,6 +16,7 @@ import { getProxyPort, sanitizeArgsForLogging, logWarn } from "./utils.js";
16
16
  import { registerMcpProcess } from "./staleBuild.js";
17
17
  import { repairClaudeHooks } from "../cli/hostHooks.js";
18
18
  import { ensureLemmaIgnored } from "../utils/LocalExclude.js";
19
+ import { startEntitlementRefresh } from "../cloud/CloudEntitlement.js";
19
20
  const SERVER_VERSION = "1.0.0";
20
21
  /** Must stay well under the proxy's OFFLINE_AFTER_MS (src/proxy/ProjectRegistry.ts). */
21
22
  const MCP_HEARTBEAT_MS = 30000;
@@ -104,6 +105,8 @@ class LemmaMcpServer {
104
105
  console.error("Lemma MCP Server running on stdio");
105
106
  registerMcpProcess();
106
107
  this.repairHostHooks();
108
+ // A seat on a paid Cloud plan includes Pro; keep that answer fresh. No-op while Cloud is not configured.
109
+ startEntitlementRefresh();
107
110
  await this.registerWithProxy();
108
111
  // The session overhead is charged on the first tools/list (see setupToolsHandlers), not
109
112
  // here: connecting alone doesn't put the prompt or the schemas in front of any model.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/memory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAShE,eAAO,MAAM,uBAAuB,EAAE,cAAc,EAyVnD,CAAC;AAyUF;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAOvD;AAgoBD,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAiB5D,CAAC"}
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/memory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmBH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAShE,eAAO,MAAM,uBAAuB,EAAE,cAAc,EA4WnD,CAAC;AAyVF;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAOvD;AAwrBD,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAkB5D,CAAC"}
@@ -19,6 +19,7 @@ import { staleDelta } from "../../utils/StaleDelta.js";
19
19
  import { isMachineHandoff, withAgentNote } from "../../utils/SessionCapture.js";
20
20
  import { sanitizeRefs, describeRef, checkExternalRefs } from "../../subconscious/ExternalRefs.js";
21
21
  import { pushTeamBrain, pullTeamBrain, teamBrainStatus } from "../../subconscious/TeamBrain.js";
22
+ import { autoShareEnabled, cloudClient, cloudProblem, cloudSearchSection, shareEntry, unshareEntry } from "../../subconscious/CloudBrain.js";
22
23
  const REFS_SCHEMA = {
23
24
  type: "array",
24
25
  items: { type: "object" },
@@ -154,13 +155,20 @@ export const MEMORY_TOOL_DEFINITIONS = [
154
155
  {
155
156
  name: "update_memory",
156
157
  annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: false },
157
- description: "Rewrite a memory in place, keeping its id, hits, downvotes and derivedFrom edges — the way to correct or extend one (store_memory mints a new id). get_memory first, then pass the whole new body; omitted fields are kept. Evidence is re-anchored like refresh_memory, so call it only once the new content is true.",
158
+ description: "Edit a memory in place, keeping id, hits, downvotes and derivedFrom (store_memory mints a new id). append extends it, patch fixes one passage, response rewrites it whole (get_memory first). Omitted fields are kept. Evidence is re-anchored like refresh_memory: call it only once the new content is true.",
158
159
  inputSchema: {
159
160
  type: "object",
160
161
  properties: {
161
162
  id: { type: "string", description: "Memory id." },
162
163
  query: { type: "string", description: "Replacement key; omit to keep." },
163
164
  response: { type: "string", description: "Complete replacement text, not a diff." },
165
+ append: { type: "string", description: "Added after the stored body. Alone." },
166
+ patch: {
167
+ type: "object",
168
+ properties: { find: { type: "string" }, replace: { type: "string" } },
169
+ required: ["find", "replace"],
170
+ description: "Exact passage swap; find must occur once. Alone.",
171
+ },
164
172
  filePaths: { type: "array", items: { type: "string" }, description: "Files the new content depends on, replacing the tracked set; omit to re-hash the current set." },
165
173
  symbols: {
166
174
  type: "array",
@@ -198,7 +206,7 @@ export const MEMORY_TOOL_DEFINITIONS = [
198
206
  refs: { type: "array", items: { type: "object" }, description: "Replacement refs (store_memory shape); [] clears." },
199
207
  domain: { type: "string", description: "Replacement domain; '' clears." },
200
208
  derivedFrom: { type: "array", items: { type: "string" }, description: "Replacement upstream ids; [] clears." },
201
- supersededBy: { type: "string", description: "Id of the memory that replaces this one; excludes it from search_memory (get_memory still works and points to the successor). Use when two memories contradict. '' un-supersedes." },
209
+ supersededBy: { type: "string", description: "Id of the memory replacing this one (hidden from search_memory); for contradictions. '' undoes." },
202
210
  },
203
211
  required: ["id"],
204
212
  },
@@ -369,6 +377,18 @@ export const MEMORY_TOOL_DEFINITIONS = [
369
377
  required: ["path"],
370
378
  },
371
379
  },
380
+ {
381
+ name: "cloud_push",
382
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: true },
383
+ description: "Share one memory with your team's Brain on Lemma Cloud (needs LEMMA_CLOUD_URL and LEMMA_CLOUD_KEY). Only a fresh, tracked memory is shared; teammates then find it in search_memory with its state proven against their own checkout. Sharing it again replaces the earlier shared version; forget_memory retracts it.",
384
+ inputSchema: {
385
+ type: "object",
386
+ properties: {
387
+ id: { type: "string", description: "The memory's id, from a search_memory or store_memory result." },
388
+ },
389
+ required: ["id"],
390
+ },
391
+ },
372
392
  ];
373
393
  /**
374
394
  * Ids the last search_memory calls put on a shortlist. A get_memory of one of them is the
@@ -436,7 +456,12 @@ async function handleSearchMemory(args) {
436
456
  ? `scored at or above the ${minSimilarity} floor you set`
437
457
  : "shares a term with this query — nothing was learned about it in an earlier session";
438
458
  recordReceiptEvent("reasoning", query.substring(0, 100), { tool: "search_memory", reason: `no memory ${why}` });
439
- return { content: [{ type: "text", text: `No memory in Lemma's Brain ${why}. Investigate from scratch.` }] };
459
+ // Lemma Cloud: the team may know what this checkout has never seen (no-op when not configured).
460
+ const teamOnly = await cloudSearchSection(query);
461
+ if (teamOnly.startsWith("Team Brain (Lemma Cloud) — ")) {
462
+ return { content: [{ type: "text", text: `No memory in your local Brain ${why}, but your team's does:\n\n${teamOnly}` }] };
463
+ }
464
+ return { content: [{ type: "text", text: `No memory in Lemma's Brain ${why}. Investigate from scratch.${teamOnly ? `\n\n${teamOnly}` : ""}` }] };
440
465
  }
441
466
  for (const r of results)
442
467
  _shortlisted.add(r.id);
@@ -464,7 +489,8 @@ async function handleSearchMemory(args) {
464
489
  `${results.map(line).join("\n\n")}\n\n` +
465
490
  (hidden > 0 ? `(${hidden} lower-ranked ${hidden === 1 ? "candidate" : "candidates"} not shown — pass limit: ${candidates.length} to see ${hidden === 1 ? "it" : "them"}.)\n\n` : "") +
466
491
  `If one answers your question, get_memory <id> for the full body before relying on it (a STALE one must be re-checked against the current code; a FAILED one is a warning, not a suggestion). If none does, investigate from scratch. A memory that turns out wrong: downvote_memory or forget_memory it.`;
467
- return { content: [{ type: "text", text }] };
492
+ const team = await cloudSearchSection(query);
493
+ return { content: [{ type: "text", text: team ? `${text}\n\n${team}` : text }] };
468
494
  }
469
495
  catch (e) {
470
496
  logError("search_memory", e);
@@ -594,6 +620,10 @@ async function handleUpdateMemory(args) {
594
620
  throw new Error("id is required");
595
621
  const query = typeof args?.query === "string" ? args.query : undefined;
596
622
  const response = typeof args?.response === "string" ? args.response : undefined;
623
+ const append = typeof args?.append === "string" && args.append.length > 0 ? args.append : undefined;
624
+ const patch = args?.patch && typeof args.patch.find === "string" && typeof args.patch.replace === "string"
625
+ ? { find: args.patch.find, replace: args.patch.replace }
626
+ : undefined;
597
627
  const filePaths = Array.isArray(args?.filePaths) ? args.filePaths.filter((p) => typeof p === "string" && p) : undefined;
598
628
  const symbols = Array.isArray(args?.symbols)
599
629
  ? args.symbols.filter((sym) => sym?.filePath && sym?.symbolName)
@@ -608,7 +638,7 @@ async function handleUpdateMemory(args) {
608
638
  : undefined;
609
639
  const supersededBy = typeof args?.supersededBy === "string" ? args.supersededBy : undefined;
610
640
  const refs = Array.isArray(args?.refs) ? sanitizeRefs(args.refs) : undefined;
611
- if (query === undefined && response === undefined && filePaths === undefined && symbols === undefined &&
641
+ if (query === undefined && response === undefined && append === undefined && patch === undefined && filePaths === undefined && symbols === undefined &&
612
642
  claims === undefined && outcome === undefined && domain === undefined && derivedFrom === undefined &&
613
643
  supersededBy === undefined && refs === undefined) {
614
644
  return {
@@ -621,7 +651,7 @@ async function handleUpdateMemory(args) {
621
651
  try {
622
652
  // Refs alone must not re-anchor the entry's file hashes (update() would): attaching "also
623
653
  // depends on MR !1061" is not an assertion that the tracked code was re-checked.
624
- const refsOnly = refs !== undefined && query === undefined && response === undefined && filePaths === undefined &&
654
+ const refsOnly = refs !== undefined && query === undefined && response === undefined && append === undefined && patch === undefined && filePaths === undefined &&
625
655
  symbols === undefined && claims === undefined && outcome === undefined && domain === undefined &&
626
656
  derivedFrom === undefined && supersededBy === undefined;
627
657
  if (refsOnly) {
@@ -634,18 +664,24 @@ async function handleUpdateMemory(args) {
634
664
  let trackSymbols = symbols;
635
665
  if (filePaths && filePaths.length > 0 && !symbols) {
636
666
  const current = getBrain().getEntry(id);
637
- const narrowed = narrowEvidence(filePaths, `${query ?? current?.query ?? ""}\n${response ?? current?.response ?? ""}`);
667
+ const narrowed = narrowEvidence(filePaths, `${query ?? current?.query ?? ""}\n${response ?? current?.response ?? ""}\n${append ?? ""}`);
638
668
  if (narrowed.symbols.length > 0) {
639
669
  trackFiles = narrowed.filePaths;
640
670
  trackSymbols = narrowed.symbols;
641
671
  }
642
672
  }
643
673
  // An automatic hand-off keeps what Lemma captured: the agent's text is added under it, not over it.
644
- const target = response !== undefined ? getBrain().getEntry(id) : undefined;
674
+ const agentText = response ?? append;
675
+ const target = agentText !== undefined || patch !== undefined ? getBrain().getEntry(id) : undefined;
645
676
  const keepsHandoff = !!target && entrySource(target) === "auto-handoff" && isMachineHandoff(target.response);
677
+ if (keepsHandoff && patch !== undefined) {
678
+ return { content: [{ type: "text", text: `"${id}" is an automatic hand-off: Lemma owns its text, so patch is refused. Use append (or response) to add your note.` }] };
679
+ }
646
680
  const result = getBrain().update(id, {
647
681
  query,
648
- response: keepsHandoff ? withAgentNote(target.response, response) : response,
682
+ response: keepsHandoff && agentText !== undefined ? withAgentNote(target.response, agentText) : response,
683
+ append: keepsHandoff ? undefined : append,
684
+ patch,
649
685
  filePaths: trackFiles, symbols: trackSymbols, claims, outcome, domain, derivedFrom, supersededBy, refs,
650
686
  });
651
687
  if (!result.ok)
@@ -739,6 +775,12 @@ async function handleStoreMemory(args) {
739
775
  try {
740
776
  const brain = getBrain();
741
777
  const storeRes = brain.store(query, responseText, provider, 0.92, filePaths, undefined, outcome, symbols, claims, domain, derivedFrom, { source: "manual" });
778
+ // Nothing was written. Saying "Success" here sent agents looking for a way around the guard
779
+ // instead of extending the memory that already says this.
780
+ if (!storeRes.stored && storeRes.duplicate) {
781
+ const dup = storeRes.duplicate;
782
+ return { content: [{ type: "text", text: `Not stored: ${storeRes.reason} — memory ${dup.id} ("${String(dup.query).substring(0, 120)}") already covers this. To add to it without rewriting it: update_memory(id="${dup.id}", append="…"); to fix one passage: patch={find, replace}. get_memory ${dup.id} first only if you need to read it.` }] };
783
+ }
742
784
  if (refs.length > 0 && storeRes.id)
743
785
  brain.setRefs(storeRes.id, refs);
744
786
  // Storing a memory saves nothing — it only creates the chance of a saving later.
@@ -790,7 +832,18 @@ async function handleStoreMemory(args) {
790
832
  const scrubNote = storeRes.redactions > 0
791
833
  ? ` 🛡 ${storeRes.redactions} secret(s) redacted before storage — credentials are never persisted, only their placeholders.`
792
834
  : "";
793
- return { content: [{ type: "text", text: `Success: Memory stored${idNote}. ${storeRes.reason}${trackingNote}${symbolNote}${autoEvidenceNote}${outcomeNote}${claimsNote}${domainNote}${refsNote}${derivedFromNote}${conflictsNote}${narrowedNote}${textConflictsNote}${scrubNote}${logbookNote}` }] };
835
+ // Lemma Cloud, opt-in (LEMMA_CLOUD_AUTOSHARE=1): the memory also goes to the team's Brain. The local
836
+ // write has already succeeded; a Cloud failure is reported, never turned into a failed store.
837
+ let cloudNote = "";
838
+ const shareClient = storeRes.id && autoShareEnabled() ? cloudClient() : null;
839
+ if (shareClient && storeRes.id) {
840
+ const entry = brain.getEntry(storeRes.id);
841
+ const shared = entry ? await shareEntry(entry, process.cwd(), shareClient) : { shared: false, reason: "the entry could not be read back" };
842
+ cloudNote = shared.shared
843
+ ? ` ☁ Shared with your team's Brain (cloud id ${shared.cloudId}).`
844
+ : ` ☁ Not shared with your team: ${shared.reason}.`;
845
+ }
846
+ return { content: [{ type: "text", text: `Success: Memory stored${idNote}. ${storeRes.reason}${trackingNote}${symbolNote}${autoEvidenceNote}${outcomeNote}${claimsNote}${domainNote}${refsNote}${derivedFromNote}${conflictsNote}${narrowedNote}${textConflictsNote}${scrubNote}${cloudNote}${logbookNote}` }] };
794
847
  }
795
848
  catch (e) {
796
849
  logError("store_memory", e);
@@ -839,10 +892,18 @@ async function handleForgetMemory(args) {
839
892
  const archiveNote = result.archivePath
840
893
  ? `\n\nMoved to the trash (${result.archivePath}) — restore it with brain_trash action=restore, or roll the whole corpus back with action=restore-snapshot. The id stays deleted (brain_import will not resurrect it).`
841
894
  : `\n\nThe Brain's trash file could not be written, so the text above is the only remaining copy.`;
895
+ // A memory this checkout shared to Lemma Cloud is retracted from the team too (no-op if it never was).
896
+ const retractClient = cloudClient();
897
+ const retract = retractClient ? await unshareEntry(id, process.cwd(), retractClient) : null;
898
+ const cloudNote = retract?.retracted
899
+ ? "\n\n☁ Also retracted from your team's Brain."
900
+ : retract?.reason
901
+ ? `\n\n☁ Could not retract it from your team's Brain: ${retract.reason}. It is still shared; run forget_memory again when Cloud is reachable.`
902
+ : "";
842
903
  return {
843
904
  content: [{
844
905
  type: "text",
845
- text: `${result.message}\n\nDeleted content, for the record (nothing else can recover it):\n stored: ${result.forgotten.timestamp}\n reused: ${result.forgotten.hits} time(s)\n query: ${result.forgotten.query}\n response:\n${result.forgotten.response}${archiveNote}`,
906
+ text: `${result.message}\n\nDeleted content, for the record (nothing else can recover it):\n stored: ${result.forgotten.timestamp}\n reused: ${result.forgotten.hits} time(s)\n query: ${result.forgotten.query}\n response:\n${result.forgotten.response}${archiveNote}${cloudNote}`,
846
907
  }],
847
908
  };
848
909
  }
@@ -1299,6 +1360,37 @@ async function handleListMemories(args) {
1299
1360
  * (SIGKILL, a crash, a fast stdin close) lost the memory while the reply said "stored". Tools that
1300
1361
  * change what the Brain knows flush before they answer; flushSync is a no-op when nothing is dirty.
1301
1362
  */
1363
+ /** Share one memory with the team's Brain on Lemma Cloud. Explicit counterpart of LEMMA_CLOUD_AUTOSHARE. */
1364
+ async function handleCloudPush(args) {
1365
+ const id = args?.id;
1366
+ if (!id)
1367
+ throw new Error("id is required");
1368
+ const client = cloudClient();
1369
+ if (!client) {
1370
+ const problem = cloudProblem();
1371
+ return { content: [{ type: "text", text: problem ?? "Lemma Cloud is not configured here. Set LEMMA_CLOUD_URL and LEMMA_CLOUD_KEY in the environment of the MCP server, then reconnect." }] };
1372
+ }
1373
+ try {
1374
+ const brain = getBrain();
1375
+ const entry = brain.getEntry(id);
1376
+ if (!entry)
1377
+ return { content: [{ type: "text", text: `No memory with id "${id}" in the Brain — nothing to share.` }] };
1378
+ // Only what is true here is worth telling the team: a stale memory would arrive as someone's fact.
1379
+ const state = brain.verifyByIds([id])[0]?.status;
1380
+ if (state !== "fresh") {
1381
+ return { content: [{ type: "text", text: `Not shared: memory ${id} is ${state} here. Re-check it, then refresh_memory (or update_memory) before sharing, so the team does not inherit something that no longer holds.` }] };
1382
+ }
1383
+ const shared = await shareEntry(entry, process.cwd(), client);
1384
+ const text = shared.shared
1385
+ ? `Shared with your team's Brain (cloud id ${shared.cloudId})${shared.replaced ? "; the previous shared version was replaced" : ""}. Teammates see it in search_memory, with its state proven against their own checkout.`
1386
+ : `Not shared: ${shared.reason}.`;
1387
+ return { content: [{ type: "text", text }] };
1388
+ }
1389
+ catch (e) {
1390
+ logError("cloud_push", e);
1391
+ return { content: [{ type: "text", text: `Failed to share memory: ${e.message}` }], isError: true };
1392
+ }
1393
+ }
1302
1394
  function durably(handler) {
1303
1395
  const wrapped = async (args, ...rest) => {
1304
1396
  const result = await handler(args, ...rest);
@@ -1332,5 +1424,6 @@ export const MEMORY_TOOL_HANDLERS = {
1332
1424
  brain_trash: durably(handleBrainTrash),
1333
1425
  brain_upkeep: durably(handleBrainUpkeep),
1334
1426
  brain_merge: durably(handleBrainMerge),
1427
+ cloud_push: handleCloudPush,
1335
1428
  };
1336
1429
  //# sourceMappingURL=memory.js.map