@poe-platform/safe-bash 0.1.803 → 0.1.804

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 (696) hide show
  1. package/README.md +56 -31
  2. package/dist/image-ast/ast.d.ts +1 -0
  3. package/dist/image-ast/browser/ast.d.ts +1 -0
  4. package/dist/image-ast/browser/codecs/jpeg.d.ts +2 -2
  5. package/dist/image-ast/codecs/jpeg.d.ts +2 -2
  6. package/dist/image-ast/index.browser.js +692 -8364
  7. package/dist/image-ast/index.js +692 -8364
  8. package/dist/mp4-ast/codecs.d.ts +7 -2
  9. package/dist/safe-bash/chunks/{chunk-CHYGPFVM.js → chunk-22SX3F2R.js} +1 -1
  10. package/dist/safe-bash/chunks/{chunk-FBUCWVTE.js → chunk-2IVBJTBD.js} +1 -1
  11. package/dist/safe-bash/chunks/chunk-2POETUMB.js +190 -0
  12. package/dist/safe-bash/chunks/{chunk-XVOSKJE2.js → chunk-47D7WBJK.js} +1 -1
  13. package/dist/safe-bash/chunks/{chunk-VKNVHEX3.js → chunk-4ESI236Y.js} +1 -1
  14. package/dist/safe-bash/chunks/{chunk-74GHTNJA.js → chunk-4KTMKD5W.js} +1 -1
  15. package/dist/safe-bash/chunks/{chunk-55YJASTN.js → chunk-4T53AERN.js} +1 -1
  16. package/dist/safe-bash/chunks/{chunk-DQP3VHSB.js → chunk-5XIFJVOO.js} +1 -1
  17. package/dist/safe-bash/chunks/{chunk-5OHX7C2V.js → chunk-62BOHHJT.js} +1 -1
  18. package/dist/safe-bash/chunks/{chunk-HZAMGT5I.js → chunk-67WIFM3N.js} +17 -6
  19. package/dist/safe-bash/chunks/{chunk-4D4N7IU2.js → chunk-6LNFRPW5.js} +2 -2
  20. package/dist/safe-bash/chunks/{chunk-6O77NL2S.js → chunk-6SMICPI3.js} +1 -1
  21. package/dist/safe-bash/chunks/{chunk-4BSJLKNM.js → chunk-7O76UFQD.js} +1 -1
  22. package/dist/safe-bash/chunks/{chunk-PNBBUWSM.js → chunk-AW5KIT6V.js} +3488 -39
  23. package/dist/safe-bash/chunks/{chunk-JMMEIDPF.js → chunk-B2Z73HTZ.js} +52 -28
  24. package/dist/safe-bash/chunks/chunk-B3ZMOJVM.js +319 -0
  25. package/dist/safe-bash/chunks/{chunk-7ZBU7KYV.js → chunk-CFAWS3O4.js} +1 -1
  26. package/dist/safe-bash/chunks/{chunk-I5HZ4FGE.js → chunk-CL2FCTTO.js} +1 -1
  27. package/dist/safe-bash/chunks/{chunk-2LSAMQER.js → chunk-CTXNARJH.js} +1 -1
  28. package/dist/safe-bash/chunks/{chunk-TFIBK2GI.js → chunk-D5Q7NFWI.js} +1 -1
  29. package/dist/safe-bash/chunks/{chunk-OQRVVGR6.js → chunk-DSOOVZ6Q.js} +1 -1
  30. package/dist/safe-bash/chunks/{chunk-VTH3MLDU.js → chunk-DUTAG6ZD.js} +1 -1
  31. package/dist/safe-bash/chunks/{chunk-XAQMU6OY.js → chunk-EE5YGFIZ.js} +1 -1
  32. package/dist/safe-bash/chunks/{chunk-FZE4HW6G.js → chunk-EJOYT2ME.js} +1 -1
  33. package/dist/safe-bash/chunks/chunk-FAAIR6EJ.js +887 -0
  34. package/dist/safe-bash/chunks/{chunk-OV6IHKO6.js → chunk-FOB2FZR4.js} +2 -2
  35. package/dist/safe-bash/chunks/chunk-G6V4RRSQ.js +14 -0
  36. package/dist/safe-bash/chunks/{chunk-UTBUUFDM.js → chunk-GGQAGQXQ.js} +1 -1
  37. package/dist/safe-bash/chunks/{chunk-K6VCD7IY.js → chunk-HIIYIJ5G.js} +2 -4
  38. package/dist/safe-bash/chunks/{chunk-VBTDHOWC.js → chunk-IOHH2GTI.js} +4 -3
  39. package/dist/safe-bash/chunks/{chunk-CTVWDACF.js → chunk-IQW34XQT.js} +1 -1
  40. package/dist/safe-bash/chunks/{chunk-HZ7BWKQ3.js → chunk-IS572AAT.js} +1 -1
  41. package/dist/safe-bash/chunks/{chunk-AUSNDQTJ.js → chunk-JPSUHHOA.js} +1 -1
  42. package/dist/safe-bash/chunks/{chunk-ZVD5IS4V.js → chunk-KBZ4UB2O.js} +2 -2
  43. package/dist/safe-bash/chunks/{chunk-AM5ESLPH.js → chunk-KU5CVWKA.js} +1 -1
  44. package/dist/safe-bash/chunks/{chunk-RYFQ3LZG.js → chunk-LPOVNKNB.js} +173 -153
  45. package/dist/safe-bash/chunks/{chunk-46Z5E5EV.js → chunk-MBOC3LZ4.js} +1 -1
  46. package/dist/safe-bash/chunks/{chunk-6PAVEFT3.js → chunk-N4BQFD3P.js} +1 -1
  47. package/dist/safe-bash/chunks/{chunk-CS4MNM6I.js → chunk-NGKCVNWS.js} +1 -1
  48. package/dist/safe-bash/chunks/{chunk-7R5BDCG7.js → chunk-OHML2BEU.js} +1 -1
  49. package/dist/safe-bash/chunks/{chunk-C5OWC2TL.js → chunk-OQ3AGYCZ.js} +1 -1
  50. package/dist/safe-bash/chunks/{chunk-B7TAL7S5.js → chunk-PTAEWLSE.js} +0 -2
  51. package/dist/safe-bash/chunks/{chunk-LVOBFF4D.js → chunk-Q4FNLOTI.js} +1 -1
  52. package/dist/safe-bash/chunks/chunk-Q5XO3NAS.js +1036 -0
  53. package/dist/safe-bash/chunks/{chunk-GEG3BWGE.js → chunk-RHFRJIWQ.js} +1 -1
  54. package/dist/safe-bash/chunks/chunk-RUR6J33T.js +11 -0
  55. package/dist/safe-bash/chunks/{chunk-EEEWOYEG.js → chunk-S4RFUUXO.js} +839 -24
  56. package/dist/safe-bash/chunks/{chunk-RRR7AQ24.js → chunk-SD2ISU5L.js} +1 -1
  57. package/dist/safe-bash/chunks/{chunk-3NDIFSNM.js → chunk-SUJ3NTMH.js} +3 -3
  58. package/dist/safe-bash/chunks/{chunk-R3NAKOED.js → chunk-SZRUU5HS.js} +2 -2
  59. package/dist/safe-bash/chunks/{chunk-PH63PLPZ.js → chunk-TC3F4UFF.js} +1 -1
  60. package/dist/safe-bash/chunks/{chunk-3R3AANOR.js → chunk-TCKYOLUE.js} +1 -1
  61. package/dist/safe-bash/chunks/{chunk-D3ANYGMC.js → chunk-UV4X32QU.js} +1 -1
  62. package/dist/safe-bash/chunks/{chunk-E7OYNDGL.js → chunk-V7QT2RWC.js} +1 -1
  63. package/dist/safe-bash/chunks/{chunk-B7PIL77G.js → chunk-W2IYOVHK.js} +804 -1195
  64. package/dist/safe-bash/chunks/{chunk-3HQU4OJO.js → chunk-XNGVOSGI.js} +1 -1
  65. package/dist/safe-bash/chunks/{chunk-J42RIHHJ.js → chunk-XQWCQSRN.js} +1 -1
  66. package/dist/safe-bash/chunks/{chunk-A7XEHALN.js → chunk-Y7FW6GLT.js} +6 -6
  67. package/dist/safe-bash/chunks/{chunk-QGUV42T5.js → chunk-YL3GBUG4.js} +1 -1
  68. package/dist/safe-bash/chunks/chunk-YOXUCJER.js +389 -0
  69. package/dist/safe-bash/chunks/{chunk-HBCN24ZA.js → chunk-Z2AAYYJN.js} +2 -2
  70. package/dist/safe-bash/chunks/chunk-ZKYKJCZZ.js +30 -0
  71. package/dist/safe-bash/chunks/core-IE3AFIDX.js +85806 -0
  72. package/dist/safe-bash/chunks/{ffmpeg-WTC3TEFI.js → ffmpeg-YANDK6HU.js} +2 -2
  73. package/dist/safe-bash/chunks/{gh-6WU6PXL4.js → gh-4MBJ2S5V.js} +2 -2
  74. package/dist/safe-bash/chunks/{git-EFZIGJW4.js → git-2QONJNRQ.js} +2 -2
  75. package/dist/safe-bash/chunks/{imagemagick-EIEYGWPF.js → imagemagick-JLEHGYSN.js} +2 -2
  76. package/dist/safe-bash/chunks/{mmdc-ROQJT5HQ.js → mmdc-6LD7A6ND.js} +2 -2
  77. package/dist/safe-bash/chunks/{pdfimages-DW7LWXFI.js → pdfimages-RSHL7LOP.js} +2 -2
  78. package/dist/safe-bash/chunks/{pdfinfo-TIP6XLUQ.js → pdfinfo-L3SGWPNG.js} +2 -2
  79. package/dist/safe-bash/chunks/{pdftk-DMG22ITZ.js → pdftk-LFBJNU5A.js} +2 -2
  80. package/dist/safe-bash/chunks/{pdftoppm-WNDYR72T.js → pdftoppm-NXXFUIHG.js} +2 -2
  81. package/dist/safe-bash/chunks/{pdftotext-5IPZ4NI7.js → pdftotext-4IHNWT6F.js} +2 -2
  82. package/dist/safe-bash/chunks/{qpdf-TTX2DIUA.js → qpdf-ZEIREV63.js} +2 -2
  83. package/dist/safe-bash/chunks/read-builtin-A4QKAT45.js +9 -0
  84. package/dist/safe-bash/chunks/{sips-XYS46JPJ.js → sips-D5YBG2V3.js} +2 -2
  85. package/dist/safe-bash/chunks/{soffice-TU73E5KL.js → soffice-RAJU3JUT.js} +2 -2
  86. package/dist/safe-bash/chunks/source-files-3XWRRHFA.js +7 -0
  87. package/dist/safe-bash/chunks/{wkhtmltopdf-FSZ2CHGE.js → wkhtmltopdf-7UE4FORZ.js} +2 -2
  88. package/dist/safe-bash/command-chunks/{chunk-7KWZXKY6.js → chunk-26RTBV2I.js} +1 -0
  89. package/dist/safe-bash/command-chunks/{chunk-AQJ2ROJO.js → chunk-2WYNMZR2.js} +10 -8
  90. package/dist/safe-bash/command-chunks/{chunk-BDSMROQZ.js → chunk-36GFRF2N.js} +2 -1
  91. package/dist/safe-bash/command-chunks/{chunk-GC5TJZOF.js → chunk-3VIA2IA7.js} +114 -31
  92. package/dist/safe-bash/command-chunks/{chunk-NKFYQSES.js → chunk-4CTI3ZTX.js} +1 -0
  93. package/dist/safe-bash/command-chunks/{chunk-WH627NJL.js → chunk-4MYP2FX4.js} +2 -1
  94. package/dist/safe-bash/command-chunks/{chunk-ZDN7MJE6.js → chunk-4R5ADJM5.js} +11 -1
  95. package/dist/safe-bash/command-chunks/{chunk-P2N33UMN.js → chunk-5MIKM54M.js} +4 -4
  96. package/dist/safe-bash/command-chunks/{chunk-DB453IE6.js → chunk-6FZQUOSJ.js} +1 -1
  97. package/dist/safe-bash/command-chunks/{chunk-PICVQ6B5.js → chunk-6GKYHPJG.js} +1 -1
  98. package/dist/safe-bash/command-chunks/{chunk-7K6JYKPJ.js → chunk-6M2ELGEN.js} +17 -15
  99. package/dist/safe-bash/command-chunks/{chunk-PXEIT2O4.js → chunk-6UR7V3ET.js} +8 -1
  100. package/dist/safe-bash/command-chunks/{chunk-6KJ3LPI2.js → chunk-6XBS5B46.js} +26 -3
  101. package/dist/safe-bash/command-chunks/{chunk-5PWJG2UK.js → chunk-6YXLZX7L.js} +2 -2
  102. package/dist/safe-bash/command-chunks/{chunk-EK6YNAXT.js → chunk-753YOR54.js} +31 -5
  103. package/dist/safe-bash/command-chunks/{chunk-RMWQAAO5.js → chunk-7IR4NRNE.js} +2 -2
  104. package/dist/safe-bash/command-chunks/{chunk-FZTK4MFI.js → chunk-7NM73SVK.js} +8 -8
  105. package/dist/safe-bash/command-chunks/{chunk-NXEQ3ESQ.js → chunk-7QD5YY4F.js} +6 -11
  106. package/dist/safe-bash/command-chunks/{chunk-EMPU65ZK.js → chunk-A5LBSJGH.js} +1 -0
  107. package/dist/safe-bash/command-chunks/{chunk-4FEVBOL5.js → chunk-ARZMP2L2.js} +2 -2
  108. package/dist/safe-bash/command-chunks/{chunk-NKIELG7Y.js → chunk-BAKFZ477.js} +40 -19
  109. package/dist/safe-bash/command-chunks/{chunk-QRRYN2KO.js → chunk-BC7BK6R6.js} +0 -2424
  110. package/dist/safe-bash/command-chunks/{chunk-CQHP3I66.js → chunk-BOEOJS2Q.js} +1 -1
  111. package/dist/safe-bash/command-chunks/{chunk-XS72HTMA.js → chunk-BWGGLYEB.js} +5 -22
  112. package/dist/safe-bash/command-chunks/{chunk-PMBFZXTK.js → chunk-C5ZZKP7V.js} +1 -1
  113. package/dist/safe-bash/command-chunks/{chunk-LHIOAFWW.js → chunk-C7SEB6WU.js} +1 -1
  114. package/dist/safe-bash/command-chunks/{chunk-XPT2UGBF.js → chunk-CHJKFRT7.js} +1 -1
  115. package/dist/safe-bash/command-chunks/{chunk-TIOCQVUQ.js → chunk-CON26Q2O.js} +1 -1
  116. package/dist/safe-bash/command-chunks/{chunk-E55UKBIE.js → chunk-DBAT3IK2.js} +1 -1
  117. package/dist/safe-bash/command-chunks/{chunk-Z45N42QC.js → chunk-DPAYAVMS.js} +15 -1
  118. package/dist/safe-bash/command-chunks/chunk-DS3NXVUM.js +368 -0
  119. package/dist/safe-bash/command-chunks/{chunk-5ZMZ573Q.js → chunk-DSJ3VRL3.js} +16 -4
  120. package/dist/safe-bash/command-chunks/{chunk-K2GDEMEU.js → chunk-EFRCFWVR.js} +4 -4
  121. package/dist/safe-bash/command-chunks/{chunk-DZCY63VJ.js → chunk-EV6HIJ5H.js} +6 -5
  122. package/dist/safe-bash/command-chunks/{chunk-JDYXY44P.js → chunk-FJURV46Y.js} +3 -3
  123. package/dist/safe-bash/command-chunks/{chunk-TZZ4WUKH.js → chunk-FZAWGKSE.js} +6 -4
  124. package/dist/safe-bash/command-chunks/{chunk-YHFXOX6U.js → chunk-GOCFQ6XV.js} +4 -4
  125. package/dist/safe-bash/command-chunks/{chunk-QVOS4YXL.js → chunk-HH5O7DJI.js} +1 -1
  126. package/dist/safe-bash/command-chunks/{chunk-3HHCU5YU.js → chunk-HK7F5SDC.js} +13 -0
  127. package/dist/safe-bash/command-chunks/{chunk-JNZ3CVAE.js → chunk-HQBXIZC7.js} +8 -3
  128. package/dist/safe-bash/command-chunks/{chunk-V4K2JDYU.js → chunk-I63DBZXZ.js} +2 -2
  129. package/dist/safe-bash/command-chunks/{chunk-WNE7FPVR.js → chunk-I64TLTIW.js} +24 -16
  130. package/dist/safe-bash/command-chunks/{chunk-GFC2NTDG.js → chunk-ICANWOXH.js} +5 -29
  131. package/dist/safe-bash/command-chunks/{chunk-SQRQW3CT.js → chunk-IJ6LGLXM.js} +1 -1
  132. package/dist/safe-bash/command-chunks/{chunk-TGSNCQSR.js → chunk-JT4RYCA6.js} +1771 -1663
  133. package/dist/safe-bash/command-chunks/{chunk-II77KPZN.js → chunk-JWW6FYBN.js} +2 -2
  134. package/dist/safe-bash/command-chunks/{chunk-ZYXH3B66.js → chunk-LCJWKTCJ.js} +250 -203
  135. package/dist/safe-bash/command-chunks/chunk-LU4HBPP2.js +97 -0
  136. package/dist/safe-bash/command-chunks/{chunk-XJXU3VVH.js → chunk-LWOE65OE.js} +20 -5
  137. package/dist/safe-bash/command-chunks/{chunk-GMIHJYDG.js → chunk-M32HFSX7.js} +22 -6
  138. package/dist/safe-bash/command-chunks/{chunk-YG4EPFWC.js → chunk-M3NINRDU.js} +2880 -172
  139. package/dist/safe-bash/command-chunks/chunk-MQREDAL6.js +164 -0
  140. package/dist/safe-bash/command-chunks/{chunk-LWS62ISU.js → chunk-N6DIASO2.js} +1 -1
  141. package/dist/safe-bash/command-chunks/chunk-NGL7YK7O.js +188 -0
  142. package/dist/safe-bash/command-chunks/{chunk-EARHPPPJ.js → chunk-NJYHWKIL.js} +39 -9
  143. package/dist/safe-bash/command-chunks/{chunk-6JSIFWYT.js → chunk-OJQRSCBP.js} +1 -1
  144. package/dist/safe-bash/command-chunks/{chunk-OQU6UT6X.js → chunk-OV3XREFN.js} +11 -0
  145. package/dist/safe-bash/command-chunks/{chunk-MIXBO6U7.js → chunk-PTZLF456.js} +2 -2
  146. package/dist/safe-bash/command-chunks/{chunk-ALDC4XP4.js → chunk-QILLRNES.js} +34 -10
  147. package/dist/safe-bash/command-chunks/{chunk-L22T3H7L.js → chunk-QR25JLKO.js} +1 -1
  148. package/dist/safe-bash/command-chunks/{chunk-NASVPT6F.js → chunk-R7C4MGZ5.js} +17 -224
  149. package/dist/safe-bash/command-chunks/{chunk-LCF3OB7P.js → chunk-RBME3JEH.js} +1 -1
  150. package/dist/safe-bash/command-chunks/{chunk-2KG2QLJE.js → chunk-RFWGYT7G.js} +3 -0
  151. package/dist/safe-bash/command-chunks/{chunk-5TBUOBDE.js → chunk-RZMVRT26.js} +27 -13
  152. package/dist/safe-bash/command-chunks/chunk-TFR6B3WB.js +44 -0
  153. package/dist/safe-bash/command-chunks/chunk-TOH3OF3O.js +179 -0
  154. package/dist/safe-bash/command-chunks/chunk-TT4DAFBT.js +13621 -0
  155. package/dist/safe-bash/command-chunks/{chunk-LWSBAWLT.js → chunk-TXI64OAG.js} +1 -1
  156. package/dist/safe-bash/command-chunks/{chunk-GIRNFXP3.js → chunk-TZRI7BJZ.js} +45 -15
  157. package/dist/safe-bash/command-chunks/{chunk-QOKBZFFD.js → chunk-U3MMODA5.js} +2 -7
  158. package/dist/safe-bash/command-chunks/{chunk-ZYHTWNAE.js → chunk-UAW423ZL.js} +11 -11
  159. package/dist/safe-bash/command-chunks/{chunk-C5YYCQHW.js → chunk-UXEEUGOV.js} +222 -12
  160. package/dist/safe-bash/command-chunks/{chunk-GY3BWK7K.js → chunk-VOZPMJRX.js} +87 -80
  161. package/dist/safe-bash/command-chunks/{chunk-ILX2NOLF.js → chunk-WPANOB4A.js} +20 -20
  162. package/dist/safe-bash/command-chunks/{chunk-Y2WBSJG6.js → chunk-X4QZQI5Q.js} +65 -64
  163. package/dist/safe-bash/command-chunks/{chunk-HDCNKOIX.js → chunk-XGI57GCN.js} +1 -1
  164. package/dist/safe-bash/command-chunks/{chunk-5UBXNSFZ.js → chunk-XUCU7QQT.js} +1281 -1278
  165. package/dist/safe-bash/command-chunks/chunk-Y22VXJBD.js +296 -0
  166. package/dist/safe-bash/command-chunks/{chunk-WVHONVZ4.js → chunk-YMFUUPDX.js} +5 -3
  167. package/dist/safe-bash/command-chunks/{chunk-IR2BY7EL.js → chunk-YYGIBXFZ.js} +2 -2
  168. package/dist/safe-bash/command-chunks/{chunk-MSFXC3OC.js → chunk-Z4FO6OHE.js} +2 -2
  169. package/dist/safe-bash/command-chunks/{chunk-WWIBP2ET.js → chunk-Z5ZZVDUD.js} +143 -22
  170. package/dist/safe-bash/command-chunks/{chunk-LOICUCHG.js → chunk-ZHN3QDCI.js} +1 -1
  171. package/dist/safe-bash/commands/alias/index.d.ts +2 -0
  172. package/dist/safe-bash/commands/alias/index.js +2 -0
  173. package/dist/safe-bash/commands/apply-patch/index.browser.js +2 -3
  174. package/dist/safe-bash/commands/apply-patch/index.d.ts +0 -1
  175. package/dist/safe-bash/commands/apply-patch/index.js +0 -1
  176. package/dist/safe-bash/commands/archive/index.browser.js +2 -3
  177. package/dist/safe-bash/commands/archive/index.d.ts +0 -1
  178. package/dist/safe-bash/commands/archive/index.js +0 -1
  179. package/dist/safe-bash/commands/bytes/index.js +2 -1
  180. package/dist/safe-bash/commands/chmod/index.browser.js +1 -1
  181. package/dist/safe-bash/commands/column/index.browser.js +2 -3
  182. package/dist/safe-bash/commands/column/index.d.ts +0 -1
  183. package/dist/safe-bash/commands/column/index.js +0 -1
  184. package/dist/safe-bash/commands/copy-source.js +1 -0
  185. package/dist/safe-bash/commands/csplit/index.browser.js +2 -2
  186. package/dist/safe-bash/commands/csvkit/index.browser.js +72 -0
  187. package/dist/safe-bash/commands/csvkit/index.d.ts +0 -5
  188. package/dist/safe-bash/commands/csvkit/index.js +0 -50
  189. package/dist/safe-bash/commands/docx/index.browser.js +5 -7
  190. package/dist/safe-bash/commands/du/index.browser.js +2 -3
  191. package/dist/safe-bash/commands/du/index.d.ts +0 -1
  192. package/dist/safe-bash/commands/du/index.js +0 -1
  193. package/dist/safe-bash/commands/expr/index.browser.js +2 -3
  194. package/dist/safe-bash/commands/expr/index.d.ts +0 -1
  195. package/dist/safe-bash/commands/expr/index.js +0 -1
  196. package/dist/safe-bash/commands/factor/index.browser.js +2 -2
  197. package/dist/safe-bash/commands/file/index.browser.js +2 -3
  198. package/dist/safe-bash/commands/file/index.d.ts +0 -1
  199. package/dist/safe-bash/commands/file/index.js +0 -1
  200. package/dist/safe-bash/commands/filesystem.js +1 -1
  201. package/dist/safe-bash/commands/getopt/index.browser.js +2 -2
  202. package/dist/safe-bash/commands/grep-aliases/index.browser.js +3 -3
  203. package/dist/safe-bash/commands/hexdump/index.browser.js +2 -2
  204. package/dist/safe-bash/commands/html-to-markdown/index.browser.js +2 -3
  205. package/dist/safe-bash/commands/html-to-markdown/index.d.ts +0 -1
  206. package/dist/safe-bash/commands/html-to-markdown/index.js +0 -1
  207. package/dist/safe-bash/commands/htmlq/index.d.ts +1 -5
  208. package/dist/safe-bash/commands/htmlq/index.js +1 -143
  209. package/dist/safe-bash/commands/iconv/index.browser.js +2 -2
  210. package/dist/safe-bash/commands/line-endings/index.browser.js +2 -2
  211. package/dist/safe-bash/commands/llm/index.browser.js +2 -2
  212. package/dist/safe-bash/commands/llm/providers/index.browser.js +1 -1
  213. package/dist/safe-bash/commands/mdq/index.browser.js +3 -3
  214. package/dist/safe-bash/commands/media/index.browser.js +4 -16314
  215. package/dist/safe-bash/commands/media/index.d.ts +1 -5
  216. package/dist/safe-bash/commands/media/index.js +1 -3
  217. package/dist/safe-bash/commands/media/plugin.d.ts +1 -18
  218. package/dist/safe-bash/commands/media/plugin.js +1 -90
  219. package/dist/safe-bash/commands/media/remote.d.ts +1 -63
  220. package/dist/safe-bash/commands/media/remote.js +1 -405
  221. package/dist/safe-bash/commands/media/settings.d.ts +1 -4
  222. package/dist/safe-bash/commands/media/settings.js +1 -26
  223. package/dist/safe-bash/commands/metadata/index.browser.js +3 -4
  224. package/dist/safe-bash/commands/metadata/index.d.ts +0 -1
  225. package/dist/safe-bash/commands/metadata/index.js +2 -2
  226. package/dist/safe-bash/commands/mktemp/index.browser.js +1 -1
  227. package/dist/safe-bash/commands/network/curl.js +1 -3
  228. package/dist/safe-bash/commands/network/index.browser.js +3 -4
  229. package/dist/safe-bash/commands/network/public.d.ts +0 -1
  230. package/dist/safe-bash/commands/network/public.js +0 -1
  231. package/dist/safe-bash/commands/network/transport.js +2 -1
  232. package/dist/safe-bash/commands/network/wget.js +1 -3
  233. package/dist/safe-bash/commands/node/browser.d.ts +0 -1
  234. package/dist/safe-bash/commands/node/browser.js +0 -1
  235. package/dist/safe-bash/commands/node/default-runtime.d.ts +3 -0
  236. package/dist/safe-bash/commands/node/default-runtime.js +15 -0
  237. package/dist/safe-bash/commands/node/index.browser.js +7 -8
  238. package/dist/safe-bash/commands/node/index.js +3 -3
  239. package/dist/safe-bash/commands/node/path.js +1 -1
  240. package/dist/safe-bash/commands/node/preload.d.ts +1 -1
  241. package/dist/safe-bash/commands/node/preload.js +4 -1
  242. package/dist/safe-bash/commands/node/quickjs.d.ts +2 -0
  243. package/dist/safe-bash/commands/node/quickjs.js +2 -0
  244. package/dist/safe-bash/commands/node/safejs.js +26 -12
  245. package/dist/safe-bash/commands/op/index.browser.js +2 -3
  246. package/dist/safe-bash/commands/op/index.d.ts +0 -11
  247. package/dist/safe-bash/commands/op/index.js +0 -84
  248. package/dist/safe-bash/commands/pandoc/index.browser.js +44 -0
  249. package/dist/safe-bash/commands/pandoc/index.d.ts +0 -1
  250. package/dist/safe-bash/commands/pandoc/index.js +0 -1
  251. package/dist/safe-bash/commands/pr/index.browser.js +2 -2
  252. package/dist/safe-bash/commands/python/docker-runner.js +4 -3
  253. package/dist/safe-bash/commands/python/docker.d.ts +1 -0
  254. package/dist/safe-bash/commands/python/docker.js +5 -2
  255. package/dist/safe-bash/commands/python/index.browser.js +17 -13
  256. package/dist/safe-bash/commands/python/index.d.ts +2 -1
  257. package/dist/safe-bash/commands/python/index.js +10 -8
  258. package/dist/safe-bash/commands/python/llm-capability.js +65 -2
  259. package/dist/safe-bash/commands/python/llm-dependencies.d.ts +27 -0
  260. package/dist/safe-bash/commands/python/llm-dependencies.js +66 -0
  261. package/dist/safe-bash/commands/python/llm-module.js +6 -4
  262. package/dist/safe-bash/commands/python/llm-reference-module.d.ts +3 -0
  263. package/dist/safe-bash/commands/python/llm-reference-module.js +690 -0
  264. package/dist/safe-bash/commands/python/worker.browser.js +2 -3
  265. package/dist/safe-bash/commands/python/worker.d.ts +0 -1
  266. package/dist/safe-bash/commands/python/worker.js +0 -1
  267. package/dist/safe-bash/commands/regex-execution/ere/transport/wire-engine.d.ts +1 -1
  268. package/dist/safe-bash/commands/regex-execution/ere/transport/wire-engine.js +3 -3
  269. package/dist/safe-bash/commands/regex-execution/public.browser.js +7 -7
  270. package/dist/safe-bash/commands/safejs/options.js +5 -1
  271. package/dist/safe-bash/commands/safejs/runtime.d.ts +1 -0
  272. package/dist/safe-bash/commands/safejs/runtime.js +1 -1
  273. package/dist/safe-bash/commands/split/index.browser.js +2 -3
  274. package/dist/safe-bash/commands/split/index.d.ts +0 -1
  275. package/dist/safe-bash/commands/split/index.js +0 -1
  276. package/dist/safe-bash/commands/ssconvert/index.browser.js +98 -0
  277. package/dist/safe-bash/commands/stat/index.browser.js +1 -1
  278. package/dist/safe-bash/commands/stream-format/index.browser.js +3 -4
  279. package/dist/safe-bash/commands/stream-format/index.d.ts +0 -1
  280. package/dist/safe-bash/commands/stream-format/index.js +0 -1
  281. package/dist/safe-bash/commands/stream-inspection/index.browser.js +3 -4
  282. package/dist/safe-bash/commands/stream-inspection/index.d.ts +0 -1
  283. package/dist/safe-bash/commands/stream-inspection/index.js +0 -1
  284. package/dist/safe-bash/commands/streams.js +2 -1
  285. package/dist/safe-bash/commands/table-text/index.browser.js +3 -4
  286. package/dist/safe-bash/commands/table-text/index.d.ts +0 -1
  287. package/dist/safe-bash/commands/table-text/index.js +0 -1
  288. package/dist/safe-bash/commands/text.js +28 -24
  289. package/dist/safe-bash/commands/time-env/index.browser.js +3 -4
  290. package/dist/safe-bash/commands/time-env/index.d.ts +0 -1
  291. package/dist/safe-bash/commands/time-env/index.js +0 -1
  292. package/dist/safe-bash/commands/tree/index.browser.js +2 -3
  293. package/dist/safe-bash/commands/tree/index.d.ts +0 -1
  294. package/dist/safe-bash/commands/tree/index.js +0 -1
  295. package/dist/safe-bash/commands/tsort/index.browser.js +2 -2
  296. package/dist/safe-bash/commands/unalias/index.d.ts +2 -0
  297. package/dist/safe-bash/commands/unalias/index.js +2 -0
  298. package/dist/safe-bash/commands/xml/index.browser.js +2 -2
  299. package/dist/safe-bash/commands/yq/index.browser.js +2 -2
  300. package/dist/safe-bash/core.browser.js +2 -2
  301. package/dist/safe-bash/core.d.ts +7 -1
  302. package/dist/safe-bash/core.js +7 -1
  303. package/dist/safe-bash/execution-runtime.js +2 -1
  304. package/dist/safe-bash/fs/s3/http/index.d.ts +2 -2
  305. package/dist/safe-bash/fs/s3/http/index.js +1 -1
  306. package/dist/safe-bash/full-core.browser.js +283 -945
  307. package/dist/safe-bash/internal/op/types.d.ts +1 -0
  308. package/dist/safe-bash/jobs.browser.js +5 -5
  309. package/dist/safe-bash/lazy-optional.d.ts +3 -3
  310. package/dist/safe-bash/lazy-optional.js +1 -1
  311. package/dist/safe-bash/opt-in/commands/cmp/index.js +7 -6
  312. package/dist/safe-bash/opt-in/commands/dd/index.js +1 -1
  313. package/dist/safe-bash/opt-in/commands/dd/io.js +51 -5
  314. package/dist/safe-bash/opt-in/commands/truncate/index.js +2 -2
  315. package/dist/safe-bash/opt-in/commands/yq/native-work.js +2 -0
  316. package/dist/safe-bash/opt-in/optional/commands/shuf/input.js +2 -1
  317. package/dist/safe-bash/opt-in/optional/commands/shuf/shuf.js +4 -2
  318. package/dist/safe-bash/opt-in/optional.d.ts +1 -1
  319. package/dist/safe-bash/opt-in/optional.js +1 -1
  320. package/dist/safe-bash/opt-in/shell/extensions/read/index.js +2 -344
  321. package/dist/safe-bash/optional-host.browser.js +23 -18
  322. package/dist/safe-bash/optional-host.d.ts +1 -0
  323. package/dist/safe-bash/optional-host.js +1 -0
  324. package/dist/safe-bash/playwright/controller.js +41 -3
  325. package/dist/safe-bash/playwright/native-storage-targets.js +4 -2
  326. package/dist/safe-bash/plugins/base.d.ts +1 -1
  327. package/dist/safe-bash/plugins/base.js +3 -3
  328. package/dist/safe-bash/plugins/composition.d.ts +5 -2
  329. package/dist/safe-bash/plugins/composition.js +10 -7
  330. package/dist/safe-bash/plugins/index.browser.js +44 -41
  331. package/dist/safe-bash/plugins/index.js +3 -2
  332. package/dist/safe-bash/plugins/portable-commands.d.ts +3 -0
  333. package/dist/safe-bash/plugins/portable-commands.js +31 -0
  334. package/dist/safe-bash/registry-entry.browser.js +41 -42
  335. package/dist/safe-bash/search.browser.js +32 -33
  336. package/dist/safe-bash/shell/arithmetic.js +19 -6
  337. package/dist/safe-bash/shell/arrays/state.js +1 -1
  338. package/dist/safe-bash/shell/arrays/syntax.js +4 -3
  339. package/dist/safe-bash/shell/index.d.ts +0 -1
  340. package/dist/safe-bash/shell/index.js +0 -1
  341. package/dist/safe-bash/shell/parser.d.ts +2 -2
  342. package/dist/safe-bash/shell/parser.js +268 -64
  343. package/dist/safe-bash/shell/read-builtin.d.ts +3 -0
  344. package/dist/safe-bash/shell/read-builtin.js +344 -0
  345. package/dist/safe-bash/shell/runtime.d.ts +21 -4
  346. package/dist/safe-bash/shell/runtime.js +373 -412
  347. package/dist/safe-bash/shell/session-state.js +25 -0
  348. package/dist/safe-bash/shell/shell.js +76 -154
  349. package/dist/safe-bash/shell/tilde-expansion.d.ts +1 -1
  350. package/dist/safe-bash/shell/tilde-expansion.js +2 -2
  351. package/dist/safe-bash/shell/types.d.ts +5 -0
  352. package/dist/safe-bash/shell/value-state.js +1 -1
  353. package/dist/safe-bash/shell-entry.browser.js +32 -33
  354. package/dist/safe-bash/trap.browser.js +4 -4
  355. package/dist/safe-bash/yq-browser/index.js +1 -1
  356. package/dist/safe-bash-calendar-engine/time-env/calendar.d.ts +1 -1
  357. package/dist/safe-bash-calendar-engine/time-env/calendar.js +1 -1
  358. package/dist/safe-bash-calendar-engine/time-env/format.js +1 -1
  359. package/dist/safe-bash-command-alias/index.d.ts +13 -0
  360. package/dist/safe-bash-command-alias/index.js +88 -0
  361. package/dist/safe-bash-command-apply-patch/apply.js +3 -3
  362. package/dist/safe-bash-command-apply-patch/index.js +3 -3
  363. package/dist/safe-bash-command-apply-patch/matcher.js +1 -1
  364. package/dist/safe-bash-command-apply-patch/parser.js +1 -1
  365. package/dist/safe-bash-command-awk/awk-pipes.js +2 -2
  366. package/dist/safe-bash-command-awk/awk-reader.js +1 -1
  367. package/dist/safe-bash-command-awk/awk-runtime.js +3 -3
  368. package/dist/safe-bash-command-awk/awk.js +5 -5
  369. package/dist/safe-bash-command-awk/index.js +5 -5
  370. package/dist/safe-bash-command-bc/index.js +206 -60
  371. package/dist/safe-bash-command-cmp/index.js +7 -6
  372. package/dist/safe-bash-command-column/column.js +3 -3
  373. package/dist/safe-bash-command-column/index.js +3 -3
  374. package/dist/safe-bash-command-column/layout.js +2 -2
  375. package/dist/safe-bash-command-csvkit/index.d.ts +1 -0
  376. package/dist/safe-bash-command-csvkit/index.js +1505 -7
  377. package/dist/safe-bash-command-csvkit/sync-support.js +2 -7
  378. package/dist/safe-bash-command-curl/curl.js +1 -1
  379. package/dist/safe-bash-command-curl/index.js +1 -1
  380. package/dist/safe-bash-command-date/date.js +1 -1
  381. package/dist/safe-bash-command-date/index.js +1 -1
  382. package/dist/safe-bash-command-dd/index.js +1 -1
  383. package/dist/safe-bash-command-dd/io.js +51 -5
  384. package/dist/safe-bash-command-diff/diff.js +1 -1
  385. package/dist/safe-bash-command-diff/index.js +1 -1
  386. package/dist/safe-bash-command-diff3/index.js +10 -13
  387. package/dist/safe-bash-command-exiftool/index.js +278 -50
  388. package/dist/safe-bash-command-exiftool/registry.d.ts +4 -2
  389. package/dist/safe-bash-command-factor/command.js +2 -2
  390. package/dist/safe-bash-command-factor/index.js +2 -2
  391. package/dist/safe-bash-command-fd/arguments.d.ts +2 -0
  392. package/dist/safe-bash-command-fd/index.js +42 -12
  393. package/dist/safe-bash-command-ffmpeg/index.js +356 -66
  394. package/dist/safe-bash-command-find/find-format.d.ts +3 -0
  395. package/dist/safe-bash-command-find/find-format.js +1 -1
  396. package/dist/safe-bash-command-find/find.js +2 -2
  397. package/dist/safe-bash-command-find/index.js +2 -2
  398. package/dist/safe-bash-command-fmt/index.js +1 -4
  399. package/dist/safe-bash-command-fold/engine.d.ts +1 -1
  400. package/dist/safe-bash-command-fold/family.js +2 -2
  401. package/dist/safe-bash-command-fold/index.js +1 -1
  402. package/dist/safe-bash-command-hexdump/command.js +2 -2
  403. package/dist/safe-bash-command-hexdump/index.js +2 -2
  404. package/dist/safe-bash-command-html-to-markdown/entities.js +1 -1
  405. package/dist/safe-bash-command-html-to-markdown/index.js +4 -4
  406. package/dist/safe-bash-command-html-to-markdown/input.js +3 -3
  407. package/dist/safe-bash-command-html-to-markdown/parser.js +2 -2
  408. package/dist/safe-bash-command-html-to-markdown/render.js +3 -3
  409. package/dist/safe-bash-command-htmlq/contracts.d.ts +5 -2
  410. package/dist/safe-bash-command-htmlq/index.d.ts +2 -1
  411. package/dist/safe-bash-command-htmlq/index.js +175 -49
  412. package/dist/safe-bash-command-htmlq/sync.d.ts +1 -0
  413. package/dist/safe-bash-command-imagemagick/index.js +56 -6
  414. package/dist/safe-bash-command-install/arguments.d.ts +27 -0
  415. package/dist/safe-bash-command-install/arguments.js +224 -0
  416. package/dist/safe-bash-command-install/index.d.ts +7 -0
  417. package/dist/safe-bash-command-install/index.js +942 -0
  418. package/dist/safe-bash-command-install/mode.d.ts +6 -0
  419. package/dist/safe-bash-command-install/mode.js +71 -0
  420. package/dist/safe-bash-command-install/options.d.ts +40 -0
  421. package/dist/safe-bash-command-install/options.js +27 -0
  422. package/dist/safe-bash-command-jq/index.js +1 -1
  423. package/dist/safe-bash-command-jq/jq.js +1 -1
  424. package/dist/safe-bash-command-less/index.js +37 -61
  425. package/dist/safe-bash-command-llm/command.js +1 -1
  426. package/dist/safe-bash-command-llm/elevenlabs.js +2 -2
  427. package/dist/safe-bash-command-llm/index.js +4 -4
  428. package/dist/safe-bash-command-llm/openai.js +2 -2
  429. package/dist/safe-bash-command-llm/providers/elevenlabs.js +2 -2
  430. package/dist/safe-bash-command-llm/providers/index.js +3 -3
  431. package/dist/safe-bash-command-llm/providers/openai.js +2 -2
  432. package/dist/safe-bash-command-llm/providers/shared.js +1 -1
  433. package/dist/{safe-bash-mcp → safe-bash-command-mcp}/index.browser.d.ts +463 -46
  434. package/dist/safe-bash-command-mcp/index.browser.js +19308 -0
  435. package/dist/{safe-bash-mcp → safe-bash-command-mcp}/index.d.ts +15 -6
  436. package/dist/{safe-bash-mcp → safe-bash-command-mcp}/index.js +2804 -2771
  437. package/dist/safe-bash-command-media/LICENSE +21 -0
  438. package/dist/safe-bash-command-media/index.d.ts +6 -0
  439. package/dist/safe-bash-command-media/index.js +30 -0
  440. package/dist/safe-bash-command-media/plugin.d.ts +18 -0
  441. package/dist/safe-bash-command-media/plugin.js +11 -0
  442. package/dist/safe-bash-command-media/remote.d.ts +63 -0
  443. package/dist/safe-bash-command-media/remote.js +11 -0
  444. package/dist/safe-bash-command-media/settings.d.ts +4 -0
  445. package/dist/safe-bash-command-media/settings.js +41 -0
  446. package/dist/safe-bash-command-mktemp/command.js +1 -1
  447. package/dist/safe-bash-command-mktemp/index.js +1 -1
  448. package/dist/safe-bash-command-mmdc/arguments.d.ts +1 -0
  449. package/dist/safe-bash-command-mmdc/command.d.ts +2 -0
  450. package/dist/safe-bash-command-mmdc/contracts.d.ts +8 -1
  451. package/dist/safe-bash-command-mmdc/index.js +359 -7
  452. package/dist/safe-bash-command-nl/index.js +1 -1
  453. package/dist/safe-bash-command-nl/nl.js +1 -1
  454. package/dist/safe-bash-command-node/LICENSE +21 -0
  455. package/dist/safe-bash-command-node/index.d.ts +17 -0
  456. package/dist/safe-bash-command-node/index.js +328 -0
  457. package/dist/safe-bash-command-numfmt/index.js +1 -0
  458. package/dist/safe-bash-command-od/index.js +10 -6
  459. package/dist/safe-bash-command-op/index.js +39 -32
  460. package/dist/safe-bash-command-op/types.d.ts +1 -0
  461. package/dist/safe-bash-command-pandoc/command.js +3 -3
  462. package/dist/safe-bash-command-pandoc/index.d.ts +1 -0
  463. package/dist/safe-bash-command-pandoc/index.js +5 -3
  464. package/dist/safe-bash-command-pandoc/sync.d.ts +1 -0
  465. package/dist/safe-bash-command-patch/index.js +4 -4
  466. package/dist/safe-bash-command-patch/patch.js +4 -4
  467. package/dist/safe-bash-command-pdfimages/index.js +1 -1
  468. package/dist/safe-bash-command-pdfinfo/index.js +30 -5
  469. package/dist/safe-bash-command-pdftk/index.js +21 -23
  470. package/dist/safe-bash-command-pdftoppm/index.js +17 -4
  471. package/dist/safe-bash-command-pdftotext/index.js +11 -14
  472. package/dist/safe-bash-command-qpdf/index.d.ts +1 -0
  473. package/dist/safe-bash-command-qpdf/index.js +9 -6
  474. package/dist/safe-bash-command-rg/index.js +1 -1
  475. package/dist/safe-bash-command-rg/rg-command.js +1 -1
  476. package/dist/safe-bash-command-sed/index.js +1 -1
  477. package/dist/safe-bash-command-sed/sed.js +1 -1
  478. package/dist/safe-bash-command-shuf/input.d.ts +2 -2
  479. package/dist/safe-bash-command-shuf/input.js +2 -1
  480. package/dist/safe-bash-command-shuf/shuf.js +4 -2
  481. package/dist/safe-bash-command-sips/index.js +2 -2
  482. package/dist/safe-bash-command-soffice/index.js +97 -12
  483. package/dist/safe-bash-command-sponge/index.js +4 -1
  484. package/dist/safe-bash-command-sqlite3/engine.d.ts +1 -0
  485. package/dist/safe-bash-command-sqlite3/index.js +510 -70
  486. package/dist/safe-bash-command-ssconvert/formats/xlsx.js +2 -2
  487. package/dist/safe-bash-command-ssconvert/index.js +44 -22
  488. package/dist/safe-bash-command-stat/command.js +1 -1
  489. package/dist/safe-bash-command-stat/index.js +1 -1
  490. package/dist/safe-bash-command-tar/create.d.ts +1 -0
  491. package/dist/safe-bash-command-tar/create.js +2 -2
  492. package/dist/safe-bash-command-tar/extract.js +2 -2
  493. package/dist/safe-bash-command-tar/index.js +4 -4
  494. package/dist/safe-bash-command-tar/modes.js +4 -4
  495. package/dist/safe-bash-command-tar/options.js +1 -1
  496. package/dist/safe-bash-command-truncate/index.js +2 -2
  497. package/dist/safe-bash-command-tsort/command.js +2 -2
  498. package/dist/safe-bash-command-tsort/index.js +2 -2
  499. package/dist/safe-bash-command-unalias/index.d.ts +12 -0
  500. package/dist/safe-bash-command-unalias/index.js +67 -0
  501. package/dist/safe-bash-command-unrtf/index.js +26 -4
  502. package/dist/safe-bash-command-xan/argv.d.ts +1 -1
  503. package/dist/safe-bash-command-xan/argv.js +2 -2
  504. package/dist/safe-bash-command-xan/budget.d.ts +0 -1
  505. package/dist/safe-bash-command-xan/budget.js +1 -1
  506. package/dist/safe-bash-command-xan/commands.js +6 -6
  507. package/dist/safe-bash-command-xan/csv.js +2 -2
  508. package/dist/safe-bash-command-xan/index.js +8 -9
  509. package/dist/safe-bash-command-xan/io.js +4 -4
  510. package/dist/safe-bash-command-xan/options.js +1 -1
  511. package/dist/safe-bash-command-xan/selector.js +2 -2
  512. package/dist/safe-bash-command-xmllint/index.js +45 -23
  513. package/dist/safe-bash-command-xxd/index.js +41 -10
  514. package/dist/safe-bash-command-yq/accounting.js +1 -1
  515. package/dist/safe-bash-command-yq/index.js +3 -2
  516. package/dist/safe-bash-command-yq/native-work.js +2 -0
  517. package/dist/safe-bash-command-yq/parser.js +2 -2
  518. package/dist/safe-bash-command-yq/query.js +5 -5
  519. package/dist/safe-bash-command-yq/toml.js +2 -2
  520. package/dist/safe-bash-command-zip/index.js +3 -3
  521. package/dist/safe-bash-compression-engine/bounded-codec.js +2 -2
  522. package/dist/safe-bash-compression-engine/codec-loader.js +1 -1
  523. package/dist/safe-bash-compression-engine/files.js +5 -5
  524. package/dist/safe-bash-compression-engine/index.js +4 -4
  525. package/dist/safe-bash-compression-engine/operand.js +5 -5
  526. package/dist/safe-bash-compression-engine/stream.js +4 -4
  527. package/dist/safe-bash-compression-engine/zstd-decode.js +3 -3
  528. package/dist/safe-bash-contracts/command.js +3 -3
  529. package/dist/safe-bash-contracts/default-executor.js +2 -2
  530. package/dist/safe-bash-contracts/diagnostics.js +3 -3
  531. package/dist/safe-bash-contracts/escaping.js +6 -6
  532. package/dist/safe-bash-contracts/filesystem-descriptor.js +3 -3
  533. package/dist/safe-bash-contracts/filesystem-output.js +5 -5
  534. package/dist/safe-bash-contracts/http.d.ts +7 -0
  535. package/dist/safe-bash-contracts/index.js +8 -8
  536. package/dist/safe-bash-contracts/io.js +2 -2
  537. package/dist/safe-bash-contracts/output.js +3 -3
  538. package/dist/safe-bash-contracts/runtime-control.d.ts +2 -2
  539. package/dist/safe-bash-contracts/runtime-control.js +4 -2
  540. package/dist/safe-bash-contracts/signals.d.ts +2 -0
  541. package/dist/safe-bash-contracts/signals.js +3 -1
  542. package/dist/safe-bash-contracts/yield.js +1 -1
  543. package/dist/safe-bash-csv-engine/index.d.ts +2 -1
  544. package/dist/safe-bash-csv-engine/index.js +21 -15
  545. package/dist/safe-bash-io-engine/commands/search/requirements.js +2 -2
  546. package/dist/safe-bash-io-engine/commands/text-programs/shared.js +6 -6
  547. package/dist/safe-bash-io-engine/internal.js +1 -1
  548. package/dist/safe-bash-io-engine/shell/pattern.js +38 -18
  549. package/dist/safe-bash-line-ending-engine/convert.js +9 -204
  550. package/dist/safe-bash-line-ending-engine/encoding.js +9 -42
  551. package/dist/safe-bash-line-ending-engine/index.js +48 -0
  552. package/dist/safe-bash-line-ending-engine/info.js +9 -90
  553. package/dist/safe-bash-line-ending-engine/internal.js +15 -160
  554. package/dist/safe-bash-line-ending-engine/io.js +12 -289
  555. package/dist/safe-bash-line-ending-engine/stage.js +10 -160
  556. package/dist/safe-bash-markdown-engine/index.js +3 -3
  557. package/dist/safe-bash-network-engine/args.d.ts +6 -0
  558. package/dist/safe-bash-network-engine/args.js +4 -2
  559. package/dist/safe-bash-network-engine/body.js +1 -1
  560. package/dist/safe-bash-network-engine/fetch-transport.js +3 -1
  561. package/dist/safe-bash-network-engine/index.js +3 -1
  562. package/dist/safe-bash-network-engine/input.js +2 -2
  563. package/dist/safe-bash-network-engine/platform-portable.js +3 -1
  564. package/dist/safe-bash-query-engine/dates.d.ts +1 -1
  565. package/dist/safe-bash-query-engine/dates.js +1 -1
  566. package/dist/safe-bash-query-engine/index.js +6 -6
  567. package/dist/safe-bash-query-engine/interpreter.js +4 -4
  568. package/dist/safe-bash-query-engine/parser.js +1 -1
  569. package/dist/safe-bash-query-engine/query-core.js +6 -6
  570. package/dist/safe-bash-regex-engine/execution/bounded-provider.js +10 -0
  571. package/dist/safe-bash-regex-engine/index.js +1 -1
  572. package/dist/safe-bash-regex-engine/text/regex.d.ts +1 -1
  573. package/dist/safe-bash-regex-engine/text/regex.js +1 -1
  574. package/dist/safe-bash-search-engine/ergonomic-regex.d.ts +1 -0
  575. package/dist/safe-bash-search-engine/ergonomic-regex.js +1 -1
  576. package/dist/safe-bash-search-engine/grep.js +16 -9
  577. package/dist/safe-bash-search-engine/matcher.d.ts +2 -2
  578. package/dist/safe-bash-search-engine/matcher.js +12 -8
  579. package/dist/safe-bash-search-engine/shared.js +1 -1
  580. package/dist/safe-bash-search-engine/walk.js +13 -1
  581. package/dist/safe-bash-text-stream-engine/stream-format/shared.d.ts +1 -1
  582. package/dist/safe-bash-text-stream-engine/stream-format/shared.js +2 -1
  583. package/dist/safe-bash-xml-engine/document.js +3 -3
  584. package/dist/safe-bash-xml-engine/evaluate.js +2 -2
  585. package/dist/safe-bash-xml-engine/index.js +4 -4
  586. package/dist/safe-bash-xml-engine/io.js +7 -2
  587. package/dist/safe-bash-xml-engine/limits.d.ts +0 -2
  588. package/dist/safe-bash-xml-engine/limits.js +1 -1
  589. package/dist/safe-bash-xml-engine/query.js +3 -3
  590. package/dist/safe-bash-zip-engine/index.js +3 -3
  591. package/dist/safe-bash-zip-engine/zip/repair.js +3 -3
  592. package/dist/safe-bash-zip-engine/zip/safety.js +1 -1
  593. package/dist/safe-bash-zip-engine/zip/sfx.js +3 -3
  594. package/dist/safe-bash-zip-engine/zip/volumes.js +1 -1
  595. package/dist/safe-bash-zip-engine/zip-format.js +3 -3
  596. package/dist/safe-playwright-cloudflare/browser-socket-closure.js +18 -3
  597. package/dist/safe-playwright-cloudflare/shell-browser-resource.js +1 -1
  598. package/dist/xlsx-ast/xlsx.js +6 -5
  599. package/package.json +86 -98
  600. package/dist/media-cli/bytes.d.ts +0 -8
  601. package/dist/media-cli/bytes.js +0 -40
  602. package/dist/media-cli/concat.d.ts +0 -30
  603. package/dist/media-cli/concat.js +0 -197
  604. package/dist/media-cli/content.js +0 -66
  605. package/dist/media-cli/dependency-grammars.d.ts +0 -12
  606. package/dist/media-cli/dependency-grammars.js +0 -557
  607. package/dist/media-cli/discover.js +0 -286
  608. package/dist/media-cli/engine.js +0 -190
  609. package/dist/media-cli/filename-expression.js +0 -147
  610. package/dist/media-cli/filesystem.js +0 -35
  611. package/dist/media-cli/frontend-contract.js +0 -8
  612. package/dist/media-cli/frontend-issues.d.ts +0 -6
  613. package/dist/media-cli/frontend-issues.js +0 -9
  614. package/dist/media-cli/imagemagick-operand.d.ts +0 -42
  615. package/dist/media-cli/imagemagick-operand.js +0 -229
  616. package/dist/media-cli/imagemagick-references.d.ts +0 -7
  617. package/dist/media-cli/imagemagick-references.js +0 -42
  618. package/dist/media-cli/imagemagick.generated.js +0 -3254
  619. package/dist/media-cli/imagemagick.js +0 -615
  620. package/dist/media-cli/index.js +0 -12
  621. package/dist/media-cli/mvg.d.ts +0 -10
  622. package/dist/media-cli/mvg.js +0 -102
  623. package/dist/media-cli/network.js +0 -78
  624. package/dist/media-cli/options.generated.js +0 -3312
  625. package/dist/media-cli/preset.d.ts +0 -11
  626. package/dist/media-cli/preset.js +0 -57
  627. package/dist/media-cli/resolution-path.d.ts +0 -23
  628. package/dist/media-cli/resolution-path.js +0 -217
  629. package/dist/media-cli/resolver.js +0 -494
  630. package/dist/media-cli/resources.d.ts +0 -16
  631. package/dist/media-cli/resources.js +0 -187
  632. package/dist/media-cli/shim.js +0 -52
  633. package/dist/media-cli/tee.d.ts +0 -6
  634. package/dist/media-cli/tee.js +0 -38
  635. package/dist/office-package/zip-sync.js +0 -111
  636. package/dist/remote-execution/binary.js +0 -178
  637. package/dist/remote-execution/callback-result.js +0 -26
  638. package/dist/remote-execution/canonical-capabilities.d.ts +0 -5
  639. package/dist/remote-execution/canonical-capabilities.js +0 -45
  640. package/dist/remote-execution/canonical-metadata.d.ts +0 -4
  641. package/dist/remote-execution/canonical-metadata.js +0 -32
  642. package/dist/remote-execution/client.js +0 -824
  643. package/dist/remote-execution/deployment.js +0 -131
  644. package/dist/remote-execution/descriptors.js +0 -267
  645. package/dist/remote-execution/effects.js +0 -357
  646. package/dist/remote-execution/endpoint.js +0 -224
  647. package/dist/remote-execution/files.js +0 -291
  648. package/dist/remote-execution/hosting-operation.js +0 -26
  649. package/dist/remote-execution/hosting-request.d.ts +0 -4
  650. package/dist/remote-execution/hosting-request.js +0 -12
  651. package/dist/remote-execution/hosting-stream.d.ts +0 -8
  652. package/dist/remote-execution/hosting-stream.js +0 -64
  653. package/dist/remote-execution/index.js +0 -18
  654. package/dist/remote-execution/invocation-admission.d.ts +0 -3
  655. package/dist/remote-execution/invocation-admission.js +0 -17
  656. package/dist/remote-execution/job-binding.js +0 -1269
  657. package/dist/remote-execution/materializations.js +0 -284
  658. package/dist/remote-execution/modal-driver.js +0 -90
  659. package/dist/remote-execution/native-result.d.ts +0 -3
  660. package/dist/remote-execution/native-result.js +0 -16
  661. package/dist/remote-execution/output-freshness.d.ts +0 -4
  662. package/dist/remote-execution/output-freshness.js +0 -19
  663. package/dist/remote-execution/output-retrieval.js +0 -474
  664. package/dist/remote-execution/process-http.js +0 -607
  665. package/dist/remote-execution/process.js +0 -577
  666. package/dist/remote-execution/protocol.js +0 -208
  667. package/dist/remote-execution/relay.js +0 -91
  668. package/dist/remote-execution/rest-driver.js +0 -93
  669. package/dist/remote-execution/upload-descriptor.js +0 -201
  670. package/dist/remote-execution/upload-protocol.js +0 -62
  671. package/dist/remote-execution/uploads.js +0 -324
  672. package/dist/remote-execution/wire-json.d.ts +0 -4
  673. package/dist/remote-execution/wire-json.js +0 -44
  674. package/dist/remote-execution/wire-validation.js +0 -131
  675. package/dist/remote-execution/wire.generated.js +0 -4224
  676. package/dist/safe-bash/chunks/chunk-GDYNCWRV.js +0 -161
  677. package/dist/safe-bash/chunks/chunk-IWDICZVK.js +0 -20
  678. package/dist/safe-bash/chunks/chunk-MHMMRCYC.js +0 -3464
  679. package/dist/safe-bash/chunks/chunk-UE5KZDEK.js +0 -77
  680. package/dist/safe-bash/chunks/csvkit-TACDU7FC.js +0 -1618
  681. package/dist/safe-bash/chunks/implementation-MLFHUQ5M.js +0 -133
  682. package/dist/safe-bash/commands/csvkit/sync.js +0 -1639
  683. package/dist/safe-bash/commands/node/unconfigured.d.ts +0 -3
  684. package/dist/safe-bash/commands/node/unconfigured.js +0 -10
  685. package/dist/safe-bash/commands/pandoc/implementation.d.ts +0 -8
  686. package/dist/safe-bash/commands/pandoc/implementation.js +0 -94
  687. package/dist/safe-bash-mcp/index.browser.js +0 -9167
  688. package/dist/safe-bash/command-chunks/{chunk-ZRRBXU3M.js → chunk-GIN5GUDP.js} +4 -4
  689. package/dist/safe-bash/command-chunks/{chunk-LAOM65EE.js → chunk-IEO4XVN6.js} +3 -3
  690. package/dist/safe-bash/command-chunks/{chunk-BXCXRYVU.js → chunk-JNANXVJV.js} +0 -0
  691. package/dist/safe-bash/command-chunks/{chunk-364TMWBT.js → chunk-MWREVL44.js} +6 -6
  692. package/dist/safe-bash/command-chunks/{chunk-464RVBGB.js → chunk-Q5TDKFHK.js} +3 -3
  693. package/dist/safe-bash/command-chunks/{chunk-AJR3AQYA.js → chunk-UKX3LZHR.js} +0 -0
  694. package/dist/safe-bash/command-chunks/{chunk-XIIBTGC5.js → chunk-XPXEQKRW.js} +9 -9
  695. package/dist/safe-bash/command-chunks/{chunk-FDBUV4HJ.js → chunk-Y4HGTG3E.js} +3 -3
  696. /package/dist/{safe-bash/commands/csvkit → safe-bash-command-csvkit}/sync.d.ts +0 -0
