@keystrokehq/platform 0.1.17 → 0.1.19

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 (297) hide show
  1. package/README.md +4 -0
  2. package/dist/{awk2-LA3USKJP-DKj2S8Ek.mjs → awk2-LA3USKJP-DGoZBFhJ.mjs} +2 -2
  3. package/dist/{awk2-LA3USKJP-DKj2S8Ek.mjs.map → awk2-LA3USKJP-DGoZBFhJ.mjs.map} +1 -1
  4. package/dist/{awk2-LA3USKJP-BRL8hoJr.cjs → awk2-LA3USKJP-DvnlC67L.cjs} +2 -2
  5. package/dist/{awk2-LA3USKJP-BRL8hoJr.cjs.map → awk2-LA3USKJP-DvnlC67L.cjs.map} +1 -1
  6. package/dist/{base64-C2AIWVNC-BeIfMgG0.cjs → base64-C2AIWVNC-DnANUUCD.cjs} +2 -2
  7. package/dist/{base64-C2AIWVNC-BeIfMgG0.cjs.map → base64-C2AIWVNC-DnANUUCD.cjs.map} +1 -1
  8. package/dist/{base64-C2AIWVNC-BQ8hMW4e.mjs → base64-C2AIWVNC-Rl_X_nM-.mjs} +2 -2
  9. package/dist/{base64-C2AIWVNC-BQ8hMW4e.mjs.map → base64-C2AIWVNC-Rl_X_nM-.mjs.map} +1 -1
  10. package/dist/{bash-YZ33HQZQ-ClnL17Y6.mjs → bash-YZ33HQZQ-BIELeHiB.mjs} +2 -2
  11. package/dist/{bash-YZ33HQZQ-ClnL17Y6.mjs.map → bash-YZ33HQZQ-BIELeHiB.mjs.map} +1 -1
  12. package/dist/{bash-YZ33HQZQ-BBmW_sBm.cjs → bash-YZ33HQZQ-BNJc5UNj.cjs} +2 -2
  13. package/dist/{bash-YZ33HQZQ-BBmW_sBm.cjs.map → bash-YZ33HQZQ-BNJc5UNj.cjs.map} +1 -1
  14. package/dist/{cat-TSFMZVYS-nWh0JVcx.mjs → cat-TSFMZVYS-BdLkXDx7.mjs} +3 -3
  15. package/dist/{cat-TSFMZVYS-nWh0JVcx.mjs.map → cat-TSFMZVYS-BdLkXDx7.mjs.map} +1 -1
  16. package/dist/{cat-TSFMZVYS-BjBv1R_B.cjs → cat-TSFMZVYS-DPyKg9WF.cjs} +3 -3
  17. package/dist/{cat-TSFMZVYS-BjBv1R_B.cjs.map → cat-TSFMZVYS-DPyKg9WF.cjs.map} +1 -1
  18. package/dist/{chunk-5H5SCKJM-Bw9uIIYM.cjs → chunk-5H5SCKJM-BqBMsHqB.cjs} +2 -2
  19. package/dist/{chunk-5H5SCKJM-Bw9uIIYM.cjs.map → chunk-5H5SCKJM-BqBMsHqB.cjs.map} +1 -1
  20. package/dist/{chunk-5H5SCKJM-DzClFYtS.mjs → chunk-5H5SCKJM-ELpRK1tD.mjs} +2 -2
  21. package/dist/{chunk-5H5SCKJM-DzClFYtS.mjs.map → chunk-5H5SCKJM-ELpRK1tD.mjs.map} +1 -1
  22. package/dist/{chunk-AQ6FYS2X-hOUXIatW.mjs → chunk-AQ6FYS2X-BVbA_ouG.mjs} +2 -2
  23. package/dist/{chunk-AQ6FYS2X-hOUXIatW.mjs.map → chunk-AQ6FYS2X-BVbA_ouG.mjs.map} +1 -1
  24. package/dist/{chunk-AQ6FYS2X-Bh-eSaeE.cjs → chunk-AQ6FYS2X-aGmDzQXK.cjs} +2 -2
  25. package/dist/{chunk-AQ6FYS2X-Bh-eSaeE.cjs.map → chunk-AQ6FYS2X-aGmDzQXK.cjs.map} +1 -1
  26. package/dist/{chunk-CHFEPBH4-CCzpBNH2.mjs → chunk-CHFEPBH4-By6MwWuK.mjs} +2 -2
  27. package/dist/{chunk-CHFEPBH4-CCzpBNH2.mjs.map → chunk-CHFEPBH4-By6MwWuK.mjs.map} +1 -1
  28. package/dist/{chunk-CHFEPBH4-DgQQk8C5.cjs → chunk-CHFEPBH4-CySqY_At.cjs} +2 -2
  29. package/dist/{chunk-CHFEPBH4-DgQQk8C5.cjs.map → chunk-CHFEPBH4-CySqY_At.cjs.map} +1 -1
  30. package/dist/{chunk-EBAPSGAO-CNsqQnvw.mjs → chunk-EBAPSGAO-ClvQ0IRN.mjs} +2 -2
  31. package/dist/{chunk-EBAPSGAO-CNsqQnvw.mjs.map → chunk-EBAPSGAO-ClvQ0IRN.mjs.map} +1 -1
  32. package/dist/{chunk-EBAPSGAO-C-VkQkm8.cjs → chunk-EBAPSGAO-DN0ebwQR.cjs} +2 -2
  33. package/dist/{chunk-EBAPSGAO-C-VkQkm8.cjs.map → chunk-EBAPSGAO-DN0ebwQR.cjs.map} +1 -1
  34. package/dist/{chunk-LEKBROJD-C4M7s-PX.mjs → chunk-LEKBROJD-40MmqFVR.mjs} +2 -2
  35. package/dist/{chunk-LEKBROJD-C4M7s-PX.mjs.map → chunk-LEKBROJD-40MmqFVR.mjs.map} +1 -1
  36. package/dist/{chunk-LEKBROJD-BV7qysHQ.cjs → chunk-LEKBROJD-BOuCaYWZ.cjs} +2 -2
  37. package/dist/{chunk-LEKBROJD-BV7qysHQ.cjs.map → chunk-LEKBROJD-BOuCaYWZ.cjs.map} +1 -1
  38. package/dist/{chunk-VPADYNBD-BjZe1tD9.mjs → chunk-VPADYNBD-CcJWKfTR.mjs} +2 -2
  39. package/dist/{chunk-VPADYNBD-BjZe1tD9.mjs.map → chunk-VPADYNBD-CcJWKfTR.mjs.map} +1 -1
  40. package/dist/{chunk-VPADYNBD-BKFKzPeO.cjs → chunk-VPADYNBD-Dv_QgAVC.cjs} +2 -2
  41. package/dist/{chunk-VPADYNBD-BKFKzPeO.cjs.map → chunk-VPADYNBD-Dv_QgAVC.cjs.map} +1 -1
  42. package/dist/{chunk-YCLFEX4T-DP11uU0Z.cjs → chunk-YCLFEX4T-avh3YO2X.cjs} +2 -2
  43. package/dist/{chunk-YCLFEX4T-DP11uU0Z.cjs.map → chunk-YCLFEX4T-avh3YO2X.cjs.map} +1 -1
  44. package/dist/{chunk-YCLFEX4T-TM9LeSmH.mjs → chunk-YCLFEX4T-o8BLwdav.mjs} +2 -2
  45. package/dist/{chunk-YCLFEX4T-TM9LeSmH.mjs.map → chunk-YCLFEX4T-o8BLwdav.mjs.map} +1 -1
  46. package/dist/{column-XT6UFXNQ-BiWBbIze.mjs → column-XT6UFXNQ-B0u7YTPY.mjs} +2 -2
  47. package/dist/{column-XT6UFXNQ-BiWBbIze.mjs.map → column-XT6UFXNQ-B0u7YTPY.mjs.map} +1 -1
  48. package/dist/{column-XT6UFXNQ-BKCKn8Kt.cjs → column-XT6UFXNQ-DLWSsnxl.cjs} +2 -2
  49. package/dist/{column-XT6UFXNQ-BKCKn8Kt.cjs.map → column-XT6UFXNQ-DLWSsnxl.cjs.map} +1 -1
  50. package/dist/{comm-VV2LDX2J-DZPbcsx6.mjs → comm-VV2LDX2J-BhJh06i1.mjs} +2 -2
  51. package/dist/{comm-VV2LDX2J-DZPbcsx6.mjs.map → comm-VV2LDX2J-BhJh06i1.mjs.map} +1 -1
  52. package/dist/{comm-VV2LDX2J-KS8sKJiM.cjs → comm-VV2LDX2J-CucvwyJU.cjs} +2 -2
  53. package/dist/{comm-VV2LDX2J-KS8sKJiM.cjs.map → comm-VV2LDX2J-CucvwyJU.cjs.map} +1 -1
  54. package/dist/config.cjs +1 -1
  55. package/dist/config.mjs +1 -1
  56. package/dist/{cp-BISAAS7A-mMaN142c.mjs → cp-BISAAS7A-CZ4E_4rS.mjs} +2 -2
  57. package/dist/{cp-BISAAS7A-mMaN142c.mjs.map → cp-BISAAS7A-CZ4E_4rS.mjs.map} +1 -1
  58. package/dist/{cp-BISAAS7A-C7iyygW6.cjs → cp-BISAAS7A-DgKkNzN0.cjs} +2 -2
  59. package/dist/{cp-BISAAS7A-C7iyygW6.cjs.map → cp-BISAAS7A-DgKkNzN0.cjs.map} +1 -1
  60. package/dist/{cut-OKARJCCV-DsZL_hAR.mjs → cut-OKARJCCV-BfbdJDAw.mjs} +3 -3
  61. package/dist/{cut-OKARJCCV-DsZL_hAR.mjs.map → cut-OKARJCCV-BfbdJDAw.mjs.map} +1 -1
  62. package/dist/{cut-OKARJCCV-B2g61y_K.cjs → cut-OKARJCCV-C2UIR_QJ.cjs} +3 -3
  63. package/dist/{cut-OKARJCCV-B2g61y_K.cjs.map → cut-OKARJCCV-C2UIR_QJ.cjs.map} +1 -1
  64. package/dist/{diff-MWJFIG7X-2NZsc000.mjs → diff-MWJFIG7X-CO905_f4.mjs} +2 -2
  65. package/dist/{diff-MWJFIG7X-2NZsc000.mjs.map → diff-MWJFIG7X-CO905_f4.mjs.map} +1 -1
  66. package/dist/{diff-MWJFIG7X-DkKded0v.cjs → diff-MWJFIG7X-Du4if8Y6.cjs} +2 -2
  67. package/dist/{diff-MWJFIG7X-DkKded0v.cjs.map → diff-MWJFIG7X-Du4if8Y6.cjs.map} +1 -1
  68. package/dist/{dist-Bc-S2RCv.mjs → dist-56KPmQ4p.mjs} +6 -2
  69. package/dist/dist-56KPmQ4p.mjs.map +1 -0
  70. package/dist/{dist-CZOTxy6V.cjs → dist-CILghkjJ.cjs} +17 -1
  71. package/dist/{dist-Bc-S2RCv.mjs.map → dist-CILghkjJ.cjs.map} +1 -1
  72. package/dist/{du-572XNP42-hqTlcZtr.mjs → du-572XNP42-CYPQ3yPv.mjs} +2 -2
  73. package/dist/{du-572XNP42-hqTlcZtr.mjs.map → du-572XNP42-CYPQ3yPv.mjs.map} +1 -1
  74. package/dist/{du-572XNP42-De4eLmjc.cjs → du-572XNP42-CzfZBQPI.cjs} +2 -2
  75. package/dist/{du-572XNP42-De4eLmjc.cjs.map → du-572XNP42-CzfZBQPI.cjs.map} +1 -1
  76. package/dist/{env-36M5BO7M-CeHLsR2L.mjs → env-36M5BO7M-CTytw_zH.mjs} +2 -2
  77. package/dist/{env-36M5BO7M-CeHLsR2L.mjs.map → env-36M5BO7M-CTytw_zH.mjs.map} +1 -1
  78. package/dist/{env-36M5BO7M-ZhEOWJvv.cjs → env-36M5BO7M-DXmMT9-z.cjs} +2 -2
  79. package/dist/{env-36M5BO7M-ZhEOWJvv.cjs.map → env-36M5BO7M-DXmMT9-z.cjs.map} +1 -1
  80. package/dist/{expand-JSPG6VOP-BlVu_4fo.cjs → expand-JSPG6VOP-D3CgeKTi.cjs} +2 -2
  81. package/dist/{expand-JSPG6VOP-BlVu_4fo.cjs.map → expand-JSPG6VOP-D3CgeKTi.cjs.map} +1 -1
  82. package/dist/{expand-JSPG6VOP-DwXfkyUC.mjs → expand-JSPG6VOP-DZDJ_Njc.mjs} +2 -2
  83. package/dist/{expand-JSPG6VOP-DwXfkyUC.mjs.map → expand-JSPG6VOP-DZDJ_Njc.mjs.map} +1 -1
  84. package/dist/{expr-5JAACS4X-Du0xEimU.mjs → expr-5JAACS4X-9-B1uf7c.mjs} +2 -2
  85. package/dist/{expr-5JAACS4X-Du0xEimU.mjs.map → expr-5JAACS4X-9-B1uf7c.mjs.map} +1 -1
  86. package/dist/{expr-5JAACS4X-FYbQ0i7J.cjs → expr-5JAACS4X-D4SgmPpg.cjs} +2 -2
  87. package/dist/{expr-5JAACS4X-FYbQ0i7J.cjs.map → expr-5JAACS4X-D4SgmPpg.cjs.map} +1 -1
  88. package/dist/{find-INTH3OLC-B6jdIAUb.cjs → find-INTH3OLC-BBgx3ZPV.cjs} +3 -3
  89. package/dist/{find-INTH3OLC-B6jdIAUb.cjs.map → find-INTH3OLC-BBgx3ZPV.cjs.map} +1 -1
  90. package/dist/{find-INTH3OLC-znjS0yIy.mjs → find-INTH3OLC-DnYSEuRy.mjs} +3 -3
  91. package/dist/{find-INTH3OLC-znjS0yIy.mjs.map → find-INTH3OLC-DnYSEuRy.mjs.map} +1 -1
  92. package/dist/{fold-4TQNYMSW-CbFz-CXV.mjs → fold-4TQNYMSW-CNB5CBY4.mjs} +2 -2
  93. package/dist/{fold-4TQNYMSW-CbFz-CXV.mjs.map → fold-4TQNYMSW-CNB5CBY4.mjs.map} +1 -1
  94. package/dist/{fold-4TQNYMSW-BGAKLKVd.cjs → fold-4TQNYMSW-CVnRCsKw.cjs} +2 -2
  95. package/dist/{fold-4TQNYMSW-BGAKLKVd.cjs.map → fold-4TQNYMSW-CVnRCsKw.cjs.map} +1 -1
  96. package/dist/{grep-V3LQVMRQ-B2SsFur5.cjs → grep-V3LQVMRQ-6nG_gpr9.cjs} +4 -4
  97. package/dist/{grep-V3LQVMRQ-B2SsFur5.cjs.map → grep-V3LQVMRQ-6nG_gpr9.cjs.map} +1 -1
  98. package/dist/{grep-V3LQVMRQ-Ds_PYHKU.mjs → grep-V3LQVMRQ-D0Fdt3a2.mjs} +4 -4
  99. package/dist/{grep-V3LQVMRQ-Ds_PYHKU.mjs.map → grep-V3LQVMRQ-D0Fdt3a2.mjs.map} +1 -1
  100. package/dist/{gzip-O5ASJAFY-ChXaWkpa.cjs → gzip-O5ASJAFY-B111V8sz.cjs} +2 -2
  101. package/dist/{gzip-O5ASJAFY-ChXaWkpa.cjs.map → gzip-O5ASJAFY-B111V8sz.cjs.map} +1 -1
  102. package/dist/{gzip-O5ASJAFY-DCdKkN1u.mjs → gzip-O5ASJAFY-BoHs6pxs.mjs} +2 -2
  103. package/dist/{gzip-O5ASJAFY-DCdKkN1u.mjs.map → gzip-O5ASJAFY-BoHs6pxs.mjs.map} +1 -1
  104. package/dist/{head-442HYESI-sBXxnmV8.mjs → head-442HYESI-BtW1-Iyc.mjs} +2 -2
  105. package/dist/{head-442HYESI-sBXxnmV8.mjs.map → head-442HYESI-BtW1-Iyc.mjs.map} +1 -1
  106. package/dist/{head-442HYESI-bwZwXEo6.cjs → head-442HYESI-D-v4sIdN.cjs} +2 -2
  107. package/dist/{head-442HYESI-bwZwXEo6.cjs.map → head-442HYESI-D-v4sIdN.cjs.map} +1 -1
  108. package/dist/{help-HZ6M2CKN-ChtOM3bi.cjs → help-HZ6M2CKN-CWsVnczD.cjs} +2 -2
  109. package/dist/{help-HZ6M2CKN-ChtOM3bi.cjs.map → help-HZ6M2CKN-CWsVnczD.cjs.map} +1 -1
  110. package/dist/{help-HZ6M2CKN-8IX-B75c.mjs → help-HZ6M2CKN-DO-OHWh9.mjs} +2 -2
  111. package/dist/{help-HZ6M2CKN-8IX-B75c.mjs.map → help-HZ6M2CKN-DO-OHWh9.mjs.map} +1 -1
  112. package/dist/{html-to-markdown-JW4MSQZO-OTByOYjB.mjs → html-to-markdown-JW4MSQZO-CNnQ3TCO.mjs} +3 -3
  113. package/dist/{html-to-markdown-JW4MSQZO-OTByOYjB.mjs.map → html-to-markdown-JW4MSQZO-CNnQ3TCO.mjs.map} +1 -1
  114. package/dist/{html-to-markdown-JW4MSQZO-Dn43kQwJ.cjs → html-to-markdown-JW4MSQZO-D4dUJm7a.cjs} +3 -3
  115. package/dist/{html-to-markdown-JW4MSQZO-Dn43kQwJ.cjs.map → html-to-markdown-JW4MSQZO-D4dUJm7a.cjs.map} +1 -1
  116. package/dist/{join-TBRGI3LQ-WbTRLkpF.cjs → join-TBRGI3LQ-68DKyoLC.cjs} +2 -2
  117. package/dist/{join-TBRGI3LQ-WbTRLkpF.cjs.map → join-TBRGI3LQ-68DKyoLC.cjs.map} +1 -1
  118. package/dist/{join-TBRGI3LQ-vrOut6ob.mjs → join-TBRGI3LQ-UE_CiRfA.mjs} +2 -2
  119. package/dist/{join-TBRGI3LQ-vrOut6ob.mjs.map → join-TBRGI3LQ-UE_CiRfA.mjs.map} +1 -1
  120. package/dist/{jq-4XLYLOS5-BchBfx-i.cjs → jq-4XLYLOS5-B_GVasbP.cjs} +4 -4
  121. package/dist/{jq-4XLYLOS5-BchBfx-i.cjs.map → jq-4XLYLOS5-B_GVasbP.cjs.map} +1 -1
  122. package/dist/{jq-4XLYLOS5-CShq6xaG.mjs → jq-4XLYLOS5-DBGdKUnt.mjs} +4 -4
  123. package/dist/{jq-4XLYLOS5-CShq6xaG.mjs.map → jq-4XLYLOS5-DBGdKUnt.mjs.map} +1 -1
  124. package/dist/{js-exec-N5KEZBH7-CsDbHl0T.mjs → js-exec-N5KEZBH7-CueDSg1w.mjs} +3 -3
  125. package/dist/{js-exec-N5KEZBH7-CsDbHl0T.mjs.map → js-exec-N5KEZBH7-CueDSg1w.mjs.map} +1 -1
  126. package/dist/{js-exec-N5KEZBH7-D6K7ZFDI.cjs → js-exec-N5KEZBH7-J6rAtpQI.cjs} +3 -3
  127. package/dist/{js-exec-N5KEZBH7-D6K7ZFDI.cjs.map → js-exec-N5KEZBH7-J6rAtpQI.cjs.map} +1 -1
  128. package/dist/{lib-CstiAq_N.cjs → lib-D1yAorZ5.cjs} +2 -2
  129. package/dist/{lib-CstiAq_N.cjs.map → lib-D1yAorZ5.cjs.map} +1 -1
  130. package/dist/{lib-CEm5-FFB.mjs → lib-ZoQBlq9F.mjs} +2 -2
  131. package/dist/{lib-CEm5-FFB.mjs.map → lib-ZoQBlq9F.mjs.map} +1 -1
  132. package/dist/{ln-4LGSXXGD-CPu-LYx6.mjs → ln-4LGSXXGD-B6Rw4OsF.mjs} +2 -2
  133. package/dist/{ln-4LGSXXGD-CPu-LYx6.mjs.map → ln-4LGSXXGD-B6Rw4OsF.mjs.map} +1 -1
  134. package/dist/{ln-4LGSXXGD-BncpeOY6.cjs → ln-4LGSXXGD-CJ0nwQcr.cjs} +2 -2
  135. package/dist/{ln-4LGSXXGD-BncpeOY6.cjs.map → ln-4LGSXXGD-CJ0nwQcr.cjs.map} +1 -1
  136. package/dist/{ls-ZJGQER7M-DOzWDIN-.cjs → ls-ZJGQER7M-CuwsTYNY.cjs} +2 -2
  137. package/dist/{ls-ZJGQER7M-DOzWDIN-.cjs.map → ls-ZJGQER7M-CuwsTYNY.cjs.map} +1 -1
  138. package/dist/{ls-ZJGQER7M-DzXZOH27.mjs → ls-ZJGQER7M-D0ZeR5Hf.mjs} +2 -2
  139. package/dist/{ls-ZJGQER7M-DzXZOH27.mjs.map → ls-ZJGQER7M-D0ZeR5Hf.mjs.map} +1 -1
  140. package/dist/{lzma-BvsaZQAj.cjs → lzma-CpBYUs0o.cjs} +2 -2
  141. package/dist/{lzma-BvsaZQAj.cjs.map → lzma-CpBYUs0o.cjs.map} +1 -1
  142. package/dist/{md5sum-SPU24VSG-D8gSLlAq.cjs → md5sum-SPU24VSG-BDoAFf8p.cjs} +3 -3
  143. package/dist/{md5sum-SPU24VSG-D8gSLlAq.cjs.map → md5sum-SPU24VSG-BDoAFf8p.cjs.map} +1 -1
  144. package/dist/{md5sum-SPU24VSG-xyfkpvOC.mjs → md5sum-SPU24VSG-CdBvCzcj.mjs} +3 -3
  145. package/dist/{md5sum-SPU24VSG-xyfkpvOC.mjs.map → md5sum-SPU24VSG-CdBvCzcj.mjs.map} +1 -1
  146. package/dist/{mkdir-MEPGZOB6-MndQLtL1.mjs → mkdir-MEPGZOB6-C18ktfaI.mjs} +2 -2
  147. package/dist/{mkdir-MEPGZOB6-MndQLtL1.mjs.map → mkdir-MEPGZOB6-C18ktfaI.mjs.map} +1 -1
  148. package/dist/{mkdir-MEPGZOB6-DW9SaUbA.cjs → mkdir-MEPGZOB6-C1EyJgfu.cjs} +2 -2
  149. package/dist/{mkdir-MEPGZOB6-DW9SaUbA.cjs.map → mkdir-MEPGZOB6-C1EyJgfu.cjs.map} +1 -1
  150. package/dist/{mv-W5BIQ646-CZV8v37y.cjs → mv-W5BIQ646-D18EGIFW.cjs} +2 -2
  151. package/dist/{mv-W5BIQ646-CZV8v37y.cjs.map → mv-W5BIQ646-D18EGIFW.cjs.map} +1 -1
  152. package/dist/{mv-W5BIQ646-AJGQd0yV.mjs → mv-W5BIQ646-D1urtYzS.mjs} +2 -2
  153. package/dist/{mv-W5BIQ646-AJGQd0yV.mjs.map → mv-W5BIQ646-D1urtYzS.mjs.map} +1 -1
  154. package/dist/{nl-WSDW7I4O-8ML5PnOt.mjs → nl-WSDW7I4O-BpFwWZOK.mjs} +2 -2
  155. package/dist/{nl-WSDW7I4O-8ML5PnOt.mjs.map → nl-WSDW7I4O-BpFwWZOK.mjs.map} +1 -1
  156. package/dist/{nl-WSDW7I4O-LeEXpCZI.cjs → nl-WSDW7I4O-GCHPH5sQ.cjs} +2 -2
  157. package/dist/{nl-WSDW7I4O-LeEXpCZI.cjs.map → nl-WSDW7I4O-GCHPH5sQ.cjs.map} +1 -1
  158. package/dist/{od-WOKFDJTP-YqNKNBbo.cjs → od-WOKFDJTP-BcRKEr17.cjs} +2 -2
  159. package/dist/{od-WOKFDJTP-YqNKNBbo.cjs.map → od-WOKFDJTP-BcRKEr17.cjs.map} +1 -1
  160. package/dist/{od-WOKFDJTP-C0ONnTil.mjs → od-WOKFDJTP-Dn-lpq7V.mjs} +2 -2
  161. package/dist/{od-WOKFDJTP-C0ONnTil.mjs.map → od-WOKFDJTP-Dn-lpq7V.mjs.map} +1 -1
  162. package/dist/{paste-7JC6S4DX-CPrcpu4D.mjs → paste-7JC6S4DX-BcVdbFWz.mjs} +2 -2
  163. package/dist/{paste-7JC6S4DX-CPrcpu4D.mjs.map → paste-7JC6S4DX-BcVdbFWz.mjs.map} +1 -1
  164. package/dist/{paste-7JC6S4DX-Buo8QFuR.cjs → paste-7JC6S4DX-PvYC1rpU.cjs} +2 -2
  165. package/dist/{paste-7JC6S4DX-Buo8QFuR.cjs.map → paste-7JC6S4DX-PvYC1rpU.cjs.map} +1 -1
  166. package/dist/{printf-TWGXF445-X1UIAzry.mjs → printf-TWGXF445-BXeGrCnQ.mjs} +3 -3
  167. package/dist/{printf-TWGXF445-X1UIAzry.mjs.map → printf-TWGXF445-BXeGrCnQ.mjs.map} +1 -1
  168. package/dist/{printf-TWGXF445-By2gUYeG.cjs → printf-TWGXF445-l7krwHgi.cjs} +3 -3
  169. package/dist/{printf-TWGXF445-By2gUYeG.cjs.map → printf-TWGXF445-l7krwHgi.cjs.map} +1 -1
  170. package/dist/{python3-POMOR4OA-D3CJMgUq.cjs → python3-POMOR4OA-CfX_2op9.cjs} +3 -3
  171. package/dist/{python3-POMOR4OA-D3CJMgUq.cjs.map → python3-POMOR4OA-CfX_2op9.cjs.map} +1 -1
  172. package/dist/{python3-POMOR4OA-l8C6ZEN-.mjs → python3-POMOR4OA-CfaK3zCx.mjs} +3 -3
  173. package/dist/{python3-POMOR4OA-l8C6ZEN-.mjs.map → python3-POMOR4OA-CfaK3zCx.mjs.map} +1 -1
  174. package/dist/{rev-5EHFX4EJ-CFKXHMKB.mjs → rev-5EHFX4EJ-1Zjl4Z6o.mjs} +2 -2
  175. package/dist/{rev-5EHFX4EJ-CFKXHMKB.mjs.map → rev-5EHFX4EJ-1Zjl4Z6o.mjs.map} +1 -1
  176. package/dist/{rev-5EHFX4EJ-CAfFMeLJ.cjs → rev-5EHFX4EJ-Db0_ejCf.cjs} +2 -2
  177. package/dist/{rev-5EHFX4EJ-CAfFMeLJ.cjs.map → rev-5EHFX4EJ-Db0_ejCf.cjs.map} +1 -1
  178. package/dist/{rg-S4FXYXWB-DC26zPV7.mjs → rg-S4FXYXWB-DJ2qtBB1.mjs} +3 -3
  179. package/dist/{rg-S4FXYXWB-DC26zPV7.mjs.map → rg-S4FXYXWB-DJ2qtBB1.mjs.map} +1 -1
  180. package/dist/{rg-S4FXYXWB-XWNX6Slb.cjs → rg-S4FXYXWB-DbeP3H10.cjs} +3 -3
  181. package/dist/{rg-S4FXYXWB-XWNX6Slb.cjs.map → rg-S4FXYXWB-DbeP3H10.cjs.map} +1 -1
  182. package/dist/{rm-SSGETQVQ-CKk1S1_b.cjs → rm-SSGETQVQ-BMjMFzRz.cjs} +2 -2
  183. package/dist/{rm-SSGETQVQ-CKk1S1_b.cjs.map → rm-SSGETQVQ-BMjMFzRz.cjs.map} +1 -1
  184. package/dist/{rm-SSGETQVQ-MJ4TSPv2.mjs → rm-SSGETQVQ-V0BnfRi0.mjs} +2 -2
  185. package/dist/{rm-SSGETQVQ-MJ4TSPv2.mjs.map → rm-SSGETQVQ-V0BnfRi0.mjs.map} +1 -1
  186. package/dist/{rmdir-OC4ZLPYA-O8j6gE0d.mjs → rmdir-OC4ZLPYA-5Q765SYg.mjs} +2 -2
  187. package/dist/{rmdir-OC4ZLPYA-O8j6gE0d.mjs.map → rmdir-OC4ZLPYA-5Q765SYg.mjs.map} +1 -1
  188. package/dist/{rmdir-OC4ZLPYA-BEa2ydVB.cjs → rmdir-OC4ZLPYA-DAOccpAD.cjs} +2 -2
  189. package/dist/{rmdir-OC4ZLPYA-BEa2ydVB.cjs.map → rmdir-OC4ZLPYA-DAOccpAD.cjs.map} +1 -1
  190. package/dist/run.cjs +1 -1
  191. package/dist/run.mjs +1 -1
  192. package/dist/{sed-S5UIK574-B6Enx8H9.cjs → sed-S5UIK574-blXWd6eY.cjs} +2 -2
  193. package/dist/{sed-S5UIK574-B6Enx8H9.cjs.map → sed-S5UIK574-blXWd6eY.cjs.map} +1 -1
  194. package/dist/{sed-S5UIK574-B9K5T9Gg.mjs → sed-S5UIK574-vOjvbyVo.mjs} +2 -2
  195. package/dist/{sed-S5UIK574-B9K5T9Gg.mjs.map → sed-S5UIK574-vOjvbyVo.mjs.map} +1 -1
  196. package/dist/{sha1sum-2PTOAFR6-BUGBKovb.mjs → sha1sum-2PTOAFR6-Bk3Qz-OF.mjs} +3 -3
  197. package/dist/{sha1sum-2PTOAFR6-BUGBKovb.mjs.map → sha1sum-2PTOAFR6-Bk3Qz-OF.mjs.map} +1 -1
  198. package/dist/{sha1sum-2PTOAFR6-DH54EIA2.cjs → sha1sum-2PTOAFR6-CGwyIzMP.cjs} +3 -3
  199. package/dist/{sha1sum-2PTOAFR6-DH54EIA2.cjs.map → sha1sum-2PTOAFR6-CGwyIzMP.cjs.map} +1 -1
  200. package/dist/{sha256sum-NS7D3IXX-BXsOvWgJ.mjs → sha256sum-NS7D3IXX-CDQ1iVAa.mjs} +3 -3
  201. package/dist/{sha256sum-NS7D3IXX-BXsOvWgJ.mjs.map → sha256sum-NS7D3IXX-CDQ1iVAa.mjs.map} +1 -1
  202. package/dist/{sha256sum-NS7D3IXX-e2P3jK9R.cjs → sha256sum-NS7D3IXX-Dt67rmvi.cjs} +3 -3
  203. package/dist/{sha256sum-NS7D3IXX-e2P3jK9R.cjs.map → sha256sum-NS7D3IXX-Dt67rmvi.cjs.map} +1 -1
  204. package/dist/{sleep-X22JJINO-BHYQ6CRj.cjs → sleep-X22JJINO-BCV1Blsb.cjs} +2 -2
  205. package/dist/{sleep-X22JJINO-BHYQ6CRj.cjs.map → sleep-X22JJINO-BCV1Blsb.cjs.map} +1 -1
  206. package/dist/{sleep-X22JJINO-CNx95Odz.mjs → sleep-X22JJINO-BjphnKtr.mjs} +2 -2
  207. package/dist/{sleep-X22JJINO-CNx95Odz.mjs.map → sleep-X22JJINO-BjphnKtr.mjs.map} +1 -1
  208. package/dist/{sort-SW2YEO5B-CzHEdzvQ.cjs → sort-SW2YEO5B-DaF9R8Ij.cjs} +3 -3
  209. package/dist/{sort-SW2YEO5B-CzHEdzvQ.cjs.map → sort-SW2YEO5B-DaF9R8Ij.cjs.map} +1 -1
  210. package/dist/{sort-SW2YEO5B-BFciT7VC.mjs → sort-SW2YEO5B-FW-TmBuO.mjs} +3 -3
  211. package/dist/{sort-SW2YEO5B-BFciT7VC.mjs.map → sort-SW2YEO5B-FW-TmBuO.mjs.map} +1 -1
  212. package/dist/{split-4KKZZXXE-Di6qyS32.mjs → split-4KKZZXXE-CbDDm0aZ.mjs} +2 -2
  213. package/dist/{split-4KKZZXXE-Di6qyS32.mjs.map → split-4KKZZXXE-CbDDm0aZ.mjs.map} +1 -1
  214. package/dist/{split-4KKZZXXE-9BtDzDqm.cjs → split-4KKZZXXE-CqfBZOkf.cjs} +2 -2
  215. package/dist/{split-4KKZZXXE-9BtDzDqm.cjs.map → split-4KKZZXXE-CqfBZOkf.cjs.map} +1 -1
  216. package/dist/{sqlite3-CGOEFJAO-BW5MpoI3.cjs → sqlite3-CGOEFJAO-Cs1NHPH2.cjs} +3 -3
  217. package/dist/{sqlite3-CGOEFJAO-BW5MpoI3.cjs.map → sqlite3-CGOEFJAO-Cs1NHPH2.cjs.map} +1 -1
  218. package/dist/{sqlite3-CGOEFJAO-BcjjxxUW.mjs → sqlite3-CGOEFJAO-DVO1GR7-.mjs} +3 -3
  219. package/dist/{sqlite3-CGOEFJAO-BcjjxxUW.mjs.map → sqlite3-CGOEFJAO-DVO1GR7-.mjs.map} +1 -1
  220. package/dist/{start-BK3nhRpQ.cjs → start-Duf73uYt.cjs} +890 -493
  221. package/dist/start-Duf73uYt.cjs.map +1 -0
  222. package/dist/{start-C4wv93sk.mjs → start-uh5HeXO7.mjs} +888 -491
  223. package/dist/start-uh5HeXO7.mjs.map +1 -0
  224. package/dist/start.cjs +1 -1
  225. package/dist/start.mjs +1 -1
  226. package/dist/{strings-6WDHLGMX-C3QEqVZ2.cjs → strings-6WDHLGMX-j4LlNrD7.cjs} +2 -2
  227. package/dist/{strings-6WDHLGMX-C3QEqVZ2.cjs.map → strings-6WDHLGMX-j4LlNrD7.cjs.map} +1 -1
  228. package/dist/{strings-6WDHLGMX-BGNd9Jnz.mjs → strings-6WDHLGMX-mAmpgdcp.mjs} +2 -2
  229. package/dist/{strings-6WDHLGMX-BGNd9Jnz.mjs.map → strings-6WDHLGMX-mAmpgdcp.mjs.map} +1 -1
  230. package/dist/{tac-2STMMJYW-DqQqxcFS.cjs → tac-2STMMJYW-DBlKawA6.cjs} +2 -2
  231. package/dist/{tac-2STMMJYW-DqQqxcFS.cjs.map → tac-2STMMJYW-DBlKawA6.cjs.map} +1 -1
  232. package/dist/{tac-2STMMJYW-B7m5nT_3.mjs → tac-2STMMJYW-LJzQXDiC.mjs} +2 -2
  233. package/dist/{tac-2STMMJYW-B7m5nT_3.mjs.map → tac-2STMMJYW-LJzQXDiC.mjs.map} +1 -1
  234. package/dist/{tail-R4PCA2C4-DH6gSUW-.cjs → tail-R4PCA2C4-CkYWt7AT.cjs} +2 -2
  235. package/dist/{tail-R4PCA2C4-DH6gSUW-.cjs.map → tail-R4PCA2C4-CkYWt7AT.cjs.map} +1 -1
  236. package/dist/{tail-R4PCA2C4-CGLtGuty.mjs → tail-R4PCA2C4-DVHafA4G.mjs} +2 -2
  237. package/dist/{tail-R4PCA2C4-CGLtGuty.mjs.map → tail-R4PCA2C4-DVHafA4G.mjs.map} +1 -1
  238. package/dist/{tar-STHHZTZ6-GiF_Tj9-.cjs → tar-STHHZTZ6-0Lcg-EEq.cjs} +5 -5
  239. package/dist/{tar-STHHZTZ6-GiF_Tj9-.cjs.map → tar-STHHZTZ6-0Lcg-EEq.cjs.map} +1 -1
  240. package/dist/{tar-STHHZTZ6-BZuw5hJf.mjs → tar-STHHZTZ6-B2fZ7gmU.mjs} +4 -4
  241. package/dist/{tar-STHHZTZ6-BZuw5hJf.mjs.map → tar-STHHZTZ6-B2fZ7gmU.mjs.map} +1 -1
  242. package/dist/{tee-YUZ2FKCJ-B93RpmpZ.cjs → tee-YUZ2FKCJ-CPPfFJWv.cjs} +2 -2
  243. package/dist/{tee-YUZ2FKCJ-B93RpmpZ.cjs.map → tee-YUZ2FKCJ-CPPfFJWv.cjs.map} +1 -1
  244. package/dist/{tee-YUZ2FKCJ-CpJ4jxtK.mjs → tee-YUZ2FKCJ-ah1azGJz.mjs} +2 -2
  245. package/dist/{tee-YUZ2FKCJ-CpJ4jxtK.mjs.map → tee-YUZ2FKCJ-ah1azGJz.mjs.map} +1 -1
  246. package/dist/{time-D4LNBSWX-DJH78faJ.cjs → time-D4LNBSWX-CpsOIMLa.cjs} +2 -2
  247. package/dist/{time-D4LNBSWX-DJH78faJ.cjs.map → time-D4LNBSWX-CpsOIMLa.cjs.map} +1 -1
  248. package/dist/{time-D4LNBSWX-DGtUFoCp.mjs → time-D4LNBSWX-CusTRd8B.mjs} +2 -2
  249. package/dist/{time-D4LNBSWX-DGtUFoCp.mjs.map → time-D4LNBSWX-CusTRd8B.mjs.map} +1 -1
  250. package/dist/{timeout-YDCRSLPQ-RFRaGU4-.cjs → timeout-YDCRSLPQ-CoAt8uiE.cjs} +2 -2
  251. package/dist/{timeout-YDCRSLPQ-RFRaGU4-.cjs.map → timeout-YDCRSLPQ-CoAt8uiE.cjs.map} +1 -1
  252. package/dist/{timeout-YDCRSLPQ-BzPojgUO.mjs → timeout-YDCRSLPQ-DoUdlcdt.mjs} +2 -2
  253. package/dist/{timeout-YDCRSLPQ-BzPojgUO.mjs.map → timeout-YDCRSLPQ-DoUdlcdt.mjs.map} +1 -1
  254. package/dist/{touch-UA33VN3N-Bdpir4J9.mjs → touch-UA33VN3N-CRv7gV38.mjs} +2 -2
  255. package/dist/{touch-UA33VN3N-Bdpir4J9.mjs.map → touch-UA33VN3N-CRv7gV38.mjs.map} +1 -1
  256. package/dist/{touch-UA33VN3N-jB0YrmZH.cjs → touch-UA33VN3N-HTKQWA1_.cjs} +2 -2
  257. package/dist/{touch-UA33VN3N-jB0YrmZH.cjs.map → touch-UA33VN3N-HTKQWA1_.cjs.map} +1 -1
  258. package/dist/{tr-36LHWFRQ-BYPZKSzP.mjs → tr-36LHWFRQ-BcnGm8g2.mjs} +2 -2
  259. package/dist/{tr-36LHWFRQ-BYPZKSzP.mjs.map → tr-36LHWFRQ-BcnGm8g2.mjs.map} +1 -1
  260. package/dist/{tr-36LHWFRQ-CQxVomNK.cjs → tr-36LHWFRQ-DftLvdee.cjs} +2 -2
  261. package/dist/{tr-36LHWFRQ-CQxVomNK.cjs.map → tr-36LHWFRQ-DftLvdee.cjs.map} +1 -1
  262. package/dist/{tree-YLD52CNT-CyPjMXqy.mjs → tree-YLD52CNT-DUBwODaW.mjs} +2 -2
  263. package/dist/{tree-YLD52CNT-CyPjMXqy.mjs.map → tree-YLD52CNT-DUBwODaW.mjs.map} +1 -1
  264. package/dist/{tree-YLD52CNT-DiidjPWy.cjs → tree-YLD52CNT-D_PAz7EX.cjs} +2 -2
  265. package/dist/{tree-YLD52CNT-DiidjPWy.cjs.map → tree-YLD52CNT-D_PAz7EX.cjs.map} +1 -1
  266. package/dist/{unexpand-CADSA4VO-W5dP1zPs.cjs → unexpand-CADSA4VO-CfYJJmhX.cjs} +2 -2
  267. package/dist/{unexpand-CADSA4VO-W5dP1zPs.cjs.map → unexpand-CADSA4VO-CfYJJmhX.cjs.map} +1 -1
  268. package/dist/{unexpand-CADSA4VO-CnCIS3mM.mjs → unexpand-CADSA4VO-SbQJjkPi.mjs} +2 -2
  269. package/dist/{unexpand-CADSA4VO-CnCIS3mM.mjs.map → unexpand-CADSA4VO-SbQJjkPi.mjs.map} +1 -1
  270. package/dist/{uniq-XSIZR6PB-B3i-98kn.cjs → uniq-XSIZR6PB-DDwGvBBo.cjs} +3 -3
  271. package/dist/{uniq-XSIZR6PB-B3i-98kn.cjs.map → uniq-XSIZR6PB-DDwGvBBo.cjs.map} +1 -1
  272. package/dist/{uniq-XSIZR6PB-DbyhYt6T.mjs → uniq-XSIZR6PB-Db-7G8oM.mjs} +3 -3
  273. package/dist/{uniq-XSIZR6PB-DbyhYt6T.mjs.map → uniq-XSIZR6PB-Db-7G8oM.mjs.map} +1 -1
  274. package/dist/{wc-LF7NU4LA-B98N4IVz.mjs → wc-LF7NU4LA-CVw0uvls.mjs} +3 -3
  275. package/dist/{wc-LF7NU4LA-B98N4IVz.mjs.map → wc-LF7NU4LA-CVw0uvls.mjs.map} +1 -1
  276. package/dist/{wc-LF7NU4LA-7g8GX0Io.cjs → wc-LF7NU4LA-J44bhqMY.cjs} +3 -3
  277. package/dist/{wc-LF7NU4LA-7g8GX0Io.cjs.map → wc-LF7NU4LA-J44bhqMY.cjs.map} +1 -1
  278. package/dist/{xan-Y6WF3IRG-D61ETw5M.mjs → xan-Y6WF3IRG-CezpKEM3.mjs} +6 -6
  279. package/dist/{xan-Y6WF3IRG-D61ETw5M.mjs.map → xan-Y6WF3IRG-CezpKEM3.mjs.map} +1 -1
  280. package/dist/{xan-Y6WF3IRG-BUr6NQvo.cjs → xan-Y6WF3IRG-ZzJdxQL3.cjs} +6 -6
  281. package/dist/{xan-Y6WF3IRG-BUr6NQvo.cjs.map → xan-Y6WF3IRG-ZzJdxQL3.cjs.map} +1 -1
  282. package/dist/{xan-view-HDVKHFC2-DlCotayo.cjs → xan-view-HDVKHFC2-BlgvLAMN.cjs} +3 -3
  283. package/dist/{xan-view-HDVKHFC2-DlCotayo.cjs.map → xan-view-HDVKHFC2-BlgvLAMN.cjs.map} +1 -1
  284. package/dist/{xan-view-HDVKHFC2-hmvkd8LP.mjs → xan-view-HDVKHFC2-DcryN7CS.mjs} +3 -3
  285. package/dist/{xan-view-HDVKHFC2-hmvkd8LP.mjs.map → xan-view-HDVKHFC2-DcryN7CS.mjs.map} +1 -1
  286. package/dist/{xargs-MGZPH7AX-W4GobWGz.cjs → xargs-MGZPH7AX-BK6KkY-B.cjs} +2 -2
  287. package/dist/{xargs-MGZPH7AX-W4GobWGz.cjs.map → xargs-MGZPH7AX-BK6KkY-B.cjs.map} +1 -1
  288. package/dist/{xargs-MGZPH7AX-DhgYJD4l.mjs → xargs-MGZPH7AX-C0hQisEr.mjs} +2 -2
  289. package/dist/{xargs-MGZPH7AX-DhgYJD4l.mjs.map → xargs-MGZPH7AX-C0hQisEr.mjs.map} +1 -1
  290. package/dist/{yq-4QJW3EQG-C90d61wX.cjs → yq-4QJW3EQG-DGvTE4cS.cjs} +3 -3
  291. package/dist/{yq-4QJW3EQG-C90d61wX.cjs.map → yq-4QJW3EQG-DGvTE4cS.cjs.map} +1 -1
  292. package/dist/{yq-4QJW3EQG-D_bl6qRw.mjs → yq-4QJW3EQG-o9JH6Llp.mjs} +3 -3
  293. package/dist/{yq-4QJW3EQG-D_bl6qRw.mjs.map → yq-4QJW3EQG-o9JH6Llp.mjs.map} +1 -1
  294. package/package.json +4 -5
  295. package/dist/dist-CZOTxy6V.cjs.map +0 -1
  296. package/dist/start-BK3nhRpQ.cjs.map +0 -1
  297. package/dist/start-C4wv93sk.mjs.map +0 -1
