@caspian2026/agent-sdk 0.0.2

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 (371) hide show
  1. package/dist/chunk-018smjq7.js +26 -0
  2. package/dist/chunk-055q0a2m.js +146 -0
  3. package/dist/chunk-07069jq1.js +30 -0
  4. package/dist/chunk-0731m51q.js +8 -0
  5. package/dist/chunk-0awwmrwr.js +46 -0
  6. package/dist/chunk-0htx82k2.js +64 -0
  7. package/dist/chunk-0jmt5sx1.js +104 -0
  8. package/dist/chunk-0kj8bq80.js +252 -0
  9. package/dist/chunk-0kxcq8h9.js +86 -0
  10. package/dist/chunk-0paqc2yw.js +15 -0
  11. package/dist/chunk-0vkfrmqm.js +690 -0
  12. package/dist/chunk-0xjaqda8.js +1124 -0
  13. package/dist/chunk-10qhq6f8.js +458 -0
  14. package/dist/chunk-15m49c67.js +121 -0
  15. package/dist/chunk-15sfg4bs.js +65 -0
  16. package/dist/chunk-162ewhvy.js +869 -0
  17. package/dist/chunk-177s15bv.js +120 -0
  18. package/dist/chunk-19e603rv.js +284 -0
  19. package/dist/chunk-1ax1znzj.js +537 -0
  20. package/dist/chunk-1c4j7qn2.js +319 -0
  21. package/dist/chunk-1gx78081.js +66 -0
  22. package/dist/chunk-1h2famwb.js +49 -0
  23. package/dist/chunk-1nk93fqz.js +357 -0
  24. package/dist/chunk-1xct96nd.js +2520 -0
  25. package/dist/chunk-1xvcvdef.js +90 -0
  26. package/dist/chunk-1yrcnrs7.js +261 -0
  27. package/dist/chunk-21bcvwr7.js +660 -0
  28. package/dist/chunk-2352ts05.js +667 -0
  29. package/dist/chunk-23jzrwsw.js +43 -0
  30. package/dist/chunk-26hg7303.js +62 -0
  31. package/dist/chunk-2f21meep.js +122 -0
  32. package/dist/chunk-2fwze72g.js +24 -0
  33. package/dist/chunk-2gzv8nrw.js +205 -0
  34. package/dist/chunk-2h05vtpv.js +83 -0
  35. package/dist/chunk-2h0y6m16.js +465 -0
  36. package/dist/chunk-2n7bbxm6.js +168 -0
  37. package/dist/chunk-2nv3d0he.js +108 -0
  38. package/dist/chunk-2vqrdwx9.js +1811 -0
  39. package/dist/chunk-3389cj3w.js +120 -0
  40. package/dist/chunk-35sgv3er.js +231 -0
  41. package/dist/chunk-3c25bcsw.js +17 -0
  42. package/dist/chunk-3e20cj49.js +443 -0
  43. package/dist/chunk-3mr5ryx4.js +122 -0
  44. package/dist/chunk-3nk79af8.js +8 -0
  45. package/dist/chunk-3qbdzsvm.js +120 -0
  46. package/dist/chunk-3yprydpw.js +213 -0
  47. package/dist/chunk-430yrtmk.js +492 -0
  48. package/dist/chunk-46hd1gyd.js +140 -0
  49. package/dist/chunk-46hdszda.js +63 -0
  50. package/dist/chunk-46n7byh8.js +102 -0
  51. package/dist/chunk-4cp6193g.js +9076 -0
  52. package/dist/chunk-4dn3n459.js +409 -0
  53. package/dist/chunk-4hv90qcz.js +8 -0
  54. package/dist/chunk-4jm600zv.js +13 -0
  55. package/dist/chunk-4nspekjp.js +69 -0
  56. package/dist/chunk-505mxxa9.js +19 -0
  57. package/dist/chunk-50bay5qy.js +224 -0
  58. package/dist/chunk-537qfvn5.js +345 -0
  59. package/dist/chunk-55raexh7.js +14358 -0
  60. package/dist/chunk-572vjq78.js +56 -0
  61. package/dist/chunk-5apfzkpy.js +87 -0
  62. package/dist/chunk-5ccdsxgy.js +74 -0
  63. package/dist/chunk-5dmhsqap.js +32 -0
  64. package/dist/chunk-5fs6nkjr.js +98 -0
  65. package/dist/chunk-5nchekqe.js +87 -0
  66. package/dist/chunk-5pp28k2r.js +120 -0
  67. package/dist/chunk-5rt4b8q9.js +116 -0
  68. package/dist/chunk-5rv9c8yd.js +1072 -0
  69. package/dist/chunk-5z28bqne.js +6748 -0
  70. package/dist/chunk-64c1avct.js +13 -0
  71. package/dist/chunk-66zry909.js +11 -0
  72. package/dist/chunk-682qgta2.js +102 -0
  73. package/dist/chunk-68ffk5qa.js +14 -0
  74. package/dist/chunk-68w91pzt.js +79 -0
  75. package/dist/chunk-69fgaak0.js +654 -0
  76. package/dist/chunk-69n11zng.js +436 -0
  77. package/dist/chunk-6dj5t602.js +341 -0
  78. package/dist/chunk-6gh20s05.js +146 -0
  79. package/dist/chunk-6maej1hh.js +502 -0
  80. package/dist/chunk-6nsd9606.js +790 -0
  81. package/dist/chunk-6p4cyhb3.js +16 -0
  82. package/dist/chunk-6t4a9cgj.js +877 -0
  83. package/dist/chunk-6t8yqfks.js +227 -0
  84. package/dist/chunk-6vthy0fj.js +213 -0
  85. package/dist/chunk-70cw4cg9.js +1026 -0
  86. package/dist/chunk-70eey1nh.js +164 -0
  87. package/dist/chunk-76j2e9vy.js +68 -0
  88. package/dist/chunk-7acgdm7x.js +93 -0
  89. package/dist/chunk-7aw745vx.js +40175 -0
  90. package/dist/chunk-7gvwg1v9.js +122 -0
  91. package/dist/chunk-7h2ybnf3.js +636 -0
  92. package/dist/chunk-7kcm5hn2.js +155 -0
  93. package/dist/chunk-7m2hp89m.js +73 -0
  94. package/dist/chunk-7mqab3z7.js +31 -0
  95. package/dist/chunk-7sgtxrsc.js +1059 -0
  96. package/dist/chunk-7wm5s02e.js +216 -0
  97. package/dist/chunk-7xyswgjh.js +8 -0
  98. package/dist/chunk-7yxvpj5j.js +1452 -0
  99. package/dist/chunk-80a8vabn.js +93 -0
  100. package/dist/chunk-83e71kz6.js +180 -0
  101. package/dist/chunk-83hfzbx3.js +10 -0
  102. package/dist/chunk-8g5pe1gr.js +37 -0
  103. package/dist/chunk-8g747a8x.js +26 -0
  104. package/dist/chunk-8hj8ms5q.js +111 -0
  105. package/dist/chunk-8mkwsdk1.js +61 -0
  106. package/dist/chunk-8n42zyfx.js +40 -0
  107. package/dist/chunk-8qhxyqj9.js +1155 -0
  108. package/dist/chunk-8y30k9pz.js +38 -0
  109. package/dist/chunk-960ze3jj.js +124 -0
  110. package/dist/chunk-97wgdsab.js +35 -0
  111. package/dist/chunk-9grztvcg.js +93 -0
  112. package/dist/chunk-9x5zgy22.js +12 -0
  113. package/dist/chunk-a8792r1c.js +620 -0
  114. package/dist/chunk-ahr1r7c6.js +4275 -0
  115. package/dist/chunk-ase86y73.js +15 -0
  116. package/dist/chunk-b0kf00ff.js +637 -0
  117. package/dist/chunk-b0qptb1k.js +640 -0
  118. package/dist/chunk-b1kcd3ss.js +27 -0
  119. package/dist/chunk-b2fd462a.js +54 -0
  120. package/dist/chunk-bdrjvs5k.js +157 -0
  121. package/dist/chunk-beg7bdyz.js +90 -0
  122. package/dist/chunk-bg4x9ex0.js +21 -0
  123. package/dist/chunk-bktfq0ns.js +95 -0
  124. package/dist/chunk-bmbq6nt1.js +145 -0
  125. package/dist/chunk-bvf2z3g6.js +1003 -0
  126. package/dist/chunk-bxcfz5gy.js +56 -0
  127. package/dist/chunk-c11swzas.js +5368 -0
  128. package/dist/chunk-c37j5zxe.js +57 -0
  129. package/dist/chunk-c5mz5vw2.js +117 -0
  130. package/dist/chunk-c6sjhj89.js +1284 -0
  131. package/dist/chunk-c7jwbe76.js +29030 -0
  132. package/dist/chunk-cc2tg4q8.js +311 -0
  133. package/dist/chunk-cdhmrbj4.js +6353 -0
  134. package/dist/chunk-cdz5yb0r.js +57 -0
  135. package/dist/chunk-cfv996bs.js +22 -0
  136. package/dist/chunk-cgfdkzhb.js +12 -0
  137. package/dist/chunk-chakj069.js +310 -0
  138. package/dist/chunk-chsyvavm.js +3435 -0
  139. package/dist/chunk-cnsj3vq2.js +35 -0
  140. package/dist/chunk-ctdg0qxh.js +1386 -0
  141. package/dist/chunk-cxq7gc42.js +386 -0
  142. package/dist/chunk-d1pyf9as.js +8586 -0
  143. package/dist/chunk-d4kwjqjy.js +308 -0
  144. package/dist/chunk-d4mdda98.js +94 -0
  145. package/dist/chunk-d7886r6a.js +13870 -0
  146. package/dist/chunk-d7f1pzkq.js +95 -0
  147. package/dist/chunk-ddsjkqs4.js +39 -0
  148. package/dist/chunk-dm3n2qgd.js +24 -0
  149. package/dist/chunk-e2mv8ts8.js +115 -0
  150. package/dist/chunk-e4bhfc6d.js +2720 -0
  151. package/dist/chunk-e4p1jbs4.js +58 -0
  152. package/dist/chunk-e7h4qxgw.js +21 -0
  153. package/dist/chunk-e8p3fy6v.js +202 -0
  154. package/dist/chunk-e97mp86b.js +111 -0
  155. package/dist/chunk-ebqwkhyf.js +145 -0
  156. package/dist/chunk-eenq3avg.js +69 -0
  157. package/dist/chunk-efgjfast.js +61 -0
  158. package/dist/chunk-ehtwnxpg.js +1591 -0
  159. package/dist/chunk-en8wkxh7.js +173 -0
  160. package/dist/chunk-enkdxqas.js +33 -0
  161. package/dist/chunk-eqp1rfft.js +17 -0
  162. package/dist/chunk-ercvcek8.js +266 -0
  163. package/dist/chunk-etgh9xvt.js +369 -0
  164. package/dist/chunk-ev3qkf76.js +106 -0
  165. package/dist/chunk-evp5pb9x.js +3567 -0
  166. package/dist/chunk-ewadzrm8.js +103 -0
  167. package/dist/chunk-exah13mz.js +94 -0
  168. package/dist/chunk-f0rzvqmq.js +87 -0
  169. package/dist/chunk-f1m9pect.js +258 -0
  170. package/dist/chunk-fajg8x36.js +8158 -0
  171. package/dist/chunk-fbv4apne.js +51 -0
  172. package/dist/chunk-fbvw6wq9.js +116 -0
  173. package/dist/chunk-feyzykye.js +10 -0
  174. package/dist/chunk-fn1vvj8k.js +894 -0
  175. package/dist/chunk-fshfxw2q.js +183 -0
  176. package/dist/chunk-fyc5fepv.js +10 -0
  177. package/dist/chunk-g9f19ttm.js +15 -0
  178. package/dist/chunk-gcpfxk0c.js +644 -0
  179. package/dist/chunk-gdg6411p.js +106 -0
  180. package/dist/chunk-gkyzz8er.js +849 -0
  181. package/dist/chunk-gxahdggv.js +71 -0
  182. package/dist/chunk-h6fsks9j.js +220 -0
  183. package/dist/chunk-h9n54swm.js +27 -0
  184. package/dist/chunk-hakdhagh.js +16606 -0
  185. package/dist/chunk-hchy0hq6.js +159 -0
  186. package/dist/chunk-hh3k5s1s.js +180 -0
  187. package/dist/chunk-hqqkj5pg.js +202 -0
  188. package/dist/chunk-htpehq9t.js +251 -0
  189. package/dist/chunk-hwfknpxv.js +39 -0
  190. package/dist/chunk-hwn8vetn.js +394 -0
  191. package/dist/chunk-hx3j6n92.js +178 -0
  192. package/dist/chunk-hyb749hd.js +194 -0
  193. package/dist/chunk-hzgnejb1.js +90 -0
  194. package/dist/chunk-hzknr99c.js +477 -0
  195. package/dist/chunk-j3zhb8vv.js +152 -0
  196. package/dist/chunk-j5bth84e.js +97 -0
  197. package/dist/chunk-j64ga6ta.js +8035 -0
  198. package/dist/chunk-jaaxk89e.js +113 -0
  199. package/dist/chunk-jd32zbps.js +15 -0
  200. package/dist/chunk-jfja8q7w.js +91 -0
  201. package/dist/chunk-jgjqa49s.js +27 -0
  202. package/dist/chunk-jgpmpgx6.js +19 -0
  203. package/dist/chunk-jgwd85hp.js +91 -0
  204. package/dist/chunk-jk69qtzx.js +277 -0
  205. package/dist/chunk-jr1xm1dd.js +147 -0
  206. package/dist/chunk-jss0azv7.js +2337 -0
  207. package/dist/chunk-jxpmkae9.js +108 -0
  208. package/dist/chunk-jy9rxxqe.js +102 -0
  209. package/dist/chunk-jyw3np47.js +264 -0
  210. package/dist/chunk-jzthz1bx.js +15 -0
  211. package/dist/chunk-k0p9w03v.js +4957 -0
  212. package/dist/chunk-k2rybwww.js +92 -0
  213. package/dist/chunk-k3939ggz.js +168 -0
  214. package/dist/chunk-k591cwbg.js +345 -0
  215. package/dist/chunk-k5ez1h65.js +108 -0
  216. package/dist/chunk-k8vp0atq.js +2331 -0
  217. package/dist/chunk-kajf3jgq.js +694 -0
  218. package/dist/chunk-kbm69rtz.js +276 -0
  219. package/dist/chunk-kjh11txh.js +419 -0
  220. package/dist/chunk-kqggbte3.js +326 -0
  221. package/dist/chunk-kr6qfwq0.js +95 -0
  222. package/dist/chunk-kvfg8eeg.js +150 -0
  223. package/dist/chunk-kwekc97v.js +18 -0
  224. package/dist/chunk-m1cehfta.js +861 -0
  225. package/dist/chunk-m87bhhqv.js +61 -0
  226. package/dist/chunk-mg7pbk0r.js +151 -0
  227. package/dist/chunk-mpbfkp8j.js +418 -0
  228. package/dist/chunk-mpk1sjyk.js +117 -0
  229. package/dist/chunk-msecaxyj.js +74 -0
  230. package/dist/chunk-mswx2nma.js +103 -0
  231. package/dist/chunk-mw1kpeg9.js +6895 -0
  232. package/dist/chunk-mxr2s6d1.js +89 -0
  233. package/dist/chunk-my40g5hp.js +560 -0
  234. package/dist/chunk-n0kmh4ra.js +338 -0
  235. package/dist/chunk-n18q5yqs.js +397 -0
  236. package/dist/chunk-n7pnyq43.js +131 -0
  237. package/dist/chunk-naybw0p0.js +32 -0
  238. package/dist/chunk-nb6abcch.js +83 -0
  239. package/dist/chunk-ne5r3k03.js +350 -0
  240. package/dist/chunk-nebezy1d.js +997 -0
  241. package/dist/chunk-netzwgv1.js +154 -0
  242. package/dist/chunk-nhapyawz.js +32994 -0
  243. package/dist/chunk-npnvheft.js +156 -0
  244. package/dist/chunk-nrtksr2p.js +51 -0
  245. package/dist/chunk-nw9t5pq9.js +132 -0
  246. package/dist/chunk-nxgsnh2y.js +735 -0
  247. package/dist/chunk-p11xp4xp.js +266 -0
  248. package/dist/chunk-p1hwrf72.js +74 -0
  249. package/dist/chunk-p1zj9mg9.js +567 -0
  250. package/dist/chunk-p39a677r.js +115 -0
  251. package/dist/chunk-p7vkh4wx.js +15 -0
  252. package/dist/chunk-p8na2wwp.js +14 -0
  253. package/dist/chunk-pcb7fbyg.js +259 -0
  254. package/dist/chunk-pckwmrzd.js +409 -0
  255. package/dist/chunk-ped973jn.js +111 -0
  256. package/dist/chunk-phd1qfpc.js +5971 -0
  257. package/dist/chunk-pkkngdv0.js +524 -0
  258. package/dist/chunk-ppwjyveh.js +8 -0
  259. package/dist/chunk-pqvr8jq7.js +324 -0
  260. package/dist/chunk-prcah3ys.js +106 -0
  261. package/dist/chunk-ps49ymvj.js +43 -0
  262. package/dist/chunk-pwwa7s62.js +11 -0
  263. package/dist/chunk-pxdzy0jh.js +134 -0
  264. package/dist/chunk-q3jr5t07.js +62 -0
  265. package/dist/chunk-q6cfkntd.js +675 -0
  266. package/dist/chunk-q6m26rc8.js +88 -0
  267. package/dist/chunk-q6xs51jj.js +332 -0
  268. package/dist/chunk-q7jnesv8.js +74 -0
  269. package/dist/chunk-q7zpf4r2.js +440 -0
  270. package/dist/chunk-q8c88vjm.js +24 -0
  271. package/dist/chunk-qajrkk97.js +298 -0
  272. package/dist/chunk-qatfdxvd.js +34 -0
  273. package/dist/chunk-qb6k2afy.js +153 -0
  274. package/dist/chunk-qfk94vcn.js +329 -0
  275. package/dist/chunk-qj2e1apf.js +471 -0
  276. package/dist/chunk-qj2mk79w.js +111 -0
  277. package/dist/chunk-qk7dfae6.js +267 -0
  278. package/dist/chunk-qnfx3qtx.js +617 -0
  279. package/dist/chunk-qp2qdcda.js +100 -0
  280. package/dist/chunk-qq0phwn8.js +458 -0
  281. package/dist/chunk-qwqjesx7.js +258 -0
  282. package/dist/chunk-qygmcg7w.js +60 -0
  283. package/dist/chunk-qz2x630m.js +49145 -0
  284. package/dist/chunk-qzj4e8fn.js +357 -0
  285. package/dist/chunk-ratvcbmn.js +255 -0
  286. package/dist/chunk-rkg741k3.js +37 -0
  287. package/dist/chunk-rn0v1hk8.js +34 -0
  288. package/dist/chunk-rsq0h0rz.js +91 -0
  289. package/dist/chunk-rvnb2gn6.js +1053 -0
  290. package/dist/chunk-rx278zpa.js +75 -0
  291. package/dist/chunk-s3hsqf80.js +473 -0
  292. package/dist/chunk-s4cb0bcb.js +655 -0
  293. package/dist/chunk-s8kj6ajy.js +32 -0
  294. package/dist/chunk-sd36yzx8.js +954 -0
  295. package/dist/chunk-sfcpjh4r.js +98 -0
  296. package/dist/chunk-spybh2dy.js +175 -0
  297. package/dist/chunk-sw9ax3ym.js +92 -0
  298. package/dist/chunk-szj5wvdy.js +28 -0
  299. package/dist/chunk-t29a6zb5.js +45 -0
  300. package/dist/chunk-t9p85zff.js +24 -0
  301. package/dist/chunk-tc1aazk4.js +131 -0
  302. package/dist/chunk-tdbz9gbm.js +1030 -0
  303. package/dist/chunk-tjcfpk38.js +208 -0
  304. package/dist/chunk-tp2jxmcx.js +8427 -0
  305. package/dist/chunk-tqmtkm0k.js +92 -0
  306. package/dist/chunk-tvgvt220.js +22820 -0
  307. package/dist/chunk-v0qraze5.js +291 -0
  308. package/dist/chunk-v1kzp02e.js +785 -0
  309. package/dist/chunk-v78fj8by.js +145 -0
  310. package/dist/chunk-v8g3kad0.js +101 -0
  311. package/dist/chunk-v9smspw2.js +4301 -0
  312. package/dist/chunk-vawgyev5.js +157 -0
  313. package/dist/chunk-vb3x3cxe.js +375 -0
  314. package/dist/chunk-vf612n57.js +472 -0
  315. package/dist/chunk-vjn8mbcw.js +198 -0
  316. package/dist/chunk-vmbfv1y5.js +295 -0
  317. package/dist/chunk-vrf54kmt.js +321 -0
  318. package/dist/chunk-vyjeh50y.js +2149 -0
  319. package/dist/chunk-vzgkedm9.js +159745 -0
  320. package/dist/chunk-w004kfw0.js +245 -0
  321. package/dist/chunk-w0yhbmxn.js +132 -0
  322. package/dist/chunk-w4yn8cq7.js +123 -0
  323. package/dist/chunk-waqwgprq.js +1164 -0
  324. package/dist/chunk-wayfjcwt.js +447 -0
  325. package/dist/chunk-wby6yd4m.js +91 -0
  326. package/dist/chunk-wha6v7za.js +705 -0
  327. package/dist/chunk-wjcq2vkf.js +641 -0
  328. package/dist/chunk-wtjt9qyk.js +2670 -0
  329. package/dist/chunk-x2pvw7xw.js +42 -0
  330. package/dist/chunk-x6r4v44b.js +8 -0
  331. package/dist/chunk-x8d2ehd7.js +19 -0
  332. package/dist/chunk-xd6kmmb1.js +95 -0
  333. package/dist/chunk-xp61y5ba.js +125 -0
  334. package/dist/chunk-xv3era3s.js +8 -0
  335. package/dist/chunk-xxw9a0bq.js +58 -0
  336. package/dist/chunk-xzhaa7gd.js +112 -0
  337. package/dist/chunk-y1784krc.js +19 -0
  338. package/dist/chunk-y4ca9kqz.js +3830 -0
  339. package/dist/chunk-yff68ex1.js +113 -0
  340. package/dist/chunk-yg4vgpxs.js +436 -0
  341. package/dist/chunk-yk62vxj2.js +2964 -0
  342. package/dist/chunk-ym5r3jnk.js +2007 -0
  343. package/dist/chunk-ysanv95x.js +225 -0
  344. package/dist/chunk-yvtzznds.js +63 -0
  345. package/dist/chunk-yyex5gsf.js +269 -0
  346. package/dist/chunk-yyf72f78.js +456 -0
  347. package/dist/chunk-z19sd3bt.js +1648 -0
  348. package/dist/chunk-z2dp53wn.js +17 -0
  349. package/dist/chunk-z9n0183s.js +39 -0
  350. package/dist/chunk-zb8f6h5g.js +9174 -0
  351. package/dist/chunk-zctfbr1v.js +594 -0
  352. package/dist/chunk-zesnmkg3.js +2840 -0
  353. package/dist/chunk-zf47r1b7.js +94 -0
  354. package/dist/chunk-zghtdbat.js +253 -0
  355. package/dist/chunk-zpmwvd09.js +275 -0
  356. package/dist/chunk-zqncgyf6.js +127 -0
  357. package/dist/chunk-zr6mz36s.js +281 -0
  358. package/dist/chunk-zshzdw1n.js +141 -0
  359. package/dist/chunk-zx5kw7z4.js +40 -0
  360. package/dist/chunk-zzm33q8x.js +8 -0
  361. package/dist/cli.js +91 -0
  362. package/dist/download-ripgrep.js +24821 -0
  363. package/dist/vendor/audio-capture/arm64-darwin/audio-capture.node +0 -0
  364. package/dist/vendor/audio-capture/arm64-linux/audio-capture.node +0 -0
  365. package/dist/vendor/audio-capture/arm64-win32/audio-capture.node +0 -0
  366. package/dist/vendor/audio-capture/x64-darwin/audio-capture.node +0 -0
  367. package/dist/vendor/audio-capture/x64-linux/audio-capture.node +0 -0
  368. package/dist/vendor/audio-capture/x64-win32/audio-capture.node +0 -0
  369. package/dist/vendor/ripgrep/x64-win32/rg.exe +0 -0
  370. package/package.json +122 -0
  371. package/scripts/postinstall.cjs +319 -0
