run402-mcp 4.97.0 → 4.99.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 (848) hide show
  1. package/README.md +28 -246
  2. package/core/dist/binding-file.d.ts +14 -0
  3. package/core/dist/binding-file.d.ts.map +1 -1
  4. package/core/dist/binding-file.js +28 -1
  5. package/core/dist/binding-file.js.map +1 -1
  6. package/core/dist/wallet.js +3 -3
  7. package/dist/docs/llms-sdk.txt +3026 -0
  8. package/dist/docs/run.md +98 -0
  9. package/dist/errors.d.ts +3 -9
  10. package/dist/errors.d.ts.map +1 -1
  11. package/dist/errors.js +62 -15
  12. package/dist/errors.js.map +1 -1
  13. package/dist/index.js +71 -517
  14. package/dist/index.js.map +1 -1
  15. package/dist/sandbox-proxy.d.ts +81 -0
  16. package/dist/sandbox-proxy.d.ts.map +1 -0
  17. package/dist/sandbox-proxy.js +504 -0
  18. package/dist/sandbox-proxy.js.map +1 -0
  19. package/dist/sandbox.d.ts +119 -0
  20. package/dist/sandbox.d.ts.map +1 -0
  21. package/dist/sandbox.js +646 -0
  22. package/dist/sandbox.js.map +1 -0
  23. package/dist/sdk.d.ts +13 -4
  24. package/dist/sdk.d.ts.map +1 -1
  25. package/dist/sdk.js +24 -4
  26. package/dist/sdk.js.map +1 -1
  27. package/dist/structured.d.ts +6238 -0
  28. package/dist/structured.d.ts.map +1 -0
  29. package/dist/structured.js +238 -0
  30. package/dist/structured.js.map +1 -0
  31. package/dist/tools/deploy.d.ts +19 -24
  32. package/dist/tools/deploy.d.ts.map +1 -1
  33. package/dist/tools/deploy.js +17 -6
  34. package/dist/tools/deploy.js.map +1 -1
  35. package/dist/tools/docs.d.ts +32 -0
  36. package/dist/tools/docs.d.ts.map +1 -0
  37. package/dist/tools/docs.js +228 -0
  38. package/dist/tools/docs.js.map +1 -0
  39. package/dist/tools/doctor.d.ts +16 -0
  40. package/dist/tools/doctor.d.ts.map +1 -0
  41. package/dist/tools/doctor.js +31 -0
  42. package/dist/tools/doctor.js.map +1 -0
  43. package/dist/tools/expand-result.d.ts +1 -8
  44. package/dist/tools/expand-result.d.ts.map +1 -1
  45. package/dist/tools/expand-result.js +24 -16
  46. package/dist/tools/expand-result.js.map +1 -1
  47. package/dist/tools/run.d.ts +78 -0
  48. package/dist/tools/run.d.ts.map +1 -0
  49. package/dist/tools/run.js +258 -0
  50. package/dist/tools/run.js.map +1 -0
  51. package/dist/tools/status.d.ts +10 -9
  52. package/dist/tools/status.d.ts.map +1 -1
  53. package/dist/tools/status.js +24 -95
  54. package/dist/tools/status.js.map +1 -1
  55. package/dist/tools/up.d.ts +2 -9
  56. package/dist/tools/up.d.ts.map +1 -1
  57. package/dist/tools/up.js +8 -9
  58. package/dist/tools/up.js.map +1 -1
  59. package/dist/tools/whoami.d.ts +13 -0
  60. package/dist/tools/whoami.d.ts.map +1 -0
  61. package/dist/tools/whoami.js +35 -0
  62. package/dist/tools/whoami.js.map +1 -0
  63. package/dist/wallet-auth.d.ts +2 -7
  64. package/dist/wallet-auth.d.ts.map +1 -1
  65. package/dist/wallet-auth.js +9 -14
  66. package/dist/wallet-auth.js.map +1 -1
  67. package/package.json +7 -5
  68. package/sdk/README.md +2 -2
  69. package/sdk/core-dist/binding-file.d.ts +14 -0
  70. package/sdk/core-dist/binding-file.js +28 -1
  71. package/sdk/core-dist/wallet.js +3 -3
  72. package/sdk/dist/errors.d.ts +24 -2
  73. package/sdk/dist/errors.d.ts.map +1 -1
  74. package/sdk/dist/errors.js +44 -2
  75. package/sdk/dist/errors.js.map +1 -1
  76. package/sdk/dist/index.d.ts +18 -3
  77. package/sdk/dist/index.d.ts.map +1 -1
  78. package/sdk/dist/index.js +12 -1
  79. package/sdk/dist/index.js.map +1 -1
  80. package/sdk/dist/kernel.d.ts +34 -0
  81. package/sdk/dist/kernel.d.ts.map +1 -1
  82. package/sdk/dist/kernel.js +15 -1
  83. package/sdk/dist/kernel.js.map +1 -1
  84. package/sdk/dist/namespaces/admin.d.ts.map +1 -1
  85. package/sdk/dist/namespaces/admin.js +8 -0
  86. package/sdk/dist/namespaces/admin.js.map +1 -1
  87. package/sdk/dist/namespaces/agent.d.ts +2 -2
  88. package/sdk/dist/namespaces/agent.d.ts.map +1 -1
  89. package/sdk/dist/namespaces/agent.js +4 -0
  90. package/sdk/dist/namespaces/agent.js.map +1 -1
  91. package/sdk/dist/namespaces/agent.types.d.ts +5 -0
  92. package/sdk/dist/namespaces/agent.types.d.ts.map +1 -1
  93. package/sdk/dist/namespaces/apps.d.ts.map +1 -1
  94. package/sdk/dist/namespaces/apps.js +2 -0
  95. package/sdk/dist/namespaces/apps.js.map +1 -1
  96. package/sdk/dist/namespaces/auth.d.ts.map +1 -1
  97. package/sdk/dist/namespaces/auth.js +9 -0
  98. package/sdk/dist/namespaces/auth.js.map +1 -1
  99. package/sdk/dist/namespaces/branches.d.ts.map +1 -1
  100. package/sdk/dist/namespaces/branches.js +2 -0
  101. package/sdk/dist/namespaces/branches.js.map +1 -1
  102. package/sdk/dist/namespaces/ci.d.ts.map +1 -1
  103. package/sdk/dist/namespaces/ci.js +2 -0
  104. package/sdk/dist/namespaces/ci.js.map +1 -1
  105. package/sdk/dist/namespaces/credentials.d.ts +0 -23
  106. package/sdk/dist/namespaces/credentials.d.ts.map +1 -1
  107. package/sdk/dist/namespaces/credentials.js +29 -0
  108. package/sdk/dist/namespaces/credentials.js.map +1 -1
  109. package/sdk/dist/namespaces/escalations.d.ts.map +1 -1
  110. package/sdk/dist/namespaces/escalations.js +2 -0
  111. package/sdk/dist/namespaces/escalations.js.map +1 -1
  112. package/sdk/dist/namespaces/grants.d.ts.map +1 -1
  113. package/sdk/dist/namespaces/grants.js +4 -0
  114. package/sdk/dist/namespaces/grants.js.map +1 -1
  115. package/sdk/dist/namespaces/live.d.ts +0 -16
  116. package/sdk/dist/namespaces/live.d.ts.map +1 -1
  117. package/sdk/dist/namespaces/live.js +19 -0
  118. package/sdk/dist/namespaces/live.js.map +1 -1
  119. package/sdk/dist/namespaces/me.d.ts.map +1 -1
  120. package/sdk/dist/namespaces/me.js +3 -0
  121. package/sdk/dist/namespaces/me.js.map +1 -1
  122. package/sdk/dist/namespaces/org.d.ts.map +1 -1
  123. package/sdk/dist/namespaces/org.js +3 -0
  124. package/sdk/dist/namespaces/org.js.map +1 -1
  125. package/sdk/dist/namespaces/projects.d.ts.map +1 -1
  126. package/sdk/dist/namespaces/projects.js +5 -0
  127. package/sdk/dist/namespaces/projects.js.map +1 -1
  128. package/sdk/dist/namespaces/repos.d.ts.map +1 -1
  129. package/sdk/dist/namespaces/repos.js +5 -0
  130. package/sdk/dist/namespaces/repos.js.map +1 -1
  131. package/sdk/dist/namespaces/rooms.d.ts.map +1 -1
  132. package/sdk/dist/namespaces/rooms.js +3 -0
  133. package/sdk/dist/namespaces/rooms.js.map +1 -1
  134. package/sdk/dist/namespaces/session.d.ts.map +1 -1
  135. package/sdk/dist/namespaces/session.js +18 -0
  136. package/sdk/dist/namespaces/session.js.map +1 -1
  137. package/sdk/dist/namespaces/transfers.d.ts.map +1 -1
  138. package/sdk/dist/namespaces/transfers.js +3 -0
  139. package/sdk/dist/namespaces/transfers.js.map +1 -1
  140. package/sdk/dist/namespaces/wallets.d.ts.map +1 -1
  141. package/sdk/dist/namespaces/wallets.js +2 -0
  142. package/sdk/dist/namespaces/wallets.js.map +1 -1
  143. package/sdk/dist/namespaces/write-approval.d.ts.map +1 -1
  144. package/sdk/dist/namespaces/write-approval.js +3 -0
  145. package/sdk/dist/namespaces/write-approval.js.map +1 -1
  146. package/sdk/dist/node/actions-node.d.ts.map +1 -1
  147. package/sdk/dist/node/actions-node.js +3 -0
  148. package/sdk/dist/node/actions-node.js.map +1 -1
  149. package/sdk/dist/node/buzz-doctor-contract.d.ts +155 -0
  150. package/sdk/dist/node/buzz-doctor-contract.d.ts.map +1 -0
  151. package/sdk/dist/node/buzz-doctor-contract.js +385 -0
  152. package/sdk/dist/node/buzz-doctor-contract.js.map +1 -0
  153. package/sdk/dist/node/buzz-doctor.d.ts +155 -0
  154. package/sdk/dist/node/buzz-doctor.d.ts.map +1 -0
  155. package/sdk/dist/node/buzz-doctor.js +810 -0
  156. package/sdk/dist/node/buzz-doctor.js.map +1 -0
  157. package/sdk/dist/node/credentials.d.ts +9 -4
  158. package/sdk/dist/node/credentials.d.ts.map +1 -1
  159. package/sdk/dist/node/credentials.js +1 -1
  160. package/sdk/dist/node/credentials.js.map +1 -1
  161. package/sdk/dist/node/diagnostics.d.ts +45 -0
  162. package/sdk/dist/node/diagnostics.d.ts.map +1 -0
  163. package/sdk/dist/node/diagnostics.js +67 -0
  164. package/sdk/dist/node/diagnostics.js.map +1 -0
  165. package/sdk/dist/node/doctor.d.ts +101 -0
  166. package/sdk/dist/node/doctor.d.ts.map +1 -0
  167. package/sdk/dist/node/doctor.js +618 -0
  168. package/sdk/dist/node/doctor.js.map +1 -0
  169. package/sdk/dist/node/index.d.ts +57 -5
  170. package/sdk/dist/node/index.d.ts.map +1 -1
  171. package/sdk/dist/node/index.js +36 -1
  172. package/sdk/dist/node/index.js.map +1 -1
  173. package/sdk/dist/node/init.d.ts +137 -0
  174. package/sdk/dist/node/init.d.ts.map +1 -0
  175. package/sdk/dist/node/init.js +507 -0
  176. package/sdk/dist/node/init.js.map +1 -0
  177. package/sdk/dist/node/lightning-wallet.d.ts +61 -0
  178. package/sdk/dist/node/lightning-wallet.d.ts.map +1 -0
  179. package/sdk/dist/node/lightning-wallet.js +126 -0
  180. package/sdk/dist/node/lightning-wallet.js.map +1 -0
  181. package/sdk/dist/node/local-actions.d.ts +23 -0
  182. package/sdk/dist/node/local-actions.d.ts.map +1 -0
  183. package/sdk/dist/node/local-actions.js +38 -0
  184. package/sdk/dist/node/local-actions.js.map +1 -0
  185. package/sdk/dist/node/org-context.d.ts +169 -0
  186. package/sdk/dist/node/org-context.d.ts.map +1 -0
  187. package/sdk/dist/node/org-context.js +403 -0
  188. package/sdk/dist/node/org-context.js.map +1 -0
  189. package/sdk/dist/node/status.d.ts +62 -0
  190. package/sdk/dist/node/status.d.ts.map +1 -0
  191. package/sdk/dist/node/status.js +132 -0
  192. package/sdk/dist/node/status.js.map +1 -0
  193. package/sdk/dist/node/vault-target.d.ts +49 -0
  194. package/sdk/dist/node/vault-target.d.ts.map +1 -0
  195. package/sdk/dist/node/vault-target.js +109 -0
  196. package/sdk/dist/node/vault-target.js.map +1 -0
  197. package/sdk/dist/node/wallets.d.ts +242 -0
  198. package/sdk/dist/node/wallets.d.ts.map +1 -0
  199. package/sdk/dist/node/wallets.js +484 -0
  200. package/sdk/dist/node/wallets.js.map +1 -0
  201. package/sdk/dist/secret-gate.d.ts +377 -0
  202. package/sdk/dist/secret-gate.d.ts.map +1 -0
  203. package/sdk/dist/secret-gate.js +273 -0
  204. package/sdk/dist/secret-gate.js.map +1 -0
  205. package/dist/active-project.d.ts +0 -3
  206. package/dist/active-project.d.ts.map +0 -1
  207. package/dist/active-project.js +0 -36
  208. package/dist/active-project.js.map +0 -1
  209. package/dist/format-bytes.d.ts +0 -2
  210. package/dist/format-bytes.d.ts.map +0 -1
  211. package/dist/format-bytes.js +0 -24
  212. package/dist/format-bytes.js.map +0 -1
  213. package/dist/harness-context.d.ts +0 -126
  214. package/dist/harness-context.d.ts.map +0 -1
  215. package/dist/harness-context.js +0 -283
  216. package/dist/harness-context.js.map +0 -1
  217. package/dist/tool-profiles.d.ts +0 -52
  218. package/dist/tool-profiles.d.ts.map +0 -1
  219. package/dist/tool-profiles.js +0 -77
  220. package/dist/tool-profiles.js.map +0 -1
  221. package/dist/tools/ack-room-message.d.ts +0 -22
  222. package/dist/tools/ack-room-message.d.ts.map +0 -1
  223. package/dist/tools/ack-room-message.js +0 -29
  224. package/dist/tools/ack-room-message.js.map +0 -1
  225. package/dist/tools/admin-archive-project.d.ts +0 -16
  226. package/dist/tools/admin-archive-project.d.ts.map +0 -1
  227. package/dist/tools/admin-archive-project.js +0 -41
  228. package/dist/tools/admin-archive-project.js.map +0 -1
  229. package/dist/tools/admin-reactivate-project.d.ts +0 -14
  230. package/dist/tools/admin-reactivate-project.d.ts.map +0 -1
  231. package/dist/tools/admin-reactivate-project.js +0 -35
  232. package/dist/tools/admin-reactivate-project.js.map +0 -1
  233. package/dist/tools/admin-set-lease-perpetual.d.ts +0 -16
  234. package/dist/tools/admin-set-lease-perpetual.d.ts.map +0 -1
  235. package/dist/tools/admin-set-lease-perpetual.js +0 -34
  236. package/dist/tools/admin-set-lease-perpetual.js.map +0 -1
  237. package/dist/tools/ai-moderate.d.ts +0 -16
  238. package/dist/tools/ai-moderate.d.ts.map +0 -1
  239. package/dist/tools/ai-moderate.js +0 -29
  240. package/dist/tools/ai-moderate.js.map +0 -1
  241. package/dist/tools/ai-translate.d.ts +0 -22
  242. package/dist/tools/ai-translate.d.ts.map +0 -1
  243. package/dist/tools/ai-translate.js +0 -50
  244. package/dist/tools/ai-translate.js.map +0 -1
  245. package/dist/tools/ai-usage.d.ts +0 -14
  246. package/dist/tools/ai-usage.d.ts.map +0 -1
  247. package/dist/tools/ai-usage.js +0 -33
  248. package/dist/tools/ai-usage.js.map +0 -1
  249. package/dist/tools/apply-expose.d.ts +0 -135
  250. package/dist/tools/apply-expose.d.ts.map +0 -1
  251. package/dist/tools/apply-expose.js +0 -73
  252. package/dist/tools/apply-expose.js.map +0 -1
  253. package/dist/tools/assets-diagnose.d.ts +0 -30
  254. package/dist/tools/assets-diagnose.d.ts.map +0 -1
  255. package/dist/tools/assets-diagnose.js +0 -65
  256. package/dist/tools/assets-diagnose.js.map +0 -1
  257. package/dist/tools/assets-get.d.ts +0 -20
  258. package/dist/tools/assets-get.d.ts.map +0 -1
  259. package/dist/tools/assets-get.js +0 -44
  260. package/dist/tools/assets-get.js.map +0 -1
  261. package/dist/tools/assets-ls.d.ts +0 -54
  262. package/dist/tools/assets-ls.d.ts.map +0 -1
  263. package/dist/tools/assets-ls.js +0 -81
  264. package/dist/tools/assets-ls.js.map +0 -1
  265. package/dist/tools/assets-put.d.ts +0 -32
  266. package/dist/tools/assets-put.d.ts.map +0 -1
  267. package/dist/tools/assets-put.js +0 -117
  268. package/dist/tools/assets-put.js.map +0 -1
  269. package/dist/tools/assets-rm.d.ts +0 -18
  270. package/dist/tools/assets-rm.d.ts.map +0 -1
  271. package/dist/tools/assets-rm.js +0 -17
  272. package/dist/tools/assets-rm.js.map +0 -1
  273. package/dist/tools/assets-sign.d.ts +0 -20
  274. package/dist/tools/assets-sign.d.ts.map +0 -1
  275. package/dist/tools/assets-sign.js +0 -25
  276. package/dist/tools/assets-sign.js.map +0 -1
  277. package/dist/tools/assets-wait-fresh.d.ts +0 -30
  278. package/dist/tools/assets-wait-fresh.d.ts.map +0 -1
  279. package/dist/tools/assets-wait-fresh.js +0 -51
  280. package/dist/tools/assets-wait-fresh.js.map +0 -1
  281. package/dist/tools/auth-settings.d.ts +0 -24
  282. package/dist/tools/auth-settings.d.ts.map +0 -1
  283. package/dist/tools/auth-settings.js +0 -42
  284. package/dist/tools/auth-settings.js.map +0 -1
  285. package/dist/tools/auth-users.d.ts +0 -40
  286. package/dist/tools/auth-users.d.ts.map +0 -1
  287. package/dist/tools/auth-users.js +0 -77
  288. package/dist/tools/auth-users.js.map +0 -1
  289. package/dist/tools/billing-history.d.ts +0 -16
  290. package/dist/tools/billing-history.d.ts.map +0 -1
  291. package/dist/tools/billing-history.js +0 -34
  292. package/dist/tools/billing-history.js.map +0 -1
  293. package/dist/tools/browse-apps.d.ts +0 -14
  294. package/dist/tools/browse-apps.d.ts.map +0 -1
  295. package/dist/tools/browse-apps.js +0 -37
  296. package/dist/tools/browse-apps.js.map +0 -1
  297. package/dist/tools/buzz-route-deliveries.d.ts +0 -27
  298. package/dist/tools/buzz-route-deliveries.d.ts.map +0 -1
  299. package/dist/tools/buzz-route-deliveries.js +0 -68
  300. package/dist/tools/buzz-route-deliveries.js.map +0 -1
  301. package/dist/tools/check-balance.d.ts +0 -14
  302. package/dist/tools/check-balance.d.ts.map +0 -1
  303. package/dist/tools/check-balance.js +0 -31
  304. package/dist/tools/check-balance.js.map +0 -1
  305. package/dist/tools/ci.d.ts +0 -52
  306. package/dist/tools/ci.d.ts.map +0 -1
  307. package/dist/tools/ci.js +0 -150
  308. package/dist/tools/ci.js.map +0 -1
  309. package/dist/tools/claim-room-resource.d.ts +0 -28
  310. package/dist/tools/claim-room-resource.d.ts.map +0 -1
  311. package/dist/tools/claim-room-resource.js +0 -36
  312. package/dist/tools/claim-room-resource.js.map +0 -1
  313. package/dist/tools/contract-call.d.ts +0 -30
  314. package/dist/tools/contract-call.d.ts.map +0 -1
  315. package/dist/tools/contract-call.js +0 -33
  316. package/dist/tools/contract-call.js.map +0 -1
  317. package/dist/tools/contract-deploy.d.ts +0 -24
  318. package/dist/tools/contract-deploy.d.ts.map +0 -1
  319. package/dist/tools/contract-deploy.js +0 -36
  320. package/dist/tools/contract-deploy.js.map +0 -1
  321. package/dist/tools/contract-read.d.ts +0 -22
  322. package/dist/tools/contract-read.d.ts.map +0 -1
  323. package/dist/tools/contract-read.js +0 -26
  324. package/dist/tools/contract-read.js.map +0 -1
  325. package/dist/tools/create-checkout.d.ts +0 -24
  326. package/dist/tools/create-checkout.d.ts.map +0 -1
  327. package/dist/tools/create-checkout.js +0 -58
  328. package/dist/tools/create-checkout.js.map +0 -1
  329. package/dist/tools/create-email-organization.d.ts +0 -14
  330. package/dist/tools/create-email-organization.d.ts.map +0 -1
  331. package/dist/tools/create-email-organization.js +0 -21
  332. package/dist/tools/create-email-organization.js.map +0 -1
  333. package/dist/tools/create-mailbox.d.ts +0 -16
  334. package/dist/tools/create-mailbox.d.ts.map +0 -1
  335. package/dist/tools/create-mailbox.js +0 -61
  336. package/dist/tools/create-mailbox.js.map +0 -1
  337. package/dist/tools/create-notification-rule.d.ts +0 -22
  338. package/dist/tools/create-notification-rule.d.ts.map +0 -1
  339. package/dist/tools/create-notification-rule.js +0 -41
  340. package/dist/tools/create-notification-rule.js.map +0 -1
  341. package/dist/tools/delete-function.d.ts +0 -16
  342. package/dist/tools/delete-function.d.ts.map +0 -1
  343. package/dist/tools/delete-function.js +0 -24
  344. package/dist/tools/delete-function.js.map +0 -1
  345. package/dist/tools/delete-mailbox-webhook.d.ts +0 -18
  346. package/dist/tools/delete-mailbox-webhook.d.ts.map +0 -1
  347. package/dist/tools/delete-mailbox-webhook.js +0 -25
  348. package/dist/tools/delete-mailbox-webhook.js.map +0 -1
  349. package/dist/tools/delete-mailbox.d.ts +0 -18
  350. package/dist/tools/delete-mailbox.d.ts.map +0 -1
  351. package/dist/tools/delete-mailbox.js +0 -41
  352. package/dist/tools/delete-mailbox.js.map +0 -1
  353. package/dist/tools/delete-notification-rule.d.ts +0 -14
  354. package/dist/tools/delete-notification-rule.d.ts.map +0 -1
  355. package/dist/tools/delete-notification-rule.js +0 -20
  356. package/dist/tools/delete-notification-rule.js.map +0 -1
  357. package/dist/tools/delete-project.d.ts +0 -14
  358. package/dist/tools/delete-project.d.ts.map +0 -1
  359. package/dist/tools/delete-project.js +0 -25
  360. package/dist/tools/delete-project.js.map +0 -1
  361. package/dist/tools/delete-secret.d.ts +0 -16
  362. package/dist/tools/delete-secret.d.ts.map +0 -1
  363. package/dist/tools/delete-secret.js +0 -24
  364. package/dist/tools/delete-secret.js.map +0 -1
  365. package/dist/tools/delete-signer.d.ts +0 -16
  366. package/dist/tools/delete-signer.d.ts.map +0 -1
  367. package/dist/tools/delete-signer.js +0 -17
  368. package/dist/tools/delete-signer.js.map +0 -1
  369. package/dist/tools/delete-version.d.ts +0 -16
  370. package/dist/tools/delete-version.d.ts.map +0 -1
  371. package/dist/tools/delete-version.js +0 -17
  372. package/dist/tools/delete-version.js.map +0 -1
  373. package/dist/tools/demote-user.d.ts +0 -16
  374. package/dist/tools/demote-user.d.ts.map +0 -1
  375. package/dist/tools/demote-user.js +0 -24
  376. package/dist/tools/demote-user.js.map +0 -1
  377. package/dist/tools/deploy-events.d.ts +0 -25
  378. package/dist/tools/deploy-events.d.ts.map +0 -1
  379. package/dist/tools/deploy-events.js +0 -69
  380. package/dist/tools/deploy-events.js.map +0 -1
  381. package/dist/tools/deploy-function.d.ts +0 -36
  382. package/dist/tools/deploy-function.d.ts.map +0 -1
  383. package/dist/tools/deploy-function.js +0 -91
  384. package/dist/tools/deploy-function.js.map +0 -1
  385. package/dist/tools/deploy-list.d.ts +0 -25
  386. package/dist/tools/deploy-list.d.ts.map +0 -1
  387. package/dist/tools/deploy-list.js +0 -71
  388. package/dist/tools/deploy-list.js.map +0 -1
  389. package/dist/tools/deploy-rehearse.d.ts +0 -22
  390. package/dist/tools/deploy-rehearse.d.ts.map +0 -1
  391. package/dist/tools/deploy-rehearse.js +0 -76
  392. package/dist/tools/deploy-rehearse.js.map +0 -1
  393. package/dist/tools/deploy-releases.d.ts +0 -55
  394. package/dist/tools/deploy-releases.d.ts.map +0 -1
  395. package/dist/tools/deploy-releases.js +0 -168
  396. package/dist/tools/deploy-releases.js.map +0 -1
  397. package/dist/tools/deploy-resolve.d.ts +0 -27
  398. package/dist/tools/deploy-resolve.d.ts.map +0 -1
  399. package/dist/tools/deploy-resolve.js +0 -129
  400. package/dist/tools/deploy-resolve.js.map +0 -1
  401. package/dist/tools/deploy-resume.d.ts +0 -22
  402. package/dist/tools/deploy-resume.d.ts.map +0 -1
  403. package/dist/tools/deploy-resume.js +0 -80
  404. package/dist/tools/deploy-resume.js.map +0 -1
  405. package/dist/tools/deploy-site-dir.d.ts +0 -16
  406. package/dist/tools/deploy-site-dir.d.ts.map +0 -1
  407. package/dist/tools/deploy-site-dir.js +0 -77
  408. package/dist/tools/deploy-site-dir.js.map +0 -1
  409. package/dist/tools/deploy-site.d.ts +0 -32
  410. package/dist/tools/deploy-site.d.ts.map +0 -1
  411. package/dist/tools/deploy-site.js +0 -65
  412. package/dist/tools/deploy-site.js.map +0 -1
  413. package/dist/tools/deploy-verify-edge.d.ts +0 -24
  414. package/dist/tools/deploy-verify-edge.d.ts.map +0 -1
  415. package/dist/tools/deploy-verify-edge.js +0 -120
  416. package/dist/tools/deploy-verify-edge.js.map +0 -1
  417. package/dist/tools/domains.d.ts +0 -84
  418. package/dist/tools/domains.d.ts.map +0 -1
  419. package/dist/tools/domains.js +0 -134
  420. package/dist/tools/domains.js.map +0 -1
  421. package/dist/tools/drain-signer.d.ts +0 -18
  422. package/dist/tools/drain-signer.d.ts.map +0 -1
  423. package/dist/tools/drain-signer.js +0 -18
  424. package/dist/tools/drain-signer.js.map +0 -1
  425. package/dist/tools/errors-list.d.ts +0 -43
  426. package/dist/tools/errors-list.d.ts.map +0 -1
  427. package/dist/tools/errors-list.js +0 -79
  428. package/dist/tools/errors-list.js.map +0 -1
  429. package/dist/tools/escalations-shared.d.ts +0 -13
  430. package/dist/tools/escalations-shared.d.ts.map +0 -1
  431. package/dist/tools/escalations-shared.js +0 -32
  432. package/dist/tools/escalations-shared.js.map +0 -1
  433. package/dist/tools/fork-app.d.ts +0 -18
  434. package/dist/tools/fork-app.d.ts.map +0 -1
  435. package/dist/tools/fork-app.js +0 -45
  436. package/dist/tools/fork-app.js.map +0 -1
  437. package/dist/tools/function-runs.d.ts +0 -172
  438. package/dist/tools/function-runs.d.ts.map +0 -1
  439. package/dist/tools/function-runs.js +0 -243
  440. package/dist/tools/function-runs.js.map +0 -1
  441. package/dist/tools/functions-rebuild.d.ts +0 -16
  442. package/dist/tools/functions-rebuild.d.ts.map +0 -1
  443. package/dist/tools/functions-rebuild.js +0 -75
  444. package/dist/tools/functions-rebuild.js.map +0 -1
  445. package/dist/tools/generate-image.d.ts +0 -20
  446. package/dist/tools/generate-image.d.ts.map +0 -1
  447. package/dist/tools/generate-image.js +0 -113
  448. package/dist/tools/generate-image.js.map +0 -1
  449. package/dist/tools/get-agent-contact-status.d.ts +0 -9
  450. package/dist/tools/get-agent-contact-status.d.ts.map +0 -1
  451. package/dist/tools/get-agent-contact-status.js +0 -18
  452. package/dist/tools/get-agent-contact-status.js.map +0 -1
  453. package/dist/tools/get-app.d.ts +0 -14
  454. package/dist/tools/get-app.d.ts.map +0 -1
  455. package/dist/tools/get-app.js +0 -42
  456. package/dist/tools/get-app.js.map +0 -1
  457. package/dist/tools/get-buzz-route.d.ts +0 -26
  458. package/dist/tools/get-buzz-route.d.ts.map +0 -1
  459. package/dist/tools/get-buzz-route.js +0 -100
  460. package/dist/tools/get-buzz-route.js.map +0 -1
  461. package/dist/tools/get-contract-call-status.d.ts +0 -16
  462. package/dist/tools/get-contract-call-status.d.ts.map +0 -1
  463. package/dist/tools/get-contract-call-status.js +0 -17
  464. package/dist/tools/get-contract-call-status.js.map +0 -1
  465. package/dist/tools/get-email-raw.d.ts +0 -29
  466. package/dist/tools/get-email-raw.d.ts.map +0 -1
  467. package/dist/tools/get-email-raw.js +0 -54
  468. package/dist/tools/get-email-raw.js.map +0 -1
  469. package/dist/tools/get-email.d.ts +0 -18
  470. package/dist/tools/get-email.d.ts.map +0 -1
  471. package/dist/tools/get-email.js +0 -43
  472. package/dist/tools/get-email.js.map +0 -1
  473. package/dist/tools/get-escalation.d.ts +0 -25
  474. package/dist/tools/get-escalation.d.ts.map +0 -1
  475. package/dist/tools/get-escalation.js +0 -74
  476. package/dist/tools/get-escalation.js.map +0 -1
  477. package/dist/tools/get-expose.d.ts +0 -14
  478. package/dist/tools/get-expose.d.ts.map +0 -1
  479. package/dist/tools/get-expose.js +0 -36
  480. package/dist/tools/get-expose.js.map +0 -1
  481. package/dist/tools/get-function-logs.d.ts +0 -25
  482. package/dist/tools/get-function-logs.d.ts.map +0 -1
  483. package/dist/tools/get-function-logs.js +0 -143
  484. package/dist/tools/get-function-logs.js.map +0 -1
  485. package/dist/tools/get-mailbox-webhook.d.ts +0 -18
  486. package/dist/tools/get-mailbox-webhook.d.ts.map +0 -1
  487. package/dist/tools/get-mailbox-webhook.js +0 -30
  488. package/dist/tools/get-mailbox-webhook.js.map +0 -1
  489. package/dist/tools/get-mailbox.d.ts +0 -16
  490. package/dist/tools/get-mailbox.d.ts.map +0 -1
  491. package/dist/tools/get-mailbox.js +0 -65
  492. package/dist/tools/get-mailbox.js.map +0 -1
  493. package/dist/tools/get-notification-preferences.d.ts +0 -9
  494. package/dist/tools/get-notification-preferences.d.ts.map +0 -1
  495. package/dist/tools/get-notification-preferences.js +0 -17
  496. package/dist/tools/get-notification-preferences.js.map +0 -1
  497. package/dist/tools/get-quote.d.ts +0 -9
  498. package/dist/tools/get-quote.d.ts.map +0 -1
  499. package/dist/tools/get-quote.js +0 -24
  500. package/dist/tools/get-quote.js.map +0 -1
  501. package/dist/tools/get-room.d.ts +0 -20
  502. package/dist/tools/get-room.d.ts.map +0 -1
  503. package/dist/tools/get-room.js +0 -25
  504. package/dist/tools/get-room.js.map +0 -1
  505. package/dist/tools/get-schema.d.ts +0 -14
  506. package/dist/tools/get-schema.d.ts.map +0 -1
  507. package/dist/tools/get-schema.js +0 -72
  508. package/dist/tools/get-schema.js.map +0 -1
  509. package/dist/tools/get-signer.d.ts +0 -16
  510. package/dist/tools/get-signer.d.ts.map +0 -1
  511. package/dist/tools/get-signer.js +0 -17
  512. package/dist/tools/get-signer.js.map +0 -1
  513. package/dist/tools/get-usage.d.ts +0 -14
  514. package/dist/tools/get-usage.d.ts.map +0 -1
  515. package/dist/tools/get-usage.js +0 -41
  516. package/dist/tools/get-usage.js.map +0 -1
  517. package/dist/tools/grants.d.ts +0 -56
  518. package/dist/tools/grants.d.ts.map +0 -1
  519. package/dist/tools/grants.js +0 -99
  520. package/dist/tools/grants.js.map +0 -1
  521. package/dist/tools/init.d.ts +0 -16
  522. package/dist/tools/init.d.ts.map +0 -1
  523. package/dist/tools/init.js +0 -186
  524. package/dist/tools/init.js.map +0 -1
  525. package/dist/tools/invoke-function.d.ts +0 -30
  526. package/dist/tools/invoke-function.d.ts.map +0 -1
  527. package/dist/tools/invoke-function.js +0 -77
  528. package/dist/tools/invoke-function.js.map +0 -1
  529. package/dist/tools/jobs.d.ts +0 -124
  530. package/dist/tools/jobs.d.ts.map +0 -1
  531. package/dist/tools/jobs.js +0 -160
  532. package/dist/tools/jobs.js.map +0 -1
  533. package/dist/tools/join-room.d.ts +0 -24
  534. package/dist/tools/join-room.d.ts.map +0 -1
  535. package/dist/tools/join-room.js +0 -59
  536. package/dist/tools/join-room.js.map +0 -1
  537. package/dist/tools/leave-room.d.ts +0 -22
  538. package/dist/tools/leave-room.d.ts.map +0 -1
  539. package/dist/tools/leave-room.js +0 -40
  540. package/dist/tools/leave-room.js.map +0 -1
  541. package/dist/tools/lightning-topup.d.ts +0 -28
  542. package/dist/tools/lightning-topup.d.ts.map +0 -1
  543. package/dist/tools/lightning-topup.js +0 -57
  544. package/dist/tools/lightning-topup.js.map +0 -1
  545. package/dist/tools/lightning-wallet.d.ts +0 -21
  546. package/dist/tools/lightning-wallet.d.ts.map +0 -1
  547. package/dist/tools/lightning-wallet.js +0 -91
  548. package/dist/tools/lightning-wallet.js.map +0 -1
  549. package/dist/tools/link-wallet-to-organization.d.ts +0 -16
  550. package/dist/tools/link-wallet-to-organization.d.ts.map +0 -1
  551. package/dist/tools/link-wallet-to-organization.js +0 -41
  552. package/dist/tools/link-wallet-to-organization.js.map +0 -1
  553. package/dist/tools/list-emails.d.ts +0 -22
  554. package/dist/tools/list-emails.d.ts.map +0 -1
  555. package/dist/tools/list-emails.js +0 -54
  556. package/dist/tools/list-emails.js.map +0 -1
  557. package/dist/tools/list-functions.d.ts +0 -14
  558. package/dist/tools/list-functions.d.ts.map +0 -1
  559. package/dist/tools/list-functions.js +0 -115
  560. package/dist/tools/list-functions.js.map +0 -1
  561. package/dist/tools/list-mailbox-webhook-deliveries.d.ts +0 -22
  562. package/dist/tools/list-mailbox-webhook-deliveries.d.ts.map +0 -1
  563. package/dist/tools/list-mailbox-webhook-deliveries.js +0 -52
  564. package/dist/tools/list-mailbox-webhook-deliveries.js.map +0 -1
  565. package/dist/tools/list-mailbox-webhooks.d.ts +0 -16
  566. package/dist/tools/list-mailbox-webhooks.d.ts.map +0 -1
  567. package/dist/tools/list-mailbox-webhooks.js +0 -28
  568. package/dist/tools/list-mailbox-webhooks.js.map +0 -1
  569. package/dist/tools/list-mailboxes.d.ts +0 -14
  570. package/dist/tools/list-mailboxes.d.ts.map +0 -1
  571. package/dist/tools/list-mailboxes.js +0 -58
  572. package/dist/tools/list-mailboxes.js.map +0 -1
  573. package/dist/tools/list-notification-channels.d.ts +0 -9
  574. package/dist/tools/list-notification-channels.d.ts.map +0 -1
  575. package/dist/tools/list-notification-channels.js +0 -17
  576. package/dist/tools/list-notification-channels.js.map +0 -1
  577. package/dist/tools/list-notification-rules.d.ts +0 -9
  578. package/dist/tools/list-notification-rules.d.ts.map +0 -1
  579. package/dist/tools/list-notification-rules.js +0 -17
  580. package/dist/tools/list-notification-rules.js.map +0 -1
  581. package/dist/tools/list-notifications.d.ts +0 -20
  582. package/dist/tools/list-notifications.d.ts.map +0 -1
  583. package/dist/tools/list-notifications.js +0 -23
  584. package/dist/tools/list-notifications.js.map +0 -1
  585. package/dist/tools/list-project-events.d.ts +0 -47
  586. package/dist/tools/list-project-events.d.ts.map +0 -1
  587. package/dist/tools/list-project-events.js +0 -65
  588. package/dist/tools/list-project-events.js.map +0 -1
  589. package/dist/tools/list-projects.d.ts +0 -20
  590. package/dist/tools/list-projects.d.ts.map +0 -1
  591. package/dist/tools/list-projects.js +0 -70
  592. package/dist/tools/list-projects.js.map +0 -1
  593. package/dist/tools/list-rooms.d.ts +0 -18
  594. package/dist/tools/list-rooms.d.ts.map +0 -1
  595. package/dist/tools/list-rooms.js +0 -28
  596. package/dist/tools/list-rooms.js.map +0 -1
  597. package/dist/tools/list-secrets.d.ts +0 -14
  598. package/dist/tools/list-secrets.d.ts.map +0 -1
  599. package/dist/tools/list-secrets.js +0 -35
  600. package/dist/tools/list-secrets.js.map +0 -1
  601. package/dist/tools/list-signers.d.ts +0 -14
  602. package/dist/tools/list-signers.d.ts.map +0 -1
  603. package/dist/tools/list-signers.js +0 -16
  604. package/dist/tools/list-signers.js.map +0 -1
  605. package/dist/tools/list-subdomains.d.ts +0 -14
  606. package/dist/tools/list-subdomains.d.ts.map +0 -1
  607. package/dist/tools/list-subdomains.js +0 -35
  608. package/dist/tools/list-subdomains.js.map +0 -1
  609. package/dist/tools/list-tenant-payments.d.ts +0 -22
  610. package/dist/tools/list-tenant-payments.d.ts.map +0 -1
  611. package/dist/tools/list-tenant-payments.js +0 -47
  612. package/dist/tools/list-tenant-payments.js.map +0 -1
  613. package/dist/tools/list-versions.d.ts +0 -14
  614. package/dist/tools/list-versions.d.ts.map +0 -1
  615. package/dist/tools/list-versions.js +0 -36
  616. package/dist/tools/list-versions.js.map +0 -1
  617. package/dist/tools/orgs.d.ts +0 -93
  618. package/dist/tools/orgs.d.ts.map +0 -1
  619. package/dist/tools/orgs.js +0 -323
  620. package/dist/tools/orgs.js.map +0 -1
  621. package/dist/tools/passkeys.d.ts +0 -72
  622. package/dist/tools/passkeys.d.ts.map +0 -1
  623. package/dist/tools/passkeys.js +0 -156
  624. package/dist/tools/passkeys.js.map +0 -1
  625. package/dist/tools/pay-url.d.ts +0 -39
  626. package/dist/tools/pay-url.d.ts.map +0 -1
  627. package/dist/tools/pay-url.js +0 -106
  628. package/dist/tools/pay-url.js.map +0 -1
  629. package/dist/tools/project-archives.d.ts +0 -62
  630. package/dist/tools/project-archives.d.ts.map +0 -1
  631. package/dist/tools/project-archives.js +0 -127
  632. package/dist/tools/project-archives.js.map +0 -1
  633. package/dist/tools/project-branches.d.ts +0 -50
  634. package/dist/tools/project-branches.d.ts.map +0 -1
  635. package/dist/tools/project-branches.js +0 -84
  636. package/dist/tools/project-branches.js.map +0 -1
  637. package/dist/tools/project-get.d.ts +0 -16
  638. package/dist/tools/project-get.d.ts.map +0 -1
  639. package/dist/tools/project-get.js +0 -46
  640. package/dist/tools/project-get.js.map +0 -1
  641. package/dist/tools/project-key-cache-export.d.ts +0 -18
  642. package/dist/tools/project-key-cache-export.d.ts.map +0 -1
  643. package/dist/tools/project-key-cache-export.js +0 -29
  644. package/dist/tools/project-key-cache-export.js.map +0 -1
  645. package/dist/tools/project-key-cache-status.d.ts +0 -16
  646. package/dist/tools/project-key-cache-status.d.ts.map +0 -1
  647. package/dist/tools/project-key-cache-status.js +0 -34
  648. package/dist/tools/project-key-cache-status.js.map +0 -1
  649. package/dist/tools/project-snapshots.d.ts +0 -56
  650. package/dist/tools/project-snapshots.d.ts.map +0 -1
  651. package/dist/tools/project-snapshots.js +0 -100
  652. package/dist/tools/project-snapshots.js.map +0 -1
  653. package/dist/tools/project-use.d.ts +0 -16
  654. package/dist/tools/project-use.d.ts.map +0 -1
  655. package/dist/tools/project-use.js +0 -23
  656. package/dist/tools/project-use.js.map +0 -1
  657. package/dist/tools/promote-user.d.ts +0 -16
  658. package/dist/tools/promote-user.d.ts.map +0 -1
  659. package/dist/tools/promote-user.js +0 -24
  660. package/dist/tools/promote-user.js.map +0 -1
  661. package/dist/tools/provision-signer.d.ts +0 -18
  662. package/dist/tools/provision-signer.d.ts.map +0 -1
  663. package/dist/tools/provision-signer.js +0 -21
  664. package/dist/tools/provision-signer.js.map +0 -1
  665. package/dist/tools/provision.d.ts +0 -18
  666. package/dist/tools/provision.d.ts.map +0 -1
  667. package/dist/tools/provision.js +0 -73
  668. package/dist/tools/provision.js.map +0 -1
  669. package/dist/tools/publish-app.d.ts +0 -22
  670. package/dist/tools/publish-app.d.ts.map +0 -1
  671. package/dist/tools/publish-app.js +0 -47
  672. package/dist/tools/publish-app.js.map +0 -1
  673. package/dist/tools/raise-escalation.d.ts +0 -31
  674. package/dist/tools/raise-escalation.d.ts.map +0 -1
  675. package/dist/tools/raise-escalation.js +0 -69
  676. package/dist/tools/raise-escalation.js.map +0 -1
  677. package/dist/tools/read-room-messages.d.ts +0 -32
  678. package/dist/tools/read-room-messages.d.ts.map +0 -1
  679. package/dist/tools/read-room-messages.js +0 -46
  680. package/dist/tools/read-room-messages.js.map +0 -1
  681. package/dist/tools/redeem-voucher.d.ts +0 -14
  682. package/dist/tools/redeem-voucher.d.ts.map +0 -1
  683. package/dist/tools/redeem-voucher.js +0 -41
  684. package/dist/tools/redeem-voucher.js.map +0 -1
  685. package/dist/tools/redrive-mailbox-webhook-delivery.d.ts +0 -18
  686. package/dist/tools/redrive-mailbox-webhook-delivery.d.ts.map +0 -1
  687. package/dist/tools/redrive-mailbox-webhook-delivery.js +0 -34
  688. package/dist/tools/redrive-mailbox-webhook-delivery.js.map +0 -1
  689. package/dist/tools/register-mailbox-webhook.d.ts +0 -20
  690. package/dist/tools/register-mailbox-webhook.d.ts.map +0 -1
  691. package/dist/tools/register-mailbox-webhook.js +0 -35
  692. package/dist/tools/register-mailbox-webhook.js.map +0 -1
  693. package/dist/tools/release-room-claim.d.ts +0 -22
  694. package/dist/tools/release-room-claim.d.ts.map +0 -1
  695. package/dist/tools/release-room-claim.js +0 -26
  696. package/dist/tools/release-room-claim.js.map +0 -1
  697. package/dist/tools/rename-project.d.ts +0 -16
  698. package/dist/tools/rename-project.d.ts.map +0 -1
  699. package/dist/tools/rename-project.js +0 -26
  700. package/dist/tools/rename-project.js.map +0 -1
  701. package/dist/tools/repos.d.ts +0 -70
  702. package/dist/tools/repos.d.ts.map +0 -1
  703. package/dist/tools/repos.js +0 -263
  704. package/dist/tools/repos.js.map +0 -1
  705. package/dist/tools/request-faucet.d.ts +0 -14
  706. package/dist/tools/request-faucet.d.ts.map +0 -1
  707. package/dist/tools/request-faucet.js +0 -50
  708. package/dist/tools/request-faucet.js.map +0 -1
  709. package/dist/tools/request-magic-link.d.ts +0 -24
  710. package/dist/tools/request-magic-link.d.ts.map +0 -1
  711. package/dist/tools/request-magic-link.js +0 -60
  712. package/dist/tools/request-magic-link.js.map +0 -1
  713. package/dist/tools/rest-query.d.ts +0 -24
  714. package/dist/tools/rest-query.d.ts.map +0 -1
  715. package/dist/tools/rest-query.js +0 -61
  716. package/dist/tools/rest-query.js.map +0 -1
  717. package/dist/tools/rooms-shared.d.ts +0 -39
  718. package/dist/tools/rooms-shared.d.ts.map +0 -1
  719. package/dist/tools/rooms-shared.js +0 -194
  720. package/dist/tools/rooms-shared.js.map +0 -1
  721. package/dist/tools/rotate-webhook-secret.d.ts +0 -9
  722. package/dist/tools/rotate-webhook-secret.d.ts.map +0 -1
  723. package/dist/tools/rotate-webhook-secret.js +0 -26
  724. package/dist/tools/rotate-webhook-secret.js.map +0 -1
  725. package/dist/tools/run-sql.d.ts +0 -18
  726. package/dist/tools/run-sql.d.ts.map +0 -1
  727. package/dist/tools/run-sql.js +0 -68
  728. package/dist/tools/run-sql.js.map +0 -1
  729. package/dist/tools/scaffold-roles.d.ts +0 -22
  730. package/dist/tools/scaffold-roles.d.ts.map +0 -1
  731. package/dist/tools/scaffold-roles.js +0 -88
  732. package/dist/tools/scaffold-roles.js.map +0 -1
  733. package/dist/tools/send-email.d.ts +0 -50
  734. package/dist/tools/send-email.d.ts.map +0 -1
  735. package/dist/tools/send-email.js +0 -84
  736. package/dist/tools/send-email.js.map +0 -1
  737. package/dist/tools/send-feedback.d.ts +0 -18
  738. package/dist/tools/send-feedback.d.ts.map +0 -1
  739. package/dist/tools/send-feedback.js +0 -36
  740. package/dist/tools/send-feedback.js.map +0 -1
  741. package/dist/tools/send-room-message.d.ts +0 -38
  742. package/dist/tools/send-room-message.d.ts.map +0 -1
  743. package/dist/tools/send-room-message.js +0 -54
  744. package/dist/tools/send-room-message.js.map +0 -1
  745. package/dist/tools/service-health.d.ts +0 -11
  746. package/dist/tools/service-health.d.ts.map +0 -1
  747. package/dist/tools/service-health.js +0 -42
  748. package/dist/tools/service-health.js.map +0 -1
  749. package/dist/tools/service-status.d.ts +0 -11
  750. package/dist/tools/service-status.d.ts.map +0 -1
  751. package/dist/tools/service-status.js +0 -46
  752. package/dist/tools/service-status.js.map +0 -1
  753. package/dist/tools/set-agent-contact.d.ts +0 -33
  754. package/dist/tools/set-agent-contact.d.ts.map +0 -1
  755. package/dist/tools/set-agent-contact.js +0 -52
  756. package/dist/tools/set-agent-contact.js.map +0 -1
  757. package/dist/tools/set-auto-recharge.d.ts +0 -18
  758. package/dist/tools/set-auto-recharge.d.ts.map +0 -1
  759. package/dist/tools/set-auto-recharge.js +0 -27
  760. package/dist/tools/set-auto-recharge.js.map +0 -1
  761. package/dist/tools/set-low-balance-alert.d.ts +0 -18
  762. package/dist/tools/set-low-balance-alert.d.ts.map +0 -1
  763. package/dist/tools/set-low-balance-alert.js +0 -18
  764. package/dist/tools/set-low-balance-alert.js.map +0 -1
  765. package/dist/tools/set-mailbox-defaults.d.ts +0 -18
  766. package/dist/tools/set-mailbox-defaults.d.ts.map +0 -1
  767. package/dist/tools/set-mailbox-defaults.js +0 -43
  768. package/dist/tools/set-mailbox-defaults.js.map +0 -1
  769. package/dist/tools/set-notification-preferences.d.ts +0 -28
  770. package/dist/tools/set-notification-preferences.d.ts.map +0 -1
  771. package/dist/tools/set-notification-preferences.js +0 -52
  772. package/dist/tools/set-notification-preferences.js.map +0 -1
  773. package/dist/tools/set-recovery-address.d.ts +0 -18
  774. package/dist/tools/set-recovery-address.d.ts.map +0 -1
  775. package/dist/tools/set-recovery-address.js +0 -18
  776. package/dist/tools/set-recovery-address.js.map +0 -1
  777. package/dist/tools/set-secret.d.ts +0 -18
  778. package/dist/tools/set-secret.d.ts.map +0 -1
  779. package/dist/tools/set-secret.js +0 -29
  780. package/dist/tools/set-secret.js.map +0 -1
  781. package/dist/tools/set-user-password.d.ts +0 -20
  782. package/dist/tools/set-user-password.d.ts.map +0 -1
  783. package/dist/tools/set-user-password.js +0 -31
  784. package/dist/tools/set-user-password.js.map +0 -1
  785. package/dist/tools/start-contact-passkey-enrollment.d.ts +0 -9
  786. package/dist/tools/start-contact-passkey-enrollment.d.ts.map +0 -1
  787. package/dist/tools/start-contact-passkey-enrollment.js +0 -18
  788. package/dist/tools/start-contact-passkey-enrollment.js.map +0 -1
  789. package/dist/tools/subdomain.d.ts +0 -34
  790. package/dist/tools/subdomain.d.ts.map +0 -1
  791. package/dist/tools/subdomain.js +0 -67
  792. package/dist/tools/subdomain.js.map +0 -1
  793. package/dist/tools/test-notification.d.ts +0 -16
  794. package/dist/tools/test-notification.d.ts.map +0 -1
  795. package/dist/tools/test-notification.js +0 -27
  796. package/dist/tools/test-notification.js.map +0 -1
  797. package/dist/tools/tier-set.d.ts +0 -14
  798. package/dist/tools/tier-set.d.ts.map +0 -1
  799. package/dist/tools/tier-set.js +0 -62
  800. package/dist/tools/tier-set.js.map +0 -1
  801. package/dist/tools/tier-status.d.ts +0 -9
  802. package/dist/tools/tier-status.d.ts.map +0 -1
  803. package/dist/tools/tier-status.js +0 -57
  804. package/dist/tools/tier-status.js.map +0 -1
  805. package/dist/tools/transfers.d.ts +0 -79
  806. package/dist/tools/transfers.d.ts.map +0 -1
  807. package/dist/tools/transfers.js +0 -332
  808. package/dist/tools/transfers.js.map +0 -1
  809. package/dist/tools/update-function.d.ts +0 -22
  810. package/dist/tools/update-function.d.ts.map +0 -1
  811. package/dist/tools/update-function.js +0 -64
  812. package/dist/tools/update-function.js.map +0 -1
  813. package/dist/tools/update-mailbox-webhook.d.ts +0 -22
  814. package/dist/tools/update-mailbox-webhook.d.ts.map +0 -1
  815. package/dist/tools/update-mailbox-webhook.js +0 -39
  816. package/dist/tools/update-mailbox-webhook.js.map +0 -1
  817. package/dist/tools/update-mailbox.d.ts +0 -18
  818. package/dist/tools/update-mailbox.d.ts.map +0 -1
  819. package/dist/tools/update-mailbox.js +0 -36
  820. package/dist/tools/update-mailbox.js.map +0 -1
  821. package/dist/tools/update-version.d.ts +0 -24
  822. package/dist/tools/update-version.d.ts.map +0 -1
  823. package/dist/tools/update-version.js +0 -26
  824. package/dist/tools/update-version.js.map +0 -1
  825. package/dist/tools/validate-manifest.d.ts +0 -19
  826. package/dist/tools/validate-manifest.d.ts.map +0 -1
  827. package/dist/tools/validate-manifest.js +0 -40
  828. package/dist/tools/validate-manifest.js.map +0 -1
  829. package/dist/tools/verify-agent-contact-email.d.ts +0 -9
  830. package/dist/tools/verify-agent-contact-email.d.ts.map +0 -1
  831. package/dist/tools/verify-agent-contact-email.js +0 -18
  832. package/dist/tools/verify-agent-contact-email.js.map +0 -1
  833. package/dist/tools/verify-magic-link.d.ts +0 -20
  834. package/dist/tools/verify-magic-link.d.ts.map +0 -1
  835. package/dist/tools/verify-magic-link.js +0 -40
  836. package/dist/tools/verify-magic-link.js.map +0 -1
  837. package/dist/tools/wallet-create.d.ts +0 -9
  838. package/dist/tools/wallet-create.d.ts.map +0 -1
  839. package/dist/tools/wallet-create.js +0 -36
  840. package/dist/tools/wallet-create.js.map +0 -1
  841. package/dist/tools/wallet-export.d.ts +0 -9
  842. package/dist/tools/wallet-export.d.ts.map +0 -1
  843. package/dist/tools/wallet-export.js +0 -21
  844. package/dist/tools/wallet-export.js.map +0 -1
  845. package/dist/tools/wallet-status.d.ts +0 -9
  846. package/dist/tools/wallet-status.d.ts.map +0 -1
  847. package/dist/tools/wallet-status.js +0 -33
  848. package/dist/tools/wallet-status.js.map +0 -1