@@ -1,4 +1,4 @@
1
- import { $ as CreateProjectArtifactResponseSchema, $n as mapUserOrganization, $t as ProjectSourceResourcesSchema, A as PublicHttpUrlError, An as WorkflowSummaryDetailResponseSchema, At as ListProjectMetricsResponseSchema, B as AgentSummarySchema, Bn as buildCredentialInstanceLabel, Bt as PresignChatAttachmentRequestSchema, C as defaultSchedulerPlugin, Cn as UpdateProjectSettingsRequestSchema, Ct as ListCredentialsResponseSchema, D as discoverGraphqlApp, Dn as UserAvatarSchema, Dt as ListProjectDeploymentsResponseSchema, E as decodeOAuthState, En as UserAvatarPatchSchema, Et as ListOrganizationsResponseSchema, F as AcceptOrganizationInvitationResponseSchema, Fn as WorkspaceTriggerListResponseSchema, Ft as OpenApiDiscoverResponseSchema, G as CreateApiKeyRequestSchema, Gn as listenPortFromPublicUrl, Gt as PresignProjectSourceResponseSchema, H as AppSlugAvailabilityQuerySchema, Hn as deriveCredentialInstanceSlug, Ht as PresignOrgLogoRequestSchema, I as ActiveOrganizationResponseSchema, In as WorkspaceTriggerOverviewSchema, It as OrganizationSidebarBrandingPatchSchema, J as CreateCredentialsResponseSchema, Jn as mapProject, Jt as ProjectReachabilityResponseSchema, K as CreateApiKeyResponseSchema, Kn as mapOrganizationInvitation, Kt as PresignUserAvatarRequestSchema, L as AgentMemoryFileSummarySchema, Ln as WorkspaceTriggerRunListResponseSchema, Lt as OrganizationSidebarBrandingSchema, M as readCredentialInstanceSecret, Mn as WorkflowSummarySchema, Mt as McpDiscoverRequestSchema, N as setCredentialInstanceSecret, Nn as WorkspaceTriggerDetailSchema, Nt as McpDiscoverResponseSchema, O as discoverMcpApp, On as UserPreferencesPatchSchema, Ot as ListProjectFilesResponseSchema, P as ACTIVE_ORG_HEADER, Pn as WorkspaceTriggerFileSchema, Pt as OpenApiDiscoverRequestSchema, Q as CreateOrganizationResponseSchema, Qn as mapProjectSettings, Qt as ProjectSlugAvailabilityResponseSchema, R as AgentSummaryDetailResponseSchema, Rn as agentMemoryFileId, Rt as PLATFORM_RESOURCE_UNSUPPORTED_TEXT, S as createJobQueue, Sn as UpdateProjectRequestSchema, St as ListAppsResponseSchema, T as completeMcpOAuthConnect, Tn as UploadProjectSourceResponseSchema, Tt as ListOrganizationMembersResponseSchema, U as AppSlugAvailabilityResponseSchema, Un as displayCredentialAppName, Ut as PresignOrgLogoResponseSchema, V as AgentWorkspaceFileSummarySchema, Vn as chatAttachmentExtension, Vt as PresignChatAttachmentResponseSchema, W as CompleteProjectArtifactResponseSchema, Wn as isAllowedChatAttachmentMediaType, Wt as PresignProjectSourceRequestSchema, X as CreateCustomAppResponseSchema, Xn as mapProjectDeployment, Xt as ProjectSettingsResponseSchema, Y as CreateCustomAppRequestSchema, Yn as mapProjectArtifact, Yt as ProjectResponseSchema, Z as CreateOrganizationRequestSchema, Zn as mapProjectMember, Zt as ProjectSlugAvailabilityQuerySchema, _ as orgLogoStorageKey, _n as UpdateOrganizationMemberRequestSchema, _t as InviteProjectMembersRequestSchema, a as extractRouteManifestFromArtifact, an as SlugAvailabilityQuerySchema, ar as parseStoredRouteManifest, at as DownloadActiveProjectSourceResponseSchema, b as publicKeystrokeAssetsObjectUrl, bn as UpdateProjectMemberRequestSchema, bt as ListAgentWorkspaceFilesResponseSchema, c as isKeystrokeAssetsOrgLogoPublicUrl, cn as StartMcpOAuthConnectionResultSchema, cr as resolveUniqueCredentialInstanceLabel, ct as GetCustomAppResponseSchema, d as isStorageNotFoundError$1, dn as SubmitMarketingContactResponseSchema, dt as HistoryRunCancelResponseSchema, en as RecentResourceListResponseSchema, er as mergeUserPreferences, et as CreateProjectRequestSchema, f as isUserAvatarStorageKey, fn as SubmitTeamRequestRequestSchema, fr as pingProjectTarget, ft as HistoryRunDetailResponseSchema, gn as UpdateCredentialRequestSchema, gt as InviteOrganizationMembersResponseSchema, h as loadProjectSourceFiles, hn as TriggerRunListQuerySchema, ht as InviteOrganizationMembersRequestSchema, i as ensureKeystrokeAssetsBucket, in as SkillSummarySchema, ir as parseAppSlug, it as DownloadActiveProjectArtifactResponseSchema, j as deleteCredentialInstanceSecret, jn as WorkflowSummaryListResponseSchema, jt as ListProjectsResponseSchema, k as discoverOpenApiApp, kn as UserPreferencesSchema, kt as ListProjectMembersResponseSchema, l as isOrgLogoStorageKey, ln as StoredProjectSourceManifestSchema, lr as validateCredentialValueAgainstFields, lt as GraphqlDiscoverRequestSchema, m as keystrokeAssetsOrgLogoKeyFromPublicUrl, mn as TriggerAttachmentUpdateRequestSchema, mt as HistoryRunListResponseSchema, n as chatAttachmentStorageKey, nn as SkillSummaryDetailResponseSchema, nr as organizationInvitationAcceptPath, nt as DEFAULT_TRIGGER_OVERVIEW_MODEL, o as isChatAttachmentStorageKey, on as SlugAvailabilityResponseSchema, or as projectFileId, ot as ErrorResponseSchema, p as keystrokeAssetsAvatarKeyFromPublicUrl, pn as SubmitTeamRequestResponseSchema, pt as HistoryRunListQuerySchema, q as CreateCredentialsRequestSchema, qn as mapOrganizationMember, qt as PresignUserAvatarResponseSchema, r as createAssetsStorageClient, rn as SkillSummaryListResponseSchema, rr as organizationSlugErrorCodeFromMessage, rt as DeclineOrganizationInvitationResponseSchema, s as isKeystrokeAssetsAvatarPublicUrl, sn as StartMcpOAuthConnectionInputSchema, sr as resolveExternalPlatformOrigin, st as GetCredentialResponseSchema, t as RouteManifestNotFoundError, tn as RecentResourceSchema, tr as normalizeUserPreferences, tt as CreateProjectResponseSchema, u as isStorageBucketNotFoundError, un as SubmitMarketingContactRequestSchema, ur as validationErrorResponse, ut as GraphqlDiscoverResponseSchema, v as projectArtifactKey, vn as UpdateOrganizationMemberResponseSchema, vt as InviteProjectMembersResponseSchema, w as beginMcpOAuthConnect, wn as UploadProjectSourceManifestRequestSchema, wt as ListOrganizationInvitationsResponseSchema, x as userAvatarStorageKey, xn as UpdateProjectMemberResponseSchema, xt as ListApiKeysResponseSchema, y as projectSourceBlobKey, yn as UpdateOrganizationRequestSchema, yt as ListAgentMemoryFilesResponseSchema, z as AgentSummaryListResponseSchema, zn as agentWorkspaceFileId, zt as PROJECT_SLUG_TAKEN_MESSAGE } from "./dist-Bc-S2RCv.mjs";
1
+ import { $ as CreateProjectArtifactResponseSchema, $n as mapProjectMember, $t as ProjectSlugAvailabilityResponseSchema, A as PublicHttpUrlError, An as UserPreferencesPatchSchema, At as ListProjectMembersResponseSchema, B as AgentSummarySchema, Bn as agentMemoryFileId, Bt as PROJECT_SLUG_TAKEN_MESSAGE, C as defaultSchedulerPlugin, Cn as UpdateProjectMemberResponseSchema, Ct as ListAppsResponseSchema, D as discoverGraphqlApp, Dn as UploadProjectSourceResponseSchema, Dt as ListOrganizationsResponseSchema, E as decodeOAuthState, En as UploadProjectSourceManifestRequestSchema, Et as ListOrganizationMembersResponseSchema, F as AcceptOrganizationInvitationResponseSchema, Fn as WorkspaceTriggerDetailSchema, Ft as OpenApiDiscoverRequestSchema, G as CreateApiKeyRequestSchema, Gn as displayCredentialAppName, Gt as PresignProjectSourceRequestSchema, H as AppSlugAvailabilityQuerySchema, Hn as buildCredentialInstanceLabel, Ht as PresignChatAttachmentResponseSchema, I as ActiveOrganizationResponseSchema, In as WorkspaceTriggerFileSchema, It as OpenApiDiscoverResponseSchema, J as CreateCredentialsResponseSchema, Jn as mapOrganizationInvitation, Jt as PresignUserAvatarResponseSchema, K as CreateApiKeyResponseSchema, Kn as isAllowedChatAttachmentMediaType, Kt as PresignProjectSourceResponseSchema, L as AgentMemoryFileSummarySchema, Ln as WorkspaceTriggerListResponseSchema, Lt as OrganizationSidebarBrandingPatchSchema, M as readCredentialInstanceSecret, Mn as WorkflowSummaryDetailResponseSchema, Mt as ListProjectsResponseSchema, N as setCredentialInstanceSecret, Nn as WorkflowSummaryListResponseSchema, Nt as McpDiscoverRequestSchema, O as discoverMcpApp, On as UserAvatarPatchSchema, Ot as ListProjectDeploymentsResponseSchema, P as ACTIVE_ORG_HEADER, Pn as WorkflowSummarySchema, Pt as McpDiscoverResponseSchema, Q as CreateOrganizationResponseSchema, Qn as mapProjectDeployment, Qt as ProjectSlugAvailabilityQuerySchema, R as AgentSummaryDetailResponseSchema, Rn as WorkspaceTriggerOverviewSchema, Rt as OrganizationSidebarBrandingSchema, S as createJobQueue, Sn as UpdateProjectMemberRequestSchema, St as ListApiKeysResponseSchema, T as completeMcpOAuthConnect, Tn as UpdateProjectSettingsRequestSchema, Tt as ListOrganizationInvitationsResponseSchema, U as AppSlugAvailabilityResponseSchema, Un as chatAttachmentExtension, Ut as PresignOrgLogoRequestSchema, V as AgentWorkspaceFileSummarySchema, Vn as agentWorkspaceFileId, Vt as PresignChatAttachmentRequestSchema, W as CompleteProjectArtifactResponseSchema, Wn as deriveCredentialInstanceSlug, Wt as PresignOrgLogoResponseSchema, X as CreateCustomAppResponseSchema, Xn as mapProject, Xt as ProjectResponseSchema, Y as CreateCustomAppRequestSchema, Yn as mapOrganizationMember, Yt as ProjectReachabilityResponseSchema, Z as CreateOrganizationRequestSchema, Zn as mapProjectArtifact, Zt as ProjectSettingsResponseSchema, _ as orgLogoStorageKey, _n as TriggerRunListQuerySchema, _t as InviteOrganizationMembersResponseSchema, a as extractRouteManifestFromArtifact, an as SkillSummaryListResponseSchema, ar as organizationSlugErrorCodeFromMessage, at as DownloadActiveProjectArtifactResponseSchema, b as publicKeystrokeAssetsObjectUrl, bn as UpdateOrganizationMemberResponseSchema, bt as ListAgentMemoryFilesResponseSchema, c as isKeystrokeAssetsOrgLogoPublicUrl, cn as SlugAvailabilityResponseSchema, cr as projectFileId, ct as GetCredentialResponseSchema, d as isStorageNotFoundError$1, dn as StoredProjectSourceManifestSchema, dr as validateCredentialValueAgainstFields, dt as GraphqlDiscoverResponseSchema, en as ProjectSourceResourcesSchema, er as mapProjectSettings, et as CreateProjectRequestSchema, f as isUserAvatarStorageKey, fn as SubmitMarketingContactRequestSchema, fr as validationErrorResponse, ft as HistoryRunCancelResponseSchema, gn as TriggerAttachmentUpdateRequestSchema, gt as InviteOrganizationMembersRequestSchema, h as loadProjectSourceFiles, hn as SubmitTeamRequestResponseSchema, ht as HistoryRunListResponseSchema, i as ensureKeystrokeAssetsBucket, in as SkillSummaryDetailResponseSchema, ir as organizationInvitationAcceptPath, it as DeclineOrganizationInvitationResponseSchema, j as deleteCredentialInstanceSecret, jn as UserPreferencesSchema, jt as ListProjectMetricsResponseSchema, k as discoverOpenApiApp, kn as UserAvatarSchema, kt as ListProjectFilesResponseSchema, l as isOrgLogoStorageKey, ln as StartMcpOAuthConnectionInputSchema, lr as resolveExternalPlatformOrigin, lt as GetCustomAppResponseSchema, m as keystrokeAssetsOrgLogoKeyFromPublicUrl, mn as SubmitTeamRequestRequestSchema, mr as pingProjectTarget, mt as HistoryRunListQuerySchema, n as chatAttachmentStorageKey, nn as RecentResourceListResponseSchema, nr as mergeUserPreferences, nt as DEFAULT_CLOUD_PLATFORM_ORIGIN, o as isChatAttachmentStorageKey, on as SkillSummarySchema, or as parseAppSlug, ot as DownloadActiveProjectSourceResponseSchema, p as keystrokeAssetsAvatarKeyFromPublicUrl, pn as SubmitMarketingContactResponseSchema, pt as HistoryRunDetailResponseSchema, q as CreateCredentialsRequestSchema, qn as listenPortFromPublicUrl, qt as PresignUserAvatarRequestSchema, r as createAssetsStorageClient, rn as RecentResourceSchema, rr as normalizeUserPreferences, rt as DEFAULT_TRIGGER_OVERVIEW_MODEL, s as isKeystrokeAssetsAvatarPublicUrl, sn as SlugAvailabilityQuerySchema, sr as parseStoredRouteManifest, st as ErrorResponseSchema, t as RouteManifestNotFoundError, tn as PublicModelsResponseSchema, tr as mapUserOrganization, tt as CreateProjectResponseSchema, u as isStorageBucketNotFoundError, un as StartMcpOAuthConnectionResultSchema, ur as resolveUniqueCredentialInstanceLabel, ut as GraphqlDiscoverRequestSchema, v as projectArtifactKey, vn as UpdateCredentialRequestSchema, vt as InviteProjectMembersRequestSchema, w as beginMcpOAuthConnect, wn as UpdateProjectRequestSchema, wt as ListCredentialsResponseSchema, x as userAvatarStorageKey, xn as UpdateOrganizationRequestSchema, xt as ListAgentWorkspaceFilesResponseSchema, y as projectSourceBlobKey, yn as UpdateOrganizationMemberRequestSchema, yt as InviteProjectMembersResponseSchema, z as AgentSummaryListResponseSchema, zn as WorkspaceTriggerRunListResponseSchema, zt as PLATFORM_RESOURCE_UNSUPPORTED_TEXT } from "./dist-56KPmQ4p.mjs";
2
2
  import "./chunk-BZUGFHVS-B2NchobP.mjs";
