@poe-platform/safe-bash 0.1.802 → 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 (748) hide show
  1. package/README.md +60 -33
  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 -8355
  7. package/dist/image-ast/index.js +692 -8355
  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-NZQXYWA3.js → chunk-62BOHHJT.js} +1 -2
  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-44ALJ4QG.js → chunk-AW5KIT6V.js} +3549 -84
  23. package/dist/safe-bash/chunks/{chunk-RSTHLAF3.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-KDNSPLII.js → chunk-CTXNARJH.js} +2 -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-IOHH2GTI.js +56 -0
  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-NQCM3TYR.js → chunk-LPOVNKNB.js} +225 -176
  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-WDLGKIHD.js → chunk-S4RFUUXO.js} +841 -26
  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-SHEMU2Z7.js → chunk-W2IYOVHK.js} +839 -1211
  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-BJA5XNP6.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-4R5ADJM5.js +178 -0
  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-WPYIOKE3.js → chunk-6GKYHPJG.js} +2 -2
  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-A7MU7762.js +200 -0
  108. package/dist/safe-bash/command-chunks/{chunk-ORYGZYKW.js → chunk-ARZMP2L2.js} +3 -3
  109. package/dist/safe-bash/command-chunks/{chunk-OQKC5ZU2.js → chunk-BAKFZ477.js} +62 -20
  110. package/dist/safe-bash/command-chunks/{chunk-QRRYN2KO.js → chunk-BC7BK6R6.js} +0 -2424
  111. package/dist/safe-bash/command-chunks/{chunk-F4TEEZTL.js → chunk-BOEOJS2Q.js} +1 -1
  112. package/dist/safe-bash/command-chunks/{chunk-XS72HTMA.js → chunk-BWGGLYEB.js} +5 -22
  113. package/dist/safe-bash/command-chunks/{chunk-PMBFZXTK.js → chunk-C5ZZKP7V.js} +1 -1
  114. package/dist/safe-bash/command-chunks/{chunk-LHIOAFWW.js → chunk-C7SEB6WU.js} +1 -1
  115. package/dist/safe-bash/command-chunks/{chunk-XPT2UGBF.js → chunk-CHJKFRT7.js} +1 -1
  116. package/dist/safe-bash/command-chunks/{chunk-TIOCQVUQ.js → chunk-CON26Q2O.js} +1 -1
  117. package/dist/safe-bash/command-chunks/{chunk-E55UKBIE.js → chunk-DBAT3IK2.js} +1 -1
  118. package/dist/safe-bash/command-chunks/{chunk-Z45N42QC.js → chunk-DPAYAVMS.js} +15 -1
  119. package/dist/safe-bash/command-chunks/chunk-DS3NXVUM.js +368 -0
  120. package/dist/safe-bash/command-chunks/{chunk-5ZMZ573Q.js → chunk-DSJ3VRL3.js} +16 -4
  121. package/dist/safe-bash/command-chunks/{chunk-K2GDEMEU.js → chunk-EFRCFWVR.js} +4 -4
  122. package/dist/safe-bash/command-chunks/{chunk-DZCY63VJ.js → chunk-EV6HIJ5H.js} +6 -5
  123. package/dist/safe-bash/command-chunks/{chunk-JDYXY44P.js → chunk-FJURV46Y.js} +3 -3
  124. package/dist/safe-bash/command-chunks/{chunk-TZZ4WUKH.js → chunk-FZAWGKSE.js} +6 -4
  125. package/dist/safe-bash/command-chunks/{chunk-YHFXOX6U.js → chunk-GOCFQ6XV.js} +4 -4
  126. package/dist/safe-bash/command-chunks/{chunk-YOFC45RK.js → chunk-HH5O7DJI.js} +1 -1
  127. package/dist/safe-bash/command-chunks/{chunk-3HHCU5YU.js → chunk-HK7F5SDC.js} +13 -0
  128. package/dist/safe-bash/command-chunks/{chunk-JNZ3CVAE.js → chunk-HQBXIZC7.js} +8 -3
  129. package/dist/safe-bash/command-chunks/{chunk-2JRBIDAD.js → chunk-I63DBZXZ.js} +2 -2
  130. package/dist/safe-bash/command-chunks/{chunk-WNE7FPVR.js → chunk-I64TLTIW.js} +24 -16
  131. package/dist/safe-bash/command-chunks/{chunk-QKFSRZGQ.js → chunk-ICANWOXH.js} +7 -31
  132. package/dist/safe-bash/command-chunks/{chunk-SQRQW3CT.js → chunk-IJ6LGLXM.js} +1 -1
  133. package/dist/safe-bash/command-chunks/{chunk-5E4WAO4O.js → chunk-JD5QNRNO.js} +3 -3
  134. package/dist/safe-bash/command-chunks/{chunk-KJIMDLBB.js → chunk-JNANXVJV.js} +1 -1
  135. package/dist/safe-bash/command-chunks/{chunk-TGSNCQSR.js → chunk-JT4RYCA6.js} +1771 -1663
  136. package/dist/safe-bash/command-chunks/{chunk-II77KPZN.js → chunk-JWW6FYBN.js} +2 -2
  137. package/dist/safe-bash/command-chunks/{chunk-ZYXH3B66.js → chunk-LCJWKTCJ.js} +250 -203
  138. package/dist/safe-bash/command-chunks/{chunk-I237SNW5.js → chunk-LFJJQQND.js} +1 -1
  139. package/dist/safe-bash/command-chunks/chunk-LU4HBPP2.js +97 -0
  140. package/dist/safe-bash/command-chunks/{chunk-XJXU3VVH.js → chunk-LWOE65OE.js} +20 -5
  141. package/dist/safe-bash/command-chunks/{chunk-GMIHJYDG.js → chunk-M32HFSX7.js} +22 -6
  142. package/dist/safe-bash/command-chunks/{chunk-YG4EPFWC.js → chunk-M3NINRDU.js} +2880 -172
  143. package/dist/safe-bash/command-chunks/chunk-MQREDAL6.js +164 -0
  144. package/dist/safe-bash/command-chunks/{chunk-LWS62ISU.js → chunk-N6DIASO2.js} +1 -1
  145. package/dist/safe-bash/command-chunks/chunk-NGL7YK7O.js +188 -0
  146. package/dist/safe-bash/command-chunks/{chunk-PEF7K3UQ.js → chunk-NJYHWKIL.js} +40 -10
  147. package/dist/safe-bash/command-chunks/{chunk-VXSLJH7G.js → chunk-OJQRSCBP.js} +27 -7
  148. package/dist/safe-bash/command-chunks/{chunk-OQU6UT6X.js → chunk-OV3XREFN.js} +11 -0
  149. package/dist/safe-bash/command-chunks/{chunk-MIXBO6U7.js → chunk-PTZLF456.js} +2 -2
  150. package/dist/safe-bash/command-chunks/{chunk-ALDC4XP4.js → chunk-QILLRNES.js} +34 -10
  151. package/dist/safe-bash/command-chunks/{chunk-L22T3H7L.js → chunk-QR25JLKO.js} +1 -1
  152. package/dist/safe-bash/command-chunks/{chunk-7U7EXOXX.js → chunk-R7C4MGZ5.js} +17 -223
  153. package/dist/safe-bash/command-chunks/{chunk-LCF3OB7P.js → chunk-RBME3JEH.js} +1 -1
  154. package/dist/safe-bash/command-chunks/{chunk-2KG2QLJE.js → chunk-RFWGYT7G.js} +3 -0
  155. package/dist/safe-bash/command-chunks/{chunk-5TBUOBDE.js → chunk-RZMVRT26.js} +27 -13
  156. package/dist/safe-bash/command-chunks/chunk-TFR6B3WB.js +44 -0
  157. package/dist/safe-bash/command-chunks/chunk-TOH3OF3O.js +179 -0
  158. package/dist/safe-bash/command-chunks/{chunk-VGG2DL5Q.js → chunk-TRR4MYWF.js} +4 -0
  159. package/dist/safe-bash/command-chunks/chunk-TT4DAFBT.js +13621 -0
  160. package/dist/safe-bash/command-chunks/{chunk-LWSBAWLT.js → chunk-TXI64OAG.js} +1 -1
  161. package/dist/safe-bash/command-chunks/chunk-TZRI7BJZ.js +496 -0
  162. package/dist/safe-bash/command-chunks/{chunk-QOKBZFFD.js → chunk-U3MMODA5.js} +2 -7
  163. package/dist/safe-bash/command-chunks/{chunk-ZYHTWNAE.js → chunk-UAW423ZL.js} +11 -11
  164. package/dist/safe-bash/command-chunks/{chunk-C5YYCQHW.js → chunk-UXEEUGOV.js} +222 -12
  165. package/dist/safe-bash/command-chunks/{chunk-GY3BWK7K.js → chunk-VOZPMJRX.js} +87 -80
  166. package/dist/safe-bash/command-chunks/{chunk-MQFIPHIQ.js → chunk-WPANOB4A.js} +38 -35
  167. package/dist/safe-bash/command-chunks/{chunk-Y2WBSJG6.js → chunk-X4QZQI5Q.js} +65 -64
  168. package/dist/safe-bash/command-chunks/{chunk-FPVUD6TH.js → chunk-XGI57GCN.js} +10 -8
  169. package/dist/safe-bash/command-chunks/{chunk-5UBXNSFZ.js → chunk-XUCU7QQT.js} +1281 -1278
  170. package/dist/safe-bash/command-chunks/chunk-Y22VXJBD.js +296 -0
  171. package/dist/safe-bash/command-chunks/{chunk-WVHONVZ4.js → chunk-YMFUUPDX.js} +5 -3
  172. package/dist/safe-bash/command-chunks/{chunk-IR2BY7EL.js → chunk-YYGIBXFZ.js} +2 -2
  173. package/dist/safe-bash/command-chunks/{chunk-MSFXC3OC.js → chunk-Z4FO6OHE.js} +2 -2
  174. package/dist/safe-bash/command-chunks/{chunk-6GWJUQAV.js → chunk-Z5ZZVDUD.js} +181 -133
  175. package/dist/safe-bash/command-chunks/{chunk-W5DNF4JH.js → chunk-ZHN3QDCI.js} +1 -1
  176. package/dist/safe-bash/commands/alias/index.d.ts +2 -0
  177. package/dist/safe-bash/commands/alias/index.js +2 -0
  178. package/dist/safe-bash/commands/apply-patch/index.browser.js +2 -3
  179. package/dist/safe-bash/commands/apply-patch/index.d.ts +0 -1
  180. package/dist/safe-bash/commands/apply-patch/index.js +0 -1
  181. package/dist/safe-bash/commands/archive/index.browser.js +2 -3
  182. package/dist/safe-bash/commands/archive/index.d.ts +0 -1
  183. package/dist/safe-bash/commands/archive/index.js +0 -1
  184. package/dist/safe-bash/commands/bytes/compression/index.js +54 -51
  185. package/dist/safe-bash/commands/bytes/index.js +2 -1
  186. package/dist/safe-bash/commands/chmod/index.browser.js +14 -0
  187. package/dist/safe-bash/commands/chmod/index.d.ts +2 -0
  188. package/dist/safe-bash/commands/chmod/index.js +2 -0
  189. package/dist/safe-bash/commands/column/index.browser.js +2 -3
  190. package/dist/safe-bash/commands/column/index.d.ts +0 -1
  191. package/dist/safe-bash/commands/column/index.js +0 -1
  192. package/dist/safe-bash/commands/copy-source.js +1 -0
  193. package/dist/safe-bash/commands/csplit/index.browser.js +2 -2
  194. package/dist/safe-bash/commands/csvkit/index.browser.js +72 -0
  195. package/dist/safe-bash/commands/csvkit/index.d.ts +0 -5
  196. package/dist/safe-bash/commands/csvkit/index.js +0 -50
  197. package/dist/safe-bash/commands/docx/index.browser.js +5 -7
  198. package/dist/safe-bash/commands/du/index.browser.js +2 -3
  199. package/dist/safe-bash/commands/du/index.d.ts +0 -1
  200. package/dist/safe-bash/commands/du/index.js +0 -1
  201. package/dist/safe-bash/commands/expr/index.browser.js +2 -3
  202. package/dist/safe-bash/commands/expr/index.d.ts +0 -1
  203. package/dist/safe-bash/commands/expr/index.js +0 -1
  204. package/dist/safe-bash/commands/factor/index.browser.js +2 -2
  205. package/dist/safe-bash/commands/file/index.browser.js +2 -3
  206. package/dist/safe-bash/commands/file/index.d.ts +0 -1
  207. package/dist/safe-bash/commands/file/index.js +0 -1
  208. package/dist/safe-bash/commands/filesystem.js +1 -1
  209. package/dist/safe-bash/commands/getopt/index.browser.js +2 -2
  210. package/dist/safe-bash/commands/grep-aliases/index.browser.js +3 -3
  211. package/dist/safe-bash/commands/hexdump/index.browser.js +2 -2
  212. package/dist/safe-bash/commands/html-to-markdown/index.browser.js +2 -3
  213. package/dist/safe-bash/commands/html-to-markdown/index.d.ts +0 -1
  214. package/dist/safe-bash/commands/html-to-markdown/index.js +0 -1
  215. package/dist/safe-bash/commands/htmlq/index.d.ts +1 -5
  216. package/dist/safe-bash/commands/htmlq/index.js +1 -143
  217. package/dist/safe-bash/commands/iconv/index.browser.js +2 -2
  218. package/dist/safe-bash/commands/line-endings/index.browser.js +2 -2
  219. package/dist/safe-bash/commands/llm/index.browser.js +2 -2
  220. package/dist/safe-bash/commands/llm/providers/index.browser.js +1 -1
  221. package/dist/safe-bash/commands/mdq/index.browser.js +3 -3
  222. package/dist/safe-bash/commands/media/index.browser.js +4 -16314
  223. package/dist/safe-bash/commands/media/index.d.ts +1 -5
  224. package/dist/safe-bash/commands/media/index.js +1 -3
  225. package/dist/safe-bash/commands/media/plugin.d.ts +1 -18
  226. package/dist/safe-bash/commands/media/plugin.js +1 -90
  227. package/dist/safe-bash/commands/media/remote.d.ts +1 -63
  228. package/dist/safe-bash/commands/media/remote.js +1 -405
  229. package/dist/safe-bash/commands/media/settings.d.ts +1 -4
  230. package/dist/safe-bash/commands/media/settings.js +1 -26
  231. package/dist/safe-bash/commands/metadata/chmod.d.ts +1 -7
  232. package/dist/safe-bash/commands/metadata/chmod.js +1 -204
  233. package/dist/safe-bash/commands/metadata/index.browser.js +3 -8
  234. package/dist/safe-bash/commands/metadata/index.d.ts +0 -1
  235. package/dist/safe-bash/commands/metadata/index.js +2 -2
  236. package/dist/safe-bash/commands/metadata/internal.d.ts +1 -30
  237. package/dist/safe-bash/commands/metadata/internal.js +1 -76
  238. package/dist/safe-bash/commands/metadata/mktemp.d.ts +1 -3
  239. package/dist/safe-bash/commands/metadata/mktemp.js +1 -202
  240. package/dist/safe-bash/commands/metadata/stat.d.ts +1 -7
  241. package/dist/safe-bash/commands/metadata/stat.js +1 -530
  242. package/dist/safe-bash/commands/mktemp/index.browser.js +13 -0
  243. package/dist/safe-bash/commands/mktemp/index.d.ts +2 -0
  244. package/dist/safe-bash/commands/mktemp/index.js +2 -0
  245. package/dist/safe-bash/commands/network/curl.js +1 -3
  246. package/dist/safe-bash/commands/network/index.browser.js +3 -4
  247. package/dist/safe-bash/commands/network/public.d.ts +0 -1
  248. package/dist/safe-bash/commands/network/public.js +0 -1
  249. package/dist/safe-bash/commands/network/transport.js +2 -1
  250. package/dist/safe-bash/commands/network/wget.js +1 -3
  251. package/dist/safe-bash/commands/node/browser.d.ts +0 -1
  252. package/dist/safe-bash/commands/node/browser.js +0 -1
  253. package/dist/safe-bash/commands/node/default-runtime.d.ts +3 -0
  254. package/dist/safe-bash/commands/node/default-runtime.js +15 -0
  255. package/dist/safe-bash/commands/node/index.browser.js +7 -8
  256. package/dist/safe-bash/commands/node/index.js +3 -3
  257. package/dist/safe-bash/commands/node/path.js +1 -1
  258. package/dist/safe-bash/commands/node/preload.d.ts +1 -1
  259. package/dist/safe-bash/commands/node/preload.js +4 -1
  260. package/dist/safe-bash/commands/node/quickjs.d.ts +2 -0
  261. package/dist/safe-bash/commands/node/quickjs.js +2 -0
  262. package/dist/safe-bash/commands/node/safejs.js +26 -12
  263. package/dist/safe-bash/commands/op/index.browser.js +2 -3
  264. package/dist/safe-bash/commands/op/index.d.ts +0 -11
  265. package/dist/safe-bash/commands/op/index.js +0 -84
  266. package/dist/safe-bash/commands/pandoc/index.browser.js +44 -0
  267. package/dist/safe-bash/commands/pandoc/index.d.ts +0 -1
  268. package/dist/safe-bash/commands/pandoc/index.js +0 -1
  269. package/dist/safe-bash/commands/portable-random.d.ts +1 -1
  270. package/dist/safe-bash/commands/portable-random.js +1 -12
  271. package/dist/safe-bash/commands/pr/index.browser.js +2 -2
  272. package/dist/safe-bash/commands/python/docker-runner.js +4 -3
  273. package/dist/safe-bash/commands/python/docker.d.ts +1 -0
  274. package/dist/safe-bash/commands/python/docker.js +5 -2
  275. package/dist/safe-bash/commands/python/index.browser.js +17 -13
  276. package/dist/safe-bash/commands/python/index.d.ts +2 -1
  277. package/dist/safe-bash/commands/python/index.js +10 -8
  278. package/dist/safe-bash/commands/python/llm-capability.js +65 -2
  279. package/dist/safe-bash/commands/python/llm-dependencies.d.ts +27 -0
  280. package/dist/safe-bash/commands/python/llm-dependencies.js +66 -0
  281. package/dist/safe-bash/commands/python/llm-module.js +6 -4
  282. package/dist/safe-bash/commands/python/llm-reference-module.d.ts +3 -0
  283. package/dist/safe-bash/commands/python/llm-reference-module.js +690 -0
  284. package/dist/safe-bash/commands/python/worker.browser.js +2 -3
  285. package/dist/safe-bash/commands/python/worker.d.ts +0 -1
  286. package/dist/safe-bash/commands/python/worker.js +0 -1
  287. package/dist/safe-bash/commands/regex-execution/ere/transport/wire-engine.d.ts +1 -1
  288. package/dist/safe-bash/commands/regex-execution/ere/transport/wire-engine.js +3 -3
  289. package/dist/safe-bash/commands/regex-execution/public.browser.js +7 -7
  290. package/dist/safe-bash/commands/safejs/options.js +5 -1
  291. package/dist/safe-bash/commands/safejs/runtime.d.ts +1 -0
  292. package/dist/safe-bash/commands/safejs/runtime.js +1 -1
  293. package/dist/safe-bash/commands/split/index.browser.js +2 -3
  294. package/dist/safe-bash/commands/split/index.d.ts +0 -1
  295. package/dist/safe-bash/commands/split/index.js +0 -1
  296. package/dist/safe-bash/commands/ssconvert/index.browser.js +98 -0
  297. package/dist/safe-bash/commands/stat/index.browser.js +13 -0
  298. package/dist/safe-bash/commands/stat/index.d.ts +2 -0
  299. package/dist/safe-bash/commands/stat/index.js +2 -0
  300. package/dist/safe-bash/commands/stream-format/index.browser.js +3 -4
  301. package/dist/safe-bash/commands/stream-format/index.d.ts +0 -1
  302. package/dist/safe-bash/commands/stream-format/index.js +0 -1
  303. package/dist/safe-bash/commands/stream-inspection/index.browser.js +3 -4
  304. package/dist/safe-bash/commands/stream-inspection/index.d.ts +0 -1
  305. package/dist/safe-bash/commands/stream-inspection/index.js +0 -1
  306. package/dist/safe-bash/commands/streams.js +2 -1
  307. package/dist/safe-bash/commands/table-text/index.browser.js +3 -4
  308. package/dist/safe-bash/commands/table-text/index.d.ts +0 -1
  309. package/dist/safe-bash/commands/table-text/index.js +0 -1
  310. package/dist/safe-bash/commands/text.js +74 -34
  311. package/dist/safe-bash/commands/time-env/index.browser.js +3 -4
  312. package/dist/safe-bash/commands/time-env/index.d.ts +0 -1
  313. package/dist/safe-bash/commands/time-env/index.js +0 -1
  314. package/dist/safe-bash/commands/tree/index.browser.js +2 -3
  315. package/dist/safe-bash/commands/tree/index.d.ts +0 -1
  316. package/dist/safe-bash/commands/tree/index.js +0 -1
  317. package/dist/safe-bash/commands/tsort/index.browser.js +2 -2
  318. package/dist/safe-bash/commands/unalias/index.d.ts +2 -0
  319. package/dist/safe-bash/commands/unalias/index.js +2 -0
  320. package/dist/safe-bash/commands/xml/index.browser.js +2 -2
  321. package/dist/safe-bash/commands/yq/index.browser.js +2 -2
  322. package/dist/safe-bash/core.browser.js +2 -2
  323. package/dist/safe-bash/core.d.ts +7 -1
  324. package/dist/safe-bash/core.js +7 -1
  325. package/dist/safe-bash/execution-runtime.js +2 -1
  326. package/dist/safe-bash/fs/s3/http/index.d.ts +2 -2
  327. package/dist/safe-bash/fs/s3/http/index.js +1 -1
  328. package/dist/safe-bash/full-core.browser.js +254 -916
  329. package/dist/safe-bash/internal/op/types.d.ts +1 -0
  330. package/dist/safe-bash/jobs.browser.js +5 -5
  331. package/dist/safe-bash/lazy-optional.d.ts +3 -3
  332. package/dist/safe-bash/lazy-optional.js +1 -1
  333. package/dist/safe-bash/opt-in/commands/cmp/index.js +7 -6
  334. package/dist/safe-bash/opt-in/commands/dd/index.js +1 -1
  335. package/dist/safe-bash/opt-in/commands/dd/io.js +51 -5
  336. package/dist/safe-bash/opt-in/commands/truncate/index.js +2 -2
  337. package/dist/safe-bash/opt-in/commands/yq/native-work.js +3 -0
  338. package/dist/safe-bash/opt-in/optional/commands/shuf/input.js +2 -1
  339. package/dist/safe-bash/opt-in/optional/commands/shuf/shuf.js +4 -2
  340. package/dist/safe-bash/opt-in/optional.d.ts +1 -1
  341. package/dist/safe-bash/opt-in/optional.js +1 -1
  342. package/dist/safe-bash/opt-in/shell/extensions/read/index.js +2 -344
  343. package/dist/safe-bash/optional-host.browser.js +19 -14
  344. package/dist/safe-bash/optional-host.d.ts +1 -0
  345. package/dist/safe-bash/optional-host.js +1 -0
  346. package/dist/safe-bash/playwright/controller.js +41 -3
  347. package/dist/safe-bash/playwright/native-storage-targets.js +4 -2
  348. package/dist/safe-bash/plugins/base.d.ts +1 -1
  349. package/dist/safe-bash/plugins/base.js +3 -3
  350. package/dist/safe-bash/plugins/composition.d.ts +5 -2
  351. package/dist/safe-bash/plugins/composition.js +10 -7
  352. package/dist/safe-bash/plugins/index.browser.js +44 -41
  353. package/dist/safe-bash/plugins/index.js +3 -2
  354. package/dist/safe-bash/plugins/portable-commands.d.ts +3 -0
  355. package/dist/safe-bash/plugins/portable-commands.js +31 -0
  356. package/dist/safe-bash/registry-entry.browser.js +41 -42
  357. package/dist/safe-bash/search.browser.js +32 -33
  358. package/dist/safe-bash/shell/arithmetic.js +19 -6
  359. package/dist/safe-bash/shell/arrays/state.js +1 -1
  360. package/dist/safe-bash/shell/arrays/syntax.js +4 -3
  361. package/dist/safe-bash/shell/index.d.ts +0 -1
  362. package/dist/safe-bash/shell/index.js +0 -1
  363. package/dist/safe-bash/shell/parser.d.ts +2 -2
  364. package/dist/safe-bash/shell/parser.js +268 -64
  365. package/dist/safe-bash/shell/read-builtin.d.ts +3 -0
  366. package/dist/safe-bash/shell/read-builtin.js +344 -0
  367. package/dist/safe-bash/shell/runtime.d.ts +24 -4
  368. package/dist/safe-bash/shell/runtime.js +392 -414
  369. package/dist/safe-bash/shell/session-state.js +25 -0
  370. package/dist/safe-bash/shell/shell.js +76 -154
  371. package/dist/safe-bash/shell/tilde-expansion.d.ts +1 -1
  372. package/dist/safe-bash/shell/tilde-expansion.js +2 -2
  373. package/dist/safe-bash/shell/types.d.ts +7 -0
  374. package/dist/safe-bash/shell/value-state.js +1 -1
  375. package/dist/safe-bash/shell/worker-limits.js +1 -0
  376. package/dist/safe-bash/shell-entry.browser.js +32 -33
  377. package/dist/safe-bash/trap.browser.js +4 -4
  378. package/dist/safe-bash/worker/host.js +1 -1
  379. package/dist/safe-bash/yq-browser/index.js +1 -1
  380. package/dist/safe-bash-calendar-engine/time-env/calendar.d.ts +1 -1
  381. package/dist/safe-bash-calendar-engine/time-env/calendar.js +1 -1
  382. package/dist/safe-bash-calendar-engine/time-env/format.js +1 -1
  383. package/dist/safe-bash-command-alias/index.d.ts +13 -0
  384. package/dist/safe-bash-command-alias/index.js +88 -0
  385. package/dist/safe-bash-command-apply-patch/apply.js +3 -3
  386. package/dist/safe-bash-command-apply-patch/index.js +3 -3
  387. package/dist/safe-bash-command-apply-patch/matcher.js +1 -1
  388. package/dist/safe-bash-command-apply-patch/parser.js +1 -1
  389. package/dist/safe-bash-command-awk/awk-pipes.js +2 -2
  390. package/dist/safe-bash-command-awk/awk-reader.js +1 -1
  391. package/dist/safe-bash-command-awk/awk-runtime.js +3 -3
  392. package/dist/safe-bash-command-awk/awk.js +5 -5
  393. package/dist/safe-bash-command-awk/index.js +5 -5
  394. package/dist/safe-bash-command-bc/index.js +218 -65
  395. package/dist/safe-bash-command-bzip2/index.js +4 -3
  396. package/dist/safe-bash-command-chmod/LICENSE +21 -0
  397. package/dist/safe-bash-command-chmod/command.d.ts +7 -0
  398. package/dist/safe-bash-command-chmod/command.js +11 -0
  399. package/dist/safe-bash-command-chmod/index.d.ts +6 -0
  400. package/dist/safe-bash-command-chmod/index.js +27 -0
  401. package/dist/safe-bash-command-cmp/index.js +7 -6
  402. package/dist/safe-bash-command-column/column.js +3 -3
  403. package/dist/safe-bash-command-column/index.js +3 -3
  404. package/dist/safe-bash-command-column/layout.js +2 -2
  405. package/dist/safe-bash-command-csvkit/index.d.ts +1 -0
  406. package/dist/safe-bash-command-csvkit/index.js +1505 -7
  407. package/dist/safe-bash-command-csvkit/sync-support.js +2 -7
  408. package/dist/safe-bash-command-curl/curl.js +1 -1
  409. package/dist/safe-bash-command-curl/index.js +1 -1
  410. package/dist/safe-bash-command-date/date.js +1 -1
  411. package/dist/safe-bash-command-date/index.js +1 -1
  412. package/dist/safe-bash-command-dd/index.js +1 -1
  413. package/dist/safe-bash-command-dd/io.js +51 -5
  414. package/dist/safe-bash-command-diff/diff.js +1 -1
  415. package/dist/safe-bash-command-diff/index.js +1 -1
  416. package/dist/safe-bash-command-diff3/index.js +10 -13
  417. package/dist/safe-bash-command-exiftool/index.js +283 -55
  418. package/dist/safe-bash-command-exiftool/registry.d.ts +4 -2
  419. package/dist/safe-bash-command-factor/command.js +2 -2
  420. package/dist/safe-bash-command-factor/index.js +2 -2
  421. package/dist/safe-bash-command-fd/arguments.d.ts +2 -0
  422. package/dist/safe-bash-command-fd/index.js +42 -12
  423. package/dist/safe-bash-command-ffmpeg/index.js +356 -66
  424. package/dist/safe-bash-command-find/find-format.d.ts +3 -0
  425. package/dist/safe-bash-command-find/find-format.js +1 -1
  426. package/dist/safe-bash-command-find/find.js +2 -2
  427. package/dist/safe-bash-command-find/index.js +2 -2
  428. package/dist/safe-bash-command-fmt/index.js +10 -6
  429. package/dist/safe-bash-command-fold/engine.d.ts +1 -1
  430. package/dist/safe-bash-command-fold/family.js +2 -2
  431. package/dist/safe-bash-command-fold/index.js +1 -1
  432. package/dist/safe-bash-command-gzip/index.js +45 -42
  433. package/dist/safe-bash-command-hexdump/command.js +2 -2
  434. package/dist/safe-bash-command-hexdump/index.js +2 -2
  435. package/dist/safe-bash-command-html-to-markdown/entities.js +1 -1
  436. package/dist/safe-bash-command-html-to-markdown/index.js +4 -4
  437. package/dist/safe-bash-command-html-to-markdown/input.js +3 -3
  438. package/dist/safe-bash-command-html-to-markdown/parser.js +2 -2
  439. package/dist/safe-bash-command-html-to-markdown/render.js +3 -3
  440. package/dist/safe-bash-command-htmlq/contracts.d.ts +5 -2
  441. package/dist/safe-bash-command-htmlq/index.d.ts +2 -1
  442. package/dist/safe-bash-command-htmlq/index.js +175 -49
  443. package/dist/safe-bash-command-htmlq/sync.d.ts +1 -0
  444. package/dist/safe-bash-command-imagemagick/index.js +59 -7
  445. package/dist/safe-bash-command-install/arguments.d.ts +27 -0
  446. package/dist/safe-bash-command-install/arguments.js +224 -0
  447. package/dist/safe-bash-command-install/index.d.ts +7 -0
  448. package/dist/safe-bash-command-install/index.js +942 -0
  449. package/dist/safe-bash-command-install/mode.d.ts +6 -0
  450. package/dist/safe-bash-command-install/mode.js +71 -0
  451. package/dist/safe-bash-command-install/options.d.ts +40 -0
  452. package/dist/safe-bash-command-install/options.js +27 -0
  453. package/dist/safe-bash-command-jq/index.js +1 -1
  454. package/dist/safe-bash-command-jq/jq.js +1 -1
  455. package/dist/safe-bash-command-less/index.js +42 -57
  456. package/dist/safe-bash-command-llm/command.js +1 -1
  457. package/dist/safe-bash-command-llm/elevenlabs.js +2 -2
  458. package/dist/safe-bash-command-llm/index.js +4 -4
  459. package/dist/safe-bash-command-llm/openai.js +2 -2
  460. package/dist/safe-bash-command-llm/providers/elevenlabs.js +2 -2
  461. package/dist/safe-bash-command-llm/providers/index.js +3 -3
  462. package/dist/safe-bash-command-llm/providers/openai.js +2 -2
  463. package/dist/safe-bash-command-llm/providers/shared.js +1 -1
  464. package/dist/{safe-bash-mcp → safe-bash-command-mcp}/index.browser.d.ts +463 -46
  465. package/dist/safe-bash-command-mcp/index.browser.js +19308 -0
  466. package/dist/{safe-bash-mcp → safe-bash-command-mcp}/index.d.ts +15 -6
  467. package/dist/{safe-bash-mcp → safe-bash-command-mcp}/index.js +2835 -2783
  468. package/dist/safe-bash-command-media/LICENSE +21 -0
  469. package/dist/safe-bash-command-media/index.d.ts +6 -0
  470. package/dist/safe-bash-command-media/index.js +30 -0
  471. package/dist/safe-bash-command-media/plugin.d.ts +18 -0
  472. package/dist/safe-bash-command-media/plugin.js +11 -0
  473. package/dist/safe-bash-command-media/remote.d.ts +63 -0
  474. package/dist/safe-bash-command-media/remote.js +11 -0
  475. package/dist/safe-bash-command-media/settings.d.ts +4 -0
  476. package/dist/safe-bash-command-media/settings.js +41 -0
  477. package/dist/safe-bash-command-mktemp/LICENSE +21 -0
  478. package/dist/safe-bash-command-mktemp/command.d.ts +3 -0
  479. package/dist/safe-bash-command-mktemp/command.js +9 -0
  480. package/dist/safe-bash-command-mktemp/index.d.ts +6 -0
  481. package/dist/safe-bash-command-mktemp/index.js +25 -0
  482. package/dist/safe-bash-command-mmdc/arguments.d.ts +1 -0
  483. package/dist/safe-bash-command-mmdc/command.d.ts +2 -0
  484. package/dist/safe-bash-command-mmdc/contracts.d.ts +8 -1
  485. package/dist/safe-bash-command-mmdc/index.js +359 -7
  486. package/dist/safe-bash-command-nl/index.js +1 -1
  487. package/dist/safe-bash-command-nl/nl.js +1 -1
  488. package/dist/safe-bash-command-node/LICENSE +21 -0
  489. package/dist/safe-bash-command-node/index.d.ts +17 -0
  490. package/dist/safe-bash-command-node/index.js +328 -0
  491. package/dist/safe-bash-command-numfmt/index.js +1 -0
  492. package/dist/safe-bash-command-od/index.js +16 -8
  493. package/dist/safe-bash-command-op/index.js +62 -36
  494. package/dist/safe-bash-command-op/types.d.ts +1 -0
  495. package/dist/safe-bash-command-pandoc/command.js +3 -3
  496. package/dist/safe-bash-command-pandoc/index.d.ts +1 -0
  497. package/dist/safe-bash-command-pandoc/index.js +5 -3
  498. package/dist/safe-bash-command-pandoc/sync.d.ts +1 -0
  499. package/dist/safe-bash-command-patch/index.js +4 -4
  500. package/dist/safe-bash-command-patch/patch.js +4 -4
  501. package/dist/safe-bash-command-pdfimages/index.js +1 -1
  502. package/dist/safe-bash-command-pdfinfo/index.js +30 -5
  503. package/dist/safe-bash-command-pdftk/index.js +21 -23
  504. package/dist/safe-bash-command-pdftoppm/index.js +17 -4
  505. package/dist/safe-bash-command-pdftotext/index.js +11 -14
  506. package/dist/safe-bash-command-qpdf/index.d.ts +1 -0
  507. package/dist/safe-bash-command-qpdf/index.js +9 -6
  508. package/dist/safe-bash-command-rg/index.js +1 -1
  509. package/dist/safe-bash-command-rg/rg-command.js +1 -1
  510. package/dist/safe-bash-command-sed/index.js +1 -1
  511. package/dist/safe-bash-command-sed/sed.js +1 -1
  512. package/dist/safe-bash-command-shuf/input.d.ts +2 -2
  513. package/dist/safe-bash-command-shuf/input.js +2 -1
  514. package/dist/safe-bash-command-shuf/shuf.js +4 -2
  515. package/dist/safe-bash-command-sips/index.js +15 -7
  516. package/dist/safe-bash-command-soffice/index.js +97 -12
  517. package/dist/safe-bash-command-sponge/index.js +13 -3
  518. package/dist/safe-bash-command-sqlite3/engine.d.ts +1 -0
  519. package/dist/safe-bash-command-sqlite3/index.js +510 -70
  520. package/dist/safe-bash-command-ssconvert/formats/xlsx.js +2 -2
  521. package/dist/safe-bash-command-ssconvert/index.js +44 -22
  522. package/dist/safe-bash-command-stat/LICENSE +21 -0
  523. package/dist/safe-bash-command-stat/command.d.ts +7 -0
  524. package/dist/safe-bash-command-stat/command.js +9 -0
  525. package/dist/safe-bash-command-stat/index.d.ts +6 -0
  526. package/dist/safe-bash-command-stat/index.js +25 -0
  527. package/dist/safe-bash-command-tar/create.d.ts +1 -0
  528. package/dist/safe-bash-command-tar/create.js +2 -2
  529. package/dist/safe-bash-command-tar/extract.js +2 -2
  530. package/dist/safe-bash-command-tar/index.js +4 -4
  531. package/dist/safe-bash-command-tar/modes.js +4 -4
  532. package/dist/safe-bash-command-tar/options.js +1 -1
  533. package/dist/safe-bash-command-truncate/index.js +2 -2
  534. package/dist/safe-bash-command-tsort/command.js +2 -2
  535. package/dist/safe-bash-command-tsort/index.js +2 -2
  536. package/dist/safe-bash-command-unalias/index.d.ts +12 -0
  537. package/dist/safe-bash-command-unalias/index.js +67 -0
  538. package/dist/safe-bash-command-unrtf/index.js +37 -5
  539. package/dist/safe-bash-command-xan/argv.d.ts +1 -1
  540. package/dist/safe-bash-command-xan/argv.js +2 -2
  541. package/dist/safe-bash-command-xan/budget.d.ts +0 -1
  542. package/dist/safe-bash-command-xan/budget.js +1 -1
  543. package/dist/safe-bash-command-xan/commands.js +6 -6
  544. package/dist/safe-bash-command-xan/csv.js +2 -2
  545. package/dist/safe-bash-command-xan/index.js +8 -9
  546. package/dist/safe-bash-command-xan/io.js +4 -4
  547. package/dist/safe-bash-command-xan/options.js +1 -1
  548. package/dist/safe-bash-command-xan/selector.js +2 -2
  549. package/dist/safe-bash-command-xmllint/index.js +45 -23
  550. package/dist/safe-bash-command-xxd/index.js +47 -12
  551. package/dist/safe-bash-command-xz/command.d.ts +1 -1
  552. package/dist/safe-bash-command-xz/index.js +3 -2
  553. package/dist/safe-bash-command-yq/accounting.js +1 -1
  554. package/dist/safe-bash-command-yq/index.js +4 -2
  555. package/dist/safe-bash-command-yq/native-work.js +3 -0
  556. package/dist/safe-bash-command-yq/parser.js +2 -2
  557. package/dist/safe-bash-command-yq/query.js +8 -5
  558. package/dist/safe-bash-command-yq/toml.js +2 -2
  559. package/dist/safe-bash-command-zip/index.js +3 -3
  560. package/dist/safe-bash-compression-engine/bounded-codec.js +3 -3
  561. package/dist/safe-bash-compression-engine/codec-loader.js +2 -2
  562. package/dist/safe-bash-compression-engine/files.js +6 -6
  563. package/dist/safe-bash-compression-engine/index.js +5 -5
  564. package/dist/safe-bash-compression-engine/operand.js +6 -6
  565. package/dist/safe-bash-compression-engine/options.js +1 -1
  566. package/dist/safe-bash-compression-engine/stream.js +5 -5
  567. package/dist/safe-bash-compression-engine/zstd-decode.js +4 -4
  568. package/dist/safe-bash-contracts/command.js +3 -3
  569. package/dist/safe-bash-contracts/default-executor.js +2 -2
  570. package/dist/safe-bash-contracts/diagnostics.js +3 -3
  571. package/dist/safe-bash-contracts/escaping.js +6 -6
  572. package/dist/safe-bash-contracts/filesystem-descriptor.js +3 -3
  573. package/dist/safe-bash-contracts/filesystem-output.js +5 -5
  574. package/dist/safe-bash-contracts/http.d.ts +7 -0
  575. package/dist/safe-bash-contracts/index.js +8 -8
  576. package/dist/safe-bash-contracts/io.d.ts +2 -0
  577. package/dist/safe-bash-contracts/io.js +2 -2
  578. package/dist/safe-bash-contracts/output.js +3 -3
  579. package/dist/safe-bash-contracts/runtime-control.d.ts +2 -2
  580. package/dist/safe-bash-contracts/runtime-control.js +4 -2
  581. package/dist/safe-bash-contracts/signals.d.ts +2 -0
  582. package/dist/safe-bash-contracts/signals.js +3 -1
  583. package/dist/safe-bash-contracts/yield.js +1 -1
  584. package/dist/safe-bash-csv-engine/index.d.ts +2 -1
  585. package/dist/safe-bash-csv-engine/index.js +21 -15
  586. package/dist/safe-bash-io-engine/commands/search/requirements.js +2 -2
  587. package/dist/safe-bash-io-engine/commands/text-programs/shared.js +6 -6
  588. package/dist/safe-bash-io-engine/internal.js +1 -1
  589. package/dist/safe-bash-io-engine/shell/pattern.js +38 -18
  590. package/dist/safe-bash-line-ending-engine/convert.js +9 -204
  591. package/dist/safe-bash-line-ending-engine/encoding.js +9 -42
  592. package/dist/safe-bash-line-ending-engine/index.js +48 -0
  593. package/dist/safe-bash-line-ending-engine/info.js +9 -90
  594. package/dist/safe-bash-line-ending-engine/internal.js +15 -160
  595. package/dist/safe-bash-line-ending-engine/io.js +12 -289
  596. package/dist/safe-bash-line-ending-engine/stage.js +10 -160
  597. package/dist/safe-bash-markdown-engine/index.js +3 -3
  598. package/dist/safe-bash-metadata-engine/LICENSE +21 -0
  599. package/dist/safe-bash-metadata-engine/index.d.ts +30 -0
  600. package/dist/safe-bash-metadata-engine/index.js +82 -0
  601. package/dist/safe-bash-metadata-engine/random.d.ts +1 -0
  602. package/dist/safe-bash-metadata-engine/random.js +21 -0
  603. package/dist/safe-bash-network-engine/args.d.ts +6 -0
  604. package/dist/safe-bash-network-engine/args.js +4 -2
  605. package/dist/safe-bash-network-engine/body.js +1 -1
  606. package/dist/safe-bash-network-engine/fetch-transport.js +3 -1
  607. package/dist/safe-bash-network-engine/index.js +3 -1
  608. package/dist/safe-bash-network-engine/input.js +2 -2
  609. package/dist/safe-bash-network-engine/platform-portable.js +3 -1
  610. package/dist/safe-bash-query-engine/dates.d.ts +1 -1
  611. package/dist/safe-bash-query-engine/dates.js +1 -1
  612. package/dist/safe-bash-query-engine/index.js +6 -6
  613. package/dist/safe-bash-query-engine/interpreter.js +4 -4
  614. package/dist/safe-bash-query-engine/parser.js +1 -1
  615. package/dist/safe-bash-query-engine/query-core.js +6 -6
  616. package/dist/safe-bash-regex-engine/execution/bounded-provider.js +10 -0
  617. package/dist/safe-bash-regex-engine/index.js +1 -1
  618. package/dist/safe-bash-regex-engine/text/regex.d.ts +1 -1
  619. package/dist/safe-bash-regex-engine/text/regex.js +1 -1
  620. package/dist/safe-bash-search-engine/ergonomic-regex.d.ts +1 -0
  621. package/dist/safe-bash-search-engine/ergonomic-regex.js +2 -2
  622. package/dist/safe-bash-search-engine/glob.js +2 -2
  623. package/dist/safe-bash-search-engine/grep.js +17 -10
  624. package/dist/safe-bash-search-engine/matcher.d.ts +2 -2
  625. package/dist/safe-bash-search-engine/matcher.js +13 -9
  626. package/dist/safe-bash-search-engine/options.d.ts +2 -0
  627. package/dist/safe-bash-search-engine/options.js +1 -1
  628. package/dist/safe-bash-search-engine/output.js +1 -1
  629. package/dist/safe-bash-search-engine/shared.js +2 -2
  630. package/dist/safe-bash-search-engine/walk.js +15 -3
  631. package/dist/safe-bash-text-stream-engine/stream-format/shared.d.ts +1 -1
  632. package/dist/safe-bash-text-stream-engine/stream-format/shared.js +2 -1
  633. package/dist/safe-bash-xml-engine/document.js +3 -3
  634. package/dist/safe-bash-xml-engine/evaluate.js +2 -2
  635. package/dist/safe-bash-xml-engine/index.js +4 -4
  636. package/dist/safe-bash-xml-engine/io.js +7 -2
  637. package/dist/safe-bash-xml-engine/limits.d.ts +0 -2
  638. package/dist/safe-bash-xml-engine/limits.js +1 -1
  639. package/dist/safe-bash-xml-engine/query.js +3 -3
  640. package/dist/safe-bash-zip-engine/index.js +3 -3
  641. package/dist/safe-bash-zip-engine/zip/repair.js +3 -3
  642. package/dist/safe-bash-zip-engine/zip/safety.js +1 -1
  643. package/dist/safe-bash-zip-engine/zip/sfx.js +3 -3
  644. package/dist/safe-bash-zip-engine/zip/volumes.js +1 -1
  645. package/dist/safe-bash-zip-engine/zip-format.js +3 -3
  646. package/dist/safe-playwright-cloudflare/browser-snapshot-json.js +2 -2
  647. package/dist/safe-playwright-cloudflare/browser-snapshot-references.js +1 -1
  648. package/dist/safe-playwright-cloudflare/browser-socket-closure.js +18 -3
  649. package/dist/safe-playwright-cloudflare/shell-browser-resource.js +1 -1
  650. package/dist/xlsx-ast/xlsx.js +6 -5
  651. package/package.json +112 -98
  652. package/dist/media-cli/bytes.d.ts +0 -8
  653. package/dist/media-cli/bytes.js +0 -40
  654. package/dist/media-cli/concat.d.ts +0 -30
  655. package/dist/media-cli/concat.js +0 -197
  656. package/dist/media-cli/content.js +0 -66
  657. package/dist/media-cli/dependency-grammars.d.ts +0 -12
  658. package/dist/media-cli/dependency-grammars.js +0 -557
  659. package/dist/media-cli/discover.js +0 -286
  660. package/dist/media-cli/engine.js +0 -190
  661. package/dist/media-cli/filename-expression.js +0 -147
  662. package/dist/media-cli/filesystem.js +0 -35
  663. package/dist/media-cli/frontend-contract.js +0 -8
  664. package/dist/media-cli/frontend-issues.d.ts +0 -6
  665. package/dist/media-cli/frontend-issues.js +0 -9
  666. package/dist/media-cli/imagemagick-operand.d.ts +0 -42
  667. package/dist/media-cli/imagemagick-operand.js +0 -229
  668. package/dist/media-cli/imagemagick-references.d.ts +0 -7
  669. package/dist/media-cli/imagemagick-references.js +0 -42
  670. package/dist/media-cli/imagemagick.generated.js +0 -3254
  671. package/dist/media-cli/imagemagick.js +0 -615
  672. package/dist/media-cli/index.js +0 -12
  673. package/dist/media-cli/mvg.d.ts +0 -10
  674. package/dist/media-cli/mvg.js +0 -102
  675. package/dist/media-cli/network.js +0 -78
  676. package/dist/media-cli/options.generated.js +0 -3312
  677. package/dist/media-cli/preset.d.ts +0 -11
  678. package/dist/media-cli/preset.js +0 -57
  679. package/dist/media-cli/resolution-path.d.ts +0 -23
  680. package/dist/media-cli/resolution-path.js +0 -217
  681. package/dist/media-cli/resolver.js +0 -494
  682. package/dist/media-cli/resources.d.ts +0 -16
  683. package/dist/media-cli/resources.js +0 -187
  684. package/dist/media-cli/shim.js +0 -52
  685. package/dist/media-cli/tee.d.ts +0 -6
  686. package/dist/media-cli/tee.js +0 -38
  687. package/dist/office-package/zip-sync.js +0 -111
  688. package/dist/remote-execution/binary.js +0 -178
  689. package/dist/remote-execution/callback-result.js +0 -26
  690. package/dist/remote-execution/canonical-capabilities.d.ts +0 -5
  691. package/dist/remote-execution/canonical-capabilities.js +0 -45
  692. package/dist/remote-execution/canonical-metadata.d.ts +0 -4
  693. package/dist/remote-execution/canonical-metadata.js +0 -32
  694. package/dist/remote-execution/client.js +0 -824
  695. package/dist/remote-execution/deployment.js +0 -131
  696. package/dist/remote-execution/descriptors.js +0 -267
  697. package/dist/remote-execution/effects.js +0 -357
  698. package/dist/remote-execution/endpoint.js +0 -224
  699. package/dist/remote-execution/files.js +0 -291
  700. package/dist/remote-execution/hosting-operation.js +0 -26
  701. package/dist/remote-execution/hosting-request.d.ts +0 -4
  702. package/dist/remote-execution/hosting-request.js +0 -12
  703. package/dist/remote-execution/hosting-stream.d.ts +0 -8
  704. package/dist/remote-execution/hosting-stream.js +0 -64
  705. package/dist/remote-execution/index.js +0 -18
  706. package/dist/remote-execution/invocation-admission.d.ts +0 -3
  707. package/dist/remote-execution/invocation-admission.js +0 -17
  708. package/dist/remote-execution/job-binding.js +0 -1269
  709. package/dist/remote-execution/materializations.js +0 -284
  710. package/dist/remote-execution/modal-driver.js +0 -90
  711. package/dist/remote-execution/native-result.d.ts +0 -3
  712. package/dist/remote-execution/native-result.js +0 -16
  713. package/dist/remote-execution/output-freshness.d.ts +0 -4
  714. package/dist/remote-execution/output-freshness.js +0 -19
  715. package/dist/remote-execution/output-retrieval.js +0 -474
  716. package/dist/remote-execution/process-http.js +0 -607
  717. package/dist/remote-execution/process.js +0 -577
  718. package/dist/remote-execution/protocol.js +0 -208
  719. package/dist/remote-execution/relay.js +0 -91
  720. package/dist/remote-execution/rest-driver.js +0 -93
  721. package/dist/remote-execution/upload-descriptor.js +0 -201
  722. package/dist/remote-execution/upload-protocol.js +0 -62
  723. package/dist/remote-execution/uploads.js +0 -324
  724. package/dist/remote-execution/wire-json.d.ts +0 -4
  725. package/dist/remote-execution/wire-json.js +0 -44
  726. package/dist/remote-execution/wire-validation.js +0 -131
  727. package/dist/remote-execution/wire.generated.js +0 -4224
  728. package/dist/safe-bash/chunks/chunk-GETUOD5D.js +0 -161
  729. package/dist/safe-bash/chunks/chunk-IWDICZVK.js +0 -20
  730. package/dist/safe-bash/chunks/chunk-MHMMRCYC.js +0 -3464
  731. package/dist/safe-bash/chunks/chunk-UE5KZDEK.js +0 -77
  732. package/dist/safe-bash/chunks/chunk-VSAJ4OTM.js +0 -962
  733. package/dist/safe-bash/chunks/csvkit-TACDU7FC.js +0 -1618
  734. package/dist/safe-bash/chunks/implementation-MLFHUQ5M.js +0 -133
  735. package/dist/safe-bash/commands/csvkit/sync.js +0 -1639
  736. package/dist/safe-bash/commands/node/unconfigured.d.ts +0 -3
  737. package/dist/safe-bash/commands/node/unconfigured.js +0 -10
  738. package/dist/safe-bash/commands/pandoc/implementation.d.ts +0 -8
  739. package/dist/safe-bash/commands/pandoc/implementation.js +0 -94
  740. package/dist/safe-bash-mcp/index.browser.js +0 -9157
  741. package/dist/safe-bash/command-chunks/{chunk-ZRRBXU3M.js → chunk-GIN5GUDP.js} +4 -4
  742. package/dist/safe-bash/command-chunks/{chunk-LAOM65EE.js → chunk-IEO4XVN6.js} +3 -3
  743. package/dist/safe-bash/command-chunks/{chunk-364TMWBT.js → chunk-MWREVL44.js} +6 -6
  744. package/dist/safe-bash/command-chunks/{chunk-464RVBGB.js → chunk-Q5TDKFHK.js} +3 -3
  745. package/dist/safe-bash/command-chunks/{chunk-AJR3AQYA.js → chunk-UKX3LZHR.js} +0 -0
  746. package/dist/safe-bash/command-chunks/{chunk-XIIBTGC5.js → chunk-XPXEQKRW.js} +9 -9
  747. package/dist/safe-bash/command-chunks/{chunk-FDBUV4HJ.js → chunk-Y4HGTG3E.js} +3 -3
  748. /package/dist/{safe-bash/commands/csvkit → safe-bash-command-csvkit}/sync.d.ts +0 -0
