@nxuss/lemma 1.43.0 → 1.45.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 (388) hide show
  1. package/README.md +26 -8
  2. package/bin/brain-ingest.js +48 -13
  3. package/bin/cloud.js +228 -0
  4. package/dist/cjs/cli/hostHooks.d.ts +44 -7
  5. package/dist/cjs/cli/hostHooks.d.ts.map +1 -1
  6. package/dist/cjs/cli/hostHooks.js +201 -11
  7. package/dist/cjs/cli/hostHooks.js.map +1 -1
  8. package/dist/cjs/cli/lemma-proxy.d.ts.map +1 -1
  9. package/dist/cjs/cli/lemma-proxy.js +13 -16
  10. package/dist/cjs/cli/lemma-proxy.js.map +1 -1
  11. package/dist/cjs/cloud/CloudBrainClient.d.ts +52 -0
  12. package/dist/cjs/cloud/CloudBrainClient.d.ts.map +1 -0
  13. package/dist/cjs/cloud/CloudBrainClient.js +161 -0
  14. package/dist/cjs/cloud/CloudBrainClient.js.map +1 -0
  15. package/dist/cjs/cloud/CloudConfig.d.ts +41 -0
  16. package/dist/cjs/cloud/CloudConfig.d.ts.map +1 -0
  17. package/dist/cjs/cloud/CloudConfig.js +133 -0
  18. package/dist/cjs/cloud/CloudConfig.js.map +1 -0
  19. package/dist/cjs/cloud/CloudEntitlement.d.ts +55 -0
  20. package/dist/cjs/cloud/CloudEntitlement.d.ts.map +1 -0
  21. package/dist/cjs/cloud/CloudEntitlement.js +174 -0
  22. package/dist/cjs/cloud/CloudEntitlement.js.map +1 -0
  23. package/dist/cjs/cloud/billing/stripeApi.d.ts +43 -0
  24. package/dist/cjs/cloud/billing/stripeApi.d.ts.map +1 -0
  25. package/dist/cjs/cloud/billing/stripeApi.js +116 -0
  26. package/dist/cjs/cloud/billing/stripeApi.js.map +1 -0
  27. package/dist/cjs/cloud/billing/stripeWebhook.d.ts +35 -0
  28. package/dist/cjs/cloud/billing/stripeWebhook.d.ts.map +1 -0
  29. package/dist/cjs/cloud/billing/stripeWebhook.js +190 -0
  30. package/dist/cjs/cloud/billing/stripeWebhook.js.map +1 -0
  31. package/dist/cjs/cloud/console/ConsoleStore.d.ts +111 -0
  32. package/dist/cjs/cloud/console/ConsoleStore.d.ts.map +1 -0
  33. package/dist/cjs/cloud/console/ConsoleStore.js +172 -0
  34. package/dist/cjs/cloud/console/ConsoleStore.js.map +1 -0
  35. package/dist/cjs/cloud/console/consoleRouter.d.ts +68 -0
  36. package/dist/cjs/cloud/console/consoleRouter.d.ts.map +1 -0
  37. package/dist/cjs/cloud/console/consoleRouter.js +301 -0
  38. package/dist/cjs/cloud/console/consoleRouter.js.map +1 -0
  39. package/dist/cjs/cloud/console/mailer.d.ts +22 -0
  40. package/dist/cjs/cloud/console/mailer.d.ts.map +1 -0
  41. package/dist/cjs/cloud/console/mailer.js +35 -0
  42. package/dist/cjs/cloud/console/mailer.js.map +1 -0
  43. package/dist/cjs/cloud/identity/PlanPolicy.d.ts +42 -6
  44. package/dist/cjs/cloud/identity/PlanPolicy.d.ts.map +1 -1
  45. package/dist/cjs/cloud/identity/PlanPolicy.js +102 -22
  46. package/dist/cjs/cloud/identity/PlanPolicy.js.map +1 -1
  47. package/dist/cjs/cloud/identity/RateLimiter.d.ts +21 -1
  48. package/dist/cjs/cloud/identity/RateLimiter.d.ts.map +1 -1
  49. package/dist/cjs/cloud/identity/RateLimiter.js +59 -2
  50. package/dist/cjs/cloud/identity/RateLimiter.js.map +1 -1
  51. package/dist/cjs/cloud/identity/TenantResolver.d.ts +6 -1
  52. package/dist/cjs/cloud/identity/TenantResolver.d.ts.map +1 -1
  53. package/dist/cjs/cloud/identity/TenantResolver.js +1 -1
  54. package/dist/cjs/cloud/identity/TenantResolver.js.map +1 -1
  55. package/dist/cjs/cloud/identity/authenticateV2.d.ts.map +1 -1
  56. package/dist/cjs/cloud/identity/authenticateV2.js +7 -4
  57. package/dist/cjs/cloud/identity/authenticateV2.js.map +1 -1
  58. package/dist/cjs/cloud/identity/identityStore.d.ts +96 -10
  59. package/dist/cjs/cloud/identity/identityStore.d.ts.map +1 -1
  60. package/dist/cjs/cloud/identity/identityStore.js +203 -4
  61. package/dist/cjs/cloud/identity/identityStore.js.map +1 -1
  62. package/dist/cjs/cloud/metering/PostgresLedgerStore.d.ts +18 -0
  63. package/dist/cjs/cloud/metering/PostgresLedgerStore.d.ts.map +1 -0
  64. package/dist/cjs/cloud/metering/PostgresLedgerStore.js +56 -0
  65. package/dist/cjs/cloud/metering/PostgresLedgerStore.js.map +1 -0
  66. package/dist/cjs/cloud/metering/UsageLedger.d.ts +74 -0
  67. package/dist/cjs/cloud/metering/UsageLedger.d.ts.map +1 -1
  68. package/dist/cjs/cloud/metering/UsageLedger.js +122 -17
  69. package/dist/cjs/cloud/metering/UsageLedger.js.map +1 -1
  70. package/dist/cjs/cloud/metering/index.d.ts +1 -0
  71. package/dist/cjs/cloud/metering/index.d.ts.map +1 -1
  72. package/dist/cjs/cloud/metering/index.js +1 -0
  73. package/dist/cjs/cloud/metering/index.js.map +1 -1
  74. package/dist/cjs/cloud/store/FileBrainStore.d.ts +6 -1
  75. package/dist/cjs/cloud/store/FileBrainStore.d.ts.map +1 -1
  76. package/dist/cjs/cloud/store/FileBrainStore.js +8 -0
  77. package/dist/cjs/cloud/store/FileBrainStore.js.map +1 -1
  78. package/dist/cjs/cloud/store/PostgresBrainStore.d.ts +11 -1
  79. package/dist/cjs/cloud/store/PostgresBrainStore.d.ts.map +1 -1
  80. package/dist/cjs/cloud/store/PostgresBrainStore.js +32 -0
  81. package/dist/cjs/cloud/store/PostgresBrainStore.js.map +1 -1
  82. package/dist/cjs/cloud/store/memorySummary.d.ts +29 -0
  83. package/dist/cjs/cloud/store/memorySummary.d.ts.map +1 -0
  84. package/dist/cjs/cloud/store/memorySummary.js +66 -0
  85. package/dist/cjs/cloud/store/memorySummary.js.map +1 -0
  86. package/dist/cjs/cloud/v2/app.d.ts.map +1 -1
  87. package/dist/cjs/cloud/v2/app.js +6 -0
  88. package/dist/cjs/cloud/v2/app.js.map +1 -1
  89. package/dist/cjs/cloud/v2/inputGuard.d.ts +23 -0
  90. package/dist/cjs/cloud/v2/inputGuard.d.ts.map +1 -0
  91. package/dist/cjs/cloud/v2/inputGuard.js +71 -0
  92. package/dist/cjs/cloud/v2/inputGuard.js.map +1 -0
  93. package/dist/cjs/cloud/v2/routes/admin.d.ts +24 -0
  94. package/dist/cjs/cloud/v2/routes/admin.d.ts.map +1 -0
  95. package/dist/cjs/cloud/v2/routes/admin.js +344 -0
  96. package/dist/cjs/cloud/v2/routes/admin.js.map +1 -0
  97. package/dist/cjs/cloud/v2/routes/entitlement.d.ts +13 -0
  98. package/dist/cjs/cloud/v2/routes/entitlement.d.ts.map +1 -0
  99. package/dist/cjs/cloud/v2/routes/entitlement.js +24 -0
  100. package/dist/cjs/cloud/v2/routes/entitlement.js.map +1 -0
  101. package/dist/cjs/cloud/v2/routes/index.d.ts +14 -1
  102. package/dist/cjs/cloud/v2/routes/index.d.ts.map +1 -1
  103. package/dist/cjs/cloud/v2/routes/index.js +36 -0
  104. package/dist/cjs/cloud/v2/routes/index.js.map +1 -1
  105. package/dist/cjs/cloud/v2/routes/memories.d.ts +21 -2
  106. package/dist/cjs/cloud/v2/routes/memories.d.ts.map +1 -1
  107. package/dist/cjs/cloud/v2/routes/memories.js +77 -0
  108. package/dist/cjs/cloud/v2/routes/memories.js.map +1 -1
  109. package/dist/cjs/cloud/v2/routes/recall.d.ts +1 -0
  110. package/dist/cjs/cloud/v2/routes/recall.d.ts.map +1 -1
  111. package/dist/cjs/cloud/v2/routes/recall.js +4 -0
  112. package/dist/cjs/cloud/v2/routes/recall.js.map +1 -1
  113. package/dist/cjs/cloud/v2/routes/tenant.d.ts +36 -0
  114. package/dist/cjs/cloud/v2/routes/tenant.d.ts.map +1 -0
  115. package/dist/cjs/cloud/v2/routes/tenant.js +65 -0
  116. package/dist/cjs/cloud/v2/routes/tenant.js.map +1 -0
  117. package/dist/cjs/cloud/v2/routes/usage.d.ts +1 -1
  118. package/dist/cjs/cloud/v2/routes/usage.d.ts.map +1 -1
  119. package/dist/cjs/cloud/v2/routes/verify.d.ts +1 -0
  120. package/dist/cjs/cloud/v2/routes/verify.d.ts.map +1 -1
  121. package/dist/cjs/cloud/v2/routes/verify.js +4 -0
  122. package/dist/cjs/cloud/v2/routes/verify.js.map +1 -1
  123. package/dist/cjs/cloud/v2/server.d.ts +9 -3
  124. package/dist/cjs/cloud/v2/server.d.ts.map +1 -1
  125. package/dist/cjs/cloud/v2/server.js +36 -2
  126. package/dist/cjs/cloud/v2/server.js.map +1 -1
  127. package/dist/cjs/cloud/v2/usageRecorder.d.ts +19 -0
  128. package/dist/cjs/cloud/v2/usageRecorder.d.ts.map +1 -0
  129. package/dist/cjs/cloud/v2/usageRecorder.js +42 -0
  130. package/dist/cjs/cloud/v2/usageRecorder.js.map +1 -0
  131. package/dist/cjs/contracts/api-v2.types.d.ts +92 -2
  132. package/dist/cjs/contracts/api-v2.types.d.ts.map +1 -1
  133. package/dist/cjs/contracts/store.d.ts +37 -0
  134. package/dist/cjs/contracts/store.d.ts.map +1 -1
  135. package/dist/cjs/mcp/index.js +7 -1
  136. package/dist/cjs/mcp/index.js.map +1 -1
  137. package/dist/cjs/mcp/tools/memory.d.ts.map +1 -1
  138. package/dist/cjs/mcp/tools/memory.js +74 -4
  139. package/dist/cjs/mcp/tools/memory.js.map +1 -1
  140. package/dist/cjs/mcp/tools/misc.d.ts.map +1 -1
  141. package/dist/cjs/mcp/tools/misc.js +2 -1
  142. package/dist/cjs/mcp/tools/misc.js.map +1 -1
  143. package/dist/cjs/mcp/tools/workspace.d.ts.map +1 -1
  144. package/dist/cjs/mcp/tools/workspace.js +4 -1
  145. package/dist/cjs/mcp/tools/workspace.js.map +1 -1
  146. package/dist/cjs/mcp/tools.d.ts +10 -0
  147. package/dist/cjs/mcp/tools.d.ts.map +1 -1
  148. package/dist/cjs/mcp/tools.js +47 -12
  149. package/dist/cjs/mcp/tools.js.map +1 -1
  150. package/dist/cjs/proxy/KeyManager.d.ts.map +1 -1
  151. package/dist/cjs/proxy/KeyManager.js +5 -0
  152. package/dist/cjs/proxy/KeyManager.js.map +1 -1
  153. package/dist/cjs/subconscious/CloudBrain.d.ts +77 -0
  154. package/dist/cjs/subconscious/CloudBrain.d.ts.map +1 -0
  155. package/dist/cjs/subconscious/CloudBrain.js +347 -0
  156. package/dist/cjs/subconscious/CloudBrain.js.map +1 -0
  157. package/dist/cjs/subconscious/HostRecall.d.ts.map +1 -1
  158. package/dist/cjs/subconscious/HostRecall.js +11 -4
  159. package/dist/cjs/subconscious/HostRecall.js.map +1 -1
  160. package/dist/cjs/subconscious/ProjectIdentity.d.ts +9 -0
  161. package/dist/cjs/subconscious/ProjectIdentity.d.ts.map +1 -0
  162. package/dist/cjs/subconscious/ProjectIdentity.js +63 -0
  163. package/dist/cjs/subconscious/ProjectIdentity.js.map +1 -0
  164. package/dist/cjs/subconscious/TeamBrain.d.ts +9 -3
  165. package/dist/cjs/subconscious/TeamBrain.d.ts.map +1 -1
  166. package/dist/cjs/subconscious/TeamBrain.js +39 -5
  167. package/dist/cjs/subconscious/TeamBrain.js.map +1 -1
  168. package/dist/cjs/utils/FixCapture.d.ts +7 -5
  169. package/dist/cjs/utils/FixCapture.d.ts.map +1 -1
  170. package/dist/cjs/utils/FixCapture.js +64 -32
  171. package/dist/cjs/utils/FixCapture.js.map +1 -1
  172. package/dist/cjs/utils/NoTerminal.d.ts +27 -0
  173. package/dist/cjs/utils/NoTerminal.d.ts.map +1 -0
  174. package/dist/cjs/utils/NoTerminal.js +37 -0
  175. package/dist/cjs/utils/NoTerminal.js.map +1 -0
  176. package/dist/cjs/utils/OpenCodeSession.d.ts +70 -0
  177. package/dist/cjs/utils/OpenCodeSession.d.ts.map +1 -0
  178. package/dist/cjs/utils/OpenCodeSession.js +154 -0
  179. package/dist/cjs/utils/OpenCodeSession.js.map +1 -0
  180. package/dist/cjs/utils/ProLicense.d.ts.map +1 -1
  181. package/dist/cjs/utils/ProLicense.js +11 -3
  182. package/dist/cjs/utils/ProLicense.js.map +1 -1
  183. package/dist/cjs/utils/SessionCapture.d.ts +31 -7
  184. package/dist/cjs/utils/SessionCapture.d.ts.map +1 -1
  185. package/dist/cjs/utils/SessionCapture.js +185 -32
  186. package/dist/cjs/utils/SessionCapture.js.map +1 -1
  187. package/dist/cjs/utils/StopNudge.d.ts +8 -0
  188. package/dist/cjs/utils/StopNudge.d.ts.map +1 -0
  189. package/dist/cjs/utils/StopNudge.js +93 -0
  190. package/dist/cjs/utils/StopNudge.js.map +1 -0
  191. package/dist/cjs/utils/TestAutofixInterceptor.d.ts.map +1 -1
  192. package/dist/cjs/utils/TestAutofixInterceptor.js +2 -0
  193. package/dist/cjs/utils/TestAutofixInterceptor.js.map +1 -1
  194. package/dist/esm/cli/hostHooks.d.ts +44 -7
  195. package/dist/esm/cli/hostHooks.d.ts.map +1 -1
  196. package/dist/esm/cli/hostHooks.js +199 -10
  197. package/dist/esm/cli/hostHooks.js.map +1 -1
  198. package/dist/esm/cli/lemma-proxy.d.ts.map +1 -1
  199. package/dist/esm/cli/lemma-proxy.js +14 -17
  200. package/dist/esm/cli/lemma-proxy.js.map +1 -1
  201. package/dist/esm/cloud/CloudBrainClient.d.ts +52 -0
  202. package/dist/esm/cloud/CloudBrainClient.d.ts.map +1 -0
  203. package/dist/esm/cloud/CloudBrainClient.js +153 -0
  204. package/dist/esm/cloud/CloudBrainClient.js.map +1 -0
  205. package/dist/esm/cloud/CloudConfig.d.ts +41 -0
  206. package/dist/esm/cloud/CloudConfig.d.ts.map +1 -0
  207. package/dist/esm/cloud/CloudConfig.js +118 -0
  208. package/dist/esm/cloud/CloudConfig.js.map +1 -0
  209. package/dist/esm/cloud/CloudEntitlement.d.ts +55 -0
  210. package/dist/esm/cloud/CloudEntitlement.d.ts.map +1 -0
  211. package/dist/esm/cloud/CloudEntitlement.js +159 -0
  212. package/dist/esm/cloud/CloudEntitlement.js.map +1 -0
  213. package/dist/esm/cloud/billing/stripeApi.d.ts +43 -0
  214. package/dist/esm/cloud/billing/stripeApi.d.ts.map +1 -0
  215. package/dist/esm/cloud/billing/stripeApi.js +108 -0
  216. package/dist/esm/cloud/billing/stripeApi.js.map +1 -0
  217. package/dist/esm/cloud/billing/stripeWebhook.d.ts +35 -0
  218. package/dist/esm/cloud/billing/stripeWebhook.d.ts.map +1 -0
  219. package/dist/esm/cloud/billing/stripeWebhook.js +181 -0
  220. package/dist/esm/cloud/billing/stripeWebhook.js.map +1 -0
  221. package/dist/esm/cloud/console/ConsoleStore.d.ts +111 -0
  222. package/dist/esm/cloud/console/ConsoleStore.d.ts.map +1 -0
  223. package/dist/esm/cloud/console/ConsoleStore.js +161 -0
  224. package/dist/esm/cloud/console/ConsoleStore.js.map +1 -0
  225. package/dist/esm/cloud/console/consoleRouter.d.ts +68 -0
  226. package/dist/esm/cloud/console/consoleRouter.d.ts.map +1 -0
  227. package/dist/esm/cloud/console/consoleRouter.js +290 -0
  228. package/dist/esm/cloud/console/consoleRouter.js.map +1 -0
  229. package/dist/esm/cloud/console/mailer.d.ts +22 -0
  230. package/dist/esm/cloud/console/mailer.d.ts.map +1 -0
  231. package/dist/esm/cloud/console/mailer.js +30 -0
  232. package/dist/esm/cloud/console/mailer.js.map +1 -0
  233. package/dist/esm/cloud/identity/PlanPolicy.d.ts +42 -6
  234. package/dist/esm/cloud/identity/PlanPolicy.d.ts.map +1 -1
  235. package/dist/esm/cloud/identity/PlanPolicy.js +100 -21
  236. package/dist/esm/cloud/identity/PlanPolicy.js.map +1 -1
  237. package/dist/esm/cloud/identity/RateLimiter.d.ts +21 -1
  238. package/dist/esm/cloud/identity/RateLimiter.d.ts.map +1 -1
  239. package/dist/esm/cloud/identity/RateLimiter.js +57 -2
  240. package/dist/esm/cloud/identity/RateLimiter.js.map +1 -1
  241. package/dist/esm/cloud/identity/TenantResolver.d.ts +6 -1
  242. package/dist/esm/cloud/identity/TenantResolver.d.ts.map +1 -1
  243. package/dist/esm/cloud/identity/TenantResolver.js +1 -1
  244. package/dist/esm/cloud/identity/TenantResolver.js.map +1 -1
  245. package/dist/esm/cloud/identity/authenticateV2.d.ts.map +1 -1
  246. package/dist/esm/cloud/identity/authenticateV2.js +7 -4
  247. package/dist/esm/cloud/identity/authenticateV2.js.map +1 -1
  248. package/dist/esm/cloud/identity/identityStore.d.ts +96 -10
  249. package/dist/esm/cloud/identity/identityStore.d.ts.map +1 -1
  250. package/dist/esm/cloud/identity/identityStore.js +199 -3
  251. package/dist/esm/cloud/identity/identityStore.js.map +1 -1
  252. package/dist/esm/cloud/metering/PostgresLedgerStore.d.ts +18 -0
  253. package/dist/esm/cloud/metering/PostgresLedgerStore.d.ts.map +1 -0
  254. package/dist/esm/cloud/metering/PostgresLedgerStore.js +52 -0
  255. package/dist/esm/cloud/metering/PostgresLedgerStore.js.map +1 -0
  256. package/dist/esm/cloud/metering/UsageLedger.d.ts +74 -0
  257. package/dist/esm/cloud/metering/UsageLedger.d.ts.map +1 -1
  258. package/dist/esm/cloud/metering/UsageLedger.js +119 -16
  259. package/dist/esm/cloud/metering/UsageLedger.js.map +1 -1
  260. package/dist/esm/cloud/metering/index.d.ts +1 -0
  261. package/dist/esm/cloud/metering/index.d.ts.map +1 -1
  262. package/dist/esm/cloud/metering/index.js +1 -0
  263. package/dist/esm/cloud/metering/index.js.map +1 -1
  264. package/dist/esm/cloud/store/FileBrainStore.d.ts +6 -1
  265. package/dist/esm/cloud/store/FileBrainStore.d.ts.map +1 -1
  266. package/dist/esm/cloud/store/FileBrainStore.js +8 -0
  267. package/dist/esm/cloud/store/FileBrainStore.js.map +1 -1
  268. package/dist/esm/cloud/store/PostgresBrainStore.d.ts +11 -1
  269. package/dist/esm/cloud/store/PostgresBrainStore.d.ts.map +1 -1
  270. package/dist/esm/cloud/store/PostgresBrainStore.js +32 -0
  271. package/dist/esm/cloud/store/PostgresBrainStore.js.map +1 -1
  272. package/dist/esm/cloud/store/memorySummary.d.ts +29 -0
  273. package/dist/esm/cloud/store/memorySummary.d.ts.map +1 -0
  274. package/dist/esm/cloud/store/memorySummary.js +60 -0
  275. package/dist/esm/cloud/store/memorySummary.js.map +1 -0
  276. package/dist/esm/cloud/v2/app.d.ts.map +1 -1
  277. package/dist/esm/cloud/v2/app.js +6 -0
  278. package/dist/esm/cloud/v2/app.js.map +1 -1
  279. package/dist/esm/cloud/v2/inputGuard.d.ts +23 -0
  280. package/dist/esm/cloud/v2/inputGuard.d.ts.map +1 -0
  281. package/dist/esm/cloud/v2/inputGuard.js +63 -0
  282. package/dist/esm/cloud/v2/inputGuard.js.map +1 -0
  283. package/dist/esm/cloud/v2/routes/admin.d.ts +24 -0
  284. package/dist/esm/cloud/v2/routes/admin.d.ts.map +1 -0
  285. package/dist/esm/cloud/v2/routes/admin.js +337 -0
  286. package/dist/esm/cloud/v2/routes/admin.js.map +1 -0
  287. package/dist/esm/cloud/v2/routes/entitlement.d.ts +13 -0
  288. package/dist/esm/cloud/v2/routes/entitlement.d.ts.map +1 -0
  289. package/dist/esm/cloud/v2/routes/entitlement.js +21 -0
  290. package/dist/esm/cloud/v2/routes/entitlement.js.map +1 -0
  291. package/dist/esm/cloud/v2/routes/index.d.ts +14 -1
  292. package/dist/esm/cloud/v2/routes/index.d.ts.map +1 -1
  293. package/dist/esm/cloud/v2/routes/index.js +37 -1
  294. package/dist/esm/cloud/v2/routes/index.js.map +1 -1
  295. package/dist/esm/cloud/v2/routes/memories.d.ts +21 -2
  296. package/dist/esm/cloud/v2/routes/memories.d.ts.map +1 -1
  297. package/dist/esm/cloud/v2/routes/memories.js +75 -0
  298. package/dist/esm/cloud/v2/routes/memories.js.map +1 -1
  299. package/dist/esm/cloud/v2/routes/recall.d.ts +1 -0
  300. package/dist/esm/cloud/v2/routes/recall.d.ts.map +1 -1
  301. package/dist/esm/cloud/v2/routes/recall.js +5 -1
  302. package/dist/esm/cloud/v2/routes/recall.js.map +1 -1
  303. package/dist/esm/cloud/v2/routes/tenant.d.ts +36 -0
  304. package/dist/esm/cloud/v2/routes/tenant.d.ts.map +1 -0
  305. package/dist/esm/cloud/v2/routes/tenant.js +61 -0
  306. package/dist/esm/cloud/v2/routes/tenant.js.map +1 -0
  307. package/dist/esm/cloud/v2/routes/usage.d.ts +1 -1
  308. package/dist/esm/cloud/v2/routes/usage.d.ts.map +1 -1
  309. package/dist/esm/cloud/v2/routes/verify.d.ts +1 -0
  310. package/dist/esm/cloud/v2/routes/verify.d.ts.map +1 -1
  311. package/dist/esm/cloud/v2/routes/verify.js +5 -1
  312. package/dist/esm/cloud/v2/routes/verify.js.map +1 -1
  313. package/dist/esm/cloud/v2/server.d.ts +9 -3
  314. package/dist/esm/cloud/v2/server.d.ts.map +1 -1
  315. package/dist/esm/cloud/v2/server.js +36 -3
  316. package/dist/esm/cloud/v2/server.js.map +1 -1
  317. package/dist/esm/cloud/v2/usageRecorder.d.ts +19 -0
  318. package/dist/esm/cloud/v2/usageRecorder.d.ts.map +1 -0
  319. package/dist/esm/cloud/v2/usageRecorder.js +37 -0
  320. package/dist/esm/cloud/v2/usageRecorder.js.map +1 -0
  321. package/dist/esm/contracts/api-v2.types.d.ts +92 -2
  322. package/dist/esm/contracts/api-v2.types.d.ts.map +1 -1
  323. package/dist/esm/contracts/store.d.ts +37 -0
  324. package/dist/esm/contracts/store.d.ts.map +1 -1
  325. package/dist/esm/mcp/index.js +8 -2
  326. package/dist/esm/mcp/index.js.map +1 -1
  327. package/dist/esm/mcp/tools/memory.d.ts.map +1 -1
  328. package/dist/esm/mcp/tools/memory.js +74 -4
  329. package/dist/esm/mcp/tools/memory.js.map +1 -1
  330. package/dist/esm/mcp/tools/misc.d.ts.map +1 -1
  331. package/dist/esm/mcp/tools/misc.js +2 -1
  332. package/dist/esm/mcp/tools/misc.js.map +1 -1
  333. package/dist/esm/mcp/tools/workspace.d.ts.map +1 -1
  334. package/dist/esm/mcp/tools/workspace.js +4 -1
  335. package/dist/esm/mcp/tools/workspace.js.map +1 -1
  336. package/dist/esm/mcp/tools.d.ts +10 -0
  337. package/dist/esm/mcp/tools.d.ts.map +1 -1
  338. package/dist/esm/mcp/tools.js +46 -12
  339. package/dist/esm/mcp/tools.js.map +1 -1
  340. package/dist/esm/proxy/KeyManager.d.ts.map +1 -1
  341. package/dist/esm/proxy/KeyManager.js +5 -0
  342. package/dist/esm/proxy/KeyManager.js.map +1 -1
  343. package/dist/esm/subconscious/CloudBrain.d.ts +77 -0
  344. package/dist/esm/subconscious/CloudBrain.d.ts.map +1 -0
  345. package/dist/esm/subconscious/CloudBrain.js +330 -0
  346. package/dist/esm/subconscious/CloudBrain.js.map +1 -0
  347. package/dist/esm/subconscious/HostRecall.d.ts.map +1 -1
  348. package/dist/esm/subconscious/HostRecall.js +11 -4
  349. package/dist/esm/subconscious/HostRecall.js.map +1 -1
  350. package/dist/esm/subconscious/ProjectIdentity.d.ts +9 -0
  351. package/dist/esm/subconscious/ProjectIdentity.d.ts.map +1 -0
  352. package/dist/esm/subconscious/ProjectIdentity.js +56 -0
  353. package/dist/esm/subconscious/ProjectIdentity.js.map +1 -0
  354. package/dist/esm/subconscious/TeamBrain.d.ts +9 -3
  355. package/dist/esm/subconscious/TeamBrain.d.ts.map +1 -1
  356. package/dist/esm/subconscious/TeamBrain.js +39 -7
  357. package/dist/esm/subconscious/TeamBrain.js.map +1 -1
  358. package/dist/esm/utils/FixCapture.d.ts +7 -5
  359. package/dist/esm/utils/FixCapture.d.ts.map +1 -1
  360. package/dist/esm/utils/FixCapture.js +64 -33
  361. package/dist/esm/utils/FixCapture.js.map +1 -1
  362. package/dist/esm/utils/NoTerminal.d.ts +27 -0
  363. package/dist/esm/utils/NoTerminal.d.ts.map +1 -0
  364. package/dist/esm/utils/NoTerminal.js +33 -0
  365. package/dist/esm/utils/NoTerminal.js.map +1 -0
  366. package/dist/esm/utils/OpenCodeSession.d.ts +70 -0
  367. package/dist/esm/utils/OpenCodeSession.d.ts.map +1 -0
  368. package/dist/esm/utils/OpenCodeSession.js +146 -0
  369. package/dist/esm/utils/OpenCodeSession.js.map +1 -0
  370. package/dist/esm/utils/ProLicense.d.ts.map +1 -1
  371. package/dist/esm/utils/ProLicense.js +11 -3
  372. package/dist/esm/utils/ProLicense.js.map +1 -1
  373. package/dist/esm/utils/SessionCapture.d.ts +31 -7
  374. package/dist/esm/utils/SessionCapture.d.ts.map +1 -1
  375. package/dist/esm/utils/SessionCapture.js +185 -32
  376. package/dist/esm/utils/SessionCapture.js.map +1 -1
  377. package/dist/esm/utils/StopNudge.d.ts +8 -0
  378. package/dist/esm/utils/StopNudge.d.ts.map +1 -0
  379. package/dist/esm/utils/StopNudge.js +86 -0
  380. package/dist/esm/utils/StopNudge.js.map +1 -0
  381. package/dist/esm/utils/TestAutofixInterceptor.d.ts.map +1 -1
  382. package/dist/esm/utils/TestAutofixInterceptor.js +2 -0
  383. package/dist/esm/utils/TestAutofixInterceptor.js.map +1 -1
  384. package/lemma-proxy.cjs +5 -0
  385. package/package.json +2 -1
  386. package/sdks/crewai/dist/ts/src/client.d.ts +5 -1
  387. package/sdks/crewai/dist/ts/src/client.js +8 -0
  388. package/sdks/crewai/dist/ts/src/types.d.ts +32 -1