3
3
  import { n as d$4, t as _$1 } from "./chunk-TN7HHBQW-B8PYcKz5.mjs";
4
4
  import { t as withProjectScope } from "./with-project-scope-DWwbN8Qs.mjs";
@@ -22870,43 +22870,43 @@ var tt = [
22870
22870
  },
22871
22871
  {
22872
22872
  name: "cat",
22873
- load: async () => (await import("./cat-TSFMZVYS-nWh0JVcx.mjs")).catCommand
22873
+ load: async () => (await import("./cat-TSFMZVYS-BdLkXDx7.mjs")).catCommand
22874
22874
  },
22875
22875
  {
22876
22876
  name: "printf",
22877
- load: async () => (await import("./printf-TWGXF445-X1UIAzry.mjs")).printfCommand
22877
+ load: async () => (await import("./printf-TWGXF445-BXeGrCnQ.mjs")).printfCommand
22878
22878
  },
22879
22879
  {
22880
22880
  name: "ls",
22881
- load: async () => (await import("./ls-ZJGQER7M-DzXZOH27.mjs")).lsCommand
22881
+ load: async () => (await import("./ls-ZJGQER7M-D0ZeR5Hf.mjs")).lsCommand
22882
22882
  },
22883
22883
  {
22884
22884
  name: "mkdir",
22885
- load: async () => (await import("./mkdir-MEPGZOB6-MndQLtL1.mjs")).mkdirCommand
22885
+ load: async () => (await import("./mkdir-MEPGZOB6-C18ktfaI.mjs")).mkdirCommand
22886
22886
  },
22887
22887
  {
22888
22888
  name: "rmdir",
22889
- load: async () => (await import("./rmdir-OC4ZLPYA-O8j6gE0d.mjs")).rmdirCommand
22889
+ load: async () => (await import("./rmdir-OC4ZLPYA-5Q765SYg.mjs")).rmdirCommand
22890
22890
  },
22891
22891
  {
22892
22892
  name: "touch",
22893
- load: async () => (await import("./touch-UA33VN3N-Bdpir4J9.mjs")).touchCommand
22893
+ load: async () => (await import("./touch-UA33VN3N-CRv7gV38.mjs")).touchCommand
22894
22894
  },
22895
22895
  {
22896
22896
  name: "rm",
22897
- load: async () => (await import("./rm-SSGETQVQ-MJ4TSPv2.mjs")).rmCommand
22897
+ load: async () => (await import("./rm-SSGETQVQ-V0BnfRi0.mjs")).rmCommand
22898
22898
  },
22899
22899
  {
22900
22900
  name: "cp",
22901
- load: async () => (await import("./cp-BISAAS7A-mMaN142c.mjs")).cpCommand
22901
+ load: async () => (await import("./cp-BISAAS7A-CZ4E_4rS.mjs")).cpCommand
22902
22902
  },
22903
22903
  {
22904
22904
  name: "mv",
22905
- load: async () => (await import("./mv-W5BIQ646-AJGQd0yV.mjs")).mvCommand
22905
+ load: async () => (await import("./mv-W5BIQ646-D1urtYzS.mjs")).mvCommand
22906
22906
  },
22907
22907
  {
22908
22908
  name: "ln",
22909
- load: async () => (await import("./ln-4LGSXXGD-CPu-LYx6.mjs")).lnCommand
22909
+ load: async () => (await import("./ln-4LGSXXGD-B6Rw4OsF.mjs")).lnCommand
22910
22910
  },