@@ -1,18 +1,21 @@
1
- import {
2
- createFactorCommands
3
- } from "./chunk-AM5ESLPH.js";
4
1
  import {
5
2
  createHexdumpCommands
6
- } from "./chunk-CS4MNM6I.js";
7
- import {
8
- createTimeoutCommands
9
- } from "./chunk-FBUCWVTE.js";
3
+ } from "./chunk-NGKCVNWS.js";
10
4
  import {
11
5
  createTsortCommands
12
- } from "./chunk-6PAVEFT3.js";
6
+ } from "./chunk-N4BQFD3P.js";
7
+ import {
8
+ createFactorCommands
9
+ } from "./chunk-KU5CVWKA.js";
13
10
  import {
14
11
  RegexExecutor
15
- } from "./chunk-VKNVHEX3.js";
12
+ } from "./chunk-4ESI236Y.js";
13
+ import {
14
+ createTimeoutCommands
15
+ } from "./chunk-2IVBJTBD.js";
16
+ import {
17
+ createOutputOperation
18
+ } from "./chunk-RUR6J33T.js";
16
19
  import {
17
20
  Chi,
18
21
  HashMD,
@@ -25,20 +28,25 @@ import {
25
28
  checkOpts,
26
29
  clean,
27
30
  createHasher,
28
- createOutputOperation,
29
31
  createView,
30
32
  kdfInputToBytes,
31
33
  rotl,
32
34
  sha256,
33
35
  sha384,
34
36
  sha512
35
- } from "./chunk-HZAMGT5I.js";
36
- import {
37
- createColumnCommands
38
- } from "./chunk-3HQU4OJO.js";
37
+ } from "./chunk-67WIFM3N.js";
39
38
  import {
40
39
  createApplyPatchCommands
41
- } from "./chunk-XAQMU6OY.js";
40
+ } from "./chunk-EE5YGFIZ.js";
41
+ import {
42
+ createStreamFormatCommands
43
+ } from "./chunk-SZRUU5HS.js";
44
+ import {
45
+ createSplitCommands
46
+ } from "./chunk-CFAWS3O4.js";
47
+ import {
48
+ createColumnCommands
49
+ } from "./chunk-XNGVOSGI.js";
42
50
  import {
43
51
  assertCommandRequirements,
44
52
  basicCommands,
@@ -60,94 +68,90 @@ import {
60
68
  fmtCommand,
61
69
  openFileOutput,
62
70
  predicateCommands,
63
- wcDisplayWidth
64
- } from "./chunk-44ALJ4QG.js";
65
- import {
66
- createGetoptCommands
67
- } from "./chunk-AUSNDQTJ.js";
71
+ wcDisplayWidth,
72
+ writeFileOutput
73
+ } from "./chunk-AW5KIT6V.js";
68
74
  import {
69
75
  createIconvCommands
70
- } from "./chunk-CTVWDACF.js";
76
+ } from "./chunk-IQW34XQT.js";
71
77
  import {
72
78
  createDos2unixCommands2 as createDos2unixCommands
73
- } from "./chunk-3R3AANOR.js";
79
+ } from "./chunk-TCKYOLUE.js";
74
80
  import {
75
81
  createMdqCommand
76
- } from "./chunk-OV6IHKO6.js";
77
- import {
78
- compareCopyIdentity,
79
- compareObservedEntries,
80
- inputRequirements,
81
- resolveInputLimit,
82
- textOutputRequirements
83
- } from "./chunk-XVOSKJE2.js";
84
- import {
85
- createXmlCommands
86
- } from "./chunk-C5OWC2TL.js";
82
+ } from "./chunk-FOB2FZR4.js";
87
83
  import {
88
84
  PublicDiagnostic
89
- } from "./chunk-PH63PLPZ.js";
85
+ } from "./chunk-TC3F4UFF.js";
90
86
  import {
91
87
  createPrCommands
92
- } from "./chunk-CHYGPFVM.js";
88
+ } from "./chunk-22SX3F2R.js";
93
89
  import {
94
- createBoundedRegexProvider
95
- } from "./chunk-FZE4HW6G.js";
96
- import {
97
- CommandRegistry
98
- } from "./chunk-7R5BDCG7.js";
99
- import {
100
- createTreeCommands
101
- } from "./chunk-55YJASTN.js";
102
- import {
103
- createFileCommands
104
- } from "./chunk-4BSJLKNM.js";
105
- import {
106
- createHtmlToMarkdownCommands
107
- } from "./chunk-DQP3VHSB.js";
90
+ createGetoptCommands
91
+ } from "./chunk-JPSUHHOA.js";
108
92
  import {
109
- createDuCommands
110
- } from "./chunk-GEG3BWGE.js";
93
+ createBoundedRegexProvider
94
+ } from "./chunk-EJOYT2ME.js";
111
95
  import {
112
- createMetadataCommands
113
- } from "./chunk-VSAJ4OTM.js";
96
+ compareCopyIdentity,
97
+ compareObservedEntries,
98
+ inputRequirements,
99
+ resolveInputLimit,
100
+ textOutputRequirements
101
+ } from "./chunk-47D7WBJK.js";
114
102
  import {
115
103
  compareByteArrays,
116
104
  decodeBytes,
117
105
  encodeBytes,
118
106
  indexOfBytes
119
- } from "./chunk-D3ANYGMC.js";
107
+ } from "./chunk-UV4X32QU.js";
120
108
  import {
121
- FsError
122
- } from "./chunk-VTH3MLDU.js";
109
+ createXmlCommands
110
+ } from "./chunk-OQ3AGYCZ.js";
123
111
  import {
124
112
  hasYieldCheckpoint,
125
113
  monotonicNow,
114
+ runYieldCheckpoint,
126
115
  yieldTurn
127
- } from "./chunk-NZQXYWA3.js";
116
+ } from "./chunk-62BOHHJT.js";
117
+ import {
118
+ FsError
119
+ } from "./chunk-DUTAG6ZD.js";
128
120
  import {
129
121
  collectBytes,
130
122
  createBufferedOutput,
131
123
  outputFailure
132
- } from "./chunk-74GHTNJA.js";
124
+ } from "./chunk-4KTMKD5W.js";
133
125
  import {
134
- createArchiveCommands
135
- } from "./chunk-QGUV42T5.js";
126
+ createDuCommands
127
+ } from "./chunk-RHFRJIWQ.js";
136
128
  import {
137
- createTableTextCommands
138
- } from "./chunk-4D4N7IU2.js";
129
+ createTimeEnvCommands
130
+ } from "./chunk-KBZ4UB2O.js";
139
131
  import {
140
- createStreamInspectionCommands
141
- } from "./chunk-HBCN24ZA.js";
132
+ createTreeCommands
133
+ } from "./chunk-4T53AERN.js";
142
134
  import {
143
- createStreamFormatCommands
144
- } from "./chunk-R3NAKOED.js";
135
+ createFileCommands
136
+ } from "./chunk-7O76UFQD.js";
145
137
  import {
146
- createSplitCommands
147
- } from "./chunk-7ZBU7KYV.js";
138
+ createHtmlToMarkdownCommands
139
+ } from "./chunk-5XIFJVOO.js";
148
140
  import {
149
- createTimeEnvCommands
150
- } from "./chunk-ZVD5IS4V.js";
141
+ CommandRegistry
142
+ } from "./chunk-OHML2BEU.js";
143
+ import {
144
+ createMetadataCommands
145
+ } from "./chunk-IOHH2GTI.js";
146
+ import {
147
+ createArchiveCommands
148
+ } from "./chunk-YL3GBUG4.js";
149
+ import {
150
+ createTableTextCommands
151
+ } from "./chunk-6LNFRPW5.js";
152
+ import {
153
+ createStreamInspectionCommands
154
+ } from "./chunk-Z2AAYYJN.js";
151
155
  import {
152
156
  RESOLVED_EXIT_ZERO,
153
157
  RETURN_EXIT_ONE,
@@ -176,10 +180,10 @@ import {
176
180
  requireOperands,
177
181
  syncCommandEvaluators,
178
182
  value
179
- } from "./chunk-E7OYNDGL.js";
183
+ } from "./chunk-V7QT2RWC.js";
180
184
  import {
181
185
  init_platform
182
- } from "./chunk-B7TAL7S5.js";
186
+ } from "./chunk-PTAEWLSE.js";
183
187
 
