@keystrokehq/platform 0.1.121 → 0.1.123

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 (310) hide show
  1. package/README.md +8 -0
  2. package/dist/{awk2-LA3USKJP-C_uJ9UTC.mjs → awk2-LA3USKJP-B0I2s5WK.mjs} +2 -2
  3. package/dist/{awk2-LA3USKJP-C_uJ9UTC.mjs.map → awk2-LA3USKJP-B0I2s5WK.mjs.map} +1 -1
  4. package/dist/{awk2-LA3USKJP-BW5gD7Ek.cjs → awk2-LA3USKJP-CW4ZfUmw.cjs} +2 -2
  5. package/dist/{awk2-LA3USKJP-BW5gD7Ek.cjs.map → awk2-LA3USKJP-CW4ZfUmw.cjs.map} +1 -1
  6. package/dist/{base64-C2AIWVNC-Dj_3ikno.mjs → base64-C2AIWVNC-DJIlIJyA.mjs} +2 -2
  7. package/dist/{base64-C2AIWVNC-Dj_3ikno.mjs.map → base64-C2AIWVNC-DJIlIJyA.mjs.map} +1 -1
  8. package/dist/{base64-C2AIWVNC-Deofn7Tz.cjs → base64-C2AIWVNC-lw60Mcqo.cjs} +2 -2
  9. package/dist/{base64-C2AIWVNC-Deofn7Tz.cjs.map → base64-C2AIWVNC-lw60Mcqo.cjs.map} +1 -1
  10. package/dist/{bash-YZ33HQZQ-DiCTIB0C.cjs → bash-YZ33HQZQ-XJpQyMat.cjs} +2 -2
  11. package/dist/{bash-YZ33HQZQ-DiCTIB0C.cjs.map → bash-YZ33HQZQ-XJpQyMat.cjs.map} +1 -1
  12. package/dist/{bash-YZ33HQZQ-0OgzIjsV.mjs → bash-YZ33HQZQ-luMyh6vQ.mjs} +2 -2
  13. package/dist/{bash-YZ33HQZQ-0OgzIjsV.mjs.map → bash-YZ33HQZQ-luMyh6vQ.mjs.map} +1 -1
  14. package/dist/{cat-TSFMZVYS-19ZMdpAq.mjs → cat-TSFMZVYS-EOSJ_gzj.mjs} +3 -3
  15. package/dist/{cat-TSFMZVYS-19ZMdpAq.mjs.map → cat-TSFMZVYS-EOSJ_gzj.mjs.map} +1 -1
  16. package/dist/{cat-TSFMZVYS-DPSpsOSF.cjs → cat-TSFMZVYS-il94pqXS.cjs} +3 -3
  17. package/dist/{cat-TSFMZVYS-DPSpsOSF.cjs.map → cat-TSFMZVYS-il94pqXS.cjs.map} +1 -1
  18. package/dist/{chunk-5H5SCKJM-mInR0aVw.cjs → chunk-5H5SCKJM-BtmZf7ka.cjs} +2 -2
  19. package/dist/{chunk-5H5SCKJM-mInR0aVw.cjs.map → chunk-5H5SCKJM-BtmZf7ka.cjs.map} +1 -1
  20. package/dist/{chunk-5H5SCKJM-DZPFrWS7.mjs → chunk-5H5SCKJM-CBAT1HYQ.mjs} +2 -2
  21. package/dist/{chunk-5H5SCKJM-DZPFrWS7.mjs.map → chunk-5H5SCKJM-CBAT1HYQ.mjs.map} +1 -1
  22. package/dist/{chunk-AQ6FYS2X-Z7TDlycS.mjs → chunk-AQ6FYS2X-B_Jft-TW.mjs} +2 -2
  23. package/dist/{chunk-AQ6FYS2X-Z7TDlycS.mjs.map → chunk-AQ6FYS2X-B_Jft-TW.mjs.map} +1 -1
  24. package/dist/{chunk-AQ6FYS2X-BSdtBwzs.cjs → chunk-AQ6FYS2X-DhgXJLMn.cjs} +2 -2
  25. package/dist/{chunk-AQ6FYS2X-BSdtBwzs.cjs.map → chunk-AQ6FYS2X-DhgXJLMn.cjs.map} +1 -1
  26. package/dist/{chunk-CHFEPBH4-34GTMZQg.cjs → chunk-CHFEPBH4-B-L9sswx.cjs} +2 -2
  27. package/dist/{chunk-CHFEPBH4-34GTMZQg.cjs.map → chunk-CHFEPBH4-B-L9sswx.cjs.map} +1 -1
  28. package/dist/{chunk-CHFEPBH4-CAH6NdaH.mjs → chunk-CHFEPBH4-BkpHkBUr.mjs} +2 -2
  29. package/dist/{chunk-CHFEPBH4-CAH6NdaH.mjs.map → chunk-CHFEPBH4-BkpHkBUr.mjs.map} +1 -1
  30. package/dist/{chunk-EBAPSGAO-mqIfq_c1.cjs → chunk-EBAPSGAO-DFzPRxjp.cjs} +2 -2
  31. package/dist/{chunk-EBAPSGAO-mqIfq_c1.cjs.map → chunk-EBAPSGAO-DFzPRxjp.cjs.map} +1 -1
  32. package/dist/{chunk-EBAPSGAO-DkISHjdI.mjs → chunk-EBAPSGAO-aR6d2BWb.mjs} +2 -2
  33. package/dist/{chunk-EBAPSGAO-DkISHjdI.mjs.map → chunk-EBAPSGAO-aR6d2BWb.mjs.map} +1 -1
  34. package/dist/{chunk-LEKBROJD-CSy2cC7R.mjs → chunk-LEKBROJD-BKyvDurm.mjs} +2 -2
  35. package/dist/{chunk-LEKBROJD-CSy2cC7R.mjs.map → chunk-LEKBROJD-BKyvDurm.mjs.map} +1 -1
  36. package/dist/{chunk-LEKBROJD-D44MqVtt.cjs → chunk-LEKBROJD-Crsi92sY.cjs} +2 -2
  37. package/dist/{chunk-LEKBROJD-D44MqVtt.cjs.map → chunk-LEKBROJD-Crsi92sY.cjs.map} +1 -1
  38. package/dist/{chunk-VPADYNBD-l5-X8hMy.mjs → chunk-VPADYNBD-BuTnWRxP.mjs} +2 -2
  39. package/dist/{chunk-VPADYNBD-l5-X8hMy.mjs.map → chunk-VPADYNBD-BuTnWRxP.mjs.map} +1 -1
  40. package/dist/{chunk-VPADYNBD-DNBSUueR.cjs → chunk-VPADYNBD-CmocuKR4.cjs} +2 -2
  41. package/dist/{chunk-VPADYNBD-DNBSUueR.cjs.map → chunk-VPADYNBD-CmocuKR4.cjs.map} +1 -1
  42. package/dist/{chunk-YCLFEX4T-uJ2V8d7w.mjs → chunk-YCLFEX4T-BAMxRKxL.mjs} +2 -2
  43. package/dist/{chunk-YCLFEX4T-uJ2V8d7w.mjs.map → chunk-YCLFEX4T-BAMxRKxL.mjs.map} +1 -1
  44. package/dist/{chunk-YCLFEX4T-CMZ-flBc.cjs → chunk-YCLFEX4T-DrGtmD8f.cjs} +2 -2
  45. package/dist/{chunk-YCLFEX4T-CMZ-flBc.cjs.map → chunk-YCLFEX4T-DrGtmD8f.cjs.map} +1 -1
  46. package/dist/{column-XT6UFXNQ-DqZnm5qa.cjs → column-XT6UFXNQ-DZqF4lN0.cjs} +2 -2
  47. package/dist/{column-XT6UFXNQ-DqZnm5qa.cjs.map → column-XT6UFXNQ-DZqF4lN0.cjs.map} +1 -1
  48. package/dist/{column-XT6UFXNQ-B8k4MbkY.mjs → column-XT6UFXNQ-j93nOJhW.mjs} +2 -2
  49. package/dist/{column-XT6UFXNQ-B8k4MbkY.mjs.map → column-XT6UFXNQ-j93nOJhW.mjs.map} +1 -1
  50. package/dist/{comm-VV2LDX2J-CR1wbzGf.cjs → comm-VV2LDX2J-BqgPJ18z.cjs} +2 -2
  51. package/dist/{comm-VV2LDX2J-CR1wbzGf.cjs.map → comm-VV2LDX2J-BqgPJ18z.cjs.map} +1 -1
  52. package/dist/{comm-VV2LDX2J-C3W7A-jn.mjs → comm-VV2LDX2J-Dsyf6e56.mjs} +2 -2
  53. package/dist/{comm-VV2LDX2J-C3W7A-jn.mjs.map → comm-VV2LDX2J-Dsyf6e56.mjs.map} +1 -1
  54. package/dist/config.cjs +2 -2
  55. package/dist/config.mjs +2 -2
  56. package/dist/{cp-BISAAS7A-CEFW3zU-.cjs → cp-BISAAS7A-B1fM76rM.cjs} +2 -2
  57. package/dist/{cp-BISAAS7A-CEFW3zU-.cjs.map → cp-BISAAS7A-B1fM76rM.cjs.map} +1 -1
  58. package/dist/{cp-BISAAS7A-aP1UYqJd.mjs → cp-BISAAS7A-QoODzq_y.mjs} +2 -2
  59. package/dist/{cp-BISAAS7A-aP1UYqJd.mjs.map → cp-BISAAS7A-QoODzq_y.mjs.map} +1 -1
  60. package/dist/{cut-OKARJCCV-DfCVAblN.mjs → cut-OKARJCCV-CuyLMhz8.mjs} +3 -3
  61. package/dist/{cut-OKARJCCV-DfCVAblN.mjs.map → cut-OKARJCCV-CuyLMhz8.mjs.map} +1 -1
  62. package/dist/{cut-OKARJCCV-YbUZRW2m.cjs → cut-OKARJCCV-w-pyqX5v.cjs} +3 -3
  63. package/dist/{cut-OKARJCCV-YbUZRW2m.cjs.map → cut-OKARJCCV-w-pyqX5v.cjs.map} +1 -1
  64. package/dist/{diff-MWJFIG7X-uzFU7vBr.cjs → diff-MWJFIG7X-4T0RgJTl.cjs} +2 -2
  65. package/dist/{diff-MWJFIG7X-uzFU7vBr.cjs.map → diff-MWJFIG7X-4T0RgJTl.cjs.map} +1 -1
  66. package/dist/{diff-MWJFIG7X-Db23ZFvu.mjs → diff-MWJFIG7X-DnU8lxvv.mjs} +2 -2
  67. package/dist/{diff-MWJFIG7X-Db23ZFvu.mjs.map → diff-MWJFIG7X-DnU8lxvv.mjs.map} +1 -1
  68. package/dist/{dist-B2lPLfrR.mjs → dist-BbcFUrLU.mjs} +75 -6
  69. package/dist/dist-BbcFUrLU.mjs.map +1 -0
  70. package/dist/{dist-CkBSbX2_.cjs → dist-BqavNK6G.cjs} +99 -6
  71. package/dist/dist-BqavNK6G.cjs.map +1 -0
  72. package/dist/{dist-QS2Dafen.cjs → dist-DBqXzrRX.cjs} +78 -4
  73. package/dist/dist-DBqXzrRX.cjs.map +1 -0
  74. package/dist/{dist-D_ICFiVc.mjs → dist-DCg7fFyO.mjs} +78 -4
  75. package/dist/dist-DCg7fFyO.mjs.map +1 -0
  76. package/dist/{du-572XNP42-CX6RDfLF.cjs → du-572XNP42-CY_xV18Z.cjs} +2 -2
  77. package/dist/{du-572XNP42-CX6RDfLF.cjs.map → du-572XNP42-CY_xV18Z.cjs.map} +1 -1
  78. package/dist/{du-572XNP42-B724WDI9.mjs → du-572XNP42-lB6Kzq8E.mjs} +2 -2
  79. package/dist/{du-572XNP42-B724WDI9.mjs.map → du-572XNP42-lB6Kzq8E.mjs.map} +1 -1
  80. package/dist/{env-36M5BO7M-okDipi6p.cjs → env-36M5BO7M-DNqd7E6I.cjs} +2 -2
  81. package/dist/{env-36M5BO7M-okDipi6p.cjs.map → env-36M5BO7M-DNqd7E6I.cjs.map} +1 -1
  82. package/dist/{env-36M5BO7M-BLMWIQAH.mjs → env-36M5BO7M-ESR8eI72.mjs} +2 -2
  83. package/dist/{env-36M5BO7M-BLMWIQAH.mjs.map → env-36M5BO7M-ESR8eI72.mjs.map} +1 -1
  84. package/dist/{expand-JSPG6VOP-BRdJhhzq.cjs → expand-JSPG6VOP-CAjx2zOr.cjs} +2 -2
  85. package/dist/{expand-JSPG6VOP-BRdJhhzq.cjs.map → expand-JSPG6VOP-CAjx2zOr.cjs.map} +1 -1
  86. package/dist/{expand-JSPG6VOP-DUj7F9Cu.mjs → expand-JSPG6VOP-x4oQXcDy.mjs} +2 -2
  87. package/dist/{expand-JSPG6VOP-DUj7F9Cu.mjs.map → expand-JSPG6VOP-x4oQXcDy.mjs.map} +1 -1
  88. package/dist/{expr-5JAACS4X-XEZLTHHs.cjs → expr-5JAACS4X-DdRWhhZD.cjs} +2 -2
  89. package/dist/{expr-5JAACS4X-XEZLTHHs.cjs.map → expr-5JAACS4X-DdRWhhZD.cjs.map} +1 -1
  90. package/dist/{expr-5JAACS4X-CfrWhuNY.mjs → expr-5JAACS4X-DoNrHw-x.mjs} +2 -2
  91. package/dist/{expr-5JAACS4X-CfrWhuNY.mjs.map → expr-5JAACS4X-DoNrHw-x.mjs.map} +1 -1
  92. package/dist/{find-INTH3OLC-CxFHfo_D.mjs → find-INTH3OLC-D7w3zTvw.mjs} +3 -3
  93. package/dist/{find-INTH3OLC-CxFHfo_D.mjs.map → find-INTH3OLC-D7w3zTvw.mjs.map} +1 -1
  94. package/dist/{find-INTH3OLC-ChUCh5M0.cjs → find-INTH3OLC-Duiv0ysU.cjs} +3 -3
  95. package/dist/{find-INTH3OLC-ChUCh5M0.cjs.map → find-INTH3OLC-Duiv0ysU.cjs.map} +1 -1
  96. package/dist/{fold-4TQNYMSW-D5LbDNK2.cjs → fold-4TQNYMSW-9vJYne9u.cjs} +2 -2
  97. package/dist/{fold-4TQNYMSW-D5LbDNK2.cjs.map → fold-4TQNYMSW-9vJYne9u.cjs.map} +1 -1
  98. package/dist/{fold-4TQNYMSW-B8TGVC7j.mjs → fold-4TQNYMSW-BhOfytEa.mjs} +2 -2
  99. package/dist/{fold-4TQNYMSW-B8TGVC7j.mjs.map → fold-4TQNYMSW-BhOfytEa.mjs.map} +1 -1
  100. package/dist/{grep-V3LQVMRQ-DN1wiZly.mjs → grep-V3LQVMRQ-B21nky3U.mjs} +4 -4
  101. package/dist/{grep-V3LQVMRQ-DN1wiZly.mjs.map → grep-V3LQVMRQ-B21nky3U.mjs.map} +1 -1
  102. package/dist/{grep-V3LQVMRQ-WVUeOxin.cjs → grep-V3LQVMRQ-a4ALkWEs.cjs} +4 -4
  103. package/dist/{grep-V3LQVMRQ-WVUeOxin.cjs.map → grep-V3LQVMRQ-a4ALkWEs.cjs.map} +1 -1
  104. package/dist/{gzip-O5ASJAFY-C7v6CBdm.mjs → gzip-O5ASJAFY-TYcsb_J5.mjs} +2 -2
  105. package/dist/{gzip-O5ASJAFY-C7v6CBdm.mjs.map → gzip-O5ASJAFY-TYcsb_J5.mjs.map} +1 -1
  106. package/dist/{gzip-O5ASJAFY-DFGo8ssh.cjs → gzip-O5ASJAFY-w7v8_8Lw.cjs} +2 -2
  107. package/dist/{gzip-O5ASJAFY-DFGo8ssh.cjs.map → gzip-O5ASJAFY-w7v8_8Lw.cjs.map} +1 -1
  108. package/dist/{head-442HYESI-DYhCEt04.mjs → head-442HYESI-BHKs27wD.mjs} +2 -2
  109. package/dist/{head-442HYESI-DYhCEt04.mjs.map → head-442HYESI-BHKs27wD.mjs.map} +1 -1
  110. package/dist/{head-442HYESI-oqGD9fkS.cjs → head-442HYESI-Dk-aZxLY.cjs} +2 -2
  111. package/dist/{head-442HYESI-oqGD9fkS.cjs.map → head-442HYESI-Dk-aZxLY.cjs.map} +1 -1
  112. package/dist/{help-HZ6M2CKN-CQnNa3uh.cjs → help-HZ6M2CKN-BDjDl95L.cjs} +2 -2
  113. package/dist/{help-HZ6M2CKN-CQnNa3uh.cjs.map → help-HZ6M2CKN-BDjDl95L.cjs.map} +1 -1
  114. package/dist/{help-HZ6M2CKN-WHmZpsJe.mjs → help-HZ6M2CKN-NJxruCvX.mjs} +2 -2
  115. package/dist/{help-HZ6M2CKN-WHmZpsJe.mjs.map → help-HZ6M2CKN-NJxruCvX.mjs.map} +1 -1
  116. package/dist/{html-to-markdown-JW4MSQZO-BRaey0zy.cjs → html-to-markdown-JW4MSQZO-DhwShT4r.cjs} +3 -3
  117. package/dist/{html-to-markdown-JW4MSQZO-BRaey0zy.cjs.map → html-to-markdown-JW4MSQZO-DhwShT4r.cjs.map} +1 -1
  118. package/dist/{html-to-markdown-JW4MSQZO-CezmhFZv.mjs → html-to-markdown-JW4MSQZO-Dxn3G_u0.mjs} +3 -3
  119. package/dist/{html-to-markdown-JW4MSQZO-CezmhFZv.mjs.map → html-to-markdown-JW4MSQZO-Dxn3G_u0.mjs.map} +1 -1
  120. package/dist/internal.cjs +1 -1
  121. package/dist/internal.mjs +1 -1
  122. package/dist/{join-TBRGI3LQ-DGC98Vff.cjs → join-TBRGI3LQ-BOrN6o91.cjs} +2 -2
  123. package/dist/{join-TBRGI3LQ-DGC98Vff.cjs.map → join-TBRGI3LQ-BOrN6o91.cjs.map} +1 -1
  124. package/dist/{join-TBRGI3LQ-DavcUkrI.mjs → join-TBRGI3LQ-Detqm78p.mjs} +2 -2
  125. package/dist/{join-TBRGI3LQ-DavcUkrI.mjs.map → join-TBRGI3LQ-Detqm78p.mjs.map} +1 -1
  126. package/dist/{jq-4XLYLOS5-DwHcJv8h.cjs → jq-4XLYLOS5-D1rW-r_t.cjs} +4 -4
  127. package/dist/{jq-4XLYLOS5-DwHcJv8h.cjs.map → jq-4XLYLOS5-D1rW-r_t.cjs.map} +1 -1
  128. package/dist/{jq-4XLYLOS5-BIRMGhL2.mjs → jq-4XLYLOS5-D3Hv5NPh.mjs} +4 -4
  129. package/dist/{jq-4XLYLOS5-BIRMGhL2.mjs.map → jq-4XLYLOS5-D3Hv5NPh.mjs.map} +1 -1
  130. package/dist/{js-exec-N5KEZBH7-BfEgJ3O-.cjs → js-exec-N5KEZBH7-DdUI6ysR.cjs} +3 -3
  131. package/dist/{js-exec-N5KEZBH7-BfEgJ3O-.cjs.map → js-exec-N5KEZBH7-DdUI6ysR.cjs.map} +1 -1
  132. package/dist/{js-exec-N5KEZBH7-CENniwUd.mjs → js-exec-N5KEZBH7-IeT7kUb4.mjs} +3 -3
  133. package/dist/{js-exec-N5KEZBH7-CENniwUd.mjs.map → js-exec-N5KEZBH7-IeT7kUb4.mjs.map} +1 -1
  134. package/dist/{lib-s1Tq9Ck6.cjs → lib-CWnMkTds.cjs} +2 -2
  135. package/dist/{lib-s1Tq9Ck6.cjs.map → lib-CWnMkTds.cjs.map} +1 -1
  136. package/dist/{lib-r4uXvKzY.mjs → lib-IvUaxE_n.mjs} +2 -2
  137. package/dist/{lib-r4uXvKzY.mjs.map → lib-IvUaxE_n.mjs.map} +1 -1
  138. package/dist/{ln-4LGSXXGD-C2-zvnH-.cjs → ln-4LGSXXGD-C_nCll5M.cjs} +2 -2
  139. package/dist/{ln-4LGSXXGD-C2-zvnH-.cjs.map → ln-4LGSXXGD-C_nCll5M.cjs.map} +1 -1
  140. package/dist/{ln-4LGSXXGD-Bm1sddvE.mjs → ln-4LGSXXGD-QwxdpvJS.mjs} +2 -2
  141. package/dist/{ln-4LGSXXGD-Bm1sddvE.mjs.map → ln-4LGSXXGD-QwxdpvJS.mjs.map} +1 -1
  142. package/dist/{ls-ZJGQER7M-Kk7mhuiM.cjs → ls-ZJGQER7M-2SPXYvOJ.cjs} +2 -2
  143. package/dist/{ls-ZJGQER7M-Kk7mhuiM.cjs.map → ls-ZJGQER7M-2SPXYvOJ.cjs.map} +1 -1
  144. package/dist/{ls-ZJGQER7M-EzhpSJMB.mjs → ls-ZJGQER7M-fzilJj5j.mjs} +2 -2
  145. package/dist/{ls-ZJGQER7M-EzhpSJMB.mjs.map → ls-ZJGQER7M-fzilJj5j.mjs.map} +1 -1
  146. package/dist/{lzma-Bss45nA5.cjs → lzma-DIkV1Qwz.cjs} +2 -2
  147. package/dist/{lzma-Bss45nA5.cjs.map → lzma-DIkV1Qwz.cjs.map} +1 -1
  148. package/dist/{md5sum-SPU24VSG-DpKxsaMc.cjs → md5sum-SPU24VSG-B9UPOmq7.cjs} +3 -3
  149. package/dist/{md5sum-SPU24VSG-DpKxsaMc.cjs.map → md5sum-SPU24VSG-B9UPOmq7.cjs.map} +1 -1
  150. package/dist/{md5sum-SPU24VSG-DuY3W47X.mjs → md5sum-SPU24VSG-CPMIT1Bm.mjs} +3 -3
  151. package/dist/{md5sum-SPU24VSG-DuY3W47X.mjs.map → md5sum-SPU24VSG-CPMIT1Bm.mjs.map} +1 -1
  152. package/dist/{mkdir-MEPGZOB6-B54I-co9.mjs → mkdir-MEPGZOB6-0RKW2lRs.mjs} +2 -2
  153. package/dist/{mkdir-MEPGZOB6-B54I-co9.mjs.map → mkdir-MEPGZOB6-0RKW2lRs.mjs.map} +1 -1
  154. package/dist/{mkdir-MEPGZOB6-CQG6PmsH.cjs → mkdir-MEPGZOB6-DXXYi16-.cjs} +2 -2
  155. package/dist/{mkdir-MEPGZOB6-CQG6PmsH.cjs.map → mkdir-MEPGZOB6-DXXYi16-.cjs.map} +1 -1
  156. package/dist/{mv-W5BIQ646-W82Guf5l.cjs → mv-W5BIQ646-BC8w4OGn.cjs} +2 -2
  157. package/dist/{mv-W5BIQ646-W82Guf5l.cjs.map → mv-W5BIQ646-BC8w4OGn.cjs.map} +1 -1
  158. package/dist/{mv-W5BIQ646-BOGImyXG.mjs → mv-W5BIQ646-YdlzzXCv.mjs} +2 -2
  159. package/dist/{mv-W5BIQ646-BOGImyXG.mjs.map → mv-W5BIQ646-YdlzzXCv.mjs.map} +1 -1
  160. package/dist/{nl-WSDW7I4O-C5Tn3qyh.mjs → nl-WSDW7I4O-A0T6QLHV.mjs} +2 -2
  161. package/dist/{nl-WSDW7I4O-C5Tn3qyh.mjs.map → nl-WSDW7I4O-A0T6QLHV.mjs.map} +1 -1
  162. package/dist/{nl-WSDW7I4O-DHCupEKS.cjs → nl-WSDW7I4O-BKXSseFP.cjs} +2 -2
  163. package/dist/{nl-WSDW7I4O-DHCupEKS.cjs.map → nl-WSDW7I4O-BKXSseFP.cjs.map} +1 -1
  164. package/dist/{od-WOKFDJTP-CQQETIge.cjs → od-WOKFDJTP-CSXVq9ia.cjs} +2 -2
  165. package/dist/{od-WOKFDJTP-CQQETIge.cjs.map → od-WOKFDJTP-CSXVq9ia.cjs.map} +1 -1
  166. package/dist/{od-WOKFDJTP-Dhall4HD.mjs → od-WOKFDJTP-KJiVwF6Z.mjs} +2 -2
  167. package/dist/{od-WOKFDJTP-Dhall4HD.mjs.map → od-WOKFDJTP-KJiVwF6Z.mjs.map} +1 -1
  168. package/dist/{paste-7JC6S4DX-DRUvmKbL.cjs → paste-7JC6S4DX-D3CVNBlz.cjs} +2 -2
  169. package/dist/{paste-7JC6S4DX-DRUvmKbL.cjs.map → paste-7JC6S4DX-D3CVNBlz.cjs.map} +1 -1
  170. package/dist/{paste-7JC6S4DX-CQu-heii.mjs → paste-7JC6S4DX-DyGi5wYF.mjs} +2 -2
  171. package/dist/{paste-7JC6S4DX-CQu-heii.mjs.map → paste-7JC6S4DX-DyGi5wYF.mjs.map} +1 -1
  172. package/dist/{printf-TWGXF445-BL70_Mu8.cjs → printf-TWGXF445-BKfQlbL9.cjs} +3 -3
  173. package/dist/{printf-TWGXF445-BL70_Mu8.cjs.map → printf-TWGXF445-BKfQlbL9.cjs.map} +1 -1
  174. package/dist/{printf-TWGXF445-Dt9gKujx.mjs → printf-TWGXF445-r3qhlsv5.mjs} +3 -3
  175. package/dist/{printf-TWGXF445-Dt9gKujx.mjs.map → printf-TWGXF445-r3qhlsv5.mjs.map} +1 -1
  176. package/dist/{python3-POMOR4OA-CudEUuqu.mjs → python3-POMOR4OA-A_1Rtauo.mjs} +3 -3
  177. package/dist/{python3-POMOR4OA-CudEUuqu.mjs.map → python3-POMOR4OA-A_1Rtauo.mjs.map} +1 -1
  178. package/dist/{python3-POMOR4OA-k99Mukqm.cjs → python3-POMOR4OA-Dn2QuNCR.cjs} +3 -3
  179. package/dist/{python3-POMOR4OA-k99Mukqm.cjs.map → python3-POMOR4OA-Dn2QuNCR.cjs.map} +1 -1
  180. package/dist/{rev-5EHFX4EJ-BncrTaPe.cjs → rev-5EHFX4EJ-BvsRq0Ut.cjs} +2 -2
  181. package/dist/{rev-5EHFX4EJ-BncrTaPe.cjs.map → rev-5EHFX4EJ-BvsRq0Ut.cjs.map} +1 -1
  182. package/dist/{rev-5EHFX4EJ-Da-_OtYp.mjs → rev-5EHFX4EJ-qcwp1b76.mjs} +2 -2
  183. package/dist/{rev-5EHFX4EJ-Da-_OtYp.mjs.map → rev-5EHFX4EJ-qcwp1b76.mjs.map} +1 -1
  184. package/dist/{rg-S4FXYXWB-DpNsd4K9.mjs → rg-S4FXYXWB-B0WvYOCl.mjs} +3 -3
  185. package/dist/{rg-S4FXYXWB-DpNsd4K9.mjs.map → rg-S4FXYXWB-B0WvYOCl.mjs.map} +1 -1
  186. package/dist/{rg-S4FXYXWB-k-o32NUm.cjs → rg-S4FXYXWB-BQiwshYf.cjs} +3 -3
  187. package/dist/{rg-S4FXYXWB-k-o32NUm.cjs.map → rg-S4FXYXWB-BQiwshYf.cjs.map} +1 -1
  188. package/dist/{rm-SSGETQVQ-BdEQdiqA.cjs → rm-SSGETQVQ-A9H9diLP.cjs} +2 -2
  189. package/dist/{rm-SSGETQVQ-BdEQdiqA.cjs.map → rm-SSGETQVQ-A9H9diLP.cjs.map} +1 -1
  190. package/dist/{rm-SSGETQVQ-D3OzLKaR.mjs → rm-SSGETQVQ-BvdJ3-kd.mjs} +2 -2
  191. package/dist/{rm-SSGETQVQ-D3OzLKaR.mjs.map → rm-SSGETQVQ-BvdJ3-kd.mjs.map} +1 -1
  192. package/dist/{rmdir-OC4ZLPYA-Vs8pjIJ4.mjs → rmdir-OC4ZLPYA-B4-LzLc2.mjs} +2 -2
  193. package/dist/{rmdir-OC4ZLPYA-Vs8pjIJ4.mjs.map → rmdir-OC4ZLPYA-B4-LzLc2.mjs.map} +1 -1
  194. package/dist/{rmdir-OC4ZLPYA-CwNexp-K.cjs → rmdir-OC4ZLPYA-DVNZyP3E.cjs} +2 -2
  195. package/dist/{rmdir-OC4ZLPYA-CwNexp-K.cjs.map → rmdir-OC4ZLPYA-DVNZyP3E.cjs.map} +1 -1
  196. package/dist/run.cjs +1 -1
  197. package/dist/run.mjs +1 -1
  198. package/dist/{sed-S5UIK574-CmYMd5gV.cjs → sed-S5UIK574-ZRrZ1_cy.cjs} +2 -2
  199. package/dist/{sed-S5UIK574-CmYMd5gV.cjs.map → sed-S5UIK574-ZRrZ1_cy.cjs.map} +1 -1
  200. package/dist/{sed-S5UIK574-DyJHugnM.mjs → sed-S5UIK574-tv8TCVhp.mjs} +2 -2
  201. package/dist/{sed-S5UIK574-DyJHugnM.mjs.map → sed-S5UIK574-tv8TCVhp.mjs.map} +1 -1
  202. package/dist/{sha1sum-2PTOAFR6-BNMNnH4a.mjs → sha1sum-2PTOAFR6-B_oiePQj.mjs} +3 -3
  203. package/dist/{sha1sum-2PTOAFR6-BNMNnH4a.mjs.map → sha1sum-2PTOAFR6-B_oiePQj.mjs.map} +1 -1
  204. package/dist/{sha1sum-2PTOAFR6-CHkmBbuF.cjs → sha1sum-2PTOAFR6-XZkP6nt7.cjs} +3 -3
  205. package/dist/{sha1sum-2PTOAFR6-CHkmBbuF.cjs.map → sha1sum-2PTOAFR6-XZkP6nt7.cjs.map} +1 -1
  206. package/dist/{sha256sum-NS7D3IXX-DCiObRGK.mjs → sha256sum-NS7D3IXX-DEmVydlk.mjs} +3 -3
  207. package/dist/{sha256sum-NS7D3IXX-DCiObRGK.mjs.map → sha256sum-NS7D3IXX-DEmVydlk.mjs.map} +1 -1
  208. package/dist/{sha256sum-NS7D3IXX-D8Ows_EQ.cjs → sha256sum-NS7D3IXX-DnC_PGjQ.cjs} +3 -3
  209. package/dist/{sha256sum-NS7D3IXX-D8Ows_EQ.cjs.map → sha256sum-NS7D3IXX-DnC_PGjQ.cjs.map} +1 -1
  210. package/dist/{sleep-X22JJINO-DCiATAgx.mjs → sleep-X22JJINO-BXynmGAQ.mjs} +2 -2
  211. package/dist/{sleep-X22JJINO-DCiATAgx.mjs.map → sleep-X22JJINO-BXynmGAQ.mjs.map} +1 -1
  212. package/dist/{sleep-X22JJINO-DgywhtkX.cjs → sleep-X22JJINO-Ch8K7jyv.cjs} +2 -2
  213. package/dist/{sleep-X22JJINO-DgywhtkX.cjs.map → sleep-X22JJINO-Ch8K7jyv.cjs.map} +1 -1
  214. package/dist/{sort-SW2YEO5B-BIld1500.mjs → sort-SW2YEO5B-BaVI4IMc.mjs} +3 -3
  215. package/dist/{sort-SW2YEO5B-BIld1500.mjs.map → sort-SW2YEO5B-BaVI4IMc.mjs.map} +1 -1
  216. package/dist/{sort-SW2YEO5B-K29bZEkt.cjs → sort-SW2YEO5B-DsecUzWJ.cjs} +3 -3
  217. package/dist/{sort-SW2YEO5B-K29bZEkt.cjs.map → sort-SW2YEO5B-DsecUzWJ.cjs.map} +1 -1
  218. package/dist/{split-4KKZZXXE-C682TL18.mjs → split-4KKZZXXE-BfB9q-OP.mjs} +2 -2
  219. package/dist/{split-4KKZZXXE-C682TL18.mjs.map → split-4KKZZXXE-BfB9q-OP.mjs.map} +1 -1
  220. package/dist/{split-4KKZZXXE-C2sHnk6E.cjs → split-4KKZZXXE-DuVoFksv.cjs} +2 -2
  221. package/dist/{split-4KKZZXXE-C2sHnk6E.cjs.map → split-4KKZZXXE-DuVoFksv.cjs.map} +1 -1
  222. package/dist/{sqlite3-CGOEFJAO-Dh0oqw-k.cjs → sqlite3-CGOEFJAO-B3darddO.cjs} +3 -3
  223. package/dist/{sqlite3-CGOEFJAO-Dh0oqw-k.cjs.map → sqlite3-CGOEFJAO-B3darddO.cjs.map} +1 -1
  224. package/dist/{sqlite3-CGOEFJAO-BCIPkSxm.mjs → sqlite3-CGOEFJAO-C8O67MY7.mjs} +3 -3
  225. package/dist/{sqlite3-CGOEFJAO-BCIPkSxm.mjs.map → sqlite3-CGOEFJAO-C8O67MY7.mjs.map} +1 -1
  226. package/dist/{start-C8A5Y1es.mjs → start-B3sE8bjc.mjs} +463 -292
  227. package/dist/start-B3sE8bjc.mjs.map +1 -0
  228. package/dist/{start-DcC-zxF1.cjs → start-CvNWHkwA.cjs} +462 -291
  229. package/dist/start-CvNWHkwA.cjs.map +1 -0
  230. package/dist/start.cjs +1 -1
  231. package/dist/start.mjs +1 -1
  232. package/dist/{strings-6WDHLGMX-DfgljZYU.mjs → strings-6WDHLGMX-C2Nuw6WT.mjs} +2 -2
  233. package/dist/{strings-6WDHLGMX-DfgljZYU.mjs.map → strings-6WDHLGMX-C2Nuw6WT.mjs.map} +1 -1
  234. package/dist/{strings-6WDHLGMX-DljwAIWz.cjs → strings-6WDHLGMX-CgtErQkB.cjs} +2 -2
  235. package/dist/{strings-6WDHLGMX-DljwAIWz.cjs.map → strings-6WDHLGMX-CgtErQkB.cjs.map} +1 -1
  236. package/dist/{tac-2STMMJYW-B3AcXTdf.mjs → tac-2STMMJYW-CwL11Mhc.mjs} +2 -2
  237. package/dist/{tac-2STMMJYW-B3AcXTdf.mjs.map → tac-2STMMJYW-CwL11Mhc.mjs.map} +1 -1
  238. package/dist/{tac-2STMMJYW-BnVw01dK.cjs → tac-2STMMJYW-r_2LJAA8.cjs} +2 -2
  239. package/dist/{tac-2STMMJYW-BnVw01dK.cjs.map → tac-2STMMJYW-r_2LJAA8.cjs.map} +1 -1
  240. package/dist/{tail-R4PCA2C4-8A3op41b.cjs → tail-R4PCA2C4-BS_pF2B-.cjs} +2 -2
  241. package/dist/{tail-R4PCA2C4-8A3op41b.cjs.map → tail-R4PCA2C4-BS_pF2B-.cjs.map} +1 -1
  242. package/dist/{tail-R4PCA2C4-BrONSl6R.mjs → tail-R4PCA2C4-mxBFiByP.mjs} +2 -2
  243. package/dist/{tail-R4PCA2C4-BrONSl6R.mjs.map → tail-R4PCA2C4-mxBFiByP.mjs.map} +1 -1
  244. package/dist/{tar-STHHZTZ6-DIkfQzE0.cjs → tar-STHHZTZ6-A4iJTjR5.cjs} +5 -5
  245. package/dist/{tar-STHHZTZ6-DIkfQzE0.cjs.map → tar-STHHZTZ6-A4iJTjR5.cjs.map} +1 -1
  246. package/dist/{tar-STHHZTZ6-BAXlUOR5.mjs → tar-STHHZTZ6-hlJ3WqnQ.mjs} +4 -4
  247. package/dist/{tar-STHHZTZ6-BAXlUOR5.mjs.map → tar-STHHZTZ6-hlJ3WqnQ.mjs.map} +1 -1
  248. package/dist/{tee-YUZ2FKCJ-DBlSS73M.mjs → tee-YUZ2FKCJ-C3CDSTkz.mjs} +2 -2
  249. package/dist/{tee-YUZ2FKCJ-DBlSS73M.mjs.map → tee-YUZ2FKCJ-C3CDSTkz.mjs.map} +1 -1
  250. package/dist/{tee-YUZ2FKCJ-BkwF9rxX.cjs → tee-YUZ2FKCJ-bPzE5SDX.cjs} +2 -2
  251. package/dist/{tee-YUZ2FKCJ-BkwF9rxX.cjs.map → tee-YUZ2FKCJ-bPzE5SDX.cjs.map} +1 -1
  252. package/dist/{time-D4LNBSWX-7MVmAtQo.mjs → time-D4LNBSWX-CKKOkAsd.mjs} +2 -2
  253. package/dist/{time-D4LNBSWX-7MVmAtQo.mjs.map → time-D4LNBSWX-CKKOkAsd.mjs.map} +1 -1
  254. package/dist/{time-D4LNBSWX-alYfSUdv.cjs → time-D4LNBSWX-CNeNuqrL.cjs} +2 -2
  255. package/dist/{time-D4LNBSWX-alYfSUdv.cjs.map → time-D4LNBSWX-CNeNuqrL.cjs.map} +1 -1
  256. package/dist/{timeout-YDCRSLPQ-D7uw71ZK.cjs → timeout-YDCRSLPQ-BRpWJOuw.cjs} +2 -2
  257. package/dist/{timeout-YDCRSLPQ-D7uw71ZK.cjs.map → timeout-YDCRSLPQ-BRpWJOuw.cjs.map} +1 -1
  258. package/dist/{timeout-YDCRSLPQ-V4Gc33PA.mjs → timeout-YDCRSLPQ-K6Njm0v3.mjs} +2 -2
  259. package/dist/{timeout-YDCRSLPQ-V4Gc33PA.mjs.map → timeout-YDCRSLPQ-K6Njm0v3.mjs.map} +1 -1
  260. package/dist/{touch-UA33VN3N-rmsOL84Q.cjs → touch-UA33VN3N-BVvQHPN0.cjs} +2 -2
  261. package/dist/{touch-UA33VN3N-rmsOL84Q.cjs.map → touch-UA33VN3N-BVvQHPN0.cjs.map} +1 -1
  262. package/dist/{touch-UA33VN3N-BvdCDNvh.mjs → touch-UA33VN3N-Dotlnikw.mjs} +2 -2
  263. package/dist/{touch-UA33VN3N-BvdCDNvh.mjs.map → touch-UA33VN3N-Dotlnikw.mjs.map} +1 -1
  264. package/dist/{tr-36LHWFRQ-DQL-CWbQ.mjs → tr-36LHWFRQ-CmAcddQN.mjs} +2 -2
  265. package/dist/{tr-36LHWFRQ-DQL-CWbQ.mjs.map → tr-36LHWFRQ-CmAcddQN.mjs.map} +1 -1
  266. package/dist/{tr-36LHWFRQ-D672NK0o.cjs → tr-36LHWFRQ-D2Jm53vt.cjs} +2 -2
  267. package/dist/{tr-36LHWFRQ-D672NK0o.cjs.map → tr-36LHWFRQ-D2Jm53vt.cjs.map} +1 -1
  268. package/dist/{tree-YLD52CNT-B9MlNWhD.cjs → tree-YLD52CNT-C3RULkH4.cjs} +2 -2
  269. package/dist/{tree-YLD52CNT-B9MlNWhD.cjs.map → tree-YLD52CNT-C3RULkH4.cjs.map} +1 -1
  270. package/dist/{tree-YLD52CNT-LmR2Tdyi.mjs → tree-YLD52CNT-CyZ9gID6.mjs} +2 -2
  271. package/dist/{tree-YLD52CNT-LmR2Tdyi.mjs.map → tree-YLD52CNT-CyZ9gID6.mjs.map} +1 -1
  272. package/dist/{unexpand-CADSA4VO-BlcDiLij.mjs → unexpand-CADSA4VO-C7s1nWRV.mjs} +2 -2
  273. package/dist/{unexpand-CADSA4VO-BlcDiLij.mjs.map → unexpand-CADSA4VO-C7s1nWRV.mjs.map} +1 -1
  274. package/dist/{unexpand-CADSA4VO-DHAAlelL.cjs → unexpand-CADSA4VO-Cg3kMDd4.cjs} +2 -2
  275. package/dist/{unexpand-CADSA4VO-DHAAlelL.cjs.map → unexpand-CADSA4VO-Cg3kMDd4.cjs.map} +1 -1
  276. package/dist/{uniq-XSIZR6PB-DEfJnyaW.cjs → uniq-XSIZR6PB-dPsExEhi.cjs} +3 -3
  277. package/dist/{uniq-XSIZR6PB-DEfJnyaW.cjs.map → uniq-XSIZR6PB-dPsExEhi.cjs.map} +1 -1
  278. package/dist/{uniq-XSIZR6PB-3tHE1GmH.mjs → uniq-XSIZR6PB-gvgCEeBQ.mjs} +3 -3
  279. package/dist/{uniq-XSIZR6PB-3tHE1GmH.mjs.map → uniq-XSIZR6PB-gvgCEeBQ.mjs.map} +1 -1
  280. package/dist/{wc-LF7NU4LA-DRj3yyc9.mjs → wc-LF7NU4LA-5fJsZ37R.mjs} +3 -3
  281. package/dist/{wc-LF7NU4LA-DRj3yyc9.mjs.map → wc-LF7NU4LA-5fJsZ37R.mjs.map} +1 -1
  282. package/dist/{wc-LF7NU4LA-DMBDVHsS.cjs → wc-LF7NU4LA-E5PFHjSK.cjs} +3 -3
  283. package/dist/{wc-LF7NU4LA-DMBDVHsS.cjs.map → wc-LF7NU4LA-E5PFHjSK.cjs.map} +1 -1
  284. package/dist/{with-project-scope-DkQ6P3hm.mjs → with-project-scope-CyJ2jypd.mjs} +2 -2
  285. package/dist/{with-project-scope-DkQ6P3hm.mjs.map → with-project-scope-CyJ2jypd.mjs.map} +1 -1
  286. package/dist/{with-project-scope-DtpKIH7m.cjs → with-project-scope-mT3JxjHG.cjs} +2 -2
  287. package/dist/{with-project-scope-DtpKIH7m.cjs.map → with-project-scope-mT3JxjHG.cjs.map} +1 -1
  288. package/dist/{xan-Y6WF3IRG-C6Rea9i5.cjs → xan-Y6WF3IRG-C5dCpQeC.cjs} +6 -6
  289. package/dist/{xan-Y6WF3IRG-C6Rea9i5.cjs.map → xan-Y6WF3IRG-C5dCpQeC.cjs.map} +1 -1
  290. package/dist/{xan-Y6WF3IRG-Bk9GoBFW.mjs → xan-Y6WF3IRG-x7xglQiG.mjs} +6 -6
  291. package/dist/{xan-Y6WF3IRG-Bk9GoBFW.mjs.map → xan-Y6WF3IRG-x7xglQiG.mjs.map} +1 -1
  292. package/dist/{xan-view-HDVKHFC2-D8wWmUlF.cjs → xan-view-HDVKHFC2-BJMQgSrv.cjs} +3 -3
  293. package/dist/{xan-view-HDVKHFC2-D8wWmUlF.cjs.map → xan-view-HDVKHFC2-BJMQgSrv.cjs.map} +1 -1
  294. package/dist/{xan-view-HDVKHFC2-DU4gFwCD.mjs → xan-view-HDVKHFC2-INEMSTjB.mjs} +3 -3
  295. package/dist/{xan-view-HDVKHFC2-DU4gFwCD.mjs.map → xan-view-HDVKHFC2-INEMSTjB.mjs.map} +1 -1
  296. package/dist/{xargs-MGZPH7AX-Bokgq8NQ.mjs → xargs-MGZPH7AX-6RyGvkuL.mjs} +2 -2
  297. package/dist/{xargs-MGZPH7AX-Bokgq8NQ.mjs.map → xargs-MGZPH7AX-6RyGvkuL.mjs.map} +1 -1
  298. package/dist/{xargs-MGZPH7AX-B_25UIWm.cjs → xargs-MGZPH7AX-E5UD1hra.cjs} +2 -2
  299. package/dist/{xargs-MGZPH7AX-B_25UIWm.cjs.map → xargs-MGZPH7AX-E5UD1hra.cjs.map} +1 -1
  300. package/dist/{yq-4QJW3EQG-BfnftBmC.cjs → yq-4QJW3EQG-D-1VaQsP.cjs} +3 -3
  301. package/dist/{yq-4QJW3EQG-BfnftBmC.cjs.map → yq-4QJW3EQG-D-1VaQsP.cjs.map} +1 -1
  302. package/dist/{yq-4QJW3EQG-D-gf6DFH.mjs → yq-4QJW3EQG-lZUtQEHq.mjs} +3 -3
  303. package/dist/{yq-4QJW3EQG-D-gf6DFH.mjs.map → yq-4QJW3EQG-lZUtQEHq.mjs.map} +1 -1
  304. package/package.json +1 -1
  305. package/dist/dist-B2lPLfrR.mjs.map +0 -1
  306. package/dist/dist-CkBSbX2_.cjs.map +0 -1
  307. package/dist/dist-D_ICFiVc.mjs.map +0 -1
  308. package/dist/dist-QS2Dafen.cjs.map +0 -1
  309. package/dist/start-C8A5Y1es.mjs.map +0 -1
  310. package/dist/start-DcC-zxF1.cjs.map +0 -1