22911
22911
  {
22912
22912
  name: "chmod",
@@ -22922,15 +22922,15 @@ var tt = [
22922
22922
  },
22923
22923
  {
22924
22924
  name: "head",
22925
- load: async () => (await import("./head-442HYESI-sBXxnmV8.mjs")).headCommand
22925
+ load: async () => (await import("./head-442HYESI-BtW1-Iyc.mjs")).headCommand
22926
22926
  },
22927
22927
  {
22928
22928
  name: "tail",
22929
- load: async () => (await import("./tail-R4PCA2C4-CGLtGuty.mjs")).tailCommand
22929
+ load: async () => (await import("./tail-R4PCA2C4-DVHafA4G.mjs")).tailCommand
22930
22930
  },
22931
22931
  {
22932
22932
  name: "wc",
22933
- load: async () => (await import("./wc-LF7NU4LA-B98N4IVz.mjs")).wcCommand
22933
+ load: async () => (await import("./wc-LF7NU4LA-CVw0uvls.mjs")).wcCommand
22934
22934
  },
22935
22935
  {
22936
22936
  name: "stat",
@@ -22938,95 +22938,95 @@ var tt = [
22938
22938
  },
22939
22939
  {
22940
22940
  name: "grep",
22941
- load: async () => (await import("./grep-V3LQVMRQ-Ds_PYHKU.mjs")).grepCommand
22941
+ load: async () => (await import("./grep-V3LQVMRQ-D0Fdt3a2.mjs")).grepCommand
22942
22942
  },
22943
22943
  {
22944
22944
  name: "fgrep",
22945
- load: async () => (await import("./grep-V3LQVMRQ-Ds_PYHKU.mjs")).fgrepCommand
22945
+ load: async () => (await import("./grep-V3LQVMRQ-D0Fdt3a2.mjs")).fgrepCommand
22946
22946
  },
22947
22947
  {
22948
22948
  name: "egrep",
22949
- load: async () => (await import("./grep-V3LQVMRQ-Ds_PYHKU.mjs")).egrepCommand
22949
+ load: async () => (await import("./grep-V3LQVMRQ-D0Fdt3a2.mjs")).egrepCommand
22950
22950
  },
22951
22951
  {
22952
22952
  name: "rg",
22953
- load: async () => (await import("./rg-S4FXYXWB-DC26zPV7.mjs")).rgCommand
22953
+ load: async () => (await import("./rg-S4FXYXWB-DJ2qtBB1.mjs")).rgCommand
22954
22954
  },
22955
22955
  {
22956
22956
  name: "sed",
22957
- load: async () => (await import("./sed-S5UIK574-B9K5T9Gg.mjs")).sedCommand
22957
+ load: async () => (await import("./sed-S5UIK574-vOjvbyVo.mjs")).sedCommand
22958
22958
  },
22959
22959
  {
22960
22960
  name: "awk",
22961
- load: async () => (await import("./awk2-LA3USKJP-DKj2S8Ek.mjs")).awkCommand2
22961
+ load: async () => (await import("./awk2-LA3USKJP-DGoZBFhJ.mjs")).awkCommand2
22962
22962
  },
22963
22963
  {
22964
22964
  name: "sort",
22965
- load: async () => (await import("./sort-SW2YEO5B-BFciT7VC.mjs")).sortCommand
22965
+ load: async () => (await import("./sort-SW2YEO5B-FW-TmBuO.mjs")).sortCommand
22966
22966
  },
22967
22967
  {
22968
22968
  name: "uniq",
22969
- load: async () => (await import("./uniq-XSIZR6PB-DbyhYt6T.mjs")).uniqCommand
22969
+ load: async () => (await import("./uniq-XSIZR6PB-Db-7G8oM.mjs")).uniqCommand
22970
22970
  },
22971
22971
  {
22972
22972
  name: "comm",
22973
- load: async () => (await import("./comm-VV2LDX2J-DZPbcsx6.mjs")).commCommand
22973
+ load: async () => (await import("./comm-VV2LDX2J-BhJh06i1.mjs")).commCommand
22974
22974
  },
22975
22975
  {
22976
22976
  name: "cut",
22977
- load: async () => (await import("./cut-OKARJCCV-DsZL_hAR.mjs")).cutCommand
22977
+ load: async () => (await import("./cut-OKARJCCV-BfbdJDAw.mjs")).cutCommand
22978
22978
  },
22979
22979
  {
22980
22980
  name: "paste",
22981
- load: async () => (await import("./paste-7JC6S4DX-CPrcpu4D.mjs")).pasteCommand
22981
+ load: async () => (await import("./paste-7JC6S4DX-BcVdbFWz.mjs")).pasteCommand
22982
22982
  },
22983
22983
  {
22984
22984
  name: "tr",
22985
- load: async () => (await import("./tr-36LHWFRQ-BYPZKSzP.mjs")).trCommand
22985
+ load: async () => (await import("./tr-36LHWFRQ-BcnGm8g2.mjs")).trCommand
22986
22986
  },
22987
22987
  {
22988
22988
  name: "rev",
22989
- load: async () => (await import("./rev-5EHFX4EJ-CFKXHMKB.mjs")).rev
22989
+ load: async () => (await import("./rev-5EHFX4EJ-1Zjl4Z6o.mjs")).rev
22990
22990
  },
22991
22991
  {
22992
22992
  name: "nl",
22993
- load: async () => (await import("./nl-WSDW7I4O-8ML5PnOt.mjs")).nl
22993
+ load: async () => (await import("./nl-WSDW7I4O-BpFwWZOK.mjs")).nl
22994
22994
  },
22995
22995
  {
22996
22996
  name: "fold",
22997
- load: async () => (await import("./fold-4TQNYMSW-CbFz-CXV.mjs")).fold
22997
+ load: async () => (await import("./fold-4TQNYMSW-CNB5CBY4.mjs")).fold
22998
22998
  },
22999
22999
  {
23000
23000
  name: "expand",
23001
- load: async () => (await import("./expand-JSPG6VOP-DwXfkyUC.mjs")).expand
23001
+ load: async () => (await import("./expand-JSPG6VOP-DZDJ_Njc.mjs")).expand
23002
23002
  },
23003
23003
  {
23004
23004
  name: "unexpand",
23005
- load: async () => (await import("./unexpand-CADSA4VO-CnCIS3mM.mjs")).unexpand
23005
+ load: async () => (await import("./unexpand-CADSA4VO-SbQJjkPi.mjs")).unexpand
23006
23006
  },
23007
23007
  {
23008
23008
  name: "strings",
23009
- load: async () => (await import("./strings-6WDHLGMX-BGNd9Jnz.mjs")).strings
23009
+ load: async () => (await import("./strings-6WDHLGMX-mAmpgdcp.mjs")).strings
23010
23010
  },
23011
23011
  {
23012
23012
  name: "split",
23013
- load: async () => (await import("./split-4KKZZXXE-Di6qyS32.mjs")).split
23013
+ load: async () => (await import("./split-4KKZZXXE-CbDDm0aZ.mjs")).split
23014
23014
  },
23015
23015
  {
23016
23016
  name: "column",
23017
- load: async () => (await import("./column-XT6UFXNQ-BiWBbIze.mjs")).column
23017
+ load: async () => (await import("./column-XT6UFXNQ-B0u7YTPY.mjs")).column
23018
23018
  },
23019
23019
  {
23020
23020
  name: "join",
23021
- load: async () => (await import("./join-TBRGI3LQ-vrOut6ob.mjs")).join
23021
+ load: async () => (await import("./join-TBRGI3LQ-UE_CiRfA.mjs")).join
23022
23022
  },
23023
23023
  {
23024
23024
  name: "tee",
23025
- load: async () => (await import("./tee-YUZ2FKCJ-CpJ4jxtK.mjs")).teeCommand
23025
+ load: async () => (await import("./tee-YUZ2FKCJ-ah1azGJz.mjs")).teeCommand
23026
23026
  },
23027
23027
  {
23028
23028
  name: "find",
23029
- load: async () => (await import("./find-INTH3OLC-znjS0yIy.mjs")).findCommand
23029
+ load: async () => (await import("./find-INTH3OLC-DnYSEuRy.mjs")).findCommand
23030
23030
  },
23031
23031
  {
23032
23032
  name: "basename",
@@ -23038,19 +23038,19 @@ var tt = [
23038
23038
  },
23039
23039
  {
23040
23040
  name: "tree",
23041
- load: async () => (await import("./tree-YLD52CNT-CyPjMXqy.mjs")).treeCommand
23041
+ load: async () => (await import("./tree-YLD52CNT-DUBwODaW.mjs")).treeCommand
23042
23042
  },
23043
23043
  {
23044
23044
  name: "du",
23045
- load: async () => (await import("./du-572XNP42-hqTlcZtr.mjs")).duCommand
23045
+ load: async () => (await import("./du-572XNP42-CYPQ3yPv.mjs")).duCommand
23046
23046
  },
23047
23047
  {
23048
23048
  name: "env",
23049
- load: async () => (await import("./env-36M5BO7M-CeHLsR2L.mjs")).envCommand
23049
+ load: async () => (await import("./env-36M5BO7M-CTytw_zH.mjs")).envCommand
23050
23050
  },
23051
23051
  {
23052
23052
  name: "printenv",
23053
- load: async () => (await import("./env-36M5BO7M-CeHLsR2L.mjs")).printenvCommand
23053
+ load: async () => (await import("./env-36M5BO7M-CTytw_zH.mjs")).printenvCommand
23054
23054
  },
23055
23055
  {
23056
23056
  name: "alias",
@@ -23066,7 +23066,7 @@ var tt = [
23066
23066
  },
23067
23067
  {
23068
23068
  name: "xargs",
23069
- load: async () => (await import("./xargs-MGZPH7AX-DhgYJD4l.mjs")).xargsCommand
23069
+ load: async () => (await import("./xargs-MGZPH7AX-C0hQisEr.mjs")).xargsCommand
23070
23070
  },
23071
23071
  {
23072
23072
  name: "true",
@@ -23082,23 +23082,23 @@ var tt = [
23082
23082
  },
23083
23083
  {
23084
23084
  name: "bash",
23085
- load: async () => (await import("./bash-YZ33HQZQ-ClnL17Y6.mjs")).bashCommand
23085
+ load: async () => (await import("./bash-YZ33HQZQ-BIELeHiB.mjs")).bashCommand
23086
23086
  },
23087
23087
  {
23088
23088
  name: "sh",
23089
- load: async () => (await import("./bash-YZ33HQZQ-ClnL17Y6.mjs")).shCommand
23089
+ load: async () => (await import("./bash-YZ33HQZQ-BIELeHiB.mjs")).shCommand
23090
23090
  },
23091
23091
  {
23092
23092
  name: "jq",
23093
- load: async () => (await import("./jq-4XLYLOS5-CShq6xaG.mjs")).jqCommand
23093
+ load: async () => (await import("./jq-4XLYLOS5-DBGdKUnt.mjs")).jqCommand
23094
23094
  },
23095
23095
  {
23096
23096
  name: "base64",
23097
- load: async () => (await import("./base64-C2AIWVNC-BQ8hMW4e.mjs")).base64Command
23097
+ load: async () => (await import("./base64-C2AIWVNC-Rl_X_nM-.mjs")).base64Command
23098
23098
  },
23099
23099
  {
23100
23100
  name: "diff",
23101
- load: async () => (await import("./diff-MWJFIG7X-2NZsc000.mjs")).diffCommand
23101
+ load: async () => (await import("./diff-MWJFIG7X-CO905_f4.mjs")).diffCommand
23102
23102
  },
23103
23103
  {
23104
23104
  name: "date",
@@ -23106,15 +23106,15 @@ var tt = [
23106
23106
  },
23107
23107
  {
23108
23108
  name: "sleep",
23109
- load: async () => (await import("./sleep-X22JJINO-CNx95Odz.mjs")).sleepCommand
23109
+ load: async () => (await import("./sleep-X22JJINO-BjphnKtr.mjs")).sleepCommand
23110
23110
  },
23111
23111
  {
23112
23112
  name: "timeout",
23113
- load: async () => (await import("./timeout-YDCRSLPQ-BzPojgUO.mjs")).timeoutCommand
23113
+ load: async () => (await import("./timeout-YDCRSLPQ-DoUdlcdt.mjs")).timeoutCommand
23114
23114
  },
23115
23115
  {
23116
23116
  name: "time",
23117
- load: async () => (await import("./time-D4LNBSWX-DGtUFoCp.mjs")).timeCommand
23117
+ load: async () => (await import("./time-D4LNBSWX-CusTRd8B.mjs")).timeCommand
23118
23118
  },
23119
23119
  {
23120
23120
  name: "seq",
@@ -23122,19 +23122,19 @@ var tt = [
23122
23122
  },
23123
23123
  {
23124
23124
  name: "expr",
23125
- load: async () => (await import("./expr-5JAACS4X-Du0xEimU.mjs")).exprCommand
23125
+ load: async () => (await import("./expr-5JAACS4X-9-B1uf7c.mjs")).exprCommand
23126
23126
  },
23127
23127
  {
23128
23128
  name: "md5sum",
23129
- load: async () => (await import("./md5sum-SPU24VSG-xyfkpvOC.mjs")).md5sumCommand
23129
+ load: async () => (await import("./md5sum-SPU24VSG-CdBvCzcj.mjs")).md5sumCommand
23130
23130
  },
23131
23131
  {
23132
23132
  name: "sha1sum",
23133
- load: async () => (await import("./sha1sum-2PTOAFR6-BUGBKovb.mjs")).sha1sumCommand
23133
+ load: async () => (await import("./sha1sum-2PTOAFR6-Bk3Qz-OF.mjs")).sha1sumCommand
23134
23134
  },
23135
23135
  {
23136
23136
  name: "sha256sum",
23137
- load: async () => (await import("./sha256sum-NS7D3IXX-BXsOvWgJ.mjs")).sha256sumCommand
23137
+ load: async () => (await import("./sha256sum-NS7D3IXX-CDQ1iVAa.mjs")).sha256sumCommand
23138
23138
  },
23139
23139
  {
23140
23140
  name: "file",
@@ -23142,11 +23142,11 @@ var tt = [
23142
23142
  },
23143
23143
  {
23144
23144
  name: "html-to-markdown",
23145
- load: async () => (await import("./html-to-markdown-JW4MSQZO-OTByOYjB.mjs")).htmlToMarkdownCommand
23145
+ load: async () => (await import("./html-to-markdown-JW4MSQZO-CNnQ3TCO.mjs")).htmlToMarkdownCommand
23146
23146
  },
23147
23147
  {
23148
23148
  name: "help",
23149
- load: async () => (await import("./help-HZ6M2CKN-8IX-B75c.mjs")).helpCommand
23149
+ load: async () => (await import("./help-HZ6M2CKN-DO-OHWh9.mjs")).helpCommand
23150
23150
  },
23151
23151
  {
23152
23152
  name: "which",
@@ -23154,7 +23154,7 @@ var tt = [
23154
23154
  },
23155
23155
  {
23156
23156
  name: "tac",
23157
- load: async () => (await import("./tac-2STMMJYW-B7m5nT_3.mjs")).tac
23157
+ load: async () => (await import("./tac-2STMMJYW-LJzQXDiC.mjs")).tac
23158
23158
  },
23159
23159
  {
23160
23160
  name: "hostname",
@@ -23166,49 +23166,49 @@ var tt = [
23166
23166
  },
23167
23167
  {
23168
23168
  name: "od",
23169
- load: async () => (await import("./od-WOKFDJTP-C0ONnTil.mjs")).od
23169
+ load: async () => (await import("./od-WOKFDJTP-Dn-lpq7V.mjs")).od
23170
23170
  },
23171
23171
  {
23172
23172
  name: "gzip",
23173
- load: async () => (await import("./gzip-O5ASJAFY-DCdKkN1u.mjs")).gzipCommand
23173
+ load: async () => (await import("./gzip-O5ASJAFY-BoHs6pxs.mjs")).gzipCommand
23174
23174
  },
23175
23175
  {
23176
23176
  name: "gunzip",
23177
- load: async () => (await import("./gzip-O5ASJAFY-DCdKkN1u.mjs")).gunzipCommand
23177
+ load: async () => (await import("./gzip-O5ASJAFY-BoHs6pxs.mjs")).gunzipCommand
23178
23178
  },
23179
23179
  {
23180
23180
  name: "zcat",
23181
- load: async () => (await import("./gzip-O5ASJAFY-DCdKkN1u.mjs")).zcatCommand
23181
+ load: async () => (await import("./gzip-O5ASJAFY-BoHs6pxs.mjs")).zcatCommand
23182
23182
  }
23183
23183
  ];
23184
23184
  (typeof __BROWSER__ > "u" || !__BROWSER__) && (tt.push({
23185
23185
  name: "tar",
23186
- load: async () => (await import("./tar-STHHZTZ6-BZuw5hJf.mjs")).tarCommand
23186
+ load: async () => (await import("./tar-STHHZTZ6-B2fZ7gmU.mjs")).tarCommand
23187
23187
  }), tt.push({
23188
23188
  name: "yq",
23189
- load: async () => (await import("./yq-4QJW3EQG-D_bl6qRw.mjs")).yqCommand
23189
+ load: async () => (await import("./yq-4QJW3EQG-o9JH6Llp.mjs")).yqCommand
23190
23190
  }), tt.push({
23191
23191
  name: "xan",
23192
- load: async () => (await import("./xan-Y6WF3IRG-D61ETw5M.mjs")).xanCommand
23192
+ load: async () => (await import("./xan-Y6WF3IRG-CezpKEM3.mjs")).xanCommand
23193
23193
  }), tt.push({
23194
23194
  name: "sqlite3",
23195
- load: async () => (await import("./sqlite3-CGOEFJAO-BcjjxxUW.mjs")).sqlite3Command
23195
+ load: async () => (await import("./sqlite3-CGOEFJAO-DVO1GR7-.mjs")).sqlite3Command
23196
23196
  }));
23197
23197
  var Yt = [];
23198
23198
  (typeof __BROWSER__ > "u" || !__BROWSER__) && (Yt.push({
23199
23199
  name: "python3",
23200
- load: async () => (await import("./python3-POMOR4OA-l8C6ZEN-.mjs")).python3Command
23200
+ load: async () => (await import("./python3-POMOR4OA-CfaK3zCx.mjs")).python3Command
23201
23201
  }), Yt.push({
23202
23202
  name: "python",
23203
- load: async () => (await import("./python3-POMOR4OA-l8C6ZEN-.mjs")).pythonCommand
23203
+ load: async () => (await import("./python3-POMOR4OA-CfaK3zCx.mjs")).pythonCommand
23204
23204
  }));
23205
23205
  var Qt = [];
23206
23206
  (typeof __BROWSER__ > "u" || !__BROWSER__) && (Qt.push({
23207
23207
  name: "js-exec",
23208
- load: async () => (await import("./js-exec-N5KEZBH7-CsDbHl0T.mjs")).jsExecCommand
23208
+ load: async () => (await import("./js-exec-N5KEZBH7-CueDSg1w.mjs")).jsExecCommand
23209
23209
  }), Qt.push({
23210
23210
  name: "node",
23211
- load: async () => (await import("./js-exec-N5KEZBH7-CsDbHl0T.mjs")).nodeStubCommand
23211
+ load: async () => (await import("./js-exec-N5KEZBH7-CueDSg1w.mjs")).nodeStubCommand
23212
23212
  }));
23213
23213
  new TextEncoder();
23214
23214
  Object.freeze({
@@ -23624,6 +23624,576 @@ Object.freeze({
23624
23624
  ]).keys()].sort();
23625
23625
  new TextDecoder("utf-8", { fatal: !0 });
23626
23626
  //#endregion
23627
+ //#region ../../packages/agent/dist/schemas-DqPtvoUX.mjs
23628
+ function capabilitiesFromGatewayTags(tags) {
23629
+ const set = new Set(tags ?? []);
23630
+ return {
23631
+ images: set.has("vision"),
23632
+ files: set.has("file-input")
23633
+ };
23634
+ }
23635
+ const DEFAULT_GATEWAY_ORIGIN = "https://ai-gateway.vercel.sh";
23636
+ /** Resolve the model catalog URL for pricing metadata (via platform proxy when configured). */
23637
+ function resolveGatewayCatalogUrl(modelId) {
23638
+ const baseUrl = resolveGatewayBaseUrl();
23639
+ const apiKey = process.env.AI_GATEWAY_API_KEY?.trim();
23640
+ if (baseUrl && apiKey) return {
23641
+ url: `${baseUrl.replace(/\/$/, "")}/models/${modelId}`,
23642
+ headers: {
23643
+ accept: "application/json",
23644
+ authorization: `Bearer ${apiKey}`
23645
+ },
23646
+ cacheKey: baseUrl
23647
+ };
23648
+ return {
23649
+ url: `${DEFAULT_GATEWAY_ORIGIN}/v1/models/${modelId}`,
23650
+ headers: { accept: "application/json" },
23651
+ cacheKey: DEFAULT_GATEWAY_ORIGIN
23652
+ };
23653
+ }
23654
+ function resolveGatewayBaseUrl() {
23655
+ const configured = process.env.AI_GATEWAY_BASE_URL?.trim();
23656
+ if (configured) return configured.replace(/\/$/, "");
23657
+ const platformUrl = process.env.PLATFORM_URL?.trim();
23658
+ if (!platformUrl || !process.env.AI_GATEWAY_API_KEY?.trim()) return;
23659
+ const projectId = getProjectScopeId();
23660
+ return `${platformUrl.replace(/\/$/, "")}/internal/projects/${encodeURIComponent(projectId)}/llm`;
23661
+ }
23662
+ const AGENT_MODEL_ID_PATTERN = /^[a-z0-9-]+\/.+/;
23663
+ const AgentModelIdSchema = z.custom((value) => typeof value === "string" && AGENT_MODEL_ID_PATTERN.test(value), "model must be vendor/model-id");
23664
+ const GatewayModelPricingSchema = z.object({
23665
+ input: z.string().optional(),
23666
+ output: z.string().optional(),
23667
+ input_cache_read: z.string().optional()
23668
+ });
23669
+ const GatewayModelResponseSchema = z.object({
23670
+ id: z.string().min(1),
23671
+ name: z.string().optional(),
23672
+ type: z.string().optional(),
23673
+ context_window: z.number().int().positive().optional(),
23674
+ max_tokens: z.number().int().positive().optional(),
23675
+ tags: z.array(z.string()).optional(),
23676
+ pricing: GatewayModelPricingSchema.optional()
23677
+ });
23678
+ function parseGatewayModelResponse(body) {
23679
+ const parsed = GatewayModelResponseSchema.safeParse(body);
23680
+ return parsed.success ? parsed.data : void 0;
23681
+ }
23682
+ function pricePerMillion(value) {
23683
+ if (!value) return 0;
23684
+ const perToken = Number(value);
23685
+ if (!Number.isFinite(perToken) || perToken <= 0) return 0;
23686
+ return perToken * 1e6;
23687
+ }
23688
+ const gatewayModelCache = /* @__PURE__ */ new Map();
23689
+ const gatewayModelPending = /* @__PURE__ */ new Map();
23690
+ function gatewayModelCacheKey(modelId, catalog) {
23691
+ return `${catalog.cacheKey}::${modelId}`;
23692
+ }
23693
+ async function fetchGatewayModelMetadata(modelId) {
23694
+ const catalog = resolveGatewayCatalogUrl(modelId);
23695
+ const cacheKey = gatewayModelCacheKey(modelId, catalog);
23696
+ const cached = gatewayModelCache.get(cacheKey);
23697
+ if (cached) return cached.status === "found" ? {
23698
+ pricing: cached.pricing,
23699
+ capabilities: cached.capabilities
23700
+ } : void 0;
23701
+ const pending = gatewayModelPending.get(cacheKey);
23702
+ if (pending) return pending;
23703
+ const request = (async () => {
23704
+ try {
23705
+ const response = await fetch(catalog.url, { headers: catalog.headers });
23706
+ if (!response.ok) {
23707
+ gatewayModelCache.set(cacheKey, { status: "missing" });
23708
+ return;
23709
+ }
23710
+ const raw = parseGatewayModelResponse(await response.json());
23711
+ if (!raw || raw.type && raw.type !== "language") {
23712
+ gatewayModelCache.set(cacheKey, { status: "missing" });
23713
+ return;
23714
+ }
23715
+ const capabilities = capabilitiesFromGatewayTags(raw.tags);
23716
+ const pricing = {
23717
+ inputPerMillion: pricePerMillion(raw.pricing?.input),
23718
+ outputPerMillion: pricePerMillion(raw.pricing?.output),
23719
+ cacheReadPerMillion: pricePerMillion(raw.pricing?.input_cache_read)
23720
+ };
23721
+ gatewayModelCache.set(cacheKey, {
23722
+ status: "found",
23723
+ pricing,
23724
+ capabilities
23725
+ });
23726
+ return {
23727
+ pricing,
23728
+ capabilities
23729
+ };
23730
+ } catch {
23731
+ gatewayModelCache.set(cacheKey, { status: "missing" });
23732
+ return;
23733
+ } finally {
23734
+ gatewayModelPending.delete(cacheKey);
23735
+ }
23736
+ })();
23737
+ gatewayModelPending.set(cacheKey, request);
23738
+ return request;
23739
+ }
23740
+ /** Cached gateway catalog lookup for model multimodal capabilities. */
23741
+ async function resolveModelCapabilities(modelId) {
23742
+ return (await fetchGatewayModelMetadata(modelId))?.capabilities ?? {
23743
+ images: false,
23744
+ files: false
23745
+ };
23746
+ }
23747
+ const ThinkingLevelSchema = z.enum([
23748
+ "provider-default",
23749
+ "none",
23750
+ "minimal",
23751
+ "low",
23752
+ "medium",
23753
+ "high",
23754
+ "xhigh"
23755
+ ]);
23756
+ z.object({
23757
+ systemPrompt: z.string(),
23758
+ model: AgentModelIdSchema,
23759
+ thinkingLevel: ThinkingLevelSchema.optional()
23760
+ });
23761
+ //#endregion
23762
+ //#region ../../packages/shared/dist/agent-paths.mjs
23763
+ function agentMemoryStoragePrefix(agentId) {
23764
+ return `agents/${agentId}/memory/`;
23765
+ }
23766
+ function agentMemoryFileStorageKey(agentId, relativePath) {
23767
+ return `${agentMemoryStoragePrefix(agentId)}${relativePath}`;
23768
+ }
23769
+ //#endregion
23770
+ //#region ../../packages/memory/dist/index.mjs
23771
+ function resolveMemoryRelativePath(memoryDir, inputPath) {
23772
+ const normalized = normalize(inputPath.replace(/^\.\/+/, ""));
23773
+ if (normalized.startsWith("..") || normalized.includes("../")) throw new Error(`Path must stay within the memory directory: ${inputPath}`);
23774
+ const absolute = resolve(memoryDir, normalized);
23775
+ const rel = relative(memoryDir, absolute);
23776
+ if (rel.startsWith("..") || rel.includes("..")) throw new Error(`Path must stay within the memory directory: ${inputPath}`);
23777
+ return rel.length > 0 ? rel : basename(absolute);
23778
+ }
23779
+ function isBrowsableMemoryFile(relativePath) {
23780
+ if (relativePath.startsWith(".")) return false;
23781
+ if (relativePath.endsWith(".db")) return false;
23782
+ return relativePath.endsWith(".md");
23783
+ }
23784
+ /** Sort and filter relative memory paths for stable listing (disk or storage). */
23785
+ function orderMemoryRelativePaths(relativePaths) {
23786
+ const browsable = relativePaths.filter(isBrowsableMemoryFile);
23787
+ const topLevel = ["MEMORY.md", "USER.md"];
23788
+ const ordered = [];
23789
+ for (const name of topLevel) if (browsable.includes(name)) ordered.push(name);
23790
+ const archive = browsable.filter((p) => p.startsWith("archive/")).sort();
23791
+ ordered.push(...archive);
23792
+ return ordered;
23793
+ }
23794
+ const memoryPathSchema = z.string().describe("Relative path under the memory dir (e.g. MEMORY.md, USER.md, archive/note.md).");
23795
+ const searchScopeSchema = z.enum([
23796
+ "archive",
23797
+ "sessions",
23798
+ "all"
23799
+ ]).describe("Where to look: all (default) = archive/*.md plus every saved session transcript across all past chats; archive = long-form notes only; sessions = all past session transcripts only. USER.md and MEMORY.md are in the system snapshot — use read for those.");
23800
+ const searchQuerySchema = z.string().describe("Keywords to find across archive notes and/or all past session transcripts. Plain words, case-insensitive; multiple words match if ANY word appears. Use when the user references an earlier chat or prior decision. Returns ranked snippets — use read on a hit path for the full file.");
23801
+ z.object({
23802
+ action: z.enum([
23803
+ "list",
23804
+ "read",
23805
+ "write",
23806
+ "edit",
23807
+ "search"
23808
+ ]).describe("list: archive/*.md filenames; read: { path }; write: { path, content }; edit: { path, oldText, newText }; search: { query, scope?, limit?, full? }."),
23809
+ path: memoryPathSchema.optional(),
23810
+ content: z.string().describe("Full file content (write).").optional(),
23811
+ oldText: z.string().describe("Exact text to replace, first match (edit).").optional(),
23812
+ newText: z.string().describe("Replacement text; empty string deletes oldText (edit).").optional(),
23813
+ query: searchQuerySchema.optional(),
23814
+ scope: searchScopeSchema.optional(),
23815
+ limit: z.number().int().min(1).max(50).optional(),
23816
+ full: z.boolean().describe("When true, return complete archive note files for archive hits, ignored for session hits (search).").optional()
23817
+ });
23818
+ new AsyncLocalStorage();
23819
+ [
23820
+ "You are an expert chat title generator.",
23821
+ "",
23822
+ "Given the conversation so far (initial user message), generate a short, clear, and natural title (max 6-8 words) that captures the main topic or goal.",
23823
+ "",
23824
+ "Rules:",
23825
+ "- Be specific and descriptive; avoid vague titles like \"Conversation\" or \"Question\"",
23826
+ "- Prefer action-oriented or outcome-focused phrasing when possible",
23827
+ "- Use title case",
23828
+ "- Keep it under 65 characters when possible",
23829
+ "- Do not use quotes or emojis",
23830
+ "- Return ONLY the title, nothing else",
23831
+ "",
23832
+ "Examples:",
23833
+ "",
23834
+ "User: How do I set up a new Next.js project with TypeScript?",
23835
+ "→ Setting Up Next.js Project with TypeScript",
23836
+ "",
23837
+ "User: Help me debug this React hook that's causing infinite re-renders. Here's the code...",
23838
+ "→ Debugging Infinite Re-render in React Hook",
23839
+ "",
23840
+ "User: Write a cold email sequence for fundraising from YC alums",
23841
+ "→ YC Alumni Fundraising Cold Email Sequence"
23842
+ ].join("\n");
23843
+ const STATIC_MODEL_IDS = new Set([
23844
+ "alibaba/qwen-3-14b",
23845
+ "alibaba/qwen-3-235b",
23846
+ "alibaba/qwen-3-30b",
23847
+ "alibaba/qwen-3-32b",
23848
+ "alibaba/qwen-3.6-max-preview",
23849
+ "alibaba/qwen3-235b-a22b-thinking",
23850
+ "alibaba/qwen3-coder",
23851
+ "alibaba/qwen3-coder-30b-a3b",
23852
+ "alibaba/qwen3-coder-next",
23853
+ "alibaba/qwen3-coder-plus",
23854
+ "alibaba/qwen3-embedding-0.6b",
23855
+ "alibaba/qwen3-embedding-4b",
23856
+ "alibaba/qwen3-embedding-8b",
23857
+ "alibaba/qwen3-max",
23858
+ "alibaba/qwen3-max-preview",
23859
+ "alibaba/qwen3-max-thinking",
23860
+ "alibaba/qwen3-next-80b-a3b-instruct",
23861
+ "alibaba/qwen3-next-80b-a3b-thinking",
23862
+ "alibaba/qwen3-vl-235b-a22b-instruct",
23863
+ "alibaba/qwen3-vl-instruct",
23864
+ "alibaba/qwen3-vl-thinking",
23865
+ "alibaba/qwen3.5-flash",
23866
+ "alibaba/qwen3.5-plus",
23867
+ "alibaba/qwen3.6-27b",
23868
+ "alibaba/qwen3.6-plus",
23869
+ "alibaba/qwen3.7-max",
23870
+ "alibaba/qwen3.7-plus",
23871
+ "alibaba/wan-v2.5-t2v-preview",
23872
+ "alibaba/wan-v2.6-i2v",
23873
+ "alibaba/wan-v2.6-i2v-flash",
23874
+ "alibaba/wan-v2.6-r2v",
23875
+ "alibaba/wan-v2.6-r2v-flash",
23876
+ "alibaba/wan-v2.6-t2v",
23877
+ "amazon/nova-2-lite",
23878
+ "amazon/nova-lite",
23879
+ "amazon/nova-micro",
23880
+ "amazon/nova-pro",
23881
+ "amazon/titan-embed-text-v2",
23882
+ "anthropic/claude-3-haiku",
23883
+ "anthropic/claude-3.5-haiku",
23884
+ "anthropic/claude-haiku-4.5",
23885
+ "anthropic/claude-opus-4",
23886
+ "anthropic/claude-opus-4.1",
23887
+ "anthropic/claude-opus-4.5",
23888
+ "anthropic/claude-opus-4.6",
23889
+ "anthropic/claude-opus-4.7",
23890
+ "anthropic/claude-opus-4.8",
23891
+ "anthropic/claude-sonnet-4",
23892
+ "anthropic/claude-sonnet-4.5",
23893
+ "anthropic/claude-sonnet-4.6",
23894
+ "arcee-ai/trinity-large-preview",
23895
+ "arcee-ai/trinity-large-thinking",
23896
+ "arcee-ai/trinity-mini",
23897
+ "bfl/flux-2-flex",
23898
+ "bfl/flux-2-klein-4b",
23899
+ "bfl/flux-2-klein-9b",
23900
+ "bfl/flux-2-max",
23901
+ "bfl/flux-2-pro",
23902
+ "bfl/flux-kontext-max",
23903
+ "bfl/flux-kontext-pro",
23904
+ "bfl/flux-pro-1.0-fill",
23905
+ "bfl/flux-pro-1.1",
23906
+ "bfl/flux-pro-1.1-ultra",
23907
+ "bytedance/seed-1.6",
23908
+ "bytedance/seed-1.8",
23909
+ "bytedance/seedance-2.0",
23910
+ "bytedance/seedance-2.0-fast",
23911
+ "bytedance/seedance-v1.0-pro",
23912
+ "bytedance/seedance-v1.0-pro-fast",
23913
+ "bytedance/seedance-v1.5-pro",
23914
+ "bytedance/seedream-4.0",
23915
+ "bytedance/seedream-4.5",
23916
+ "bytedance/seedream-5.0-lite",
23917
+ "cohere/command-a",
23918
+ "cohere/embed-v4.0",
23919
+ "cohere/rerank-v3.5",
23920
+ "cohere/rerank-v4-fast",
23921
+ "cohere/rerank-v4-pro",
23922
+ "deepseek/deepseek-r1",
23923
+ "deepseek/deepseek-v3",
23924
+ "deepseek/deepseek-v3.1",
23925
+ "deepseek/deepseek-v3.1-terminus",
23926
+ "deepseek/deepseek-v3.2",
23927
+ "deepseek/deepseek-v3.2-thinking",
23928
+ "deepseek/deepseek-v4-flash",
23929
+ "deepseek/deepseek-v4-pro",
23930
+ "google/gemini-2.5-flash",
23931
+ "google/gemini-2.5-flash-image",
23932
+ "google/gemini-2.5-flash-lite",
23933
+ "google/gemini-2.5-pro",
23934
+ "google/gemini-3-flash",
23935
+ "google/gemini-3-pro-image",
23936
+ "google/gemini-3-pro-preview",
23937
+ "google/gemini-3.1-flash-image",
23938
+ "google/gemini-3.1-flash-image-preview",
23939
+ "google/gemini-3.1-flash-lite",
23940
+ "google/gemini-3.1-flash-lite-image",
23941
+ "google/gemini-3.1-flash-lite-preview",
23942
+ "google/gemini-3.1-pro-preview",
23943
+ "google/gemini-3.5-flash",
23944
+ "google/gemini-embedding-001",
23945
+ "google/gemini-embedding-2",
23946
+ "google/gemma-4-26b-a4b-it",
23947
+ "google/gemma-4-31b-it",
23948
+ "google/imagen-4.0-fast-generate-001",
23949
+ "google/imagen-4.0-generate-001",
23950
+ "google/imagen-4.0-ultra-generate-001",
23951
+ "google/text-embedding-005",
23952
+ "google/text-multilingual-embedding-002",
23953
+ "google/veo-3.0-fast-generate-001",
23954
+ "google/veo-3.0-generate-001",
23955
+ "google/veo-3.1-fast-generate-001",
23956
+ "google/veo-3.1-generate-001",
23957
+ "inception/mercury-2",
23958
+ "inception/mercury-coder-small",
23959
+ "interfaze/interfaze-beta",
23960
+ "klingai/kling-v2.5-turbo-i2v",
23961
+ "klingai/kling-v2.5-turbo-t2v",
23962
+ "klingai/kling-v2.6-i2v",
23963
+ "klingai/kling-v2.6-motion-control",
23964
+ "klingai/kling-v2.6-t2v",
23965
+ "klingai/kling-v3.0-i2v",
23966
+ "klingai/kling-v3.0-motion-control",
23967
+ "klingai/kling-v3.0-t2v",
23968
+ "kwaipilot/kat-coder-pro-v1",
23969
+ "kwaipilot/kat-coder-pro-v2",
23970
+ "meituan/longcat-flash-chat",
23971
+ "meituan/longcat-flash-thinking-2601",
23972
+ "meta/llama-3.1-70b",
23973
+ "meta/llama-3.1-8b",
23974
+ "meta/llama-3.2-11b",
23975
+ "meta/llama-3.2-1b",
23976
+ "meta/llama-3.2-3b",
23977
+ "meta/llama-3.2-90b",
23978
+ "meta/llama-3.3-70b",
23979
+ "meta/llama-4-maverick",
23980
+ "meta/llama-4-scout",
23981
+ "minimax/minimax-m2",
23982
+ "minimax/minimax-m2.1",
23983
+ "minimax/minimax-m2.1-lightning",
23984
+ "minimax/minimax-m2.5",
23985
+ "minimax/minimax-m2.5-highspeed",
23986
+ "minimax/minimax-m2.7",
23987
+ "minimax/minimax-m2.7-highspeed",
23988
+ "minimax/minimax-m3",
23989
+ "mistral/codestral",
23990
+ "mistral/codestral-embed",
23991
+ "mistral/devstral-2",
23992
+ "mistral/devstral-small",
23993
+ "mistral/devstral-small-2",
23994
+ "mistral/magistral-medium",
23995
+ "mistral/magistral-small",
23996
+ "mistral/ministral-14b",
23997
+ "mistral/ministral-3b",
23998
+ "mistral/ministral-8b",
23999
+ "mistral/mistral-embed",
24000
+ "mistral/mistral-large-3",
24001
+ "mistral/mistral-medium",
24002
+ "mistral/mistral-medium-3.5",
24003
+ "mistral/mistral-nemo",
24004
+ "mistral/mistral-small",
24005
+ "mistral/pixtral-12b",
24006
+ "mistral/pixtral-large",
24007
+ "moonshotai/kimi-k2",
24008
+ "moonshotai/kimi-k2-thinking",
24009
+ "moonshotai/kimi-k2.5",
24010
+ "moonshotai/kimi-k2.6",
24011
+ "moonshotai/kimi-k2.7-code",
24012
+ "moonshotai/kimi-k2.7-code-highspeed",
24013
+ "morph/morph-v3-fast",
24014
+ "morph/morph-v3-large",
24015
+ "nvidia/nemotron-3-nano-30b-a3b",
24016
+ "nvidia/nemotron-3-super-120b-a12b",
24017
+ "nvidia/nemotron-3-ultra-550b-a55b",
24018
+ "nvidia/nemotron-nano-12b-v2-vl",
24019
+ "nvidia/nemotron-nano-9b-v2",
24020
+ "openai/gpt-3.5-turbo",
24021
+ "openai/gpt-3.5-turbo-instruct",
24022
+ "openai/gpt-4-turbo",
24023
+ "openai/gpt-4.1",
24024
+ "openai/gpt-4.1-mini",
24025
+ "openai/gpt-4.1-nano",
24026
+ "openai/gpt-4o",
24027
+ "openai/gpt-4o-mini",
24028
+ "openai/gpt-4o-mini-search-preview",
24029
+ "openai/gpt-4o-mini-transcribe",
24030
+ "openai/gpt-4o-transcribe",
24031
+ "openai/gpt-5",
24032
+ "openai/gpt-5-chat",
24033
+ "openai/gpt-5-codex",
24034
+ "openai/gpt-5-mini",
24035
+ "openai/gpt-5-nano",
24036
+ "openai/gpt-5-pro",
24037
+ "openai/gpt-5.1-codex",
24038
+ "openai/gpt-5.1-codex-max",
24039
+ "openai/gpt-5.1-codex-mini",
24040
+ "openai/gpt-5.1-instant",
24041
+ "openai/gpt-5.1-thinking",
24042
+ "openai/gpt-5.2",
24043
+ "openai/gpt-5.2-chat",
24044
+ "openai/gpt-5.2-codex",
24045
+ "openai/gpt-5.2-pro",
24046
+ "openai/gpt-5.3-chat",
24047
+ "openai/gpt-5.3-codex",
24048
+ "openai/gpt-5.4",
24049
+ "openai/gpt-5.4-mini",
24050
+ "openai/gpt-5.4-nano",
24051
+ "openai/gpt-5.4-pro",
24052
+ "openai/gpt-5.5",
24053
+ "openai/gpt-5.5-pro",
24054
+ "openai/gpt-image-1",
24055
+ "openai/gpt-image-1-mini",
24056
+ "openai/gpt-image-1.5",
24057
+ "openai/gpt-image-2",
24058
+ "openai/gpt-oss-120b",
24059
+ "openai/gpt-oss-20b",
24060
+ "openai/gpt-oss-safeguard-20b",
24061
+ "openai/gpt-realtime-1.5",
24062
+ "openai/gpt-realtime-2",
24063
+ "openai/gpt-realtime-mini",
24064
+ "openai/o1",
24065
+ "openai/o3",
24066
+ "openai/o3-deep-research",
24067
+ "openai/o3-mini",
24068
+ "openai/o3-pro",
24069
+ "openai/o4-mini",
24070
+ "openai/text-embedding-3-large",
24071
+ "openai/text-embedding-3-small",
24072
+ "openai/text-embedding-ada-002",
24073
+ "openai/tts-1",
24074
+ "openai/tts-1-hd",
24075
+ "openai/whisper-1",
24076
+ "perplexity/sonar",
24077
+ "perplexity/sonar-pro",
24078
+ "perplexity/sonar-reasoning-pro",
24079
+ "prodia/flux-fast-schnell",
24080
+ "quiverai/arrow-1.1",
24081
+ "recraft/recraft-v2",
24082
+ "recraft/recraft-v3",
24083
+ "recraft/recraft-v4",
24084
+ "recraft/recraft-v4-pro",
24085
+ "recraft/recraft-v4.1",
24086
+ "recraft/recraft-v4.1-pro",
24087
+ "recraft/recraft-v4.1-utility",
24088
+ "recraft/recraft-v4.1-utility-pro",
24089
+ "sakana/fugu-ultra",
24090
+ "stepfun/step-3.5-flash",
24091
+ "stepfun/step-3.7-flash",
24092
+ "voyage/rerank-2.5",
24093
+ "voyage/rerank-2.5-lite",
24094
+ "voyage/voyage-3-large",
24095
+ "voyage/voyage-3.5",
24096
+ "voyage/voyage-3.5-lite",
24097
+ "voyage/voyage-4",
24098
+ "voyage/voyage-4-large",
24099
+ "voyage/voyage-4-lite",
24100
+ "voyage/voyage-code-2",
24101
+ "voyage/voyage-code-3",
24102
+ "voyage/voyage-finance-2",
24103
+ "voyage/voyage-law-2",
24104
+ "xai/grok-4.1-fast-non-reasoning",
24105
+ "xai/grok-4.1-fast-reasoning",
24106
+ "xai/grok-4.20-multi-agent",
24107
+ "xai/grok-4.20-multi-agent-beta",
24108
+ "xai/grok-4.20-non-reasoning",
24109
+ "xai/grok-4.20-non-reasoning-beta",
24110
+ "xai/grok-4.20-reasoning",
24111
+ "xai/grok-4.20-reasoning-beta",
24112
+ "xai/grok-4.3",
24113
+ "xai/grok-build-0.1",
24114
+ "xai/grok-imagine-image",
24115
+ "xai/grok-imagine-video",
24116
+ "xai/grok-imagine-video-1.5",
24117
+ "xai/grok-imagine-video-1.5-preview",
24118
+ "xai/grok-stt",
24119
+ "xai/grok-tts",
24120
+ "xai/grok-voice-think-fast-1.0",
24121
+ "xiaomi/mimo-v2-flash",
24122
+ "xiaomi/mimo-v2-pro",
24123
+ "xiaomi/mimo-v2.5",
24124
+ "xiaomi/mimo-v2.5-pro",
24125
+ "zai/glm-4.5",
24126
+ "zai/glm-4.5-air",
24127
+ "zai/glm-4.5v",
24128
+ "zai/glm-4.6",
24129
+ "zai/glm-4.6v",
24130
+ "zai/glm-4.6v-flash",
24131
+ "zai/glm-4.7",
24132
+ "zai/glm-4.7-flash",
24133
+ "zai/glm-4.7-flashx",
24134
+ "zai/glm-5",
24135
+ "zai/glm-5-turbo",
24136
+ "zai/glm-5.1",
24137
+ "zai/glm-5.2",
24138
+ "zai/glm-5.2-fast",
24139
+ "zai/glm-5v-turbo"
24140
+ ]);
24141
+ let cachedModelIds;
24142
+ let pendingModelIds;
24143
+ function resolvePlatformOriginForModelCatalog() {
24144
+ const fromKeystroke = process.env.KEYSTROKE_PLATFORM_URL?.trim();
24145
+ if (fromKeystroke) return fromKeystroke.replace(/\/+$/, "");
24146
+ const fromPlatform = process.env.PLATFORM_URL?.trim();
24147
+ if (fromPlatform) return fromPlatform.replace(/\/+$/, "");
24148
+ return DEFAULT_CLOUD_PLATFORM_ORIGIN;
24149
+ }
24150
+ async function fetchPublicModelIds() {
24151
+ if (cachedModelIds) return cachedModelIds;
24152
+ if (pendingModelIds) return pendingModelIds;
24153
+ const platformOrigin = resolvePlatformOriginForModelCatalog();
24154
+ pendingModelIds = (async () => {
24155
+ try {
24156
+ const response = await fetch(`${platformOrigin}/api/public/models`, { headers: { accept: "application/json" } });
24157
+ if (!response.ok) throw new Error(`Failed to fetch public model catalog (${response.status})`);
24158
+ const parsed = PublicModelsResponseSchema.safeParse(await response.json());
24159
+ if (!parsed.success || parsed.data.models.length === 0) throw new Error("Public model catalog response had no models");
24160
+ cachedModelIds = new Set(parsed.data.models);
24161
+ return cachedModelIds;
24162
+ } catch (error) {
24163
+ const message = error instanceof Error ? error.message : String(error);
24164
+ console.warn(`Skipping agent model validation: ${message}`);
24165
+ return;
24166
+ } finally {
24167
+ pendingModelIds = void 0;
24168
+ }
24169
+ })();
24170
+ return pendingModelIds;
24171
+ }
24172
+ /**
24173
+ * Fail when any model id is unknown. Checks the committed catalog first (fast,
24174
+ * offline) and only fetches the live catalog to confirm misses — so newly added
24175
+ * gateway models still validate without a per-build network round-trip.
24176
+ */
24177
+ async function validateAgentModelIds(modelIds) {
24178
+ const missingFromStatic = [...new Set(modelIds)].filter((id) => !STATIC_MODEL_IDS.has(id));
24179
+ if (missingFromStatic.length === 0) return;
24180
+ const live = await fetchPublicModelIds();
24181
+ if (!live) return;
24182
+ const unknown = missingFromStatic.filter((id) => !live.has(id));
24183
+ if (unknown.length === 0) return;
24184
+ throw new Error(unknown.length === 1 ? `Unknown gateway model: ${unknown[0]}` : `Unknown gateway models: ${unknown.join(", ")}`);
24185
+ }
24186
+ /** Collect agent model ids from a stored route manifest (deploy validation). */
24187
+ function agentModelIdsFromStoredManifest(manifest) {
24188
+ const ids = [];
24189
+ for (const entry of manifest.entries) {
24190
+ if (entry.kind !== "agent") continue;
24191
+ const parsed = AgentModelIdSchema.safeParse(entry.model);
24192
+ if (parsed.success) ids.push(parsed.data);
24193
+ }
24194
+ return ids;
24195
+ }
24196
+ //#endregion
23627
24197
  //#region ../../packages/manifest/dist/index.mjs
23628
24198
  function normalizeWebhookEndpoint(endpoint) {
23629
24199
  return endpoint.replace(/^\/+|\/+$/g, "").replace(/^triggers\/?/, "");
@@ -24277,7 +24847,7 @@ function withOrganizationProjectDatabase() {
24277
24847
  }
24278
24848
  //#endregion
24279
24849
  //#region src/routes/account/users/me/avatar/GET.ts
24280
- const handler$82 = async (c) => {
24850
+ const handler$83 = async (c) => {
24281
24851
  const dbUser = await selectUserById(c.get("user").id);
24282
24852
  if (!dbUser) return c.json(ErrorResponseSchema.parse({ error: "User not found" }), 404);
24283
24853
  return c.json(UserAvatarSchema.parse({ url: dbUser.image ?? null }));
@@ -24296,7 +24866,7 @@ function avatarExtensionForContentType(contentType) {
24296
24866
  }
24297
24867
  //#endregion
24298
24868
  //#region src/routes/account/users/me/avatar/presign/POST.ts
24299
- const handler$81 = async (c) => {
24869
+ const handler$82 = async (c) => {
24300
24870
  const parsed = PresignUserAvatarRequestSchema.safeParse(await c.req.json().catch(() => null));
24301
24871
  if (!parsed.success) return c.json(ErrorResponseSchema.parse({ error: "Invalid avatar upload request" }), 400);
24302
24872
  const extension = avatarExtensionForContentType(parsed.data.contentType);
@@ -24336,7 +24906,7 @@ async function deleteStoredImageIfOwned(input) {
24336
24906
  }
24337
24907
  //#endregion
24338
24908
  //#region src/routes/account/users/me/avatar/PATCH.ts
24339
- const handler$80 = async (c) => {
24909
+ const handler$81 = async (c) => {
24340
24910
  const parsed = UserAvatarPatchSchema.safeParse(await c.req.json().catch(() => null));
24341
24911
  if (!parsed.success) return c.json(ErrorResponseSchema.parse({ error: "Invalid avatar update" }), 400);
24342
24912
  const user = c.get("user");
@@ -24378,14 +24948,14 @@ const handler$80 = async (c) => {
24378
24948
  };
24379
24949
  //#endregion
24380
24950
  //#region src/routes/account/users/me/preferences/GET.ts
24381
- const handler$79 = async (c) => {
24951
+ const handler$80 = async (c) => {
24382
24952
  const dbUser = await selectUserById(c.get("user").id);
24383
24953
  if (!dbUser) return c.json(ErrorResponseSchema.parse({ error: "User not found" }), 404);
24384
24954
  return c.json(UserPreferencesSchema.parse(normalizeUserPreferences(dbUser.preferences)));
24385
24955
  };
24386
24956
  //#endregion
24387
24957
  //#region src/routes/account/users/me/preferences/PATCH.ts
24388
- const handler$78 = async (c) => {
24958
+ const handler$79 = async (c) => {
24389
24959
  const parsed = UserPreferencesPatchSchema.safeParse(await c.req.json().catch(() => null));
24390
24960
  if (!parsed.success) return c.json(ErrorResponseSchema.parse({ error: "Invalid preferences update" }), 400);
24391
24961
  const user = c.get("user");
@@ -24400,7 +24970,7 @@ const handler$78 = async (c) => {
24400
24970
  };
24401
24971
  //#endregion
24402
24972
  //#region src/routes/account/organizations/GET.ts
24403
- const handler$77 = async (c) => {
24973
+ const handler$78 = async (c) => {
24404
24974
  const memberships = await selectUserOrganizations(c.get("user").id);
24405
24975
  return c.json(ListOrganizationsResponseSchema.parse(memberships.map(mapUserOrganization)));
24406
24976
  };
@@ -24478,7 +25048,7 @@ function createOrganizationHandler(deps) {
24478
25048
  }
24479
25049
  //#endregion
24480
25050
  //#region src/routes/account/organizations/slug-available/GET.ts
24481
- const handler$76 = async (c) => {
25051
+ const handler$77 = async (c) => {
24482
25052
  const parsed = SlugAvailabilityQuerySchema.safeParse({
24483
25053
  slug: c.req.query("slug"),
24484
25054
  excludeOrganizationId: c.req.query("excludeOrganizationId")
@@ -24489,7 +25059,7 @@ const handler$76 = async (c) => {
24489
25059
  };
24490
25060
  //#endregion
24491
25061
  //#region src/routes/account/organizations/[organizationId]/GET.ts
24492
- const handler$75 = async (c) => {
25062
+ const handler$76 = async (c) => {
24493
25063
  const { organizationId } = c.get("organization");
24494
25064
  const membership = await selectUserOrganizationMembership(c.get("user").id, organizationId);
24495
25065
  if (!membership) throw new Error(`Organization membership missing after param guard: ${organizationId}`);
@@ -24497,7 +25067,7 @@ const handler$75 = async (c) => {
24497
25067
  };
24498
25068
  //#endregion
24499
25069
  //#region src/routes/account/organizations/[organizationId]/PATCH.ts
24500
- const handler$74 = async (c) => {
25070
+ const handler$75 = async (c) => {
24501
25071
  const organization = c.get("organization");
24502
25072
  const body = await c.req.json().catch(() => null);
24503
25073
  const parsed = UpdateOrganizationRequestSchema.safeParse(body);
@@ -24522,7 +25092,7 @@ const handler$74 = async (c) => {
24522
25092
  };
24523
25093
  //#endregion
24524
25094
  //#region src/routes/account/organizations/[organizationId]/branding/GET.ts
24525
- const handler$73 = async (c) => {
25095
+ const handler$74 = async (c) => {
24526
25096
  const { organizationId } = c.get("organization");
24527
25097
  const organization = await selectOrganizationById(organizationId);
24528
25098
  if (!organization) return c.json(ErrorResponseSchema.parse({ error: "Organization not found" }), 404);
@@ -24571,7 +25141,7 @@ async function finalizeOrgLogoVariant(input) {
24571
25141
  publicUrl: finalized.publicUrl
24572
25142
  };
24573
25143
  }
24574
- const handler$72 = async (c) => {
25144
+ const handler$73 = async (c) => {
24575
25145
  const parsed = OrganizationSidebarBrandingPatchSchema.safeParse(await c.req.json().catch(() => null));
24576
25146
  if (!parsed.success) return c.json(ErrorResponseSchema.parse({ error: "Invalid branding update" }), 400);
24577
25147
  const { organizationId } = c.get("organization");
@@ -24599,7 +25169,7 @@ const handler$72 = async (c) => {
24599
25169
  };
24600
25170
  //#endregion
24601
25171
  //#region src/routes/account/organizations/[organizationId]/branding/logo/presign/POST.ts
24602
- const handler$71 = async (c) => {
25172
+ const handler$72 = async (c) => {
24603
25173
  const parsed = PresignOrgLogoRequestSchema.safeParse(await c.req.json().catch(() => null));
24604
25174
  if (!parsed.success) return c.json(ErrorResponseSchema.parse({ error: "Invalid logo upload request" }), 400);
24605
25175
  const extension = avatarExtensionForContentType(parsed.data.contentType);
@@ -24700,7 +25270,7 @@ async function attachRanAsToDetail(detail, ranByUserId) {
24700
25270
  }
24701
25271
  //#endregion
24702
25272
  //#region src/routes/account/history/GET.ts
24703
- const handler$70 = async (c) => {
25273
+ const handler$71 = async (c) => {
24704
25274
  const organization = c.get("organization");
24705
25275
  const ctx = accessContext(c);
24706
25276
  const query = HistoryRunListQuerySchema.parse({
@@ -24723,7 +25293,7 @@ const handler$70 = async (c) => {
24723
25293
  };
24724
25294
  //#endregion
24725
25295
  //#region src/routes/account/history/[runId]/GET.ts
24726
- const handler$69 = async (c) => {
25296
+ const handler$70 = async (c) => {
24727
25297
  const runId = c.req.param("runId") ?? "";
24728
25298
  if (!runId) return c.json(null, 404);
24729
25299
  const core = await findHistoryRunCore(runId);
@@ -24741,269 +25311,52 @@ const handler$69 = async (c) => {
24741
25311
  return buildHistoryAgentSessionDetail(agent.slug, runId);
24742
25312
  });
24743
25313
  if (!detail) return c.json(null, 404);
24744
- return c.json(HistoryRunDetailResponseSchema.parse(await attachRanAsToDetail(detail, core.ranByUserId)));
24745
- };
24746
- //#endregion
24747
- //#region src/routes/account/resources/common.ts
24748
- /** Derive a human display name from a resource slug when no explicit name is stored. */
24749
- function titleCaseKey(slug) {
24750
- const normalized = slug.split(/[/_-]+/).filter(Boolean).join(" ");
24751
- if (!normalized) return PLATFORM_RESOURCE_UNSUPPORTED_TEXT;
24752
- return normalized.replace(/\b\w/g, (char) => char.toUpperCase());
24753
- }
24754
- //#endregion
24755
- //#region src/routes/account/resources/agents.ts
24756
- function formatModel(model) {
24757
- if (!model) return;
24758
- return model;
24759
- }
24760
- function toAgentSummary(row, options) {
24761
- return AgentSummarySchema.parse({
24762
- id: row.id,
24763
- slug: row.slug,
24764
- name: row.name?.trim() || titleCaseKey(row.slug),
24765
- description: row.description ?? void 0,
24766
- projectId: row.projectId,
24767
- updatedAt: row.updatedAt.toISOString(),
24768
- sourcePath: row.moduleFile,
24769
- model: formatModel(row.model),
24770
- capabilities: options?.capabilities,
24771
- systemPrompt: row.systemPrompt || void 0,
24772
- toolCount: row.toolCount ?? void 0,
24773
- credentialCount: row.credentialCount ?? void 0,
24774
- apps: (row.appSlugs ?? []).map((id) => ({
24775
- id,
24776
- label: displayCredentialAppName(id)
24777
- })),
24778
- lastRunAt: options?.lastRunAt?.toISOString()
24779
- });
24780
- }
24781
- //#endregion
24782
- //#region src/routes/account/agents/GET.ts
24783
- const handler$68 = async (c) => {
24784
- const filter = await resolveListProjectIds(c, listScope(c, agentListScope(accessContext(c))), c.req.query("projectId"));
24785
- if (filter === "empty") return c.json(AgentSummaryListResponseSchema.parse([]));
24786
- const rows = await listActiveAgents(filter);
24787
- const lastRunAtById = await selectAgentLastRunAtByIds(rows.map((row) => row.id));
24788
- return c.json(AgentSummaryListResponseSchema.parse(rows.map((row) => toAgentSummary(row, { lastRunAt: lastRunAtById.get(row.id) ?? null }))));
24789
- };
24790
- //#endregion
24791
- //#region ../../packages/agent/dist/schemas-DqPtvoUX.mjs
24792
- function capabilitiesFromGatewayTags(tags) {
24793
- const set = new Set(tags ?? []);
24794
- return {
24795
- images: set.has("vision"),
24796
- files: set.has("file-input")
24797
- };
24798
- }
24799
- const DEFAULT_GATEWAY_ORIGIN = "https://ai-gateway.vercel.sh";
24800
- /** Resolve the model catalog URL for pricing metadata (via platform proxy when configured). */
24801
- function resolveGatewayCatalogUrl(modelId) {
24802
- const baseUrl = resolveGatewayBaseUrl();
24803
- const apiKey = process.env.AI_GATEWAY_API_KEY?.trim();
24804
- if (baseUrl && apiKey) return {
24805
- url: `${baseUrl.replace(/\/$/, "")}/models/${modelId}`,
24806
- headers: {
24807
- accept: "application/json",
24808
- authorization: `Bearer ${apiKey}`
24809
- },
24810
- cacheKey: baseUrl
24811
- };
24812
- return {
24813
- url: `${DEFAULT_GATEWAY_ORIGIN}/v1/models/${modelId}`,
24814
- headers: { accept: "application/json" },
24815
- cacheKey: DEFAULT_GATEWAY_ORIGIN
24816
- };
24817
- }
24818
- function resolveGatewayBaseUrl() {
24819
- const configured = process.env.AI_GATEWAY_BASE_URL?.trim();
24820
- if (configured) return configured.replace(/\/$/, "");
24821
- const platformUrl = process.env.PLATFORM_URL?.trim();
24822
- if (!platformUrl || !process.env.AI_GATEWAY_API_KEY?.trim()) return;
24823
- const projectId = getProjectScopeId();
24824
- return `${platformUrl.replace(/\/$/, "")}/internal/projects/${encodeURIComponent(projectId)}/llm`;
24825
- }
24826
- const AGENT_MODEL_ID_PATTERN = /^[a-z0-9-]+\/.+/;
24827
- const AgentModelIdSchema = z.custom((value) => typeof value === "string" && AGENT_MODEL_ID_PATTERN.test(value), "model must be vendor/model-id");
24828
- const GatewayModelPricingSchema = z.object({
24829
- input: z.string().optional(),
24830
- output: z.string().optional(),
24831
- input_cache_read: z.string().optional()
24832
- });
24833
- const GatewayModelResponseSchema = z.object({
24834
- id: z.string().min(1),
24835
- name: z.string().optional(),
24836
- type: z.string().optional(),
24837
- context_window: z.number().int().positive().optional(),
24838
- max_tokens: z.number().int().positive().optional(),
24839
- tags: z.array(z.string()).optional(),
24840
- pricing: GatewayModelPricingSchema.optional()
24841
- });
24842
- function parseGatewayModelResponse(body) {
24843
- const parsed = GatewayModelResponseSchema.safeParse(body);
24844
- return parsed.success ? parsed.data : void 0;
24845
- }
24846
- function pricePerMillion(value) {
24847
- if (!value) return 0;
24848
- const perToken = Number(value);
24849
- if (!Number.isFinite(perToken) || perToken <= 0) return 0;
24850
- return perToken * 1e6;
24851
- }
24852
- const gatewayModelCache = /* @__PURE__ */ new Map();
24853
- const gatewayModelPending = /* @__PURE__ */ new Map();
24854
- function gatewayModelCacheKey(modelId, catalog) {
24855
- return `${catalog.cacheKey}::${modelId}`;
24856
- }
24857
- async function fetchGatewayModelMetadata(modelId) {
24858
- const catalog = resolveGatewayCatalogUrl(modelId);
24859
- const cacheKey = gatewayModelCacheKey(modelId, catalog);
24860
- const cached = gatewayModelCache.get(cacheKey);
24861
- if (cached) return cached.status === "found" ? {
24862
- pricing: cached.pricing,
24863
- capabilities: cached.capabilities
24864
- } : void 0;
24865
- const pending = gatewayModelPending.get(cacheKey);
24866
- if (pending) return pending;
24867
- const request = (async () => {
24868
- try {
24869
- const response = await fetch(catalog.url, { headers: catalog.headers });
24870
- if (!response.ok) {
24871
- gatewayModelCache.set(cacheKey, { status: "missing" });
24872
- return;
24873
- }
24874
- const raw = parseGatewayModelResponse(await response.json());
24875
- if (!raw || raw.type && raw.type !== "language") {
24876
- gatewayModelCache.set(cacheKey, { status: "missing" });
24877
- return;
24878
- }
24879
- const capabilities = capabilitiesFromGatewayTags(raw.tags);
24880
- const pricing = {
24881
- inputPerMillion: pricePerMillion(raw.pricing?.input),
24882
- outputPerMillion: pricePerMillion(raw.pricing?.output),
24883
- cacheReadPerMillion: pricePerMillion(raw.pricing?.input_cache_read)
24884
- };
24885
- gatewayModelCache.set(cacheKey, {
24886
- status: "found",
24887
- pricing,
24888
- capabilities
24889
- });
24890
- return {
24891
- pricing,
24892
- capabilities
24893
- };
24894
- } catch {
24895
- gatewayModelCache.set(cacheKey, { status: "missing" });
24896
- return;
24897
- } finally {
24898
- gatewayModelPending.delete(cacheKey);
24899
- }
24900
- })();
24901
- gatewayModelPending.set(cacheKey, request);
24902
- return request;
24903
- }
24904
- /** Cached gateway catalog lookup for model multimodal capabilities. */
24905
- async function resolveModelCapabilities(modelId) {
24906
- return (await fetchGatewayModelMetadata(modelId))?.capabilities ?? {
24907
- images: false,
24908
- files: false
24909
- };
24910
- }
24911
- const ThinkingLevelSchema = z.enum([
24912
- "provider-default",
24913
- "none",
24914
- "minimal",
24915
- "low",
24916
- "medium",
24917
- "high",
24918
- "xhigh"
24919
- ]);
24920
- z.object({
24921
- systemPrompt: z.string(),
24922
- model: AgentModelIdSchema,
24923
- thinkingLevel: ThinkingLevelSchema.optional()
24924
- });
25314
+ return c.json(HistoryRunDetailResponseSchema.parse(await attachRanAsToDetail(detail, core.ranByUserId)));
25315
+ };
24925
25316
  //#endregion
24926
- //#region ../../packages/shared/dist/agent-paths.mjs
24927
- function agentMemoryStoragePrefix(agentId) {
24928
- return `agents/${agentId}/memory/`;
24929
- }
24930
- function agentMemoryFileStorageKey(agentId, relativePath) {
24931
- return `${agentMemoryStoragePrefix(agentId)}${relativePath}`;
25317
+ //#region src/routes/account/resources/common.ts
25318
+ /** Derive a human display name from a resource slug when no explicit name is stored. */
25319
+ function titleCaseKey(slug) {
25320
+ const normalized = slug.split(/[/_-]+/).filter(Boolean).join(" ");
25321
+ if (!normalized) return PLATFORM_RESOURCE_UNSUPPORTED_TEXT;
25322
+ return normalized.replace(/\b\w/g, (char) => char.toUpperCase());
24932
25323
  }
24933
25324
  //#endregion
24934
- //#region ../../packages/memory/dist/index.mjs
24935
- function resolveMemoryRelativePath(memoryDir, inputPath) {
24936
- const normalized = normalize(inputPath.replace(/^\.\/+/, ""));
24937
- if (normalized.startsWith("..") || normalized.includes("../")) throw new Error(`Path must stay within the memory directory: ${inputPath}`);
24938
- const absolute = resolve(memoryDir, normalized);
24939
- const rel = relative(memoryDir, absolute);
24940
- if (rel.startsWith("..") || rel.includes("..")) throw new Error(`Path must stay within the memory directory: ${inputPath}`);
24941
- return rel.length > 0 ? rel : basename(absolute);
24942
- }
24943
- function isBrowsableMemoryFile(relativePath) {
24944
- if (relativePath.startsWith(".")) return false;
24945
- if (relativePath.endsWith(".db")) return false;
24946
- return relativePath.endsWith(".md");
25325
+ //#region src/routes/account/resources/agents.ts
25326
+ function formatModel(model) {
25327
+ if (!model) return;
25328
+ return model;
24947
25329
  }
24948
- /** Sort and filter relative memory paths for stable listing (disk or storage). */
24949
- function orderMemoryRelativePaths(relativePaths) {
24950
- const browsable = relativePaths.filter(isBrowsableMemoryFile);
24951
- const topLevel = ["MEMORY.md", "USER.md"];
24952
- const ordered = [];
24953
- for (const name of topLevel) if (browsable.includes(name)) ordered.push(name);
24954
- const archive = browsable.filter((p) => p.startsWith("archive/")).sort();
24955
- ordered.push(...archive);
24956
- return ordered;
25330
+ function toAgentSummary(row, options) {
25331
+ return AgentSummarySchema.parse({
25332
+ id: row.id,
25333
+ slug: row.slug,
25334
+ name: row.name?.trim() || titleCaseKey(row.slug),
25335
+ description: row.description ?? void 0,
25336
+ projectId: row.projectId,
25337
+ updatedAt: row.updatedAt.toISOString(),
25338
+ sourcePath: row.moduleFile,
25339
+ model: formatModel(row.model),
25340
+ capabilities: options?.capabilities,
25341
+ systemPrompt: row.systemPrompt || void 0,
25342
+ toolCount: row.toolCount ?? void 0,
25343
+ credentialCount: row.credentialCount ?? void 0,
25344
+ apps: (row.appSlugs ?? []).map((id) => ({
25345
+ id,
25346
+ label: displayCredentialAppName(id)
25347
+ })),
25348
+ lastRunAt: options?.lastRunAt?.toISOString()
25349
+ });
24957
25350
  }
24958
- const memoryPathSchema = z.string().describe("Relative path under the memory dir (e.g. MEMORY.md, USER.md, archive/note.md).");
24959
- const searchScopeSchema = z.enum([
24960
- "archive",
24961
- "sessions",
24962
- "all"
24963
- ]).describe("Where to look: all (default) = archive/*.md plus every saved session transcript across all past chats; archive = long-form notes only; sessions = all past session transcripts only. USER.md and MEMORY.md are in the system snapshot — use read for those.");
24964
- const searchQuerySchema = z.string().describe("Keywords to find across archive notes and/or all past session transcripts. Plain words, case-insensitive; multiple words match if ANY word appears. Use when the user references an earlier chat or prior decision. Returns ranked snippets — use read on a hit path for the full file.");
24965
- z.object({
24966
- action: z.enum([
24967
- "list",
24968
- "read",
24969
- "write",
24970
- "edit",
24971
- "search"
24972
- ]).describe("list: archive/*.md filenames; read: { path }; write: { path, content }; edit: { path, oldText, newText }; search: { query, scope?, limit?, full? }."),
24973
- path: memoryPathSchema.optional(),
24974
- content: z.string().describe("Full file content (write).").optional(),
24975
- oldText: z.string().describe("Exact text to replace, first match (edit).").optional(),
24976
- newText: z.string().describe("Replacement text; empty string deletes oldText (edit).").optional(),
24977
- query: searchQuerySchema.optional(),
24978
- scope: searchScopeSchema.optional(),
24979
- limit: z.number().int().min(1).max(50).optional(),
24980
- full: z.boolean().describe("When true, return complete archive note files for archive hits, ignored for session hits (search).").optional()
24981
- });
24982
- new AsyncLocalStorage();
24983
- [
24984
- "You are an expert chat title generator.",
24985
- "",
24986
- "Given the conversation so far (initial user message), generate a short, clear, and natural title (max 6-8 words) that captures the main topic or goal.",
24987
- "",
24988
- "Rules:",
24989
- "- Be specific and descriptive; avoid vague titles like \"Conversation\" or \"Question\"",
24990
- "- Prefer action-oriented or outcome-focused phrasing when possible",
24991
- "- Use title case",
24992
- "- Keep it under 65 characters when possible",
24993
- "- Do not use quotes or emojis",
24994
- "- Return ONLY the title, nothing else",
24995
- "",
24996
- "Examples:",
24997
- "",
24998
- "User: How do I set up a new Next.js project with TypeScript?",
24999
- "→ Setting Up Next.js Project with TypeScript",
25000
- "",
25001
- "User: Help me debug this React hook that's causing infinite re-renders. Here's the code...",
25002
- "→ Debugging Infinite Re-render in React Hook",
25003
- "",
25004
- "User: Write a cold email sequence for fundraising from YC alums",
25005
- "→ YC Alumni Fundraising Cold Email Sequence"
25006
- ].join("\n");
25351
+ //#endregion
25352
+ //#region src/routes/account/agents/GET.ts
25353
+ const handler$69 = async (c) => {
25354
+ const filter = await resolveListProjectIds(c, listScope(c, agentListScope(accessContext(c))), c.req.query("projectId"));
25355
+ if (filter === "empty") return c.json(AgentSummaryListResponseSchema.parse([]));
25356
+ const rows = await listActiveAgents(filter);
25357
+ const lastRunAtById = await selectAgentLastRunAtByIds(rows.map((row) => row.id));
25358
+ return c.json(AgentSummaryListResponseSchema.parse(rows.map((row) => toAgentSummary(row, { lastRunAt: lastRunAtById.get(row.id) ?? null }))));
25359
+ };
25007
25360
  //#endregion
25008
25361
  //#region src/routes/account/lib/touch-resource-activity.ts
25009
25362
  function touchResourceActivityBestEffort(options) {
@@ -25011,7 +25364,7 @@ function touchResourceActivityBestEffort(options) {
25011
25364
  }
25012
25365
  //#endregion
25013
25366
  //#region src/routes/account/agents/[agentId]/GET.ts
25014
- const handler$67 = async (c) => {
25367
+ const handler$68 = async (c) => {
25015
25368
  const agentId = c.req.param("agentId") ?? "";
25016
25369
  const row = agentId ? await selectActiveAgentById(agentId) : void 0;
25017
25370
  if (!row || !await canAccessProjectId(c, row.projectId, canAccessAgent)) return c.json(AgentSummaryDetailResponseSchema.parse(null));
@@ -25034,7 +25387,7 @@ const handler$67 = async (c) => {
25034
25387
  function relativePathsFromStorageKeys(prefix, keys) {
25035
25388
  return keys.filter((key) => key.startsWith(prefix) && key.endsWith(".md")).map((key) => key.slice(prefix.length)).filter((path) => !path.startsWith(".") && !path.includes("/."));
25036
25389
  }
25037
- const handler$66 = async (c) => {
25390
+ const handler$67 = async (c) => {
25038
25391
  const agentId = c.req.param("agentId") ?? "";
25039
25392
  const row = agentId ? await selectActiveAgentById(agentId) : void 0;
25040
25393
  if (!row || !await canAccessProjectId(c, row.projectId, canAccessAgent)) return c.json(ListAgentMemoryFilesResponseSchema.parse({ files: [] }), 404);
@@ -25059,7 +25412,7 @@ function isStorageNotFoundError(error) {
25059
25412
  const status = typeof record.$metadata === "object" && record.$metadata !== null ? record.$metadata.httpStatusCode : void 0;
25060
25413
  return name === "NoSuchKey" || code === "NoSuchKey" || code === "NotFound" || status === 404;
25061
25414
  }
25062
- const handler$65 = async (c) => {
25415
+ const handler$66 = async (c) => {
25063
25416
  const agentId = c.req.param("agentId") ?? "";
25064
25417
  const path = c.req.query("path");
25065
25418
  if (!path) return c.json(ErrorResponseSchema.parse({ error: "File path is required" }), 400);
@@ -25113,7 +25466,7 @@ function workspaceRelativePathsFromStorageKeys(keys) {
25113
25466
  }
25114
25467
  //#endregion
25115
25468
  //#region src/routes/account/agents/[agentId]/workspace/files/GET.ts
25116
- const handler$64 = async (c) => {
25469
+ const handler$65 = async (c) => {
25117
25470
  const agentId = c.req.param("agentId") ?? "";
25118
25471
  const row = agentId ? await selectActiveAgentById(agentId) : void 0;
25119
25472
  if (!row || !await canAccessProjectId(c, row.projectId, canAccessAgent)) return c.json(ListAgentWorkspaceFilesResponseSchema.parse({ files: [] }), 404);
@@ -25136,7 +25489,7 @@ const handler$64 = async (c) => {
25136
25489
  };
25137
25490
  //#endregion
25138
25491
  //#region src/routes/account/agents/[agentId]/workspace/files/content/GET.ts
25139
- const handler$63 = async (c) => {
25492
+ const handler$64 = async (c) => {
25140
25493
  const agentId = c.req.param("agentId") ?? "";
25141
25494
  const path = c.req.query("path");
25142
25495
  if (!path) return c.json(ErrorResponseSchema.parse({ error: "File path is required" }), 400);
@@ -25185,7 +25538,7 @@ async function cancelHistoryRun(c, kind, cancel) {
25185
25538
  }
25186
25539
  //#endregion
25187
25540
  //#region src/routes/account/agents/sessions/[sessionId]/cancel/POST.ts
25188
- const handler$62 = (c) => cancelHistoryRun(c, "agent", cancelAgentSession);
25541
+ const handler$63 = (c) => cancelHistoryRun(c, "agent", cancelAgentSession);
25189
25542
  //#endregion
25190
25543
  //#region src/routes/account/resources/workflows.ts
25191
25544
  function toWorkflowSummary(row, options) {
@@ -25202,7 +25555,7 @@ function toWorkflowSummary(row, options) {
25202
25555
  }
25203
25556
  //#endregion
25204
25557
  //#region src/routes/account/workflows/GET.ts
25205
- const handler$61 = async (c) => {
25558
+ const handler$62 = async (c) => {
25206
25559
  const filter = await resolveListProjectIds(c, listScope(c, workflowListScope(accessContext(c))), c.req.query("projectId"));
25207
25560
  if (filter === "empty") return c.json(WorkflowSummaryListResponseSchema.parse([]));
25208
25561
  const rows = await listActiveWorkflows(filter);
@@ -25211,7 +25564,7 @@ const handler$61 = async (c) => {
25211
25564
  };
25212
25565
  //#endregion
25213
25566
  //#region src/routes/account/workflows/[workflowId]/GET.ts
25214
- const handler$60 = async (c) => {
25567
+ const handler$61 = async (c) => {
25215
25568
  const workflowId = c.req.param("workflowId") ?? "";
25216
25569
  const row = workflowId ? await selectActiveWorkflowById(workflowId) : void 0;
25217
25570
  if (!row || !await canAccessProjectId(c, row.projectId, canAccessWorkflow)) return c.json(WorkflowSummaryDetailResponseSchema.parse(null));
@@ -25226,7 +25579,7 @@ const handler$60 = async (c) => {
25226
25579
  };
25227
25580
  //#endregion
25228
25581
  //#region src/routes/account/workflows/runs/[runId]/cancel/POST.ts
25229
- const handler$59 = (c) => cancelHistoryRun(c, "workflow", cancelWorkflowRun);
25582
+ const handler$60 = (c) => cancelHistoryRun(c, "workflow", cancelWorkflowRun);
25230
25583
  //#endregion
25231
25584
  //#region src/routes/account/resources/skills.ts
25232
25585
  function toSkillSummary(row) {
@@ -25242,7 +25595,7 @@ function toSkillSummary(row) {
25242
25595
  }
25243
25596
  //#endregion
25244
25597
  //#region src/routes/account/skills/GET.ts
25245
- const handler$58 = async (c) => {
25598
+ const handler$59 = async (c) => {
25246
25599
  const filter = await resolveListProjectIds(c, listScope(c, skillListScope(accessContext(c))), c.req.query("projectId"));
25247
25600
  if (filter === "empty") return c.json(SkillSummaryListResponseSchema.parse([]));
25248
25601
  const rows = await listActiveSkills(filter);
@@ -25250,7 +25603,7 @@ const handler$58 = async (c) => {
25250
25603
  };
25251
25604
  //#endregion
25252
25605
  //#region src/routes/account/skills/[skillId]/GET.ts
25253
- const handler$57 = async (c) => {
25606
+ const handler$58 = async (c) => {
25254
25607
  const skillId = c.req.param("skillId") ?? "";
25255
25608
  const row = skillId ? await selectActiveSkillById(skillId) : void 0;
25256
25609
  if (!row || !await canAccessProjectId(c, row.projectId, canAccessSkill)) return c.json(SkillSummaryDetailResponseSchema.parse(null));
@@ -25357,7 +25710,7 @@ function toWorkspaceTriggerRunSummary(item, assignments) {
25357
25710
  }
25358
25711
  //#endregion
25359
25712
  //#region src/routes/account/triggers/GET.ts
25360
- const handler$56 = async (c) => {
25713
+ const handler$57 = async (c) => {
25361
25714
  const organization = c.get("organization");
25362
25715
  const scope = listScope(c, projectListScope(accessContext(c)));
25363
25716
  const filter = await resolveListProjectIds(c, scope, c.req.query("projectId"));
@@ -25373,7 +25726,7 @@ const handler$56 = async (c) => {
25373
25726
  };
25374
25727
  //#endregion
25375
25728
  //#region src/routes/account/triggers/[triggerId]/GET.ts
25376
- const handler$55 = async (c) => {
25729
+ const handler$56 = async (c) => {
25377
25730
  const organization = c.get("organization");
25378
25731
  const triggerId = c.req.param("triggerId") ?? "";
25379
25732
  if (!triggerId.trim()) return c.json(ErrorResponseSchema.parse({ error: "Invalid trigger id" }), 400);
@@ -25389,7 +25742,7 @@ const handler$55 = async (c) => {
25389
25742
  };
25390
25743
  //#endregion
25391
25744
  //#region src/routes/account/triggers/[triggerId]/runs/GET.ts
25392
- const handler$54 = async (c) => {
25745
+ const handler$55 = async (c) => {
25393
25746
  const triggerId = c.req.param("triggerId") ?? "";
25394
25747
  if (!triggerId.trim()) return c.json(ErrorResponseSchema.parse({ error: "Invalid trigger id" }), 400);
25395
25748
  const filter = await resolveListProjectIds(c, listScope(c, projectListScope(accessContext(c))));
@@ -25416,7 +25769,7 @@ const handler$54 = async (c) => {
25416
25769
  };
25417
25770
  //#endregion
25418
25771
  //#region src/routes/account/triggers/[triggerId]/file/GET.ts
25419
- const handler$53 = async (c) => {
25772
+ const handler$54 = async (c) => {
25420
25773
  const { organizationId } = c.get("organization");
25421
25774
  const triggerId = c.req.param("triggerId") ?? "";
25422
25775
  if (!triggerId.trim()) return c.json(ErrorResponseSchema.parse({ error: "Invalid trigger id" }), 400);
@@ -25453,7 +25806,7 @@ function envelope(row, status, hash) {
25453
25806
  model: row.overviewModel ?? "deepseek/deepseek-v4-flash"
25454
25807
  });
25455
25808
  }
25456
- const handler$52 = async (c) => {
25809
+ const handler$53 = async (c) => {
25457
25810
  const { organizationId } = c.get("organization");
25458
25811
  const triggerId = c.req.param("triggerId") ?? "";
25459
25812
  if (!triggerId.trim()) return c.json(ErrorResponseSchema.parse({ error: "Invalid trigger id" }), 400);
@@ -25513,7 +25866,7 @@ const handler$52 = async (c) => {
25513
25866
  };
25514
25867
  //#endregion
25515
25868
  //#region src/routes/account/triggers/[triggerId]/attachments/[attachmentId]/PATCH.ts
25516
- const handler$51 = async (c) => {
25869
+ const handler$52 = async (c) => {
25517
25870
  const organization = c.get("organization");
25518
25871
  const triggerId = c.req.param("triggerId") ?? "";
25519
25872
  const attachmentId = c.req.param("attachmentId") ?? "";
@@ -25577,7 +25930,7 @@ function latestRecentInteractionAt(recent) {
25577
25930
  //#endregion
25578
25931
  //#region src/routes/account/recents/GET.ts
25579
25932
  const RECENTS_LIMIT = 50;
25580
- const handler$50 = async (c) => {
25933
+ const handler$51 = async (c) => {
25581
25934
  const userId = c.get("user").id;
25582
25935
  const organization = c.get("organization");
25583
25936
  const grantedProjectIdsList = await grantedProjectIds(c, { kind: "member-only" });
@@ -25603,7 +25956,7 @@ const handler$50 = async (c) => {
25603
25956
  };
25604
25957
  //#endregion
25605
25958
  //#region src/routes/account/projects/GET.ts
25606
- const handler$49 = async (c) => {
25959
+ const handler$50 = async (c) => {
25607
25960
  const organization = c.get("organization");
25608
25961
  const grantedProjectIdsList = await grantedProjectIds(c, listScope(c, projectListScope(accessContext(c))));
25609
25962
  const projects = await selectProjectsByOrganizationId(organization.organizationId, { grantedProjectIds: grantedProjectIdsList });
@@ -25629,7 +25982,7 @@ function mergeProjectListMetrics(input) {
25629
25982
  }
25630
25983
  //#endregion
25631
25984
  //#region src/routes/account/projects/metrics/GET.ts
25632
- const handler$48 = async (c) => {
25985
+ const handler$49 = async (c) => {
25633
25986
  const organization = c.get("organization");
25634
25987
  const grantedProjectIdsList = await grantedProjectIds(c, listScope(c, projectListScope(accessContext(c))));
25635
25988
  const [resourceCounts, lastDeploymentAtByProject] = await Promise.all([selectProjectResourceCounts(grantedProjectIdsList !== void 0 ? { projectIds: grantedProjectIdsList } : void 0), selectLastDeploymentAtByProject(organization.organizationId)]);
@@ -25645,7 +25998,7 @@ const handler$48 = async (c) => {
25645
25998
  };
25646
25999
  //#endregion
25647
26000
  //#region src/routes/account/projects/POST.ts
25648
- const handler$47 = async (c) => {
26001
+ const handler$48 = async (c) => {
25649
26002
  const organization = c.get("organization");
25650
26003
  const user = c.get("user");
25651
26004
  const body = await c.req.json().catch(() => null);
@@ -25656,7 +26009,7 @@ const handler$47 = async (c) => {
25656
26009
  };
25657
26010
  //#endregion
25658
26011
  //#region src/routes/account/projects/slug-available/GET.ts
25659
- const handler$46 = async (c) => {
26012
+ const handler$47 = async (c) => {
25660
26013
  const organization = c.get("organization");
25661
26014
  const parsed = ProjectSlugAvailabilityQuerySchema.safeParse({
25662
26015
  slug: c.req.query("slug"),
@@ -25668,12 +26021,12 @@ const handler$46 = async (c) => {
25668
26021
  };
25669
26022
  //#endregion
25670
26023
  //#region src/routes/account/projects/[projectId]/GET.ts
25671
- const handler$45 = async (c) => {
26024
+ const handler$46 = async (c) => {
25672
26025
  return c.json(ProjectResponseSchema.parse(routeProject(c.get("project"))));
25673
26026
  };
25674
26027
  //#endregion
25675
26028
  //#region src/routes/account/projects/[projectId]/PATCH.ts
25676
- const handler$44 = async (c) => {
26029
+ const handler$45 = async (c) => {
25677
26030
  const organization = c.get("organization");
25678
26031
  const project = c.get("project");
25679
26032
  const body = await c.req.json().catch(() => null);
@@ -25691,7 +26044,7 @@ const handler$44 = async (c) => {
25691
26044
  };
25692
26045
  //#endregion
25693
26046
  //#region src/routes/account/projects/[projectId]/DELETE.ts
25694
- const handler$43 = async (c) => {
26047
+ const handler$44 = async (c) => {
25695
26048
  const organization = c.get("organization");
25696
26049
  const project = c.get("project");
25697
26050
  if (!await deleteProjectForOrganization(organization.organizationId, project.id)) return c.json(ErrorResponseSchema.parse({ error: "Project not found" }), 404);
@@ -25699,7 +26052,7 @@ const handler$43 = async (c) => {
25699
26052
  };
25700
26053
  //#endregion
25701
26054
  //#region src/routes/account/projects/[projectId]/deployments/GET.ts
25702
- const handler$42 = async (c) => {
26055
+ const handler$43 = async (c) => {
25703
26056
  const rows = await selectProjectDeployments(c.get("project").id);
25704
26057
  return c.json(ListProjectDeploymentsResponseSchema.parse(rows.map(mapProjectDeployment)));
25705
26058
  };
@@ -25707,7 +26060,7 @@ const handler$42 = async (c) => {
25707
26060
  //#region src/routes/account/projects/[projectId]/artifacts/POST.ts
25708
26061
  const DEFAULT_PRESIGN_TTL_SECONDS$1 = 900;
25709
26062
  const ARTIFACT_CONTENT_TYPE = "application/gzip";
25710
- const handler$41 = async (c) => {
26063
+ const handler$42 = async (c) => {
25711
26064
  const project = c.get("project");
25712
26065
  const { organizationId } = c.get("organization");
25713
26066
  const organization = await selectOrganizationById(organizationId);
@@ -25735,7 +26088,7 @@ const handler$41 = async (c) => {
25735
26088
  //#endregion
25736
26089
  //#region src/routes/account/projects/[projectId]/artifacts/active/download/GET.ts
25737
26090
  const DEFAULT_PRESIGN_TTL_SECONDS = 900;
25738
- const handler$40 = async (c) => {
26091
+ const handler$41 = async (c) => {
25739
26092
  const project = c.get("project");
25740
26093
  const { organizationId } = c.get("organization");
25741
26094
  const organization = await selectOrganizationById(organizationId);
@@ -25754,7 +26107,7 @@ const handler$40 = async (c) => {
25754
26107
  };
25755
26108
  //#endregion
25756
26109
  //#region src/routes/account/projects/[projectId]/artifacts/active/source/GET.ts
25757
- const handler$39 = async (c) => {
26110
+ const handler$40 = async (c) => {
25758
26111
  const project = c.get("project");
25759
26112
  const active = await selectActiveArtifactSourceManifestForProject(project.id);
25760
26113
  if (!active?.sourceManifestJson) return c.json(ErrorResponseSchema.parse({ error: "No active source for project" }), 404);
@@ -25777,7 +26130,7 @@ const handler$39 = async (c) => {
25777
26130
  };
25778
26131
  //#endregion
25779
26132
  //#region src/routes/account/projects/[projectId]/artifacts/[artifactId]/complete/POST.ts
25780
- const handler$38 = async (c) => {
26133
+ const handler$39 = async (c) => {
25781
26134
  const project = c.get("project");
25782
26135
  const artifactId = c.req.param("artifactId");
25783
26136
  if (!artifactId) return c.json(ErrorResponseSchema.parse({ error: "Artifact id is required" }), 400);
@@ -25794,6 +26147,7 @@ const handler$38 = async (c) => {
25794
26147
  const artifactBytes = await storage.getObject(existing.storageKey);
25795
26148
  if (!artifactBytes || artifactBytes.byteLength <= 0) return c.json(ErrorResponseSchema.parse({ error: "Artifact upload not found in storage" }), 400);
25796
26149
  const manifestJson = parseStoredRouteManifest(extractRouteManifestFromArtifact(Buffer.from(artifactBytes)));
26150
+ await validateAgentModelIds(agentModelIdsFromStoredManifest(manifestJson));
25797
26151
  const result = await completeProjectArtifact({
25798
26152
  artifactId,
25799
26153
  projectId: project.id,
@@ -25816,7 +26170,7 @@ const handler$38 = async (c) => {
25816
26170
  //#endregion
25817
26171
  //#region src/routes/account/projects/[projectId]/artifacts/[artifactId]/source/presign/POST.ts
25818
26172
  const SOURCE_BLOB_CONTENT_TYPE = "text/plain; charset=utf-8";
25819
- const handler$37 = async (c) => {
26173
+ const handler$38 = async (c) => {
25820
26174
  const project = c.get("project");
25821
26175
  const artifactId = c.req.param("artifactId");
25822
26176
  if (!artifactId) return c.json(ErrorResponseSchema.parse({ error: "Artifact id is required" }), 400);
@@ -25844,7 +26198,7 @@ const handler$37 = async (c) => {
25844
26198
  };
25845
26199
  //#endregion
25846
26200
  //#region src/routes/account/projects/[projectId]/artifacts/[artifactId]/source/manifest/POST.ts
25847
- const handler$36 = async (c) => {
26201
+ const handler$37 = async (c) => {
25848
26202
  const project = c.get("project");
25849
26203
  const artifactId = c.req.param("artifactId");
25850
26204
  if (!artifactId) return c.json(ErrorResponseSchema.parse({ error: "Artifact id is required" }), 400);
@@ -25876,7 +26230,7 @@ function extensionFromUpload(contentType, filename) {
25876
26230
  if (fromName && /^[a-z0-9]+$/.test(fromName)) return fromName;
25877
26231
  return chatAttachmentExtension(contentType) ?? "bin";
25878
26232
  }
25879
- const handler$35 = async (c) => {
26233
+ const handler$36 = async (c) => {
25880
26234
  const project = c.get("project");
25881
26235
  const slug = c.req.param("slug");
25882
26236
  if (!slug) return c.json(ErrorResponseSchema.parse({ error: "Agent slug is required" }), 400);
@@ -25901,7 +26255,7 @@ const handler$35 = async (c) => {
25901
26255
  };
25902
26256
  //#endregion
25903
26257
  //#region src/routes/account/projects/[projectId]/agents/[slug]/attachments/[...key]/GET.ts
25904
- const handler$34 = async (c) => {
26258
+ const handler$35 = async (c) => {
25905
26259
  const project = c.get("project");
25906
26260
  const slug = c.req.param("slug");
25907
26261
  const keyParam = c.req.param("key");
@@ -25936,7 +26290,7 @@ function resolveSourcePaths(rows, kindDir, filePaths) {
25936
26290
  }] : [];
25937
26291
  });
25938
26292
  }
25939
- const handler$33 = async (c) => {
26293
+ const handler$34 = async (c) => {
25940
26294
  const project = c.get("project");
25941
26295
  const active = await selectActiveArtifactSourceManifestForProject(project.id);
25942
26296
  if (!active || !active.sourceManifestJson) return c.json(ListProjectFilesResponseSchema.parse({
@@ -25970,7 +26324,7 @@ const handler$33 = async (c) => {
25970
26324
  };
25971
26325
  //#endregion
25972
26326
  //#region src/routes/account/projects/[projectId]/artifacts/[artifactId]/files/content/GET.ts
25973
- const handler$32 = async (c) => {
26327
+ const handler$33 = async (c) => {
25974
26328
  const project = c.get("project");
25975
26329
  const artifactId = c.req.param("artifactId");
25976
26330
  if (!artifactId) return c.json(ErrorResponseSchema.parse({ error: "Artifact id is required" }), 400);
@@ -26009,7 +26363,7 @@ function createProjectReachabilityHandler(hosting) {
26009
26363
  }
26010
26364
  //#endregion
26011
26365
  //#region src/routes/account/projects/[projectId]/members/GET.ts
26012
- const handler$31 = async (c) => {
26366
+ const handler$32 = async (c) => {
26013
26367
  const project = c.get("project");
26014
26368
  const currentUserId = c.get("user").id;
26015
26369
  const members = await selectProjectMembers(project.id);
@@ -26017,7 +26371,7 @@ const handler$31 = async (c) => {
26017
26371
  };
26018
26372
  //#endregion
26019
26373
  //#region src/routes/account/projects/[projectId]/members/POST.ts
26020
- const handler$30 = async (c) => {
26374
+ const handler$31 = async (c) => {
26021
26375
  const organization = c.get("organization");
26022
26376
  const project = c.get("project");
26023
26377
  const body = await c.req.json().catch(() => null);
@@ -26033,7 +26387,7 @@ const handler$30 = async (c) => {
26033
26387
  };
26034
26388
  //#endregion
26035
26389
  //#region src/routes/account/projects/[projectId]/members/[userId]/PATCH.ts
26036
- const handler$29 = async (c) => {
26390
+ const handler$30 = async (c) => {
26037
26391
  const project = c.get("project");
26038
26392
  const userId = c.req.param("userId");
26039
26393
  const body = await c.req.json().catch(() => null);
@@ -26050,7 +26404,7 @@ const handler$29 = async (c) => {
26050
26404
  };
26051
26405
  //#endregion
26052
26406
  //#region src/routes/account/projects/[projectId]/members/[userId]/DELETE.ts
26053
- const handler$28 = async (c) => {
26407
+ const handler$29 = async (c) => {
26054
26408
  const project = c.get("project");
26055
26409
  const userId = c.req.param("userId");
26056
26410
  if (!userId) return c.json(ErrorResponseSchema.parse({ error: "User id is required" }), 400);
@@ -26064,7 +26418,7 @@ const handler$28 = async (c) => {
26064
26418
  };
26065
26419
  //#endregion
26066
26420
  //#region src/routes/account/projects/[projectId]/members/me/DELETE.ts
26067
- const handler$27 = async (c) => {
26421
+ const handler$28 = async (c) => {
26068
26422
  const project = c.get("project");
26069
26423
  const userId = c.get("user").id;
26070
26424
  try {
@@ -26077,13 +26431,13 @@ const handler$27 = async (c) => {
26077
26431
  };
26078
26432
  //#endregion
26079
26433
  //#region src/routes/account/projects/[projectId]/settings/GET.ts
26080
- const handler$26 = async (c) => {
26434
+ const handler$27 = async (c) => {
26081
26435
  const project = c.get("project");
26082
26436
  return c.json(ProjectSettingsResponseSchema.parse(mapProjectSettings(project)));
26083
26437
  };
26084
26438
  //#endregion
26085
26439
  //#region src/routes/account/projects/[projectId]/settings/PATCH.ts
26086
- const handler$25 = async (c) => {
26440
+ const handler$26 = async (c) => {
26087
26441
  const organization = c.get("organization");
26088
26442
  const project = c.get("project");
26089
26443
  const body = await c.req.json().catch(() => null);
@@ -26233,7 +26587,7 @@ async function enrichCredentialInstances(rows, organizationId) {
26233
26587
  }
26234
26588
  //#endregion
26235
26589
  //#region src/routes/account/credentials/GET.ts
26236
- const handler$24 = async (c) => {
26590
+ const handler$25 = async (c) => {
26237
26591
  const organization = c.get("organization");
26238
26592
  const user = c.get("user");
26239
26593
  const [rows, granted] = await Promise.all([listAllCredentialInstances(), grantedProjectIds(c, listScope(c, credentialListScope(accessContext(c))))]);
@@ -26250,7 +26604,7 @@ function withTargetScope(target, fn) {
26250
26604
  if (target.projectScope) return runWithProjectScope(target.projectScope, fn);
26251
26605
  return fn();
26252
26606
  }
26253
- const handler$23 = async (c) => {
26607
+ const handler$24 = async (c) => {
26254
26608
  const organization = c.get("organization");
26255
26609
  const user = c.get("user");
26256
26610
  const parsed = CreateCredentialsRequestSchema.safeParse(await c.req.json().catch(() => null));
@@ -26331,7 +26685,7 @@ const handler$23 = async (c) => {
26331
26685
  };
26332
26686
  //#endregion
26333
26687
  //#region src/routes/account/credentials/[credentialId]/GET.ts
26334
- const handler$22 = async (c) => {
26688
+ const handler$23 = async (c) => {
26335
26689
  const organization = c.get("organization");
26336
26690
  const credentialId = c.req.param("credentialId") ?? "";
26337
26691
  const row = credentialId ? await selectCredentialInstanceById(credentialId) : void 0;
@@ -26341,7 +26695,7 @@ const handler$22 = async (c) => {
26341
26695
  };
26342
26696
  //#endregion
26343
26697
  //#region src/routes/account/credentials/[credentialId]/PATCH.ts
26344
- const handler$21 = async (c) => {
26698
+ const handler$22 = async (c) => {
26345
26699
  const organization = c.get("organization");
26346
26700
  const user = c.get("user");
26347
26701
  const credentialId = c.req.param("credentialId") ?? "";
@@ -26439,7 +26793,7 @@ function createDeleteCredentialHandler(options = {}) {
26439
26793
  }
26440
26794
  //#endregion
26441
26795
  //#region src/routes/account/members/GET.ts
26442
- const handler$20 = async (c) => {
26796
+ const handler$21 = async (c) => {
26443
26797
  const { organizationId } = c.get("organization");
26444
26798
  const members = await selectOrganizationMembers(organizationId);
26445
26799
  return c.json(ListOrganizationMembersResponseSchema.parse(members.map(mapOrganizationMember)));
@@ -26487,7 +26841,7 @@ async function sendOrganizationInviteEmail(payload, resend) {
26487
26841
  }
26488
26842
  //#endregion
26489
26843
  //#region src/routes/account/members/invitations/POST.ts
26490
- const handler$19 = async (c) => {
26844
+ const handler$20 = async (c) => {
26491
26845
  const user = c.get("user");
26492
26846
  const organization = c.get("organization");
26493
26847
  const body = await c.req.json().catch(() => null);
@@ -26513,7 +26867,7 @@ const handler$19 = async (c) => {
26513
26867
  };
26514
26868
  //#endregion
26515
26869
  //#region src/routes/account/members/[userId]/PATCH.ts
26516
- const handler$18 = async (c) => {
26870
+ const handler$19 = async (c) => {
26517
26871
  const { organizationId } = c.get("organization");
26518
26872
  const userId = c.req.param("userId");
26519
26873
  const body = await c.req.json().catch(() => null);
@@ -26530,7 +26884,7 @@ const handler$18 = async (c) => {
26530
26884
  };
26531
26885
  //#endregion
26532
26886
  //#region src/routes/account/members/[userId]/DELETE.ts
26533
- const handler$17 = async (c) => {
26887
+ const handler$18 = async (c) => {
26534
26888
  const { organizationId } = c.get("organization");
26535
26889
  const userId = c.req.param("userId");
26536
26890
  if (!userId) return c.json(ErrorResponseSchema.parse({ error: "User id is required" }), 400);
@@ -26544,13 +26898,13 @@ const handler$17 = async (c) => {
26544
26898
  };
26545
26899
  //#endregion
26546
26900
  //#region src/routes/account/invitations/GET.ts
26547
- const handler$16 = async (c) => {
26901
+ const handler$17 = async (c) => {
26548
26902
  const invitations = await selectPendingInvitationsForUser(c.get("user").id);
26549
26903
  return c.json(ListOrganizationInvitationsResponseSchema.parse(invitations.map(mapOrganizationInvitation)));
26550
26904
  };
26551
26905
  //#endregion
26552
26906
  //#region src/routes/account/invitations/[invitationId]/accept/POST.ts
26553
- const handler$15 = async (c) => {
26907
+ const handler$16 = async (c) => {
26554
26908
  const user = c.get("user");
26555
26909
  const invitationId = c.req.param("invitationId");
26556
26910
  if (!invitationId) return c.json(ErrorResponseSchema.parse({ error: "Invitation id is required" }), 400);
@@ -26566,7 +26920,7 @@ const handler$15 = async (c) => {
26566
26920
  };
26567
26921
  //#endregion
26568
26922
  //#region src/routes/account/invitations/[invitationId]/decline/POST.ts
26569
- const handler$14 = async (c) => {
26923
+ const handler$15 = async (c) => {
26570
26924
  const user = c.get("user");
26571
26925
  const invitationId = c.req.param("invitationId");
26572
26926
  if (!invitationId) return c.json(ErrorResponseSchema.parse({ error: "Invitation id is required" }), 400);
@@ -26645,13 +26999,13 @@ function appRowToCustomAppDetail(row) {
26645
26999
  }
26646
27000
  //#endregion
26647
27001
  //#region src/routes/account/apps/GET.ts
26648
- const handler$13 = async (c) => {
27002
+ const handler$14 = async (c) => {
26649
27003
  const apps = (await listAppsForOrganization(c.get("organization").organizationId)).map(appRowToCatalogEntry);
26650
27004
  return c.json(ListAppsResponseSchema.parse(apps));
26651
27005
  };
26652
27006
  //#endregion
26653
27007
  //#region src/routes/account/apps/POST.ts
26654
- const handler$12 = async (c) => {
27008
+ const handler$13 = async (c) => {
26655
27009
  const organization = c.get("organization");
26656
27010
  const parsed = CreateCustomAppRequestSchema.safeParse(await c.req.json().catch(() => null));
26657
27011
  if (!parsed.success) {
@@ -26684,7 +27038,7 @@ const handler$12 = async (c) => {
26684
27038
  };
26685
27039
  //#endregion
26686
27040
  //#region src/routes/account/apps/discover/POST.ts
26687
- const handler$11 = async (c) => {
27041
+ const handler$12 = async (c) => {
26688
27042
  const parsed = McpDiscoverRequestSchema.safeParse(await c.req.json().catch(() => null));
26689
27043
  if (!parsed.success) return c.json({ error: "Invalid request body" }, 400);
26690
27044
  try {
@@ -26698,7 +27052,7 @@ const handler$11 = async (c) => {
26698
27052
  };
26699
27053
  //#endregion
26700
27054
  //#region src/routes/account/apps/discover-openapi/POST.ts
26701
- const handler$10 = async (c) => {
27055
+ const handler$11 = async (c) => {
26702
27056
  const parsed = OpenApiDiscoverRequestSchema.safeParse(await c.req.json().catch(() => null));
26703
27057
  if (!parsed.success) return c.json({ error: "Invalid request body" }, 400);
26704
27058
  try {
@@ -26711,7 +27065,7 @@ const handler$10 = async (c) => {
26711
27065
  };
26712
27066
  //#endregion
26713
27067
  //#region src/routes/account/apps/discover-graphql/POST.ts
26714
- const handler$9 = async (c) => {
27068
+ const handler$10 = async (c) => {
26715
27069
  const parsed = GraphqlDiscoverRequestSchema.safeParse(await c.req.json().catch(() => null));
26716
27070
  if (!parsed.success) return c.json({ error: "Invalid request body" }, 400);
26717
27071
  try {
@@ -26724,7 +27078,7 @@ const handler$9 = async (c) => {
26724
27078
  };
26725
27079
  //#endregion
26726
27080
  //#region src/routes/account/apps/[slug]/mcp/oauth/connections/POST.ts
26727
- const handler$8 = async (c) => {
27081
+ const handler$9 = async (c) => {
26728
27082
  const organization = c.get("organization");
26729
27083
  const user = c.get("user");
26730
27084
  const appSlug = c.req.param("slug")?.trim();
@@ -26782,7 +27136,7 @@ function buildOAuthWebLandingUrl(webOrigin, params) {
26782
27136
  }
26783
27137
  //#endregion
26784
27138
  //#region src/routes/account/mcp/oauth/callback/GET.ts
26785
- const handler$7 = async (c) => {
27139
+ const handler$8 = async (c) => {
26786
27140
  const code = c.req.query("code")?.trim();
26787
27141
  const state = c.req.query("state")?.trim();
26788
27142
  const oauthError = c.req.query("error")?.trim();
@@ -26830,7 +27184,7 @@ const handler$7 = async (c) => {
26830
27184
  };
26831
27185
  //#endregion
26832
27186
  //#region src/routes/account/apps/slug-available/GET.ts
26833
- const handler$6 = async (c) => {
27187
+ const handler$7 = async (c) => {
26834
27188
  const organization = c.get("organization");
26835
27189
  const parsed = AppSlugAvailabilityQuerySchema.safeParse({ slug: c.req.query("slug") });
26836
27190
  if (!parsed.success) return c.json(ErrorResponseSchema.parse({ error: "Invalid slug query" }), 400);
@@ -26841,7 +27195,7 @@ const handler$6 = async (c) => {
26841
27195
  };
26842
27196
  //#endregion
26843
27197
  //#region src/routes/account/apps/[slug]/GET.ts
26844
- const handler$5 = async (c) => {
27198
+ const handler$6 = async (c) => {
26845
27199
  const organization = c.get("organization");
26846
27200
  const slug = c.req.param("slug") ?? "";
26847
27201
  if (!slug) return c.json(ErrorResponseSchema.parse({ error: "App not found" }), 404);
@@ -26855,7 +27209,7 @@ const handler$5 = async (c) => {
26855
27209
  };
26856
27210
  //#endregion
26857
27211
  //#region src/routes/account/api-keys/GET.ts
26858
- const handler$4 = async (c) => {
27212
+ const handler$5 = async (c) => {
26859
27213
  const { organizationId } = c.get("organization");
26860
27214
  const user = c.get("user");
26861
27215
  const records = apiKeyListScope(accessContext(c)).kind === "all" ? await listOrgPlatformApiKeysForOrganization(organizationId) : await listOrgPlatformApiKeysForUser(organizationId, user.id);
@@ -26872,7 +27226,7 @@ const handler$4 = async (c) => {
26872
27226
  };
26873
27227
  //#endregion
26874
27228
  //#region src/routes/account/api-keys/POST.ts
26875
- const handler$3 = async (c) => {
27229
+ const handler$4 = async (c) => {
26876
27230
  const { organizationId } = c.get("organization");
26877
27231
  const user = c.get("user");
26878
27232
  const body = CreateApiKeyRequestSchema.parse(await c.req.json());
@@ -26895,7 +27249,7 @@ const handler$3 = async (c) => {
26895
27249
  };
26896
27250
  //#endregion
26897
27251
  //#region src/routes/account/api-keys/[apiKeyId]/DELETE.ts
26898
- const handler$2 = async (c) => {
27252
+ const handler$3 = async (c) => {
26899
27253
  const { organizationId } = c.get("organization");
26900
27254
  const user = c.get("user");
26901
27255
  const apiKeyId = c.req.param("apiKeyId");
@@ -26992,7 +27346,7 @@ async function postSlackWebhookPayload(payload) {
26992
27346
  }
26993
27347
  //#endregion
26994
27348
  //#region src/routes/account/team-requests/POST.ts
26995
- const handler$1 = async (c) => {
27349
+ const handler$2 = async (c) => {
26996
27350
  const user = c.get("user");
26997
27351
  const organizationContext = c.get("organization");
26998
27352
  const parsed = SubmitTeamRequestRequestSchema.safeParse(await c.req.json().catch(() => null));
@@ -27031,7 +27385,7 @@ function mountAccountRoutes(options) {
27031
27385
  const projectScoped = new Hono();
27032
27386
  const protect = requireSession(createDefaultAuthJwtVerifier());
27033
27387
  const deleteCredential = createDeleteCredentialHandler({ mcp: options.mcp });
27034
- account.get("/mcp/oauth/callback", handler$7);
27388
+ account.get("/mcp/oauth/callback", handler$8);
27035
27389
  account.use("/*", protect);
27036
27390
  orgScoped.use("/*", protect);
27037
27391
  orgScoped.use("/*", requireOrganization());
@@ -27051,91 +27405,91 @@ function mountAccountRoutes(options) {
27051
27405
  const requireProjectManageMembers = authorize(projectActions.manageMembers);
27052
27406
  const requireInvitableProjectRole = authorizePayload(InviteProjectMembersRequestSchema, ({ c, ctx, body }) => canInviteToProject(ctx, { invitePermission: getProjectInvitePermission(c) }, body.role));
27053
27407
  const requireOrgParam = requireOrganizationParam();
27054
- account.get("/organizations", handler$77);
27055
- account.get("/organizations/slug-available", handler$76);
27408
+ account.get("/organizations", handler$78);
27409
+ account.get("/organizations/slug-available", handler$77);
27056
27410
  account.post("/organizations", createOrganizationHandler(options));
27057
- account.get("/organizations/:organizationId", requireOrgParam, handler$75);
27058
- account.patch("/organizations/:organizationId", requireOrgParam, requireOrgUpdate, handler$74);
27059
- account.get("/organizations/:organizationId/branding", requireOrgParam, handler$73);
27060
- account.patch("/organizations/:organizationId/branding", requireOrgParam, requireOrgUpdate, handler$72);
27061
- account.post("/organizations/:organizationId/branding/logo/presign", requireOrgParam, requireOrgUpdate, handler$71);
27062
- account.get("/invitations", handler$16);
27063
- account.post("/invitations/:invitationId/accept", handler$15);
27064
- account.post("/invitations/:invitationId/decline", handler$14);
27065
- account.get("/users/me/avatar", handler$82);
27066
- account.post("/users/me/avatar/presign", handler$81);
27067
- account.patch("/users/me/avatar", handler$80);
27068
- account.get("/users/me/preferences", handler$79);
27069
- account.patch("/users/me/preferences", handler$78);
27411
+ account.get("/organizations/:organizationId", requireOrgParam, handler$76);
27412
+ account.patch("/organizations/:organizationId", requireOrgParam, requireOrgUpdate, handler$75);
27413
+ account.get("/organizations/:organizationId/branding", requireOrgParam, handler$74);
27414
+ account.patch("/organizations/:organizationId/branding", requireOrgParam, requireOrgUpdate, handler$73);
27415
+ account.post("/organizations/:organizationId/branding/logo/presign", requireOrgParam, requireOrgUpdate, handler$72);
27416
+ account.get("/invitations", handler$17);
27417
+ account.post("/invitations/:invitationId/accept", handler$16);
27418
+ account.post("/invitations/:invitationId/decline", handler$15);
27419
+ account.get("/users/me/avatar", handler$83);
27420
+ account.post("/users/me/avatar/presign", handler$82);
27421
+ account.patch("/users/me/avatar", handler$81);
27422
+ account.get("/users/me/preferences", handler$80);
27423
+ account.patch("/users/me/preferences", handler$79);
27070
27424
  const withOrgDb = withOrganizationProjectDatabase();
27071
- orgScoped.get("/apps", handler$13);
27072
- orgScoped.get("/apps/slug-available", handler$6);
27073
- orgScoped.post("/apps/discover", requireOrgUpdate, handler$11);
27074
- orgScoped.post("/apps/discover-openapi", requireOrgUpdate, handler$10);
27075
- orgScoped.post("/apps/discover-graphql", requireOrgUpdate, handler$9);
27076
- orgScoped.post("/apps", requireOrgUpdate, handler$12);
27077
- orgScoped.post("/apps/:slug/mcp/oauth/connections", requireOrgUpdate, withOrgDb, handler$8);
27078
- orgScoped.get("/apps/:slug", handler$5);
27079
- account.post("/team-requests", requireOrganization(), handler$1);
27080
- orgScoped.get("/members", handler$20);
27081
- orgScoped.post("/members/invitations", requireUserInvite, requireInvitableRole, handler$19);
27082
- orgScoped.patch("/members/:userId", requireUserManage, handler$18);
27083
- orgScoped.delete("/members/:userId", requireUserManage, handler$17);
27084
- orgScoped.get("/api-keys", handler$4);
27085
- orgScoped.post("/api-keys", requireApiKeyCreate, handler$3);
27086
- orgScoped.delete("/api-keys/:apiKeyId", handler$2);
27087
- orgScoped.get("/agents", withOrgDb, handler$68);
27088
- orgScoped.get("/agents/:agentId", withOrgDb, handler$67);
27089
- orgScoped.get("/agents/:agentId/memory/files", withOrgDb, handler$66);
27090
- orgScoped.get("/agents/:agentId/memory/files/content", withOrgDb, handler$65);
27091
- orgScoped.get("/agents/:agentId/workspace/files", withOrgDb, handler$64);
27092
- orgScoped.get("/agents/:agentId/workspace/files/content", withOrgDb, handler$63);
27093
- orgScoped.get("/workflows", withOrgDb, handler$61);
27094
- orgScoped.get("/workflows/:workflowId", withOrgDb, handler$60);
27095
- orgScoped.get("/skills", withOrgDb, handler$58);
27096
- orgScoped.get("/skills/:skillId", withOrgDb, handler$57);
27097
- orgScoped.get("/triggers", withOrgDb, handler$56);
27098
- orgScoped.get("/triggers/:triggerId", withOrgDb, handler$55);
27099
- orgScoped.get("/triggers/:triggerId/runs", withOrgDb, handler$54);
27100
- orgScoped.get("/triggers/:triggerId/file", withOrgDb, handler$53);
27101
- orgScoped.get("/triggers/:triggerId/overview", withOrgDb, handler$52);
27102
- orgScoped.patch("/triggers/:triggerId/attachments/:attachmentId", withOrgDb, handler$51);
27103
- orgScoped.get("/recents", withOrgDb, handler$50);
27104
- orgScoped.get("/history", withOrgDb, handler$70);
27105
- orgScoped.get("/history/:runId", withOrgDb, handler$69);
27106
- orgScoped.post("/workflows/runs/:runId/cancel", withOrgDb, handler$59);
27107
- orgScoped.post("/agents/sessions/:sessionId/cancel", withOrgDb, handler$62);
27108
- orgScoped.get("/credentials", withOrgDb, handler$24);
27109
- orgScoped.post("/credentials", withOrgDb, handler$23);
27110
- orgScoped.get("/credentials/:credentialId", withOrgDb, (c, next) => c.req.param("credentialId") === "instances" ? next() : handler$22(c, next));
27111
- orgScoped.patch("/credentials/:credentialId", withOrgDb, handler$21);
27425
+ orgScoped.get("/apps", handler$14);
27426
+ orgScoped.get("/apps/slug-available", handler$7);
27427
+ orgScoped.post("/apps/discover", requireOrgUpdate, handler$12);
27428
+ orgScoped.post("/apps/discover-openapi", requireOrgUpdate, handler$11);
27429
+ orgScoped.post("/apps/discover-graphql", requireOrgUpdate, handler$10);
27430
+ orgScoped.post("/apps", requireOrgUpdate, handler$13);
27431
+ orgScoped.post("/apps/:slug/mcp/oauth/connections", requireOrgUpdate, withOrgDb, handler$9);
27432
+ orgScoped.get("/apps/:slug", handler$6);
27433
+ account.post("/team-requests", requireOrganization(), handler$2);
27434
+ orgScoped.get("/members", handler$21);
27435
+ orgScoped.post("/members/invitations", requireUserInvite, requireInvitableRole, handler$20);
27436
+ orgScoped.patch("/members/:userId", requireUserManage, handler$19);
27437
+ orgScoped.delete("/members/:userId", requireUserManage, handler$18);
27438
+ orgScoped.get("/api-keys", handler$5);
27439
+ orgScoped.post("/api-keys", requireApiKeyCreate, handler$4);
27440
+ orgScoped.delete("/api-keys/:apiKeyId", handler$3);
27441
+ orgScoped.get("/agents", withOrgDb, handler$69);
27442
+ orgScoped.get("/agents/:agentId", withOrgDb, handler$68);
27443
+ orgScoped.get("/agents/:agentId/memory/files", withOrgDb, handler$67);
27444
+ orgScoped.get("/agents/:agentId/memory/files/content", withOrgDb, handler$66);
27445
+ orgScoped.get("/agents/:agentId/workspace/files", withOrgDb, handler$65);
27446
+ orgScoped.get("/agents/:agentId/workspace/files/content", withOrgDb, handler$64);
27447
+ orgScoped.get("/workflows", withOrgDb, handler$62);
27448
+ orgScoped.get("/workflows/:workflowId", withOrgDb, handler$61);
27449
+ orgScoped.get("/skills", withOrgDb, handler$59);
27450
+ orgScoped.get("/skills/:skillId", withOrgDb, handler$58);
27451
+ orgScoped.get("/triggers", withOrgDb, handler$57);
27452
+ orgScoped.get("/triggers/:triggerId", withOrgDb, handler$56);
27453
+ orgScoped.get("/triggers/:triggerId/runs", withOrgDb, handler$55);
27454
+ orgScoped.get("/triggers/:triggerId/file", withOrgDb, handler$54);
27455
+ orgScoped.get("/triggers/:triggerId/overview", withOrgDb, handler$53);
27456
+ orgScoped.patch("/triggers/:triggerId/attachments/:attachmentId", withOrgDb, handler$52);
27457
+ orgScoped.get("/recents", withOrgDb, handler$51);
27458
+ orgScoped.get("/history", withOrgDb, handler$71);
27459
+ orgScoped.get("/history/:runId", withOrgDb, handler$70);
27460
+ orgScoped.post("/workflows/runs/:runId/cancel", withOrgDb, handler$60);
27461
+ orgScoped.post("/agents/sessions/:sessionId/cancel", withOrgDb, handler$63);
27462
+ orgScoped.get("/credentials", withOrgDb, handler$25);
27463
+ orgScoped.post("/credentials", withOrgDb, handler$24);
27464
+ orgScoped.get("/credentials/:credentialId", withOrgDb, (c, next) => c.req.param("credentialId") === "instances" ? next() : handler$23(c, next));
27465
+ orgScoped.patch("/credentials/:credentialId", withOrgDb, handler$22);
27112
27466
  orgScoped.delete("/credentials/:credentialId", withOrgDb, deleteCredential);
27113
- orgScoped.get("/projects", handler$49);
27114
- orgScoped.get("/projects/slug-available", handler$46);
27115
- orgScoped.get("/projects/metrics", withOrgDb, handler$48);
27116
- orgScoped.post("/projects", handler$47);
27117
- projectScoped.get("/:projectId", requireProject(), requireProjectMember, handler$45);
27118
- projectScoped.patch("/:projectId", requireProject(), requireProjectMember, requireProjectUpdate, handler$44);
27119
- projectScoped.delete("/:projectId", requireProject(), requireProjectMember, requireProjectDelete, handler$43);
27120
- projectScoped.get("/:projectId/settings", requireProject(), requireProjectMember, handler$26);
27121
- projectScoped.patch("/:projectId/settings", requireProject(), requireProjectMember, requireProjectUpdate, handler$25);
27122
- projectScoped.get("/:projectId/members", requireProject(), requireProjectMember, handler$31);
27123
- projectScoped.post("/:projectId/members", requireProject(), requireProjectMember, requireInvitableProjectRole, handler$30);
27124
- projectScoped.patch("/:projectId/members/:userId", requireProject(), requireProjectMember, requireProjectManageMembers, handler$29);
27125
- projectScoped.delete("/:projectId/members/:userId", requireProject(), requireProjectMember, requireProjectManageMembers, handler$28);
27126
- projectScoped.delete("/:projectId/members/me", requireProject(), requireProjectMember, handler$27);
27467
+ orgScoped.get("/projects", handler$50);
27468
+ orgScoped.get("/projects/slug-available", handler$47);
27469
+ orgScoped.get("/projects/metrics", withOrgDb, handler$49);
27470
+ orgScoped.post("/projects", handler$48);
27471
+ projectScoped.get("/:projectId", requireProject(), requireProjectMember, handler$46);
27472
+ projectScoped.patch("/:projectId", requireProject(), requireProjectMember, requireProjectUpdate, handler$45);
27473
+ projectScoped.delete("/:projectId", requireProject(), requireProjectMember, requireProjectDelete, handler$44);
27474
+ projectScoped.get("/:projectId/settings", requireProject(), requireProjectMember, handler$27);
27475
+ projectScoped.patch("/:projectId/settings", requireProject(), requireProjectMember, requireProjectUpdate, handler$26);
27476
+ projectScoped.get("/:projectId/members", requireProject(), requireProjectMember, handler$32);
27477
+ projectScoped.post("/:projectId/members", requireProject(), requireProjectMember, requireInvitableProjectRole, handler$31);
27478
+ projectScoped.patch("/:projectId/members/:userId", requireProject(), requireProjectMember, requireProjectManageMembers, handler$30);
27479
+ projectScoped.delete("/:projectId/members/:userId", requireProject(), requireProjectMember, requireProjectManageMembers, handler$29);
27480
+ projectScoped.delete("/:projectId/members/me", requireProject(), requireProjectMember, handler$28);
27127
27481
  projectScoped.get("/:projectId/reachability", requireProject(), requireProjectMember, createProjectReachabilityHandler(options.hosting));
27128
- projectScoped.get("/:projectId/files", requireProject(), requireProjectMember, withOrgDb, handler$33);
27129
- projectScoped.post("/:projectId/agents/:slug/attachments/presign", requireProject(), requireProjectMember, withOrgDb, handler$35);
27130
- projectScoped.get("/:projectId/agents/:slug/attachments/:key{.+}", requireProject(), requireProjectMember, withOrgDb, handler$34);
27131
- projectScoped.get("/:projectId/artifacts/:artifactId/files/content", requireProject(), requireProjectMember, handler$32);
27132
- projectScoped.get("/:projectId/deployments", requireProject(), requireProjectMember, handler$42);
27133
- projectScoped.get("/:projectId/artifacts/active/download", requireProject(), requireProjectMember, requireProjectDeploy, handler$40);
27134
- projectScoped.get("/:projectId/artifacts/active/source", requireProject(), requireProjectMember, withOrgDb, handler$39);
27135
- projectScoped.post("/:projectId/artifacts", requireProject(), requireProjectMember, requireProjectDeploy, handler$41);
27136
- projectScoped.post("/:projectId/artifacts/:artifactId/complete", requireProject(), requireProjectMember, requireProjectDeploy, handler$38);
27137
- projectScoped.post("/:projectId/artifacts/:artifactId/source/presign", requireProject(), requireProjectMember, requireProjectDeploy, handler$37);
27138
- projectScoped.post("/:projectId/artifacts/:artifactId/source/manifest", requireProject(), requireProjectMember, requireProjectDeploy, handler$36);
27482
+ projectScoped.get("/:projectId/files", requireProject(), requireProjectMember, withOrgDb, handler$34);
27483
+ projectScoped.post("/:projectId/agents/:slug/attachments/presign", requireProject(), requireProjectMember, withOrgDb, handler$36);
27484
+ projectScoped.get("/:projectId/agents/:slug/attachments/:key{.+}", requireProject(), requireProjectMember, withOrgDb, handler$35);
27485
+ projectScoped.get("/:projectId/artifacts/:artifactId/files/content", requireProject(), requireProjectMember, handler$33);
27486
+ projectScoped.get("/:projectId/deployments", requireProject(), requireProjectMember, handler$43);
27487
+ projectScoped.get("/:projectId/artifacts/active/download", requireProject(), requireProjectMember, requireProjectDeploy, handler$41);
27488
+ projectScoped.get("/:projectId/artifacts/active/source", requireProject(), requireProjectMember, withOrgDb, handler$40);
27489
+ projectScoped.post("/:projectId/artifacts", requireProject(), requireProjectMember, requireProjectDeploy, handler$42);
27490
+ projectScoped.post("/:projectId/artifacts/:artifactId/complete", requireProject(), requireProjectMember, requireProjectDeploy, handler$39);
27491
+ projectScoped.post("/:projectId/artifacts/:artifactId/source/presign", requireProject(), requireProjectMember, requireProjectDeploy, handler$38);
27492
+ projectScoped.post("/:projectId/artifacts/:artifactId/source/manifest", requireProject(), requireProjectMember, requireProjectDeploy, handler$37);
27139
27493
  orgScoped.route("/projects", projectScoped);
27140
27494
  account.route("/", orgScoped);
27141
27495
  return account;
@@ -27261,6 +27615,48 @@ function mountInternalRoutes(workerToken, tokenRefresh, llmProxy, mcp) {
27261
27615
  return internal;
27262
27616
  }
27263
27617
  //#endregion
27618
+ //#region src/routes/public/models/GET.ts
27619
+ const VERCEL_MODELS_URL = "https://ai-gateway.vercel.sh/v1/models";
27620
+ const CACHE_TTL_MS = 3600 * 1e3;
27621
+ const VercelModelListEntrySchema = z.object({ id: z.string().min(1) });
27622
+ const VercelModelListResponseSchema = z.object({ data: z.array(VercelModelListEntrySchema) });
27623
+ let cache;
27624
+ let pendingFetch;
27625
+ async function fetchModelIdsFromVercel() {
27626
+ const response = await fetch(VERCEL_MODELS_URL, { headers: { accept: "application/json" } });
27627
+ if (!response.ok) throw new Error(`Vercel models API responded ${response.status}`);
27628
+ const parsed = VercelModelListResponseSchema.safeParse(await response.json());
27629
+ if (!parsed.success || parsed.data.data.length === 0) throw new Error("Vercel models API response had no models");
27630
+ return parsed.data.data.map((entry) => entry.id);
27631
+ }
27632
+ async function loadModelIds() {
27633
+ if (cache && Date.now() - cache.fetchedAt < CACHE_TTL_MS) return cache.models;
27634
+ if (pendingFetch) return pendingFetch;
27635
+ pendingFetch = (async () => {
27636
+ try {
27637
+ const models = await fetchModelIdsFromVercel();
27638
+ cache = {
27639
+ fetchedAt: Date.now(),
27640
+ models
27641
+ };
27642
+ return models;
27643
+ } finally {
27644
+ pendingFetch = void 0;
27645
+ }
27646
+ })();
27647
+ return pendingFetch;
27648
+ }
27649
+ async function handler$1(c) {
27650
+ try {
27651
+ const models = await loadModelIds();
27652
+ return c.json(PublicModelsResponseSchema.parse({ models }));
27653
+ } catch (error) {
27654
+ if (cache) return c.json(PublicModelsResponseSchema.parse({ models: cache.models }));
27655
+ const message = error instanceof Error ? error.message : "Failed to load models";
27656
+ return c.json({ error: message }, 502);
27657
+ }
27658
+ }
27659
+ //#endregion
27264
27660
  //#region src/lib/contact-rate-limit.ts
27265
27661
  const WINDOW_MS = 6e4;
27266
27662
  const MAX_REQUESTS_PER_WINDOW = 5;
@@ -27388,6 +27784,7 @@ async function createApp$1(auth, options) {
27388
27784
  },
27389
27785
  mountAccount: async (app) => {
27390
27786
  app.post("/api/public/contact", handler);
27787
+ app.get("/api/public/models", handler$1);
27391
27788
  app.route("/api", mountAccountRoutes({
27392
27789
  hosting: options.hosting,
27393
27790
  storage: options.storage,
@@ -27484,4 +27881,4 @@ async function startPlatformServer(platformConfig, hooks = {}) {
27484
27881
  //#endregion
27485
27882
  export { r1 as S, o as _, c as a, b$1 as b, a$1 as c, c$1 as d, r as f, e as g, u as h, n$1 as i, d$1 as l, b as m, n, p as o, r$1 as p, i as r, x as s, startPlatformServer as t, x$1 as u, r$3 as v, I1 as x, h as y };
27486
27883
 
27487
- //# sourceMappingURL=start-C4wv93sk.mjs.map
27884
+ //# sourceMappingURL=start-uh5HeXO7.mjs.map