@@ -0,0 +1,861 @@
1
+ // @bun
2
+ import {
3
+ SandboxManager,
4
+ Select,
5
+ addToExcludedCommands,
6
+ init_sandbox_adapter,
7
+ init_select,
8
+ shouldAllowManagedSandboxDomainsOnly
9
+ } from "./chunk-vzgkedm9.js";
10
+ import"./chunk-46hdszda.js";
11
+ import"./chunk-hwfknpxv.js";
12
+ import"./chunk-4nspekjp.js";
13
+ import"./chunk-jzthz1bx.js";
14
+ import"./chunk-1gx78081.js";
15
+ import"./chunk-2gzv8nrw.js";
16
+ import"./chunk-ehtwnxpg.js";
17
+ import"./chunk-68w91pzt.js";
18
+ import"./chunk-s4cb0bcb.js";
19
+ import"./chunk-cgfdkzhb.js";
20
+ import"./chunk-bxcfz5gy.js";
21
+ import"./chunk-nebezy1d.js";
22
+ import"./chunk-wayfjcwt.js";
23
+ import"./chunk-kbm69rtz.js";
24
+ import"./chunk-j5bth84e.js";
25
+ import"./chunk-nxgsnh2y.js";
26
+ import {
27
+ init_useKeybinding
28
+ } from "./chunk-68ffk5qa.js";
29
+ import"./chunk-ps49ymvj.js";
30
+ import"./chunk-bmbq6nt1.js";
31
+ import"./chunk-15sfg4bs.js";
32
+ import"./chunk-p7vkh4wx.js";
33
+ import"./chunk-b0qptb1k.js";
34
+ import"./chunk-m87bhhqv.js";
35
+ import"./chunk-j3zhb8vv.js";
36
+ import"./chunk-b2fd462a.js";
37
+ import"./chunk-c11swzas.js";
38
+ import"./chunk-chsyvavm.js";
39
+ import"./chunk-5rv9c8yd.js";
40
+ import {
41
+ getSettingsFilePathForSource,
42
+ getSettings_DEPRECATED,
43
+ init_settings1 as init_settings
44
+ } from "./chunk-tp2jxmcx.js";
45
+ import"./chunk-z19sd3bt.js";
46
+ import"./chunk-1ax1znzj.js";
47
+ import"./chunk-wha6v7za.js";
48
+ import"./chunk-6nsd9606.js";
49
+ import {
50
+ getPlatform,
51
+ init_platform
52
+ } from "./chunk-xp61y5ba.js";
53
+ import"./chunk-64c1avct.js";
54
+ import"./chunk-8g5pe1gr.js";
55
+ import"./chunk-4cp6193g.js";
56
+ import"./chunk-8g747a8x.js";
57
+ import"./chunk-d7886r6a.js";
58
+ import"./chunk-yvtzznds.js";
59
+ import"./chunk-4jm600zv.js";
60
+ import"./chunk-qz2x630m.js";
61
+ import"./chunk-2f21meep.js";
62
+ import"./chunk-nrtksr2p.js";
63
+ import"./chunk-3c25bcsw.js";
64
+ import"./chunk-s3hsqf80.js";
65
+ import"./chunk-yyf72f78.js";
66
+ import"./chunk-cdz5yb0r.js";
67
+ import {
68
+ Link,
69
+ Pane,
70
+ Tab,
71
+ Tabs,
72
+ ThemedBox_default,
73
+ ThemedText,
74
+ color,
75
+ init_src,
76
+ useKeybindings,
77
+ useTabHeaderFocus,
78
+ useTheme
79
+ } from "./chunk-c7jwbe76.js";
80
+ import"./chunk-0vkfrmqm.js";
81
+ import {
82
+ require_jsx_dev_runtime
83
+ } from "./chunk-7sgtxrsc.js";
84
+ import"./chunk-0xjaqda8.js";
85
+ import"./chunk-x8d2ehd7.js";
86
+ import"./chunk-15m49c67.js";
87
+ import"./chunk-tdbz9gbm.js";
88
+ import"./chunk-0awwmrwr.js";
89
+ import"./chunk-qnfx3qtx.js";
90
+ import"./chunk-70eey1nh.js";
91
+ import"./chunk-1nk93fqz.js";
92
+ import"./chunk-s8kj6ajy.js";
93
+ import"./chunk-eenq3avg.js";
94
+ import"./chunk-7mqab3z7.js";
95
+ import"./chunk-5z28bqne.js";
96
+ import"./chunk-qajrkk97.js";
97
+ import"./chunk-phd1qfpc.js";
98
+ import"./chunk-fbv4apne.js";
99
+ import"./chunk-jaaxk89e.js";
100
+ import {
101
+ getCwdState,
102
+ init_state
103
+ } from "./chunk-k8vp0atq.js";
104
+ import"./chunk-vf612n57.js";
105
+ import"./chunk-07069jq1.js";
106
+ import"./chunk-d4mdda98.js";
107
+ import"./chunk-55raexh7.js";
108
+ import"./chunk-v9smspw2.js";
109
+ import"./chunk-v1kzp02e.js";
110
+ import"./chunk-7wm5s02e.js";
111
+ import"./chunk-b0kf00ff.js";
112
+ import"./chunk-netzwgv1.js";
113
+ import {
114
+ __esm,
115
+ __toESM
116
+ } from "./chunk-qp2qdcda.js";
117
+
118
+ // src/components/sandbox/SandboxConfigTab.tsx
119
+ function SandboxConfigTab() {
120
+ const isEnabled = SandboxManager.isSandboxingEnabled();
121
+ const depCheck = SandboxManager.checkDependencies();
122
+ const warningsNote = depCheck.warnings.length > 0 ? /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
123
+ marginTop: 1,
124
+ flexDirection: "column",
125
+ children: depCheck.warnings.map((w, i) => /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
126
+ dimColor: true,
127
+ children: w
128
+ }, i, false, undefined, this))
129
+ }, undefined, false, undefined, this) : null;
130
+ if (!isEnabled) {
131
+ return /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
132
+ flexDirection: "column",
133
+ paddingY: 1,
134
+ children: [
135
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
136
+ color: "subtle",
137
+ children: "Sandbox is not enabled"
138
+ }, undefined, false, undefined, this),
139
+ warningsNote
140
+ ]
141
+ }, undefined, true, undefined, this);
142
+ }
143
+ const fsReadConfig = SandboxManager.getFsReadConfig();
144
+ const fsWriteConfig = SandboxManager.getFsWriteConfig();
145
+ const networkConfig = SandboxManager.getNetworkRestrictionConfig();
146
+ const allowUnixSockets = SandboxManager.getAllowUnixSockets();
147
+ const excludedCommands = SandboxManager.getExcludedCommands();
148
+ const globPatternWarnings = SandboxManager.getLinuxGlobPatternWarnings();
149
+ return /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
150
+ flexDirection: "column",
151
+ paddingY: 1,
152
+ children: [
153
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
154
+ flexDirection: "column",
155
+ children: [
156
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
157
+ bold: true,
158
+ color: "permission",
159
+ children: "Excluded Commands:"
160
+ }, undefined, false, undefined, this),
161
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
162
+ dimColor: true,
163
+ children: excludedCommands.length > 0 ? excludedCommands.join(", ") : "None"
164
+ }, undefined, false, undefined, this)
165
+ ]
166
+ }, undefined, true, undefined, this),
167
+ fsReadConfig.denyOnly.length > 0 && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
168
+ marginTop: 1,
169
+ flexDirection: "column",
170
+ children: [
171
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
172
+ bold: true,
173
+ color: "permission",
174
+ children: "Filesystem Read Restrictions:"
175
+ }, undefined, false, undefined, this),
176
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
177
+ dimColor: true,
178
+ children: [
179
+ "Denied: ",
180
+ fsReadConfig.denyOnly.join(", ")
181
+ ]
182
+ }, undefined, true, undefined, this),
183
+ fsReadConfig.allowWithinDeny && fsReadConfig.allowWithinDeny.length > 0 && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
184
+ dimColor: true,
185
+ children: [
186
+ "Allowed within denied: ",
187
+ fsReadConfig.allowWithinDeny.join(", ")
188
+ ]
189
+ }, undefined, true, undefined, this)
190
+ ]
191
+ }, undefined, true, undefined, this),
192
+ fsWriteConfig.allowOnly.length > 0 && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
193
+ marginTop: 1,
194
+ flexDirection: "column",
195
+ children: [
196
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
197
+ bold: true,
198
+ color: "permission",
199
+ children: "Filesystem Write Restrictions:"
200
+ }, undefined, false, undefined, this),
201
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
202
+ dimColor: true,
203
+ children: [
204
+ "Allowed: ",
205
+ fsWriteConfig.allowOnly.join(", ")
206
+ ]
207
+ }, undefined, true, undefined, this),
208
+ fsWriteConfig.denyWithinAllow.length > 0 && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
209
+ dimColor: true,
210
+ children: [
211
+ "Denied within allowed: ",
212
+ fsWriteConfig.denyWithinAllow.join(", ")
213
+ ]
214
+ }, undefined, true, undefined, this)
215
+ ]
216
+ }, undefined, true, undefined, this),
217
+ (networkConfig.allowedHosts && networkConfig.allowedHosts.length > 0 || networkConfig.deniedHosts && networkConfig.deniedHosts.length > 0) && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
218
+ marginTop: 1,
219
+ flexDirection: "column",
220
+ children: [
221
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
222
+ bold: true,
223
+ color: "permission",
224
+ children: [
225
+ "Network Restrictions",
226
+ shouldAllowManagedSandboxDomainsOnly() ? " (Managed)" : "",
227
+ ":"
228
+ ]
229
+ }, undefined, true, undefined, this),
230
+ networkConfig.allowedHosts && networkConfig.allowedHosts.length > 0 && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
231
+ dimColor: true,
232
+ children: [
233
+ "Allowed: ",
234
+ networkConfig.allowedHosts.join(", ")
235
+ ]
236
+ }, undefined, true, undefined, this),
237
+ networkConfig.deniedHosts && networkConfig.deniedHosts.length > 0 && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
238
+ dimColor: true,
239
+ children: [
240
+ "Denied: ",
241
+ networkConfig.deniedHosts.join(", ")
242
+ ]
243
+ }, undefined, true, undefined, this)
244
+ ]
245
+ }, undefined, true, undefined, this),
246
+ allowUnixSockets && allowUnixSockets.length > 0 && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
247
+ marginTop: 1,
248
+ flexDirection: "column",
249
+ children: [
250
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
251
+ bold: true,
252
+ color: "permission",
253
+ children: "Allowed Unix Sockets:"
254
+ }, undefined, false, undefined, this),
255
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
256
+ dimColor: true,
257
+ children: allowUnixSockets.join(", ")
258
+ }, undefined, false, undefined, this)
259
+ ]
260
+ }, undefined, true, undefined, this),
261
+ globPatternWarnings.length > 0 && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
262
+ marginTop: 1,
263
+ flexDirection: "column",
264
+ children: [
265
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
266
+ bold: true,
267
+ color: "warning",
268
+ children: "\u26A0 Warning: Glob patterns not fully supported on Linux"
269
+ }, undefined, false, undefined, this),
270
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
271
+ dimColor: true,
272
+ children: [
273
+ "The following patterns will be ignored:",
274
+ " ",
275
+ globPatternWarnings.slice(0, 3).join(", "),
276
+ globPatternWarnings.length > 3 && ` (${globPatternWarnings.length - 3} more)`
277
+ ]
278
+ }, undefined, true, undefined, this)
279
+ ]
280
+ }, undefined, true, undefined, this),
281
+ warningsNote
282
+ ]
283
+ }, undefined, true, undefined, this);
284
+ }
285
+ var jsx_dev_runtime;
286
+ var init_SandboxConfigTab = __esm(() => {
287
+ init_src();
288
+ init_sandbox_adapter();
289
+ jsx_dev_runtime = __toESM(require_jsx_dev_runtime(), 1);
290
+ });
291
+
292
+ // src/components/sandbox/SandboxDependenciesTab.tsx
293
+ function SandboxDependenciesTab({ depCheck }) {
294
+ const platform = getPlatform();
295
+ const isMac = platform === "macos";
296
+ const rgMissing = depCheck.errors.some((e) => e.includes("ripgrep"));
297
+ const bwrapMissing = depCheck.errors.some((e) => e.includes("bwrap"));
298
+ const socatMissing = depCheck.errors.some((e) => e.includes("socat"));
299
+ const seccompMissing = depCheck.warnings.length > 0;
300
+ const otherErrors = depCheck.errors.filter((e) => !e.includes("ripgrep") && !e.includes("bwrap") && !e.includes("socat"));
301
+ const rgInstallHint = isMac ? "brew install ripgrep" : "apt install ripgrep";
302
+ return /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
303
+ flexDirection: "column",
304
+ paddingY: 1,
305
+ gap: 1,
306
+ children: [
307
+ isMac && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
308
+ flexDirection: "column",
309
+ children: /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
310
+ children: [
311
+ "seatbelt: ",
312
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
313
+ color: "success",
314
+ children: "built-in (macOS)"
315
+ }, undefined, false, undefined, this)
316
+ ]
317
+ }, undefined, true, undefined, this)
318
+ }, undefined, false, undefined, this),
319
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
320
+ flexDirection: "column",
321
+ children: [
322
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
323
+ children: [
324
+ "ripgrep (rg):",
325
+ " ",
326
+ rgMissing ? /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
327
+ color: "error",
328
+ children: "not found"
329
+ }, undefined, false, undefined, this) : /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
330
+ color: "success",
331
+ children: "found"
332
+ }, undefined, false, undefined, this)
333
+ ]
334
+ }, undefined, true, undefined, this),
335
+ rgMissing && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
336
+ dimColor: true,
337
+ children: [
338
+ " ",
339
+ "\xB7 ",
340
+ rgInstallHint
341
+ ]
342
+ }, undefined, true, undefined, this)
343
+ ]
344
+ }, undefined, true, undefined, this),
345
+ !isMac && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(jsx_dev_runtime2.Fragment, {
346
+ children: [
347
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
348
+ flexDirection: "column",
349
+ children: [
350
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
351
+ children: [
352
+ "bubblewrap (bwrap):",
353
+ " ",
354
+ bwrapMissing ? /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
355
+ color: "error",
356
+ children: "not installed"
357
+ }, undefined, false, undefined, this) : /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
358
+ color: "success",
359
+ children: "installed"
360
+ }, undefined, false, undefined, this)
361
+ ]
362
+ }, undefined, true, undefined, this),
363
+ bwrapMissing && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
364
+ dimColor: true,
365
+ children: [
366
+ " ",
367
+ "\xB7 apt install bubblewrap"
368
+ ]
369
+ }, undefined, true, undefined, this)
370
+ ]
371
+ }, undefined, true, undefined, this),
372
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
373
+ flexDirection: "column",
374
+ children: [
375
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
376
+ children: [
377
+ "socat:",
378
+ " ",
379
+ socatMissing ? /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
380
+ color: "error",
381
+ children: "not installed"
382
+ }, undefined, false, undefined, this) : /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
383
+ color: "success",
384
+ children: "installed"
385
+ }, undefined, false, undefined, this)
386
+ ]
387
+ }, undefined, true, undefined, this),
388
+ socatMissing && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
389
+ dimColor: true,
390
+ children: [
391
+ " ",
392
+ "\xB7 apt install socat"
393
+ ]
394
+ }, undefined, true, undefined, this)
395
+ ]
396
+ }, undefined, true, undefined, this),
397
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
398
+ flexDirection: "column",
399
+ children: [
400
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
401
+ children: [
402
+ "seccomp filter:",
403
+ " ",
404
+ seccompMissing ? /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
405
+ color: "warning",
406
+ children: "not installed"
407
+ }, undefined, false, undefined, this) : /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
408
+ color: "success",
409
+ children: "installed"
410
+ }, undefined, false, undefined, this),
411
+ seccompMissing && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
412
+ dimColor: true,
413
+ children: " (required to block unix domain sockets)"
414
+ }, undefined, false, undefined, this)
415
+ ]
416
+ }, undefined, true, undefined, this),
417
+ seccompMissing && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
418
+ flexDirection: "column",
419
+ children: [
420
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
421
+ dimColor: true,
422
+ children: [
423
+ " ",
424
+ "\xB7 npm install -g @anthropic-ai/sandbox-runtime"
425
+ ]
426
+ }, undefined, true, undefined, this),
427
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
428
+ dimColor: true,
429
+ children: [
430
+ " ",
431
+ "\xB7 or copy vendor/seccomp/* from sandbox-runtime and set"
432
+ ]
433
+ }, undefined, true, undefined, this),
434
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
435
+ dimColor: true,
436
+ children: [
437
+ " ",
438
+ "sandbox.seccomp.bpfPath and applyPath in settings.json"
439
+ ]
440
+ }, undefined, true, undefined, this)
441
+ ]
442
+ }, undefined, true, undefined, this)
443
+ ]
444
+ }, undefined, true, undefined, this)
445
+ ]
446
+ }, undefined, true, undefined, this),
447
+ otherErrors.map((err) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
448
+ color: "error",
449
+ children: err
450
+ }, err, false, undefined, this))
451
+ ]
452
+ }, undefined, true, undefined, this);
453
+ }
454
+ var jsx_dev_runtime2;
455
+ var init_SandboxDependenciesTab = __esm(() => {
456
+ init_src();
457
+ init_platform();
458
+ jsx_dev_runtime2 = __toESM(require_jsx_dev_runtime(), 1);
459
+ });
460
+
461
+ // src/components/sandbox/SandboxOverridesTab.tsx
462
+ function SandboxOverridesTab({ onComplete }) {
463
+ const isEnabled = SandboxManager.isSandboxingEnabled();
464
+ const isLocked = SandboxManager.areSandboxSettingsLockedByPolicy();
465
+ const currentAllowUnsandboxed = SandboxManager.areUnsandboxedCommandsAllowed();
466
+ if (!isEnabled) {
467
+ return /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedBox_default, {
468
+ flexDirection: "column",
469
+ paddingY: 1,
470
+ children: /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
471
+ color: "subtle",
472
+ children: "Sandbox is not enabled. Enable sandbox to configure override settings."
473
+ }, undefined, false, undefined, this)
474
+ }, undefined, false, undefined, this);
475
+ }
476
+ if (isLocked) {
477
+ return /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedBox_default, {
478
+ flexDirection: "column",
479
+ paddingY: 1,
480
+ children: [
481
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
482
+ color: "subtle",
483
+ children: "Override settings are managed by a higher-priority configuration and cannot be changed locally."
484
+ }, undefined, false, undefined, this),
485
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedBox_default, {
486
+ marginTop: 1,
487
+ children: /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
488
+ dimColor: true,
489
+ children: [
490
+ "Current setting:",
491
+ " ",
492
+ currentAllowUnsandboxed ? "Allow unsandboxed fallback" : "Strict sandbox mode"
493
+ ]
494
+ }, undefined, true, undefined, this)
495
+ }, undefined, false, undefined, this)
496
+ ]
497
+ }, undefined, true, undefined, this);
498
+ }
499
+ return /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(OverridesSelect, {
500
+ onComplete,
501
+ currentMode: currentAllowUnsandboxed ? "open" : "closed"
502
+ }, undefined, false, undefined, this);
503
+ }
504
+ function OverridesSelect({
505
+ onComplete,
506
+ currentMode
507
+ }) {
508
+ const [theme] = useTheme();
509
+ const { headerFocused, focusHeader } = useTabHeaderFocus();
510
+ const currentIndicator = color("success", theme)(`(current)`);
511
+ const options = [
512
+ {
513
+ label: currentMode === "open" ? `Allow unsandboxed fallback ${currentIndicator}` : "Allow unsandboxed fallback",
514
+ value: "open"
515
+ },
516
+ {
517
+ label: currentMode === "closed" ? `Strict sandbox mode ${currentIndicator}` : "Strict sandbox mode",
518
+ value: "closed"
519
+ }
520
+ ];
521
+ async function handleSelect(value) {
522
+ const mode = value;
523
+ await SandboxManager.setSandboxSettings({
524
+ allowUnsandboxedCommands: mode === "open"
525
+ });
526
+ const message = mode === "open" ? "\u2713 Unsandboxed fallback allowed - commands can run outside sandbox when necessary" : "\u2713 Strict sandbox mode - all commands must run in sandbox or be excluded via the `excludedCommands` option";
527
+ onComplete(message);
528
+ }
529
+ return /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedBox_default, {
530
+ flexDirection: "column",
531
+ paddingY: 1,
532
+ children: [
533
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedBox_default, {
534
+ marginBottom: 1,
535
+ children: /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
536
+ bold: true,
537
+ children: "Configure Overrides:"
538
+ }, undefined, false, undefined, this)
539
+ }, undefined, false, undefined, this),
540
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(Select, {
541
+ options,
542
+ onChange: handleSelect,
543
+ onCancel: () => onComplete(undefined, { display: "skip" }),
544
+ onUpFromFirstItem: focusHeader,
545
+ isDisabled: headerFocused
546
+ }, undefined, false, undefined, this),
547
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedBox_default, {
548
+ flexDirection: "column",
549
+ marginTop: 1,
550
+ gap: 1,
551
+ children: [
552
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
553
+ dimColor: true,
554
+ children: [
555
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
556
+ bold: true,
557
+ dimColor: true,
558
+ children: "Allow unsandboxed fallback:"
559
+ }, undefined, false, undefined, this),
560
+ " ",
561
+ "When a command fails due to sandbox restrictions, Claude can retry with dangerouslyDisableSandbox to run outside the sandbox (falling back to default permissions)."
562
+ ]
563
+ }, undefined, true, undefined, this),
564
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
565
+ dimColor: true,
566
+ children: [
567
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
568
+ bold: true,
569
+ dimColor: true,
570
+ children: "Strict sandbox mode:"
571
+ }, undefined, false, undefined, this),
572
+ " ",
573
+ "All bash commands invoked by the model must run in the sandbox unless they are explicitly listed in excludedCommands."
574
+ ]
575
+ }, undefined, true, undefined, this),
576
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
577
+ dimColor: true,
578
+ children: [
579
+ "Learn more:",
580
+ " ",
581
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(Link, {
582
+ url: "https://code.claude.com/docs/en/sandboxing#configure-sandboxing",
583
+ children: "code.claude.com/docs/en/sandboxing#configure-sandboxing"
584
+ }, undefined, false, undefined, this)
585
+ ]
586
+ }, undefined, true, undefined, this)
587
+ ]
588
+ }, undefined, true, undefined, this)
589
+ ]
590
+ }, undefined, true, undefined, this);
591
+ }
592
+ var jsx_dev_runtime3;
593
+ var init_SandboxOverridesTab = __esm(() => {
594
+ init_src();
595
+ init_sandbox_adapter();
596
+ init_select();
597
+ jsx_dev_runtime3 = __toESM(require_jsx_dev_runtime(), 1);
598
+ });
599
+
600
+ // src/components/sandbox/SandboxSettings.tsx
601
+ function SandboxSettings({
602
+ onComplete,
603
+ depCheck
604
+ }) {
605
+ const [theme] = useTheme();
606
+ const currentEnabled = SandboxManager.isSandboxingEnabled();
607
+ const currentAutoAllow = SandboxManager.isAutoAllowBashIfSandboxedEnabled();
608
+ const hasWarnings = depCheck.warnings.length > 0;
609
+ const settings = getSettings_DEPRECATED();
610
+ const allowAllUnixSockets = settings.sandbox?.network?.allowAllUnixSockets;
611
+ const showSocketWarning = hasWarnings && !allowAllUnixSockets;
612
+ const getCurrentMode = () => {
613
+ if (!currentEnabled)
614
+ return "disabled";
615
+ if (currentAutoAllow)
616
+ return "auto-allow";
617
+ return "regular";
618
+ };
619
+ const currentMode = getCurrentMode();
620
+ const currentIndicator = color("success", theme)(`(current)`);
621
+ const options = [
622
+ {
623
+ label: currentMode === "auto-allow" ? `Sandbox BashTool, with auto-allow ${currentIndicator}` : "Sandbox BashTool, with auto-allow",
624
+ value: "auto-allow"
625
+ },
626
+ {
627
+ label: currentMode === "regular" ? `Sandbox BashTool, with regular permissions ${currentIndicator}` : "Sandbox BashTool, with regular permissions",
628
+ value: "regular"
629
+ },
630
+ {
631
+ label: currentMode === "disabled" ? `No Sandbox ${currentIndicator}` : "No Sandbox",
632
+ value: "disabled"
633
+ }
634
+ ];
635
+ async function handleSelect(value) {
636
+ const mode = value;
637
+ switch (mode) {
638
+ case "auto-allow":
639
+ await SandboxManager.setSandboxSettings({
640
+ enabled: true,
641
+ autoAllowBashIfSandboxed: true
642
+ });
643
+ onComplete("\u2713 Sandbox enabled with auto-allow for bash commands");
644
+ break;
645
+ case "regular":
646
+ await SandboxManager.setSandboxSettings({
647
+ enabled: true,
648
+ autoAllowBashIfSandboxed: false
649
+ });
650
+ onComplete("\u2713 Sandbox enabled with regular bash permissions");
651
+ break;
652
+ case "disabled":
653
+ await SandboxManager.setSandboxSettings({
654
+ enabled: false,
655
+ autoAllowBashIfSandboxed: false
656
+ });
657
+ onComplete("\u25CB Sandbox disabled");
658
+ break;
659
+ }
660
+ }
661
+ useKeybindings({
662
+ "confirm:no": () => onComplete(undefined, { display: "skip" })
663
+ }, { context: "Settings" });
664
+ const modeTab = /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Tab, {
665
+ title: "Mode",
666
+ children: /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(SandboxModeTab, {
667
+ showSocketWarning,
668
+ options,
669
+ onSelect: handleSelect,
670
+ onComplete
671
+ }, undefined, false, undefined, this)
672
+ }, "mode", false, undefined, this);
673
+ const overridesTab = /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Tab, {
674
+ title: "Overrides",
675
+ children: /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(SandboxOverridesTab, {
676
+ onComplete
677
+ }, undefined, false, undefined, this)
678
+ }, "overrides", false, undefined, this);
679
+ const configTab = /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Tab, {
680
+ title: "Config",
681
+ children: /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(SandboxConfigTab, {}, undefined, false, undefined, this)
682
+ }, "config", false, undefined, this);
683
+ const hasErrors = depCheck.errors.length > 0;
684
+ const tabs = hasErrors ? [
685
+ /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Tab, {
686
+ title: "Dependencies",
687
+ children: /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(SandboxDependenciesTab, {
688
+ depCheck
689
+ }, undefined, false, undefined, this)
690
+ }, "dependencies", false, undefined, this)
691
+ ] : [
692
+ modeTab,
693
+ ...hasWarnings ? [
694
+ /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Tab, {
695
+ title: "Dependencies",
696
+ children: /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(SandboxDependenciesTab, {
697
+ depCheck
698
+ }, undefined, false, undefined, this)
699
+ }, "dependencies", false, undefined, this)
700
+ ] : [],
701
+ overridesTab,
702
+ configTab
703
+ ];
704
+ return /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Pane, {
705
+ color: "permission",
706
+ children: /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Tabs, {
707
+ title: "Sandbox:",
708
+ color: "permission",
709
+ defaultTab: "Mode",
710
+ children: tabs
711
+ }, undefined, false, undefined, this)
712
+ }, undefined, false, undefined, this);
713
+ }
714
+ function SandboxModeTab({
715
+ showSocketWarning,
716
+ options,
717
+ onSelect,
718
+ onComplete
719
+ }) {
720
+ const { headerFocused, focusHeader } = useTabHeaderFocus();
721
+ return /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ThemedBox_default, {
722
+ flexDirection: "column",
723
+ paddingY: 1,
724
+ children: [
725
+ showSocketWarning && /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ThemedBox_default, {
726
+ marginBottom: 1,
727
+ children: /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ThemedText, {
728
+ color: "warning",
729
+ children: "Cannot block unix domain sockets (see Dependencies tab)"
730
+ }, undefined, false, undefined, this)
731
+ }, undefined, false, undefined, this),
732
+ /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ThemedBox_default, {
733
+ marginBottom: 1,
734
+ children: /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ThemedText, {
735
+ bold: true,
736
+ children: "Configure Mode:"
737
+ }, undefined, false, undefined, this)
738
+ }, undefined, false, undefined, this),
739
+ /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Select, {
740
+ options,
741
+ onChange: onSelect,
742
+ onCancel: () => onComplete(undefined, { display: "skip" }),
743
+ onUpFromFirstItem: focusHeader,
744
+ isDisabled: headerFocused
745
+ }, undefined, false, undefined, this),
746
+ /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ThemedBox_default, {
747
+ flexDirection: "column",
748
+ marginTop: 1,
749
+ gap: 1,
750
+ children: [
751
+ /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ThemedText, {
752
+ dimColor: true,
753
+ children: [
754
+ /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ThemedText, {
755
+ bold: true,
756
+ dimColor: true,
757
+ children: "Auto-allow mode:"
758
+ }, undefined, false, undefined, this),
759
+ " ",
760
+ "Commands will try to run in the sandbox automatically, and attempts to run outside of the sandbox fallback to regular permissions. Explicit ask/deny rules are always respected."
761
+ ]
762
+ }, undefined, true, undefined, this),
763
+ /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(ThemedText, {
764
+ dimColor: true,
765
+ children: [
766
+ "Learn more:",
767
+ " ",
768
+ /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(Link, {
769
+ url: "https://code.claude.com/docs/en/sandboxing",
770
+ children: "code.claude.com/docs/en/sandboxing"
771
+ }, undefined, false, undefined, this)
772
+ ]
773
+ }, undefined, true, undefined, this)
774
+ ]
775
+ }, undefined, true, undefined, this)
776
+ ]
777
+ }, undefined, true, undefined, this);
778
+ }
779
+ var jsx_dev_runtime4;
780
+ var init_SandboxSettings = __esm(() => {
781
+ init_src();
782
+ init_useKeybinding();
783
+ init_sandbox_adapter();
784
+ init_settings();
785
+ init_select();
786
+ init_SandboxConfigTab();
787
+ init_SandboxDependenciesTab();
788
+ init_SandboxOverridesTab();
789
+ jsx_dev_runtime4 = __toESM(require_jsx_dev_runtime(), 1);
790
+ });
791
+
792
+ // src/commands/sandbox-toggle/sandbox-toggle.tsx
793
+ import { relative } from "path";
794
+ async function call(onDone, _context, args) {
795
+ const settings = getSettings_DEPRECATED();
796
+ const themeName = settings.theme || "light";
797
+ const platform = getPlatform();
798
+ if (!SandboxManager.isSupportedPlatform()) {
799
+ const errorMessage = platform === "wsl" ? "Error: Sandboxing requires WSL2. WSL1 is not supported." : "Error: Sandboxing is currently only supported on macOS, Linux, and WSL2.";
800
+ const message = color("error", themeName)(errorMessage);
801
+ onDone(message);
802
+ return null;
803
+ }
804
+ const depCheck = SandboxManager.checkDependencies();
805
+ if (!SandboxManager.isPlatformInEnabledList()) {
806
+ const message = color("error", themeName)(`Error: Sandboxing is disabled for this platform (${platform}) via the enabledPlatforms setting.`);
807
+ onDone(message);
808
+ return null;
809
+ }
810
+ if (SandboxManager.areSandboxSettingsLockedByPolicy()) {
811
+ const message = color("error", themeName)("Error: Sandbox settings are overridden by a higher-priority configuration and cannot be changed locally.");
812
+ onDone(message);
813
+ return null;
814
+ }
815
+ const trimmedArgs = args?.trim() || "";
816
+ if (!trimmedArgs) {
817
+ return /* @__PURE__ */ jsx_dev_runtime5.jsxDEV(SandboxSettings, {
818
+ onComplete: onDone,
819
+ depCheck
820
+ }, undefined, false, undefined, this);
821
+ }
822
+ if (trimmedArgs) {
823
+ const parts = trimmedArgs.split(" ");
824
+ const subcommand = parts[0];
825
+ if (subcommand === "exclude") {
826
+ const commandPattern = trimmedArgs.slice("exclude ".length).trim();
827
+ if (!commandPattern) {
828
+ const message2 = color("error", themeName)('Error: Please provide a command pattern to exclude (e.g., /sandbox exclude "npm run test:*")');
829
+ onDone(message2);
830
+ return null;
831
+ }
832
+ const cleanPattern = commandPattern.replace(/^["']|["']$/g, "");
833
+ addToExcludedCommands(cleanPattern);
834
+ const localSettingsPath = getSettingsFilePathForSource("localSettings");
835
+ const relativePath = localSettingsPath ? relative(getCwdState(), localSettingsPath) : ".claude/settings.local.json";
836
+ const message = color("success", themeName)(`Added "${cleanPattern}" to excluded commands in ${relativePath}`);
837
+ onDone(message);
838
+ return null;
839
+ } else {
840
+ const message = color("error", themeName)(`Error: Unknown subcommand "${subcommand}". Available subcommand: exclude`);
841
+ onDone(message);
842
+ return null;
843
+ }
844
+ }
845
+ return null;
846
+ }
847
+ var jsx_dev_runtime5;
848
+ var init_sandbox_toggle = __esm(() => {
849
+ init_state();
850
+ init_SandboxSettings();
851
+ init_src();
852
+ init_platform();
853
+ init_sandbox_adapter();
854
+ init_settings();
855
+ jsx_dev_runtime5 = __toESM(require_jsx_dev_runtime(), 1);
856
+ });
857
+ init_sandbox_toggle();
858
+
859
+ export {
860
+ call
861
+ };