@keystrokehq/platform 1.0.25 → 1.0.27

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 (302) hide show
  1. package/dist/{awk2-LA3USKJP-B9Jc5oxV.cjs → awk2-LA3USKJP-DSodU9EK.cjs} +2 -2
  2. package/dist/{awk2-LA3USKJP-B9Jc5oxV.cjs.map → awk2-LA3USKJP-DSodU9EK.cjs.map} +1 -1
  3. package/dist/{awk2-LA3USKJP-ChC2oPn0.mjs → awk2-LA3USKJP-XV05f-xq.mjs} +2 -2
  4. package/dist/{awk2-LA3USKJP-ChC2oPn0.mjs.map → awk2-LA3USKJP-XV05f-xq.mjs.map} +1 -1
  5. package/dist/{base64-C2AIWVNC-CSHOBVh0.cjs → base64-C2AIWVNC-Ciwpp79h.cjs} +2 -2
  6. package/dist/{base64-C2AIWVNC-CSHOBVh0.cjs.map → base64-C2AIWVNC-Ciwpp79h.cjs.map} +1 -1
  7. package/dist/{base64-C2AIWVNC-RDV-fjP5.mjs → base64-C2AIWVNC-DJMT7Bs8.mjs} +2 -2
  8. package/dist/{base64-C2AIWVNC-RDV-fjP5.mjs.map → base64-C2AIWVNC-DJMT7Bs8.mjs.map} +1 -1
  9. package/dist/{bash-YZ33HQZQ-gVLcHRgW.cjs → bash-YZ33HQZQ-BG32kEje.cjs} +2 -2
  10. package/dist/{bash-YZ33HQZQ-gVLcHRgW.cjs.map → bash-YZ33HQZQ-BG32kEje.cjs.map} +1 -1
  11. package/dist/{bash-YZ33HQZQ-DFIMFNzU.mjs → bash-YZ33HQZQ-CRsEMAfz.mjs} +2 -2
  12. package/dist/{bash-YZ33HQZQ-DFIMFNzU.mjs.map → bash-YZ33HQZQ-CRsEMAfz.mjs.map} +1 -1
  13. package/dist/{cat-TSFMZVYS-aPKiyOx5.mjs → cat-TSFMZVYS-Dp256KAl.mjs} +3 -3
  14. package/dist/{cat-TSFMZVYS-aPKiyOx5.mjs.map → cat-TSFMZVYS-Dp256KAl.mjs.map} +1 -1
  15. package/dist/{cat-TSFMZVYS-N_tnh7Yg.cjs → cat-TSFMZVYS-DyJAkSpW.cjs} +3 -3
  16. package/dist/{cat-TSFMZVYS-N_tnh7Yg.cjs.map → cat-TSFMZVYS-DyJAkSpW.cjs.map} +1 -1
  17. package/dist/{chunk-5H5SCKJM-tVb1Gg5Z.cjs → chunk-5H5SCKJM-_XORDVMb.cjs} +2 -2
  18. package/dist/{chunk-5H5SCKJM-tVb1Gg5Z.cjs.map → chunk-5H5SCKJM-_XORDVMb.cjs.map} +1 -1
  19. package/dist/{chunk-5H5SCKJM-Ds_EdBTz.mjs → chunk-5H5SCKJM-oDBe2vU6.mjs} +2 -2
  20. package/dist/{chunk-5H5SCKJM-Ds_EdBTz.mjs.map → chunk-5H5SCKJM-oDBe2vU6.mjs.map} +1 -1
  21. package/dist/{chunk-AQ6FYS2X-D-IvoAFX.cjs → chunk-AQ6FYS2X-DUpLjfnT.cjs} +2 -2
  22. package/dist/{chunk-AQ6FYS2X-D-IvoAFX.cjs.map → chunk-AQ6FYS2X-DUpLjfnT.cjs.map} +1 -1
  23. package/dist/{chunk-AQ6FYS2X-_hfC9yZP.mjs → chunk-AQ6FYS2X-DjxmvSeP.mjs} +2 -2
  24. package/dist/{chunk-AQ6FYS2X-_hfC9yZP.mjs.map → chunk-AQ6FYS2X-DjxmvSeP.mjs.map} +1 -1
  25. package/dist/{chunk-CHFEPBH4-BscOcaep.mjs → chunk-CHFEPBH4-BdkcwMbI.mjs} +2 -2
  26. package/dist/{chunk-CHFEPBH4-BscOcaep.mjs.map → chunk-CHFEPBH4-BdkcwMbI.mjs.map} +1 -1
  27. package/dist/{chunk-CHFEPBH4-CcJ1NQhl.cjs → chunk-CHFEPBH4-CYhycw6A.cjs} +2 -2
  28. package/dist/{chunk-CHFEPBH4-CcJ1NQhl.cjs.map → chunk-CHFEPBH4-CYhycw6A.cjs.map} +1 -1
  29. package/dist/{chunk-EBAPSGAO-BTjN3Z07.mjs → chunk-EBAPSGAO-B78H3bbx.mjs} +2 -2
  30. package/dist/{chunk-EBAPSGAO-BTjN3Z07.mjs.map → chunk-EBAPSGAO-B78H3bbx.mjs.map} +1 -1
  31. package/dist/{chunk-EBAPSGAO-lzX96xLb.cjs → chunk-EBAPSGAO-DVRJVM4Z.cjs} +2 -2
  32. package/dist/{chunk-EBAPSGAO-lzX96xLb.cjs.map → chunk-EBAPSGAO-DVRJVM4Z.cjs.map} +1 -1
  33. package/dist/{chunk-LEKBROJD-Bajw-sbV.cjs → chunk-LEKBROJD-BeOfjZWH.cjs} +2 -2
  34. package/dist/{chunk-LEKBROJD-Bajw-sbV.cjs.map → chunk-LEKBROJD-BeOfjZWH.cjs.map} +1 -1
  35. package/dist/{chunk-LEKBROJD-CgTuHxbG.mjs → chunk-LEKBROJD-DMyDHAOn.mjs} +2 -2
  36. package/dist/{chunk-LEKBROJD-CgTuHxbG.mjs.map → chunk-LEKBROJD-DMyDHAOn.mjs.map} +1 -1
  37. package/dist/{chunk-VPADYNBD-3hdEswQG.mjs → chunk-VPADYNBD-DFZrL1S2.mjs} +2 -2
  38. package/dist/{chunk-VPADYNBD-3hdEswQG.mjs.map → chunk-VPADYNBD-DFZrL1S2.mjs.map} +1 -1
  39. package/dist/{chunk-VPADYNBD-BvCJI7D9.cjs → chunk-VPADYNBD-FZH_vpgC.cjs} +2 -2
  40. package/dist/{chunk-VPADYNBD-BvCJI7D9.cjs.map → chunk-VPADYNBD-FZH_vpgC.cjs.map} +1 -1
  41. package/dist/{chunk-YCLFEX4T-CXOOY758.mjs → chunk-YCLFEX4T-Bvl2yMFc.mjs} +2 -2
  42. package/dist/{chunk-YCLFEX4T-CXOOY758.mjs.map → chunk-YCLFEX4T-Bvl2yMFc.mjs.map} +1 -1
  43. package/dist/{chunk-YCLFEX4T--Zpla83W.cjs → chunk-YCLFEX4T-DL4l8ArM.cjs} +2 -2
  44. package/dist/{chunk-YCLFEX4T--Zpla83W.cjs.map → chunk-YCLFEX4T-DL4l8ArM.cjs.map} +1 -1
  45. package/dist/{column-XT6UFXNQ-CBP0KSJ5.cjs → column-XT6UFXNQ-D1dzvATF.cjs} +2 -2
  46. package/dist/{column-XT6UFXNQ-CBP0KSJ5.cjs.map → column-XT6UFXNQ-D1dzvATF.cjs.map} +1 -1
  47. package/dist/{column-XT6UFXNQ-DY5hfZ_8.mjs → column-XT6UFXNQ-nlTdlunB.mjs} +2 -2
  48. package/dist/{column-XT6UFXNQ-DY5hfZ_8.mjs.map → column-XT6UFXNQ-nlTdlunB.mjs.map} +1 -1
  49. package/dist/{comm-VV2LDX2J-DcN9y1cw.cjs → comm-VV2LDX2J-C2HdjuOA.cjs} +2 -2
  50. package/dist/{comm-VV2LDX2J-DcN9y1cw.cjs.map → comm-VV2LDX2J-C2HdjuOA.cjs.map} +1 -1
  51. package/dist/{comm-VV2LDX2J-sNhev0QL.mjs → comm-VV2LDX2J-CtjYGEEe.mjs} +2 -2
  52. package/dist/{comm-VV2LDX2J-sNhev0QL.mjs.map → comm-VV2LDX2J-CtjYGEEe.mjs.map} +1 -1
  53. package/dist/{config-Dk4AVqUd.d.cts → config-DmqhoHPA.d.cts} +3 -3
  54. package/dist/{config-DgMtmNQj.d.mts → config-m9Z87E2p.d.mts} +3 -3
  55. package/dist/config.cjs +1 -1
  56. package/dist/config.d.cts +1 -1
  57. package/dist/config.d.mts +1 -1
  58. package/dist/config.mjs +1 -1
  59. package/dist/{cp-BISAAS7A-5CHJZ0Wo.cjs → cp-BISAAS7A-CNNTr1t8.cjs} +2 -2
  60. package/dist/{cp-BISAAS7A-5CHJZ0Wo.cjs.map → cp-BISAAS7A-CNNTr1t8.cjs.map} +1 -1
  61. package/dist/{cp-BISAAS7A-cPu66K0P.mjs → cp-BISAAS7A-CwAw8Re0.mjs} +2 -2
  62. package/dist/{cp-BISAAS7A-cPu66K0P.mjs.map → cp-BISAAS7A-CwAw8Re0.mjs.map} +1 -1
  63. package/dist/{cut-OKARJCCV-CFVWubMp.mjs → cut-OKARJCCV-Bnfc9d4n.mjs} +3 -3
  64. package/dist/{cut-OKARJCCV-CFVWubMp.mjs.map → cut-OKARJCCV-Bnfc9d4n.mjs.map} +1 -1
  65. package/dist/{cut-OKARJCCV-4_ZPScH7.cjs → cut-OKARJCCV-ZUbHO7DV.cjs} +3 -3
  66. package/dist/{cut-OKARJCCV-4_ZPScH7.cjs.map → cut-OKARJCCV-ZUbHO7DV.cjs.map} +1 -1
  67. package/dist/{diff-MWJFIG7X-BYB5rWUI.cjs → diff-MWJFIG7X-CzjGkQ-G.cjs} +2 -2
  68. package/dist/{diff-MWJFIG7X-BYB5rWUI.cjs.map → diff-MWJFIG7X-CzjGkQ-G.cjs.map} +1 -1
  69. package/dist/{diff-MWJFIG7X-DeboFRBQ.mjs → diff-MWJFIG7X-oMJN3Qcs.mjs} +2 -2
  70. package/dist/{diff-MWJFIG7X-DeboFRBQ.mjs.map → diff-MWJFIG7X-oMJN3Qcs.mjs.map} +1 -1
  71. package/dist/{dist-CXr-QoFY.cjs → dist-BOUnkJqi.cjs} +493 -28
  72. package/dist/dist-BOUnkJqi.cjs.map +1 -0
  73. package/dist/{dist-CnDbAcWA.mjs → dist-DCDJn81K.mjs} +440 -29
  74. package/dist/dist-DCDJn81K.mjs.map +1 -0
  75. package/dist/{du-572XNP42-DL0wolJA.cjs → du-572XNP42-BqK_djxX.cjs} +2 -2
  76. package/dist/{du-572XNP42-DL0wolJA.cjs.map → du-572XNP42-BqK_djxX.cjs.map} +1 -1
  77. package/dist/{du-572XNP42-CNzRErCb.mjs → du-572XNP42-Ccz6xOX8.mjs} +2 -2
  78. package/dist/{du-572XNP42-CNzRErCb.mjs.map → du-572XNP42-Ccz6xOX8.mjs.map} +1 -1
  79. package/dist/{env-36M5BO7M-CTr_ShVD.cjs → env-36M5BO7M-BZNtzUW8.cjs} +2 -2
  80. package/dist/{env-36M5BO7M-CTr_ShVD.cjs.map → env-36M5BO7M-BZNtzUW8.cjs.map} +1 -1
  81. package/dist/{env-36M5BO7M-ChqV07sK.mjs → env-36M5BO7M-CSD0H2fx.mjs} +2 -2
  82. package/dist/{env-36M5BO7M-ChqV07sK.mjs.map → env-36M5BO7M-CSD0H2fx.mjs.map} +1 -1
  83. package/dist/{expand-JSPG6VOP-BU0w2Z0L.cjs → expand-JSPG6VOP-BeTweohI.cjs} +2 -2
  84. package/dist/{expand-JSPG6VOP-BU0w2Z0L.cjs.map → expand-JSPG6VOP-BeTweohI.cjs.map} +1 -1
  85. package/dist/{expand-JSPG6VOP-BFfPlufy.mjs → expand-JSPG6VOP-VpaF3TWn.mjs} +2 -2
  86. package/dist/{expand-JSPG6VOP-BFfPlufy.mjs.map → expand-JSPG6VOP-VpaF3TWn.mjs.map} +1 -1
  87. package/dist/{expr-5JAACS4X-H60kYXPb.cjs → expr-5JAACS4X-D814megs.cjs} +2 -2
  88. package/dist/{expr-5JAACS4X-H60kYXPb.cjs.map → expr-5JAACS4X-D814megs.cjs.map} +1 -1
  89. package/dist/{expr-5JAACS4X-ByBTHCYQ.mjs → expr-5JAACS4X-XLUssDwP.mjs} +2 -2
  90. package/dist/{expr-5JAACS4X-ByBTHCYQ.mjs.map → expr-5JAACS4X-XLUssDwP.mjs.map} +1 -1
  91. package/dist/{find-INTH3OLC-DOj4T9bg.cjs → find-INTH3OLC-BMMlQvZi.cjs} +3 -3
  92. package/dist/{find-INTH3OLC-DOj4T9bg.cjs.map → find-INTH3OLC-BMMlQvZi.cjs.map} +1 -1
  93. package/dist/{find-INTH3OLC-x7d_VCbn.mjs → find-INTH3OLC-C8vI-rhn.mjs} +3 -3
  94. package/dist/{find-INTH3OLC-x7d_VCbn.mjs.map → find-INTH3OLC-C8vI-rhn.mjs.map} +1 -1
  95. package/dist/{fold-4TQNYMSW-jXkH6DI5.cjs → fold-4TQNYMSW-ClBSFwXh.cjs} +2 -2
  96. package/dist/{fold-4TQNYMSW-jXkH6DI5.cjs.map → fold-4TQNYMSW-ClBSFwXh.cjs.map} +1 -1
  97. package/dist/{fold-4TQNYMSW-5oW-mcIw.mjs → fold-4TQNYMSW-Df1aCkbx.mjs} +2 -2
  98. package/dist/{fold-4TQNYMSW-5oW-mcIw.mjs.map → fold-4TQNYMSW-Df1aCkbx.mjs.map} +1 -1
  99. package/dist/{grep-V3LQVMRQ-CKaCo7qC.cjs → grep-V3LQVMRQ-DWLZe9ek.cjs} +4 -4
  100. package/dist/{grep-V3LQVMRQ-CKaCo7qC.cjs.map → grep-V3LQVMRQ-DWLZe9ek.cjs.map} +1 -1
  101. package/dist/{grep-V3LQVMRQ-dsdoEbQo.mjs → grep-V3LQVMRQ-D_Plk4kU.mjs} +4 -4
  102. package/dist/{grep-V3LQVMRQ-dsdoEbQo.mjs.map → grep-V3LQVMRQ-D_Plk4kU.mjs.map} +1 -1
  103. package/dist/{gzip-O5ASJAFY-D7Q43dYd.cjs → gzip-O5ASJAFY-DaL6S6xq.cjs} +2 -2
  104. package/dist/{gzip-O5ASJAFY-D7Q43dYd.cjs.map → gzip-O5ASJAFY-DaL6S6xq.cjs.map} +1 -1
  105. package/dist/{gzip-O5ASJAFY-CL8SVZ1B.mjs → gzip-O5ASJAFY-qkX6fNlH.mjs} +2 -2
  106. package/dist/{gzip-O5ASJAFY-CL8SVZ1B.mjs.map → gzip-O5ASJAFY-qkX6fNlH.mjs.map} +1 -1
  107. package/dist/{head-442HYESI-2sad2oKE.cjs → head-442HYESI-BKgO4PzV.cjs} +2 -2
  108. package/dist/{head-442HYESI-2sad2oKE.cjs.map → head-442HYESI-BKgO4PzV.cjs.map} +1 -1
  109. package/dist/{head-442HYESI-09hK8-Ip.mjs → head-442HYESI-q1Y1529l.mjs} +2 -2
  110. package/dist/{head-442HYESI-09hK8-Ip.mjs.map → head-442HYESI-q1Y1529l.mjs.map} +1 -1
  111. package/dist/{help-HZ6M2CKN-CqgXtjBp.cjs → help-HZ6M2CKN-CM8MvT7-.cjs} +2 -2
  112. package/dist/{help-HZ6M2CKN-CqgXtjBp.cjs.map → help-HZ6M2CKN-CM8MvT7-.cjs.map} +1 -1
  113. package/dist/{help-HZ6M2CKN-Bkow18oT.mjs → help-HZ6M2CKN-tVjTjGEj.mjs} +2 -2
  114. package/dist/{help-HZ6M2CKN-Bkow18oT.mjs.map → help-HZ6M2CKN-tVjTjGEj.mjs.map} +1 -1
  115. package/dist/{html-to-markdown-JW4MSQZO-CTTkLsr0.cjs → html-to-markdown-JW4MSQZO-CTGEo819.cjs} +3 -3
  116. package/dist/{html-to-markdown-JW4MSQZO-CTTkLsr0.cjs.map → html-to-markdown-JW4MSQZO-CTGEo819.cjs.map} +1 -1
  117. package/dist/{html-to-markdown-JW4MSQZO-DElH70OL.mjs → html-to-markdown-JW4MSQZO-DKpzolQL.mjs} +3 -3
  118. package/dist/{html-to-markdown-JW4MSQZO-DElH70OL.mjs.map → html-to-markdown-JW4MSQZO-DKpzolQL.mjs.map} +1 -1
  119. package/dist/{join-TBRGI3LQ-BMYEnL7k.cjs → join-TBRGI3LQ-DNgDrJKh.cjs} +2 -2
  120. package/dist/{join-TBRGI3LQ-BMYEnL7k.cjs.map → join-TBRGI3LQ-DNgDrJKh.cjs.map} +1 -1
  121. package/dist/{join-TBRGI3LQ-BAAUiNyh.mjs → join-TBRGI3LQ-DWuIuD_M.mjs} +2 -2
  122. package/dist/{join-TBRGI3LQ-BAAUiNyh.mjs.map → join-TBRGI3LQ-DWuIuD_M.mjs.map} +1 -1
  123. package/dist/{jq-4XLYLOS5-o3AAHQXu.cjs → jq-4XLYLOS5-Bszlja-3.cjs} +4 -4
  124. package/dist/{jq-4XLYLOS5-o3AAHQXu.cjs.map → jq-4XLYLOS5-Bszlja-3.cjs.map} +1 -1
  125. package/dist/{jq-4XLYLOS5-mMJaHAI-.mjs → jq-4XLYLOS5-hPLSzgJI.mjs} +4 -4
  126. package/dist/{jq-4XLYLOS5-mMJaHAI-.mjs.map → jq-4XLYLOS5-hPLSzgJI.mjs.map} +1 -1
  127. package/dist/{js-exec-N5KEZBH7-CYfKdFMB.mjs → js-exec-N5KEZBH7-BRqWQVWm.mjs} +3 -3
  128. package/dist/{js-exec-N5KEZBH7-CYfKdFMB.mjs.map → js-exec-N5KEZBH7-BRqWQVWm.mjs.map} +1 -1
  129. package/dist/{js-exec-N5KEZBH7-D-6bT7uX.cjs → js-exec-N5KEZBH7-qLi-iHSf.cjs} +3 -3
  130. package/dist/{js-exec-N5KEZBH7-D-6bT7uX.cjs.map → js-exec-N5KEZBH7-qLi-iHSf.cjs.map} +1 -1
  131. package/dist/{lib-CkIrPM7a.mjs → lib-CVjNf6WO.mjs} +2 -2
  132. package/dist/{lib-CkIrPM7a.mjs.map → lib-CVjNf6WO.mjs.map} +1 -1
  133. package/dist/{lib-Bk3llRZM.cjs → lib-DP4hgM_x.cjs} +2 -2
  134. package/dist/{lib-Bk3llRZM.cjs.map → lib-DP4hgM_x.cjs.map} +1 -1
  135. package/dist/{ln-4LGSXXGD-BSUqcMcg.cjs → ln-4LGSXXGD-Eo-aamDO.cjs} +2 -2
  136. package/dist/{ln-4LGSXXGD-BSUqcMcg.cjs.map → ln-4LGSXXGD-Eo-aamDO.cjs.map} +1 -1
  137. package/dist/{ln-4LGSXXGD-DF8SvGJM.mjs → ln-4LGSXXGD-ewS4XftL.mjs} +2 -2
  138. package/dist/{ln-4LGSXXGD-DF8SvGJM.mjs.map → ln-4LGSXXGD-ewS4XftL.mjs.map} +1 -1
  139. package/dist/{ls-ZJGQER7M-F3253TJZ.mjs → ls-ZJGQER7M-BPSWCKmc.mjs} +2 -2
  140. package/dist/{ls-ZJGQER7M-F3253TJZ.mjs.map → ls-ZJGQER7M-BPSWCKmc.mjs.map} +1 -1
  141. package/dist/{ls-ZJGQER7M-DqHcEeCG.cjs → ls-ZJGQER7M-BR6ic_HY.cjs} +2 -2
  142. package/dist/{ls-ZJGQER7M-DqHcEeCG.cjs.map → ls-ZJGQER7M-BR6ic_HY.cjs.map} +1 -1
  143. package/dist/{lzma-Bkl5Ex0I.cjs → lzma-141SuNbK.cjs} +2 -2
  144. package/dist/{lzma-Bkl5Ex0I.cjs.map → lzma-141SuNbK.cjs.map} +1 -1
  145. package/dist/{md5sum-SPU24VSG-BcS_lZ6k.cjs → md5sum-SPU24VSG-CEXQhi__.cjs} +3 -3
  146. package/dist/{md5sum-SPU24VSG-BcS_lZ6k.cjs.map → md5sum-SPU24VSG-CEXQhi__.cjs.map} +1 -1
  147. package/dist/{md5sum-SPU24VSG-C3hAsQyv.mjs → md5sum-SPU24VSG-NfddgAKZ.mjs} +3 -3
  148. package/dist/{md5sum-SPU24VSG-C3hAsQyv.mjs.map → md5sum-SPU24VSG-NfddgAKZ.mjs.map} +1 -1
  149. package/dist/{mkdir-MEPGZOB6-ZZOGFmfd.mjs → mkdir-MEPGZOB6-DNerz547.mjs} +2 -2
  150. package/dist/{mkdir-MEPGZOB6-ZZOGFmfd.mjs.map → mkdir-MEPGZOB6-DNerz547.mjs.map} +1 -1
  151. package/dist/{mkdir-MEPGZOB6-Bqk0gRX1.cjs → mkdir-MEPGZOB6-NqHdU0T1.cjs} +2 -2
  152. package/dist/{mkdir-MEPGZOB6-Bqk0gRX1.cjs.map → mkdir-MEPGZOB6-NqHdU0T1.cjs.map} +1 -1
  153. package/dist/{mv-W5BIQ646-ZKn16tDH.mjs → mv-W5BIQ646-Bjk99HWO.mjs} +2 -2
  154. package/dist/{mv-W5BIQ646-ZKn16tDH.mjs.map → mv-W5BIQ646-Bjk99HWO.mjs.map} +1 -1
  155. package/dist/{mv-W5BIQ646-6WUcDlZr.cjs → mv-W5BIQ646-CIQXUuLj.cjs} +2 -2
  156. package/dist/{mv-W5BIQ646-6WUcDlZr.cjs.map → mv-W5BIQ646-CIQXUuLj.cjs.map} +1 -1
  157. package/dist/{nl-WSDW7I4O-B0Vt0q_M.cjs → nl-WSDW7I4O-DlIGOfvL.cjs} +2 -2
  158. package/dist/{nl-WSDW7I4O-B0Vt0q_M.cjs.map → nl-WSDW7I4O-DlIGOfvL.cjs.map} +1 -1
  159. package/dist/{nl-WSDW7I4O-BNvcTZhP.mjs → nl-WSDW7I4O-DvjpUbc6.mjs} +2 -2
  160. package/dist/{nl-WSDW7I4O-BNvcTZhP.mjs.map → nl-WSDW7I4O-DvjpUbc6.mjs.map} +1 -1
  161. package/dist/{od-WOKFDJTP-CjIllp1m.mjs → od-WOKFDJTP-CIgtP05c.mjs} +2 -2
  162. package/dist/{od-WOKFDJTP-CjIllp1m.mjs.map → od-WOKFDJTP-CIgtP05c.mjs.map} +1 -1
  163. package/dist/{od-WOKFDJTP-Dy6s5iCg.cjs → od-WOKFDJTP-Cwk1Knep.cjs} +2 -2
  164. package/dist/{od-WOKFDJTP-Dy6s5iCg.cjs.map → od-WOKFDJTP-Cwk1Knep.cjs.map} +1 -1
  165. package/dist/{paste-7JC6S4DX-DrIdkQXq.cjs → paste-7JC6S4DX-BQwXeMbp.cjs} +2 -2
  166. package/dist/{paste-7JC6S4DX-DrIdkQXq.cjs.map → paste-7JC6S4DX-BQwXeMbp.cjs.map} +1 -1
  167. package/dist/{paste-7JC6S4DX-CNubZq0W.mjs → paste-7JC6S4DX-CncMWnIT.mjs} +2 -2
  168. package/dist/{paste-7JC6S4DX-CNubZq0W.mjs.map → paste-7JC6S4DX-CncMWnIT.mjs.map} +1 -1
  169. package/dist/{printf-TWGXF445-C6YtQYps.cjs → printf-TWGXF445-DY6hfxkE.cjs} +3 -3
  170. package/dist/{printf-TWGXF445-C6YtQYps.cjs.map → printf-TWGXF445-DY6hfxkE.cjs.map} +1 -1
  171. package/dist/{printf-TWGXF445-C43tlqmT.mjs → printf-TWGXF445-Dg_xdqrq.mjs} +3 -3
  172. package/dist/{printf-TWGXF445-C43tlqmT.mjs.map → printf-TWGXF445-Dg_xdqrq.mjs.map} +1 -1
  173. package/dist/{python3-POMOR4OA-BN8wtYyV.mjs → python3-POMOR4OA-CAFZif6Y.mjs} +3 -3
  174. package/dist/{python3-POMOR4OA-BN8wtYyV.mjs.map → python3-POMOR4OA-CAFZif6Y.mjs.map} +1 -1
  175. package/dist/{python3-POMOR4OA-C9cIbUPg.cjs → python3-POMOR4OA-CqDZ_Kxy.cjs} +3 -3
  176. package/dist/{python3-POMOR4OA-C9cIbUPg.cjs.map → python3-POMOR4OA-CqDZ_Kxy.cjs.map} +1 -1
  177. package/dist/{rev-5EHFX4EJ-C2igEYkV.mjs → rev-5EHFX4EJ-5FBTIJ9v.mjs} +2 -2
  178. package/dist/{rev-5EHFX4EJ-C2igEYkV.mjs.map → rev-5EHFX4EJ-5FBTIJ9v.mjs.map} +1 -1
  179. package/dist/{rev-5EHFX4EJ-DP6vRPVC.cjs → rev-5EHFX4EJ-BYsx8Jk9.cjs} +2 -2
  180. package/dist/{rev-5EHFX4EJ-DP6vRPVC.cjs.map → rev-5EHFX4EJ-BYsx8Jk9.cjs.map} +1 -1
  181. package/dist/{rg-S4FXYXWB-BIvbZAO3.cjs → rg-S4FXYXWB-CM9xV1hV.cjs} +3 -3
  182. package/dist/{rg-S4FXYXWB-BIvbZAO3.cjs.map → rg-S4FXYXWB-CM9xV1hV.cjs.map} +1 -1
  183. package/dist/{rg-S4FXYXWB-Bzkx0grz.mjs → rg-S4FXYXWB-DvnOCVVs.mjs} +3 -3
  184. package/dist/{rg-S4FXYXWB-Bzkx0grz.mjs.map → rg-S4FXYXWB-DvnOCVVs.mjs.map} +1 -1
  185. package/dist/{rm-SSGETQVQ-21wBNsmX.cjs → rm-SSGETQVQ-_r0DV-pQ.cjs} +2 -2
  186. package/dist/{rm-SSGETQVQ-21wBNsmX.cjs.map → rm-SSGETQVQ-_r0DV-pQ.cjs.map} +1 -1
  187. package/dist/{rm-SSGETQVQ-DlpUavGb.mjs → rm-SSGETQVQ-csverXyb.mjs} +2 -2
  188. package/dist/{rm-SSGETQVQ-DlpUavGb.mjs.map → rm-SSGETQVQ-csverXyb.mjs.map} +1 -1
  189. package/dist/{rmdir-OC4ZLPYA-CLv4wKB-.mjs → rmdir-OC4ZLPYA-C29p7Glg.mjs} +2 -2
  190. package/dist/{rmdir-OC4ZLPYA-CLv4wKB-.mjs.map → rmdir-OC4ZLPYA-C29p7Glg.mjs.map} +1 -1
  191. package/dist/{rmdir-OC4ZLPYA-KzZSOWgP.cjs → rmdir-OC4ZLPYA-DE1Zx2SA.cjs} +2 -2
  192. package/dist/{rmdir-OC4ZLPYA-KzZSOWgP.cjs.map → rmdir-OC4ZLPYA-DE1Zx2SA.cjs.map} +1 -1
  193. package/dist/run.cjs +1 -1
  194. package/dist/run.mjs +1 -1
  195. package/dist/{sed-S5UIK574-B_bW9MMS.cjs → sed-S5UIK574-BJGKpplS.cjs} +2 -2
  196. package/dist/{sed-S5UIK574-B_bW9MMS.cjs.map → sed-S5UIK574-BJGKpplS.cjs.map} +1 -1
  197. package/dist/{sed-S5UIK574-CneGgxHh.mjs → sed-S5UIK574-Bwca8rcT.mjs} +2 -2
  198. package/dist/{sed-S5UIK574-CneGgxHh.mjs.map → sed-S5UIK574-Bwca8rcT.mjs.map} +1 -1
  199. package/dist/{sha1sum-2PTOAFR6-BoD1jxP7.cjs → sha1sum-2PTOAFR6-Cn_m870A.cjs} +3 -3
  200. package/dist/{sha1sum-2PTOAFR6-BoD1jxP7.cjs.map → sha1sum-2PTOAFR6-Cn_m870A.cjs.map} +1 -1
  201. package/dist/{sha1sum-2PTOAFR6-CUCD3AIe.mjs → sha1sum-2PTOAFR6-DDCukIj9.mjs} +3 -3
  202. package/dist/{sha1sum-2PTOAFR6-CUCD3AIe.mjs.map → sha1sum-2PTOAFR6-DDCukIj9.mjs.map} +1 -1
  203. package/dist/{sha256sum-NS7D3IXX-z_IbCioY.mjs → sha256sum-NS7D3IXX-BAUkrIq0.mjs} +3 -3
  204. package/dist/{sha256sum-NS7D3IXX-z_IbCioY.mjs.map → sha256sum-NS7D3IXX-BAUkrIq0.mjs.map} +1 -1
  205. package/dist/{sha256sum-NS7D3IXX-C9eQapP8.cjs → sha256sum-NS7D3IXX-C5T_mkPi.cjs} +3 -3
  206. package/dist/{sha256sum-NS7D3IXX-C9eQapP8.cjs.map → sha256sum-NS7D3IXX-C5T_mkPi.cjs.map} +1 -1
  207. package/dist/{sleep-X22JJINO-Fjqgvsat.cjs → sleep-X22JJINO-BbYO8IuH.cjs} +2 -2
  208. package/dist/{sleep-X22JJINO-Fjqgvsat.cjs.map → sleep-X22JJINO-BbYO8IuH.cjs.map} +1 -1
  209. package/dist/{sleep-X22JJINO-zNpTtwBw.mjs → sleep-X22JJINO-BvvjuFPV.mjs} +2 -2
  210. package/dist/{sleep-X22JJINO-zNpTtwBw.mjs.map → sleep-X22JJINO-BvvjuFPV.mjs.map} +1 -1
  211. package/dist/{sort-SW2YEO5B-Bh4P_sxR.cjs → sort-SW2YEO5B-Ct66qHwe.cjs} +3 -3
  212. package/dist/{sort-SW2YEO5B-Bh4P_sxR.cjs.map → sort-SW2YEO5B-Ct66qHwe.cjs.map} +1 -1
  213. package/dist/{sort-SW2YEO5B-Bk88AOqW.mjs → sort-SW2YEO5B-Dpc4a1_m.mjs} +3 -3
  214. package/dist/{sort-SW2YEO5B-Bk88AOqW.mjs.map → sort-SW2YEO5B-Dpc4a1_m.mjs.map} +1 -1
  215. package/dist/{split-4KKZZXXE-CX7NAWAH.mjs → split-4KKZZXXE-3wRqm5ld.mjs} +2 -2
  216. package/dist/{split-4KKZZXXE-CX7NAWAH.mjs.map → split-4KKZZXXE-3wRqm5ld.mjs.map} +1 -1
  217. package/dist/{split-4KKZZXXE-YztCBeIv.cjs → split-4KKZZXXE-CVDyVWE1.cjs} +2 -2
  218. package/dist/{split-4KKZZXXE-YztCBeIv.cjs.map → split-4KKZZXXE-CVDyVWE1.cjs.map} +1 -1
  219. package/dist/{sqlite3-CGOEFJAO-CvY3MhNo.mjs → sqlite3-CGOEFJAO-9DNVgjjW.mjs} +3 -3
  220. package/dist/{sqlite3-CGOEFJAO-CvY3MhNo.mjs.map → sqlite3-CGOEFJAO-9DNVgjjW.mjs.map} +1 -1
  221. package/dist/{sqlite3-CGOEFJAO-6gJxh-1q.cjs → sqlite3-CGOEFJAO-CyLt8NBp.cjs} +3 -3
  222. package/dist/{sqlite3-CGOEFJAO-6gJxh-1q.cjs.map → sqlite3-CGOEFJAO-CyLt8NBp.cjs.map} +1 -1
  223. package/dist/{start-CwMjmBO4.cjs → start-4I4_mRpg.cjs} +444 -143
  224. package/dist/start-4I4_mRpg.cjs.map +1 -0
  225. package/dist/{start-DJAK3LLz.mjs → start-bZFo4MFZ.mjs} +446 -145
  226. package/dist/{start-CwMjmBO4.cjs.map → start-bZFo4MFZ.mjs.map} +1 -1
  227. package/dist/start.cjs +1 -1
  228. package/dist/start.d.cts +1 -1
  229. package/dist/start.d.mts +1 -1
  230. package/dist/start.mjs +1 -1
  231. package/dist/{strings-6WDHLGMX-Di9xOudm.cjs → strings-6WDHLGMX-CzMgE6lb.cjs} +2 -2
  232. package/dist/{strings-6WDHLGMX-Di9xOudm.cjs.map → strings-6WDHLGMX-CzMgE6lb.cjs.map} +1 -1
  233. package/dist/{strings-6WDHLGMX-DmWVv5U7.mjs → strings-6WDHLGMX-DbIq_bOR.mjs} +2 -2
  234. package/dist/{strings-6WDHLGMX-DmWVv5U7.mjs.map → strings-6WDHLGMX-DbIq_bOR.mjs.map} +1 -1
  235. package/dist/{tac-2STMMJYW-N-R33fwl.cjs → tac-2STMMJYW-Di3AWfnZ.cjs} +2 -2
  236. package/dist/{tac-2STMMJYW-N-R33fwl.cjs.map → tac-2STMMJYW-Di3AWfnZ.cjs.map} +1 -1
  237. package/dist/{tac-2STMMJYW-ByOBAfsa.mjs → tac-2STMMJYW-DkjoAMxC.mjs} +2 -2
  238. package/dist/{tac-2STMMJYW-ByOBAfsa.mjs.map → tac-2STMMJYW-DkjoAMxC.mjs.map} +1 -1
  239. package/dist/{tail-R4PCA2C4-CM_-v-Ty.mjs → tail-R4PCA2C4-BznPI_i_.mjs} +2 -2
  240. package/dist/{tail-R4PCA2C4-CM_-v-Ty.mjs.map → tail-R4PCA2C4-BznPI_i_.mjs.map} +1 -1
  241. package/dist/{tail-R4PCA2C4-DUJEa3GT.cjs → tail-R4PCA2C4-CFaX7mf-.cjs} +2 -2
  242. package/dist/{tail-R4PCA2C4-DUJEa3GT.cjs.map → tail-R4PCA2C4-CFaX7mf-.cjs.map} +1 -1
  243. package/dist/{tar-STHHZTZ6-BeDBsEaM.cjs → tar-STHHZTZ6-7rT_572V.cjs} +5 -5
  244. package/dist/{tar-STHHZTZ6-BeDBsEaM.cjs.map → tar-STHHZTZ6-7rT_572V.cjs.map} +1 -1
  245. package/dist/{tar-STHHZTZ6-Cc7A5oWK.mjs → tar-STHHZTZ6-DsIvECgA.mjs} +4 -4
  246. package/dist/{tar-STHHZTZ6-Cc7A5oWK.mjs.map → tar-STHHZTZ6-DsIvECgA.mjs.map} +1 -1
  247. package/dist/{tee-YUZ2FKCJ-yclM1pMM.cjs → tee-YUZ2FKCJ-BTlYfkIl.cjs} +2 -2
  248. package/dist/{tee-YUZ2FKCJ-yclM1pMM.cjs.map → tee-YUZ2FKCJ-BTlYfkIl.cjs.map} +1 -1
  249. package/dist/{tee-YUZ2FKCJ-C-mtNxWm.mjs → tee-YUZ2FKCJ-CYLjS-Zu.mjs} +2 -2
  250. package/dist/{tee-YUZ2FKCJ-C-mtNxWm.mjs.map → tee-YUZ2FKCJ-CYLjS-Zu.mjs.map} +1 -1
  251. package/dist/{time-D4LNBSWX-b4QjC6V2.mjs → time-D4LNBSWX-Dd89G8K7.mjs} +2 -2
  252. package/dist/{time-D4LNBSWX-b4QjC6V2.mjs.map → time-D4LNBSWX-Dd89G8K7.mjs.map} +1 -1
  253. package/dist/{time-D4LNBSWX-BugJtHdj.cjs → time-D4LNBSWX-zuIqnzTZ.cjs} +2 -2
  254. package/dist/{time-D4LNBSWX-BugJtHdj.cjs.map → time-D4LNBSWX-zuIqnzTZ.cjs.map} +1 -1
  255. package/dist/{timeout-YDCRSLPQ-aYP-QEk4.mjs → timeout-YDCRSLPQ-Bg_z7hW3.mjs} +2 -2
  256. package/dist/{timeout-YDCRSLPQ-aYP-QEk4.mjs.map → timeout-YDCRSLPQ-Bg_z7hW3.mjs.map} +1 -1
  257. package/dist/{timeout-YDCRSLPQ-Cki0C9xY.cjs → timeout-YDCRSLPQ-D_ivcSTe.cjs} +2 -2
  258. package/dist/{timeout-YDCRSLPQ-Cki0C9xY.cjs.map → timeout-YDCRSLPQ-D_ivcSTe.cjs.map} +1 -1
  259. package/dist/{touch-UA33VN3N-xU4jw5ug.cjs → touch-UA33VN3N-D0f4EyoS.cjs} +2 -2
  260. package/dist/{touch-UA33VN3N-xU4jw5ug.cjs.map → touch-UA33VN3N-D0f4EyoS.cjs.map} +1 -1
  261. package/dist/{touch-UA33VN3N-pqlC-kAN.mjs → touch-UA33VN3N-DJzb6r3T.mjs} +2 -2
  262. package/dist/{touch-UA33VN3N-pqlC-kAN.mjs.map → touch-UA33VN3N-DJzb6r3T.mjs.map} +1 -1
  263. package/dist/{tr-36LHWFRQ-Brj2qlQX.mjs → tr-36LHWFRQ-DWyDJ9vb.mjs} +2 -2
  264. package/dist/{tr-36LHWFRQ-Brj2qlQX.mjs.map → tr-36LHWFRQ-DWyDJ9vb.mjs.map} +1 -1
  265. package/dist/{tr-36LHWFRQ-CGx-7qJp.cjs → tr-36LHWFRQ-DftRfnSM.cjs} +2 -2
  266. package/dist/{tr-36LHWFRQ-CGx-7qJp.cjs.map → tr-36LHWFRQ-DftRfnSM.cjs.map} +1 -1
  267. package/dist/{tree-YLD52CNT-BIzeKtzy.cjs → tree-YLD52CNT-BYSnmNSS.cjs} +2 -2
  268. package/dist/{tree-YLD52CNT-BIzeKtzy.cjs.map → tree-YLD52CNT-BYSnmNSS.cjs.map} +1 -1
  269. package/dist/{tree-YLD52CNT-CV6QlFx_.mjs → tree-YLD52CNT-q4X_wew1.mjs} +2 -2
  270. package/dist/{tree-YLD52CNT-CV6QlFx_.mjs.map → tree-YLD52CNT-q4X_wew1.mjs.map} +1 -1
  271. package/dist/{unexpand-CADSA4VO-B-kkmzjy.cjs → unexpand-CADSA4VO-BzBmm9zG.cjs} +2 -2
  272. package/dist/{unexpand-CADSA4VO-B-kkmzjy.cjs.map → unexpand-CADSA4VO-BzBmm9zG.cjs.map} +1 -1
  273. package/dist/{unexpand-CADSA4VO-BvxPPlVX.mjs → unexpand-CADSA4VO-DAmAORZa.mjs} +2 -2
  274. package/dist/{unexpand-CADSA4VO-BvxPPlVX.mjs.map → unexpand-CADSA4VO-DAmAORZa.mjs.map} +1 -1
  275. package/dist/{uniq-XSIZR6PB-BYKg5t4V.cjs → uniq-XSIZR6PB-CXU8td9H.cjs} +3 -3
  276. package/dist/{uniq-XSIZR6PB-BYKg5t4V.cjs.map → uniq-XSIZR6PB-CXU8td9H.cjs.map} +1 -1
  277. package/dist/{uniq-XSIZR6PB-pnozGi5P.mjs → uniq-XSIZR6PB-Dgr4xZpf.mjs} +3 -3
  278. package/dist/{uniq-XSIZR6PB-pnozGi5P.mjs.map → uniq-XSIZR6PB-Dgr4xZpf.mjs.map} +1 -1
  279. package/dist/{wc-LF7NU4LA-DFvtu5C5.cjs → wc-LF7NU4LA-BavTNuqC.cjs} +3 -3
  280. package/dist/{wc-LF7NU4LA-DFvtu5C5.cjs.map → wc-LF7NU4LA-BavTNuqC.cjs.map} +1 -1
  281. package/dist/{wc-LF7NU4LA-CG7p8-C2.mjs → wc-LF7NU4LA-CnTKhMs3.mjs} +3 -3
  282. package/dist/{wc-LF7NU4LA-CG7p8-C2.mjs.map → wc-LF7NU4LA-CnTKhMs3.mjs.map} +1 -1
  283. package/dist/{xan-Y6WF3IRG-CYsYAAqf.mjs → xan-Y6WF3IRG-BpIvmPe1.mjs} +6 -6
  284. package/dist/{xan-Y6WF3IRG-CYsYAAqf.mjs.map → xan-Y6WF3IRG-BpIvmPe1.mjs.map} +1 -1
  285. package/dist/{xan-Y6WF3IRG-CGU9Fvrb.cjs → xan-Y6WF3IRG-CYnnOmgg.cjs} +6 -6
  286. package/dist/{xan-Y6WF3IRG-CGU9Fvrb.cjs.map → xan-Y6WF3IRG-CYnnOmgg.cjs.map} +1 -1
  287. package/dist/{xan-view-HDVKHFC2-DwmjHOkK.mjs → xan-view-HDVKHFC2-DVaI92zL.mjs} +3 -3
  288. package/dist/{xan-view-HDVKHFC2-DwmjHOkK.mjs.map → xan-view-HDVKHFC2-DVaI92zL.mjs.map} +1 -1
  289. package/dist/{xan-view-HDVKHFC2-rt0zW_T4.cjs → xan-view-HDVKHFC2-iFSKoOAL.cjs} +3 -3
  290. package/dist/{xan-view-HDVKHFC2-rt0zW_T4.cjs.map → xan-view-HDVKHFC2-iFSKoOAL.cjs.map} +1 -1
  291. package/dist/{xargs-MGZPH7AX-B1ETp3lo.mjs → xargs-MGZPH7AX-C0XL92Qo.mjs} +2 -2
  292. package/dist/{xargs-MGZPH7AX-B1ETp3lo.mjs.map → xargs-MGZPH7AX-C0XL92Qo.mjs.map} +1 -1
  293. package/dist/{xargs-MGZPH7AX-BPUN83vN.cjs → xargs-MGZPH7AX-D7s1cSR4.cjs} +2 -2
  294. package/dist/{xargs-MGZPH7AX-BPUN83vN.cjs.map → xargs-MGZPH7AX-D7s1cSR4.cjs.map} +1 -1
  295. package/dist/{yq-4QJW3EQG-BgEcqvDF.cjs → yq-4QJW3EQG-C9bYZv2H.cjs} +3 -3
  296. package/dist/{yq-4QJW3EQG-BgEcqvDF.cjs.map → yq-4QJW3EQG-C9bYZv2H.cjs.map} +1 -1
  297. package/dist/{yq-4QJW3EQG-Bcog824t.mjs → yq-4QJW3EQG-D2mrdxnU.mjs} +3 -3
  298. package/dist/{yq-4QJW3EQG-Bcog824t.mjs.map → yq-4QJW3EQG-D2mrdxnU.mjs.map} +1 -1
  299. package/package.json +1 -1
  300. package/dist/dist-CXr-QoFY.cjs.map +0 -1
  301. package/dist/dist-CnDbAcWA.mjs.map +0 -1
  302. package/dist/start-DJAK3LLz.mjs.map +0 -1