184
188
  // packages/safe-bash/src/commands/numfmt/index.ts
185
189
  init_platform();
@@ -268,6 +272,35 @@ function structuredCommands(options2 = {}) {
268
272
  };
269
273
  }
270
274
 
275
+ // packages/safe-bash/src/dd.ts
276
+ init_platform();
277
+ import {
278
+ createDdCommand as createRawDdCommand,
279
+ createDdCommands as createRawDdCommands
280
+ } from "../../safe-bash-command-dd/index.js";
281
+ import { evalSyncDd, openDdFile, settings as settings2, transferReport } from "../../safe-bash-command-dd/index.js";
282
+ function createDdCommand(options2 = {}) {
283
+ return registerDefaultExecutor(createRawDdCommand(options2), options2);
284
+ }
285
+ function createDdCommands(options2 = {}) {
286
+ return registerDefaultExecutors(createRawDdCommands(options2), options2);
287
+ }
288
+ function ddCommands(options2 = {}) {
289
+ const commands = createDdCommands(options2);
290
+ const replace = options2.replace ?? false;
291
+ return {
292
+ name: "dd-commands",
293
+ setup(host) {
294
+ if (!replace) {
295
+ for (const command of commands) {
296
+ if (host.commands.has(command.name)) throw new Error(`Command already registered: ${command.name}`);
297
+ }
298
+ }
299
+ for (const command of commands) host.commands.register(command, { replace });
300
+ }
301
+ };
302
+ }
303
+
271
304
  // packages/safe-bash/src/commands/od/index.ts