@@ -1,17 +1,33 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildDeps = buildDeps;
3
4
  exports.startV2Server = startV2Server;
4
5
  const pg_1 = require("pg");
5
6
  const app_1 = require("./app");
6
7
  const store_1 = require("../store");
7
8
  const identity_1 = require("../identity");
8
9
  const metering_1 = require("../metering");
9
- function buildDeps(options) {
10
+ const stripeWebhook_1 = require("../billing/stripeWebhook");
11
+ const stripeApi_1 = require("../billing/stripeApi");
12
+ const ConsoleStore_1 = require("../console/ConsoleStore");
13
+ const mailer_1 = require("../console/mailer");
14
+ /**
15
+ * The one place the /v2 service's dependencies are wired. `deploy/entrypoint.js` (the production
16
+ * image) calls this too: the two used to carry separate copies and drifted, so the image booted
17
+ * without the operator routes and with a non-durable usage ledger.
18
+ */
19
+ function buildDeps(options = {}) {
10
20
  const databaseUrl = options.databaseUrl ?? process.env.DATABASE_URL;
11
21
  const policy = new identity_1.PlanPolicy();
12
- const usageLedger = new metering_1.UsageLedger();
13
22
  if (databaseUrl) {
14
23
  const pool = new pg_1.Pool({ connectionString: databaseUrl });
24
+ // An idle client can be dropped by the database (failover, maintenance). Without a listener
25
+ // that 'error' event is an uncaught exception and takes the whole process down.
26
+ pool.on('error', (err) => {
27
+ // eslint-disable-next-line no-console
28
+ console.error('[lemma:v2] idle postgres client error', err.message);
29
+ });
30
+ const usageLedger = new metering_1.UsageLedger(undefined, { backend: new metering_1.PostgresLedgerStore(pool) });
15
31
  const identityStore = new identity_1.PostgresIdentityStore(pool);
16
32
  return {
17
33
  store: new store_1.PostgresBrainStore(pool),
@@ -19,8 +35,17 @@ function buildDeps(options) {
19
35
  policy,
20
36
  rateLimiter: new identity_1.PostgresRateLimiter(pool),
21
37
  usageLedger,
38
+ identityStore,
39
+ adminToken: process.env.LEMMA_ADMIN_TOKEN,
40
+ billing: (0, stripeWebhook_1.stripeConfigFromEnv)() ?? undefined,
41
+ stripeApi: (0, stripeApi_1.stripeApiFromEnv)(),
42
+ consoleStore: new ConsoleStore_1.PostgresConsoleStore(pool),
43
+ loginMailer: (0, mailer_1.resendMailerFromEnv)(),
44
+ publicBaseUrl: process.env.CLOUD_PUBLIC_URL,
45
+ consoleDir: process.env.CONSOLE_DIR,
22
46
  };
23
47
  }
48
+ const usageLedger = new metering_1.UsageLedger();
24
49
  const identityStore = new identity_1.InMemoryIdentityStore();
25
50
  return {
26
51
  store: new store_1.FileBrainStore(),
@@ -28,6 +53,15 @@ function buildDeps(options) {
28
53
  policy,
29
54
  rateLimiter: new identity_1.InMemoryRateLimiter(),
30
55
  usageLedger,
56
+ identityStore,
57
+ adminToken: process.env.LEMMA_ADMIN_TOKEN,
58
+ billing: (0, stripeWebhook_1.stripeConfigFromEnv)() ?? undefined,
59
+ stripeApi: (0, stripeApi_1.stripeApiFromEnv)(),
60
+ consoleStore: new ConsoleStore_1.InMemoryConsoleStore(identityStore),
61
+ loginMailer: (0, mailer_1.resendMailerFromEnv)(),
62
+ publicBaseUrl: process.env.CLOUD_PUBLIC_URL,
63
+ consoleDir: process.env.CONSOLE_DIR,
64
+ insecureCookies: true, // the no-database dev path is plain http on localhost
31
65
  };
32
66
  }
33
67
  /** Starts the /v2 HTTP server. Resolves with the underlying `http.Server` once listening. */
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../../src/cloud/v2/server.ts"],"names":[],"mappings":";;AAiEA,sCAYC;AA3DD,2BAA0B;AAC1B,+BAAgD;AAChD,oCAA8D;AAC9D,0CAOqB;AACrB,0CAA0C;AAQ1C,SAAS,SAAS,CAAC,OAA6B;IAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IACpE,MAAM,MAAM,GAAG,IAAI,qBAAU,EAAE,CAAC;IAChC,MAAM,WAAW,GAAG,IAAI,sBAAW,EAAE,CAAC;IAEtC,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,IAAI,SAAI,CAAC,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC,CAAC;QACzD,MAAM,aAAa,GAAG,IAAI,gCAAqB,CAAC,IAAI,CAAC,CAAC;QACtD,OAAO;YACL,KAAK,EAAE,IAAI,0BAAkB,CAAC,IAAI,CAAC;YACnC,QAAQ,EAAE,IAAI,yBAAc,CAAC,aAAa,CAAC;YAC3C,MAAM;YACN,WAAW,EAAE,IAAI,8BAAmB,CAAC,IAAI,CAAC;YAC1C,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,gCAAqB,EAAE,CAAC;IAClD,OAAO;QACL,KAAK,EAAE,IAAI,sBAAc,EAAE;QAC3B,QAAQ,EAAE,IAAI,yBAAc,CAAC,aAAa,CAAC;QAC3C,MAAM;QACN,WAAW,EAAE,IAAI,8BAAmB,EAAE;QACtC,WAAW;KACZ,CAAC;AACJ,CAAC;AAED,6FAA6F;AAC7F,SAAgB,aAAa,CAAC,UAAgC,EAAE;IAC9D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;IACrF,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAChC,MAAM,GAAG,GAAG,IAAA,eAAS,EAAC,IAAI,CAAC,CAAC;IAE5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;YACnC,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;YACzD,OAAO,CAAC,MAAM,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,kBAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../../src/cloud/v2/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Lemma API v2 — per-request usage recording.
3
+ *
4
+ * Handlers declare what they did (`recordUsage(res, 'recall', texts)`); this middleware appends
5
+ * one ledger event per SUCCESSFUL request after the response has been sent, so recording never
6
+ * adds latency to a call and a ledger failure can never fail a request. Failed requests (4xx/5xx)
7
+ * are not billable and are not recorded. Token counts are measured from the real text that moved
8
+ * (TokenCounter); if any text cannot be measured the event is kept with `tokens: null` and shows
9
+ * up in `excludedEvents` instead of being estimated.
10
+ */
11
+ import type { NextFunction, Request, Response } from 'express';
12
+ import { type UsageLedger } from '../metering';
13
+ export type RecordableLedger = Partial<Pick<UsageLedger, 'append'>>;
14
+ /** Tokens in the given texts, or null if any of them cannot be measured reliably. */
15
+ export declare function measureTokens(texts: string[]): number | null;
16
+ /** Called by a handler right before it answers. `texts` is the memory content that moved. */
17
+ export declare function recordUsage(res: Response, kind: string, texts?: string[]): void;
18
+ export declare function usageRecorder(ledger: RecordableLedger): (req: Request, res: Response, next: NextFunction) => void;
19
+ //# sourceMappingURL=usageRecorder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usageRecorder.d.ts","sourceRoot":"","sources":["../../../../src/cloud/v2/usageRecorder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAiC,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAK9E,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;AAOpE,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAQ5D;AAED,6FAA6F;AAC7F,wBAAgB,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAM,EAAO,GAAG,IAAI,CAEnF;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,gBAAgB,IAC5C,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,KAAG,IAAI,CAgB/D"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.measureTokens = measureTokens;
4
+ exports.recordUsage = recordUsage;
5
+ exports.usageRecorder = usageRecorder;
6
+ const metering_1 = require("../metering");
7
+ const counter = new metering_1.TokenCounter();
8
+ /** Tokens in the given texts, or null if any of them cannot be measured reliably. */
9
+ function measureTokens(texts) {
10
+ let total = 0;
11
+ for (const t of texts) {
12
+ const n = counter.count(t);
13
+ if (n === null)
14
+ return null;
15
+ total += n;
16
+ }
17
+ return total;
18
+ }
19
+ /** Called by a handler right before it answers. `texts` is the memory content that moved. */
20
+ function recordUsage(res, kind, texts = []) {
21
+ res.locals.usage = { kind, tokens: measureTokens(texts) };
22
+ }
23
+ function usageRecorder(ledger) {
24
+ return (req, res, next) => {
25
+ if (typeof ledger.append === 'function') {
26
+ res.on('finish', () => {
27
+ const usage = res.locals.usage;
28
+ const tenant = req.tenant;
29
+ if (!usage || !tenant || res.statusCode >= 300)
30
+ return;
31
+ ledger
32
+ .append({ tenantId: tenant.id, keyId: tenant.keyId, kind: metering_1.API_KIND_PREFIX + usage.kind, tokens: usage.tokens })
33
+ .catch((err) => {
34
+ // eslint-disable-next-line no-console
35
+ console.error('[lemma:v2] usage append failed', err);
36
+ });
37
+ });
38
+ }
39
+ next();
40
+ };
41
+ }
42
+ //# sourceMappingURL=usageRecorder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usageRecorder.js","sourceRoot":"","sources":["../../../../src/cloud/v2/usageRecorder.ts"],"names":[],"mappings":";;AAwBA,sCAQC;AAGD,kCAEC;AAED,sCAiBC;AA7CD,0CAA8E;AAG9E,MAAM,OAAO,GAAG,IAAI,uBAAY,EAAE,CAAC;AASnC,qFAAqF;AACrF,SAAgB,aAAa,CAAC,KAAe;IAC3C,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC5B,KAAK,IAAI,CAAC,CAAC;IACb,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,6FAA6F;AAC7F,SAAgB,WAAW,CAAC,GAAa,EAAE,IAAY,EAAE,QAAkB,EAAE;IAC1E,GAAG,CAAC,MAAmC,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;AAC1F,CAAC;AAED,SAAgB,aAAa,CAAC,MAAwB;IACpD,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAQ,EAAE;QAC/D,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACxC,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;gBACpB,MAAM,KAAK,GAAI,GAAG,CAAC,MAAmC,CAAC,KAAK,CAAC;gBAC7D,MAAM,MAAM,GAAI,GAA4B,CAAC,MAAM,CAAC;gBACpD,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG;oBAAE,OAAO;gBACvD,MAAM;qBACH,MAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,0BAAe,GAAG,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;qBAC/G,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;oBACtB,sCAAsC;oBACtC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC"}
@@ -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,54 @@ 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
+ /** Signed up as a founder: `limits` already include the founder ceilings, which the tenant keeps. */
155
+ founder: boolean;
156
+ /** Every ceiling the plan declares. Only those named in `enforced` are actually applied by the API today. */
157
+ limits: {
158
+ activeMemories: number;
159
+ seats: number;
160
+ dailyRequests: number;
161
+ monthlyRequests: number;
162
+ };
163
+ enforced: Array<'seats' | 'dailyRequests' | 'monthlyRequests' | 'activeMemories'>;
164
+ usage: {
165
+ seats: number;
166
+ /** Requests counted against `dailyRequests` in the current window; null when the limiter cannot report it. */
167
+ requestsToday: number | null;
168
+ /** Epoch ms when the daily window resets. */
169
+ dailyResetsAt: number;
170
+ /** Requests counted against `monthlyRequests` in the current UTC calendar month; null when the limiter cannot report it. */
171
+ requestsThisMonth: number | null;
172
+ /** Epoch ms of the first instant of next UTC month, when the monthly count resets. */
173
+ monthlyResetsAt: number;
174
+ /** Memories held, counted against `activeMemories`; null when the store was not given to the overview. */
175
+ memories: number | null;
176
+ };
177
+ billing: {
178
+ /** Stripe's subscription status verbatim, or null when the tenant has never been billed through Stripe. */
179
+ status: string | null;
180
+ /** Epoch ms: next charge, or the end of service when the subscription is set to cancel. */
181
+ currentPeriodEnd: number | null;
182
+ /** Epoch ms of the first failed payment of the current late streak; null while paid up. */
183
+ pastDueSince: number | null;
184
+ };
185
+ upgradeUrl: string;
186
+ }
97
187
  export interface UsageResponse {
98
188
  /** Keyed by metric name → counted value. */
99
189
  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,42 @@ 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>;
31
+ /**
32
+ * What the console shows of a tenant's shared Brain: counts, who wrote and in which repo, the latest few.
33
+ * Headlines only, never bodies. Freshness is NOT here: it is judged against each developer's checkout,
34
+ * which the server never sees. Optional: a store without it leaves the console's memories view empty.
35
+ */
36
+ summarize?(tenantId: string, opts: {
37
+ since: number;
38
+ recent: number;
39
+ }): Promise<MemorySummary>;
40
+ }
41
+ export interface MemorySummary {
42
+ total: number;
43
+ /** Stored at or after `since`. */
44
+ addedSince: number;
45
+ byAuthor: Array<{
46
+ keyId: string;
47
+ keyName?: string;
48
+ count: number;
49
+ }>;
50
+ /** `repo` null: stored before memories recorded their repo. */
51
+ byRepo: Array<{
52
+ repo: string | null;
53
+ count: number;
54
+ }>;
55
+ recent: Array<{
56
+ id: string;
57
+ headline: string;
58
+ createdAt: number;
59
+ author?: {
60
+ keyId: string;
61
+ keyName?: string;
62
+ };
63
+ repo?: string;
64
+ files: number;
65
+ }>;
29
66
  }
30
67
  //# 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;IAEzC;;;;OAIG;IACH,SAAS,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CAC/F;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpE,+DAA+D;IAC/D,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtD,MAAM,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChJ"}
@@ -21,6 +21,7 @@ const utils_1 = require("./utils");
21
21
  const staleBuild_1 = require("./staleBuild");
22
22
  const hostHooks_1 = require("../cli/hostHooks");
23
23
  const LocalExclude_1 = require("../utils/LocalExclude");
24
+ const CloudEntitlement_1 = require("../cloud/CloudEntitlement");
24
25
  const SERVER_VERSION = "1.0.0";
25
26
  /** Must stay well under the proxy's OFFLINE_AFTER_MS (src/proxy/ProjectRegistry.ts). */
26
27
  const MCP_HEARTBEAT_MS = 30000;
@@ -81,7 +82,9 @@ class LemmaMcpServer {
81
82
  }, {
82
83
  capabilities: {
83
84
  resources: { subscribe: true },
84
- tools: {},
85
+ // listChanged: the advertised tools follow the Pro entitlement (login, revoked seat) while
86
+ // the server runs; see startToolSurfaceWatcher.
87
+ tools: { listChanged: true },
85
88
  prompts: {},
86
89
  completions: {},
87
90
  // MCP Tasks (spec 2026-07-28, @experimental) — lets a task-aware client run
@@ -109,6 +112,9 @@ class LemmaMcpServer {
109
112
  console.error("Lemma MCP Server running on stdio");
110
113
  (0, staleBuild_1.registerMcpProcess)();
111
114
  this.repairHostHooks();
115
+ // A seat on a paid Cloud plan includes Pro; keep that answer fresh. No-op while Cloud is not configured.
116
+ (0, CloudEntitlement_1.startEntitlementRefresh)();
117
+ (0, tools_1.startToolSurfaceWatcher)(this.server);
112
118
  await this.registerWithProxy();
113
119
  // The session overhead is charged on the first tools/list (see setupToolsHandlers), not
114
120
  // 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,EAgWnD,CAAC;AAmVF;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAOvD;AAuoBD,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"}
@@ -26,6 +26,7 @@ const StaleDelta_1 = require("../../utils/StaleDelta");
26
26
  const SessionCapture_1 = require("../../utils/SessionCapture");
27
27
  const ExternalRefs_1 = require("../../subconscious/ExternalRefs");
28
28
  const TeamBrain_1 = require("../../subconscious/TeamBrain");
29
+ const CloudBrain_1 = require("../../subconscious/CloudBrain");
29
30
  const REFS_SCHEMA = {
30
31
  type: "array",
31
32
  items: { type: "object" },
@@ -383,6 +384,18 @@ exports.MEMORY_TOOL_DEFINITIONS = [
383
384
  required: ["path"],
384
385
  },
385
386
  },
387
+ {
388
+ name: "cloud_push",
389
+ annotations: { readOnlyHint: false, destructiveHint: false, idempotentHint: true, openWorldHint: true },
390
+ 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.",
391
+ inputSchema: {
392
+ type: "object",
393
+ properties: {
394
+ id: { type: "string", description: "The memory's id, from a search_memory or store_memory result." },
395
+ },
396
+ required: ["id"],
397
+ },
398
+ },
386
399
  ];
387
400
  /**
388
401
  * Ids the last search_memory calls put on a shortlist. A get_memory of one of them is the
@@ -450,7 +463,12 @@ async function handleSearchMemory(args) {
450
463
  ? `scored at or above the ${minSimilarity} floor you set`
451
464
  : "shares a term with this query — nothing was learned about it in an earlier session";
452
465
  (0, TokenReceipt_1.recordReceiptEvent)("reasoning", query.substring(0, 100), { tool: "search_memory", reason: `no memory ${why}` });
453
- return { content: [{ type: "text", text: `No memory in Lemma's Brain ${why}. Investigate from scratch.` }] };
466
+ // Lemma Cloud: the team may know what this checkout has never seen (no-op when not configured).
467
+ const teamOnly = await (0, CloudBrain_1.cloudSearchSection)(query);
468
+ if (teamOnly.startsWith("Team Brain (Lemma Cloud) — ")) {
469
+ return { content: [{ type: "text", text: `No memory in your local Brain ${why}, but your team's does:\n\n${teamOnly}` }] };
470
+ }
471
+ return { content: [{ type: "text", text: `No memory in Lemma's Brain ${why}. Investigate from scratch.${teamOnly ? `\n\n${teamOnly}` : ""}` }] };
454
472
  }
455
473
  for (const r of results)
456
474
  _shortlisted.add(r.id);
@@ -478,7 +496,8 @@ async function handleSearchMemory(args) {
478
496
  `${results.map(line).join("\n\n")}\n\n` +
479
497
  (hidden > 0 ? `(${hidden} lower-ranked ${hidden === 1 ? "candidate" : "candidates"} not shown — pass limit: ${candidates.length} to see ${hidden === 1 ? "it" : "them"}.)\n\n` : "") +
480
498
  `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.`;
481
- return { content: [{ type: "text", text }] };
499
+ const team = await (0, CloudBrain_1.cloudSearchSection)(query);
500
+ return { content: [{ type: "text", text: team ? `${text}\n\n${team}` : text }] };
482
501
  }
483
502
  catch (e) {
484
503
  (0, utils_1.logError)("search_memory", e);
@@ -820,7 +839,18 @@ async function handleStoreMemory(args) {
820
839
  const scrubNote = storeRes.redactions > 0
821
840
  ? ` 🛡 ${storeRes.redactions} secret(s) redacted before storage — credentials are never persisted, only their placeholders.`
822
841
  : "";
823
- return { content: [{ type: "text", text: `Success: Memory stored${idNote}. ${storeRes.reason}${trackingNote}${symbolNote}${autoEvidenceNote}${outcomeNote}${claimsNote}${domainNote}${refsNote}${derivedFromNote}${conflictsNote}${narrowedNote}${textConflictsNote}${scrubNote}${logbookNote}` }] };
842
+ // Lemma Cloud, opt-in (LEMMA_CLOUD_AUTOSHARE=1): the memory also goes to the team's Brain. The local
843
+ // write has already succeeded; a Cloud failure is reported, never turned into a failed store.
844
+ let cloudNote = "";
845
+ const shareClient = storeRes.id && (0, CloudBrain_1.autoShareEnabled)() ? (0, CloudBrain_1.cloudClient)() : null;
846
+ if (shareClient && storeRes.id) {
847
+ const entry = brain.getEntry(storeRes.id);
848
+ const shared = entry ? await (0, CloudBrain_1.shareEntry)(entry, process.cwd(), shareClient) : { shared: false, reason: "the entry could not be read back" };
849
+ cloudNote = shared.shared
850
+ ? ` ☁ Shared with your team's Brain (cloud id ${shared.cloudId}).`
851
+ : ` ☁ Not shared with your team: ${shared.reason}.`;
852
+ }
853
+ 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}` }] };
824
854
  }
825
855
  catch (e) {
826
856
  (0, utils_1.logError)("store_memory", e);
@@ -869,10 +899,18 @@ async function handleForgetMemory(args) {
869
899
  const archiveNote = result.archivePath
870
900
  ? `\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).`
871
901
  : `\n\nThe Brain's trash file could not be written, so the text above is the only remaining copy.`;
902
+ // A memory this checkout shared to Lemma Cloud is retracted from the team too (no-op if it never was).
903
+ const retractClient = (0, CloudBrain_1.cloudClient)();
904
+ const retract = retractClient ? await (0, CloudBrain_1.unshareEntry)(id, process.cwd(), retractClient) : null;
905
+ const cloudNote = retract?.retracted
906
+ ? "\n\n☁ Also retracted from your team's Brain."
907
+ : retract?.reason
908
+ ? `\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.`
909
+ : "";
872
910
  return {
873
911
  content: [{
874
912
  type: "text",
875
- 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}`,
913
+ 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}`,
876
914
  }],
877
915
  };
878
916
  }
@@ -1329,6 +1367,37 @@ async function handleListMemories(args) {
1329
1367
  * (SIGKILL, a crash, a fast stdin close) lost the memory while the reply said "stored". Tools that
1330
1368
  * change what the Brain knows flush before they answer; flushSync is a no-op when nothing is dirty.
1331
1369
  */
1370
+ /** Share one memory with the team's Brain on Lemma Cloud. Explicit counterpart of LEMMA_CLOUD_AUTOSHARE. */
1371
+ async function handleCloudPush(args) {
1372
+ const id = args?.id;
1373
+ if (!id)
1374
+ throw new Error("id is required");
1375
+ const client = (0, CloudBrain_1.cloudClient)();
1376
+ if (!client) {
1377
+ const problem = (0, CloudBrain_1.cloudProblem)();
1378
+ 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." }] };
1379
+ }
1380
+ try {
1381
+ const brain = (0, TheBrainV2_1.getBrain)();
1382
+ const entry = brain.getEntry(id);
1383
+ if (!entry)
1384
+ return { content: [{ type: "text", text: `No memory with id "${id}" in the Brain — nothing to share.` }] };
1385
+ // Only what is true here is worth telling the team: a stale memory would arrive as someone's fact.
1386
+ const state = brain.verifyByIds([id])[0]?.status;
1387
+ if (state !== "fresh") {
1388
+ 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.` }] };
1389
+ }
1390
+ const shared = await (0, CloudBrain_1.shareEntry)(entry, process.cwd(), client);
1391
+ const text = shared.shared
1392
+ ? `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.`
1393
+ : `Not shared: ${shared.reason}.`;
1394
+ return { content: [{ type: "text", text }] };
1395
+ }
1396
+ catch (e) {
1397
+ (0, utils_1.logError)("cloud_push", e);
1398
+ return { content: [{ type: "text", text: `Failed to share memory: ${e.message}` }], isError: true };
1399
+ }
1400
+ }
1332
1401
  function durably(handler) {
1333
1402
  const wrapped = async (args, ...rest) => {
1334
1403
  const result = await handler(args, ...rest);
@@ -1362,5 +1431,6 @@ exports.MEMORY_TOOL_HANDLERS = {
1362
1431
  brain_trash: durably(handleBrainTrash),
1363
1432
  brain_upkeep: durably(handleBrainUpkeep),
1364
1433
  brain_merge: durably(handleBrainMerge),
1434
+ cloud_push: handleCloudPush,
1365
1435
  };
1366
1436
  //# sourceMappingURL=memory.js.map