@@ -1,8 +1,8 @@
1
- const require_dist = require("./dist-QS2Dafen.cjs");
2
- const require_dist$1 = require("./dist-CkBSbX2_.cjs");
1
+ const require_dist = require("./dist-DBqXzrRX.cjs");
2
+ const require_dist$1 = require("./dist-BqavNK6G.cjs");
3
3
  require("./chunk-BZUGFHVS-7RRM7Jpb.cjs");
4
4
  const require_chunk_TN7HHBQW = require("./chunk-TN7HHBQW-D_SK6w5n.cjs");
5
- const require_with_project_scope = require("./with-project-scope-DtpKIH7m.cjs");
5
+ const require_with_project_scope = require("./with-project-scope-mT3JxjHG.cjs");
6
6
  let node_crypto = require("node:crypto");
7
7
  require("node:fs/promises");
8
8
  let _keystrokehq_database = require("@keystrokehq/database");
@@ -102,7 +102,7 @@ zod.z.object({
102
102
  content: zod.z.string().describe("Content to write to the file")
103
103
  });
104
104
  //#endregion
105
- //#region ../../packages/sandbox/dist/files-EBXCAi4v.mjs
105
+ //#region ../../packages/sandbox/dist/files-DHxVXA0l.mjs
106
106
  const SandboxModeSchema = zod.z.enum(["in-process", "vm"]);