272
305
  init_platform();
273
306
  import {
@@ -357,7 +390,7 @@ function createEncodingCommands(options2 = {}) {
357
390
 
358
391
  // packages/safe-bash/src/commands/bytes/index.ts
359
392
  function createByteCommands(options2 = {}) {
360
- return [...createEncodingCommands(options2.encoding), ...createChecksumCommands(options2.checksums), ...createCompressionCommands(options2.compression)];
393
+ return [...createEncodingCommands(options2.encoding), ...createChecksumCommands(options2.checksums), ...createCompressionCommands(options2.compression), createDdCommand()];
361
394
  }
362
395
  function byteCommands(options2 = {}) {
363
396
  return {
@@ -378,7 +411,7 @@ import {
378
411
  createBcCommand as createRawBcCommand,
379
412
  createBcCommands as createRawBcCommands
380
413
  } from "../../safe-bash-command-bc/index.js";
381
- import { settings as settings2 } from "../../safe-bash-command-bc/index.js";
414
+ import { settings as settings3 } from "../../safe-bash-command-bc/index.js";
382
415
  function createBcCommand(options2 = {}) {
383
416
  return registerDefaultExecutor(createRawBcCommand(options2), options2);
384
417
  }
@@ -407,7 +440,7 @@ import {
407
440
  createSpongeCommand as createRawSpongeCommand,
408
441
  createSpongeCommands as createRawSpongeCommands,
409
442
  spongeCommands as rawSpongeCommands,
410
- settings as settings3
443
+ settings as settings4
411
444
  } from "../../safe-bash-command-sponge/index.js";
412
445
  function evalSyncSponge(inBytes, opArgs, readFileSync, writeFileSync) {
413
446
  let append = false;
@@ -720,7 +753,7 @@ import {
720
753
  createOpensslCommand as createRawOpensslCommand,
721
754
  createOpensslCommands as createRawOpensslCommands
722
755
  } from "../../safe-bash-command-openssl/index.js";
723
- import { settings as settings4 } from "../../safe-bash-command-openssl/index.js";
756
+ import { settings as settings5 } from "../../safe-bash-command-openssl/index.js";
724
757
  function isDefaultOpensslOptions(options2) {
725
758
  if (!options2) return true;
726
759
  return options2.limits === void 0 && options2.maxBufferedBytes === void 0;
@@ -1006,11 +1039,11 @@ function bytesToBase64(bytes, wrapLines = false) {
1006
1039
  out += i + 2 < bytes.byteLength ? table[n & 63] : "=";
1007
1040
  }
1008
1041
  if (!wrapLines) return out;
1009
- const lines3 = [];
1042
+ const lines2 = [];
1010
1043
  for (let i = 0; i < out.length; i += 64) {
1011
- lines3.push(out.slice(i, i + 64));
1044
+ lines2.push(out.slice(i, i + 64));
1012
1045
  }
1013
- return lines3.join("\n");
1046
+ return lines2.join("\n");
1014
1047
  }
1015
1048
  function base64ToBytes(input2) {
1016
1049
  let clean2 = input2.replace(/-/g, "+").replace(/_/g, "/").replace(/[^A-Za-z0-9+/=]/g, "");
@@ -1267,20 +1300,20 @@ function evalSyncOpenssl(inBytes, opArgs, readFileSync, writeFileSync) {
1267
1300
  meta = JSON.parse(syncOpensslDecoder.decode(rawCert));
1268
1301
  } catch {
1269
1302
  }
1270
- const lines3 = [];
1271
- if (showSubject) lines3.push(`subject=${meta.subject}`);
1272
- if (showIssuer) lines3.push(`issuer=${meta.issuer}`);
1303
+ const lines2 = [];
1304
+ if (showSubject) lines2.push(`subject=${meta.subject}`);
1305
+ if (showIssuer) lines2.push(`issuer=${meta.issuer}`);
1273
1306
  if (showDates) {
1274
- lines3.push(`notBefore=${meta.notBefore}`);
1275
- lines3.push(`notAfter=${meta.notAfter}`);
1307
+ lines2.push(`notBefore=${meta.notBefore}`);
1308
+ lines2.push(`notAfter=${meta.notAfter}`);
1276
1309
  }
1277
1310
  if (showFingerprint) {
1278
1311
  const fpHex = bytesToHex(sha256(rawCert)).toUpperCase();
1279
1312
  const colonHex = fpHex.match(/.{1,2}/g).join(":");
1280
- lines3.push(`sha256 Fingerprint=${colonHex}`);
1313
+ lines2.push(`sha256 Fingerprint=${colonHex}`);
1281
1314
  }
1282
- if (lines3.length === 0) lines3.push(pemText.trim());
1283
- return `${lines3.join("\n")}
1315
+ if (lines2.length === 0) lines2.push(pemText.trim());
1316
+ return `${lines2.join("\n")}
1284
1317
  `;
1285
1318
  }
1286
1319
  if (sub === "passwd") {
@@ -1309,7 +1342,7 @@ import {
1309
1342
  createSshKeygenCommand as createRawSshKeygenCommand,
1310
1343
  createSshCommands as createRawSshCommands
1311
1344
  } from "../../safe-bash-command-ssh/index.js";
1312
- import { settings as settings5 } from "../../safe-bash-command-ssh/index.js";
1345
+ import { settings as settings6 } from "../../safe-bash-command-ssh/index.js";
1313
1346
  var ED25519_P = 2n ** 255n - 19n;
1314
1347
  var ED25519_L = 2n ** 252n + 27742317777372353535851937790883648493n;
1315
1348
  var edMod = (a, m = ED25519_P) => (a % m + m) % m;
@@ -1473,11 +1506,11 @@ function bytesToBase642(bytes, wrapWidth = 0) {
1473
1506
  out += i + 2 < bytes.byteLength ? table[n & 63] : "=";
1474
1507
  }
1475
1508
  if (wrapWidth <= 0) return out;
1476
- const lines3 = [];
1509
+ const lines2 = [];
1477
1510
  for (let i = 0; i < out.length; i += wrapWidth) {
1478
- lines3.push(out.slice(i, i + wrapWidth));
1511
+ lines2.push(out.slice(i, i + wrapWidth));
1479
1512
  }
1480
- return lines3.join("\n");
1513
+ return lines2.join("\n");
1481
1514
  }
1482
1515
  function base64ToBytes2(input2) {
1483
1516
  let clean2 = input2.replace(/-/g, "+").replace(/_/g, "/").replace(/[^A-Za-z0-9+/=]/g, "");
@@ -1804,7 +1837,7 @@ import {
1804
1837
  createGpgCommand as createRawGpgCommand,
1805
1838
  createGpgCommands as createRawGpgCommands
1806
1839
  } from "../../safe-bash-command-gpg/index.js";
1807
- import { settings as settings6 } from "../../safe-bash-command-gpg/index.js";
1840
+ import { settings as settings7 } from "../../safe-bash-command-gpg/index.js";
1808
1841
  var ED25519_P2 = 2n ** 255n - 19n;
1809
1842
  var ED25519_L2 = 2n ** 252n + 27742317777372353535851937790883648493n;
1810
1843
  var edMod2 = (a, m = ED25519_P2) => (a % m + m) % m;
@@ -1937,11 +1970,11 @@ function bytesToBase643(bytes, wrapWidth = 0) {
1937
1970
  out += i + 2 < bytes.byteLength ? table[n & 63] : "=";
1938
1971
  }
1939
1972
  if (wrapWidth <= 0) return out;
1940
- const lines3 = [];
1973
+ const lines2 = [];
1941
1974
  for (let i = 0; i < out.length; i += wrapWidth) {
1942
- lines3.push(out.slice(i, i + wrapWidth));
1975
+ lines2.push(out.slice(i, i + wrapWidth));
1943
1976
  }
1944
- return lines3.join("\n");
1977
+ return lines2.join("\n");
1945
1978
  }
1946
1979
  function pgpCrc24(data) {
1947
1980
  let crc = 11994318;
@@ -2003,12 +2036,12 @@ function evalSyncGpg(inBytes, opArgs, readFileSync, writeFileSync) {
2003
2036
  };
2004
2037
  if (listKeys) {
2005
2038
  const keys = loadKeyringSync();
2006
- const lines3 = [];
2039
+ const lines2 = [];
2007
2040
  for (const k of keys) {
2008
- lines3.push(`sec ed25519/${k.keyIdHex} 2026-09-28 [SC]`);
2009
- lines3.push(`uid [ultimate] ${k.uid}`);
2041
+ lines2.push(`sec ed25519/${k.keyIdHex} 2026-09-28 [SC]`);
2042
+ lines2.push(`uid [ultimate] ${k.uid}`);
2010
2043
  }
2011
- return lines3.length > 0 ? `${lines3.join("\n")}
2044
+ return lines2.length > 0 ? `${lines2.join("\n")}
2012
2045
  ` : "";
2013
2046
  }
2014
2047
  if (exportKeys) {
@@ -2106,7 +2139,7 @@ import {
2106
2139
  createIdCommand as createRawIdCommand,
2107
2140
  createIdCommands as createRawIdCommands
2108
2141
  } from "../../safe-bash-command-id/index.js";
2109
- import { settings as settings7 } from "../../safe-bash-command-id/index.js";
2142
+ import { settings as settings8 } from "../../safe-bash-command-id/index.js";
2110
2143
  function createIdCommand(options2 = {}) {
2111
2144
  return registerDefaultExecutor(createRawIdCommand(options2), options2);
2112
2145
  }
@@ -2135,7 +2168,7 @@ import {
2135
2168
  createWhoamiCommand as createRawWhoamiCommand,
2136
2169
  createWhoamiCommands as createRawWhoamiCommands
2137
2170
  } from "../../safe-bash-command-whoami/index.js";
2138
- import { settings as settings8 } from "../../safe-bash-command-whoami/index.js";
2171
+ import { settings as settings9 } from "../../safe-bash-command-whoami/index.js";
2139
2172
  function createWhoamiCommand(options2 = {}) {
2140
2173
  return registerDefaultExecutor(createRawWhoamiCommand(options2), options2);
2141
2174
  }
@@ -2164,7 +2197,7 @@ import {
2164
2197
  createUnameCommand as createRawUnameCommand,
2165
2198
  createUnameCommands as createRawUnameCommands
2166
2199
  } from "../../safe-bash-command-uname/index.js";
2167
- import { settings as settings9 } from "../../safe-bash-command-uname/index.js";
2200
+ import { settings as settings10 } from "../../safe-bash-command-uname/index.js";
2168
2201
  function createUnameCommand(options2 = {}) {
2169
2202
  return registerDefaultExecutor(createRawUnameCommand(options2), options2);
2170
2203
  }
@@ -2193,7 +2226,7 @@ import {
2193
2226
  createHostnameCommand as createRawHostnameCommand,
2194
2227
  createHostnameCommands as createRawHostnameCommands
2195
2228
  } from "../../safe-bash-command-hostname/index.js";
2196
- import { settings as settings10 } from "../../safe-bash-command-hostname/index.js";
2229
+ import { settings as settings11 } from "../../safe-bash-command-hostname/index.js";
2197
2230
  function createHostnameCommand(options2 = {}) {
2198
2231
  return registerDefaultExecutor(createRawHostnameCommand(options2), options2);
2199
2232
  }
@@ -2222,7 +2255,7 @@ import {
2222
2255
  createNprocCommand as createRawNprocCommand,
2223
2256
  createNprocCommands as createRawNprocCommands
2224
2257
  } from "../../safe-bash-command-nproc/index.js";
2225
- import { settings as settings11 } from "../../safe-bash-command-nproc/index.js";
2258
+ import { settings as settings12 } from "../../safe-bash-command-nproc/index.js";
2226
2259
  function createNprocCommand(options2 = {}) {
2227
2260
  return registerDefaultExecutor(createRawNprocCommand(options2), options2);
2228
2261
  }
@@ -2251,38 +2284,9 @@ import { createShufCommand, createShufCommands, shufCommands } from "../../safe-
2251
2284
 
2252
2285
  // packages/safe-bash/src/yes.ts
2253
2286
  init_platform();
2254
- import { settings as settings12 } from "../../safe-bash-command-yes/index.js";
2287
+ import { settings as settings13 } from "../../safe-bash-command-yes/index.js";
2255
2288
  import { createYesCommand, createYesCommands, yesCommands } from "../../safe-bash-command-yes/index.js";
2256
2289
 
2257
- // packages/safe-bash/src/dd.ts
2258
- init_platform();
2259
- import {
2260
- createDdCommand as createRawDdCommand,
2261
- createDdCommands as createRawDdCommands
2262
- } from "../../safe-bash-command-dd/index.js";
2263
- import { evalSyncDd, openDdFile, settings as settings13, transferReport } from "../../safe-bash-command-dd/index.js";
2264
- function createDdCommand(options2 = {}) {
2265
- return registerDefaultExecutor(createRawDdCommand(options2), options2);
2266
- }
2267
- function createDdCommands(options2 = {}) {
2268
- return registerDefaultExecutors(createRawDdCommands(options2), options2);
2269
- }
2270
- function ddCommands(options2 = {}) {
2271
- const commands = createDdCommands(options2);
2272
- const replace = options2.replace ?? false;
2273
- return {
2274
- name: "dd-commands",
2275
- setup(host) {
2276
- if (!replace) {
2277
- for (const command of commands) {
2278
- if (host.commands.has(command.name)) throw new Error(`Command already registered: ${command.name}`);
2279
- }
2280
- }
2281
- for (const command of commands) host.commands.register(command, { replace });
2282
- }
2283
- };
2284
- }
2285
-
2286
2290
  // packages/safe-bash/src/commands/envsubst/index.ts
2287
2291
  init_platform();
2288
2292
  import {
@@ -2434,6 +2438,10 @@ function sqlite3Commands(options2 = {}) {
2434
2438
  }
2435
2439
  syncCommandEvaluators.evalSyncSqlite3 = evalSyncSqlite3;
2436
2440
 
2441
+ // packages/safe-bash/src/commands/xan/index.ts
2442
+ init_platform();
2443
+ import { createXanCommand, createXanCommands, defaultLimits, evalSyncXan, hardLimits, xanCommands } from "../../safe-bash-command-xan/index.js";
2444
+
2437
2445
  // packages/safe-bash/src/plugins/composition.ts
2438
2446
  init_platform();
2439
2447
 
@@ -3805,6 +3813,7 @@ function streamCommands(maxTeeTargets = Infinity, maxTailFollowHandles = Infinit
3805
3813
  }
3806
3814
  }),
3807
3815
  define("tr", (context) => {
3816
+ runYieldCheckpoint(context.signal);
3808
3817
  const { deleting, squeezing, mapping, removed, squeezed } = compileTrConfig(context.args);
3809
3818
  let previous = -1;
3810
3819
  const iter = input(context)[Symbol.asyncIterator]();
@@ -4371,6 +4380,17 @@ var SortRecordBudget = class {
4371
4380
  };
4372
4381
 
4373
4382
  // packages/safe-bash/src/commands/text.ts
4383
+ function sortCollator(env) {
4384
+ const locale = env.LC_ALL || env.LC_COLLATE || env.LANG || "C";
4385
+ if (["C", "POSIX", "C.UTF-8", "C.utf8"].includes(locale)) return void 0;
4386
+ const language = locale.split(".")[0].split("_").join("-");
4387
+ try {
4388
+ if (!Intl.Collator.supportedLocalesOf([language]).length || locale.includes("@")) throw new RangeError();
4389
+ return new Intl.Collator(language, { usage: "sort", sensitivity: "variant", caseFirst: "lower" });
4390
+ } catch {
4391
+ throw new UsageError(`unsupported collation locale '${locale}'`);
4392
+ }
4393
+ }
4374
4394
  var SortWork = class {
4375
4395
  constructor(signal) {
4376
4396
  this.signal = signal;
@@ -5241,17 +5261,27 @@ async function emitRecords(context, records, destination) {
5241
5261
  }
5242
5262
  return;
5243
5263
  }
5264
+ void context.registerCleanup;
5244
5265
  await admitTextOutput(context, destination);
5245
5266
  const capabilities = await context.fs.capabilitiesFor?.(pathOf(context, destination), { signal: context.signal }) ?? context.fs.capabilities;
5246
- if (context.fs.writeStream && capabilities.streamingWrite !== false) await context.fs.writeStream(pathOf(context, destination), records, { signal: context.signal });
5247
- else {
5267
+ if (context.fs.writeStream && capabilities.streamingWrite !== false) {
5268
+ const destinationOutput = await openFileOutput(context, pathOf(context, destination), "w");
5269
+ try {
5270
+ for await (const bytes of records) await destinationOutput.sink.write(bytes);
5271
+ await destinationOutput.finish();
5272
+ } catch (error) {
5273
+ await destinationOutput.abort(error);
5274
+ throw error;
5275
+ }
5276
+ } else {
5248
5277
  if (capabilities.write === false) throw new FsError("ENOTSUP", { syscall: "writeFile", path: pathOf(context, destination) });
5249
5278
  let size = 0;
5250
5279
  const chunks = [];
5251
5280
  for await (const bytes of records) {
5252
- size += bytes.length;
5253
- if (size > bufferLimit) throw new FsError("EFBIG", { message: "output buffer limit exceeded" });
5254
- chunks.push(bytes);
5281
+ await writeFileOutput(context, bytes, async (chunk) => {
5282
+ size += chunk.length;
5283
+ chunks.push(new Uint8Array(chunk));
5284
+ });
5255
5285
  }
5256
5286
  await context.fs.writeFile(pathOf(context, destination), concatenate(chunks, size), { signal: context.signal });
5257
5287
  }
@@ -5323,7 +5353,7 @@ async function collectSortRecords(source, delimiter, budget, signal, accept) {
5323
5353
  pending.clear();
5324
5354
  }
5325
5355
  }
5326
- async function executeSortGeneral(context, preReadChunks) {
5356
+ async function executeSortGeneral(context, preReadChunks, collator = sortCollator(context.env)) {
5327
5357
  let ended = false;
5328
5358
  let hasCheckLong = false;
5329
5359
  for (let i = 0; i < context.args.length; i++) {
@@ -5374,6 +5404,22 @@ async function executeSortGeneral(context, preReadChunks) {
5374
5404
  const simple = !keys.length && !["b", "f", "h", "n", "g", "M", "V", "d", "i"].some((flag) => parsed.flags.has(flag));
5375
5405
  const direction = parsed.flags.has("r") ? -1 : 1;
5376
5406
  const work = new SortWork(context.signal);
5407
+ const decoder2 = collator ? new TextDecoder("utf-8", { fatal: true }) : void 0;
5408
+ const compareText = collator ? async (left, right, work2) => {
5409
+ await work2.charge(left.length + right.length);
5410
+ let first, second;
5411
+ try {
5412
+ first = decoder2.decode(left);
5413
+ } catch {
5414
+ }
5415
+ try {
5416
+ second = decoder2.decode(right);
5417
+ } catch {
5418
+ }
5419
+ if (first === void 0) return second === void 0 ? compareSortBytes(left, right, work2) : 1;
5420
+ if (second === void 0) return -1;
5421
+ return collator.compare(first, second);
5422
+ } : compareSortBytes;
5377
5423
  const numericKey = keys.length === 1 ? keys[0] : void 0;
5378
5424
  const numericKeyFlags = numericKey?.flags.size ? numericKey.flags : parsed.flags;
5379
5425
  const skipTieFallback = simple || parsed.flags.has("s") || parsed.flags.has("u");
@@ -5381,7 +5427,7 @@ async function executeSortGeneral(context, preReadChunks) {
5381
5427
  const exitCode = 0;
5382
5428
  const delimiter = parsed.flags.has("z") ? 0 : 10;
5383
5429
  const outPath = value(parsed, "o");
5384
- const canFastIndexSort = !preReadChunks && !checking && !hasYieldCheckpoint(context.signal) && !parsed.flags.has("m") && !parsed.flags.has("u") && outPath === void 0 && parsed.operands.length <= 1 && SortRecordBudget.prototype.admit === defaultSortAdmit && Uint8Array === defaultUint8Array && (simple || keys.length === 1 && numericKey !== void 0 && numericKeyFlags.has("n") && !numericKeyFlags.has("h") && !["b", "f", "d", "i", "M", "V", "g"].some((flag) => numericKeyFlags.has(flag)) && !["b", "f", "d", "i", "h", "M", "V", "g"].some((flag) => parsed.flags.has(flag)) && numericKey.startCharacter === 1 && (numericKey.endCharacter === void 0 || numericKey.endCharacter === 0));
5430
+ const canFastIndexSort = collator === void 0 && !preReadChunks && !checking && !hasYieldCheckpoint(context.signal) && !parsed.flags.has("m") && !parsed.flags.has("u") && outPath === void 0 && parsed.operands.length <= 1 && SortRecordBudget.prototype.admit === defaultSortAdmit && Uint8Array === defaultUint8Array && (simple || keys.length === 1 && numericKey !== void 0 && numericKeyFlags.has("n") && !numericKeyFlags.has("h") && !["b", "f", "d", "i", "M", "V", "g"].some((flag) => numericKeyFlags.has(flag)) && !["b", "f", "d", "i", "h", "M", "V", "g"].some((flag) => parsed.flags.has(flag)) && numericKey.startCharacter === 1 && (numericKey.endCharacter === void 0 || numericKey.endCharacter === 0));
5385
5431
  if (canFastIndexSort) {
5386
5432
  let firstChunk;
5387
5433
  try {
@@ -5580,7 +5626,7 @@ async function executeSortGeneral(context, preReadChunks) {
5580
5626
  result = a.rank - b.rank || (a.value < b.value ? -1 : a.value > b.value ? 1 : 0);
5581
5627
  } else if (flags.has("M")) result = await monthValue(first, work) - await monthValue(second, work);
5582
5628
  else if (flags.has("V")) result = await compareVersions(first, second, work);
5583
- else result = flags.has("n") || flags.has("h") ? await compareNumeric(first, second, flags.has("h")) : await compareSortBytes(first, second, work);
5629
+ else result = flags.has("n") || flags.has("h") ? await compareNumeric(first, second, flags.has("h")) : await compareText(first, second, work);
5584
5630
  if (flags.has("r")) result = -result;
5585
5631
  if (result) return result;
5586
5632
  }
@@ -5588,7 +5634,7 @@ async function executeSortGeneral(context, preReadChunks) {
5588
5634
  };
5589
5635
  const keyCompareSimpleAsync = async (left, right, checkpoint) => {
5590
5636
  await checkpoint;
5591
- return await compareSortBytes(left, right, work) * direction;
5637
+ return await compareText(left, right, work) * direction;
5592
5638
  };
5593
5639
  const compareUnkeyedNumericAsync = async (left, right, rightPending) => {
5594
5640
  const leftValue = await left;
@@ -5599,7 +5645,7 @@ async function executeSortGeneral(context, preReadChunks) {
5599
5645
  const checkpoint = work.charge();
5600
5646
  if (simple) {
5601
5647
  if (checkpoint) return keyCompareSimpleAsync(left, right, checkpoint);
5602
- const cmp = compareSortBytes(left, right, work);
5648
+ const cmp = compareText(left, right, work);
5603
5649
  return typeof cmp === "number" ? cmp * direction : resolveScaledAfterPromise(cmp, direction);
5604
5650
  }
5605
5651
  if (isUnkeyedNumericFast && checkpoint === void 0) {
@@ -5637,7 +5683,7 @@ async function executeSortGeneral(context, preReadChunks) {
5637
5683
  if (checkpoint) await checkpoint;
5638
5684
  const first = await (firstPending ?? getKeyedLexSlice(left));
5639
5685
  const second = await (secondPending ?? getKeyedLexSlice(right));
5640
- return await compareSortBytes(first, second, work) * lexRev;
5686
+ return await compareText(first, second, work) * lexRev;
5641
5687
  };
5642
5688
  keyCompare = (left, right) => {
5643
5689
  const checkpoint = work.charge();
@@ -5648,7 +5694,7 @@ async function executeSortGeneral(context, preReadChunks) {
5648
5694
  if (!(first instanceof Promise)) {
5649
5695
  second = getKeyedLexSlice(right);
5650
5696
  if (!(second instanceof Promise)) {
5651
- const cmp = compareSortBytes(first, second, work);
5697
+ const cmp = compareText(first, second, work);
5652
5698
  if (typeof cmp === "number") return cmp * lexRev;
5653
5699
  return resolveScaledAfterPromise(cmp, lexRev);
5654
5700
  }
@@ -5801,7 +5847,7 @@ async function executeSortGeneral(context, preReadChunks) {
5801
5847
  if (ls === void 0) return keyCompareGeneralAsync(left, right, void 0);
5802
5848
  const rs = ev.evalLexSync(right);
5803
5849
  if (rs === void 0) return keyCompareGeneralAsync(left, right, void 0);
5804
- const cmp = compareSortBytes(ls, rs, work);
5850
+ const cmp = compareText(ls, rs, work);
5805
5851
  if (typeof cmp !== "number") return keyCompareGeneralAsync(left, right, void 0);
5806
5852
  if (cmp !== 0) return cmp * ev.revScale;
5807
5853
  }
@@ -5812,13 +5858,13 @@ async function executeSortGeneral(context, preReadChunks) {
5812
5858
  const compareSlowAsync = async (resultPromise, left, right) => {
5813
5859
  const resolved = await resultPromise;
5814
5860
  if (resolved !== 0 || skipTieFallback) return resolved;
5815
- return await compareSortBytes(left, right, work) * direction;
5861
+ return await compareText(left, right, work) * direction;
5816
5862
  };
5817
5863
  const compare = (left, right) => {
5818
5864
  const result = keyCompare(left, right);
5819
5865
  if (typeof result === "number") {
5820
5866
  if (result !== 0 || skipTieFallback) return result;
5821
- const fallback = compareSortBytes(left, right, work);
5867
+ const fallback = compareText(left, right, work);
5822
5868
  return typeof fallback === "number" ? fallback * direction : resolveScaledAfterPromise(fallback, direction);
5823
5869
  }
5824
5870
  return compareSlowAsync(result, left, right);
@@ -6364,8 +6410,8 @@ async function executeUniqGeneral(context, preReadSource) {
6364
6410
  start = offset + 1;
6365
6411
  }
6366
6412
  if (previous && pending.size === 0 && previous.buffer === chunk.buffer) {
6367
- previous = previous.slice();
6368
- if (identityKey) previousKey = previous;
6413
+ previous = new Uint8Array(previous);
6414
+ if (previousKey?.buffer === chunk.buffer) previousKey = key(previous);
6369
6415
  }
6370
6416
  pending.append(chunk, start);
6371
6417
  if (outUsed > 0) {
@@ -6391,6 +6437,9 @@ async function executeUniqGeneral(context, preReadSource) {
6391
6437
  function textCommands() {
6392
6438
  return [
6393
6439
  define("sort", (context) => {
6440
+ runYieldCheckpoint(context.signal);
6441
+ const collator = sortCollator(context.env);
6442
+ if (collator) return executeSortGeneral(context, void 0, collator);
6394
6443
  if ((context.args.length === 0 || context.args.length === 1 && context.args[0] === "-r") && !hasYieldCheckpoint(context.signal) && SortRecordBudget.prototype.admit === defaultSortAdmit && Uint8Array === defaultUint8Array) {
6395
6444
  const direction = context.args.length === 1 ? -1 : 1;
6396
6445
  const req = assertInputRequirements(context, EMPTY_OPERANDS);
@@ -6640,11 +6689,13 @@ function textCommands() {
6640
6689
  })());
6641
6690
  }
6642
6691
  }
6692
+ return executeUniqGeneral(context, { [Symbol.asyncIterator]: () => srcIter });
6643
6693
  }
6644
6694
  }
6645
6695
  return executeUniqGeneral(context);
6646
6696
  }),
6647
6697
  define("cut", (context) => {
6698
+ runYieldCheckpoint(context.signal);
6648
6699
  if (!hasYieldCheckpoint(context.signal)) {
6649
6700
  const args = context.args;
6650
6701
  let sepByte = 9;
@@ -6925,20 +6976,11 @@ async function executeCutFastAsync(context, operand, sepByte, targetField, req,
6925
6976
  if (req) await req;
6926
6977
  const outBuf = new Uint8Array(65536);
6927
6978
  let outUsed = 0;
6928
- const isPipeStage = Boolean(context.stdout.isPipeStage);
6929
- const syncSink = !isPipeStage ? context.stdout : void 0;
6930
- const canWriteSync = typeof syncSink?.writeSync === "function";
6931
6979
  const flush = () => {
6932
6980
  if (outUsed === 0) return;
6933
- context.signal.throwIfAborted();
6934
- if (canWriteSync && syncSink.writeSync(outBuf.subarray(0, outUsed)) !== false) {
6935
- outUsed = 0;
6936
- context.signal.throwIfAborted();
6937
- return;
6938
- }
6939
- const bytes = isPipeStage ? outBuf.subarray(0, outUsed) : outBuf.slice(0, outUsed);
6981
+ const p = outputRange(context, outBuf, outUsed);
6940
6982
  outUsed = 0;
6941
- const p = output(context, bytes);
6983
+ context.signal.throwIfAborted();
6942
6984
  return isSyncResolved2(p) ? void 0 : p;
6943
6985
  };
6944
6986
  const writeFieldSlow = async (chunk, start, end) => {
@@ -7117,7 +7159,7 @@ import { alias, createGrepAliases } from "../../safe-bash-io-engine/commands/gre
7117
7159
  import { createExprCommandWithExecutor } from "../../safe-bash-command-expr/command.js";
7118
7160
  import { createCsplitCommandWithExecutor } from "../../safe-bash-command-csplit/command.js";
7119
7161
  function createExtraAgentCommands(options2) {
7120
- return [...createBcCommands(options2?.bc), ...createSpongeCommands(options2?.sponge), ...createOpensslCommands(), ...createSshCommands(), ...createGpgCommands(), ...createFdCommands(options2?.fd), ...createLessCommands(options2?.less), ...createIdCommands(), ...createWhoamiCommands(), ...createUnameCommands(), ...createHostnameCommands(), ...createNprocCommands(), ...createShufCommands(), ...createYesCommands(), ...createDdCommands(), ...createNumfmtCommands(), ...createEnvsubstCommands(), ...createCalCommands(), ...createPathchkCommands(), ...createGetconfCommands(), ...createLocaleCommands(), ...createDfCommands(), ...createSqlite3Commands(options2?.sqlite3)];
7162
+ return [...createBcCommands(options2?.bc), ...createSpongeCommands(options2?.sponge), ...createOpensslCommands(), ...createSshCommands(), ...createGpgCommands(), ...createFdCommands(options2?.fd), ...createLessCommands(options2?.less), ...createIdCommands(), ...createWhoamiCommands(), ...createUnameCommands(), ...createHostnameCommands(), ...createNprocCommands(), ...createShufCommands(), ...createYesCommands(), ...createNumfmtCommands(), ...createEnvsubstCommands(), ...createCalCommands(), ...createPathchkCommands(), ...createGetconfCommands(), ...createLocaleCommands(), ...createDfCommands(), ...createSqlite3Commands(options2?.sqlite3)];
7121
7163
  }
7122
7164
  function commandExecutor(lookup) {
7123
7165
  return async (context) => {
@@ -7164,14 +7206,15 @@ function getDefaultStatelessFamilies() {
7164
7206
  ...createHexdumpCommands({}),
7165
7207
  ...createIconvCommands({}),
7166
7208
  ...createDos2unixCommands({}),
7167
- createMdqCommand()
7209
+ createMdqCommand(),
7210
+ ...createXanCommands()
7168
7211
  ])
7169
7212
  };
7170
7213
  }
7171
7214
  function hasCustomFamilyOptions(options2) {
7172
- return options2.text !== void 0 || options2.structured !== void 0 || options2.bytes !== void 0 || options2.diffPatch !== void 0 || options2.metadata !== void 0 || options2.archive !== void 0 || options2.tableText !== void 0 || options2.streamInspection !== void 0 || options2.streamFormat !== void 0 || options2.split !== void 0 || options2.timeEnv !== void 0 || options2.tree !== void 0 || options2.file !== void 0 || options2.column !== void 0 || options2.htmlToMarkdown !== void 0 || options2.du !== void 0 || options2.which !== void 0 || options2.timeout !== void 0 || options2.applyPatch !== void 0 || options2.xml !== void 0 || options2.pr !== void 0 || options2.tsort !== void 0 || options2.factor !== void 0 || options2.getopt !== void 0 || options2.hexdump !== void 0 || options2.iconv !== void 0 || options2.lineEndings !== void 0 || options2.bc !== void 0 || options2.sponge !== void 0 || options2.fd !== void 0 || options2.less !== void 0 || options2.sqlite3 !== void 0 || options2.muscleMemory !== void 0 || options2.mdq !== void 0;
7215
+ return options2.text !== void 0 || options2.structured !== void 0 || options2.bytes !== void 0 || options2.diffPatch !== void 0 || options2.metadata !== void 0 || options2.archive !== void 0 || options2.tableText !== void 0 || options2.streamInspection !== void 0 || options2.streamFormat !== void 0 || options2.split !== void 0 || options2.timeEnv !== void 0 || options2.tree !== void 0 || options2.file !== void 0 || options2.column !== void 0 || options2.htmlToMarkdown !== void 0 || options2.du !== void 0 || options2.which !== void 0 || options2.timeout !== void 0 || options2.applyPatch !== void 0 || options2.xml !== void 0 || options2.pr !== void 0 || options2.tsort !== void 0 || options2.factor !== void 0 || options2.getopt !== void 0 || options2.hexdump !== void 0 || options2.iconv !== void 0 || options2.lineEndings !== void 0 || options2.bc !== void 0 || options2.sponge !== void 0 || options2.fd !== void 0 || options2.less !== void 0 || options2.sqlite3 !== void 0 || options2.muscleMemory !== void 0 || options2.mdq !== void 0 || options2.xan !== void 0;
7173
7216
  }
7174
- function composeRawAgentCommands(options2, executors, additionalCommands = []) {
7217
+ function composeRawAgentCommands(options2, executors, additionalCommands = [], trailingCommands = []) {
7175
7218
  const commands = [...additionalCommands];
7176
7219
  const useErgonomicGrep = options2.regexExecutor === void 0;
7177
7220
  const grep = createGrepCommands(executors.grep, { ergonomicRegex: useErgonomicGrep });
@@ -7191,6 +7234,7 @@ function composeRawAgentCommands(options2, executors, additionalCommands = []) {
7191
7234
  createCsplitCommandWithExecutor(executors.csplit, csplitLimits === void 0 ? {} : { limits: csplitLimits }),
7192
7235
  ...defaults.afterCsplit
7193
7236
  );
7237
+ commands.push(...createExtraAgentCommands(options2).filter((command) => command.name !== "shuf" && command.name !== "numfmt"), ...trailingCommands);
7194
7238
  return commands;
7195
7239
  }
7196
7240
  const prOptions = options2.pr;
@@ -7242,13 +7286,15 @@ function composeRawAgentCommands(options2, executors, additionalCommands = []) {
7242
7286
  ...createHexdumpCommands({ ...hexdumpLimits === void 0 ? {} : { limits: hexdumpLimits }, ...hexdumpDialect === void 0 ? {} : { dialect: hexdumpDialect } }),
7243
7287
  ...createIconvCommands(iconvLimits === void 0 ? {} : { limits: iconvLimits }),
7244
7288
  ...createDos2unixCommands(lineEndingLimits === void 0 ? {} : { limits: lineEndingLimits }),
7245
- ...options2.muscleMemory ? createExtraAgentCommands(options2) : options2.sqlite3 ? createSqlite3Commands(options2.sqlite3) : [],
7246
- createMdqCommand(options2.mdq)
7289
+ createMdqCommand(options2.mdq),
7290
+ ...createXanCommands(options2.xan),
7291
+ ...options2.muscleMemory !== false ? createExtraAgentCommands(options2).filter((command) => options2.muscleMemory === true || command.name !== "shuf" && command.name !== "numfmt") : options2.sqlite3 ? createSqlite3Commands(options2.sqlite3) : [],
7292
+ ...trailingCommands
7247
7293
  );
7248
7294
  return commands;
7249
7295
  }
7250
- function composeAgentCommands(options2, executors, additionalCommands = []) {
7251
- return new CommandRegistry(composeRawAgentCommands(options2, executors, additionalCommands)).list();
7296
+ function composeAgentCommands(options2, executors, additionalCommands = [], trailingCommands = []) {
7297
+ return new CommandRegistry(composeRawAgentCommands(options2, executors, additionalCommands, trailingCommands)).list();
7252
7298
  }
7253
7299
 
7254
7300
  // packages/safe-bash/src/plugins/base.ts
@@ -7261,9 +7307,9 @@ function createRegexExecutors(options2) {
7261
7307
  }
7262
7308
  function baseAgentCommands(options2 = {}) {
7263
7309
  const regex = Object.freeze({ ...options2.regex });
7264
- return createAgentCommandPlugin({ ...options2, regex }, createRegexExecutors({ ...options2, regex }));
7310
+ return createAgentCommandPlugin({ muscleMemory: false, ...options2, regex }, createRegexExecutors({ ...options2, regex }));
7265
7311
  }
7266
- function createAgentCommandPlugin(options2, executors, additionalCommands = []) {
7312
+ function createAgentCommandPlugin(options2, executors, additionalCommands = [], trailingCommands = []) {
7267
7313
  const regex = options2.regex ?? {};
7268
7314
  let disposal;
7269
7315
  const plugin = {
@@ -7271,7 +7317,7 @@ function createAgentCommandPlugin(options2, executors, additionalCommands = [])
7271
7317
  setup(host) {
7272
7318
  if (disposal) throw new Error("Agent commands are disposed");
7273
7319
  host.provideCapabilities?.({ regex: { executor: executors.grep.provider, limits: regex } });
7274
- const definitions = composeRawAgentCommands({ ...options2, execute: options2.execute ?? commandExecutor((name) => host.commands.get(name)) }, executors, additionalCommands);
7320
+ const definitions = composeRawAgentCommands({ ...options2, execute: options2.execute ?? commandExecutor((name) => host.commands.get(name)) }, executors, additionalCommands, trailingCommands);
7275
7321
  if (!options2.replace) for (const definition of definitions) {
7276
7322
  if (host.commands.has(definition.name)) throw new Error(`Command already registered: ${definition.name}`);
7277
7323
  }
@@ -7302,6 +7348,9 @@ export {
7302
7348
  createStructuredCommands,
7303
7349
  structuredCommands,
7304
7350
  createGrepCommands,
7351
+ createDdCommand,
7352
+ createDdCommands,
7353
+ ddCommands,
7305
7354
  createOdCommand,
7306
7355
  createOdCommands,
7307
7356
  odCommands,
@@ -7347,9 +7396,6 @@ export {
7347
7396
  createYesCommand,
7348
7397
  createYesCommands,
7349
7398
  yesCommands,
7350
- createDdCommand,
7351
- createDdCommands,
7352
- ddCommands,
7353
7399
  createEnvsubstCommand,
7354
7400
  createEnvsubstCommands,
7355
7401
  envsubstCommands,
@@ -7362,6 +7408,9 @@ export {
7362
7408
  createSqlite3Command,
7363
7409
  createSqlite3Commands,
7364
7410
  sqlite3Commands,
7411
+ createXanCommand,
7412
+ createXanCommands,
7413
+ xanCommands,
7365
7414
  composeAgentCommands,
7366
7415
  createRegexExecutors,
7367
7416
  baseAgentCommands,