@@ -1,61 +0,0 @@
1
- import { z } from "zod";
2
- import { getSdk } from "../sdk.js";
3
- import { mapSdkError } from "../errors.js";
4
- import { resolveProjectId } from "../active-project.js";
5
- export const restQuerySchema = {
6
- project_id: z.string().optional().describe("The project ID (defaults to the active project)"),
7
- table: z.string().describe("Table name to query"),
8
- method: z
9
- .enum(["GET", "POST", "PATCH", "DELETE"])
10
- .default("GET")
11
- .describe("HTTP method"),
12
- params: z
13
- .record(z.string())
14
- .optional()
15
- .describe("PostgREST query params (e.g. {select: 'id,name', order: 'id.asc', limit: '10'})"),
16
- body: z
17
- .unknown()
18
- .optional()
19
- .describe("Request body for POST/PATCH (JSON object or array)"),
20
- key_type: z
21
- .enum(["anon", "service"])
22
- .default("anon")
23
- .describe("Which key to use: anon (default, respects RLS) or service (bypasses RLS)"),
24
- };
25
- export async function handleRestQuery(args) {
26
- const project = await resolveProjectId(args.project_id);
27
- if (typeof project !== "string")
28
- return project;
29
- const method = (args.method || "GET");
30
- let status;
31
- let body;
32
- try {
33
- const response = await getSdk().projects.restResponse(project, args.table, {
34
- method,
35
- query: args.params,
36
- body: args.body,
37
- keyType: args.key_type === "service" ? "service" : "anon",
38
- });
39
- status = response.status;
40
- body = response.body;
41
- }
42
- catch (err) {
43
- return mapSdkError(err, "querying REST API");
44
- }
45
- const text = typeof body === "string"
46
- ? body
47
- : JSON.stringify(body, null, 2);
48
- // Service keys hit the admin REST route; reflect the real path in the label.
49
- const restPath = args.key_type === "service"
50
- ? `/admin/v1/rest/${args.table}`
51
- : `/rest/v1/${args.table}`;
52
- return {
53
- content: [
54
- {
55
- type: "text",
56
- text: `**${method} ${restPath}** → ${status}\n\n\`\`\`json\n${text}\n\`\`\``,
57
- },
58
- ],
59
- };
60
- }
61
- //# sourceMappingURL=rest-query.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rest-query.js","sourceRoot":"","sources":["../../src/tools/rest-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGxD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;IAC7F,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IACjD,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;SACxC,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,aAAa,CAAC;IAC1B,MAAM,EAAE,CAAC;SACN,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SAClB,QAAQ,EAAE;SACV,QAAQ,CAAC,iFAAiF,CAAC;IAC9F,IAAI,EAAE,CAAC;SACJ,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,oDAAoD,CAAC;IACjE,QAAQ,EAAE,CAAC;SACR,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;SACzB,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,0EAA0E,CAAC;CACxF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAOrC;IACC,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxD,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAChD,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,CAAsB,CAAC;IAC3D,IAAI,MAAc,CAAC;IACnB,IAAI,IAAa,CAAC;IAClB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE;YACzE,MAAM;YACN,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;SAC1D,CAAC,CAAC;QACH,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QACzB,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,WAAW,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,IAAI,GACR,OAAO,IAAI,KAAK,QAAQ;QACtB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAEpC,6EAA6E;IAC7E,MAAM,QAAQ,GACZ,IAAI,CAAC,QAAQ,KAAK,SAAS;QACzB,CAAC,CAAC,kBAAkB,IAAI,CAAC,KAAK,EAAE;QAChC,CAAC,CAAC,YAAY,IAAI,CAAC,KAAK,EAAE,CAAC;IAE/B,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,KAAK,MAAM,IAAI,QAAQ,QAAQ,MAAM,mBAAmB,IAAI,UAAU;aAC7E;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -1,39 +0,0 @@
1
- export interface RoomAddressArgs {
2
- project_id?: string;
3
- org_id?: string;
4
- room_key?: string;
5
- }
6
- export interface ResolvedRoom {
7
- orgId: string;
8
- roomKey: string;
9
- }
10
- export type RoomAddressResult = {
11
- ok: true;
12
- room: ResolvedRoom;
13
- } | {
14
- ok: false;
15
- error: string;
16
- };
17
- export declare function resolveRoomArgs(args: RoomAddressArgs, opts?: {
18
- cwd?: string;
19
- env?: NodeJS.ProcessEnv;
20
- }): Promise<RoomAddressResult>;
21
- export declare function cachedPresenceId(room: ResolvedRoom): string | undefined;
22
- export declare function rememberPresence(room: ResolvedRoom, presence: unknown, requestedName?: string): void;
23
- export declare function forgetPresence(room: ResolvedRoom): void;
24
- /**
25
- * Retry-once on PRESENCE_EXPIRED: drop the cached session presence, REGISTER
26
- * a replacement (asking for the same name — it suffixes honestly), and retry
27
- * with it. Registration is explicit because a bare call cannot mean "me".
28
- *
29
- * Every call also carries this SERVER PROCESS's resolved session identity
30
- * (see `../harness-context.js`) alongside any cached `presence_id` — the
31
- * gateway tries the session identity first, so a presence whose TTL lapsed
32
- * BETWEEN tool calls (or across a server restart, which starts with an empty
33
- * in-memory presence cache) revives under its own name via that path rather
34
- * than 410ing. The retry below is now reached only when no resolvable
35
- * session identity exists, or the presence aged past the 90-day retention
36
- * sweep — not on an ordinary period of the server sitting idle.
37
- */
38
- export declare function withPresenceRetry<T>(room: ResolvedRoom, call: (presenceId: string | undefined, sessionKey: string) => Promise<T>): Promise<T>;
39
- //# sourceMappingURL=rooms-shared.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rooms-shared.d.ts","sourceRoot":"","sources":["../../src/tools/rooms-shared.ts"],"names":[],"mappings":"AAuBA,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,iBAAiB,GACzB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,YAAY,CAAA;CAAE,GAChC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AA6EjC,wBAAsB,eAAe,CACnC,IAAI,EAAE,eAAe,EACrB,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CAAO,GACnD,OAAO,CAAC,iBAAiB,CAAC,CAmC5B;AAQD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CAIvE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAOpG;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAEvD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,iBAAiB,CAAC,CAAC,EACvC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GACvE,OAAO,CAAC,CAAC,CAAC,CAyBZ"}
@@ -1,194 +0,0 @@
1
- /**
2
- * Shared room addressing + session presence for the agent-messaging MCP tools.
3
- *
4
- * Every rooms tool addresses a room the same way: project_id (that project's
5
- * DEFAULT room — the zero-config path) OR org_id + room_key (named org rooms)
6
- * OR, when neither is passed, the checkout's own ambient context — RUN402_ROOM,
7
- * or a `room`/`org` binding in .run402.json, or the wallet profile's selected
8
- * organization. Both explicit forms outrank the ambient
9
- * chain, so a call that names a room still reaches exactly that room.
10
- * The MCP server is a long-lived process, so the session's presence per room
11
- * lives in an in-memory map — tool calls after the first reuse it. The cache is
12
- * what makes those calls ONE session: the gateway never infers a session from
13
- * the credential (a bare call registers a fresh presence rather than adopting a
14
- * sibling session's), so a lost cache means a new presence
15
- * with a new, honestly-suffixed name, not silent reuse of an old one.
16
- */
17
- import { getSdk } from "../sdk.js";
18
- import { mapSdkError } from "../errors.js";
19
- import { findBindingKey } from "../../core/dist/binding-file.js";
20
- import { getActiveOrgId } from "../../core/dist/profile-state.js";
21
- import { describeRejectedValue } from "../../core/dist/redact.js";
22
- import { getSessionKey, resolveHarnessLabels } from "../harness-context.js";
23
- const ORG_ENV = "RUN402_ORG";
24
- const ROOM_ENV = "RUN402_ROOM";
25
- const trimmed = (v) => typeof v === "string" && v.trim() ? v.trim() : null;
26
- /**
27
- * Address a room from the ambient context, when nothing was passed explicitly.
28
- *
29
- * This mirrors the CLI's precedence (run402 4.27.0) but is a SEPARATE
30
- * implementation on purpose, for two reasons the CLI's version cannot satisfy:
31
- *
32
- * 1. The CLI resolver calls `fail()`, which is `process.exit(1)`. In a
33
- * long-lived MCP server that turns "you didn't name an org" into a dead
34
- * server for every subsequent tool call. Everything here RETURNS.
35
- * 2. `run402-mcp` ships `dist` + `core/dist` + `sdk/dist`; `cli/` is not in
36
- * the published package, so the CLI's copy is not importable at runtime.
37
- *
38
- * What IS shared is the thing worth sharing — the binding-file reader and the
39
- * profile-state getter, both in core. Precedence is a short, explicit list
40
- * here rather than a second general resolver.
41
- *
42
- * The directory walked is the SERVER's working directory. An MCP server is
43
- * spawned once, typically in the checkout the agent is working in, and its cwd
44
- * does not follow the agent afterwards. That is the right default and a real
45
- * limit: a server spawned outside the checkout finds no binding and falls
46
- * through to the environment and the profile, which is a graceful miss rather
47
- * than a wrong room.
48
- */
49
- function resolveAmbientRoom(cwd, env) {
50
- // The compound env form names both halves and outranks the rest — a harness
51
- // wired with RUN402_ROOM reaches exactly the room it names.
52
- const envRoom = trimmed(env[ROOM_ENV]);
53
- if (envRoom) {
54
- const slash = envRoom.indexOf("/");
55
- if (slash <= 0 || slash === envRoom.length - 1) {
56
- // A malformed env value is a value we know nothing about — see
57
- // core/dist/redact.js's doc comment:
58
- // it must not be echoed raw, since the same class of mistake that put
59
- // a private key into RUN402_WALLET can put one into RUN402_ROOM.
60
- return { ok: false, error: `${ROOM_ENV} must be "<org_id>/<room_key>" — got ${JSON.stringify(describeRejectedValue(envRoom))}.` };
61
- }
62
- return { ok: true, room: { orgId: envRoom.slice(0, slash), roomKey: envRoom.slice(slash + 1) } };
63
- }
64
- const bindingRoom = findBindingKey(cwd, "room");
65
- const roomKey = trimmed(bindingRoom?.value);
66
- if (!roomKey)
67
- return null; // No room key anywhere — the caller reports how to address one.
68
- // The org half, highest first: environment, then the checkout's binding,
69
- // then the wallet profile's selection.
70
- const envOrg = trimmed(env[ORG_ENV]);
71
- const bindingOrg = findBindingKey(cwd, "org");
72
- // An ambient variable disagreeing with a committed file is the surprise
73
- // worth stopping on — the CLI stops here too, and for the same reason. A
74
- // binding outranking the PROFILE stays silent; that is what a binding is for.
75
- if (envOrg && bindingOrg && envOrg !== bindingOrg.value) {
76
- // envOrg is unvalidated here (this resolver does no org-id shape check —
77
- // see the module doc comment on why it's a deliberately separate, minimal
78
- // implementation), so it must be redacted the same way a rejected value
79
- // would be. bindingOrg.value comes from a committed .run402.json, which
80
- // by convention never holds a secret.
81
- return {
82
- ok: false,
83
- error: `Ambiguous organization: ${ORG_ENV}=${describeRejectedValue(envOrg)} but ${bindingOrg.file} binds ${bindingOrg.value}. `
84
- + "Pass org_id + room_key on this call, unset the variable, or edit the binding file.",
85
- };
86
- }
87
- const orgId = envOrg ?? trimmed(bindingOrg?.value) ?? trimmed(getActiveOrgId());
88
- if (!orgId)
89
- return null;
90
- return { ok: true, room: { orgId, roomKey } };
91
- }
92
- export async function resolveRoomArgs(args, opts = {}) {
93
- const cwd = opts.cwd ?? process.cwd();
94
- const env = opts.env ?? process.env;
95
- const hasProject = typeof args.project_id === "string" && args.project_id.length > 0;
96
- const hasOrg = typeof args.org_id === "string" && args.org_id.length > 0;
97
- const hasRoom = typeof args.room_key === "string" && args.room_key.length > 0;
98
- if (hasProject && (hasOrg || hasRoom)) {
99
- return { ok: false, error: "Pass either project_id (the project's default room) or org_id + room_key (a named org room) — not both." };
100
- }
101
- if (hasRoom !== hasOrg) {
102
- return { ok: false, error: "org_id and room_key go together — a named room is addressed as org_id + room_key. For a project's default room pass project_id alone." };
103
- }
104
- // Both explicit forms keep outranking the ambient chain, exactly as they do
105
- // in the CLI: a tool call that names a room reaches that room, always.
106
- if (hasOrg && hasRoom) {
107
- return { ok: true, room: { orgId: args.org_id, roomKey: args.room_key } };
108
- }
109
- if (!hasProject) {
110
- const ambient = resolveAmbientRoom(cwd, env);
111
- if (ambient)
112
- return ambient;
113
- return {
114
- ok: false,
115
- error: "Address the room: project_id for the project's default room, or org_id + room_key for a named org room. "
116
- + `This checkout can also bind one — \`{"org":"<org_id>","room":"<key>"}\` in .run402.json — or set ${ROOM_ENV}="<org_id>/<room_key>".`,
117
- };
118
- }
119
- try {
120
- const scoped = await getSdk().rooms.forProject(args.project_id);
121
- return { ok: true, room: { orgId: scoped.orgId, roomKey: scoped.roomKey } };
122
- }
123
- catch (err) {
124
- // Surface the real SDK error (project not found, auth, network) instead of
125
- // a generic addressing hint — resolveRoomArgs never throws.
126
- const mapped = mapSdkError(err, "resolving the project's default room");
127
- return { ok: false, error: mapped.content[0]?.text ?? String(err) };
128
- }
129
- }
130
- const presenceByRoom = new Map();
131
- /** The name this session asked for, so a replacement presence asks again. */
132
- const requestedNameByRoom = new Map();
133
- const roomKeyOf = (room) => `${room.orgId}/${room.roomKey}`;
134
- export function cachedPresenceId(room) {
135
- const env = (process.env.RUN402_PRESENCE_ID ?? "").trim();
136
- if (env)
137
- return env;
138
- return presenceByRoom.get(roomKeyOf(room));
139
- }
140
- export function rememberPresence(room, presence, requestedName) {
141
- const id = presence?.presence_id;
142
- if (typeof id === "string" && id)
143
- presenceByRoom.set(roomKeyOf(room), id);
144
- // Remember the name ASKED FOR, not the one granted: a replacement should ask
145
- // for `Opus` again (-> Opus-3), never for the granted `Opus-2` (-> Opus-2-2).
146
- const asked = requestedName ?? presence?.requested_name;
147
- if (typeof asked === "string" && asked)
148
- requestedNameByRoom.set(roomKeyOf(room), asked);
149
- }
150
- export function forgetPresence(room) {
151
- presenceByRoom.delete(roomKeyOf(room));
152
- }
153
- /**
154
- * Retry-once on PRESENCE_EXPIRED: drop the cached session presence, REGISTER
155
- * a replacement (asking for the same name — it suffixes honestly), and retry
156
- * with it. Registration is explicit because a bare call cannot mean "me".
157
- *
158
- * Every call also carries this SERVER PROCESS's resolved session identity
159
- * (see `../harness-context.js`) alongside any cached `presence_id` — the
160
- * gateway tries the session identity first, so a presence whose TTL lapsed
161
- * BETWEEN tool calls (or across a server restart, which starts with an empty
162
- * in-memory presence cache) revives under its own name via that path rather
163
- * than 410ing. The retry below is now reached only when no resolvable
164
- * session identity exists, or the presence aged past the 90-day retention
165
- * sweep — not on an ordinary period of the server sitting idle.
166
- */
167
- export async function withPresenceRetry(room, call) {
168
- const presenceId = cachedPresenceId(room);
169
- const sessionKey = getSessionKey().key;
170
- try {
171
- return await call(presenceId, sessionKey);
172
- }
173
- catch (err) {
174
- const code = err?.body?.code
175
- ?? err?.code;
176
- if (code === "PRESENCE_EXPIRED" && presenceId) {
177
- forgetPresence(room);
178
- const requestedName = requestedNameByRoom.get(roomKeyOf(room));
179
- // kygit-invite design D8: a replacement registration carries
180
- // harness-derived labels too.
181
- const { program, model } = resolveHarnessLabels();
182
- const replacement = await getSdk().rooms.registerPresence(room.orgId, room.roomKey, {
183
- ...(requestedName ? { requestedName } : {}),
184
- ...(program !== null ? { program } : {}),
185
- ...(model !== null ? { model } : {}),
186
- sessionKey,
187
- });
188
- rememberPresence(room, replacement, requestedName);
189
- return call(replacement?.presence_id, sessionKey);
190
- }
191
- throw err;
192
- }
193
- }
194
- //# sourceMappingURL=rooms-shared.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rooms-shared.js","sourceRoot":"","sources":["../../src/tools/rooms-shared.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- export declare const rotateWebhookSecretSchema: {};
2
- export declare function handleRotateWebhookSecret(_args: Record<string, never>): Promise<{
3
- content: Array<{
4
- type: "text";
5
- text: string;
6
- }>;
7
- isError?: boolean;
8
- }>;
9
- //# sourceMappingURL=rotate-webhook-secret.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rotate-webhook-secret.d.ts","sourceRoot":"","sources":["../../src/tools/rotate-webhook-secret.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,yBAAyB,IAAK,CAAC;AAE5C,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAC3B,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAoBhF"}
@@ -1,26 +0,0 @@
1
- import { getSdk } from "../sdk.js";
2
- import { mapSdkError } from "../errors.js";
3
- import { requireWalletAuth } from "../wallet-auth.js";
4
- export const rotateWebhookSecretSchema = {};
5
- export async function handleRotateWebhookSecret(_args) {
6
- const auth = requireWalletAuth("/agent/v1/webhook-secret/rotate");
7
- if ("error" in auth)
8
- return auth.error;
9
- try {
10
- const result = await getSdk().admin.rotateWebhookSecret();
11
- return {
12
- content: [
13
- {
14
- type: "text",
15
- text: `${JSON.stringify(result, null, 2)}\n\n` +
16
- `IMPORTANT: this secret will not be shown again. Store it securely (vault, env file, secret manager).\n` +
17
- `The previous secret remains valid for ${result.grace_window_hours} hours so webhook receivers can update without downtime.`,
18
- },
19
- ],
20
- };
21
- }
22
- catch (err) {
23
- return mapSdkError(err, "rotating webhook signing secret");
24
- }
25
- }
26
- //# sourceMappingURL=rotate-webhook-secret.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rotate-webhook-secret.js","sourceRoot":"","sources":["../../src/tools/rotate-webhook-secret.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,KAA4B;IAE5B,MAAM,IAAI,GAAG,iBAAiB,CAAC,iCAAiC,CAAC,CAAC;IAClE,IAAI,OAAO,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC;IAEvC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,EAAE,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;QAC1D,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EACF,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM;wBACxC,wGAAwG;wBACxG,yCAAyC,MAAM,CAAC,kBAAkB,0DAA0D;iBAC/H;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,WAAW,CAAC,GAAG,EAAE,iCAAiC,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC"}
@@ -1,18 +0,0 @@
1
- import { z } from "zod";
2
- export declare const runSqlSchema: {
3
- project_id: z.ZodOptional<z.ZodString>;
4
- sql: z.ZodString;
5
- params: z.ZodOptional<z.ZodArray<z.ZodUnknown, "many">>;
6
- };
7
- export declare function handleRunSql(args: {
8
- project_id?: string;
9
- sql: string;
10
- params?: unknown[];
11
- }): Promise<{
12
- content: Array<{
13
- type: "text";
14
- text: string;
15
- }>;
16
- isError?: boolean;
17
- }>;
18
- //# sourceMappingURL=run-sql.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-sql.d.ts","sourceRoot":"","sources":["../../src/tools/run-sql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,YAAY;;;;CAIxB,CAAC;AAyBF,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC;CACpB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA+CjF"}
@@ -1,68 +0,0 @@
1
- import { z } from "zod";
2
- import { getSdk } from "../sdk.js";
3
- import { mapSdkError } from "../errors.js";
4
- import { resolveProjectId } from "../active-project.js";
5
- export const runSqlSchema = {
6
- project_id: z.string().optional().describe("The project ID to run SQL against (defaults to the active project)"),
7
- sql: z.string().describe("SQL statement to execute (DDL or DML)"),
8
- params: z.array(z.unknown()).optional().describe("Bind parameters for parameterized queries (e.g. [42, \"hello\"])"),
9
- };
10
- function formatMarkdownTable(rows) {
11
- if (rows.length === 0)
12
- return "_0 rows returned_";
13
- const columns = Object.keys(rows[0]);
14
- const header = `| ${columns.join(" | ")} |`;
15
- const separator = `| ${columns.map(() => "---").join(" | ")} |`;
16
- const body = rows.map((row) => `| ${columns.map((c) => String(row[c] ?? "NULL")).join(" | ")} |`);
17
- return [header, separator, ...body].join("\n");
18
- }
19
- /** Render the result column descriptors as a compact "Columns:" line. */
20
- function formatColumns(fields) {
21
- if (!fields || fields.length === 0)
22
- return null;
23
- return ("Columns: " + fields.map((f) => (f.type ? `${f.name} (${f.type})` : f.name)).join(", "));
24
- }
25
- export async function handleRunSql(args) {
26
- const project = await resolveProjectId(args.project_id);
27
- if (typeof project !== "string")
28
- return project;
29
- let body;
30
- try {
31
- body = await getSdk().projects.sql(project, args.sql, args.params);
32
- }
33
- catch (err) {
34
- return mapSdkError(err, "running SQL");
35
- }
36
- // The wire field is snake_case `row_count` (docs/style.md).
37
- const { rows, row_count: rowCount, schema, fields } = body;
38
- const columns = formatColumns(fields);
39
- // The gateway distinguishes statement kinds by `row_count`: a result set
40
- // (SELECT / ... RETURNING) populates `rows`; an INSERT/UPDATE/DELETE returns
41
- // `rows: []` with a numeric affected-row count; DDL returns `row_count: null`.
42
- // Surface each kind explicitly — never report a mutation that changed rows
43
- // as "0 rows returned", which reads to an agent like the statement no-op'd.
44
- // `fields` (present only for result-set queries) carries the column names +
45
- // types, so an empty SELECT still conveys its shape.
46
- let text;
47
- if (rows.length > 0) {
48
- const head = `**${rows.length} row${rows.length !== 1 ? "s" : ""} returned** (schema: ${schema})`;
49
- text = `${head}${columns ? `\n${columns}` : ""}\n\n${formatMarkdownTable(rows)}`;
50
- }
51
- else if (typeof rowCount === "number" && rowCount > 0) {
52
- text = `**${rowCount} row${rowCount !== 1 ? "s" : ""} affected** (schema: ${schema})`;
53
- }
54
- else if (rowCount === 0) {
55
- // An empty result set OR a no-match mutation. When `fields` is present the
56
- // statement was a SELECT / ... RETURNING, so surface the column shape — an
57
- // empty SELECT still teaches the agent what it would have returned, instead
58
- // of a blind "0 rows". Absent fields ⇒ a mutation that matched nothing.
59
- const head = `**0 rows** (schema: ${schema})`;
60
- text = columns ? `${head}\n${columns}` : head;
61
- }
62
- else {
63
- // DDL and other statements with no row semantics (row_count === null).
64
- text = `**Statement executed** (schema: ${schema})`;
65
- }
66
- return { content: [{ type: "text", text }] };
67
- }
68
- //# sourceMappingURL=run-sql.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-sql.js","sourceRoot":"","sources":["../../src/tools/run-sql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oEAAoE,CAAC;IAChH,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;IACjE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;CACrH,CAAC;AAEF,SAAS,mBAAmB,CAAC,IAA+B;IAC1D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,mBAAmB,CAAC;IAElD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IAC5C,MAAM,SAAS,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IAChE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CACnB,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAC3E,CAAC;IAEF,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjD,CAAC;AAED,yEAAyE;AACzE,SAAS,aAAa,CACpB,MAAqD;IAErD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,CACL,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACxF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAIlC;IACC,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxD,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAEhD,IAAI,IAMH,CAAC;IACF,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAgB,CAAC;IACpF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,WAAW,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC;IAED,4DAA4D;IAC5D,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC3D,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAEtC,yEAAyE;IACzE,6EAA6E;IAC7E,+EAA+E;IAC/E,2EAA2E;IAC3E,4EAA4E;IAC5E,4EAA4E;IAC5E,qDAAqD;IACrD,IAAI,IAAY,CAAC;IACjB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,KAAK,IAAI,CAAC,MAAM,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,wBAAwB,MAAM,GAAG,CAAC;QAClG,IAAI,GAAG,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;IACnF,CAAC;SAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;QACxD,IAAI,GAAG,KAAK,QAAQ,OAAO,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,wBAAwB,MAAM,GAAG,CAAC;IACxF,CAAC;SAAM,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QAC1B,2EAA2E;QAC3E,2EAA2E;QAC3E,4EAA4E;QAC5E,wEAAwE;QACxE,MAAM,IAAI,GAAG,uBAAuB,MAAM,GAAG,CAAC;QAC9C,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAChD,CAAC;SAAM,CAAC;QACN,uEAAuE;QACvE,IAAI,GAAG,mCAAmC,MAAM,GAAG,CAAC;IACtD,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAC/C,CAAC"}
@@ -1,22 +0,0 @@
1
- import { z } from "zod";
2
- export declare const scaffoldRolesSchema: {
3
- table: z.ZodOptional<z.ZodString>;
4
- user_col: z.ZodOptional<z.ZodString>;
5
- role_col: z.ZodOptional<z.ZodString>;
6
- roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
7
- cache_ttl: z.ZodOptional<z.ZodNumber>;
8
- };
9
- export declare function handleScaffoldRoles(args: {
10
- table?: string;
11
- user_col?: string;
12
- role_col?: string;
13
- roles?: string[];
14
- cache_ttl?: number;
15
- }): {
16
- content: Array<{
17
- type: "text";
18
- text: string;
19
- }>;
20
- isError?: boolean;
21
- };
22
- //# sourceMappingURL=scaffold-roles.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scaffold-roles.d.ts","sourceRoot":"","sources":["../../src/tools/scaffold-roles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,mBAAmB;;;;;;CA2B/B,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAuDxE"}
@@ -1,88 +0,0 @@
1
- import { z } from "zod";
2
- // Pure, offline generator — no SDK / network / project. Emits the conventional
3
- // role-table migration, the matching requireRole gate snippet, and a
4
- // first-operator bootstrap. (Keep in sync with the CLI `auth scaffold-roles`
5
- // command in cli/lib/auth.mjs — same artifacts, different presentation.)
6
- const IDENT = /^[A-Za-z_][A-Za-z0-9_]*$/;
7
- export const scaffoldRolesSchema = {
8
- table: z
9
- .string()
10
- .regex(IDENT)
11
- .optional()
12
- .describe("Role table name (unquoted SQL identifier). Default: app_roles."),
13
- user_col: z
14
- .string()
15
- .regex(IDENT)
16
- .optional()
17
- .describe("User-id column — matches the tenant user id (internal.users.id / JWT 'sub'). Default: user_id."),
18
- role_col: z
19
- .string()
20
- .regex(IDENT)
21
- .optional()
22
- .describe("Role column. Default: role."),
23
- roles: z
24
- .array(z.string().min(1))
25
- .optional()
26
- .describe('Allowed roles. Default: ["operator"].'),
27
- cache_ttl: z
28
- .number()
29
- .int()
30
- .min(0)
31
- .max(600)
32
- .optional()
33
- .describe("Role-lookup cache seconds (0-600). Default: 60. 0 = instant revocation (fresh DB read per request)."),
34
- };
35
- export function handleScaffoldRoles(args) {
36
- const table = args.table ?? "app_roles";
37
- const userCol = args.user_col ?? "user_id";
38
- const roleCol = args.role_col ?? "role";
39
- const allowed = (args.roles && args.roles.length > 0 ? args.roles : ["operator"])
40
- .map((r) => r.trim())
41
- .filter(Boolean);
42
- if (allowed.length === 0) {
43
- return { isError: true, content: [{ type: "text", text: "roles must contain at least one non-empty role" }] };
44
- }
45
- const cacheTtl = args.cache_ttl ?? 60;
46
- const firstRole = allowed[0];
47
- const migration = `-- Conventional Run402 role table: single role per user, keyed on the tenant user id.
48
- CREATE TABLE IF NOT EXISTS ${table} (
49
- ${userCol} uuid NOT NULL,
50
- ${roleCol} text NOT NULL,
51
- PRIMARY KEY (${userCol})
52
- );`;
53
- const gate = { table, idColumn: userCol, roleColumn: roleCol, allowed, cacheTtl };
54
- const bootstrap = `-- First-operator bootstrap: run ONCE with the SERVICE key (bypasses RLS).
55
- -- Replace <FIRST_OPERATOR_USER_ID> with the tenant user id (internal.users.id /
56
- -- the JWT 'sub') of the first '${firstRole}' — NOT a wallet address.
57
- INSERT INTO ${table} (${userCol}, ${roleCol})
58
- VALUES ('<FIRST_OPERATOR_USER_ID>', '${firstRole}')
59
- ON CONFLICT (${userCol}) DO NOTHING;`;
60
- const text = [
61
- "## Role-gate scaffold",
62
- "",
63
- "**1. Migration** (apply once, or via your deploy spec's database migrations):",
64
- "```sql",
65
- migration,
66
- "```",
67
- "",
68
- "**2. `requireRole` gate** — put this on the function in your deploy spec (`spec.functions[].requireRole`):",
69
- "```json",
70
- JSON.stringify(gate, null, 2),
71
- "```",
72
- "",
73
- `**3. In the function:** \`await auth.requireRole(${JSON.stringify(firstRole)})\` — or \`await auth.role()\` to branch when \`allowed\` has multiple roles.`,
74
- "",
75
- "**4. First-operator bootstrap** (the table starts empty — grant the first role once with the service key):",
76
- "```sql",
77
- bootstrap,
78
- "```",
79
- "",
80
- "Notes:",
81
- "- `requireRole(x)` requires `x` to be in `allowed`; for multi-role gates read `auth.role()` and branch instead of re-asserting.",
82
- "- `cacheTtl` is the role-lookup cache in seconds; set it to `0` for instant revocation (fresh DB read per request).",
83
- "- The gate keys on the tenant **user id** (`internal.users.id` / JWT `sub`), NOT a wallet address.",
84
- `- The gate accepts any table/columns — \`${table}(${userCol}, ${roleCol})\` is the blessed default; point \`requireRole\` at your own table if you already have one.`,
85
- ].join("\n");
86
- return { content: [{ type: "text", text }] };
87
- }
88
- //# sourceMappingURL=scaffold-roles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scaffold-roles.js","sourceRoot":"","sources":["../../src/tools/scaffold-roles.ts"],"names":[],"mappings":"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"}
@@ -1,50 +0,0 @@
1
- import { z } from "zod";
2
- export declare const sendEmailSchema: {
3
- project_id: z.ZodString;
4
- to: z.ZodString;
5
- template: z.ZodOptional<z.ZodEnum<["project_invite", "magic_link", "notification"]>>;
6
- variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
7
- subject: z.ZodOptional<z.ZodString>;
8
- html: z.ZodOptional<z.ZodString>;
9
- text: z.ZodOptional<z.ZodString>;
10
- from_name: z.ZodOptional<z.ZodString>;
11
- in_reply_to: z.ZodOptional<z.ZodString>;
12
- mailbox: z.ZodOptional<z.ZodString>;
13
- attachments: z.ZodOptional<z.ZodArray<z.ZodObject<{
14
- filename: z.ZodString;
15
- content_base64: z.ZodString;
16
- content_type: z.ZodString;
17
- }, "strip", z.ZodTypeAny, {
18
- content_type: string;
19
- filename: string;
20
- content_base64: string;
21
- }, {
22
- content_type: string;
23
- filename: string;
24
- content_base64: string;
25
- }>, "many">>;
26
- };
27
- export declare function handleSendEmail(args: {
28
- project_id: string;
29
- to: string;
30
- template?: string;
31
- variables?: Record<string, string>;
32
- subject?: string;
33
- html?: string;
34
- text?: string;
35
- from_name?: string;
36
- in_reply_to?: string;
37
- mailbox?: string;
38
- attachments?: Array<{
39
- filename: string;
40
- content_base64: string;
41
- content_type: string;
42
- }>;
43
- }): Promise<{
44
- content: Array<{
45
- type: "text";
46
- text: string;
47
- }>;
48
- isError?: boolean;
49
- }>;
50
- //# sourceMappingURL=send-email.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"send-email.d.ts","sourceRoot":"","sources":["../../src/tools/send-email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;CAqC3B,CAAC;AAEF,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACzF,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CA6CjF"}