107
107
  const SandboxFileContentSchema = zod.z.object({
108
108
  path: zod.z.string(),
@@ -120,16 +120,74 @@ const SandboxFileSchema = zod.z.object({
120
120
  const SandboxProjectFilesSchema = zod.z.union([zod.z.literal(true), zod.z.string()]);
121
121
  /** Author-facing sandbox files: inline entries or a project file set. */
122
122
  const SandboxFilesInputSchema = zod.z.union([zod.z.array(SandboxFileSchema), SandboxProjectFilesSchema]);
123
+ const GITHUB_REPOSITORY_PATTERN = /^[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+$/;
124
+ const SandboxGitUserSchema = zod.z.object({
125
+ name: zod.z.string().trim().min(1),
126
+ email: zod.z.string().trim().min(1)
127
+ });
128
+ const SandboxGitCloneSchema = zod.z.object({
129
+ repository: zod.z.string().trim().min(1).regex(GITHUB_REPOSITORY_PATTERN, "repository must be \"owner/repo\""),
130
+ credential: zod.z.string().trim().min(1),
131
+ branch: zod.z.string().trim().min(1).optional(),
132
+ path: zod.z.string().trim().min(1).optional()
133
+ });
134
+ const SandboxGitSchema = zod.z.object({
135
+ clone: SandboxGitCloneSchema,
136
+ user: SandboxGitUserSchema.optional()
137
+ });
138
+ const SandboxEnvFnSchema = zod.z.custom((value) => typeof value === "function", "env must be a function");
139
+ /** Author-facing first-session setup commands (`defineSandbox({ setup })`). */
140
+ const SandboxSetupSchema = zod.z.array(zod.z.string().trim().min(1)).min(1);
123
141
  zod.z.object({
124
142
  key: zod.z.string().optional(),
125
143
  /** Sandbox execution mode. Defaults to in-process when omitted. */
126
144
  mode: SandboxModeSchema.optional(),
127
- files: SandboxFilesInputSchema.optional()
145
+ files: SandboxFilesInputSchema.optional(),
146
+ credentials: zod.z.array(require_dist$1.credentialInputSchema).optional(),
147
+ env: SandboxEnvFnSchema.optional(),
148
+ git: SandboxGitSchema.optional(),
149
+ setup: SandboxSetupSchema.optional()
150
+ }).superRefine((value, ctx) => {
151
+ if ((value.credentials !== void 0 || value.env !== void 0 || value.git !== void 0 || value.setup !== void 0) && value.mode !== "vm") ctx.addIssue({
152
+ code: "custom",
153
+ message: "sandbox credentials, env, git, and setup require mode: \"vm\"",
154
+ path: ["mode"]
155
+ });
156
+ if ((value.env !== void 0 || value.git !== void 0) && !value.credentials?.length) ctx.addIssue({
157
+ code: "custom",
158
+ message: "sandbox env and git require a non-empty credentials list",
159
+ path: ["credentials"]
160
+ });
161
+ if (value.credentials) {
162
+ const keys = value.credentials.map((item) => item.key);
163
+ const seen = /* @__PURE__ */ new Set();
164
+ for (const key of keys) {
165
+ if (seen.has(key)) ctx.addIssue({
166
+ code: "custom",
167
+ message: `duplicate sandbox credential key "${key}"`,
168
+ path: ["credentials"]
169
+ });
170
+ seen.add(key);
171
+ }
172
+ if (value.git && !seen.has(value.git.clone.credential)) ctx.addIssue({
173
+ code: "custom",
174
+ message: `git.clone.credential "${value.git.clone.credential}" must be declared in credentials`,
175
+ path: [
176
+ "git",
177
+ "clone",
178
+ "credential"
179
+ ]
180
+ });
181
+ }
128
182
  });
129
183
  zod.z.object({
130
184
  key: zod.z.string().optional(),
131
185
  mode: SandboxModeSchema.optional(),
132
- files: zod.z.array(SandboxFileSchema).optional()
186
+ files: zod.z.array(SandboxFileSchema).optional(),
187
+ credentials: zod.z.array(require_dist$1.credentialInputSchema).optional(),
188
+ env: SandboxEnvFnSchema.optional(),
189
+ git: SandboxGitSchema.optional(),
190
+ setup: SandboxSetupSchema.optional()
133
191
  });
134
192
  new node_async_hooks.AsyncLocalStorage();
135
193
  //#endregion
@@ -22934,43 +22992,43 @@ var tt = [
22934
22992
  },
22935
22993
  {
22936
22994
  name: "cat",
22937
- load: async () => (await Promise.resolve().then(() => require("./cat-TSFMZVYS-DPSpsOSF.cjs"))).catCommand
22995
+ load: async () => (await Promise.resolve().then(() => require("./cat-TSFMZVYS-il94pqXS.cjs"))).catCommand
22938
22996
  },
22939
22997
  {
22940
22998
  name: "printf",
22941
- load: async () => (await Promise.resolve().then(() => require("./printf-TWGXF445-BL70_Mu8.cjs"))).printfCommand
22999
+ load: async () => (await Promise.resolve().then(() => require("./printf-TWGXF445-BKfQlbL9.cjs"))).printfCommand
22942
23000
  },
22943
23001
  {
22944
23002
  name: "ls",
22945
- load: async () => (await Promise.resolve().then(() => require("./ls-ZJGQER7M-Kk7mhuiM.cjs"))).lsCommand
23003
+ load: async () => (await Promise.resolve().then(() => require("./ls-ZJGQER7M-2SPXYvOJ.cjs"))).lsCommand
22946
23004
  },
22947
23005
  {
22948
23006
  name: "mkdir",
22949
- load: async () => (await Promise.resolve().then(() => require("./mkdir-MEPGZOB6-CQG6PmsH.cjs"))).mkdirCommand
23007
+ load: async () => (await Promise.resolve().then(() => require("./mkdir-MEPGZOB6-DXXYi16-.cjs"))).mkdirCommand
22950
23008
  },
22951
23009
  {
22952
23010
  name: "rmdir",
22953
- load: async () => (await Promise.resolve().then(() => require("./rmdir-OC4ZLPYA-CwNexp-K.cjs"))).rmdirCommand
23011
+ load: async () => (await Promise.resolve().then(() => require("./rmdir-OC4ZLPYA-DVNZyP3E.cjs"))).rmdirCommand
22954
23012
  },
22955
23013
  {
22956
23014
  name: "touch",
22957
- load: async () => (await Promise.resolve().then(() => require("./touch-UA33VN3N-rmsOL84Q.cjs"))).touchCommand
23015
+ load: async () => (await Promise.resolve().then(() => require("./touch-UA33VN3N-BVvQHPN0.cjs"))).touchCommand
22958
23016
  },
22959
23017
  {
22960
23018
  name: "rm",
22961
- load: async () => (await Promise.resolve().then(() => require("./rm-SSGETQVQ-BdEQdiqA.cjs"))).rmCommand
23019
+ load: async () => (await Promise.resolve().then(() => require("./rm-SSGETQVQ-A9H9diLP.cjs"))).rmCommand
22962
23020
  },
22963
23021
  {
22964
23022
  name: "cp",
22965
- load: async () => (await Promise.resolve().then(() => require("./cp-BISAAS7A-CEFW3zU-.cjs"))).cpCommand
23023
+ load: async () => (await Promise.resolve().then(() => require("./cp-BISAAS7A-B1fM76rM.cjs"))).cpCommand
22966
23024
  },
22967
23025
  {
22968
23026
  name: "mv",
22969
- load: async () => (await Promise.resolve().then(() => require("./mv-W5BIQ646-W82Guf5l.cjs"))).mvCommand
23027
+ load: async () => (await Promise.resolve().then(() => require("./mv-W5BIQ646-BC8w4OGn.cjs"))).mvCommand
22970
23028
  },
22971
23029
  {
22972
23030
  name: "ln",
22973
- load: async () => (await Promise.resolve().then(() => require("./ln-4LGSXXGD-C2-zvnH-.cjs"))).lnCommand
23031
+ load: async () => (await Promise.resolve().then(() => require("./ln-4LGSXXGD-C_nCll5M.cjs"))).lnCommand
22974
23032
  },
22975
23033
  {
22976
23034
  name: "chmod",
@@ -22986,15 +23044,15 @@ var tt = [
22986
23044
  },
22987
23045
  {
22988
23046
  name: "head",
22989
- load: async () => (await Promise.resolve().then(() => require("./head-442HYESI-oqGD9fkS.cjs"))).headCommand
23047
+ load: async () => (await Promise.resolve().then(() => require("./head-442HYESI-Dk-aZxLY.cjs"))).headCommand
22990
23048
  },
22991
23049
  {
22992
23050
  name: "tail",
22993
- load: async () => (await Promise.resolve().then(() => require("./tail-R4PCA2C4-8A3op41b.cjs"))).tailCommand
23051
+ load: async () => (await Promise.resolve().then(() => require("./tail-R4PCA2C4-BS_pF2B-.cjs"))).tailCommand
22994
23052
  },
22995
23053
  {
22996
23054
  name: "wc",
22997
- load: async () => (await Promise.resolve().then(() => require("./wc-LF7NU4LA-DMBDVHsS.cjs"))).wcCommand
23055
+ load: async () => (await Promise.resolve().then(() => require("./wc-LF7NU4LA-E5PFHjSK.cjs"))).wcCommand
22998
23056
  },
22999
23057
  {
23000
23058
  name: "stat",
@@ -23002,95 +23060,95 @@ var tt = [
23002
23060
  },
23003
23061
  {
23004
23062
  name: "grep",
23005
- load: async () => (await Promise.resolve().then(() => require("./grep-V3LQVMRQ-WVUeOxin.cjs"))).grepCommand
23063
+ load: async () => (await Promise.resolve().then(() => require("./grep-V3LQVMRQ-a4ALkWEs.cjs"))).grepCommand
23006
23064
  },
23007
23065
  {
23008
23066
  name: "fgrep",
23009
- load: async () => (await Promise.resolve().then(() => require("./grep-V3LQVMRQ-WVUeOxin.cjs"))).fgrepCommand
23067
+ load: async () => (await Promise.resolve().then(() => require("./grep-V3LQVMRQ-a4ALkWEs.cjs"))).fgrepCommand
23010
23068
  },
23011
23069
  {
23012
23070
  name: "egrep",
23013
- load: async () => (await Promise.resolve().then(() => require("./grep-V3LQVMRQ-WVUeOxin.cjs"))).egrepCommand
23071
+ load: async () => (await Promise.resolve().then(() => require("./grep-V3LQVMRQ-a4ALkWEs.cjs"))).egrepCommand
23014
23072
  },
23015
23073
  {
23016
23074
  name: "rg",
23017
- load: async () => (await Promise.resolve().then(() => require("./rg-S4FXYXWB-k-o32NUm.cjs"))).rgCommand
23075
+ load: async () => (await Promise.resolve().then(() => require("./rg-S4FXYXWB-BQiwshYf.cjs"))).rgCommand
23018
23076
  },
23019
23077
  {
23020
23078
  name: "sed",
23021
- load: async () => (await Promise.resolve().then(() => require("./sed-S5UIK574-CmYMd5gV.cjs"))).sedCommand
23079
+ load: async () => (await Promise.resolve().then(() => require("./sed-S5UIK574-ZRrZ1_cy.cjs"))).sedCommand
23022
23080
  },
23023
23081
  {
23024
23082
  name: "awk",
23025
- load: async () => (await Promise.resolve().then(() => require("./awk2-LA3USKJP-BW5gD7Ek.cjs"))).awkCommand2
23083
+ load: async () => (await Promise.resolve().then(() => require("./awk2-LA3USKJP-CW4ZfUmw.cjs"))).awkCommand2
23026
23084
  },
23027
23085
  {
23028
23086
  name: "sort",
23029
- load: async () => (await Promise.resolve().then(() => require("./sort-SW2YEO5B-K29bZEkt.cjs"))).sortCommand
23087
+ load: async () => (await Promise.resolve().then(() => require("./sort-SW2YEO5B-DsecUzWJ.cjs"))).sortCommand
23030
23088
  },
23031
23089
  {
23032
23090
  name: "uniq",
23033
- load: async () => (await Promise.resolve().then(() => require("./uniq-XSIZR6PB-DEfJnyaW.cjs"))).uniqCommand
23091
+ load: async () => (await Promise.resolve().then(() => require("./uniq-XSIZR6PB-dPsExEhi.cjs"))).uniqCommand
23034
23092
  },
23035
23093
  {
23036
23094
  name: "comm",
23037
- load: async () => (await Promise.resolve().then(() => require("./comm-VV2LDX2J-CR1wbzGf.cjs"))).commCommand
23095
+ load: async () => (await Promise.resolve().then(() => require("./comm-VV2LDX2J-BqgPJ18z.cjs"))).commCommand
23038
23096
  },
23039
23097
  {
23040
23098
  name: "cut",
23041
- load: async () => (await Promise.resolve().then(() => require("./cut-OKARJCCV-YbUZRW2m.cjs"))).cutCommand
23099
+ load: async () => (await Promise.resolve().then(() => require("./cut-OKARJCCV-w-pyqX5v.cjs"))).cutCommand
23042
23100
  },
23043
23101
  {
23044
23102
  name: "paste",
23045
- load: async () => (await Promise.resolve().then(() => require("./paste-7JC6S4DX-DRUvmKbL.cjs"))).pasteCommand
23103
+ load: async () => (await Promise.resolve().then(() => require("./paste-7JC6S4DX-D3CVNBlz.cjs"))).pasteCommand
23046
23104
  },
23047
23105
  {
23048
23106
  name: "tr",
23049
- load: async () => (await Promise.resolve().then(() => require("./tr-36LHWFRQ-D672NK0o.cjs"))).trCommand
23107
+ load: async () => (await Promise.resolve().then(() => require("./tr-36LHWFRQ-D2Jm53vt.cjs"))).trCommand
23050
23108
  },
23051
23109
  {
23052
23110
  name: "rev",
23053
- load: async () => (await Promise.resolve().then(() => require("./rev-5EHFX4EJ-BncrTaPe.cjs"))).rev
23111
+ load: async () => (await Promise.resolve().then(() => require("./rev-5EHFX4EJ-BvsRq0Ut.cjs"))).rev
23054
23112
  },
23055
23113
  {
23056
23114
  name: "nl",
23057
- load: async () => (await Promise.resolve().then(() => require("./nl-WSDW7I4O-DHCupEKS.cjs"))).nl
23115
+ load: async () => (await Promise.resolve().then(() => require("./nl-WSDW7I4O-BKXSseFP.cjs"))).nl
23058
23116
  },
23059
23117
  {
23060
23118
  name: "fold",
23061
- load: async () => (await Promise.resolve().then(() => require("./fold-4TQNYMSW-D5LbDNK2.cjs"))).fold
23119
+ load: async () => (await Promise.resolve().then(() => require("./fold-4TQNYMSW-9vJYne9u.cjs"))).fold
23062
23120
  },
23063
23121
  {
23064
23122
  name: "expand",
23065
- load: async () => (await Promise.resolve().then(() => require("./expand-JSPG6VOP-BRdJhhzq.cjs"))).expand
23123
+ load: async () => (await Promise.resolve().then(() => require("./expand-JSPG6VOP-CAjx2zOr.cjs"))).expand
23066
23124
  },
23067
23125
  {
23068
23126
  name: "unexpand",
23069
- load: async () => (await Promise.resolve().then(() => require("./unexpand-CADSA4VO-DHAAlelL.cjs"))).unexpand
23127
+ load: async () => (await Promise.resolve().then(() => require("./unexpand-CADSA4VO-Cg3kMDd4.cjs"))).unexpand
23070
23128
  },
23071
23129
  {
23072
23130
  name: "strings",
23073
- load: async () => (await Promise.resolve().then(() => require("./strings-6WDHLGMX-DljwAIWz.cjs"))).strings
23131
+ load: async () => (await Promise.resolve().then(() => require("./strings-6WDHLGMX-CgtErQkB.cjs"))).strings
23074
23132
  },
23075
23133
  {
23076
23134
  name: "split",
23077
- load: async () => (await Promise.resolve().then(() => require("./split-4KKZZXXE-C2sHnk6E.cjs"))).split
23135
+ load: async () => (await Promise.resolve().then(() => require("./split-4KKZZXXE-DuVoFksv.cjs"))).split
23078
23136
  },
23079
23137
  {
23080
23138
  name: "column",
23081
- load: async () => (await Promise.resolve().then(() => require("./column-XT6UFXNQ-DqZnm5qa.cjs"))).column
23139
+ load: async () => (await Promise.resolve().then(() => require("./column-XT6UFXNQ-DZqF4lN0.cjs"))).column
23082
23140
  },
23083
23141
  {
23084
23142
  name: "join",
23085
- load: async () => (await Promise.resolve().then(() => require("./join-TBRGI3LQ-DGC98Vff.cjs"))).join
23143
+ load: async () => (await Promise.resolve().then(() => require("./join-TBRGI3LQ-BOrN6o91.cjs"))).join
23086
23144
  },
23087
23145
  {
23088
23146
  name: "tee",
23089
- load: async () => (await Promise.resolve().then(() => require("./tee-YUZ2FKCJ-BkwF9rxX.cjs"))).teeCommand
23147
+ load: async () => (await Promise.resolve().then(() => require("./tee-YUZ2FKCJ-bPzE5SDX.cjs"))).teeCommand
23090
23148
  },
23091
23149
  {
23092
23150
  name: "find",
23093
- load: async () => (await Promise.resolve().then(() => require("./find-INTH3OLC-ChUCh5M0.cjs"))).findCommand
23151
+ load: async () => (await Promise.resolve().then(() => require("./find-INTH3OLC-Duiv0ysU.cjs"))).findCommand
23094
23152
  },
23095
23153
  {
23096
23154
  name: "basename",
@@ -23102,19 +23160,19 @@ var tt = [
23102
23160
  },
23103
23161
  {
23104
23162
  name: "tree",
23105
- load: async () => (await Promise.resolve().then(() => require("./tree-YLD52CNT-B9MlNWhD.cjs"))).treeCommand
23163
+ load: async () => (await Promise.resolve().then(() => require("./tree-YLD52CNT-C3RULkH4.cjs"))).treeCommand
23106
23164
  },
23107
23165
  {
23108
23166
  name: "du",
23109
- load: async () => (await Promise.resolve().then(() => require("./du-572XNP42-CX6RDfLF.cjs"))).duCommand
23167
+ load: async () => (await Promise.resolve().then(() => require("./du-572XNP42-CY_xV18Z.cjs"))).duCommand
23110
23168
  },
23111
23169
  {
23112
23170
  name: "env",
23113
- load: async () => (await Promise.resolve().then(() => require("./env-36M5BO7M-okDipi6p.cjs"))).envCommand
23171
+ load: async () => (await Promise.resolve().then(() => require("./env-36M5BO7M-DNqd7E6I.cjs"))).envCommand
23114
23172
  },
23115
23173
  {
23116
23174
  name: "printenv",
23117
- load: async () => (await Promise.resolve().then(() => require("./env-36M5BO7M-okDipi6p.cjs"))).printenvCommand
23175
+ load: async () => (await Promise.resolve().then(() => require("./env-36M5BO7M-DNqd7E6I.cjs"))).printenvCommand
23118
23176
  },
23119
23177
  {
23120
23178
  name: "alias",
@@ -23130,7 +23188,7 @@ var tt = [
23130
23188
  },
23131
23189
  {
23132
23190
  name: "xargs",
23133
- load: async () => (await Promise.resolve().then(() => require("./xargs-MGZPH7AX-B_25UIWm.cjs"))).xargsCommand
23191
+ load: async () => (await Promise.resolve().then(() => require("./xargs-MGZPH7AX-E5UD1hra.cjs"))).xargsCommand
23134
23192
  },
23135
23193
  {
23136
23194
  name: "true",
@@ -23146,23 +23204,23 @@ var tt = [
23146
23204
  },
23147
23205
  {
23148
23206
  name: "bash",
23149
- load: async () => (await Promise.resolve().then(() => require("./bash-YZ33HQZQ-DiCTIB0C.cjs"))).bashCommand
23207
+ load: async () => (await Promise.resolve().then(() => require("./bash-YZ33HQZQ-XJpQyMat.cjs"))).bashCommand
23150
23208
  },
23151
23209
  {
23152
23210
  name: "sh",
23153
- load: async () => (await Promise.resolve().then(() => require("./bash-YZ33HQZQ-DiCTIB0C.cjs"))).shCommand
23211
+ load: async () => (await Promise.resolve().then(() => require("./bash-YZ33HQZQ-XJpQyMat.cjs"))).shCommand
23154
23212
  },
23155
23213
  {
23156
23214
  name: "jq",
23157
- load: async () => (await Promise.resolve().then(() => require("./jq-4XLYLOS5-DwHcJv8h.cjs"))).jqCommand
23215
+ load: async () => (await Promise.resolve().then(() => require("./jq-4XLYLOS5-D1rW-r_t.cjs"))).jqCommand
23158
23216
  },
23159
23217
  {
23160
23218
  name: "base64",
23161
- load: async () => (await Promise.resolve().then(() => require("./base64-C2AIWVNC-Deofn7Tz.cjs"))).base64Command
23219
+ load: async () => (await Promise.resolve().then(() => require("./base64-C2AIWVNC-lw60Mcqo.cjs"))).base64Command
23162
23220
  },
23163
23221
  {
23164
23222
  name: "diff",
23165
- load: async () => (await Promise.resolve().then(() => require("./diff-MWJFIG7X-uzFU7vBr.cjs"))).diffCommand
23223
+ load: async () => (await Promise.resolve().then(() => require("./diff-MWJFIG7X-4T0RgJTl.cjs"))).diffCommand
23166
23224
  },
23167
23225
  {
23168
23226
  name: "date",
@@ -23170,15 +23228,15 @@ var tt = [
23170
23228
  },
23171
23229
  {
23172
23230
  name: "sleep",
23173
- load: async () => (await Promise.resolve().then(() => require("./sleep-X22JJINO-DgywhtkX.cjs"))).sleepCommand
23231
+ load: async () => (await Promise.resolve().then(() => require("./sleep-X22JJINO-Ch8K7jyv.cjs"))).sleepCommand
23174
23232
  },
23175
23233
  {
23176
23234
  name: "timeout",
23177
- load: async () => (await Promise.resolve().then(() => require("./timeout-YDCRSLPQ-D7uw71ZK.cjs"))).timeoutCommand
23235
+ load: async () => (await Promise.resolve().then(() => require("./timeout-YDCRSLPQ-BRpWJOuw.cjs"))).timeoutCommand
23178
23236
  },
23179
23237
  {
23180
23238
  name: "time",
23181
- load: async () => (await Promise.resolve().then(() => require("./time-D4LNBSWX-alYfSUdv.cjs"))).timeCommand
23239
+ load: async () => (await Promise.resolve().then(() => require("./time-D4LNBSWX-CNeNuqrL.cjs"))).timeCommand
23182
23240
  },
23183
23241
  {
23184
23242
  name: "seq",
@@ -23186,19 +23244,19 @@ var tt = [
23186
23244
  },
23187
23245
  {
23188
23246
  name: "expr",
23189
- load: async () => (await Promise.resolve().then(() => require("./expr-5JAACS4X-XEZLTHHs.cjs"))).exprCommand
23247
+ load: async () => (await Promise.resolve().then(() => require("./expr-5JAACS4X-DdRWhhZD.cjs"))).exprCommand
23190
23248
  },
23191
23249
  {
23192
23250
  name: "md5sum",
23193
- load: async () => (await Promise.resolve().then(() => require("./md5sum-SPU24VSG-DpKxsaMc.cjs"))).md5sumCommand
23251
+ load: async () => (await Promise.resolve().then(() => require("./md5sum-SPU24VSG-B9UPOmq7.cjs"))).md5sumCommand
23194
23252
  },
23195
23253
  {
23196
23254
  name: "sha1sum",
23197
- load: async () => (await Promise.resolve().then(() => require("./sha1sum-2PTOAFR6-CHkmBbuF.cjs"))).sha1sumCommand
23255
+ load: async () => (await Promise.resolve().then(() => require("./sha1sum-2PTOAFR6-XZkP6nt7.cjs"))).sha1sumCommand
23198
23256
  },
23199
23257
  {
23200
23258
  name: "sha256sum",
23201
- load: async () => (await Promise.resolve().then(() => require("./sha256sum-NS7D3IXX-D8Ows_EQ.cjs"))).sha256sumCommand
23259
+ load: async () => (await Promise.resolve().then(() => require("./sha256sum-NS7D3IXX-DnC_PGjQ.cjs"))).sha256sumCommand
23202
23260
  },
23203
23261
  {
23204
23262
  name: "file",
@@ -23206,11 +23264,11 @@ var tt = [
23206
23264
  },
23207
23265
  {
23208
23266
  name: "html-to-markdown",
23209
- load: async () => (await Promise.resolve().then(() => require("./html-to-markdown-JW4MSQZO-BRaey0zy.cjs"))).htmlToMarkdownCommand
23267
+ load: async () => (await Promise.resolve().then(() => require("./html-to-markdown-JW4MSQZO-DhwShT4r.cjs"))).htmlToMarkdownCommand
23210
23268
  },
23211
23269
  {
23212
23270
  name: "help",
23213
- load: async () => (await Promise.resolve().then(() => require("./help-HZ6M2CKN-CQnNa3uh.cjs"))).helpCommand
23271
+ load: async () => (await Promise.resolve().then(() => require("./help-HZ6M2CKN-BDjDl95L.cjs"))).helpCommand
23214
23272
  },
23215
23273
  {
23216
23274
  name: "which",
@@ -23218,7 +23276,7 @@ var tt = [
23218
23276
  },
23219
23277
  {
23220
23278
  name: "tac",
23221
- load: async () => (await Promise.resolve().then(() => require("./tac-2STMMJYW-BnVw01dK.cjs"))).tac
23279
+ load: async () => (await Promise.resolve().then(() => require("./tac-2STMMJYW-r_2LJAA8.cjs"))).tac
23222
23280
  },
23223
23281
  {
23224
23282
  name: "hostname",
@@ -23230,49 +23288,49 @@ var tt = [
23230
23288
  },
23231
23289
  {
23232
23290
  name: "od",
23233
- load: async () => (await Promise.resolve().then(() => require("./od-WOKFDJTP-CQQETIge.cjs"))).od
23291
+ load: async () => (await Promise.resolve().then(() => require("./od-WOKFDJTP-CSXVq9ia.cjs"))).od
23234
23292
  },
23235
23293
  {
23236
23294
  name: "gzip",
23237
- load: async () => (await Promise.resolve().then(() => require("./gzip-O5ASJAFY-DFGo8ssh.cjs"))).gzipCommand
23295
+ load: async () => (await Promise.resolve().then(() => require("./gzip-O5ASJAFY-w7v8_8Lw.cjs"))).gzipCommand
23238
23296
  },
23239
23297
  {
23240
23298
  name: "gunzip",
23241
- load: async () => (await Promise.resolve().then(() => require("./gzip-O5ASJAFY-DFGo8ssh.cjs"))).gunzipCommand
23299
+ load: async () => (await Promise.resolve().then(() => require("./gzip-O5ASJAFY-w7v8_8Lw.cjs"))).gunzipCommand
23242
23300
  },
23243
23301
  {
23244
23302
  name: "zcat",
23245
- load: async () => (await Promise.resolve().then(() => require("./gzip-O5ASJAFY-DFGo8ssh.cjs"))).zcatCommand
23303
+ load: async () => (await Promise.resolve().then(() => require("./gzip-O5ASJAFY-w7v8_8Lw.cjs"))).zcatCommand
23246
23304
  }
23247
23305
  ];
23248
23306
  (typeof __BROWSER__ > "u" || !__BROWSER__) && (tt.push({
23249
23307
  name: "tar",
23250
- load: async () => (await Promise.resolve().then(() => require("./tar-STHHZTZ6-DIkfQzE0.cjs"))).tarCommand
23308
+ load: async () => (await Promise.resolve().then(() => require("./tar-STHHZTZ6-A4iJTjR5.cjs"))).tarCommand
23251
23309
  }), tt.push({
23252
23310
  name: "yq",
23253
- load: async () => (await Promise.resolve().then(() => require("./yq-4QJW3EQG-BfnftBmC.cjs"))).yqCommand
23311
+ load: async () => (await Promise.resolve().then(() => require("./yq-4QJW3EQG-D-1VaQsP.cjs"))).yqCommand
23254
23312
  }), tt.push({
23255
23313
  name: "xan",
23256
- load: async () => (await Promise.resolve().then(() => require("./xan-Y6WF3IRG-C6Rea9i5.cjs"))).xanCommand
23314
+ load: async () => (await Promise.resolve().then(() => require("./xan-Y6WF3IRG-C5dCpQeC.cjs"))).xanCommand
23257
23315
  }), tt.push({
23258
23316
  name: "sqlite3",
23259
- load: async () => (await Promise.resolve().then(() => require("./sqlite3-CGOEFJAO-Dh0oqw-k.cjs"))).sqlite3Command
23317
+ load: async () => (await Promise.resolve().then(() => require("./sqlite3-CGOEFJAO-B3darddO.cjs"))).sqlite3Command
23260
23318
  }));
23261
23319
  var Yt = [];
23262
23320
  (typeof __BROWSER__ > "u" || !__BROWSER__) && (Yt.push({
23263
23321
  name: "python3",
23264
- load: async () => (await Promise.resolve().then(() => require("./python3-POMOR4OA-k99Mukqm.cjs"))).python3Command
23322
+ load: async () => (await Promise.resolve().then(() => require("./python3-POMOR4OA-Dn2QuNCR.cjs"))).python3Command
23265
23323
  }), Yt.push({
23266
23324
  name: "python",
23267
- load: async () => (await Promise.resolve().then(() => require("./python3-POMOR4OA-k99Mukqm.cjs"))).pythonCommand
23325
+ load: async () => (await Promise.resolve().then(() => require("./python3-POMOR4OA-Dn2QuNCR.cjs"))).pythonCommand
23268
23326
  }));
23269
23327
  var Qt = [];
23270
23328
  (typeof __BROWSER__ > "u" || !__BROWSER__) && (Qt.push({
23271
23329
  name: "js-exec",
23272
- load: async () => (await Promise.resolve().then(() => require("./js-exec-N5KEZBH7-BfEgJ3O-.cjs"))).jsExecCommand
23330
+ load: async () => (await Promise.resolve().then(() => require("./js-exec-N5KEZBH7-DdUI6ysR.cjs"))).jsExecCommand
23273
23331
  }), Qt.push({
23274
23332
  name: "node",
23275
- load: async () => (await Promise.resolve().then(() => require("./js-exec-N5KEZBH7-BfEgJ3O-.cjs"))).nodeStubCommand
23333
+ load: async () => (await Promise.resolve().then(() => require("./js-exec-N5KEZBH7-DdUI6ysR.cjs"))).nodeStubCommand
23276
23334
  }));
23277
23335
  new TextEncoder();
23278
23336
  Object.freeze({
@@ -23687,6 +23745,18 @@ Object.freeze({
23687
23745
  option is given.`]]
23688
23746
  ]).keys()].sort();
23689
23747
  new TextDecoder("utf-8", { fatal: !0 });
23748
+ zod.z.object({
23749
+ clone: zod.z.object({
23750
+ repository: zod.z.string().trim().min(1),
23751
+ credential: zod.z.string().trim().min(1),
23752
+ branch: zod.z.string().trim().min(1).optional(),
23753
+ path: zod.z.string().trim().min(1).optional()
23754
+ }),
23755
+ user: zod.z.object({
23756
+ name: zod.z.string().trim().min(1).optional(),
23757
+ email: zod.z.string().trim().min(1).optional()
23758
+ }).optional()
23759
+ });
23690
23760
  JSON.stringify({
23691
23761
  messages: [],
23692
23762
  results: [],
@@ -25934,7 +26004,7 @@ function withOrganizationProjectDatabase() {
25934
26004
  trace.getTracer("keystroke.http");
25935
26005
  //#endregion
25936
26006
  //#region src/routes/account/users/me/avatar/GET.ts
25937
- const handler$110 = async (c) => {
26007
+ const handler$111 = async (c) => {
25938
26008
  const dbUser = await (0, _keystrokehq_platform_database.selectUserById)(c.get("user").id);
25939
26009
  if (!dbUser) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "User not found" }), 404);
25940
26010
  return c.json(require_dist$1.UserAvatarSchema.parse({ url: dbUser.image ?? null }));
@@ -25953,7 +26023,7 @@ function avatarExtensionForContentType(contentType) {
25953
26023
  }
25954
26024
  //#endregion
25955
26025
  //#region src/routes/account/users/me/avatar/presign/POST.ts
25956
- const handler$109 = async (c) => {
26026
+ const handler$110 = async (c) => {
25957
26027
  const parsed = require_dist$1.PresignUserAvatarRequestSchema.safeParse(await c.req.json().catch(() => null));
25958
26028
  if (!parsed.success) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid avatar upload request" }), 400);
25959
26029
  const extension = avatarExtensionForContentType(parsed.data.contentType);
@@ -25993,7 +26063,7 @@ async function deleteStoredImageIfOwned(input) {
25993
26063
  }
25994
26064
  //#endregion
25995
26065
  //#region src/routes/account/users/me/avatar/PATCH.ts
25996
- const handler$108 = async (c) => {
26066
+ const handler$109 = async (c) => {
25997
26067
  const parsed = require_dist$1.UserAvatarPatchSchema.safeParse(await c.req.json().catch(() => null));
25998
26068
  if (!parsed.success) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid avatar update" }), 400);
25999
26069
  const user = c.get("user");
@@ -26035,14 +26105,14 @@ const handler$108 = async (c) => {
26035
26105
  };
26036
26106
  //#endregion
26037
26107
  //#region src/routes/account/users/me/preferences/GET.ts
26038
- const handler$107 = async (c) => {
26108
+ const handler$108 = async (c) => {
26039
26109
  const dbUser = await (0, _keystrokehq_platform_database.selectUserById)(c.get("user").id);
26040
26110
  if (!dbUser) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "User not found" }), 404);
26041
26111
  return c.json(require_dist$1.UserPreferencesSchema.parse(require_dist$1.normalizeUserPreferences(dbUser.preferences)));
26042
26112
  };
26043
26113
  //#endregion
26044
26114
  //#region src/routes/account/users/me/preferences/PATCH.ts
26045
- const handler$106 = async (c) => {
26115
+ const handler$107 = async (c) => {
26046
26116
  const parsed = require_dist$1.UserPreferencesPatchSchema.safeParse(await c.req.json().catch(() => null));
26047
26117
  if (!parsed.success) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid preferences update" }), 400);
26048
26118
  const user = c.get("user");
@@ -26057,7 +26127,7 @@ const handler$106 = async (c) => {
26057
26127
  };
26058
26128
  //#endregion
26059
26129
  //#region src/routes/account/organizations/GET.ts
26060
- const handler$105 = async (c) => {
26130
+ const handler$106 = async (c) => {
26061
26131
  const memberships = await (0, _keystrokehq_platform_database.selectUserOrganizations)(c.get("user").id);
26062
26132
  return c.json(require_dist$1.ListOrganizationsResponseSchema.parse(memberships.map(require_dist$1.mapUserOrganization)));
26063
26133
  };
@@ -26180,7 +26250,7 @@ function createOrganizationHandler(deps) {
26180
26250
  }
26181
26251
  //#endregion
26182
26252
  //#region src/routes/account/organizations/slug-available/GET.ts
26183
- const handler$104 = async (c) => {
26253
+ const handler$105 = async (c) => {
26184
26254
  const parsed = require_dist$1.SlugAvailabilityQuerySchema.safeParse({
26185
26255
  slug: c.req.query("slug"),
26186
26256
  excludeOrganizationId: c.req.query("excludeOrganizationId")
@@ -26191,7 +26261,7 @@ const handler$104 = async (c) => {
26191
26261
  };
26192
26262
  //#endregion
26193
26263
  //#region src/routes/account/organizations/[organizationId]/GET.ts
26194
- const handler$103 = async (c) => {
26264
+ const handler$104 = async (c) => {
26195
26265
  const { organizationId } = c.get("organization");
26196
26266
  const membership = await (0, _keystrokehq_platform_database.selectUserOrganizationMembership)(c.get("user").id, organizationId);
26197
26267
  if (!membership) throw new Error(`Organization membership missing after param guard: ${organizationId}`);
@@ -26199,7 +26269,7 @@ const handler$103 = async (c) => {
26199
26269
  };
26200
26270
  //#endregion
26201
26271
  //#region src/routes/account/organizations/[organizationId]/PATCH.ts
26202
- const handler$102 = async (c) => {
26272
+ const handler$103 = async (c) => {
26203
26273
  const organization = c.get("organization");
26204
26274
  const body = await c.req.json().catch(() => null);
26205
26275
  const parsed = require_dist$1.UpdateOrganizationRequestSchema.safeParse(body);
@@ -26224,7 +26294,7 @@ const handler$102 = async (c) => {
26224
26294
  };
26225
26295
  //#endregion
26226
26296
  //#region src/routes/account/organizations/[organizationId]/branding/GET.ts
26227
- const handler$101 = async (c) => {
26297
+ const handler$102 = async (c) => {
26228
26298
  const { organizationId } = c.get("organization");
26229
26299
  const organization = await (0, _keystrokehq_platform_database.selectOrganizationById)(organizationId);
26230
26300
  if (!organization) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Organization not found" }), 404);
@@ -26273,7 +26343,7 @@ async function finalizeOrgLogoVariant(input) {
26273
26343
  publicUrl: finalized.publicUrl
26274
26344
  };
26275
26345
  }
26276
- const handler$100 = async (c) => {
26346
+ const handler$101 = async (c) => {
26277
26347
  const parsed = require_dist$1.OrganizationSidebarBrandingPatchSchema.safeParse(await c.req.json().catch(() => null));
26278
26348
  if (!parsed.success) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid branding update" }), 400);
26279
26349
  const { organizationId } = c.get("organization");
@@ -26301,7 +26371,7 @@ const handler$100 = async (c) => {
26301
26371
  };
26302
26372
  //#endregion
26303
26373
  //#region src/routes/account/organizations/[organizationId]/branding/logo/presign/POST.ts
26304
- const handler$99 = async (c) => {
26374
+ const handler$100 = async (c) => {
26305
26375
  const parsed = require_dist$1.PresignOrgLogoRequestSchema.safeParse(await c.req.json().catch(() => null));
26306
26376
  if (!parsed.success) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid logo upload request" }), 400);
26307
26377
  const extension = avatarExtensionForContentType(parsed.data.contentType);
@@ -26511,7 +26581,7 @@ function buildPlatformHistoryUsage(events, durationMs) {
26511
26581
  }
26512
26582
  //#endregion
26513
26583
  //#region src/routes/account/history/GET.ts
26514
- const handler$98 = async (c) => {
26584
+ const handler$99 = async (c) => {
26515
26585
  const organization = c.get("organization");
26516
26586
  const ctx = accessContext(c);
26517
26587
  const query = require_dist$1.HistoryRunListQuerySchema.parse({
@@ -26536,7 +26606,7 @@ const handler$98 = async (c) => {
26536
26606
  };
26537
26607
  //#endregion
26538
26608
  //#region src/routes/account/history/[runId]/GET.ts
26539
- const handler$97 = async (c) => {
26609
+ const handler$98 = async (c) => {
26540
26610
  const runId = c.req.param("runId") ?? "";
26541
26611
  if (!runId) return c.json(null, 404);
26542
26612
  const core = await (0, _keystrokehq_database.findHistoryRunCore)(runId);
@@ -26596,7 +26666,7 @@ function toAgentSummary(row, options) {
26596
26666
  }
26597
26667
  //#endregion
26598
26668
  //#region src/routes/account/agents/GET.ts
26599
- const handler$96 = async (c) => {
26669
+ const handler$97 = async (c) => {
26600
26670
  const filter = await resolveListProjectIds(c, listScope(c, agentListScope(accessContext(c))), c.req.query("projectId"));
26601
26671
  if (filter === "empty") return c.json(require_dist$1.AgentSummaryListResponseSchema.parse([]));
26602
26672
  const rows = await (0, _keystrokehq_database.listActiveAgents)(filter);
@@ -26610,7 +26680,7 @@ function touchResourceActivityBestEffort(options) {
26610
26680
  }
26611
26681
  //#endregion
26612
26682
  //#region src/routes/account/agents/[agentId]/GET.ts
26613
- const handler$95 = async (c) => {
26683
+ const handler$96 = async (c) => {
26614
26684
  const agentId = c.req.param("agentId") ?? "";
26615
26685
  const row = agentId ? await (0, _keystrokehq_database.selectActiveAgentById)(agentId) : void 0;
26616
26686
  if (!row || !await canAccessProjectId(c, row.projectId, canAccessAgent)) return c.json(require_dist$1.AgentSummaryDetailResponseSchema.parse(null));
@@ -26633,7 +26703,7 @@ const handler$95 = async (c) => {
26633
26703
  function relativePathsFromStorageKeys(prefix, keys) {
26634
26704
  return keys.filter((key) => key.startsWith(prefix) && key.endsWith(".md")).map((key) => key.slice(prefix.length)).filter((path) => !path.startsWith(".") && !path.includes("/."));
26635
26705
  }
26636
- const handler$94 = async (c) => {
26706
+ const handler$95 = async (c) => {
26637
26707
  const agentId = c.req.param("agentId") ?? "";
26638
26708
  const row = agentId ? await (0, _keystrokehq_database.selectActiveAgentById)(agentId) : void 0;
26639
26709
  if (!row || !await canAccessProjectId(c, row.projectId, canAccessAgent)) return c.json(require_dist$1.ListAgentMemoryFilesResponseSchema.parse({ files: [] }), 404);
@@ -26658,7 +26728,7 @@ function isStorageNotFoundError(error) {
26658
26728
  const status = typeof record.$metadata === "object" && record.$metadata !== null ? record.$metadata.httpStatusCode : void 0;
26659
26729
  return name === "NoSuchKey" || code === "NoSuchKey" || code === "NotFound" || status === 404;
26660
26730
  }
26661
- const handler$93 = async (c) => {
26731
+ const handler$94 = async (c) => {
26662
26732
  const agentId = c.req.param("agentId") ?? "";
26663
26733
  const path = c.req.query("path");
26664
26734
  if (!path) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "File path is required" }), 400);
@@ -26712,7 +26782,7 @@ function workspaceRelativePathsFromStorageKeys(keys) {
26712
26782
  }
26713
26783
  //#endregion
26714
26784
  //#region src/routes/account/agents/[agentId]/workspace/files/GET.ts
26715
- const handler$92 = async (c) => {
26785
+ const handler$93 = async (c) => {
26716
26786
  const agentId = c.req.param("agentId") ?? "";
26717
26787
  const row = agentId ? await (0, _keystrokehq_database.selectActiveAgentById)(agentId) : void 0;
26718
26788
  if (!row || !await canAccessProjectId(c, row.projectId, canAccessAgent)) return c.json(require_dist$1.ListAgentWorkspaceFilesResponseSchema.parse({ files: [] }), 404);
@@ -26735,7 +26805,7 @@ const handler$92 = async (c) => {
26735
26805
  };
26736
26806
  //#endregion
26737
26807
  //#region src/routes/account/agents/[agentId]/workspace/files/content/GET.ts
26738
- const handler$91 = async (c) => {
26808
+ const handler$92 = async (c) => {
26739
26809
  const agentId = c.req.param("agentId") ?? "";
26740
26810
  const path = c.req.query("path");
26741
26811
  if (!path) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "File path is required" }), 400);
@@ -26787,7 +26857,7 @@ async function cancelHistoryRun(c, kind, cancel) {
26787
26857
  }
26788
26858
  //#endregion
26789
26859
  //#region src/routes/account/agents/sessions/[sessionId]/cancel/POST.ts
26790
- const handler$90 = (c) => cancelHistoryRun(c, "agent", _keystrokehq_database.cancelAgentSession);
26860
+ const handler$91 = (c) => cancelHistoryRun(c, "agent", _keystrokehq_database.cancelAgentSession);
26791
26861
  //#endregion
26792
26862
  //#region src/routes/account/resources/workflows.ts
26793
26863
  function toWorkflowSummary(row, options) {
@@ -26804,7 +26874,7 @@ function toWorkflowSummary(row, options) {
26804
26874
  }
26805
26875
  //#endregion
26806
26876
  //#region src/routes/account/workflows/GET.ts
26807
- const handler$89 = async (c) => {
26877
+ const handler$90 = async (c) => {
26808
26878
  const filter = await resolveListProjectIds(c, listScope(c, workflowListScope(accessContext(c))), c.req.query("projectId"));
26809
26879
  if (filter === "empty") return c.json(require_dist$1.WorkflowSummaryListResponseSchema.parse([]));
26810
26880
  const rows = await (0, _keystrokehq_database.listActiveWorkflows)(filter);
@@ -26818,7 +26888,7 @@ function buildPublicFormUrl(token) {
26818
26888
  }
26819
26889
  //#endregion
26820
26890
  //#region src/routes/account/workflows/forms/GET.ts
26821
- const handler$88 = async (c) => {
26891
+ const handler$89 = async (c) => {
26822
26892
  const { organizationId } = c.get("organization");
26823
26893
  const filter = await resolveListProjectIds(c, listScope(c, workflowListScope(accessContext(c))), c.req.query("projectId"));
26824
26894
  if (filter === "empty") return c.json(require_dist$1.PublishedFormListResponseSchema.parse([]));
@@ -26838,7 +26908,7 @@ const handler$88 = async (c) => {
26838
26908
  };
26839
26909
  //#endregion
26840
26910
  //#region src/routes/account/workflows/[workflowId]/GET.ts
26841
- const handler$87 = async (c) => {
26911
+ const handler$88 = async (c) => {
26842
26912
  const workflowId = c.req.param("workflowId") ?? "";
26843
26913
  const row = workflowId ? await (0, _keystrokehq_database.selectActiveWorkflowById)(workflowId) : void 0;
26844
26914
  if (!row || !await canAccessProjectId(c, row.projectId, canAccessWorkflow)) return c.json(require_dist$1.WorkflowSummaryDetailResponseSchema.parse(null));
@@ -27313,7 +27383,7 @@ function buildWorkflowCanvas(input) {
27313
27383
  //#region src/routes/account/workflows/[workflowId]/canvas/GET.ts
27314
27384
  /** Bumped when the annotation prompt/model changes, so cached annotations invalidate. */
27315
27385
  const ANNOTATIONS_GENERATOR_VERSION = "wf-canvas-annotations-v1";
27316
- const handler$86 = async (c) => {
27386
+ const handler$87 = async (c) => {
27317
27387
  const organization = c.get("organization");
27318
27388
  const workflowId = c.req.param("workflowId") ?? "";
27319
27389
  if (!workflowId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid workflow id" }), 400);
@@ -27487,7 +27557,7 @@ function toBinding(key, description) {
27487
27557
  * each of its requirements currently binds to (read-only, no decryption). Not
27488
27558
  * content-hash cached — credential state changes without a redeploy.
27489
27559
  */
27490
- const handler$85 = async (c) => {
27560
+ const handler$86 = async (c) => {
27491
27561
  const workflowId = c.req.param("workflowId") ?? "";
27492
27562
  if (!workflowId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid workflow id" }), 400);
27493
27563
  const resolved = await resolveWorkflow(c, workflowId);
@@ -27646,7 +27716,7 @@ function toCanvasRunStatus(status) {
27646
27716
  if (status === "canceled") return "canceled";
27647
27717
  return "running";
27648
27718
  }
27649
- const handler$84 = async (c) => {
27719
+ const handler$85 = async (c) => {
27650
27720
  const workflowId = c.req.param("workflowId") ?? "";
27651
27721
  const runId = c.req.param("runId") ?? "";
27652
27722
  if (!workflowId.trim() || !runId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid workflow or run id" }), 400);
@@ -27701,7 +27771,7 @@ async function loadWorkflowSource(organization, projectId, sourcePath) {
27701
27771
  return null;
27702
27772
  }
27703
27773
  }
27704
- const handler$83 = async (c) => {
27774
+ const handler$84 = async (c) => {
27705
27775
  const organization = c.get("organization");
27706
27776
  const workflowId = c.req.param("workflowId") ?? "";
27707
27777
  if (!workflowId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid workflow id" }), 400);
@@ -27802,7 +27872,7 @@ const handler$83 = async (c) => {
27802
27872
  };
27803
27873
  //#endregion
27804
27874
  //#region src/routes/account/workflows/[workflowId]/run-inputs/GET.ts
27805
- const handler$82 = async (c) => {
27875
+ const handler$83 = async (c) => {
27806
27876
  const workflowId = c.req.param("workflowId") ?? "";
27807
27877
  if (!workflowId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid workflow id" }), 400);
27808
27878
  const resolved = await resolveWorkflow(c, workflowId);
@@ -27817,7 +27887,7 @@ const handler$82 = async (c) => {
27817
27887
  };
27818
27888
  //#endregion
27819
27889
  //#region src/routes/account/workflows/[workflowId]/run-inputs/PUT.ts
27820
- const handler$81 = async (c) => {
27890
+ const handler$82 = async (c) => {
27821
27891
  const workflowId = c.req.param("workflowId") ?? "";
27822
27892
  if (!workflowId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid workflow id" }), 400);
27823
27893
  const resolved = await resolveWorkflow(c, workflowId);
@@ -27849,7 +27919,7 @@ function parseRunInput$1(requestSchema, input) {
27849
27919
  * the workflow row's request schema, creates a pending run, and enqueues it on
27850
27920
  * the project's queue (drained by the project runtime worker). Returns the run id.
27851
27921
  */
27852
- const handler$80 = async (c) => {
27922
+ const handler$81 = async (c) => {
27853
27923
  const { organizationId } = c.get("organization");
27854
27924
  const workflowId = c.req.param("workflowId") ?? "";
27855
27925
  if (!workflowId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid workflow id" }), 400);
@@ -27923,7 +27993,7 @@ async function resolvePublishableInputSchema(projectId, row) {
27923
27993
  }
27924
27994
  //#endregion
27925
27995
  //#region src/routes/account/workflows/[workflowId]/form/GET.ts
27926
- const handler$79 = async (c) => {
27996
+ const handler$80 = async (c) => {
27927
27997
  const resolved = await resolveFormWorkflow(c);
27928
27998
  if (resolved instanceof Response) return resolved;
27929
27999
  const { organizationId } = c.get("organization");
@@ -27932,7 +28002,7 @@ const handler$79 = async (c) => {
27932
28002
  };
27933
28003
  //#endregion
27934
28004
  //#region src/routes/account/workflows/[workflowId]/form/PUT.ts
27935
- const handler$78 = async (c) => {
28005
+ const handler$79 = async (c) => {
27936
28006
  const resolved = await resolveFormWorkflow(c, { requireManageAccess: true });
27937
28007
  if (resolved instanceof Response) return resolved;
27938
28008
  const body = require_dist$1.WorkflowFormUpsertBodySchema.safeParse(await c.req.json().catch(() => null));
@@ -27961,7 +28031,7 @@ const handler$78 = async (c) => {
27961
28031
  };
27962
28032
  //#endregion
27963
28033
  //#region src/routes/account/workflows/[workflowId]/form/DELETE.ts
27964
- const handler$77 = async (c) => {
28034
+ const handler$78 = async (c) => {
27965
28035
  const resolved = await resolveFormWorkflow(c, { requireManageAccess: true });
27966
28036
  if (resolved instanceof Response) return resolved;
27967
28037
  const { organizationId } = c.get("organization");
@@ -27971,7 +28041,7 @@ const handler$77 = async (c) => {
27971
28041
  };
27972
28042
  //#endregion
27973
28043
  //#region src/routes/account/workflows/[workflowId]/form/rotate/POST.ts
27974
- const handler$76 = async (c) => {
28044
+ const handler$77 = async (c) => {
27975
28045
  const resolved = await resolveFormWorkflow(c, { requireManageAccess: true });
27976
28046
  if (resolved instanceof Response) return resolved;
27977
28047
  const { organizationId } = c.get("organization");
@@ -27993,7 +28063,7 @@ function extensionFromUpload$1(contentType, filename) {
27993
28063
  * hydration reads by project id + storage key, so runs read the file the same
27994
28064
  * way `storeFile` output does.
27995
28065
  */
27996
- const handler$75 = async (c) => {
28066
+ const handler$76 = async (c) => {
27997
28067
  const { organizationId } = c.get("organization");
27998
28068
  const workflowId = c.req.param("workflowId") ?? "";
27999
28069
  if (!workflowId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid workflow id" }), 400);
@@ -28018,7 +28088,7 @@ const handler$75 = async (c) => {
28018
28088
  };
28019
28089
  //#endregion
28020
28090
  //#region src/routes/account/workflows/[workflowId]/runs/GET.ts
28021
- const handler$74 = async (c) => {
28091
+ const handler$75 = async (c) => {
28022
28092
  const workflowId = c.req.param("workflowId") ?? "";
28023
28093
  if (!workflowId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid workflow id" }), 400);
28024
28094
  const resolved = await resolveWorkflow(c, workflowId);
@@ -28041,7 +28111,7 @@ const handler$74 = async (c) => {
28041
28111
  };
28042
28112
  //#endregion
28043
28113
  //#region src/routes/account/workflows/runs/[runId]/cancel/POST.ts
28044
- const handler$73 = (c) => cancelHistoryRun(c, "workflow", _keystrokehq_database.cancelWorkflowRun);
28114
+ const handler$74 = (c) => cancelHistoryRun(c, "workflow", _keystrokehq_database.cancelWorkflowRun);
28045
28115
  //#endregion
28046
28116
  //#region src/routes/account/resources/skills.ts
28047
28117
  function toSkillSummary(row) {
@@ -28058,7 +28128,7 @@ function toSkillSummary(row) {
28058
28128
  }
28059
28129
  //#endregion
28060
28130
  //#region src/routes/account/skills/GET.ts
28061
- const handler$72 = async (c) => {
28131
+ const handler$73 = async (c) => {
28062
28132
  const filter = await resolveListProjectIds(c, listScope(c, skillListScope(accessContext(c))), c.req.query("projectId"));
28063
28133
  if (filter === "empty") return c.json(require_dist$1.SkillSummaryListResponseSchema.parse([]));
28064
28134
  const rows = await (0, _keystrokehq_database.listActiveSkills)(filter);
@@ -28066,7 +28136,7 @@ const handler$72 = async (c) => {
28066
28136
  };
28067
28137
  //#endregion
28068
28138
  //#region src/routes/account/skills/[skillId]/GET.ts
28069
- const handler$71 = async (c) => {
28139
+ const handler$72 = async (c) => {
28070
28140
  const skillId = c.req.param("skillId") ?? "";
28071
28141
  const row = skillId ? await (0, _keystrokehq_database.selectActiveSkillById)(skillId) : void 0;
28072
28142
  if (!row || !await canAccessProjectId(c, row.projectId, canAccessSkill)) return c.json(require_dist$1.SkillSummaryDetailResponseSchema.parse(null));
@@ -28175,7 +28245,7 @@ function toWorkspaceTriggerRunSummary(item, assignments) {
28175
28245
  }
28176
28246
  //#endregion
28177
28247
  //#region src/routes/account/triggers/GET.ts
28178
- const handler$70 = async (c) => {
28248
+ const handler$71 = async (c) => {
28179
28249
  const organization = c.get("organization");
28180
28250
  const scope = listScope(c, projectListScope(accessContext(c)));
28181
28251
  const filter = await resolveListProjectIds(c, scope, c.req.query("projectId"));
@@ -28187,7 +28257,7 @@ const handler$70 = async (c) => {
28187
28257
  };
28188
28258
  //#endregion
28189
28259
  //#region src/routes/account/triggers/[triggerId]/GET.ts
28190
- const handler$69 = async (c) => {
28260
+ const handler$70 = async (c) => {
28191
28261
  const organization = c.get("organization");
28192
28262
  const triggerId = c.req.param("triggerId") ?? "";
28193
28263
  if (!triggerId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid trigger id" }), 400);
@@ -28203,7 +28273,7 @@ const handler$69 = async (c) => {
28203
28273
  };
28204
28274
  //#endregion
28205
28275
  //#region src/routes/account/triggers/[triggerId]/runs/GET.ts
28206
- const handler$68 = async (c) => {
28276
+ const handler$69 = async (c) => {
28207
28277
  const triggerId = c.req.param("triggerId") ?? "";
28208
28278
  if (!triggerId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid trigger id" }), 400);
28209
28279
  const filter = await resolveListProjectIds(c, listScope(c, projectListScope(accessContext(c))));
@@ -28232,7 +28302,7 @@ const handler$68 = async (c) => {
28232
28302
  };
28233
28303
  //#endregion
28234
28304
  //#region src/routes/account/triggers/[triggerId]/file/GET.ts
28235
- const handler$67 = async (c) => {
28305
+ const handler$68 = async (c) => {
28236
28306
  const { organizationId } = c.get("organization");
28237
28307
  const triggerId = c.req.param("triggerId") ?? "";
28238
28308
  if (!triggerId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid trigger id" }), 400);
@@ -28269,7 +28339,7 @@ function envelope(row, status, hash) {
28269
28339
  model: row.overviewModel ?? "deepseek/deepseek-v4-flash"
28270
28340
  });
28271
28341
  }
28272
- const handler$66 = async (c) => {
28342
+ const handler$67 = async (c) => {
28273
28343
  const { organizationId } = c.get("organization");
28274
28344
  const triggerId = c.req.param("triggerId") ?? "";
28275
28345
  if (!triggerId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid trigger id" }), 400);
@@ -28351,7 +28421,7 @@ async function syncNativeTriggerSchedule(organization, trigger) {
28351
28421
  }
28352
28422
  await scheduler.removeTriggerSchedule?.(trigger.slug, trigger.projectId);
28353
28423
  }
28354
- const handler$65 = async (c) => {
28424
+ const handler$66 = async (c) => {
28355
28425
  const organization = c.get("organization");
28356
28426
  const triggerId = c.req.param("triggerId") ?? "";
28357
28427
  const attachmentId = c.req.param("attachmentId") ?? "";
@@ -28423,7 +28493,7 @@ var InvokeHttpError = class extends Error {
28423
28493
  * Manually invoke a trigger from the dashboard or CLI. Validates webhook input against
28424
28494
  * stored attachment schemas, then enqueues a trigger job on the project's queue.
28425
28495
  */
28426
- const handler$64 = async (c) => {
28496
+ const handler$65 = async (c) => {
28427
28497
  const { organizationId } = c.get("organization");
28428
28498
  const triggerId = c.req.param("triggerId") ?? "";
28429
28499
  if (!triggerId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid trigger id" }), 400);
@@ -28496,7 +28566,7 @@ const handler$64 = async (c) => {
28496
28566
  * Form metadata for the dashboard invoke popover: webhook request schemas and
28497
28567
  * cron's read-only static payload.
28498
28568
  */
28499
- const handler$63 = async (c) => {
28569
+ const handler$64 = async (c) => {
28500
28570
  const triggerId = c.req.param("triggerId") ?? "";
28501
28571
  if (!triggerId.trim()) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid trigger id" }), 400);
28502
28572
  const filter = await resolveListProjectIds(c, listScope(c, projectListScope(accessContext(c))));
@@ -28562,7 +28632,7 @@ function latestRecentInteractionAt(recent) {
28562
28632
  //#endregion
28563
28633
  //#region src/routes/account/recents/GET.ts
28564
28634
  const RECENTS_LIMIT = 50;
28565
- const handler$62 = async (c) => {
28635
+ const handler$63 = async (c) => {
28566
28636
  const userId = c.get("user").id;
28567
28637
  const organization = c.get("organization");
28568
28638
  const grantedProjectIdsList = await grantedProjectIds(c, { kind: "member-only" });
@@ -28588,7 +28658,7 @@ const handler$62 = async (c) => {
28588
28658
  };
28589
28659
  //#endregion
28590
28660
  //#region src/routes/account/projects/GET.ts
28591
- const handler$61 = async (c) => {
28661
+ const handler$62 = async (c) => {
28592
28662
  const organization = c.get("organization");
28593
28663
  const grantedProjectIdsList = await grantedProjectIds(c, listScope(c, projectListScope(accessContext(c))));
28594
28664
  const projects = await (0, _keystrokehq_platform_database.selectProjectsByOrganizationId)(organization.organizationId, { grantedProjectIds: grantedProjectIdsList });
@@ -28614,7 +28684,7 @@ function mergeProjectListMetrics(input) {
28614
28684
  }
28615
28685
  //#endregion
28616
28686
  //#region src/routes/account/projects/metrics/GET.ts
28617
- const handler$60 = async (c) => {
28687
+ const handler$61 = async (c) => {
28618
28688
  const organization = c.get("organization");
28619
28689
  const grantedProjectIdsList = await grantedProjectIds(c, listScope(c, projectListScope(accessContext(c))));
28620
28690
  const [resourceCounts, lastDeploymentAtByProject] = await Promise.all([(0, _keystrokehq_database.selectProjectResourceCounts)(grantedProjectIdsList !== void 0 ? { projectIds: grantedProjectIdsList } : void 0), (0, _keystrokehq_platform_database.selectLastDeploymentAtByProject)(organization.organizationId)]);
@@ -28659,7 +28729,7 @@ function createCreateProjectHandler(projectQuotaGate) {
28659
28729
  }
28660
28730
  //#endregion
28661
28731
  //#region src/routes/account/projects/slug-available/GET.ts
28662
- const handler$58 = async (c) => {
28732
+ const handler$59 = async (c) => {
28663
28733
  const organization = c.get("organization");
28664
28734
  const parsed = require_dist$1.ProjectSlugAvailabilityQuerySchema.safeParse({
28665
28735
  slug: c.req.query("slug"),
@@ -28671,12 +28741,12 @@ const handler$58 = async (c) => {
28671
28741
  };
28672
28742
  //#endregion
28673
28743
  //#region src/routes/account/projects/[projectId]/GET.ts
28674
- const handler$57 = async (c) => {
28744
+ const handler$58 = async (c) => {
28675
28745
  return c.json(require_dist$1.ProjectResponseSchema.parse(routeProject(c.get("project"))));
28676
28746
  };
28677
28747
  //#endregion
28678
28748
  //#region src/routes/account/projects/[projectId]/PATCH.ts
28679
- const handler$56 = async (c) => {
28749
+ const handler$57 = async (c) => {
28680
28750
  const organization = c.get("organization");
28681
28751
  const project = c.get("project");
28682
28752
  const body = await c.req.json().catch(() => null);
@@ -28694,7 +28764,7 @@ const handler$56 = async (c) => {
28694
28764
  };
28695
28765
  //#endregion
28696
28766
  //#region src/routes/account/projects/[projectId]/DELETE.ts
28697
- const handler$55 = async (c) => {
28767
+ const handler$56 = async (c) => {
28698
28768
  const organization = c.get("organization");
28699
28769
  const project = c.get("project");
28700
28770
  if (!await (0, _keystrokehq_platform_database.deleteProjectForOrganization)(organization.organizationId, project.id)) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Project not found" }), 404);
@@ -28702,7 +28772,7 @@ const handler$55 = async (c) => {
28702
28772
  };
28703
28773
  //#endregion
28704
28774
  //#region src/routes/account/projects/[projectId]/deployments/GET.ts
28705
- const handler$54 = async (c) => {
28775
+ const handler$55 = async (c) => {
28706
28776
  const rows = await (0, _keystrokehq_platform_database.selectProjectDeployments)(c.get("project").id);
28707
28777
  return c.json(require_dist$1.ListProjectDeploymentsResponseSchema.parse(rows.map(require_dist$1.mapProjectDeployment)));
28708
28778
  };
@@ -28710,7 +28780,7 @@ const handler$54 = async (c) => {
28710
28780
  //#region src/routes/account/projects/[projectId]/artifacts/POST.ts
28711
28781
  const DEFAULT_PRESIGN_TTL_SECONDS$1 = 900;
28712
28782
  const ARTIFACT_CONTENT_TYPE = "application/gzip";
28713
- const handler$53 = async (c) => {
28783
+ const handler$54 = async (c) => {
28714
28784
  const project = c.get("project");
28715
28785
  const { organizationId } = c.get("organization");
28716
28786
  const organization = await (0, _keystrokehq_platform_database.selectOrganizationById)(organizationId);
@@ -28738,7 +28808,7 @@ const handler$53 = async (c) => {
28738
28808
  //#endregion
28739
28809
  //#region src/routes/account/projects/[projectId]/artifacts/active/download/GET.ts
28740
28810
  const DEFAULT_PRESIGN_TTL_SECONDS = 900;
28741
- const handler$52 = async (c) => {
28811
+ const handler$53 = async (c) => {
28742
28812
  const project = c.get("project");
28743
28813
  const { organizationId } = c.get("organization");
28744
28814
  const organization = await (0, _keystrokehq_platform_database.selectOrganizationById)(organizationId);
@@ -28757,7 +28827,7 @@ const handler$52 = async (c) => {
28757
28827
  };
28758
28828
  //#endregion
28759
28829
  //#region src/routes/account/projects/[projectId]/artifacts/active/source/GET.ts
28760
- const handler$51 = async (c) => {
28830
+ const handler$52 = async (c) => {
28761
28831
  const project = c.get("project");
28762
28832
  const active = await (0, _keystrokehq_platform_database.selectActiveArtifactSourceManifestForProject)(project.id);
28763
28833
  if (!active?.sourceManifestJson) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "No active source for project" }), 404);
@@ -28786,7 +28856,7 @@ const TRIGGER_KINDS = new Set([
28786
28856
  "trigger-poll-group",
28787
28857
  "cron-schedule"
28788
28858
  ]);
28789
- const handler$50 = async (c) => {
28859
+ const handler$51 = async (c) => {
28790
28860
  const project = c.get("project");
28791
28861
  const user = c.get("user");
28792
28862
  const artifactId = c.req.param("artifactId");
@@ -28850,7 +28920,7 @@ const handler$50 = async (c) => {
28850
28920
  //#endregion
28851
28921
  //#region src/routes/account/projects/[projectId]/artifacts/[artifactId]/source/presign/POST.ts
28852
28922
  const SOURCE_BLOB_CONTENT_TYPE = "text/plain; charset=utf-8";
28853
- const handler$49 = async (c) => {
28923
+ const handler$50 = async (c) => {
28854
28924
  const project = c.get("project");
28855
28925
  const artifactId = c.req.param("artifactId");
28856
28926
  if (!artifactId) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Artifact id is required" }), 400);
@@ -28878,7 +28948,7 @@ const handler$49 = async (c) => {
28878
28948
  };
28879
28949
  //#endregion
28880
28950
  //#region src/routes/account/projects/[projectId]/artifacts/[artifactId]/source/manifest/POST.ts
28881
- const handler$48 = async (c) => {
28951
+ const handler$49 = async (c) => {
28882
28952
  const project = c.get("project");
28883
28953
  const artifactId = c.req.param("artifactId");
28884
28954
  if (!artifactId) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Artifact id is required" }), 400);
@@ -28910,7 +28980,7 @@ function extensionFromUpload(contentType, filename) {
28910
28980
  if (fromName && /^[a-z0-9]+$/.test(fromName)) return fromName;
28911
28981
  return require_dist$1.chatAttachmentExtension(contentType) ?? "bin";
28912
28982
  }
28913
- const handler$47 = async (c) => {
28983
+ const handler$48 = async (c) => {
28914
28984
  const project = c.get("project");
28915
28985
  const slug = c.req.param("slug");
28916
28986
  if (!slug) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Agent slug is required" }), 400);
@@ -28935,7 +29005,7 @@ const handler$47 = async (c) => {
28935
29005
  };
28936
29006
  //#endregion
28937
29007
  //#region src/routes/account/projects/[projectId]/agents/[slug]/attachments/[...key]/GET.ts
28938
- const handler$46 = async (c) => {
29008
+ const handler$47 = async (c) => {
28939
29009
  const project = c.get("project");
28940
29010
  const slug = c.req.param("slug");
28941
29011
  const keyParam = c.req.param("key");
@@ -28981,7 +29051,7 @@ function resolveSourcePaths(rows, kindDir, filePaths) {
28981
29051
  }] : [];
28982
29052
  });
28983
29053
  }
28984
- const handler$45 = async (c) => {
29054
+ const handler$46 = async (c) => {
28985
29055
  const project = c.get("project");
28986
29056
  const active = await (0, _keystrokehq_platform_database.selectActiveArtifactSourceManifestForProject)(project.id);
28987
29057
  if (!active || !active.sourceManifestJson) return c.json(require_dist$1.ListProjectFilesResponseSchema.parse({
@@ -29026,7 +29096,7 @@ function ifNoneMatchMatches(ifNoneMatch, etag) {
29026
29096
  }
29027
29097
  //#endregion
29028
29098
  //#region src/routes/account/projects/[projectId]/artifacts/[artifactId]/files/content/GET.ts
29029
- const handler$44 = async (c) => {
29099
+ const handler$45 = async (c) => {
29030
29100
  const project = c.get("project");
29031
29101
  const artifactId = c.req.param("artifactId");
29032
29102
  if (!artifactId) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Artifact id is required" }), 400);
@@ -29072,7 +29142,7 @@ function createProjectReachabilityHandler(hosting) {
29072
29142
  }
29073
29143
  //#endregion
29074
29144
  //#region src/routes/account/projects/[projectId]/members/GET.ts
29075
- const handler$43 = async (c) => {
29145
+ const handler$44 = async (c) => {
29076
29146
  const project = c.get("project");
29077
29147
  const currentUserId = c.get("user").id;
29078
29148
  const members = await (0, _keystrokehq_platform_database.selectProjectMembers)(project.id);
@@ -29080,7 +29150,7 @@ const handler$43 = async (c) => {
29080
29150
  };
29081
29151
  //#endregion
29082
29152
  //#region src/routes/account/projects/[projectId]/members/POST.ts
29083
- const handler$42 = async (c) => {
29153
+ const handler$43 = async (c) => {
29084
29154
  const organization = c.get("organization");
29085
29155
  const project = c.get("project");
29086
29156
  const body = await c.req.json().catch(() => null);
@@ -29096,7 +29166,7 @@ const handler$42 = async (c) => {
29096
29166
  };
29097
29167
  //#endregion
29098
29168
  //#region src/routes/account/projects/[projectId]/members/[userId]/PATCH.ts
29099
- const handler$41 = async (c) => {
29169
+ const handler$42 = async (c) => {
29100
29170
  const project = c.get("project");
29101
29171
  const userId = c.req.param("userId");
29102
29172
  const body = await c.req.json().catch(() => null);
@@ -29113,7 +29183,7 @@ const handler$41 = async (c) => {
29113
29183
  };
29114
29184
  //#endregion
29115
29185
  //#region src/routes/account/projects/[projectId]/members/[userId]/DELETE.ts
29116
- const handler$40 = async (c) => {
29186
+ const handler$41 = async (c) => {
29117
29187
  const project = c.get("project");
29118
29188
  const userId = c.req.param("userId");
29119
29189
  if (!userId) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "User id is required" }), 400);
@@ -29127,7 +29197,7 @@ const handler$40 = async (c) => {
29127
29197
  };
29128
29198
  //#endregion
29129
29199
  //#region src/routes/account/projects/[projectId]/members/me/DELETE.ts
29130
- const handler$39 = async (c) => {
29200
+ const handler$40 = async (c) => {
29131
29201
  const project = c.get("project");
29132
29202
  const userId = c.get("user").id;
29133
29203
  try {
@@ -29140,13 +29210,13 @@ const handler$39 = async (c) => {
29140
29210
  };
29141
29211
  //#endregion
29142
29212
  //#region src/routes/account/projects/[projectId]/settings/GET.ts
29143
- const handler$38 = async (c) => {
29213
+ const handler$39 = async (c) => {
29144
29214
  const project = c.get("project");
29145
29215
  return c.json(require_dist$1.ProjectSettingsResponseSchema.parse(require_dist$1.mapProjectSettings(project)));
29146
29216
  };
29147
29217
  //#endregion
29148
29218
  //#region src/routes/account/projects/[projectId]/settings/PATCH.ts
29149
- const handler$37 = async (c) => {
29219
+ const handler$38 = async (c) => {
29150
29220
  const organization = c.get("organization");
29151
29221
  const project = c.get("project");
29152
29222
  const body = await c.req.json().catch(() => null);
@@ -29271,7 +29341,7 @@ async function enrichCredentialInstances(rows, organizationId) {
29271
29341
  }
29272
29342
  //#endregion
29273
29343
  //#region src/routes/account/credentials/GET.ts
29274
- const handler$36 = async (c) => {
29344
+ const handler$37 = async (c) => {
29275
29345
  const organization = c.get("organization");
29276
29346
  const user = c.get("user");
29277
29347
  const query = require_dist$1.ListCredentialsPageQuerySchema.parse({
@@ -29300,7 +29370,7 @@ function withTargetScope$1(target, fn) {
29300
29370
  if (target.projectScope) return (0, _keystrokehq_database.runWithProjectScope)(target.projectScope, fn);
29301
29371
  return fn();
29302
29372
  }
29303
- const handler$35 = async (c) => {
29373
+ const handler$36 = async (c) => {
29304
29374
  const organization = c.get("organization");
29305
29375
  const user = c.get("user");
29306
29376
  const parsed = require_dist$1.CreateCredentialsRequestSchema.safeParse(await c.req.json().catch(() => null));
@@ -29416,7 +29486,7 @@ async function canAccessCredentialRow(c, row) {
29416
29486
  }
29417
29487
  //#endregion
29418
29488
  //#region src/routes/account/credentials/[credentialId]/GET.ts
29419
- const handler$34 = async (c) => {
29489
+ const handler$35 = async (c) => {
29420
29490
  const organization = c.get("organization");
29421
29491
  const credentialId = c.req.param("credentialId") ?? "";
29422
29492
  const row = credentialId ? await (0, _keystrokehq_database.selectCredentialInstanceById)(credentialId) : void 0;
@@ -29477,7 +29547,7 @@ function sharedConnectionIdFor(row, scopeType, scopeId) {
29477
29547
  if (!row.connectionId) return row.sharedConnectionId;
29478
29548
  return require_dist$1.mcpEntityId(scopeType, scopeId);
29479
29549
  }
29480
- const handler$33 = async (c) => {
29550
+ const handler$34 = async (c) => {
29481
29551
  const organization = c.get("organization");
29482
29552
  const user = c.get("user");
29483
29553
  const credentialId = c.req.param("credentialId") ?? "";
@@ -29578,7 +29648,7 @@ function withTargetScope(target, fn) {
29578
29648
  if (target.projectScope) return (0, _keystrokehq_database.runWithProjectScope)(target.projectScope, fn);
29579
29649
  return fn();
29580
29650
  }
29581
- const handler$32 = async (c) => {
29651
+ const handler$33 = async (c) => {
29582
29652
  const organization = c.get("organization");
29583
29653
  const user = c.get("user");
29584
29654
  const credentialId = c.req.param("credentialId") ?? "";
@@ -29613,6 +29683,7 @@ const handler$32 = async (c) => {
29613
29683
  }] : []
29614
29684
  ];
29615
29685
  let apiKeyValue;
29686
+ let keystrokeSecretValue;
29616
29687
  if (source.authKind === "api_key") {
29617
29688
  const raw = await require_dist$1.readCredentialInstanceSecret(source.id);
29618
29689
  if (!raw) return c.json({ error: "Credential secret not found" }, 400);
@@ -29621,6 +29692,13 @@ const handler$32 = async (c) => {
29621
29692
  } catch {
29622
29693
  return c.json({ error: "Credential secret is invalid" }, 400);
29623
29694
  }
29695
+ } else if (source.authKind === "keystroke") {
29696
+ const raw = await require_dist$1.readCredentialInstanceSecret(source.id);
29697
+ if (raw) try {
29698
+ keystrokeSecretValue = JSON.parse(raw);
29699
+ } catch {
29700
+ return c.json({ error: "Credential secret is invalid" }, 400);
29701
+ }
29624
29702
  }
29625
29703
  const sourceLabel = source.label ?? source.name ?? source.appSlug;
29626
29704
  const baseLabel = input.label?.trim() || `${sourceLabel} (copy)`;
@@ -29670,6 +29748,7 @@ const handler$32 = async (c) => {
29670
29748
  createdAt: now,
29671
29749
  updatedAt: now
29672
29750
  });
29751
+ if (source.authKind === "keystroke" && keystrokeSecretValue !== void 0) await require_dist$1.setCredentialInstanceSecretValue(id, keystrokeSecretValue);
29673
29752
  });
29674
29753
  createdIds.push(id);
29675
29754
  }
@@ -29701,6 +29780,7 @@ function createDeleteCredentialHandler(options = {}) {
29701
29780
  await options.mcp.revokeConnection((0, _keystrokehq_http.resolveMcpEntityId)(existing), existing.connectionId);
29702
29781
  }
29703
29782
  }
29783
+ await require_dist$1.deleteCredentialInstanceSecret(existing.id);
29704
29784
  } else await require_dist$1.deleteCredentialInstanceSecret(existing.id);
29705
29785
  await (0, _keystrokehq_database.deleteCredentialInstanceById)(credentialId);
29706
29786
  return c.body(null, 204);
@@ -29708,7 +29788,7 @@ function createDeleteCredentialHandler(options = {}) {
29708
29788
  }
29709
29789
  //#endregion
29710
29790
  //#region src/routes/account/members/GET.ts
29711
- const handler$31 = async (c) => {
29791
+ const handler$32 = async (c) => {
29712
29792
  const { organizationId } = c.get("organization");
29713
29793
  const query = require_dist$1.ListOrganizationMembersPageQuerySchema.parse({
29714
29794
  limit: c.req.query("limit") || void 0,
@@ -29766,7 +29846,7 @@ async function sendOrganizationInviteEmail(payload, resend$1) {
29766
29846
  }
29767
29847
  //#endregion
29768
29848
  //#region src/routes/account/members/invitations/POST.ts
29769
- const handler$30 = async (c) => {
29849
+ const handler$31 = async (c) => {
29770
29850
  const user = c.get("user");
29771
29851
  const organization = c.get("organization");
29772
29852
  const body = await c.req.json().catch(() => null);
@@ -29792,7 +29872,7 @@ const handler$30 = async (c) => {
29792
29872
  };
29793
29873
  //#endregion
29794
29874
  //#region src/routes/account/members/[userId]/PATCH.ts
29795
- const handler$29 = async (c) => {
29875
+ const handler$30 = async (c) => {
29796
29876
  const { organizationId } = c.get("organization");
29797
29877
  const userId = c.req.param("userId");
29798
29878
  const body = await c.req.json().catch(() => null);
@@ -29809,7 +29889,7 @@ const handler$29 = async (c) => {
29809
29889
  };
29810
29890
  //#endregion
29811
29891
  //#region src/routes/account/members/[userId]/DELETE.ts
29812
- const handler$28 = async (c) => {
29892
+ const handler$29 = async (c) => {
29813
29893
  const { organizationId } = c.get("organization");
29814
29894
  const userId = c.req.param("userId");
29815
29895
  if (!userId) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "User id is required" }), 400);
@@ -29823,13 +29903,13 @@ const handler$28 = async (c) => {
29823
29903
  };
29824
29904
  //#endregion
29825
29905
  //#region src/routes/account/invitations/GET.ts
29826
- const handler$27 = async (c) => {
29906
+ const handler$28 = async (c) => {
29827
29907
  const invitations = await (0, _keystrokehq_platform_database.selectPendingInvitationsForUser)(c.get("user").id);
29828
29908
  return c.json(require_dist$1.ListOrganizationInvitationsResponseSchema.parse(invitations.map(require_dist$1.mapOrganizationInvitation)));
29829
29909
  };
29830
29910
  //#endregion
29831
29911
  //#region src/routes/account/invitations/[invitationId]/accept/POST.ts
29832
- const handler$26 = async (c) => {
29912
+ const handler$27 = async (c) => {
29833
29913
  const user = c.get("user");
29834
29914
  const invitationId = c.req.param("invitationId");
29835
29915
  if (!invitationId) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invitation id is required" }), 400);
@@ -29850,7 +29930,7 @@ const handler$26 = async (c) => {
29850
29930
  };
29851
29931
  //#endregion
29852
29932
  //#region src/routes/account/invitations/[invitationId]/decline/POST.ts
29853
- const handler$25 = async (c) => {
29933
+ const handler$26 = async (c) => {
29854
29934
  const user = c.get("user");
29855
29935
  const invitationId = c.req.param("invitationId");
29856
29936
  if (!invitationId) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invitation id is required" }), 400);
@@ -29938,13 +30018,13 @@ function appRowToCustomAppDetail(row) {
29938
30018
  }
29939
30019
  //#endregion
29940
30020
  //#region src/routes/account/apps/GET.ts
29941
- const handler$24 = async (c) => {
30021
+ const handler$25 = async (c) => {
29942
30022
  const apps = (await (0, _keystrokehq_platform_database.listAppsForOrganization)(c.get("organization").organizationId)).map(appRowToCatalogSummary);
29943
30023
  return c.json(require_dist$1.ListAppsResponseSchema.parse(apps));
29944
30024
  };
29945
30025
  //#endregion
29946
30026
  //#region src/routes/account/apps/POST.ts
29947
- const handler$23 = async (c) => {
30027
+ const handler$24 = async (c) => {
29948
30028
  const organization = c.get("organization");
29949
30029
  const user = c.get("user");
29950
30030
  const parsed = require_dist$1.CreateCustomAppRequestSchema.safeParse(await c.req.json().catch(() => null));
@@ -29989,7 +30069,7 @@ const handler$23 = async (c) => {
29989
30069
  };
29990
30070
  //#endregion
29991
30071
  //#region src/routes/account/apps/logo/POST.ts
29992
- const handler$22 = async (c) => {
30072
+ const handler$23 = async (c) => {
29993
30073
  const parsed = require_dist$1.FinalizeCustomAppLogoRequestSchema.safeParse(await c.req.json().catch(() => null));
29994
30074
  if (!parsed.success) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid logo finalize request" }), 400);
29995
30075
  const { organizationId } = c.get("organization");
@@ -30004,7 +30084,7 @@ const handler$22 = async (c) => {
30004
30084
  };
30005
30085
  //#endregion
30006
30086
  //#region src/routes/account/apps/logo/presign/POST.ts
30007
- const handler$21 = async (c) => {
30087
+ const handler$22 = async (c) => {
30008
30088
  const parsed = require_dist$1.PresignCustomAppLogoRequestSchema.safeParse(await c.req.json().catch(() => null));
30009
30089
  if (!parsed.success) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid logo upload request" }), 400);
30010
30090
  const extension = avatarExtensionForContentType(parsed.data.contentType);
@@ -30022,7 +30102,7 @@ const handler$21 = async (c) => {
30022
30102
  };
30023
30103
  //#endregion
30024
30104
  //#region src/routes/account/apps/discover/POST.ts
30025
- const handler$20 = async (c) => {
30105
+ const handler$21 = async (c) => {
30026
30106
  const parsed = require_dist$1.McpDiscoverRequestSchema.safeParse(await c.req.json().catch(() => null));
30027
30107
  if (!parsed.success) return c.json({ error: "Invalid request body" }, 400);
30028
30108
  try {
@@ -30036,7 +30116,7 @@ const handler$20 = async (c) => {
30036
30116
  };
30037
30117
  //#endregion
30038
30118
  //#region src/routes/account/apps/discover-openapi/POST.ts
30039
- const handler$19 = async (c) => {
30119
+ const handler$20 = async (c) => {
30040
30120
  const parsed = require_dist$1.OpenApiDiscoverRequestSchema.safeParse(await c.req.json().catch(() => null));
30041
30121
  if (!parsed.success) return c.json({ error: "Invalid request body" }, 400);
30042
30122
  try {
@@ -30053,7 +30133,7 @@ const handler$19 = async (c) => {
30053
30133
  };
30054
30134
  //#endregion
30055
30135
  //#region src/routes/account/apps/discover-graphql/POST.ts
30056
- const handler$18 = async (c) => {
30136
+ const handler$19 = async (c) => {
30057
30137
  const parsed = require_dist$1.GraphqlDiscoverRequestSchema.safeParse(await c.req.json().catch(() => null));
30058
30138
  if (!parsed.success) return c.json({ error: "Invalid request body" }, 400);
30059
30139
  try {
@@ -30085,7 +30165,7 @@ function sanitizedUrl(value) {
30085
30165
  }
30086
30166
  //#endregion
30087
30167
  //#region src/routes/account/apps/[slug]/mcp/oauth/connections/POST.ts
30088
- const handler$17 = async (c) => {
30168
+ const handler$18 = async (c) => {
30089
30169
  const organization = c.get("organization");
30090
30170
  const user = c.get("user");
30091
30171
  const appSlug = c.req.param("slug")?.trim();
@@ -30179,7 +30259,7 @@ function buildOAuthWebLandingUrl(webOrigin, params) {
30179
30259
  function normalizedOAuthError(value) {
30180
30260
  return /^[a-z0-9_]+$/i.test(value) ? value : "authorization_failed";
30181
30261
  }
30182
- const handler$16 = async (c) => {
30262
+ const handler$17 = async (c) => {
30183
30263
  const code = c.req.query("code")?.trim();
30184
30264
  const state = c.req.query("state")?.trim();
30185
30265
  const oauthError = c.req.query("error")?.trim();
@@ -30312,7 +30392,7 @@ const handler$16 = async (c) => {
30312
30392
  };
30313
30393
  //#endregion
30314
30394
  //#region src/routes/account/apps/slug-available/GET.ts
30315
- const handler$15 = async (c) => {
30395
+ const handler$16 = async (c) => {
30316
30396
  const organization = c.get("organization");
30317
30397
  const parsed = require_dist$1.AppSlugAvailabilityQuerySchema.safeParse({ slug: c.req.query("slug") });
30318
30398
  if (!parsed.success) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Invalid slug query" }), 400);
@@ -30323,7 +30403,7 @@ const handler$15 = async (c) => {
30323
30403
  };
30324
30404
  //#endregion
30325
30405
  //#region src/routes/account/apps/[slug]/GET.ts
30326
- const handler$14 = async (c) => {
30406
+ const handler$15 = async (c) => {
30327
30407
  const organization = c.get("organization");
30328
30408
  const slug = c.req.param("slug") ?? "";
30329
30409
  if (!slug) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "App not found" }), 404);
@@ -30338,7 +30418,7 @@ const handler$14 = async (c) => {
30338
30418
  //#endregion
30339
30419
  //#region src/routes/account/apps/[slug]/catalog/GET.ts
30340
30420
  /** Full catalog entry (scopes + credential template) for connect UI. */
30341
- const handler$13 = async (c) => {
30421
+ const handler$14 = async (c) => {
30342
30422
  const organization = c.get("organization");
30343
30423
  const slug = c.req.param("slug") ?? "";
30344
30424
  if (!slug) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "App not found" }), 404);
@@ -30371,14 +30451,14 @@ function projectChannelPlatform(row) {
30371
30451
  });
30372
30452
  }
30373
30453
  /** Gateway platforms only — avoids downloading the full apps catalog. */
30374
- const handler$12 = async (c) => {
30454
+ const handler$13 = async (c) => {
30375
30455
  const organization = c.get("organization");
30376
30456
  const platforms = (await Promise.all(Object.keys(GATEWAY_BY_APP_SLUG).map((slug) => (0, _keystrokehq_platform_database.selectAppForOrganization)(organization.organizationId, slug)))).flatMap((row) => row ? [projectChannelPlatform(row)] : []);
30377
30457
  return c.json(require_dist$1.ListChannelPlatformsResponseSchema.parse(platforms));
30378
30458
  };
30379
30459
  //#endregion
30380
30460
  //#region src/routes/account/api-keys/GET.ts
30381
- const handler$11 = async (c) => {
30461
+ const handler$12 = async (c) => {
30382
30462
  const { organizationId } = c.get("organization");
30383
30463
  const user = c.get("user");
30384
30464
  const records = apiKeyListScope(accessContext(c)).kind === "all" ? await (0, _keystrokehq_platform_database.listOrgPlatformApiKeysForOrganization)(organizationId) : await (0, _keystrokehq_platform_database.listOrgPlatformApiKeysForUser)(organizationId, user.id);
@@ -30395,7 +30475,7 @@ const handler$11 = async (c) => {
30395
30475
  };
30396
30476
  //#endregion
30397
30477
  //#region src/routes/account/api-keys/POST.ts
30398
- const handler$10 = async (c) => {
30478
+ const handler$11 = async (c) => {
30399
30479
  const { organizationId } = c.get("organization");
30400
30480
  const user = c.get("user");
30401
30481
  const body = require_dist$1.CreateApiKeyRequestSchema.parse(await c.req.json());
@@ -30418,7 +30498,7 @@ const handler$10 = async (c) => {
30418
30498
  };
30419
30499
  //#endregion
30420
30500
  //#region src/routes/account/api-keys/[apiKeyId]/DELETE.ts
30421
- const handler$9 = async (c) => {
30501
+ const handler$10 = async (c) => {
30422
30502
  const { organizationId } = c.get("organization");
30423
30503
  const user = c.get("user");
30424
30504
  const apiKeyId = c.req.param("apiKeyId");
@@ -30443,7 +30523,7 @@ const handler$9 = async (c) => {
30443
30523
  };
30444
30524
  //#endregion
30445
30525
  //#region src/routes/account/managed-service-credentials/GET.ts
30446
- const handler$8 = async (c) => {
30526
+ const handler$9 = async (c) => {
30447
30527
  const { organizationId } = c.get("organization");
30448
30528
  const user = c.get("user");
30449
30529
  const kindParam = c.req.query("kind");
@@ -30469,7 +30549,7 @@ const handler$8 = async (c) => {
30469
30549
  };
30470
30550
  //#endregion
30471
30551
  //#region src/routes/account/managed-service-credentials/POST.ts
30472
- const handler$7 = async (c) => {
30552
+ const handler$8 = async (c) => {
30473
30553
  const { organizationId } = c.get("organization");
30474
30554
  const user = c.get("user");
30475
30555
  let raw;
@@ -30506,7 +30586,7 @@ const handler$7 = async (c) => {
30506
30586
  };
30507
30587
  //#endregion
30508
30588
  //#region src/routes/account/managed-service-credentials/[id]/PATCH.ts
30509
- const handler$6 = async (c) => {
30589
+ const handler$7 = async (c) => {
30510
30590
  const { organizationId } = c.get("organization");
30511
30591
  const user = c.get("user");
30512
30592
  const credentialId = c.req.param("id");
@@ -30545,7 +30625,7 @@ const handler$6 = async (c) => {
30545
30625
  };
30546
30626
  //#endregion
30547
30627
  //#region src/routes/account/managed-service-credentials/[id]/DELETE.ts
30548
- const handler$5 = async (c) => {
30628
+ const handler$6 = async (c) => {
30549
30629
  const { organizationId } = c.get("organization");
30550
30630
  const credentialId = c.req.param("id");
30551
30631
  if (!credentialId) return c.json(require_dist$1.ErrorResponseSchema.parse({ error: "Credential id is required" }), 400);
@@ -30591,6 +30671,7 @@ function teamRequestHeading(type) {
30591
30671
  case "contact": return "Contact request";
30592
30672
  case "enterprise-upgrade": return "Enterprise upgrade requested";
30593
30673
  case "verification": return "Organization access requested";
30674
+ case "connector-access": return "Connector sandbox access requested";
30594
30675
  default: return type;
30595
30676
  }
30596
30677
  }
@@ -30612,7 +30693,8 @@ function buildTeamRequestSlackPayload(input) {
30612
30693
  case "org-deletion":
30613
30694
  case "contact":
30614
30695
  case "enterprise-upgrade":
30615
- case "verification": break;
30696
+ case "verification":
30697
+ case "connector-access": break;
30616
30698
  default: return input.type;
30617
30699
  }
30618
30700
  const timestamp = input.timestamp ?? (/* @__PURE__ */ new Date()).toISOString();
@@ -30636,6 +30718,10 @@ function buildTeamRequestSlackPayload(input) {
30636
30718
  text: `*Organization:*\n${input.org.name}\n\`${input.org.slug}\`\n\`${input.org.id}\``
30637
30719
  }
30638
30720
  ];
30721
+ if (input.type === "connector-access" && input.appSlug) fields.push({
30722
+ type: "mrkdwn",
30723
+ text: `*Connector:*\n\`${escapeSlackText(input.appSlug)}\``
30724
+ });
30639
30725
  const blocks = [{
30640
30726
  type: "header",
30641
30727
  text: {
@@ -30647,7 +30733,7 @@ function buildTeamRequestSlackPayload(input) {
30647
30733
  type: "section",
30648
30734
  fields
30649
30735
  }];
30650
- if ((input.type === "contact" || input.type === "verification") && input.message?.trim()) blocks.push({
30736
+ if ((input.type === "contact" || input.type === "verification" || input.type === "connector-access") && input.message?.trim()) blocks.push({
30651
30737
  type: "section",
30652
30738
  text: {
30653
30739
  type: "mrkdwn",
@@ -30664,7 +30750,7 @@ async function postTeamRequestToSlack(input) {
30664
30750
  }
30665
30751
  //#endregion
30666
30752
  //#region src/routes/account/team-requests/POST.ts
30667
- const handler$4 = async (c) => {
30753
+ const handler$5 = async (c) => {
30668
30754
  const user = c.get("user");
30669
30755
  const organizationContext = c.get("organization");
30670
30756
  const parsed = require_dist$1.SubmitTeamRequestRequestSchema.safeParse(await c.req.json().catch(() => null));
@@ -30678,6 +30764,7 @@ const handler$4 = async (c) => {
30678
30764
  await postTeamRequestToSlack({
30679
30765
  type: parsed.data.type,
30680
30766
  message: parsed.data.message,
30767
+ appSlug: parsed.data.appSlug,
30681
30768
  user: {
30682
30769
  id: user.id,
30683
30770
  name: user.name,
@@ -30697,11 +30784,94 @@ const handler$4 = async (c) => {
30697
30784
  name: "support:requested",
30698
30785
  actorId: user.id,
30699
30786
  organizationId: organization.id,
30700
- properties: { request_type: parsed.data.type }
30787
+ properties: {
30788
+ request_type: parsed.data.type,
30789
+ ...parsed.data.appSlug ? { app_slug: parsed.data.appSlug } : {}
30790
+ }
30701
30791
  }).catch(() => {});
30702
30792
  return c.json(require_dist$1.SubmitTeamRequestResponseSchema.parse({ ok: true }), 200);
30703
30793
  };
30704
30794
  //#endregion
30795
+ //#region src/lib/agent-feedback-slack.ts
30796
+ /** Slack section mrkdwn text limit. */
30797
+ const SLACK_SECTION_TEXT_LIMIT = 3e3;
30798
+ function chunkSlackText(text, size) {
30799
+ if (text.length <= size) return [text];
30800
+ const chunks = [];
30801
+ for (let i = 0; i < text.length; i += size) chunks.push(text.slice(i, i + size));
30802
+ return chunks;
30803
+ }
30804
+ function buildAgentFeedbackSlackText(input) {
30805
+ const lines = [
30806
+ `*User:* ${escapeSlackText(input.user.name.trim())}`,
30807
+ `*Email:* ${escapeSlackText(input.user.email.trim())}`,
30808
+ `*Org:* ${escapeSlackText(input.org.name.trim())} (\`${escapeSlackText(input.org.slug.trim())}\`)`
30809
+ ];
30810
+ if (input.cliVersion?.trim()) lines.push(`*CLI:* ${escapeSlackText(input.cliVersion.trim())}`);
30811
+ if (input.projectSlug?.trim()) lines.push(`*Project:* \`${escapeSlackText(input.projectSlug.trim())}\``);
30812
+ lines.push("", "-------------------------", "", escapeSlackText(input.message.trim()));
30813
+ return lines.join("\n");
30814
+ }
30815
+ function buildAgentFeedbackSlackPayload(input) {
30816
+ const body = buildAgentFeedbackSlackText(input);
30817
+ return {
30818
+ text: `Feedback Report from ${input.user.name} (${input.org.name})`,
30819
+ blocks: chunkSlackText(body, SLACK_SECTION_TEXT_LIMIT).map((chunk) => ({
30820
+ type: "section",
30821
+ text: {
30822
+ type: "mrkdwn",
30823
+ text: chunk
30824
+ }
30825
+ }))
30826
+ };
30827
+ }
30828
+ async function postAgentFeedbackToSlack(input) {
30829
+ await (0, _keystrokehq_http.postAgentFeedbackSlackWebhook)(buildAgentFeedbackSlackPayload(input));
30830
+ }
30831
+ //#endregion
30832
+ //#region src/routes/account/agent-feedback/POST.ts
30833
+ const handler$4 = async (c) => {
30834
+ const user = c.get("user");
30835
+ const organizationContext = c.get("organization");
30836
+ const parsed = require_dist$1.SubmitAgentFeedbackRequestSchema.safeParse(await c.req.json().catch(() => null));
30837
+ if (!parsed.success) {
30838
+ const message = parsed.error.issues[0]?.message ?? "Invalid request body";
30839
+ return c.json({ error: message }, 400);
30840
+ }
30841
+ const organization = await (0, _keystrokehq_platform_database.selectOrganizationById)(organizationContext.organizationId);
30842
+ if (!organization) return c.json({ error: "Organization not found" }, 404);
30843
+ try {
30844
+ await postAgentFeedbackToSlack({
30845
+ message: parsed.data.message,
30846
+ cliVersion: parsed.data.cliVersion,
30847
+ projectSlug: parsed.data.projectSlug,
30848
+ user: {
30849
+ name: user.name,
30850
+ email: user.email
30851
+ },
30852
+ org: {
30853
+ name: organization.name,
30854
+ slug: organization.slug
30855
+ }
30856
+ });
30857
+ } catch (error) {
30858
+ console.error("Failed to deliver agent feedback to Slack", error);
30859
+ return c.json({ error: "Failed to deliver feedback" }, 502);
30860
+ }
30861
+ trackProductEvent({
30862
+ name: "feedback:submitted",
30863
+ actorId: user.id,
30864
+ organizationId: organization.id,
30865
+ properties: {
30866
+ source: "cli-agent",
30867
+ has_cli_version: Boolean(parsed.data.cliVersion),
30868
+ has_project_slug: Boolean(parsed.data.projectSlug),
30869
+ message_length: parsed.data.message.length
30870
+ }
30871
+ }).catch(() => {});
30872
+ return c.json(require_dist$1.SubmitAgentFeedbackResponseSchema.parse({ ok: true }), 200);
30873
+ };
30874
+ //#endregion
30705
30875
  //#region src/routes/account/templates/GET.ts
30706
30876
  function toIso(date) {
30707
30877
  return date.toISOString();
@@ -30749,7 +30919,7 @@ function mountAccountRoutes(options) {
30749
30919
  const projectScoped = new hono.Hono();
30750
30920
  const protect = requireSession((0, _keystrokehq_auth.createDefaultAuthJwtVerifier)());
30751
30921
  const deleteCredential = createDeleteCredentialHandler({ mcp: options.mcp });
30752
- account.get("/mcp/oauth/callback", handler$16);
30922
+ account.get("/mcp/oauth/callback", handler$17);
30753
30923
  account.use("/*", protect);
30754
30924
  orgScoped.use("/*", protect);
30755
30925
  orgScoped.use("/*", requireOrganization());
@@ -30771,119 +30941,120 @@ function mountAccountRoutes(options) {
30771
30941
  const requireProjectManageMembers = authorize(projectActions.manageMembers);
30772
30942
  const requireInvitableProjectRole = authorizePayload(require_dist$1.InviteProjectMembersRequestSchema, ({ c, ctx, body }) => canInviteToProject(ctx, { invitePermission: getProjectInvitePermission(c) }, body.role));
30773
30943
  const requireOrgParam = requireOrganizationParam();
30774
- account.get("/organizations", handler$105);
30775
- account.get("/organizations/slug-available", handler$104);
30944
+ account.get("/organizations", handler$106);
30945
+ account.get("/organizations/slug-available", handler$105);
30776
30946
  account.post("/organizations", createOrganizationHandler(options));
30777
- account.get("/organizations/:organizationId", requireOrgParam, handler$103);
30778
- account.patch("/organizations/:organizationId", requireOrgParam, requireOrgUpdate, handler$102);
30779
- account.get("/organizations/:organizationId/branding", requireOrgParam, handler$101);
30780
- account.patch("/organizations/:organizationId/branding", requireOrgParam, requireOrgUpdate, handler$100);
30781
- account.post("/organizations/:organizationId/branding/logo/presign", requireOrgParam, requireOrgUpdate, handler$99);
30782
- account.get("/invitations", handler$27);
30783
- account.post("/invitations/:invitationId/accept", handler$26);
30784
- account.post("/invitations/:invitationId/decline", handler$25);
30785
- account.get("/users/me/avatar", handler$110);
30786
- account.post("/users/me/avatar/presign", handler$109);
30787
- account.patch("/users/me/avatar", handler$108);
30788
- account.get("/users/me/preferences", handler$107);
30789
- account.patch("/users/me/preferences", handler$106);
30947
+ account.get("/organizations/:organizationId", requireOrgParam, handler$104);
30948
+ account.patch("/organizations/:organizationId", requireOrgParam, requireOrgUpdate, handler$103);
30949
+ account.get("/organizations/:organizationId/branding", requireOrgParam, handler$102);
30950
+ account.patch("/organizations/:organizationId/branding", requireOrgParam, requireOrgUpdate, handler$101);
30951
+ account.post("/organizations/:organizationId/branding/logo/presign", requireOrgParam, requireOrgUpdate, handler$100);
30952
+ account.get("/invitations", handler$28);
30953
+ account.post("/invitations/:invitationId/accept", handler$27);
30954
+ account.post("/invitations/:invitationId/decline", handler$26);
30955
+ account.get("/users/me/avatar", handler$111);
30956
+ account.post("/users/me/avatar/presign", handler$110);
30957
+ account.patch("/users/me/avatar", handler$109);
30958
+ account.get("/users/me/preferences", handler$108);
30959
+ account.patch("/users/me/preferences", handler$107);
30790
30960
  const withOrgDb = withOrganizationProjectDatabase();
30791
- orgScoped.get("/apps", handler$24);
30961
+ orgScoped.get("/apps", handler$25);
30792
30962
  orgScoped.get("/templates", listTemplatesHandler);
30793
30963
  orgScoped.get("/templates/:slug", getTemplateHandler);
30794
30964
  orgScoped.get("/templates/:slug/files", getTemplateFilesHandler);
30795
- orgScoped.get("/apps/slug-available", handler$15);
30796
- orgScoped.get("/channel-platforms", handler$12);
30797
- orgScoped.post("/apps/discover", requireOrgUpdate, handler$20);
30798
- orgScoped.post("/apps/discover-openapi", requireOrgUpdate, handler$19);
30799
- orgScoped.post("/apps/discover-graphql", requireOrgUpdate, handler$18);
30800
- orgScoped.post("/apps/logo/presign", requireOrgUpdate, handler$21);
30801
- orgScoped.post("/apps/logo", requireOrgUpdate, handler$22);
30802
- orgScoped.post("/apps", requireOrgUpdate, handler$23);
30803
- orgScoped.post("/apps/:slug/mcp/oauth/connections", requireOrgUpdate, withOrgDb, handler$17);
30804
- orgScoped.get("/apps/:slug/catalog", handler$13);
30805
- orgScoped.get("/apps/:slug", handler$14);
30806
- account.post("/team-requests", requireOrganization(), handler$4);
30807
- orgScoped.get("/members", handler$31);
30808
- orgScoped.post("/members/invitations", requireUserInvite, requireInvitableRole, handler$30);
30809
- orgScoped.patch("/members/:userId", requireUserManage, handler$29);
30810
- orgScoped.delete("/members/:userId", requireUserManage, handler$28);
30811
- orgScoped.get("/api-keys", handler$11);
30812
- orgScoped.post("/api-keys", requireApiKeyCreate, handler$10);
30813
- orgScoped.delete("/api-keys/:apiKeyId", handler$9);
30814
- orgScoped.get("/managed-service-credentials", requireManagedServicesRead, handler$8);
30815
- orgScoped.post("/managed-service-credentials", requireManagedServicesManage, handler$7);
30816
- orgScoped.patch("/managed-service-credentials/:id", requireManagedServicesManage, handler$6);
30817
- orgScoped.delete("/managed-service-credentials/:id", requireManagedServicesManage, handler$5);
30818
- orgScoped.get("/agents", withOrgDb, handler$96);
30819
- orgScoped.get("/agents/:agentId", withOrgDb, handler$95);
30820
- orgScoped.get("/agents/:agentId/memory/files", withOrgDb, handler$94);
30821
- orgScoped.get("/agents/:agentId/memory/files/content", withOrgDb, handler$93);
30822
- orgScoped.get("/agents/:agentId/workspace/files", withOrgDb, handler$92);
30823
- orgScoped.get("/agents/:agentId/workspace/files/content", withOrgDb, handler$91);
30824
- orgScoped.get("/workflows", withOrgDb, handler$89);
30825
- orgScoped.get("/workflows/forms", handler$88);
30826
- orgScoped.get("/workflows/:workflowId", withOrgDb, handler$87);
30827
- orgScoped.get("/workflows/:workflowId/canvas", withOrgDb, handler$86);
30828
- orgScoped.get("/workflows/:workflowId/canvas/credentials", withOrgDb, handler$85);
30829
- orgScoped.get("/workflows/:workflowId/canvas/runs/:runId", withOrgDb, handler$84);
30830
- orgScoped.get("/workflows/:workflowId/overview", withOrgDb, handler$83);
30831
- orgScoped.get("/workflows/:workflowId/runs", withOrgDb, handler$74);
30832
- orgScoped.get("/workflows/:workflowId/run-inputs", withOrgDb, handler$82);
30833
- orgScoped.put("/workflows/:workflowId/run-inputs", withOrgDb, handler$81);
30834
- orgScoped.post("/workflows/:workflowId/run", withOrgDb, handler$80);
30835
- orgScoped.get("/workflows/:workflowId/form", withOrgDb, handler$79);
30836
- orgScoped.put("/workflows/:workflowId/form", withOrgDb, handler$78);
30837
- orgScoped.delete("/workflows/:workflowId/form", withOrgDb, handler$77);
30838
- orgScoped.post("/workflows/:workflowId/form/rotate", withOrgDb, handler$76);
30839
- orgScoped.post("/workflows/:workflowId/attachments/presign", withOrgDb, handler$75);
30840
- orgScoped.get("/skills", withOrgDb, handler$72);
30841
- orgScoped.get("/skills/:skillId", withOrgDb, handler$71);
30842
- orgScoped.get("/triggers", withOrgDb, handler$70);
30843
- orgScoped.get("/triggers/:triggerId", withOrgDb, handler$69);
30844
- orgScoped.get("/triggers/:triggerId/runs", withOrgDb, handler$68);
30845
- orgScoped.get("/triggers/:triggerId/file", withOrgDb, handler$67);
30846
- orgScoped.get("/triggers/:triggerId/overview", withOrgDb, handler$66);
30847
- orgScoped.get("/triggers/:triggerId/invoke-inputs", withOrgDb, handler$63);
30848
- orgScoped.post("/triggers/:triggerId/invoke", withOrgDb, handler$64);
30849
- orgScoped.patch("/triggers/:triggerId/attachments/:attachmentId", withOrgDb, handler$65);
30850
- orgScoped.get("/recents", withOrgDb, handler$62);
30851
- orgScoped.get("/history", withOrgDb, handler$98);
30852
- orgScoped.get("/history/:runId", withOrgDb, handler$97);
30853
- orgScoped.post("/workflows/runs/:runId/cancel", withOrgDb, handler$73);
30854
- orgScoped.post("/agents/sessions/:sessionId/cancel", withOrgDb, handler$90);
30855
- orgScoped.get("/credentials", withOrgDb, handler$36);
30856
- orgScoped.post("/credentials", withOrgDb, handler$35);
30857
- orgScoped.get("/credentials/:credentialId", withOrgDb, (c, next) => c.req.param("credentialId") === "instances" ? next() : handler$34(c, next));
30858
- orgScoped.patch("/credentials/:credentialId", withOrgDb, handler$33);
30859
- orgScoped.post("/credentials/:credentialId/duplicate", withOrgDb, handler$32);
30965
+ orgScoped.get("/apps/slug-available", handler$16);
30966
+ orgScoped.get("/channel-platforms", handler$13);
30967
+ orgScoped.post("/apps/discover", requireOrgUpdate, handler$21);
30968
+ orgScoped.post("/apps/discover-openapi", requireOrgUpdate, handler$20);
30969
+ orgScoped.post("/apps/discover-graphql", requireOrgUpdate, handler$19);
30970
+ orgScoped.post("/apps/logo/presign", requireOrgUpdate, handler$22);
30971
+ orgScoped.post("/apps/logo", requireOrgUpdate, handler$23);
30972
+ orgScoped.post("/apps", requireOrgUpdate, handler$24);
30973
+ orgScoped.post("/apps/:slug/mcp/oauth/connections", requireOrgUpdate, withOrgDb, handler$18);
30974
+ orgScoped.get("/apps/:slug/catalog", handler$14);
30975
+ orgScoped.get("/apps/:slug", handler$15);
30976
+ account.post("/team-requests", requireOrganization(), handler$5);
30977
+ account.post("/agent-feedback", requireOrganization(), handler$4);
30978
+ orgScoped.get("/members", handler$32);
30979
+ orgScoped.post("/members/invitations", requireUserInvite, requireInvitableRole, handler$31);
30980
+ orgScoped.patch("/members/:userId", requireUserManage, handler$30);
30981
+ orgScoped.delete("/members/:userId", requireUserManage, handler$29);
30982
+ orgScoped.get("/api-keys", handler$12);
30983
+ orgScoped.post("/api-keys", requireApiKeyCreate, handler$11);
30984
+ orgScoped.delete("/api-keys/:apiKeyId", handler$10);
30985
+ orgScoped.get("/managed-service-credentials", requireManagedServicesRead, handler$9);
30986
+ orgScoped.post("/managed-service-credentials", requireManagedServicesManage, handler$8);
30987
+ orgScoped.patch("/managed-service-credentials/:id", requireManagedServicesManage, handler$7);
30988
+ orgScoped.delete("/managed-service-credentials/:id", requireManagedServicesManage, handler$6);
30989
+ orgScoped.get("/agents", withOrgDb, handler$97);
30990
+ orgScoped.get("/agents/:agentId", withOrgDb, handler$96);
30991
+ orgScoped.get("/agents/:agentId/memory/files", withOrgDb, handler$95);
30992
+ orgScoped.get("/agents/:agentId/memory/files/content", withOrgDb, handler$94);
30993
+ orgScoped.get("/agents/:agentId/workspace/files", withOrgDb, handler$93);
30994
+ orgScoped.get("/agents/:agentId/workspace/files/content", withOrgDb, handler$92);
30995
+ orgScoped.get("/workflows", withOrgDb, handler$90);
30996
+ orgScoped.get("/workflows/forms", handler$89);
30997
+ orgScoped.get("/workflows/:workflowId", withOrgDb, handler$88);
30998
+ orgScoped.get("/workflows/:workflowId/canvas", withOrgDb, handler$87);
30999
+ orgScoped.get("/workflows/:workflowId/canvas/credentials", withOrgDb, handler$86);
31000
+ orgScoped.get("/workflows/:workflowId/canvas/runs/:runId", withOrgDb, handler$85);
31001
+ orgScoped.get("/workflows/:workflowId/overview", withOrgDb, handler$84);
31002
+ orgScoped.get("/workflows/:workflowId/runs", withOrgDb, handler$75);
31003
+ orgScoped.get("/workflows/:workflowId/run-inputs", withOrgDb, handler$83);
31004
+ orgScoped.put("/workflows/:workflowId/run-inputs", withOrgDb, handler$82);
31005
+ orgScoped.post("/workflows/:workflowId/run", withOrgDb, handler$81);
31006
+ orgScoped.get("/workflows/:workflowId/form", withOrgDb, handler$80);
31007
+ orgScoped.put("/workflows/:workflowId/form", withOrgDb, handler$79);
31008
+ orgScoped.delete("/workflows/:workflowId/form", withOrgDb, handler$78);
31009
+ orgScoped.post("/workflows/:workflowId/form/rotate", withOrgDb, handler$77);
31010
+ orgScoped.post("/workflows/:workflowId/attachments/presign", withOrgDb, handler$76);
31011
+ orgScoped.get("/skills", withOrgDb, handler$73);
31012
+ orgScoped.get("/skills/:skillId", withOrgDb, handler$72);
31013
+ orgScoped.get("/triggers", withOrgDb, handler$71);
31014
+ orgScoped.get("/triggers/:triggerId", withOrgDb, handler$70);
31015
+ orgScoped.get("/triggers/:triggerId/runs", withOrgDb, handler$69);
31016
+ orgScoped.get("/triggers/:triggerId/file", withOrgDb, handler$68);
31017
+ orgScoped.get("/triggers/:triggerId/overview", withOrgDb, handler$67);
31018
+ orgScoped.get("/triggers/:triggerId/invoke-inputs", withOrgDb, handler$64);
31019
+ orgScoped.post("/triggers/:triggerId/invoke", withOrgDb, handler$65);
31020
+ orgScoped.patch("/triggers/:triggerId/attachments/:attachmentId", withOrgDb, handler$66);
31021
+ orgScoped.get("/recents", withOrgDb, handler$63);
31022
+ orgScoped.get("/history", withOrgDb, handler$99);
31023
+ orgScoped.get("/history/:runId", withOrgDb, handler$98);
31024
+ orgScoped.post("/workflows/runs/:runId/cancel", withOrgDb, handler$74);
31025
+ orgScoped.post("/agents/sessions/:sessionId/cancel", withOrgDb, handler$91);
31026
+ orgScoped.get("/credentials", withOrgDb, handler$37);
31027
+ orgScoped.post("/credentials", withOrgDb, handler$36);
31028
+ orgScoped.get("/credentials/:credentialId", withOrgDb, (c, next) => c.req.param("credentialId") === "instances" ? next() : handler$35(c, next));
31029
+ orgScoped.patch("/credentials/:credentialId", withOrgDb, handler$34);
31030
+ orgScoped.post("/credentials/:credentialId/duplicate", withOrgDb, handler$33);
30860
31031
  orgScoped.delete("/credentials/:credentialId", withOrgDb, deleteCredential);
30861
- orgScoped.get("/projects", handler$61);
30862
- orgScoped.get("/projects/slug-available", handler$58);
30863
- orgScoped.get("/projects/metrics", withOrgDb, handler$60);
31032
+ orgScoped.get("/projects", handler$62);
31033
+ orgScoped.get("/projects/slug-available", handler$59);
31034
+ orgScoped.get("/projects/metrics", withOrgDb, handler$61);
30864
31035
  orgScoped.post("/projects", createCreateProjectHandler(options.projectQuotaGate));
30865
- projectScoped.get("/:projectId", requireProject(), requireProjectMember, handler$57);
30866
- projectScoped.patch("/:projectId", requireProject(), requireProjectMember, requireProjectUpdate, handler$56);
30867
- projectScoped.delete("/:projectId", requireProject(), requireProjectMember, requireProjectDelete, handler$55);
30868
- projectScoped.get("/:projectId/settings", requireProject(), requireProjectMember, handler$38);
30869
- projectScoped.patch("/:projectId/settings", requireProject(), requireProjectMember, requireProjectUpdate, handler$37);
30870
- projectScoped.get("/:projectId/members", requireProject(), requireProjectMember, handler$43);
30871
- projectScoped.post("/:projectId/members", requireProject(), requireProjectMember, requireInvitableProjectRole, handler$42);
30872
- projectScoped.patch("/:projectId/members/:userId", requireProject(), requireProjectMember, requireProjectManageMembers, handler$41);
30873
- projectScoped.delete("/:projectId/members/:userId", requireProject(), requireProjectMember, requireProjectManageMembers, handler$40);
30874
- projectScoped.delete("/:projectId/members/me", requireProject(), requireProjectMember, handler$39);
31036
+ projectScoped.get("/:projectId", requireProject(), requireProjectMember, handler$58);
31037
+ projectScoped.patch("/:projectId", requireProject(), requireProjectMember, requireProjectUpdate, handler$57);
31038
+ projectScoped.delete("/:projectId", requireProject(), requireProjectMember, requireProjectDelete, handler$56);
31039
+ projectScoped.get("/:projectId/settings", requireProject(), requireProjectMember, handler$39);
31040
+ projectScoped.patch("/:projectId/settings", requireProject(), requireProjectMember, requireProjectUpdate, handler$38);
31041
+ projectScoped.get("/:projectId/members", requireProject(), requireProjectMember, handler$44);
31042
+ projectScoped.post("/:projectId/members", requireProject(), requireProjectMember, requireInvitableProjectRole, handler$43);
31043
+ projectScoped.patch("/:projectId/members/:userId", requireProject(), requireProjectMember, requireProjectManageMembers, handler$42);
31044
+ projectScoped.delete("/:projectId/members/:userId", requireProject(), requireProjectMember, requireProjectManageMembers, handler$41);
31045
+ projectScoped.delete("/:projectId/members/me", requireProject(), requireProjectMember, handler$40);
30875
31046
  projectScoped.get("/:projectId/reachability", requireProject(), requireProjectMember, createProjectReachabilityHandler(options.hosting));
30876
- projectScoped.get("/:projectId/files", requireProject(), requireProjectMember, withOrgDb, handler$45);
30877
- projectScoped.post("/:projectId/agents/:slug/attachments/presign", requireProject(), requireProjectMember, withOrgDb, handler$47);
30878
- projectScoped.get("/:projectId/agents/:slug/attachments/:key{.+}", requireProject(), requireProjectMember, withOrgDb, handler$46);
30879
- projectScoped.get("/:projectId/artifacts/:artifactId/files/content", requireProject(), requireProjectMember, handler$44);
30880
- projectScoped.get("/:projectId/deployments", requireProject(), requireProjectMember, handler$54);
30881
- projectScoped.get("/:projectId/artifacts/active/download", requireProject(), requireProjectMember, requireProjectDeploy, handler$52);
30882
- projectScoped.get("/:projectId/artifacts/active/source", requireProject(), requireProjectMember, withOrgDb, handler$51);
30883
- projectScoped.post("/:projectId/artifacts", requireProject(), requireProjectMember, requireProjectDeploy, handler$53);
30884
- projectScoped.post("/:projectId/artifacts/:artifactId/complete", requireProject(), requireProjectMember, requireProjectDeploy, handler$50);
30885
- projectScoped.post("/:projectId/artifacts/:artifactId/source/presign", requireProject(), requireProjectMember, requireProjectDeploy, handler$49);
30886
- projectScoped.post("/:projectId/artifacts/:artifactId/source/manifest", requireProject(), requireProjectMember, requireProjectDeploy, handler$48);
31047
+ projectScoped.get("/:projectId/files", requireProject(), requireProjectMember, withOrgDb, handler$46);
31048
+ projectScoped.post("/:projectId/agents/:slug/attachments/presign", requireProject(), requireProjectMember, withOrgDb, handler$48);
31049
+ projectScoped.get("/:projectId/agents/:slug/attachments/:key{.+}", requireProject(), requireProjectMember, withOrgDb, handler$47);
31050
+ projectScoped.get("/:projectId/artifacts/:artifactId/files/content", requireProject(), requireProjectMember, handler$45);
31051
+ projectScoped.get("/:projectId/deployments", requireProject(), requireProjectMember, handler$55);
31052
+ projectScoped.get("/:projectId/artifacts/active/download", requireProject(), requireProjectMember, requireProjectDeploy, handler$53);
31053
+ projectScoped.get("/:projectId/artifacts/active/source", requireProject(), requireProjectMember, withOrgDb, handler$52);
31054
+ projectScoped.post("/:projectId/artifacts", requireProject(), requireProjectMember, requireProjectDeploy, handler$54);
31055
+ projectScoped.post("/:projectId/artifacts/:artifactId/complete", requireProject(), requireProjectMember, requireProjectDeploy, handler$51);
31056
+ projectScoped.post("/:projectId/artifacts/:artifactId/source/presign", requireProject(), requireProjectMember, requireProjectDeploy, handler$50);
31057
+ projectScoped.post("/:projectId/artifacts/:artifactId/source/manifest", requireProject(), requireProjectMember, requireProjectDeploy, handler$49);
30887
31058
  orgScoped.route("/projects", projectScoped);
30888
31059
  account.route("/", orgScoped);
30889
31060
  return account;
@@ -31015,7 +31186,7 @@ async function runOrgDatabaseQuery(options, query) {
31015
31186
  function mountInternalRoutes(workerToken, tokenRefresh, llmProxy, mcp) {
31016
31187
  const internal = new hono.Hono();
31017
31188
  const protect = require_with_project_scope.requireWorkerToken(workerToken);
31018
- const materialize = (0, _keystrokehq_runtime.createCredentialMaterializeHandler)(tokenRefresh);
31189
+ const materialize = (0, _keystrokehq_runtime.createCredentialMaterializeHandler)(tokenRefresh, { resolveSandboxAccessToken: mcp ? (connectionId) => mcp.resolveSandboxAccessToken(connectionId) : void 0 });
31019
31190
  internal.use("/orgs/:organizationId/db/*", async (c, next) => {
31020
31191
  const verified = require_dist.verifyOrgWorkerToken(workerToken, require_with_project_scope.readWorkerTokenFromRequest(c));
31021
31192
  if (!verified || verified.organizationId !== c.req.param("organizationId")) return c.json({
@@ -31696,4 +31867,4 @@ Object.defineProperty(exports, "x$1", {
31696
31867
  }
31697
31868
  });
31698
31869
 
31699
- //# sourceMappingURL=start-DcC-zxF1.cjs.map
31870
+ //# sourceMappingURL=start-CvNWHkwA.cjs.map