@@ -4961,7 +4961,7 @@ object({ reachable: boolean() });
4961
4961
  /** Org-custom app slug segment (the part after `{orgSlug}/`). Same format as project slugs. */
4962
4962
  const AppSlugSchema$1 = ProjectSlugSchema$1;
4963
4963
  /** Reads `PUBLIC_PLATFORM_URL` when explicitly set. */
4964
- function resolveExplicitPublicPlatformOrigin(env = process.env) {
4964
+ function resolveExplicitPublicPlatformOrigin$1(env = process.env) {
4965
4965
  return env.PUBLIC_PLATFORM_URL?.replace(/\/$/, "") || void 0;
4966
4966
  }
4967
4967
  const StoredRouteManifestSkillSchema$1 = object({
@@ -5007,13 +5007,17 @@ const storedRouteManifestEntryV2Schema$1 = discriminatedUnion("kind", [
5007
5007
  endpoint: string(),
5008
5008
  attachmentIds: array(string()),
5009
5009
  moduleFile: string(),
5010
+ /** sha256 of the trigger source file, baked at build time for overview change-detection. */
5011
+ sourceHash: string().optional(),
5010
5012
  attachmentSchemas: attachmentSchemasSchema$1,
5011
5013
  attachmentMeta: attachmentMetaSchema$1.optional()
5012
5014
  }),
5013
5015
  object({
5014
5016
  kind: literal("trigger-poll"),
5015
5017
  attachmentId: string(),
5018
+ attachmentIds: array(string()),
5016
5019
  moduleFile: string(),
5020
+ sourceHash: string().optional(),
5017
5021
  schedule: string(),
5018
5022
  name: string().optional(),
5019
5023
  description: string().optional()
@@ -5028,7 +5032,9 @@ const storedRouteManifestEntryV2Schema$1 = discriminatedUnion("kind", [
5028
5032
  object({
5029
5033
  kind: literal("cron-schedule"),
5030
5034
  attachmentId: string(),
5035
+ attachmentIds: array(string()),
5031
5036
  moduleFile: string(),
5037
+ sourceHash: string().optional(),
5032
5038
  schedule: string(),
5033
5039
  name: string().optional(),
5034
5040
  description: string().optional()
@@ -5182,7 +5188,9 @@ object({ patch: object({
5182
5188
  const AppCredentialFieldSchema$1 = object({
5183
5189
  label: string().trim().min(1).optional(),
5184
5190
  secret: boolean().optional(),
5185
- optional: boolean().optional()
5191
+ optional: boolean().optional(),
5192
+ description: string().trim().min(1).optional(),
5193
+ default: string().optional()
5186
5194
  });
5187
5195
  /** Credential template keyed by vault field name. */
5188
5196
  const AppCredentialFieldsSchema$1 = record(string().regex(/^[a-zA-Z][a-zA-Z0-9_]*$/), AppCredentialFieldSchema$1).refine((fields) => Object.keys(fields).length > 0, { message: "At least one credential field is required" }).refine((fields) => Object.values(fields).some((field) => field.optional !== true), { message: "At least one credential field must be required" });
@@ -5199,6 +5207,13 @@ const AppAuthKindSchema$1 = _enum([
5199
5207
  "api_key",
5200
5208
  "keystroke"
5201
5209
  ]);
5210
+ /** Composio auth scheme for API-key style connections. */
5211
+ const AppCredentialSchemeSchema$1 = _enum([
5212
+ "API_KEY",
5213
+ "BEARER_TOKEN",
5214
+ "BASIC",
5215
+ "BASIC_WITH_JWT"
5216
+ ]);
5202
5217
  /**
5203
5218
  * Where app metadata and execution are sourced (e.g. native, composio, pipedream, custom).
5204
5219
  * Opaque string — cloud/hosted entrypoints choose values; keystroke stays provider-agnostic.
@@ -5212,7 +5227,11 @@ object({
5212
5227
  logo: string().url().optional(),
5213
5228
  authKind: AppAuthKindSchema$1,
5214
5229
  oauthScopes: array(OAuthScopeOptionSchema$1)
5215
- }).extend({ source: AppSourceSchema$1 });
5230
+ }).extend({
5231
+ source: AppSourceSchema$1,
5232
+ credentialFields: AppCredentialFieldsSchema$1.optional(),
5233
+ credentialScheme: AppCredentialSchemeSchema$1.optional()
5234
+ });
5216
5235
  const customAppNameSchema$1 = string().trim().min(1, "Name is required");
5217
5236
  const AppSlugAvailabilityReasonSchema$1 = ProjectSlugAvailabilityReasonSchema$1;
5218
5237
  object({
@@ -5252,6 +5271,7 @@ object({
5252
5271
  oauthScopes: array(OAuthScopeOptionSchema$1),
5253
5272
  source: AppSourceSchema$1,
5254
5273
  credentialFields: AppCredentialFieldsSchema$1.optional(),
5274
+ credentialScheme: AppCredentialSchemeSchema$1.optional(),
5255
5275
  createdAt: string().min(1),
5256
5276
  updatedAt: string().min(1)
5257
5277
  });
@@ -5268,6 +5288,8 @@ object({
5268
5288
  source: AppSourceSchema$1,
5269
5289
  /** Custom api_key apps — vault field template for connect UI and sync. */
5270
5290
  credentialFields: AppCredentialFieldsSchema$1.optional(),
5291
+ /** Composio auth scheme when credentialFields are present. */
5292
+ credentialScheme: AppCredentialSchemeSchema$1.optional(),
5271
5293
  /** When present, the app supports agent gateway bindings (external channels). */
5272
5294
  gateway: AppGatewaySchema$1.optional()
5273
5295
  });
@@ -5357,7 +5379,7 @@ object({
5357
5379
  });
5358
5380
  const credentialSecretValueSchema$1 = record(string(), unknown()).refine((value) => Object.keys(value).length > 0, { message: "value must be a non-empty object" });
5359
5381
  function hasCredentialTarget$1(input) {
5360
- return input.projects.length > 0 || input.createOrganizationCredential || input.createUserProvidedCredential;
5382
+ return input.projects.length > 0 || input.createOrganizationCredential || input.createUserProvidedCredential || Boolean(input.credentialInstanceId?.trim());
5361
5383
  }
5362
5384
  function addMissingCredentialTargetIssue$1(ctx, path = ["projects"]) {
5363
5385
  ctx.addIssue({
@@ -5372,7 +5394,9 @@ const CredentialTargetsFieldsSchema$1 = object({
5372
5394
  createOrganizationCredential: boolean().default(false),
5373
5395
  createUserProvidedCredential: boolean().default(false),
5374
5396
  /** Display label for created credential instances (apps table / detail page). */
5375
- label: string().trim().min(1).optional()
5397
+ label: string().trim().min(1).optional(),
5398
+ /** When set, update this credential instance in place (reconnect) instead of creating a new row. */
5399
+ credentialInstanceId: string().trim().min(1).optional()
5376
5400
  });
5377
5401
  CredentialTargetsFieldsSchema$1.extend({
5378
5402
  appId: string().min(1),
@@ -5383,14 +5407,20 @@ object({
5383
5407
  status: _enum(["connected", "redirecting"]),
5384
5408
  authorizeUrl: string().url().nullable()
5385
5409
  });
5386
- CredentialTargetsFieldsSchema$1.extend({ app: string().trim().min(1) }).superRefine((input, ctx) => {
5410
+ CredentialTargetsFieldsSchema$1.extend({
5411
+ app: string().trim().min(1),
5412
+ value: credentialSecretValueSchema$1.optional()
5413
+ }).superRefine((input, ctx) => {
5387
5414
  if (!hasCredentialTarget$1(input)) addMissingCredentialTargetIssue$1(ctx);
5388
5415
  });
5389
- object({
5390
- status: _enum(["redirecting"]),
5416
+ discriminatedUnion("status", [object({
5417
+ status: literal("connected"),
5418
+ connectionId: string().min(1)
5419
+ }), object({
5420
+ status: literal("redirecting"),
5391
5421
  authorizeUrl: string().url(),
5392
- connectionId: string()
5393
- });
5422
+ connectionId: string().min(1)
5423
+ })]);
5394
5424
  CredentialTargetsFieldsSchema$1.extend({
5395
5425
  appId: string().min(1),
5396
5426
  connectionKind: AppCredentialConnectionKindSchema$1,
@@ -5486,6 +5516,14 @@ object({
5486
5516
  /** Tool/step consumer id for assignment lookup (action slug or workflow step correlation id). */
5487
5517
  consumerId: string().trim().min(1).optional()
5488
5518
  });
5519
+ object({
5520
+ error: _enum([
5521
+ "not_found",
5522
+ "forbidden",
5523
+ "mcp_execute_failed"
5524
+ ]),
5525
+ message: string()
5526
+ });
5489
5527
  object({
5490
5528
  type: _enum([
5491
5529
  "org-deletion",
@@ -6089,6 +6127,18 @@ const TriggerRunTypeSchema$1 = _enum([
6089
6127
  "webhook",
6090
6128
  "poll"
6091
6129
  ]);
6130
+ const TriggerRunOutcomeSchema$1 = _enum([
6131
+ "dispatched",
6132
+ "skipped",
6133
+ "failed"
6134
+ ]);
6135
+ const TriggerRunReasonSchema$1 = _enum([
6136
+ "filter_rejected",
6137
+ "transform_undefined",
6138
+ "invalid_payload",
6139
+ "source_error",
6140
+ "handler_error"
6141
+ ]);
6092
6142
  const TriggerRunWorkflowSummarySchema$1 = object({
6093
6143
  id: string(),
6094
6144
  status: WorkflowRunStatusSchema$1,
@@ -6103,8 +6153,13 @@ const TriggerRunSummarySchema$1 = object({
6103
6153
  triggerType: TriggerRunTypeSchema$1,
6104
6154
  triggeredAt: string(),
6105
6155
  sourcePath: string().nullable(),
6106
- workflowRun: TriggerRunWorkflowSummarySchema$1.nullable(),
6107
- agentSession: TriggerRunAgentSessionSummarySchema$1.nullable()
6156
+ outcome: TriggerRunOutcomeSchema$1,
6157
+ reason: TriggerRunReasonSchema$1.nullable(),
6158
+ detail: string().nullable(),
6159
+ /** Workflow runs dispatched by this fire (fan-out → one per matched workflow attachment). */
6160
+ workflowRuns: array(TriggerRunWorkflowSummarySchema$1),
6161
+ /** Agent sessions dispatched by this fire (fan-out → one per matched agent attachment). */
6162
+ agentSessions: array(TriggerRunAgentSessionSummarySchema$1)
6108
6163
  });
6109
6164
  const TriggerRunRecordSchema$1 = object({
6110
6165
  id: string(),
@@ -6112,6 +6167,9 @@ const TriggerRunRecordSchema$1 = object({
6112
6167
  attachmentSlug: string(),
6113
6168
  triggerType: TriggerRunTypeSchema$1,
6114
6169
  sourcePath: string().nullable(),
6170
+ outcome: TriggerRunOutcomeSchema$1,
6171
+ reason: TriggerRunReasonSchema$1.nullable(),
6172
+ detail: string().nullable(),
6115
6173
  payload: unknown().nullable(),
6116
6174
  triggeredAt: string()
6117
6175
  });
@@ -6146,11 +6204,15 @@ const TriggerTypeSchema$1 = _enum([
6146
6204
  "cron"
6147
6205
  ]);
6148
6206
  const TriggerTargetKindSchema$1 = _enum(["workflow", "agent"]);
6207
+ const TriggerStatusSchema$1 = _enum(["active", "disabled"]);
6149
6208
  object({ triggers: array(object({
6150
6209
  slug: string(),
6151
6210
  name: string().optional(),
6152
6211
  description: string().optional(),
6153
6212
  type: TriggerTypeSchema$1,
6213
+ status: TriggerStatusSchema$1.optional(),
6214
+ schedule: string().nullable().optional(),
6215
+ sourcePath: string().optional(),
6154
6216
  route: string().optional(),
6155
6217
  webhookUrl: string().url().optional(),
6156
6218
  targetKind: TriggerTargetKindSchema$1,
@@ -6158,6 +6220,128 @@ object({ triggers: array(object({
6158
6220
  agentKey: string().optional()
6159
6221
  })) });
6160
6222
  object({ endpoint: string().min(1).optional() });
6223
+ const TriggerAssignmentSchema$1 = object({
6224
+ kind: TriggerTargetKindSchema$1,
6225
+ id: string(),
6226
+ slug: string(),
6227
+ name: string()
6228
+ });
6229
+ /** Status of the downstream run/session a dispatched fire produced. */
6230
+ const WorkspaceTriggerRunStatusSchema$1 = _enum([
6231
+ "completed",
6232
+ "running",
6233
+ "failed"
6234
+ ]);
6235
+ /**
6236
+ * Categorical reason a fire was recorded but produced no downstream run. These map
6237
+ * from the persisted `trigger_runs.reason` enum onto the labels the UI renders.
6238
+ */
6239
+ const WorkspaceTriggerSkipReasonSchema$1 = _enum([
6240
+ "filtered",
6241
+ "no_new_data",
6242
+ "transform_undefined"
6243
+ ]);
6244
+ /**
6245
+ * A single downstream run/session a dispatched fire produced. A fan-out fire can
6246
+ * dispatch several of these (multiple workflows and/or agents off one source event).
6247
+ */
6248
+ const WorkspaceTriggerRunTargetSchema$1 = discriminatedUnion("kind", [object({
6249
+ kind: literal("workflow"),
6250
+ runId: string(),
6251
+ workflowId: string(),
6252
+ status: WorkspaceTriggerRunStatusSchema$1,
6253
+ name: string()
6254
+ }), object({
6255
+ kind: literal("agent"),
6256
+ sessionId: string(),
6257
+ agentId: string(),
6258
+ status: WorkspaceTriggerRunStatusSchema$1,
6259
+ name: string()
6260
+ })]);
6261
+ /**
6262
+ * Outcome of a single trigger fire — drives the run-history row presentation. Every
6263
+ * recorded fire either dispatched one or more workflow/agent targets, was skipped by
6264
+ * trigger logic, or failed before any target ran.
6265
+ */
6266
+ const WorkspaceTriggerRunOutcomeSchema$1 = discriminatedUnion("kind", [
6267
+ object({
6268
+ kind: literal("dispatched"),
6269
+ targets: array(WorkspaceTriggerRunTargetSchema$1)
6270
+ }),
6271
+ object({
6272
+ kind: literal("skipped"),
6273
+ reason: WorkspaceTriggerSkipReasonSchema$1
6274
+ }),
6275
+ object({
6276
+ kind: literal("failed"),
6277
+ error: string()
6278
+ })
6279
+ ]);
6280
+ object({
6281
+ /** `triggers.id` UUID for the trigger row. */
6282
+ id: string(),
6283
+ slug: string(),
6284
+ name: string(),
6285
+ description: string().nullable(),
6286
+ type: TriggerTypeSchema$1,
6287
+ status: TriggerStatusSchema$1,
6288
+ projectId: string(),
6289
+ projectName: string(),
6290
+ /** Webhook ingress URL (webhook triggers only). */
6291
+ webhookUrl: string().nullable(),
6292
+ /** Cron expression or poll cadence label (cron/poll triggers only). */
6293
+ schedule: string().nullable(),
6294
+ /** Workflows + agents currently bound to this source. */
6295
+ assignments: array(TriggerAssignmentSchema$1),
6296
+ lastFiredAt: string().nullable(),
6297
+ fireCount: number$1().int().nonnegative(),
6298
+ createdAt: string()
6299
+ }).extend({
6300
+ /** Source module file path, relative to the project root. */
6301
+ sourcePath: string() });
6302
+ object({
6303
+ items: array(object({
6304
+ id: string(),
6305
+ triggerType: TriggerTypeSchema$1,
6306
+ triggeredAt: string(),
6307
+ /** Poll/webhook source path or endpoint that produced the fire. */
6308
+ sourcePath: string().nullable(),
6309
+ outcome: WorkspaceTriggerRunOutcomeSchema$1
6310
+ })),
6311
+ nextCursor: string().nullable()
6312
+ });
6313
+ object({
6314
+ path: string(),
6315
+ contents: string()
6316
+ });
6317
+ object({
6318
+ status: _enum([
6319
+ "generating",
6320
+ "ready",
6321
+ "failed"
6322
+ ]),
6323
+ markdown: string(),
6324
+ hash: string(),
6325
+ generatedAt: string().nullable(),
6326
+ model: string()
6327
+ });
6328
+ /** Inputs the worker feeds the LLM to generate a trigger overview. */
6329
+ const TriggerOverviewInputSchema$1 = object({
6330
+ name: string(),
6331
+ description: string().nullable(),
6332
+ type: TriggerTypeSchema$1,
6333
+ schedule: string().nullable(),
6334
+ sourcePath: string(),
6335
+ sourceContents: string(),
6336
+ assignments: array(TriggerAssignmentSchema$1)
6337
+ });
6338
+ object({
6339
+ triggerId: string(),
6340
+ projectId: string(),
6341
+ triggerHash: string(),
6342
+ model: string(),
6343
+ input: TriggerOverviewInputSchema$1
6344
+ });
6161
6345
  const OrganizationMemberRoleSchema$1 = _enum([
6162
6346
  "owner",
6163
6347
  "admin",
@@ -6601,7 +6785,7 @@ function resolvePlatformWorkerToken(source = process.env) {
6601
6785
  }
6602
6786
  /** Platform API URL reachable from a project-server container. */
6603
6787
  function resolveWorkerPlatformUrl(source = process.env) {
6604
- const raw = source.PLATFORM_URL?.trim() ?? resolveExplicitPublicPlatformOrigin(source) ?? (source.NODE_ENV === "production" ? void 0 : "http://localhost:3002");
6788
+ const raw = source.PLATFORM_URL?.trim() ?? resolveExplicitPublicPlatformOrigin$1(source) ?? (source.NODE_ENV === "production" ? void 0 : "http://localhost:3002");
6605
6789
  if (!raw) return;
6606
6790
  return rewriteLoopbackUrl(raw);
6607
6791
  }
@@ -7887,6 +8071,23 @@ function listenPortFromPublicUrl(value, fallback) {
7887
8071
  return fallback;
7888
8072
  }
7889
8073
  }
8074
+ /** Reads `PUBLIC_PLATFORM_URL` when explicitly set. */
8075
+ function resolveExplicitPublicPlatformOrigin(env = process.env) {
8076
+ return env.PUBLIC_PLATFORM_URL?.replace(/\/$/, "") || void 0;
8077
+ }
8078
+ /**
8079
+ * Provider-facing platform origin (OAuth redirect URIs, webhook intake URLs).
8080
+ *
8081
+ * When the platform runs on localhost but is exposed through an HTTPS tunnel
8082
+ * (e.g. cloudflared), set `PUBLIC_PLATFORM_PROXY_URL` to the tunnel origin so external
8083
+ * providers get reachable HTTPS URLs while `PUBLIC_PLATFORM_URL` stays on localhost
8084
+ * for browser auth/CORS. Requires an explicit platform URL (no localhost fallback).
8085
+ */
8086
+ function resolveExternalPlatformOrigin(env = process.env) {
8087
+ const proxy = env.PUBLIC_PLATFORM_PROXY_URL?.replace(/\/$/, "");
8088
+ if (proxy) return proxy;
8089
+ return resolveExplicitPublicPlatformOrigin(env);
8090
+ }
7890
8091
  /** On-disk path under the project root (packed in deploy artifacts when present). */
7891
8092
  const ROUTE_MANIFEST_REL_PATH = "dist/.keystroke/route-manifest.json";
7892
8093
  const StoredRouteManifestSkillSchema = zod.z.object({
@@ -7932,13 +8133,17 @@ const storedRouteManifestEntryV2Schema = zod.z.discriminatedUnion("kind", [
7932
8133
  endpoint: zod.z.string(),
7933
8134
  attachmentIds: zod.z.array(zod.z.string()),
7934
8135
  moduleFile: zod.z.string(),
8136
+ /** sha256 of the trigger source file, baked at build time for overview change-detection. */
8137
+ sourceHash: zod.z.string().optional(),
7935
8138
  attachmentSchemas: attachmentSchemasSchema,
7936
8139
  attachmentMeta: attachmentMetaSchema.optional()
7937
8140
  }),
7938
8141
  zod.z.object({
7939
8142
  kind: zod.z.literal("trigger-poll"),
7940
8143
  attachmentId: zod.z.string(),
8144
+ attachmentIds: zod.z.array(zod.z.string()),
7941
8145
  moduleFile: zod.z.string(),
8146
+ sourceHash: zod.z.string().optional(),
7942
8147
  schedule: zod.z.string(),
7943
8148
  name: zod.z.string().optional(),
7944
8149
  description: zod.z.string().optional()
@@ -7953,7 +8158,9 @@ const storedRouteManifestEntryV2Schema = zod.z.discriminatedUnion("kind", [
7953
8158
  zod.z.object({
7954
8159
  kind: zod.z.literal("cron-schedule"),
7955
8160
  attachmentId: zod.z.string(),
8161
+ attachmentIds: zod.z.array(zod.z.string()),
7956
8162
  moduleFile: zod.z.string(),
8163
+ sourceHash: zod.z.string().optional(),
7957
8164
  schedule: zod.z.string(),
7958
8165
  name: zod.z.string().optional(),
7959
8166
  description: zod.z.string().optional()
@@ -8028,6 +8235,7 @@ function normalizeEntryToV2(entry) {
8028
8235
  endpoint,
8029
8236
  attachmentIds: entry.attachmentIds,
8030
8237
  moduleFile: entry.moduleFile,
8238
+ ...typeof entry.sourceHash === "string" ? { sourceHash: entry.sourceHash } : {},
8031
8239
  attachmentSchemas: entry.attachmentSchemas && typeof entry.attachmentSchemas === "object" ? entry.attachmentSchemas : {},
8032
8240
  ...entry.attachmentMeta && typeof entry.attachmentMeta === "object" ? { attachmentMeta: entry.attachmentMeta } : {}
8033
8241
  };
@@ -8037,7 +8245,9 @@ function normalizeEntryToV2(entry) {
8037
8245
  return {
8038
8246
  kind: "trigger-poll",
8039
8247
  attachmentId: entry.attachmentId,
8248
+ attachmentIds: Array.isArray(entry.attachmentIds) ? entry.attachmentIds : [entry.attachmentId],
8040
8249
  moduleFile: entry.moduleFile,
8250
+ ...typeof entry.sourceHash === "string" ? { sourceHash: entry.sourceHash } : {},
8041
8251
  schedule: entry.schedule,
8042
8252
  ...typeof entry.name === "string" ? { name: entry.name } : {},
8043
8253
  ...typeof entry.description === "string" ? { description: entry.description } : {}
@@ -8058,7 +8268,9 @@ function normalizeEntryToV2(entry) {
8058
8268
  return {
8059
8269
  kind: "cron-schedule",
8060
8270
  attachmentId: entry.attachmentId,
8271
+ attachmentIds: Array.isArray(entry.attachmentIds) ? entry.attachmentIds : [entry.attachmentId],
8061
8272
  moduleFile: entry.moduleFile,
8273
+ ...typeof entry.sourceHash === "string" ? { sourceHash: entry.sourceHash } : {},
8062
8274
  schedule: entry.schedule,
8063
8275
  ...typeof entry.name === "string" ? { name: entry.name } : {},
8064
8276
  ...typeof entry.description === "string" ? { description: entry.description } : {}
@@ -8074,7 +8286,17 @@ function normalizeV2ManifestInput(value) {
8074
8286
  return {
8075
8287
  ...raw,
8076
8288
  entries: raw.entries.map((entry) => {
8077
- if (!entry || typeof entry !== "object" || entry.kind !== "agent") return entry;
8289
+ if (!entry || typeof entry !== "object") return entry;
8290
+ const kind = entry.kind;
8291
+ if (kind === "trigger-poll" || kind === "cron-schedule" || kind === "trigger-webhook" || kind === "trigger-poll-group") {
8292
+ const trigger = entry;
8293
+ if (Array.isArray(trigger.attachmentIds)) return entry;
8294
+ return {
8295
+ ...trigger,
8296
+ attachmentIds: typeof trigger.attachmentId === "string" ? [trigger.attachmentId] : []
8297
+ };
8298
+ }
8299
+ if (kind !== "agent") return entry;
8078
8300
  const agent = entry;
8079
8301
  if (Array.isArray(agent.appSlugs)) return entry;
8080
8302
  const appSlugs = legacyAgentAppSlugs(agent);
@@ -8256,7 +8478,9 @@ zod.z.object({ patch: zod.z.object({
8256
8478
  const AppCredentialFieldSchema = zod.z.object({
8257
8479
  label: zod.z.string().trim().min(1).optional(),
8258
8480
  secret: zod.z.boolean().optional(),
8259
- optional: zod.z.boolean().optional()
8481
+ optional: zod.z.boolean().optional(),
8482
+ description: zod.z.string().trim().min(1).optional(),
8483
+ default: zod.z.string().optional()
8260
8484
  });
8261
8485
  /** Credential template keyed by vault field name. */
8262
8486
  const AppCredentialFieldsSchema = zod.z.record(zod.z.string().regex(/^[a-zA-Z][a-zA-Z0-9_]*$/), AppCredentialFieldSchema).refine((fields) => Object.keys(fields).length > 0, { message: "At least one credential field is required" }).refine((fields) => Object.values(fields).some((field) => field.optional !== true), { message: "At least one credential field must be required" });
@@ -8288,6 +8512,13 @@ const AppAuthKindSchema = zod.z.enum([
8288
8512
  "api_key",
8289
8513
  "keystroke"
8290
8514
  ]);
8515
+ /** Composio auth scheme for API-key style connections. */
8516
+ const AppCredentialSchemeSchema = zod.z.enum([
8517
+ "API_KEY",
8518
+ "BEARER_TOKEN",
8519
+ "BASIC",
8520
+ "BASIC_WITH_JWT"
8521
+ ]);
8291
8522
  /**
8292
8523
  * Where app metadata and execution are sourced (e.g. native, composio, pipedream, custom).
8293
8524
  * Opaque string — cloud/hosted entrypoints choose values; keystroke stays provider-agnostic.
@@ -8301,7 +8532,11 @@ zod.z.object({
8301
8532
  logo: zod.z.string().url().optional(),
8302
8533
  authKind: AppAuthKindSchema,
8303
8534
  oauthScopes: zod.z.array(OAuthScopeOptionSchema)
8304
- }).extend({ source: AppSourceSchema });
8535
+ }).extend({
8536
+ source: AppSourceSchema,
8537
+ credentialFields: AppCredentialFieldsSchema.optional(),
8538
+ credentialScheme: AppCredentialSchemeSchema.optional()
8539
+ });
8305
8540
  const customAppNameSchema = zod.z.string().trim().min(1, "Name is required");
8306
8541
  const AppSlugAvailabilityReasonSchema = ProjectSlugAvailabilityReasonSchema;
8307
8542
  const AppSlugAvailabilityResponseSchema = zod.z.object({
@@ -8345,6 +8580,7 @@ zod.z.object({
8345
8580
  oauthScopes: zod.z.array(OAuthScopeOptionSchema),
8346
8581
  source: AppSourceSchema,
8347
8582
  credentialFields: AppCredentialFieldsSchema.optional(),
8583
+ credentialScheme: AppCredentialSchemeSchema.optional(),
8348
8584
  createdAt: zod.z.string().min(1),
8349
8585
  updatedAt: zod.z.string().min(1)
8350
8586
  });
@@ -8365,6 +8601,8 @@ const AppCatalogEntrySchema = zod.z.object({
8365
8601
  source: AppSourceSchema,
8366
8602
  /** Custom api_key apps — vault field template for connect UI and sync. */
8367
8603
  credentialFields: AppCredentialFieldsSchema.optional(),
8604
+ /** Composio auth scheme when credentialFields are present. */
8605
+ credentialScheme: AppCredentialSchemeSchema.optional(),
8368
8606
  /** When present, the app supports agent gateway bindings (external channels). */
8369
8607
  gateway: AppGatewaySchema.optional()
8370
8608
  });
@@ -8462,12 +8700,12 @@ function deriveCredentialInstanceSlug(options) {
8462
8700
  if (fromName) {
8463
8701
  const base = normalizeOrganizationNameToSlugBase(fromName) || options.appSlug;
8464
8702
  if (!taken.has(base)) return base;
8465
- let suffix = 2;
8703
+ let suffix = 1;
8466
8704
  while (taken.has(`${base}-${suffix}`)) suffix += 1;
8467
8705
  return `${base}-${suffix}`;
8468
8706
  }
8469
8707
  if (!taken.has(options.appSlug)) return options.appSlug;
8470
- let suffix = 2;
8708
+ let suffix = 1;
8471
8709
  while (taken.has(`${options.appSlug}-${suffix}`)) suffix += 1;
8472
8710
  return `${options.appSlug}-${suffix}`;
8473
8711
  }
@@ -8524,7 +8762,7 @@ const AppCredentialSummarySchema = zod.z.object({
8524
8762
  });
8525
8763
  const credentialSecretValueSchema = zod.z.record(zod.z.string(), zod.z.unknown()).refine((value) => Object.keys(value).length > 0, { message: "value must be a non-empty object" });
8526
8764
  function hasCredentialTarget(input) {
8527
- return input.projects.length > 0 || input.createOrganizationCredential || input.createUserProvidedCredential;
8765
+ return input.projects.length > 0 || input.createOrganizationCredential || input.createUserProvidedCredential || Boolean(input.credentialInstanceId?.trim());
8528
8766
  }
8529
8767
  function addMissingCredentialTargetIssue(ctx, path = ["projects"]) {
8530
8768
  ctx.addIssue({
@@ -8539,7 +8777,9 @@ const CredentialTargetsFieldsSchema = zod.z.object({
8539
8777
  createOrganizationCredential: zod.z.boolean().default(false),
8540
8778
  createUserProvidedCredential: zod.z.boolean().default(false),
8541
8779
  /** Display label for created credential instances (apps table / detail page). */
8542
- label: zod.z.string().trim().min(1).optional()
8780
+ label: zod.z.string().trim().min(1).optional(),
8781
+ /** When set, update this credential instance in place (reconnect) instead of creating a new row. */
8782
+ credentialInstanceId: zod.z.string().trim().min(1).optional()
8543
8783
  });
8544
8784
  CredentialTargetsFieldsSchema.extend({
8545
8785
  appId: zod.z.string().min(1),
@@ -8550,14 +8790,22 @@ zod.z.object({
8550
8790
  status: zod.z.enum(["connected", "redirecting"]),
8551
8791
  authorizeUrl: zod.z.string().url().nullable()
8552
8792
  });
8553
- CredentialTargetsFieldsSchema.extend({ app: zod.z.string().trim().min(1) }).superRefine((input, ctx) => {
8793
+ CredentialTargetsFieldsSchema.extend({
8794
+ app: zod.z.string().trim().min(1),
8795
+ value: credentialSecretValueSchema.optional()
8796
+ }).superRefine((input, ctx) => {
8554
8797
  if (!hasCredentialTarget(input)) addMissingCredentialTargetIssue(ctx);
8555
8798
  });
8556
- zod.z.object({
8557
- status: zod.z.enum(["redirecting"]),
8799
+ const connectedKeystrokeConnectionResultSchema = zod.z.object({
8800
+ status: zod.z.literal("connected"),
8801
+ connectionId: zod.z.string().min(1)
8802
+ });
8803
+ const redirectingKeystrokeConnectionResultSchema = zod.z.object({
8804
+ status: zod.z.literal("redirecting"),
8558
8805
  authorizeUrl: zod.z.string().url(),
8559
- connectionId: zod.z.string()
8806
+ connectionId: zod.z.string().min(1)
8560
8807
  });
8808
+ zod.z.discriminatedUnion("status", [connectedKeystrokeConnectionResultSchema, redirectingKeystrokeConnectionResultSchema]);
8561
8809
  /** Request body for `POST /api/credentials` (manual api-key fan-out). */
8562
8810
  const CreateCredentialsRequestSchema = CredentialTargetsFieldsSchema.extend({
8563
8811
  appId: zod.z.string().min(1),
@@ -8661,6 +8909,15 @@ zod.z.object({
8661
8909
  /** Tool/step consumer id for assignment lookup (action slug or workflow step correlation id). */
8662
8910
  consumerId: zod.z.string().trim().min(1).optional()
8663
8911
  });
8912
+ const ExecuteKeystrokeToolErrorCodeSchema = zod.z.enum([
8913
+ "not_found",
8914
+ "forbidden",
8915
+ "mcp_execute_failed"
8916
+ ]);
8917
+ zod.z.object({
8918
+ error: ExecuteKeystrokeToolErrorCodeSchema,
8919
+ message: zod.z.string()
8920
+ });
8664
8921
  const TeamRequestTypeSchema = zod.z.enum([
8665
8922
  "org-deletion",
8666
8923
  "contact",
@@ -9293,6 +9550,18 @@ const TriggerRunTypeSchema = zod.z.enum([
9293
9550
  "webhook",
9294
9551
  "poll"
9295
9552
  ]);
9553
+ const TriggerRunOutcomeSchema = zod.z.enum([
9554
+ "dispatched",
9555
+ "skipped",
9556
+ "failed"
9557
+ ]);
9558
+ const TriggerRunReasonSchema = zod.z.enum([
9559
+ "filter_rejected",
9560
+ "transform_undefined",
9561
+ "invalid_payload",
9562
+ "source_error",
9563
+ "handler_error"
9564
+ ]);
9296
9565
  const TriggerRunWorkflowSummarySchema = zod.z.object({
9297
9566
  id: zod.z.string(),
9298
9567
  status: WorkflowRunStatusSchema,
@@ -9307,8 +9576,13 @@ const TriggerRunSummarySchema = zod.z.object({
9307
9576
  triggerType: TriggerRunTypeSchema,
9308
9577
  triggeredAt: zod.z.string(),
9309
9578
  sourcePath: zod.z.string().nullable(),
9310
- workflowRun: TriggerRunWorkflowSummarySchema.nullable(),
9311
- agentSession: TriggerRunAgentSessionSummarySchema.nullable()
9579
+ outcome: TriggerRunOutcomeSchema,
9580
+ reason: TriggerRunReasonSchema.nullable(),
9581
+ detail: zod.z.string().nullable(),
9582
+ /** Workflow runs dispatched by this fire (fan-out → one per matched workflow attachment). */
9583
+ workflowRuns: zod.z.array(TriggerRunWorkflowSummarySchema),
9584
+ /** Agent sessions dispatched by this fire (fan-out → one per matched agent attachment). */
9585
+ agentSessions: zod.z.array(TriggerRunAgentSessionSummarySchema)
9312
9586
  });
9313
9587
  const TriggerRunRecordSchema = zod.z.object({
9314
9588
  id: zod.z.string(),
@@ -9316,10 +9590,13 @@ const TriggerRunRecordSchema = zod.z.object({
9316
9590
  attachmentSlug: zod.z.string(),
9317
9591
  triggerType: TriggerRunTypeSchema,
9318
9592
  sourcePath: zod.z.string().nullable(),
9593
+ outcome: TriggerRunOutcomeSchema,
9594
+ reason: TriggerRunReasonSchema.nullable(),
9595
+ detail: zod.z.string().nullable(),
9319
9596
  payload: zod.z.unknown().nullable(),
9320
9597
  triggeredAt: zod.z.string()
9321
9598
  });
9322
- zod.z.object({
9599
+ const TriggerRunListQuerySchema = zod.z.object({
9323
9600
  limit: zod.z.coerce.number().int().min(1).max(100).optional().default(20),
9324
9601
  cursor: zod.z.string().min(1).optional(),
9325
9602
  triggerType: TriggerRunTypeSchema.optional()
@@ -9350,11 +9627,15 @@ const TriggerTypeSchema = zod.z.enum([
9350
9627
  "cron"
9351
9628
  ]);
9352
9629
  const TriggerTargetKindSchema = zod.z.enum(["workflow", "agent"]);
9630
+ const TriggerStatusSchema = zod.z.enum(["active", "disabled"]);
9353
9631
  const TriggerListItemSchema = zod.z.object({
9354
9632
  slug: zod.z.string(),
9355
9633
  name: zod.z.string().optional(),
9356
9634
  description: zod.z.string().optional(),
9357
9635
  type: TriggerTypeSchema,
9636
+ status: TriggerStatusSchema.optional(),
9637
+ schedule: zod.z.string().nullable().optional(),
9638
+ sourcePath: zod.z.string().optional(),
9358
9639
  route: zod.z.string().optional(),
9359
9640
  webhookUrl: zod.z.string().url().optional(),
9360
9641
  targetKind: TriggerTargetKindSchema,
@@ -9363,6 +9644,136 @@ const TriggerListItemSchema = zod.z.object({
9363
9644
  });
9364
9645
  zod.z.object({ triggers: zod.z.array(TriggerListItemSchema) });
9365
9646
  zod.z.object({ endpoint: zod.z.string().min(1).optional() });
9647
+ const TriggerAssignmentSchema = zod.z.object({
9648
+ kind: TriggerTargetKindSchema,
9649
+ id: zod.z.string(),
9650
+ slug: zod.z.string(),
9651
+ name: zod.z.string()
9652
+ });
9653
+ /** Status of the downstream run/session a dispatched fire produced. */
9654
+ const WorkspaceTriggerRunStatusSchema = zod.z.enum([
9655
+ "completed",
9656
+ "running",
9657
+ "failed"
9658
+ ]);
9659
+ /**
9660
+ * Categorical reason a fire was recorded but produced no downstream run. These map
9661
+ * from the persisted `trigger_runs.reason` enum onto the labels the UI renders.
9662
+ */
9663
+ const WorkspaceTriggerSkipReasonSchema = zod.z.enum([
9664
+ "filtered",
9665
+ "no_new_data",
9666
+ "transform_undefined"
9667
+ ]);
9668
+ /**
9669
+ * A single downstream run/session a dispatched fire produced. A fan-out fire can
9670
+ * dispatch several of these (multiple workflows and/or agents off one source event).
9671
+ */
9672
+ const WorkspaceTriggerRunTargetSchema = zod.z.discriminatedUnion("kind", [zod.z.object({
9673
+ kind: zod.z.literal("workflow"),
9674
+ runId: zod.z.string(),
9675
+ workflowId: zod.z.string(),
9676
+ status: WorkspaceTriggerRunStatusSchema,
9677
+ name: zod.z.string()
9678
+ }), zod.z.object({
9679
+ kind: zod.z.literal("agent"),
9680
+ sessionId: zod.z.string(),
9681
+ agentId: zod.z.string(),
9682
+ status: WorkspaceTriggerRunStatusSchema,
9683
+ name: zod.z.string()
9684
+ })]);
9685
+ /**
9686
+ * Outcome of a single trigger fire — drives the run-history row presentation. Every
9687
+ * recorded fire either dispatched one or more workflow/agent targets, was skipped by
9688
+ * trigger logic, or failed before any target ran.
9689
+ */
9690
+ const WorkspaceTriggerRunOutcomeSchema = zod.z.discriminatedUnion("kind", [
9691
+ zod.z.object({
9692
+ kind: zod.z.literal("dispatched"),
9693
+ targets: zod.z.array(WorkspaceTriggerRunTargetSchema)
9694
+ }),
9695
+ zod.z.object({
9696
+ kind: zod.z.literal("skipped"),
9697
+ reason: WorkspaceTriggerSkipReasonSchema
9698
+ }),
9699
+ zod.z.object({
9700
+ kind: zod.z.literal("failed"),
9701
+ error: zod.z.string()
9702
+ })
9703
+ ]);
9704
+ const WorkspaceTriggerSummarySchema = zod.z.object({
9705
+ /** `triggers.id` UUID for the trigger row. */
9706
+ id: zod.z.string(),
9707
+ slug: zod.z.string(),
9708
+ name: zod.z.string(),
9709
+ description: zod.z.string().nullable(),
9710
+ type: TriggerTypeSchema,
9711
+ status: TriggerStatusSchema,
9712
+ projectId: zod.z.string(),
9713
+ projectName: zod.z.string(),
9714
+ /** Webhook ingress URL (webhook triggers only). */
9715
+ webhookUrl: zod.z.string().nullable(),
9716
+ /** Cron expression or poll cadence label (cron/poll triggers only). */
9717
+ schedule: zod.z.string().nullable(),
9718
+ /** Workflows + agents currently bound to this source. */
9719
+ assignments: zod.z.array(TriggerAssignmentSchema),
9720
+ lastFiredAt: zod.z.string().nullable(),
9721
+ fireCount: zod.z.number().int().nonnegative(),
9722
+ createdAt: zod.z.string()
9723
+ });
9724
+ const WorkspaceTriggerDetailSchema = WorkspaceTriggerSummarySchema.extend({
9725
+ /** Source module file path, relative to the project root. */
9726
+ sourcePath: zod.z.string() });
9727
+ const WorkspaceTriggerListResponseSchema = zod.z.array(WorkspaceTriggerSummarySchema);
9728
+ const WorkspaceTriggerRunSummarySchema = zod.z.object({
9729
+ id: zod.z.string(),
9730
+ triggerType: TriggerTypeSchema,
9731
+ triggeredAt: zod.z.string(),
9732
+ /** Poll/webhook source path or endpoint that produced the fire. */
9733
+ sourcePath: zod.z.string().nullable(),
9734
+ outcome: WorkspaceTriggerRunOutcomeSchema
9735
+ });
9736
+ const WorkspaceTriggerRunListResponseSchema = zod.z.object({
9737
+ items: zod.z.array(WorkspaceTriggerRunSummarySchema),
9738
+ nextCursor: zod.z.string().nullable()
9739
+ });
9740
+ const WorkspaceTriggerFileSchema = zod.z.object({
9741
+ path: zod.z.string(),
9742
+ contents: zod.z.string()
9743
+ });
9744
+ /** Default gateway model for trigger overviews — a cheap model, same as session-title generation. */
9745
+ const DEFAULT_TRIGGER_OVERVIEW_MODEL = "deepseek/deepseek-v4-flash";
9746
+ /** Whether the LLM overview is still being produced, finished, or errored. */
9747
+ const WorkspaceTriggerOverviewStatusSchema = zod.z.enum([
9748
+ "generating",
9749
+ "ready",
9750
+ "failed"
9751
+ ]);
9752
+ /** LLM-generated markdown overview envelope served to the web dashboard. */
9753
+ const WorkspaceTriggerOverviewSchema = zod.z.object({
9754
+ status: WorkspaceTriggerOverviewStatusSchema,
9755
+ markdown: zod.z.string(),
9756
+ hash: zod.z.string(),
9757
+ generatedAt: zod.z.string().nullable(),
9758
+ model: zod.z.string()
9759
+ });
9760
+ /** Inputs the worker feeds the LLM to generate a trigger overview. */
9761
+ const TriggerOverviewInputSchema = zod.z.object({
9762
+ name: zod.z.string(),
9763
+ description: zod.z.string().nullable(),
9764
+ type: TriggerTypeSchema,
9765
+ schedule: zod.z.string().nullable(),
9766
+ sourcePath: zod.z.string(),
9767
+ sourceContents: zod.z.string(),
9768
+ assignments: zod.z.array(TriggerAssignmentSchema)
9769
+ });
9770
+ zod.z.object({
9771
+ triggerId: zod.z.string(),
9772
+ projectId: zod.z.string(),
9773
+ triggerHash: zod.z.string(),
9774
+ model: zod.z.string(),
9775
+ input: TriggerOverviewInputSchema
9776
+ });
9366
9777
  const OrganizationMemberRoleSchema = zod.z.enum([
9367
9778
  "owner",
9368
9779
  "admin",
@@ -32551,6 +32962,12 @@ Object.defineProperty(exports, "CreateProjectResponseSchema", {
32551
32962
  return CreateProjectResponseSchema;
32552
32963
  }
32553
32964
  });
32965
+ Object.defineProperty(exports, "DEFAULT_TRIGGER_OVERVIEW_MODEL", {
32966
+ enumerable: true,
32967
+ get: function() {
32968
+ return DEFAULT_TRIGGER_OVERVIEW_MODEL;
32969
+ }
32970
+ });
32554
32971
  Object.defineProperty(exports, "DeclineOrganizationInvitationResponseSchema", {
32555
32972
  enumerable: true,
32556
32973
  get: function() {
@@ -32881,6 +33298,12 @@ Object.defineProperty(exports, "SubmitTeamRequestResponseSchema", {
32881
33298
  return SubmitTeamRequestResponseSchema;
32882
33299
  }
32883
33300
  });
33301
+ Object.defineProperty(exports, "TriggerRunListQuerySchema", {
33302
+ enumerable: true,
33303
+ get: function() {
33304
+ return TriggerRunListQuerySchema;
33305
+ }
33306
+ });
32884
33307
  Object.defineProperty(exports, "UpdateCredentialRequestSchema", {
32885
33308
  enumerable: true,
32886
33309
  get: function() {
@@ -32983,6 +33406,36 @@ Object.defineProperty(exports, "WorkflowSummarySchema", {
32983
33406
  return WorkflowSummarySchema;
32984
33407
  }
32985
33408
  });
33409
+ Object.defineProperty(exports, "WorkspaceTriggerDetailSchema", {
33410
+ enumerable: true,
33411
+ get: function() {
33412
+ return WorkspaceTriggerDetailSchema;
33413
+ }
33414
+ });
33415
+ Object.defineProperty(exports, "WorkspaceTriggerFileSchema", {
33416
+ enumerable: true,
33417
+ get: function() {
33418
+ return WorkspaceTriggerFileSchema;
33419
+ }
33420
+ });
33421
+ Object.defineProperty(exports, "WorkspaceTriggerListResponseSchema", {
33422
+ enumerable: true,
33423
+ get: function() {
33424
+ return WorkspaceTriggerListResponseSchema;
33425
+ }
33426
+ });
33427
+ Object.defineProperty(exports, "WorkspaceTriggerOverviewSchema", {
33428
+ enumerable: true,
33429
+ get: function() {
33430
+ return WorkspaceTriggerOverviewSchema;
33431
+ }
33432
+ });
33433
+ Object.defineProperty(exports, "WorkspaceTriggerRunListResponseSchema", {
33434
+ enumerable: true,
33435
+ get: function() {
33436
+ return WorkspaceTriggerRunListResponseSchema;
33437
+ }
33438
+ });
32986
33439
  Object.defineProperty(exports, "__commonJSMin", {
32987
33440
  enumerable: true,
32988
33441
  get: function() {
@@ -33043,6 +33496,12 @@ Object.defineProperty(exports, "deleteCredentialInstanceSecret", {
33043
33496
  return deleteCredentialInstanceSecret;
33044
33497
  }
33045
33498
  });
33499
+ Object.defineProperty(exports, "deriveCredentialInstanceSlug", {
33500
+ enumerable: true,
33501
+ get: function() {
33502
+ return deriveCredentialInstanceSlug;
33503
+ }
33504
+ });
33046
33505
  Object.defineProperty(exports, "displayCredentialAppName", {
33047
33506
  enumerable: true,
33048
33507
  get: function() {
@@ -33247,6 +33706,12 @@ Object.defineProperty(exports, "readCredentialInstanceSecret", {
33247
33706
  return readCredentialInstanceSecret;
33248
33707
  }
33249
33708
  });
33709
+ Object.defineProperty(exports, "resolveExternalPlatformOrigin", {
33710
+ enumerable: true,
33711
+ get: function() {
33712
+ return resolveExternalPlatformOrigin;
33713
+ }
33714
+ });
33250
33715
  Object.defineProperty(exports, "resolveUniqueCredentialInstanceLabel", {
33251
33716
  enumerable: true,
33252
33717
  get: function() {
@@ -33278,4 +33743,4 @@ Object.defineProperty(exports, "validationErrorResponse", {
33278
33743
  }
33279
33744
  });
33280
33745
 
33281
- //# sourceMappingURL=dist-CXr-QoFY.cjs.map
33746
+ //# sourceMappingURL=dist-BOUnkJqi.cjs.map