@@ -56,6 +56,10 @@ export function captureShellSessionState(state, exitCode) {
56
56
  dotglob: Boolean(state.dotglob),
57
57
  globstar: Boolean(state.globstar),
58
58
  nullglob: Boolean(state.nullglob),
59
+ failglob: Boolean(state.failglob),
60
+ lastpipe: Boolean(state.lastpipe),
61
+ inherit_errexit: Boolean(state.inherit_errexit),
62
+ expand_aliases: Boolean(state.expand_aliases),
59
63
  nocaseglob: Boolean(state.nocaseglob),
60
64
  nocasematch: Boolean(state.nocasematch),
61
65
  extglob: Boolean(state.extglob),
@@ -69,6 +73,7 @@ export function captureShellSessionState(state, exitCode) {
69
73
  nounset: Boolean(state.nounset),
70
74
  };
71
75
  const snapshot = {
76
+ aliases: Object.fromEntries(state.aliases ?? []),
72
77
  cwd: state.cwd,
73
78
  umask: state.umask ?? 0o022,
74
79
  variables,
@@ -91,6 +96,18 @@ export async function restoreShellSessionState(state, snapshot, explicitOptions,
91
96
  ? resolvePath("/", explicitOptions.cwd)
92
97
  : resolvePath("/", snapshot.cwd || "/");
93
98
  state.cwd = resolvedCwd;
99
+ if (snapshot.aliases) {
100
+ let bytes = 0;
101
+ const aliases = new Map();
102
+ for (const [name, value] of Object.entries(snapshot.aliases)) {
103
+ budget.signal.throwIfAborted();
104
+ bytes += shellValueByteLength(name) + shellValueByteLength(value);
105
+ if (bytes > budget.limits.maxExpansionBytes)
106
+ budget.fail("maxExpansionBytes");
107
+ aliases.set(name, value);
108
+ }
109
+ state.aliases = aliases;
110
+ }
94
111
  if (typeof snapshot.umask === "number") {
95
112
  state.umask = snapshot.umask & 0o777;
96
113
  }
@@ -178,6 +195,14 @@ export async function restoreShellSessionState(state, snapshot, explicitOptions,
178
195
  state.globstar = opts.globstar;
179
196
  if (opts.nullglob !== undefined)
180
197
  state.nullglob = opts.nullglob;
198
+ if (opts.failglob !== undefined)
199
+ state.failglob = opts.failglob;
200
+ if (opts.lastpipe !== undefined)
201
+ state.lastpipe = opts.lastpipe;
202
+ if (opts.inherit_errexit !== undefined)
203
+ state.inherit_errexit = opts.inherit_errexit;
204
+ if (opts.expand_aliases !== undefined)
205
+ state.expand_aliases = opts.expand_aliases;
181
206
  if (opts.nocaseglob !== undefined)
182
207
  state.nocaseglob = opts.nocaseglob;
183
208
  if (opts.nocasematch !== undefined)
@@ -1,30 +1,9 @@
1
- var _a;
2
- import { MemoryFileSystem } from "../fs/memory/index.js";
3
- function utf8ByteLength(str) {
4
- if (typeof globalThis.Buffer === "function")
5
- return globalThis.Buffer.byteLength(str);
6
- let bytes = str.length;
7
- for (let i = 0; i < str.length; i++) {
8
- const code = str.charCodeAt(i);
9
- if (code >= 0x80) {
10
- if (code <= 0x7ff)
11
- bytes += 1;
12
- else if (code >= 0xd800 && code <= 0xdbff && i + 1 < str.length && (str.charCodeAt(i + 1) & 0xfc00) === 0xdc00) {
13
- bytes += 2;
14
- i++;
15
- }
16
- else {
17
- bytes += 2;
18
- }
19
- }
20
- }
21
- return bytes;
22
- }
1
+ import { utf8ByteLength } from "../../safe-bash-byte-engine/index.js";
23
2
  import { clearAwkReaderPool } from "../commands/text-programs/awk-reader.js";
24
3
  import { clearRgFastRunnerPool } from "../commands/search/rg-command.js";
25
4
  import { writeDiagnostic } from "../escaping.js";
26
5
  import { createDeviceFileSystem } from "@poe-platform/safe-fs/core";
27
- import { CommandRegistry, resolvePath, toByteSource } from "../contracts/index.js";
6
+ import { builtInDirectContextExecutors, CommandRegistry, resolvePath, toByteSource } from "../contracts/index.js";
28
7
  import { warnIfHostProcessEnv } from "./env-warning.js";
29
8
  import { parseShellUnit } from "./parser.js";
30
9
  import { defaultPortableTrapExtension } from "./trap.js";
@@ -80,28 +59,24 @@ const EMPTY_EXEC_RESULT = {
80
59
  stderrBytes: EMPTY_STDOUT_BYTES,
81
60
  exitCode: 0,
82
61
  };
83
- let warmSyncExecJitWarmed = false;
84
- const parsedSourceCache = new Map();
85
- let lastSourceCacheKey = "";
86
- let lastSourceCacheVal;
87
- function getSourceParseCache(source) {
88
- if (source === lastSourceCacheKey && lastSourceCacheVal !== undefined)
89
- return lastSourceCacheVal;
90
- let entry = parsedSourceCache.get(source);
91
- if (!entry) {
92
- if (parsedSourceCache.size >= 64) {
93
- const oldest = parsedSourceCache.keys().next().value;
94
- if (oldest !== undefined)
95
- parsedSourceCache.delete(oldest);
96
- }
97
- entry = { byteLength: utf8ByteLength(source) };
98
- parsedSourceCache.set(source, entry);
62
+ function syntaxDiagnostic(source, error) {
63
+ const line = source.slice(0, error.offset).split("\n").length;
64
+ if (error.unclosedQuote) {
65
+ return `shell: -c: line ${error.unclosedQuote.line}: unexpected EOF while looking for matching \`${error.unclosedQuote.quote}'\n`;
99
66
  }
100
- lastSourceCacheKey = source;
101
- lastSourceCacheVal = entry;
102
- return entry;
67
+ if (error.exitCode === 127) {
68
+ const token = /^[;&|()<>]|^[^\s;&|()<>]+/u.exec(source.slice(error.offset))?.[0] ?? "newline";
69
+ return `shell: -c: line ${line}: syntax error near unexpected token \`${token}'\nshell: -c: line ${line}: \`${source.split("\n")[line - 1] ?? ""}'\n`;
70
+ }
71
+ if (error.offset >= source.length && !/Unterminated|nesting|Unsupported/u.test(error.reason)) {
72
+ const context = error.incompleteCommand ? ` from \`${error.incompleteCommand.name}' command on line ${error.incompleteCommand.line}` : "";
73
+ return `shell: -c: line ${source.split("\n").length + Number(!source.endsWith("\n"))}: syntax error: unexpected end of file${context}\n`;
74
+ }
75
+ return `shell: ${error.message}\n`;
103
76
  }
104
- function getOrParseUnitFromCache(source, offset, unitLocale, sourceCache, parseState, budget, syntax) {
77
+ function getOrParseUnitFromCache(source, offset, unitLocale, sourceCache, parseState, budget, syntax, aliases) {
78
+ if (aliases?.size)
79
+ sourceCache = undefined;
105
80
  let cached;
106
81
  if (sourceCache !== undefined) {
107
82
  if (offset === 0) {
@@ -129,7 +104,7 @@ function getOrParseUnitFromCache(source, offset, unitLocale, sourceCache, parseS
129
104
  parseState.lineIndexUnits = budget.parsing.admittedUnits - beforeLineIdx;
130
105
  }
131
106
  const beforeParse = budget.parsing.admittedUnits;
132
- const parsed = parseShellUnit(source, offset, unitLocale, budget.parsing, parseState.lineIndex, undefined, false, syntax);
107
+ const parsed = parseShellUnit(source, offset, unitLocale, budget.parsing, parseState.lineIndex, undefined, false, syntax, aliases);
133
108
  const parseUnits = budget.parsing.admittedUnits - beforeParse;
134
109
  const unitsCharged = (offset === 0 ? parseState.lineIndexUnits : 0) + parseUnits;
135
110
  if (sourceCache !== undefined && (!parsed.script.warnings || parsed.script.warnings.length === 0)) {
@@ -307,6 +282,7 @@ export class Shell {
307
282
  #middleware = [];
308
283
  #filesystems = new Map();
309
284
  #plugins = [];
285
+ #processSubstitutionIds = { next: 0 };
310
286
  #capabilities = {};
311
287
  #options;
312
288
  #resolvedLimits;
@@ -323,12 +299,39 @@ export class Shell {
323
299
  #singleActiveOwner;
324
300
  #active;
325
301
  #warmedInvocation;
302
+ #parsedSourceCache = new Map();
303
+ #getSourceParseCache(source) {
304
+ let entry = this.#parsedSourceCache.get(source);
305
+ if (!entry) {
306
+ if (this.#parsedSourceCache.size >= 64) {
307
+ const oldest = this.#parsedSourceCache.keys().next().value;
308
+ if (oldest !== undefined)
309
+ this.#parsedSourceCache.delete(oldest);
310
+ }
311
+ entry = { byteLength: utf8ByteLength(source) };
312
+ this.#parsedSourceCache.set(source, entry);
313
+ }
314
+ return entry;
315
+ }
326
316
  constructor(options) {
327
317
  if (!options?.fs)
328
318
  throw new TypeError("Shell requires an explicit filesystem");
329
319
  if (options.deviceView !== undefined && options.deviceView !== "default" && options.deviceView !== "provided")
330
320
  throw new TypeError("deviceView must be default or provided");
331
- const commands = options.commands ?? new CommandRegistry();
321
+ const onRegister = (command) => {
322
+ this.#clearWarmedInvocation();
323
+ if (!builtInDirectContextExecutors.has(command.execute)) {
324
+ this.#hasCustomCommands = true;
325
+ customRegisteredCommands.add(command.execute);
326
+ }
327
+ };
328
+ const commands = options.commands ?? new class extends CommandRegistry {
329
+ register(command, options) {
330
+ super.register(command, options);
331
+ onRegister(command);
332
+ return this;
333
+ }
334
+ }();
332
335
  if (!(commands instanceof CommandRegistry))
333
336
  throw new TypeError("CommandRegistry requires its matching shell runtime; do not mix source and compiled runtime modules");
334
337
  if (options.commands) {
@@ -396,6 +399,7 @@ export class Shell {
396
399
  register(command, options) {
397
400
  if (this.#disposed)
398
401
  throw new Error("Shell is disposed");
402
+ this.#clearWarmedInvocation();
399
403
  this.#hasCustomCommands = true;
400
404
  if (command && typeof command.execute === "function")
401
405
  customRegisteredCommands.add(command.execute);
@@ -453,6 +457,7 @@ export class Shell {
453
457
  void warm.stdin.close();
454
458
  warm.budget.close();
455
459
  void warm.scope.close();
460
+ warm.owner.finish({ kind: "return", value: undefined });
456
461
  warm.cancellationState.close();
457
462
  }
458
463
  #isDefaultExecOptions(options, currentScope) {
@@ -480,78 +485,14 @@ export class Shell {
480
485
  (!this.#singleActiveScope || this.#singleActiveScope === currentScope) &&
481
486
  !this.#active);
482
487
  }
483
- static #enginePrewarmed = false;
484
- async #prewarmIsolatedSandbox() {
485
- if (_a.#enginePrewarmed)
486
- return;
487
- _a.#enginePrewarmed = true;
488
- await this.#ready;
489
- if (!this.commands.get("rg") || !this.commands.get("jq") || !this.commands.get("awk")) {
490
- _a.#enginePrewarmed = false;
491
- return;
492
- }
493
- try {
494
- const enc = new TextEncoder();
495
- const dBytes = enc.encode(Array.from({ length: 120 }, (_, i) => `${i % 3 === 0 ? "alpha" : i % 3 === 1 ? "beta" : "gamma"}:val_${(i * 17) % 97}:${i}\n`).join(""));
496
- const jBytes = enc.encode(Array.from({ length: 60 }, (_, i) => `{"id":${i},"active":${i % 2 === 0},"score":${(i * 7) % 100},"tag":"t_${i % 10}"}\n`).join(""));
497
- const sandboxFs = new MemoryFileSystem();
498
- await sandboxFs.writeFile("/data.txt", dBytes);
499
- await sandboxFs.writeFile("/items.jsonl", jBytes);
500
- for (let d = 0; d < 2; d++) {
501
- await sandboxFs.mkdir(`/src/pkg_${d}`, { recursive: true });
502
- for (let f = 0; f < 2; f++) {
503
- await sandboxFs.writeFile(`/src/pkg_${d}/mod_${f}.ts`, enc.encode(Array.from({ length: 20 }, (_, l) => `export const v_${d}_${f}_${l} = "${(d + f + l) % 11 === 0 ? "NEEDLE_TOKEN" : "normal"}_${l}";\n`).join("")));
504
- }
505
- }
506
- const fsScript = [
507
- "mkdir -p /work/a /work/b",
508
- ...Array.from({ length: 12 }, (_, i) => `echo "item_${i}" > /work/a/f_${i}.txt`),
509
- ...Array.from({ length: 12 }, (_, i) => `echo "item_${i}" >> /work/b/f_${i}.txt`),
510
- "rm -rf /work/b",
511
- "find /work/a -name 'f_1*.txt' | wc -l",
512
- ].join("\n");
513
- const scripts = [
514
- "grep '^alpha' /data.txt | cut -d: -f2 | tr 'a-z' 'A-Z' | sort | head -n 5",
515
- "rg -c NEEDLE_TOKEN /src",
516
- "sed 's/^alpha:/ALPHA_REPLACED:/g; s/:val_/:VALUE_/g' /data.txt > /out.txt",
517
- "awk -F: '/^alpha/ { sum += $3; cnt++ } END { print cnt, sum }' /data.txt",
518
- "jq -c 'select(.active) | {id, score}' /items.jsonl > /filtered.jsonl",
519
- fsScript,
520
- "acc=0; i=0; for i in {1..80}; do acc=$((acc + i)); done; echo $acc",
521
- "declare -a arr=(); declare -A map=(); fn() { local x=\"$1\"; case \"$x\" in *0) return 0;; *) return 1;; esac; }; for ((i=0; i<40; i++)); do s=\"p_m_${i}_s_e\"; a=\"${s#p_}\"; b=\"${a%_e}\"; c=\"${b//_/}\"; arr+=(\"e_$i\"); map[\"k_$i\"]=$((i + ${#c})); if [[ \"$s\" =~ ^p_m_([0-9]+)_s_e$ ]]; then fn \"${BASH_REMATCH[1]}\"; fi; done",
522
- ];
523
- const sandboxShell = new _a({ fs: sandboxFs });
524
- for (const plugin of this.#plugins) {
525
- sandboxShell.use(plugin);
526
- }
527
- for (const s of scripts) {
528
- const isFs = s === fsScript;
529
- const isSed = s.startsWith("sed ");
530
- const isJq = s.startsWith("jq ");
531
- for (let i = 0; i < 4; i++) {
532
- if (isFs && i > 0)
533
- await sandboxFs.rm("/work", { recursive: true, force: true });
534
- else if (isSed && i > 0)
535
- await sandboxFs.rm("/out.txt", { force: true });
536
- else if (isJq && i > 0)
537
- await sandboxFs.rm("/filtered.jsonl", { force: true });
538
- await sandboxShell.exec("");
539
- await sandboxShell.exec(s);
540
- }
541
- }
542
- sandboxShell.#clearWarmedInvocation();
543
- }
544
- catch {
545
- // Ignore prewarm errors in restricted environments
546
- }
547
- }
548
488
  exec(source, options = EMPTY_EXEC_OPTIONS) {
549
489
  if (!this.#disposed &&
550
490
  this.#warmedInvocation &&
551
491
  typeof source === "string" &&
492
+ source.length > 0 &&
552
493
  source.length <= 16384 &&
553
494
  (options === EMPTY_EXEC_OPTIONS || this.#isDefaultExecOptions(options))) {
554
- const sourceCache = getSourceParseCache(source);
495
+ const sourceCache = this.#getSourceParseCache(source);
555
496
  const firstCached = sourceCache?.first0;
556
497
  if (firstCached && (!firstCached.unit.script.warnings || firstCached.unit.script.warnings.length === 0)) {
557
498
  return this.#execWarmSyncOrFallback(source, options, sourceCache, firstCached);
@@ -694,7 +635,7 @@ export class Shell {
694
635
  budget.signal.throwIfAborted();
695
636
  const vars = currentState.variables;
696
637
  const nextLocale = (vars.LC_ALL || vars.LC_CTYPE || vars.LANG) ? byteLocale(vars) : false;
697
- if (currentCachedUnit && currentCachedUnit.locale === nextLocale && currentCachedUnit.nextCached !== undefined) {
638
+ if (!currentState.expand_aliases && currentCachedUnit && currentCachedUnit.locale === nextLocale && currentCachedUnit.nextCached !== undefined) {
698
639
  currentCachedUnit = currentCachedUnit.nextCached;
699
640
  budget.parsing.admit(currentCachedUnit.unitsCharged);
700
641
  unit = currentCachedUnit.unit;
@@ -702,7 +643,7 @@ export class Shell {
702
643
  else {
703
644
  parseState ??= { lineIndex: undefined, lineIndexUnits: 0, currentCachedUnit };
704
645
  parseState.currentCachedUnit = currentCachedUnit;
705
- unit = getOrParseUnitFromCache(source, unit.next, nextLocale, sourceCache, parseState, budget, undefined);
646
+ unit = getOrParseUnitFromCache(source, unit.next, nextLocale, sourceCache, parseState, budget, undefined, currentState.expand_aliases ? currentState.aliases : undefined);
706
647
  currentCachedUnit = parseState.currentCachedUnit;
707
648
  }
708
649
  if (unit.script.warnings) {
@@ -728,7 +669,7 @@ export class Shell {
728
669
  }
729
670
  catch (error) {
730
671
  if (error instanceof ShellSyntaxError) {
731
- await writeDiagnostic(io.stderr, `shell: ${error.message}\n`);
672
+ await writeDiagnostic(io.stderr, syntaxDiagnostic(source, error));
732
673
  exitCode = error.exitCode;
733
674
  }
734
675
  else {
@@ -892,18 +833,6 @@ export class Shell {
892
833
  throw selection.outcome.reason;
893
834
  if (scope.hasFailures)
894
835
  throwCleanupFailures(scope.failures);
895
- if (!warmSyncExecJitWarmed && source === "" && this.#warmedInvocation) {
896
- warmSyncExecJitWarmed = true;
897
- await this.#prewarmIsolatedSandbox();
898
- for (let w = 0; w < 24; w++) {
899
- globalThis.process?.memoryUsage?.();
900
- performance.now();
901
- }
902
- for (let w = 0; w < 16; w++) {
903
- await this.exec(":", EMPTY_EXEC_OPTIONS);
904
- await this.#execAsync("", EMPTY_EXEC_OPTIONS);
905
- }
906
- }
907
836
  return selection.outcome.value;
908
837
  }
909
838
  async #execute(source, options, scope, budget, cancellation, cancellationState, owner, admission, warm) {
@@ -964,21 +893,12 @@ export class Shell {
964
893
  ? this.#initialLocale
965
894
  : (!this.#hasInitialEnv ? byteLocale(options.env) : byteLocale({ ...this.#options.env, ...options.env }));
966
895
  const canCacheParse = extensions === EMPTY_CAPTURED_EXTENSIONS && source.length <= 16384;
967
- const sourceCache = canCacheParse ? getSourceParseCache(source) : undefined;
896
+ const sourceCache = canCacheParse ? this.#getSourceParseCache(source) : undefined;
968
897
  let parseState;
969
898
  let currentCachedUnit = sourceCache !== undefined
970
899
  ? (locale ? sourceCache.first1 : sourceCache.first0)
971
900
  : undefined;
972
901
  let unit;
973
- if (currentCachedUnit) {
974
- budget.parsing.admit(currentCachedUnit.unitsCharged);
975
- unit = currentCachedUnit.unit;
976
- }
977
- else {
978
- parseState = { lineIndex: undefined, lineIndexUnits: 0, currentCachedUnit: undefined };
979
- unit = getOrParseUnitFromCache(source, 0, locale, sourceCache, parseState, budget, extensions.syntax);
980
- currentCachedUnit = parseState.currentCachedUnit;
981
- }
982
902
  let currentState;
983
903
  if (warm) {
984
904
  currentState = warm.currentState;
@@ -1033,6 +953,7 @@ export class Shell {
1033
953
  variables.OPTERR = "1";
1034
954
  variables.IFS ??= " \t\n";
1035
955
  currentState = new RootShellState(cwd, variables, exported, extensionState(extensions.definitions, undefined, undefined, defaultPortableTrapExtension));
956
+ currentState.processSubstitutionIds = this.#processSubstitutionIds;
1036
957
  state = currentState;
1037
958
  const beforeExecHook = options.hooks?.beforeExec ?? this.#options.hooks?.beforeExec;
1038
959
  const restoredSnapshot = options.state ?? (beforeExecHook ? await beforeExecHook({ source, options }) : undefined);
@@ -1060,6 +981,16 @@ export class Shell {
1060
981
  // Finalizers run after child scopes and cooperative cleanup, including cancellation.
1061
982
  scope.registerFinalizer(runtime.releaseAnchorResources.bind(runtime));
1062
983
  }
984
+ const aliases = currentState.expand_aliases ? currentState.aliases : undefined;
985
+ if (currentCachedUnit && !aliases?.size) {
986
+ budget.parsing.admit(currentCachedUnit.unitsCharged);
987
+ unit = currentCachedUnit.unit;
988
+ }
989
+ else {
990
+ parseState = { lineIndex: undefined, lineIndexUnits: 0, currentCachedUnit: undefined };
991
+ unit = getOrParseUnitFromCache(source, 0, byteLocale(currentState.variables), sourceCache, parseState, budget, extensions.syntax, aliases);
992
+ currentCachedUnit = parseState.currentCachedUnit;
993
+ }
1063
994
  exitCode = 0;
1064
995
  while (true) {
1065
996
  if (unit.script.warnings) {
@@ -1081,7 +1012,7 @@ export class Shell {
1081
1012
  budget.signal.throwIfAborted();
1082
1013
  const vars = currentState.variables;
1083
1014
  const nextLocale = (vars.LC_ALL || vars.LC_CTYPE || vars.LANG) ? byteLocale(vars) : false;
1084
- if (currentCachedUnit && currentCachedUnit.locale === nextLocale && currentCachedUnit.nextCached !== undefined) {
1015
+ if (!currentState.expand_aliases && currentCachedUnit && currentCachedUnit.locale === nextLocale && currentCachedUnit.nextCached !== undefined) {
1085
1016
  currentCachedUnit = currentCachedUnit.nextCached;
1086
1017
  budget.parsing.admit(currentCachedUnit.unitsCharged);
1087
1018
  unit = currentCachedUnit.unit;
@@ -1089,7 +1020,7 @@ export class Shell {
1089
1020
  else {
1090
1021
  parseState ??= { lineIndex: undefined, lineIndexUnits: 0, currentCachedUnit };
1091
1022
  parseState.currentCachedUnit = currentCachedUnit;
1092
- unit = getOrParseUnitFromCache(source, unit.next, nextLocale, sourceCache, parseState, budget, extensions.syntax);
1023
+ unit = getOrParseUnitFromCache(source, unit.next, nextLocale, sourceCache, parseState, budget, extensions.syntax, currentState.expand_aliases ? currentState.aliases : undefined);
1093
1024
  currentCachedUnit = parseState.currentCachedUnit;
1094
1025
  }
1095
1026
  }
@@ -1097,20 +1028,7 @@ export class Shell {
1097
1028
  catch (error) {
1098
1029
  if (!(error instanceof ShellSyntaxError))
1099
1030
  throw error;
1100
- const line = source.slice(0, error.offset).split("\n").length;
1101
- if (error.unclosedQuote) {
1102
- await writeDiagnostic(io.stderr, `shell: -c: line ${error.unclosedQuote.line}: unexpected EOF while looking for matching \`${error.unclosedQuote.quote}'\n`);
1103
- }
1104
- else if (error.exitCode === 127) {
1105
- const token = /^[;&|()<>]|^[^\s;&|()<>]+/u.exec(source.slice(error.offset))?.[0] ?? "newline";
1106
- await writeDiagnostic(io.stderr, `shell: -c: line ${line}: syntax error near unexpected token \`${token}'\nshell: -c: line ${line}: \`${source.split("\n")[line - 1] ?? ""}'\n`);
1107
- }
1108
- else if (error.offset >= source.length && !/Unterminated|nesting|Unsupported/u.test(error.reason)) {
1109
- const context = error.incompleteCommand ? ` from \`${error.incompleteCommand.name}' command on line ${error.incompleteCommand.line}` : "";
1110
- await writeDiagnostic(io.stderr, `shell: -c: line ${source.split("\n").length + Number(!source.endsWith("\n"))}: syntax error: unexpected end of file${context}\n`);
1111
- }
1112
- else
1113
- await writeDiagnostic(io.stderr, `shell: ${error.message}\n`);
1031
+ await writeDiagnostic(io.stderr, syntaxDiagnostic(source, error));
1114
1032
  exitCode = error.exitCode;
1115
1033
  }
1116
1034
  if (runtime && state && !runtime.tryFinishShellSync(state)) {
@@ -1125,8 +1043,12 @@ export class Shell {
1125
1043
  }
1126
1044
  finally {
1127
1045
  if (source === "" &&
1128
- !warm &&
1129
1046
  !failed &&
1047
+ // A retained invocation keeps its parse admissions and clock origins.
1048
+ // Bounded executions must create their own budget and deadline instead.
1049
+ budget.limits.maxParseUnits === Infinity &&
1050
+ budget.limits.maxCpuMs === Infinity &&
1051
+ budget.limits.maxWallClockMs === Infinity &&
1130
1052
  !this.#warmedInvocation &&
1131
1053
  !budget.hasExecutionCleanup &&
1132
1054
  !scope.hasFailures &&
@@ -1231,6 +1153,7 @@ export class Shell {
1231
1153
  if (this.#disposal)
1232
1154
  return this.#disposal;
1233
1155
  this.#disposed = true;
1156
+ this.#parsedSourceCache.clear();
1234
1157
  Runtime.clearStaticPools();
1235
1158
  clearAwkReaderPool();
1236
1159
  clearRgFastRunnerPool();
@@ -1269,5 +1192,4 @@ export class Shell {
1269
1192
  throwCleanupFailures(cleanupFailures);
1270
1193
  }
1271
1194
  }
1272
- _a = Shell;
1273
1195
  //# sourceMappingURL=shell.js.map
@@ -1,5 +1,5 @@
1
1
  import type { Budget } from "./runtime.js";
2
2
  import type { WordPart } from "./parser.js";
3
3
  /** Expand lexical prefixes before parameter expansion, preserving their quoting. */
4
- export declare function expandTildes(parts: readonly WordPart[], variables: Readonly<Record<string, string>>, budget: Budget, assignmentStart?: number): WordPart[];
4
+ export declare function expandTildes(parts: readonly WordPart[], variables: Readonly<Record<string, string>>, budget: Budget, assignmentStart?: number, colonEndsInitialTilde?: boolean): WordPart[];
5
5
  //# sourceMappingURL=tilde-expansion.d.ts.map
@@ -1,5 +1,5 @@
1
1
  /** Expand lexical prefixes before parameter expansion, preserving their quoting. */
2
- export function expandTildes(parts, variables, budget, assignmentStart) {
2
+ export function expandTildes(parts, variables, budget, assignmentStart, colonEndsInitialTilde = false) {
3
3
  const result = [];
4
4
  for (let index = 0; index < parts.length; index++) {
5
5
  const part = parts[index];
@@ -17,7 +17,7 @@ export function expandTildes(parts, variables, budget, assignmentStart) {
17
17
  if (!initial && !(assignmentStart !== undefined && offset > 0 && part.value[offset - 1] === ":"))
18
18
  continue;
19
19
  let end = offset + 1;
20
- while (end < part.value.length && part.value[end] !== "/" && !(assignmentStart !== undefined && part.value[end] === ":")) {
20
+ while (end < part.value.length && part.value[end] !== "/" && !((assignmentStart !== undefined || (colonEndsInitialTilde && initial)) && part.value[end] === ":")) {
21
21
  if (end % 1024 === 0)
22
22
  budget.cpuCheckpoint();
23
23
  end++;
@@ -96,6 +96,10 @@ export interface ShellSessionOptionsSnapshot {
96
96
  readonly dotglob?: boolean | undefined;
97
97
  readonly globstar?: boolean | undefined;
98
98
  readonly nullglob?: boolean | undefined;
99
+ readonly failglob?: boolean | undefined;
100
+ readonly lastpipe?: boolean | undefined;
101
+ readonly inherit_errexit?: boolean | undefined;
102
+ readonly expand_aliases?: boolean | undefined;
99
103
  readonly nocaseglob?: boolean | undefined;
100
104
  readonly nocasematch?: boolean | undefined;
101
105
  readonly extglob?: boolean | undefined;
@@ -109,6 +113,7 @@ export interface ShellSessionOptionsSnapshot {
109
113
  readonly nounset?: boolean | undefined;
110
114
  }
111
115
  export interface ShellSessionState {
116
+ readonly aliases?: Readonly<Record<string, string>> | undefined;
112
117
  readonly cwd: string;
113
118
  readonly umask?: number | undefined;
114
119
  readonly variables?: Readonly<Record<string, string>> | undefined;
@@ -357,7 +357,7 @@ export class ValueStore {
357
357
  }
358
358
  get(name, text) { return this._values?.get(name)?.value ?? this._strings?.get(name) ?? text; }
359
359
  publishString(name, value, rawVariables) {
360
- if (this.arena.hasInfiniteBytes) {
360
+ if (this.arena.hasInfiniteBytes && this.arena.maximumSlots === Infinity) {
361
361
  this.arena.assertOpen();
362
362
  rawVariables[name] = value;
363
363
  this.invalidate(name);
@@ -1,50 +1,49 @@
1
1
  import {
2
2
  cloudflareWorkerLimits
3
- } from "./chunks/chunk-2LSAMQER.js";
3
+ } from "./chunks/chunk-CTXNARJH.js";
4
4
  import {
5
5
  Shell,
6
6
  ShellLimitError,
7
7
  ShellSyntaxError,
8
8
  parseShell
9
- } from "./chunks/chunk-B7PIL77G.js";
10
- import "./chunks/chunk-A7XEHALN.js";
11
- import "./chunks/chunk-TFIBK2GI.js";
12
- import "./chunks/chunk-3NDIFSNM.js";
13
- import "./chunks/chunk-6O77NL2S.js";
14
- import "./chunks/chunk-PNBBUWSM.js";
15
- import "./chunks/chunk-MHMMRCYC.js";
16
- import "./chunks/chunk-OV6IHKO6.js";
17
- import "./chunks/chunk-CHYGPFVM.js";
18
- import "./chunks/chunk-AUSNDQTJ.js";
19
- import "./chunks/chunk-CTVWDACF.js";
20
- import "./chunks/chunk-3R3AANOR.js";
21
- import "./chunks/chunk-XVOSKJE2.js";
22
- import "./chunks/chunk-C5OWC2TL.js";
23
- import "./chunks/chunk-PH63PLPZ.js";
24
- import "./chunks/chunk-D3ANYGMC.js";
25
- import "./chunks/chunk-J42RIHHJ.js";
26
- import "./chunks/chunk-I5HZ4FGE.js";
27
- import "./chunks/chunk-VTH3MLDU.js";
28
- import "./chunks/chunk-5OHX7C2V.js";
29
- import "./chunks/chunk-74GHTNJA.js";
9
+ } from "./chunks/chunk-W2IYOVHK.js";
10
+ import "./chunks/chunk-YOXUCJER.js";
11
+ import "./chunks/chunk-D5Q7NFWI.js";
12
+ import "./chunks/chunk-AW5KIT6V.js";
13
+ import "./chunks/chunk-IQW34XQT.js";
14
+ import "./chunks/chunk-TCKYOLUE.js";
15
+ import "./chunks/chunk-FOB2FZR4.js";
16
+ import "./chunks/chunk-TC3F4UFF.js";
17
+ import "./chunks/chunk-22SX3F2R.js";
18
+ import "./chunks/chunk-JPSUHHOA.js";
19
+ import "./chunks/chunk-47D7WBJK.js";
20
+ import "./chunks/chunk-UV4X32QU.js";
21
+ import "./chunks/chunk-6SMICPI3.js";
22
+ import "./chunks/chunk-Y7FW6GLT.js";
23
+ import "./chunks/chunk-OQ3AGYCZ.js";
24
+ import "./chunks/chunk-CL2FCTTO.js";
25
+ import "./chunks/chunk-62BOHHJT.js";
26
+ import "./chunks/chunk-DUTAG6ZD.js";
27
+ import "./chunks/chunk-4KTMKD5W.js";
28
+ import "./chunks/chunk-SUJ3NTMH.js";
29
+ import "./chunks/chunk-XQWCQSRN.js";
30
+ import "./chunks/chunk-RHFRJIWQ.js";
31
+ import "./chunks/chunk-KBZ4UB2O.js";
32
+ import "./chunks/chunk-4T53AERN.js";
33
+ import "./chunks/chunk-7O76UFQD.js";
34
+ import "./chunks/chunk-5XIFJVOO.js";
30
35
  import {
31
36
  CommandRegistry,
32
37
  commandRuntimeIdentity,
33
38
  createCommandArguments,
34
39
  getCommandArguments
35
- } from "./chunks/chunk-7R5BDCG7.js";
36
- import "./chunks/chunk-55YJASTN.js";
37
- import "./chunks/chunk-4BSJLKNM.js";
38
- import "./chunks/chunk-DQP3VHSB.js";
39
- import "./chunks/chunk-GEG3BWGE.js";
40
- import "./chunks/chunk-VBTDHOWC.js";
41
- import "./chunks/chunk-QGUV42T5.js";
42
- import "./chunks/chunk-ZVD5IS4V.js";
43
- import "./chunks/chunk-E7OYNDGL.js";
44
- import "./chunks/chunk-IWDICZVK.js";
40
+ } from "./chunks/chunk-OHML2BEU.js";
41
+ import "./chunks/chunk-IOHH2GTI.js";
42
+ import "./chunks/chunk-YL3GBUG4.js";
43
+ import "./chunks/chunk-V7QT2RWC.js";
45
44
  import {
46
45
  init_platform
47
- } from "./chunks/chunk-B7TAL7S5.js";
46
+ } from "./chunks/chunk-PTAEWLSE.js";
48
47
 
49
48
  // packages/safe-bash/src/shell-entry.ts
50
49
  init_platform();
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  portableTrapExtension
3
- } from "./chunks/chunk-3NDIFSNM.js";
4
- import "./chunks/chunk-J42RIHHJ.js";
5
- import "./chunks/chunk-7R5BDCG7.js";
3
+ } from "./chunks/chunk-SUJ3NTMH.js";
4
+ import "./chunks/chunk-XQWCQSRN.js";
5
+ import "./chunks/chunk-OHML2BEU.js";
6
6
  import {
7
7
  init_platform
8
- } from "./chunks/chunk-B7TAL7S5.js";
8
+ } from "./chunks/chunk-PTAEWLSE.js";
9
9
 
10
10
  // packages/safe-bash/src/trap.browser.ts
11
11
  init_platform();
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  init_platform
3
- } from "../chunks/chunk-B7TAL7S5.js";
3
+ } from "../chunks/chunk-PTAEWLSE.js";
4
4
 
5
5
  // packages/safe-bash/src/yq.browser.ts
6
6
  init_platform();
@@ -24,6 +24,6 @@ export declare class TimeZone {
24
24
  constructor(input: string, numericOffset?: boolean);
25
25
  fields(instant: bigint): ZonedFields;
26
26
  private observedFields;
27
- instant(fields: CalendarFields, fraction?: bigint): bigint;
27
+ instant(fields: CalendarFields, fraction?: bigint, disambiguation?: "reject" | "compatible"): bigint;
28
28
  }
29
29
  export declare function parseDate(text: string, zone: TimeZone, now: () => bigint): bigint;
@@ -8,7 +8,7 @@ import {
8
8
  parseDate,
9
9
  utcMilliseconds,
10
10
  weekdayNames
11
- } from "../../safe-bash/command-chunks/chunk-PXEIT2O4.js";
11
+ } from "../../safe-bash/command-chunks/chunk-6UR7V3ET.js";
12
12
  import "../../safe-bash/command-chunks/chunk-YFLHEANE.js";
13
13
  import "../../safe-bash/command-chunks/chunk-HX3SHTCE.js";
14
14
  export {
@@ -4,7 +4,7 @@ import {
4
4
  nanosecondsPerSecond,
5
5
  utcMilliseconds,
6
6
  weekdayNames
7
- } from "../../safe-bash/command-chunks/chunk-PXEIT2O4.js";
7
+ } from "../../safe-bash/command-chunks/chunk-6UR7V3ET.js";
8
8
  import {
9
9
  CommandFailure,
10
10
  checkSize
@@ -0,0 +1,13 @@
1
+ import { type CommandDefinition, type VirtualShellPlugin } from "../safe-bash-contracts/index.js";
2
+ export interface AliasLimits {
3
+ readonly maxArgumentBytes: number;
4
+ readonly maxAliasBytes: number;
5
+ }
6
+ export interface AliasCommandsOptions {
7
+ readonly aliases?: Map<string, string>;
8
+ readonly limits?: Partial<AliasLimits>;
9
+ readonly replace?: boolean;
10
+ }
11
+ export declare function createAliasCommand(options?: AliasCommandsOptions): CommandDefinition;
12
+ export declare function createAliasCommands(options?: AliasCommandsOptions): CommandDefinition[];
13
+ export declare function aliasCommands(options?: AliasCommandsOptions): VirtualShellPlugin;