@namzu/cli 36.4.0 → 36.5.0

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 (233) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/README.md +1 -1
  3. package/dist/bin.js +1 -1
  4. package/dist/chunks/{acp-ERY7R2OY.js → acp-QQHLC6HY.js} +31 -31
  5. package/dist/chunks/{activity-command-KJXWOIHO.js → activity-command-7A2NGBRO.js} +10 -10
  6. package/dist/chunks/{add-OQ2SSEQT.js → add-VK7JVGYN.js} +16 -16
  7. package/dist/chunks/{agent-RZNIDLRL.js → agent-IYFZOSN7.js} +22 -22
  8. package/dist/chunks/agent-session-FXZ4RXQH.js +46 -0
  9. package/dist/chunks/{archive-LUOLQEUE.js → archive-7A5RLRRZ.js} +8 -8
  10. package/dist/chunks/{bin-main-AYEHZYZV.js → bin-main-QWTSTI5W.js} +3 -3
  11. package/dist/chunks/{browser-3POB2OSK.js → browser-Z4JR5SV4.js} +6 -6
  12. package/dist/chunks/{chat-65V4NXAF.js → chat-452HRD23.js} +13 -13
  13. package/dist/chunks/{chunk-RDFZIPD5.js → chunk-2IWLDZNE.js} +2 -2
  14. package/dist/chunks/{chunk-MGFWBSDV.js → chunk-2Y3V7YTY.js} +2 -2
  15. package/dist/chunks/{chunk-2DECDD7E.js → chunk-3I5CIWA6.js} +3 -3
  16. package/dist/chunks/{chunk-II72PLUA.js → chunk-3N54T4H4.js} +2 -2
  17. package/dist/chunks/{chunk-MH3JD7CF.js → chunk-4BBUZZDS.js} +2 -2
  18. package/dist/chunks/{chunk-6T4UA6AV.js → chunk-5TIOW3QX.js} +7 -7
  19. package/dist/chunks/{chunk-6ZEROVY4.js → chunk-6G3TX6QD.js} +3 -3
  20. package/dist/chunks/{chunk-4JPJV4QO.js → chunk-6YVH6LAU.js} +4 -4
  21. package/dist/chunks/{chunk-BPWCZOTB.js → chunk-7IKMMZ7R.js} +2 -2
  22. package/dist/chunks/{chunk-5ZRZZKPU.js → chunk-7NGZ5XGK.js} +9 -12
  23. package/dist/chunks/chunk-7NGZ5XGK.js.map +6 -0
  24. package/dist/chunks/{chunk-IQKT222K.js → chunk-7RP7HIBA.js} +2 -2
  25. package/dist/chunks/{chunk-XC2EJGYI.js → chunk-7TW2GZ5D.js} +30 -26
  26. package/dist/chunks/chunk-7TW2GZ5D.js.map +6 -0
  27. package/dist/chunks/{chunk-4BCW647F.js → chunk-AJLZB6G6.js} +3 -3
  28. package/dist/chunks/{chunk-WWTZUAII.js → chunk-AM6K4LK2.js} +2 -2
  29. package/dist/chunks/{chunk-PAE4DIXR.js → chunk-BQYV3WGF.js} +2 -2
  30. package/dist/chunks/{chunk-ZJXRPK5W.js → chunk-CAOXGCUA.js} +3 -3
  31. package/dist/chunks/{chunk-IGHTIUKD.js → chunk-DQNJEGUV.js} +2 -2
  32. package/dist/chunks/{chunk-VSZX76G4.js → chunk-DSODVSO7.js} +9 -9
  33. package/dist/chunks/{chunk-5YWWQUJ5.js → chunk-E2OJSRDE.js} +17 -16
  34. package/dist/chunks/{chunk-5YWWQUJ5.js.map → chunk-E2OJSRDE.js.map} +2 -2
  35. package/dist/chunks/{chunk-KDOMBH7Q.js → chunk-EZ26PYSK.js} +2 -2
  36. package/dist/chunks/{chunk-4TZPG75O.js → chunk-FPMRK6W6.js} +3 -3
  37. package/dist/chunks/{chunk-JHPCQLRT.js → chunk-GELWAUNY.js} +3 -3
  38. package/dist/chunks/{chunk-KZJUG4HN.js → chunk-GKVDZZN6.js} +2 -2
  39. package/dist/chunks/{chunk-5EDECUGH.js → chunk-HBWHJCNO.js} +10 -10
  40. package/dist/chunks/{chunk-ZORZAWSH.js → chunk-HNX3JZWU.js} +2 -2
  41. package/dist/chunks/{chunk-EX7TQFIQ.js → chunk-HUTSLFLA.js} +4 -4
  42. package/dist/chunks/{chunk-JRVKQITY.js → chunk-IFBWLO7J.js} +4 -4
  43. package/dist/chunks/{chunk-FAPXHMTL.js → chunk-J7GTTLAZ.js} +4 -4
  44. package/dist/chunks/{chunk-LH4NC5YB.js → chunk-KGKBG3U7.js} +3 -3
  45. package/dist/chunks/{chunk-Q4AASGFT.js → chunk-KI7GP25X.js} +3 -3
  46. package/dist/chunks/{chunk-ZPCQBKVG.js → chunk-KJLJVK4Y.js} +6 -6
  47. package/dist/chunks/{chunk-HZ5AGRNO.js → chunk-KR2AARGO.js} +2 -2
  48. package/dist/chunks/{chunk-BXWH4UAN.js → chunk-KRUTBAWS.js} +5 -5
  49. package/dist/chunks/{chunk-COPHNRLH.js → chunk-KX2JZX4Q.js} +12 -12
  50. package/dist/chunks/{chunk-RSRL3R7C.js → chunk-LNBO3KD2.js} +4 -4
  51. package/dist/chunks/{chunk-CYYGWTKF.js → chunk-OF6QIV42.js} +2 -2
  52. package/dist/chunks/{chunk-NS7TSLQK.js → chunk-OIGLY4EG.js} +2 -2
  53. package/dist/chunks/{chunk-UEDWEOYF.js → chunk-OQHSD4WX.js} +4 -4
  54. package/dist/chunks/{chunk-WIPSZYIM.js → chunk-P6AM76US.js} +4 -4
  55. package/dist/chunks/{chunk-MEWIPARY.js → chunk-PDSZNG3C.js} +3 -3
  56. package/dist/chunks/{chunk-K5JGJIJV.js → chunk-PGEDH5H5.js} +3 -3
  57. package/dist/chunks/{chunk-UH5LZDKB.js → chunk-QB6CLDHT.js} +8 -8
  58. package/dist/chunks/{chunk-DHXMHWOW.js → chunk-QLB4KNQA.js} +21 -6
  59. package/dist/chunks/chunk-QLB4KNQA.js.map +6 -0
  60. package/dist/chunks/{chunk-QZSP4UWJ.js → chunk-QNHDYR4J.js} +13 -13
  61. package/dist/chunks/{chunk-6RJSJGZF.js → chunk-QQ2TBG2P.js} +3 -3
  62. package/dist/chunks/{chunk-5VB3X4UB.js → chunk-QXUJNVPO.js} +2 -2
  63. package/dist/chunks/{chunk-O5FRXERG.js → chunk-R5OZ6DCD.js} +2 -2
  64. package/dist/chunks/{chunk-TCHEQRJE.js → chunk-R5QMJRF7.js} +4 -4
  65. package/dist/chunks/{chunk-GTJVK5TJ.js → chunk-TC7HMH6P.js} +2 -2
  66. package/dist/chunks/{chunk-RAKBF6PY.js → chunk-WBR7JG42.js} +156 -40
  67. package/dist/chunks/chunk-WBR7JG42.js.map +6 -0
  68. package/dist/chunks/{chunk-WDIIFX5X.js → chunk-WEVDA4IS.js} +6 -6
  69. package/dist/chunks/{chunk-ZSPSXPRH.js → chunk-XMN2OSBG.js} +4 -4
  70. package/dist/chunks/{chunk-3N3CDMDI.js → chunk-ZBWLULPM.js} +4 -4
  71. package/dist/chunks/{chunk-MUUBLY7G.js → chunk-ZHWB7GXV.js} +2 -2
  72. package/dist/chunks/{cli-runtime-Q2NCEXXY.js → cli-runtime-KHQJO3WG.js} +8 -8
  73. package/dist/chunks/{commands-QY4JZ2D5.js → commands-GOFR6DU5.js} +5 -5
  74. package/dist/chunks/{crash-report-HIJHT4UR.js → crash-report-BEZJS4TE.js} +6 -6
  75. package/dist/chunks/{dist-WVLCXQIR.js → dist-2PTH7PME.js} +2 -2
  76. package/dist/chunks/{dist-AEKRLZ3M.js → dist-AVGYNTRY.js} +2 -2
  77. package/dist/chunks/{dist-X5AY7IYY.js → dist-B3WFU7LE.js} +2 -2
  78. package/dist/chunks/{dist-YW5SKAUO.js → dist-GR6IFO7M.js} +2 -2
  79. package/dist/chunks/{dist-YGBNYJXU.js → dist-OLFVZDAR.js} +2 -2
  80. package/dist/chunks/{dist-M4QJEZ6W.js → dist-TFSA6QEB.js} +2 -2
  81. package/dist/chunks/{dist-BT2HNR4P.js → dist-ZIZ457D5.js} +2 -2
  82. package/dist/chunks/{doctor-NSYFMZUT.js → doctor-Y366MZD7.js} +6 -6
  83. package/dist/chunks/{drain-KYJSJS32.js → drain-CQELENIA.js} +10 -10
  84. package/dist/chunks/{eval-TH3WQFI2.js → eval-IUIKSMIP.js} +2 -2
  85. package/dist/chunks/{exec-VOZ3VAVV.js → exec-CUF3USRR.js} +22 -22
  86. package/dist/chunks/{home-RAOAISVY.js → home-OZK7SYKC.js} +3 -3
  87. package/dist/chunks/{host-queries-U4CWSBUK.js → host-queries-OZ3GTNQB.js} +13 -13
  88. package/dist/chunks/{lifecycle-PXCABRZ5.js → lifecycle-EDPBG4CF.js} +23 -23
  89. package/dist/chunks/{list-TIF25QTK.js → list-OKA3E7GI.js} +12 -12
  90. package/dist/chunks/{login-J42GU7EB.js → login-NMPAF4D4.js} +8 -8
  91. package/dist/chunks/{logs-BGBHTVT3.js → logs-BLEDKYPA.js} +4 -4
  92. package/dist/chunks/{mcp-WLA36KLN.js → mcp-SO43UZSA.js} +15 -15
  93. package/dist/chunks/{message-command-KQ2ENU5G.js → message-command-4CG7SPQA.js} +29 -29
  94. package/dist/chunks/{operator-tools-4NS32VMF.js → operator-tools-BRBJUOP5.js} +11 -11
  95. package/dist/chunks/{output-schema-VUNV5PSI.js → output-schema-Q74INRDV.js} +3 -3
  96. package/dist/chunks/{pal-JLYSYJZ4.js → pal-Q4LLIL3Z.js} +11 -11
  97. package/dist/chunks/{providers-6S2OD65T.js → providers-L4SRCWQ5.js} +6 -6
  98. package/dist/chunks/{resident-FWCWLKM2.js → resident-KROFLWQD.js} +18 -18
  99. package/dist/chunks/{resume-command-R22OK5SL.js → resume-command-433WHYYJ.js} +4 -4
  100. package/dist/chunks/{schedule-JP3VSIXA.js → schedule-YTD3NQTH.js} +8 -8
  101. package/dist/chunks/{service-R7SRZ22P.js → service-X2BXZORB.js} +22 -22
  102. package/dist/chunks/session-step-NTNPJVXZ.js +26 -0
  103. package/dist/chunks/{skills-MOVGIR6S.js → skills-6U4GTACH.js} +8 -8
  104. package/dist/chunks/{state-GVVLT2YD.js → state-JKH362WC.js} +2 -2
  105. package/dist/chunks/{store-WQ5PM4Z2.js → store-LMUDVSKO.js} +4 -4
  106. package/dist/chunks/{store-IAAJ4GWU.js → store-T6ITZS2N.js} +8 -8
  107. package/dist/chunks/{store-VVOUETR5.js → store-ULDTJXKN.js} +6 -6
  108. package/dist/chunks/{tui-23RXXZL2.js → tui-T5O5A7F3.js} +114 -112
  109. package/dist/chunks/tui-T5O5A7F3.js.map +6 -0
  110. package/dist/chunks/{upgrade-2FXGSXCP.js → upgrade-FUJFUSY5.js} +2 -2
  111. package/dist/chunks/{worktree-FOHNJC3S.js → worktree-KJYHKRHL.js} +10 -10
  112. package/dist/cli.d.ts.map +1 -1
  113. package/dist/index.js +9 -9
  114. package/dist/integrations/resident/runner-worker.js +16 -16
  115. package/dist/permissions/mode.d.ts +17 -2
  116. package/dist/permissions/mode.d.ts.map +1 -1
  117. package/dist/permissions/session-allow.d.ts +65 -0
  118. package/dist/permissions/session-allow.d.ts.map +1 -0
  119. package/dist/tui/App.d.ts.map +1 -1
  120. package/dist/tui/PermissionOverlay.d.ts +35 -16
  121. package/dist/tui/PermissionOverlay.d.ts.map +1 -1
  122. package/dist/tui/agent.d.ts +20 -18
  123. package/dist/tui/agent.d.ts.map +1 -1
  124. package/dist/tui/permission-review.d.ts +0 -16
  125. package/dist/tui/permission-review.d.ts.map +1 -1
  126. package/dist/tui/slashCommands.d.ts +0 -13
  127. package/dist/tui/slashCommands.d.ts.map +1 -1
  128. package/dist/tui/types.d.ts +2 -0
  129. package/dist/tui/types.d.ts.map +1 -1
  130. package/package.json +10 -10
  131. package/dist/chunks/agent-session-NATAL4BA.js +0 -46
  132. package/dist/chunks/chunk-5ZRZZKPU.js.map +0 -6
  133. package/dist/chunks/chunk-DHXMHWOW.js.map +0 -6
  134. package/dist/chunks/chunk-RAKBF6PY.js.map +0 -6
  135. package/dist/chunks/chunk-XC2EJGYI.js.map +0 -6
  136. package/dist/chunks/session-step-L4HQYX5J.js +0 -26
  137. package/dist/chunks/tui-23RXXZL2.js.map +0 -6
  138. /package/dist/chunks/{acp-ERY7R2OY.js.map → acp-QQHLC6HY.js.map} +0 -0
  139. /package/dist/chunks/{activity-command-KJXWOIHO.js.map → activity-command-7A2NGBRO.js.map} +0 -0
  140. /package/dist/chunks/{add-OQ2SSEQT.js.map → add-VK7JVGYN.js.map} +0 -0
  141. /package/dist/chunks/{agent-RZNIDLRL.js.map → agent-IYFZOSN7.js.map} +0 -0
  142. /package/dist/chunks/{agent-session-NATAL4BA.js.map → agent-session-FXZ4RXQH.js.map} +0 -0
  143. /package/dist/chunks/{archive-LUOLQEUE.js.map → archive-7A5RLRRZ.js.map} +0 -0
  144. /package/dist/chunks/{bin-main-AYEHZYZV.js.map → bin-main-QWTSTI5W.js.map} +0 -0
  145. /package/dist/chunks/{browser-3POB2OSK.js.map → browser-Z4JR5SV4.js.map} +0 -0
  146. /package/dist/chunks/{chat-65V4NXAF.js.map → chat-452HRD23.js.map} +0 -0
  147. /package/dist/chunks/{chunk-RDFZIPD5.js.map → chunk-2IWLDZNE.js.map} +0 -0
  148. /package/dist/chunks/{chunk-MGFWBSDV.js.map → chunk-2Y3V7YTY.js.map} +0 -0
  149. /package/dist/chunks/{chunk-2DECDD7E.js.map → chunk-3I5CIWA6.js.map} +0 -0
  150. /package/dist/chunks/{chunk-II72PLUA.js.map → chunk-3N54T4H4.js.map} +0 -0
  151. /package/dist/chunks/{chunk-MH3JD7CF.js.map → chunk-4BBUZZDS.js.map} +0 -0
  152. /package/dist/chunks/{chunk-6T4UA6AV.js.map → chunk-5TIOW3QX.js.map} +0 -0
  153. /package/dist/chunks/{chunk-6ZEROVY4.js.map → chunk-6G3TX6QD.js.map} +0 -0
  154. /package/dist/chunks/{chunk-4JPJV4QO.js.map → chunk-6YVH6LAU.js.map} +0 -0
  155. /package/dist/chunks/{chunk-BPWCZOTB.js.map → chunk-7IKMMZ7R.js.map} +0 -0
  156. /package/dist/chunks/{chunk-IQKT222K.js.map → chunk-7RP7HIBA.js.map} +0 -0
  157. /package/dist/chunks/{chunk-4BCW647F.js.map → chunk-AJLZB6G6.js.map} +0 -0
  158. /package/dist/chunks/{chunk-WWTZUAII.js.map → chunk-AM6K4LK2.js.map} +0 -0
  159. /package/dist/chunks/{chunk-PAE4DIXR.js.map → chunk-BQYV3WGF.js.map} +0 -0
  160. /package/dist/chunks/{chunk-ZJXRPK5W.js.map → chunk-CAOXGCUA.js.map} +0 -0
  161. /package/dist/chunks/{chunk-IGHTIUKD.js.map → chunk-DQNJEGUV.js.map} +0 -0
  162. /package/dist/chunks/{chunk-VSZX76G4.js.map → chunk-DSODVSO7.js.map} +0 -0
  163. /package/dist/chunks/{chunk-KDOMBH7Q.js.map → chunk-EZ26PYSK.js.map} +0 -0
  164. /package/dist/chunks/{chunk-4TZPG75O.js.map → chunk-FPMRK6W6.js.map} +0 -0
  165. /package/dist/chunks/{chunk-JHPCQLRT.js.map → chunk-GELWAUNY.js.map} +0 -0
  166. /package/dist/chunks/{chunk-KZJUG4HN.js.map → chunk-GKVDZZN6.js.map} +0 -0
  167. /package/dist/chunks/{chunk-5EDECUGH.js.map → chunk-HBWHJCNO.js.map} +0 -0
  168. /package/dist/chunks/{chunk-ZORZAWSH.js.map → chunk-HNX3JZWU.js.map} +0 -0
  169. /package/dist/chunks/{chunk-EX7TQFIQ.js.map → chunk-HUTSLFLA.js.map} +0 -0
  170. /package/dist/chunks/{chunk-JRVKQITY.js.map → chunk-IFBWLO7J.js.map} +0 -0
  171. /package/dist/chunks/{chunk-FAPXHMTL.js.map → chunk-J7GTTLAZ.js.map} +0 -0
  172. /package/dist/chunks/{chunk-LH4NC5YB.js.map → chunk-KGKBG3U7.js.map} +0 -0
  173. /package/dist/chunks/{chunk-Q4AASGFT.js.map → chunk-KI7GP25X.js.map} +0 -0
  174. /package/dist/chunks/{chunk-ZPCQBKVG.js.map → chunk-KJLJVK4Y.js.map} +0 -0
  175. /package/dist/chunks/{chunk-HZ5AGRNO.js.map → chunk-KR2AARGO.js.map} +0 -0
  176. /package/dist/chunks/{chunk-BXWH4UAN.js.map → chunk-KRUTBAWS.js.map} +0 -0
  177. /package/dist/chunks/{chunk-COPHNRLH.js.map → chunk-KX2JZX4Q.js.map} +0 -0
  178. /package/dist/chunks/{chunk-RSRL3R7C.js.map → chunk-LNBO3KD2.js.map} +0 -0
  179. /package/dist/chunks/{chunk-CYYGWTKF.js.map → chunk-OF6QIV42.js.map} +0 -0
  180. /package/dist/chunks/{chunk-NS7TSLQK.js.map → chunk-OIGLY4EG.js.map} +0 -0
  181. /package/dist/chunks/{chunk-UEDWEOYF.js.map → chunk-OQHSD4WX.js.map} +0 -0
  182. /package/dist/chunks/{chunk-WIPSZYIM.js.map → chunk-P6AM76US.js.map} +0 -0
  183. /package/dist/chunks/{chunk-MEWIPARY.js.map → chunk-PDSZNG3C.js.map} +0 -0
  184. /package/dist/chunks/{chunk-K5JGJIJV.js.map → chunk-PGEDH5H5.js.map} +0 -0
  185. /package/dist/chunks/{chunk-UH5LZDKB.js.map → chunk-QB6CLDHT.js.map} +0 -0
  186. /package/dist/chunks/{chunk-QZSP4UWJ.js.map → chunk-QNHDYR4J.js.map} +0 -0
  187. /package/dist/chunks/{chunk-6RJSJGZF.js.map → chunk-QQ2TBG2P.js.map} +0 -0
  188. /package/dist/chunks/{chunk-5VB3X4UB.js.map → chunk-QXUJNVPO.js.map} +0 -0
  189. /package/dist/chunks/{chunk-O5FRXERG.js.map → chunk-R5OZ6DCD.js.map} +0 -0
  190. /package/dist/chunks/{chunk-TCHEQRJE.js.map → chunk-R5QMJRF7.js.map} +0 -0
  191. /package/dist/chunks/{chunk-GTJVK5TJ.js.map → chunk-TC7HMH6P.js.map} +0 -0
  192. /package/dist/chunks/{chunk-WDIIFX5X.js.map → chunk-WEVDA4IS.js.map} +0 -0
  193. /package/dist/chunks/{chunk-ZSPSXPRH.js.map → chunk-XMN2OSBG.js.map} +0 -0
  194. /package/dist/chunks/{chunk-3N3CDMDI.js.map → chunk-ZBWLULPM.js.map} +0 -0
  195. /package/dist/chunks/{chunk-MUUBLY7G.js.map → chunk-ZHWB7GXV.js.map} +0 -0
  196. /package/dist/chunks/{cli-runtime-Q2NCEXXY.js.map → cli-runtime-KHQJO3WG.js.map} +0 -0
  197. /package/dist/chunks/{commands-QY4JZ2D5.js.map → commands-GOFR6DU5.js.map} +0 -0
  198. /package/dist/chunks/{crash-report-HIJHT4UR.js.map → crash-report-BEZJS4TE.js.map} +0 -0
  199. /package/dist/chunks/{dist-WVLCXQIR.js.map → dist-2PTH7PME.js.map} +0 -0
  200. /package/dist/chunks/{dist-AEKRLZ3M.js.map → dist-AVGYNTRY.js.map} +0 -0
  201. /package/dist/chunks/{dist-X5AY7IYY.js.map → dist-B3WFU7LE.js.map} +0 -0
  202. /package/dist/chunks/{dist-YW5SKAUO.js.map → dist-GR6IFO7M.js.map} +0 -0
  203. /package/dist/chunks/{dist-YGBNYJXU.js.map → dist-OLFVZDAR.js.map} +0 -0
  204. /package/dist/chunks/{dist-M4QJEZ6W.js.map → dist-TFSA6QEB.js.map} +0 -0
  205. /package/dist/chunks/{dist-BT2HNR4P.js.map → dist-ZIZ457D5.js.map} +0 -0
  206. /package/dist/chunks/{doctor-NSYFMZUT.js.map → doctor-Y366MZD7.js.map} +0 -0
  207. /package/dist/chunks/{drain-KYJSJS32.js.map → drain-CQELENIA.js.map} +0 -0
  208. /package/dist/chunks/{eval-TH3WQFI2.js.map → eval-IUIKSMIP.js.map} +0 -0
  209. /package/dist/chunks/{exec-VOZ3VAVV.js.map → exec-CUF3USRR.js.map} +0 -0
  210. /package/dist/chunks/{home-RAOAISVY.js.map → home-OZK7SYKC.js.map} +0 -0
  211. /package/dist/chunks/{host-queries-U4CWSBUK.js.map → host-queries-OZ3GTNQB.js.map} +0 -0
  212. /package/dist/chunks/{lifecycle-PXCABRZ5.js.map → lifecycle-EDPBG4CF.js.map} +0 -0
  213. /package/dist/chunks/{list-TIF25QTK.js.map → list-OKA3E7GI.js.map} +0 -0
  214. /package/dist/chunks/{login-J42GU7EB.js.map → login-NMPAF4D4.js.map} +0 -0
  215. /package/dist/chunks/{logs-BGBHTVT3.js.map → logs-BLEDKYPA.js.map} +0 -0
  216. /package/dist/chunks/{mcp-WLA36KLN.js.map → mcp-SO43UZSA.js.map} +0 -0
  217. /package/dist/chunks/{message-command-KQ2ENU5G.js.map → message-command-4CG7SPQA.js.map} +0 -0
  218. /package/dist/chunks/{operator-tools-4NS32VMF.js.map → operator-tools-BRBJUOP5.js.map} +0 -0
  219. /package/dist/chunks/{output-schema-VUNV5PSI.js.map → output-schema-Q74INRDV.js.map} +0 -0
  220. /package/dist/chunks/{pal-JLYSYJZ4.js.map → pal-Q4LLIL3Z.js.map} +0 -0
  221. /package/dist/chunks/{providers-6S2OD65T.js.map → providers-L4SRCWQ5.js.map} +0 -0
  222. /package/dist/chunks/{resident-FWCWLKM2.js.map → resident-KROFLWQD.js.map} +0 -0
  223. /package/dist/chunks/{resume-command-R22OK5SL.js.map → resume-command-433WHYYJ.js.map} +0 -0
  224. /package/dist/chunks/{schedule-JP3VSIXA.js.map → schedule-YTD3NQTH.js.map} +0 -0
  225. /package/dist/chunks/{service-R7SRZ22P.js.map → service-X2BXZORB.js.map} +0 -0
  226. /package/dist/chunks/{session-step-L4HQYX5J.js.map → session-step-NTNPJVXZ.js.map} +0 -0
  227. /package/dist/chunks/{skills-MOVGIR6S.js.map → skills-6U4GTACH.js.map} +0 -0
  228. /package/dist/chunks/{state-GVVLT2YD.js.map → state-JKH362WC.js.map} +0 -0
  229. /package/dist/chunks/{store-IAAJ4GWU.js.map → store-LMUDVSKO.js.map} +0 -0
  230. /package/dist/chunks/{store-VVOUETR5.js.map → store-T6ITZS2N.js.map} +0 -0
  231. /package/dist/chunks/{store-WQ5PM4Z2.js.map → store-ULDTJXKN.js.map} +0 -0
  232. /package/dist/chunks/{upgrade-2FXGSXCP.js.map → upgrade-FUJFUSY5.js.map} +0 -0
  233. /package/dist/chunks/{worktree-FOHNJC3S.js.map → worktree-KJYHKRHL.js.map} +0 -0
@@ -2,10 +2,10 @@ import { createRequire as __namzuCreateRequire } from 'node:module';
2
2
  const require = __namzuCreateRequire(import.meta.url);
3
3
  import {
4
4
  createCliPalMessagingContext
5
- } from "./chunk-WDIIFX5X.js";
5
+ } from "./chunk-WEVDA4IS.js";
6
6
  import {
7
7
  palConversationBinding
8
- } from "./chunk-FAPXHMTL.js";
8
+ } from "./chunk-J7GTTLAZ.js";
9
9
  import {
10
10
  constructProvider,
11
11
  createCurrentCredentialReader,
@@ -18,21 +18,21 @@ import {
18
18
  resolveAutoDefault,
19
19
  reviewExemptionFor,
20
20
  toAgentEvent
21
- } from "./chunk-RAKBF6PY.js";
21
+ } from "./chunk-WBR7JG42.js";
22
22
  import {
23
23
  readStoredTurnGuards,
24
24
  resolveTurnGuards
25
- } from "./chunk-ZJXRPK5W.js";
25
+ } from "./chunk-CAOXGCUA.js";
26
26
  import {
27
27
  ensureFreshStoredCodexCredential
28
- } from "./chunk-3N3CDMDI.js";
28
+ } from "./chunk-ZBWLULPM.js";
29
29
  import {
30
30
  canSelectModel,
31
31
  ensureRegistered,
32
32
  findDetected,
33
33
  primaryProvider,
34
34
  readCodexCredentialFile
35
- } from "./chunk-QZSP4UWJ.js";
35
+ } from "./chunk-QNHDYR4J.js";
36
36
  import {
37
37
  PROVIDER_REGISTRY
38
38
  } from "./chunk-6LLJQ3KY.js";
@@ -61,7 +61,7 @@ import {
61
61
  query,
62
62
  resumeSession,
63
63
  toolset
64
- } from "./chunk-5YWWQUJ5.js";
64
+ } from "./chunk-E2OJSRDE.js";
65
65
  import {
66
66
  __name
67
67
  } from "./chunk-76FLAFCG.js";
@@ -1380,4 +1380,4 @@ export {
1380
1380
  palSessionEnvironment,
1381
1381
  createPalAgentSession
1382
1382
  };
1383
- //# sourceMappingURL=chunk-UH5LZDKB.js.map
1383
+ //# sourceMappingURL=chunk-QB6CLDHT.js.map
@@ -3,7 +3,7 @@ const require = __namzuCreateRequire(import.meta.url);
3
3
  import {
4
4
  REVIEW_MODES,
5
5
  isReviewMode
6
- } from "./chunk-5YWWQUJ5.js";
6
+ } from "./chunk-E2OJSRDE.js";
7
7
  import {
8
8
  __name
9
9
  } from "./chunk-76FLAFCG.js";
@@ -26,10 +26,24 @@ function permissionModeLabel(mode) {
26
26
  }
27
27
  }
28
28
  __name(permissionModeLabel, "permissionModeLabel");
29
- function effectivePermissionMode(mode, approvedAll) {
30
- return approvedAll && (mode === "prompt" || mode === "accept-edits") ? "auto" : mode;
29
+ function nextCycleMode(current, bypassAvailable) {
30
+ switch (current) {
31
+ case "prompt":
32
+ return "accept-edits";
33
+ case "accept-edits":
34
+ return "plan";
35
+ case "plan":
36
+ return bypassAvailable ? "auto" : "prompt";
37
+ case "auto":
38
+ case "strict":
39
+ return "prompt";
40
+ }
41
+ }
42
+ __name(nextCycleMode, "nextCycleMode");
43
+ function bypassAvailableAtLaunch(opts) {
44
+ return opts.launchMode === "auto" || opts.allowDangerouslySkipPermissions === true;
31
45
  }
32
- __name(effectivePermissionMode, "effectivePermissionMode");
46
+ __name(bypassAvailableAtLaunch, "bypassAvailableAtLaunch");
33
47
  function permissionModeDescription(mode) {
34
48
  switch (mode) {
35
49
  case "prompt":
@@ -62,8 +76,9 @@ __name(resolvePermissionMode, "resolvePermissionMode");
62
76
  export {
63
77
  isPermissionMode,
64
78
  permissionModeLabel,
65
- effectivePermissionMode,
79
+ nextCycleMode,
80
+ bypassAvailableAtLaunch,
66
81
  permissionModeDescription,
67
82
  resolvePermissionMode
68
83
  };
69
- //# sourceMappingURL=chunk-DHXMHWOW.js.map
84
+ //# sourceMappingURL=chunk-QLB4KNQA.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/permissions/mode.ts"],
4
+ "mappings": ";;;;;;;;;;;AA+BO,IAAM,mBAA8C;AAIpD,IAAM,mBAAgE;AAEtE,SAAS,oBAAoB,MAA8B;AACjE,UAAQ,MAAM;AAAA,IACb,KAAK;AACJ,aAAO;AAAA,IACR,KAAK;AACJ,aAAO;AAAA,IACR,KAAK;AACJ,aAAO;AAAA,IACR,KAAK;AACJ,aAAO;AAAA,IACR,KAAK;AACJ,aAAO;AAAA,EACT;AACD;AAbgB;AAqBT,SAAS,cAAc,SAAyB,iBAA0C;AAChG,UAAQ,SAAS;AAAA,IAChB,KAAK;AACJ,aAAO;AAAA,IACR,KAAK;AACJ,aAAO;AAAA,IACR,KAAK;AACJ,aAAO,kBAAkB,SAAS;AAAA,IACnC,KAAK;AAAA,IACL,KAAK;AACJ,aAAO;AAAA,EACT;AACD;AAZgB;AAoBT,SAAS,wBAAwB,MAG5B;AACX,SAAO,KAAK,eAAe,UAAU,KAAK,oCAAoC;AAC/E;AALgB;AAQT,SAAS,0BAA0B,MAA8B;AACvE,UAAQ,MAAM;AAAA,IACb,KAAK;AACJ,aAAO;AAAA,IACR,KAAK;AACJ,aAAO;AAAA,IACR,KAAK;AACJ,aAAO;AAAA,IACR,KAAK;AACJ,aAAO;AAAA,IACR,KAAK;AACJ,aAAO;AAAA,EACT;AACD;AAbgB;AA2BT,SAAS,sBAAsB,MAIW;AAChD,MAAI,KAAK,QAAQ,QAAQ,KAAK,SAAS,IAAI;AAC1C,QAAI,CAAC,iBAAiB,KAAK,IAAI,GAAG;AACjC,aAAO;AAAA,QACN,OAAO,qCAAqC,iBAAiB,KAAK,IAAI,CAAC,UAAU,KAAK,IAAI;AAAA,MAC3F;AAAA,IACD;AACA,WAAO,EAAE,MAAM,KAAK,KAAK;AAAA,EAC1B;AACA,MAAI,KAAK,gBAAiB,QAAO,EAAE,MAAM,OAAO;AAGhD,SAAO,EAAE,MAAM,KAAK,cAAc,WAAW,OAAO;AACrD;AAjBgB;",
5
+ "names": []
6
+ }
@@ -18,15 +18,15 @@ import {
18
18
  readStoredCodexCredential,
19
19
  readStoredGeminiApiKey,
20
20
  readStoredSubscriptionCredential
21
- } from "./chunk-O5FRXERG.js";
21
+ } from "./chunk-R5OZ6DCD.js";
22
22
  import {
23
23
  namzuHomePath
24
- } from "./chunk-IQKT222K.js";
24
+ } from "./chunk-7RP7HIBA.js";
25
25
  import {
26
26
  EnvCredentialProvider,
27
27
  ProviderRegistry,
28
28
  resolveProviderCapabilities
29
- } from "./chunk-5YWWQUJ5.js";
29
+ } from "./chunk-E2OJSRDE.js";
30
30
  import {
31
31
  __name
32
32
  } from "./chunk-76FLAFCG.js";
@@ -1223,47 +1223,47 @@ async function ensureRegistered(id) {
1223
1223
  if (registered.has(id)) return;
1224
1224
  switch (id) {
1225
1225
  case "anthropic": {
1226
- const mod = await import("./dist-M4QJEZ6W.js");
1226
+ const mod = await import("./dist-TFSA6QEB.js");
1227
1227
  mod.registerAnthropic();
1228
1228
  break;
1229
1229
  }
1230
1230
  case "google": {
1231
- const mod = await import("./dist-YW5SKAUO.js");
1231
+ const mod = await import("./dist-GR6IFO7M.js");
1232
1232
  mod.registerGoogle();
1233
1233
  break;
1234
1234
  }
1235
1235
  case "openai": {
1236
- const mod = await import("./dist-YGBNYJXU.js");
1236
+ const mod = await import("./dist-OLFVZDAR.js");
1237
1237
  mod.registerOpenAI();
1238
1238
  break;
1239
1239
  }
1240
1240
  case "codex": {
1241
- const mod = await import("./dist-YGBNYJXU.js");
1241
+ const mod = await import("./dist-OLFVZDAR.js");
1242
1242
  mod.registerCodex();
1243
1243
  break;
1244
1244
  }
1245
1245
  case "deepseek": {
1246
- const mod = await import("./dist-BT2HNR4P.js");
1246
+ const mod = await import("./dist-ZIZ457D5.js");
1247
1247
  mod.registerDeepSeek();
1248
1248
  break;
1249
1249
  }
1250
1250
  case "openrouter": {
1251
- const mod = await import("./dist-X5AY7IYY.js");
1251
+ const mod = await import("./dist-B3WFU7LE.js");
1252
1252
  mod.registerOpenRouter();
1253
1253
  break;
1254
1254
  }
1255
1255
  case "zen": {
1256
- const mod = await import("./dist-WVLCXQIR.js");
1256
+ const mod = await import("./dist-2PTH7PME.js");
1257
1257
  mod.registerZen();
1258
1258
  break;
1259
1259
  }
1260
1260
  case "zen-go": {
1261
- const mod = await import("./dist-WVLCXQIR.js");
1261
+ const mod = await import("./dist-2PTH7PME.js");
1262
1262
  mod.registerZenGo();
1263
1263
  break;
1264
1264
  }
1265
1265
  case "ollama": {
1266
- const mod = await import("./dist-AEKRLZ3M.js");
1266
+ const mod = await import("./dist-AVGYNTRY.js");
1267
1267
  mod.registerOllama();
1268
1268
  break;
1269
1269
  }
@@ -1352,4 +1352,4 @@ export {
1352
1352
  isRegistered,
1353
1353
  resolveChainCapabilities
1354
1354
  };
1355
- //# sourceMappingURL=chunk-QZSP4UWJ.js.map
1355
+ //# sourceMappingURL=chunk-QNHDYR4J.js.map
@@ -27,7 +27,7 @@ import {
27
27
  resolveChainCapabilities,
28
28
  unresolvedMembers,
29
29
  wslWindowsHome
30
- } from "./chunk-QZSP4UWJ.js";
30
+ } from "./chunk-QNHDYR4J.js";
31
31
  import {
32
32
  PROVIDER_REGISTRY
33
33
  } from "./chunk-6LLJQ3KY.js";
@@ -49,7 +49,7 @@ import {
49
49
  invariants,
50
50
  isolationOf,
51
51
  resolveNamzuHome
52
- } from "./chunk-5YWWQUJ5.js";
52
+ } from "./chunk-E2OJSRDE.js";
53
53
  import {
54
54
  __name
55
55
  } from "./chunk-76FLAFCG.js";
@@ -1139,4 +1139,4 @@ export {
1139
1139
  runDoctorCommand,
1140
1140
  doctorCommand
1141
1141
  };
1142
- //# sourceMappingURL=chunk-6RJSJGZF.js.map
1142
+ //# sourceMappingURL=chunk-QQ2TBG2P.js.map
@@ -2,7 +2,7 @@ import { createRequire as __namzuCreateRequire } from 'node:module';
2
2
  const require = __namzuCreateRequire(import.meta.url);
3
3
  import {
4
4
  isTrusted
5
- } from "./chunk-CYYGWTKF.js";
5
+ } from "./chunk-OF6QIV42.js";
6
6
  import {
7
7
  canonicalProjectPath
8
8
  } from "./chunk-JORONMD3.js";
@@ -43,4 +43,4 @@ __name(decideHeadlessTrust, "decideHeadlessTrust");
43
43
  export {
44
44
  decideHeadlessTrust
45
45
  };
46
- //# sourceMappingURL=chunk-5VB3X4UB.js.map
46
+ //# sourceMappingURL=chunk-QXUJNVPO.js.map
@@ -2,7 +2,7 @@ import { createRequire as __namzuCreateRequire } from 'node:module';
2
2
  const require = __namzuCreateRequire(import.meta.url);
3
3
  import {
4
4
  namzuHomePath
5
- } from "./chunk-IQKT222K.js";
5
+ } from "./chunk-7RP7HIBA.js";
6
6
  import {
7
7
  __name
8
8
  } from "./chunk-76FLAFCG.js";
@@ -658,4 +658,4 @@ export {
658
658
  restrictToOwner,
659
659
  restrictToOwnerOnce
660
660
  };
661
- //# sourceMappingURL=chunk-O5FRXERG.js.map
661
+ //# sourceMappingURL=chunk-R5OZ6DCD.js.map
@@ -5,16 +5,16 @@ import {
5
5
  } from "./chunk-NUGPLXVK.js";
6
6
  import {
7
7
  restrictToOwner
8
- } from "./chunk-O5FRXERG.js";
8
+ } from "./chunk-R5OZ6DCD.js";
9
9
  import {
10
10
  namzuHomePath
11
- } from "./chunk-IQKT222K.js";
11
+ } from "./chunk-7RP7HIBA.js";
12
12
  import {
13
13
  MCPClient,
14
14
  MCPHttpStatusError,
15
15
  mcpToolset,
16
16
  requireApproval
17
- } from "./chunk-5YWWQUJ5.js";
17
+ } from "./chunk-E2OJSRDE.js";
18
18
  import {
19
19
  __export,
20
20
  __name
@@ -25323,4 +25323,4 @@ export {
25323
25323
  * MIT Licensed
25324
25324
  *)
25325
25325
  */
25326
- //# sourceMappingURL=chunk-TCHEQRJE.js.map
25326
+ //# sourceMappingURL=chunk-R5QMJRF7.js.map
@@ -11,7 +11,7 @@ import {
11
11
  } from "./chunk-US5ZFPAU.js";
12
12
  import {
13
13
  namzuHomePath
14
- } from "./chunk-IQKT222K.js";
14
+ } from "./chunk-7RP7HIBA.js";
15
15
  import {
16
16
  __name
17
17
  } from "./chunk-76FLAFCG.js";
@@ -72,4 +72,4 @@ export {
72
72
  writeCrashLog,
73
73
  reportCrash
74
74
  };
75
- //# sourceMappingURL=chunk-GTJVK5TJ.js.map
75
+ //# sourceMappingURL=chunk-TC7HMH6P.js.map
@@ -2,16 +2,16 @@ import { createRequire as __namzuCreateRequire } from 'node:module';
2
2
  const require = __namzuCreateRequire(import.meta.url);
3
3
  import {
4
4
  openManagedWorktrees
5
- } from "./chunk-WIPSZYIM.js";
5
+ } from "./chunk-P6AM76US.js";
6
6
  import {
7
7
  createBrowserControl
8
8
  } from "./chunk-WHODOMXA.js";
9
9
  import {
10
10
  connectMcpServers
11
- } from "./chunk-TCHEQRJE.js";
11
+ } from "./chunk-R5QMJRF7.js";
12
12
  import {
13
13
  createSessionSkillCatalog
14
- } from "./chunk-6ZEROVY4.js";
14
+ } from "./chunk-6G3TX6QD.js";
15
15
  import {
16
16
  SAVE_SKILL_TOOL_NAME,
17
17
  WORKFLOW_TOOL_DESCRIPTION,
@@ -27,10 +27,10 @@ import {
27
27
  viewFromJournal,
28
28
  workflowOffered,
29
29
  workflowRefusal
30
- } from "./chunk-ZJXRPK5W.js";
30
+ } from "./chunk-CAOXGCUA.js";
31
31
  import {
32
32
  openInBrowser
33
- } from "./chunk-IGHTIUKD.js";
33
+ } from "./chunk-DQNJEGUV.js";
34
34
  import {
35
35
  CredentialRefreshRejectedError,
36
36
  CredentialWithdrawnError,
@@ -38,7 +38,7 @@ import {
38
38
  ensureFreshStoredCodexCredential,
39
39
  readSubscriptionCredential,
40
40
  sameOAuthCredential
41
- } from "./chunk-3N3CDMDI.js";
41
+ } from "./chunk-ZBWLULPM.js";
42
42
  import {
43
43
  debugRequested
44
44
  } from "./chunk-GNBMKISG.js";
@@ -46,7 +46,7 @@ import {
46
46
  configuredPassthroughTools,
47
47
  resolveToolResultScreens,
48
48
  unmatchedPassthroughTools
49
- } from "./chunk-MUUBLY7G.js";
49
+ } from "./chunk-ZHWB7GXV.js";
50
50
  import {
51
51
  formatSize,
52
52
  homePath,
@@ -74,7 +74,7 @@ import {
74
74
  requiresCredentialForModel,
75
75
  resolveChainCapabilities,
76
76
  unresolvedMembers
77
- } from "./chunk-QZSP4UWJ.js";
77
+ } from "./chunk-QNHDYR4J.js";
78
78
  import {
79
79
  PROVIDER_REGISTRY,
80
80
  missingCredentialMessage,
@@ -82,11 +82,11 @@ import {
82
82
  } from "./chunk-6LLJQ3KY.js";
83
83
  import {
84
84
  cliLogger
85
- } from "./chunk-KZJUG4HN.js";
85
+ } from "./chunk-GKVDZZN6.js";
86
86
  import {
87
87
  isPermissionMode,
88
88
  permissionModeLabel
89
- } from "./chunk-DHXMHWOW.js";
89
+ } from "./chunk-QLB4KNQA.js";
90
90
  import {
91
91
  probeCapabilities
92
92
  } from "./chunk-OH6TB27S.js";
@@ -97,7 +97,7 @@ import {
97
97
  import {
98
98
  conversationLogPath,
99
99
  ensureSessionStarted
100
- } from "./chunk-ZSPSXPRH.js";
100
+ } from "./chunk-XMN2OSBG.js";
101
101
  import {
102
102
  INSTRUCTIONS_FILENAME,
103
103
  MAX_CHARS_PER_FILE,
@@ -107,13 +107,13 @@ import {
107
107
  } from "./chunk-H6B6AROX.js";
108
108
  import {
109
109
  ensurePrivateStateDirectory
110
- } from "./chunk-PAE4DIXR.js";
110
+ } from "./chunk-BQYV3WGF.js";
111
111
  import {
112
112
  restrictToOwner
113
- } from "./chunk-O5FRXERG.js";
113
+ } from "./chunk-R5OZ6DCD.js";
114
114
  import {
115
115
  namzuHomePath
116
- } from "./chunk-IQKT222K.js";
116
+ } from "./chunk-7RP7HIBA.js";
117
117
  import {
118
118
  AgentManager,
119
119
  AgentRegistry,
@@ -183,6 +183,7 @@ import {
183
183
  buildResidentHistoryTools,
184
184
  buildResidentToolEvidenceTools,
185
185
  buildSessionGoalTools,
186
+ builtinCommandArguments,
186
187
  classifyEvidenceSource,
187
188
  collectChatCompletion,
188
189
  compactNow,
@@ -251,7 +252,7 @@ import {
251
252
  windowsShellNotice,
252
253
  withProviderFallback,
253
254
  wrapUntrusted
254
- } from "./chunk-5YWWQUJ5.js";
255
+ } from "./chunk-E2OJSRDE.js";
255
256
  import {
256
257
  __name
257
258
  } from "./chunk-76FLAFCG.js";
@@ -3942,7 +3943,7 @@ async function searchConversationCore(sessions, sessionId, request, signal, acti
3942
3943
  result.excludedToolResults = (result.excludedToolResults ?? 0) + page.excludedToolResults;
3943
3944
  if (page.excludedSummaries)
3944
3945
  result.excludedSummaries = (result.excludedSummaries ?? 0) + page.excludedSummaries;
3945
- const matches = page.matches.map(
3946
+ const matches2 = page.matches.map(
3946
3947
  (match) => ({
3947
3948
  seq: match.seq,
3948
3949
  recordedAt: match.recordedAt,
@@ -3957,11 +3958,11 @@ async function searchConversationCore(sessions, sessionId, request, signal, acti
3957
3958
  ...match.characterOffset === void 0 ? {} : { byteOffset: match.byteOffset }
3958
3959
  })
3959
3960
  );
3960
- const bytes = Buffer.byteLength(JSON.stringify(matches));
3961
+ const bytes = Buffer.byteLength(JSON.stringify(matches2));
3961
3962
  if (outputBytes + bytes > OUTPUT_BYTES)
3962
3963
  throw new Error("Evidence exceeded its output allowance.");
3963
3964
  outputBytes += bytes;
3964
- result.matches.push(...matches);
3965
+ result.matches.push(...matches2);
3965
3966
  result.unavailable += page.unavailable.length;
3966
3967
  result.incomplete ||= page.incomplete || page.unavailable.length > 0;
3967
3968
  state.omitted ||= page.incomplete || page.unavailable.length > 0;
@@ -8742,6 +8743,121 @@ function createLiveModeControl(options) {
8742
8743
  }
8743
8744
  __name(createLiveModeControl, "createLiveModeControl");
8744
8745
 
8746
+ // src/permissions/session-allow.ts
8747
+ var WEB_FETCH_TOOL = "web_fetch";
8748
+ var MAX_LABEL_COMMAND = 60;
8749
+ function isRecord2(value) {
8750
+ return typeof value === "object" && value !== null && !Array.isArray(value);
8751
+ }
8752
+ __name(isRecord2, "isRecord");
8753
+ function alwaysAsked(call) {
8754
+ return call.escalation !== void 0 || call.requiresApproval === true || call.authorization?.explicitReview === true || call.isDestructive === true;
8755
+ }
8756
+ __name(alwaysAsked, "alwaysAsked");
8757
+ function allowFor(call, commands) {
8758
+ if (alwaysAsked(call)) return void 0;
8759
+ const input = isRecord2(call.input) ? call.input : void 0;
8760
+ const commandArgument = commands.get(call.name);
8761
+ if (commandArgument !== void 0) {
8762
+ const line = input?.[commandArgument];
8763
+ if (typeof line !== "string") return void 0;
8764
+ const command = line.trim();
8765
+ if (command === "" || /[\n\r;&|<>`$()*?{}\\]/.test(command)) return void 0;
8766
+ if (input?.dangerously_disable_sandbox === true) return void 0;
8767
+ return { kind: "command", tool: call.name, command };
8768
+ }
8769
+ if (call.name === WEB_FETCH_TOOL) {
8770
+ const url = input?.url;
8771
+ if (typeof url !== "string") return void 0;
8772
+ try {
8773
+ const host = new URL(url).hostname;
8774
+ if (host === "" || host.includes("*")) return void 0;
8775
+ return { kind: "host", tool: call.name, host };
8776
+ } catch {
8777
+ return void 0;
8778
+ }
8779
+ }
8780
+ if (call.name.startsWith("mcp__")) return { kind: "tool", tool: call.name };
8781
+ return void 0;
8782
+ }
8783
+ __name(allowFor, "allowFor");
8784
+ function allowsForBatch(calls, commands) {
8785
+ if (calls.length === 0) return void 0;
8786
+ const out = [];
8787
+ for (const call of calls) {
8788
+ const allow = allowFor(call, commands);
8789
+ if (!allow) return void 0;
8790
+ if (!out.some((existing) => sameAllow(existing, allow))) out.push(allow);
8791
+ }
8792
+ return out;
8793
+ }
8794
+ __name(allowsForBatch, "allowsForBatch");
8795
+ function sameAllow(a, b) {
8796
+ if (a.kind !== b.kind || a.tool !== b.tool) return false;
8797
+ if (a.kind === "command" && b.kind === "command") return a.command === b.command;
8798
+ if (a.kind === "host" && b.kind === "host") return a.host === b.host;
8799
+ return true;
8800
+ }
8801
+ __name(sameAllow, "sameAllow");
8802
+ function shorten(text) {
8803
+ return text.length > MAX_LABEL_COMMAND ? `${text.slice(0, MAX_LABEL_COMMAND - 1)}\u2026` : text;
8804
+ }
8805
+ __name(shorten, "shorten");
8806
+ function describeAllows(allows) {
8807
+ const parts = allows.map((allow) => {
8808
+ switch (allow.kind) {
8809
+ case "command":
8810
+ return `${shorten(allow.command)} commands`;
8811
+ case "host":
8812
+ return allow.host;
8813
+ case "tool":
8814
+ return allow.tool.replace(/^mcp__/, "").replace(/__/g, " ");
8815
+ }
8816
+ });
8817
+ return parts.length <= 1 ? parts[0] ?? "" : `${parts.slice(0, -1).join(", ")} and ${parts.at(-1)}`;
8818
+ }
8819
+ __name(describeAllows, "describeAllows");
8820
+ function matches(allow, toolName2, toolInput, commands) {
8821
+ if (allow.tool !== toolName2) return false;
8822
+ switch (allow.kind) {
8823
+ case "tool":
8824
+ return true;
8825
+ case "host": {
8826
+ const url = isRecord2(toolInput) ? toolInput.url : void 0;
8827
+ if (typeof url !== "string") return false;
8828
+ try {
8829
+ return new URL(url).hostname === allow.host;
8830
+ } catch {
8831
+ return false;
8832
+ }
8833
+ }
8834
+ case "command": {
8835
+ const argument = commands.get(toolName2);
8836
+ if (argument === void 0 || !isRecord2(toolInput)) return false;
8837
+ const line = toolInput[argument];
8838
+ return typeof line === "string" && line.trim() === allow.command && toolInput.dangerously_disable_sandbox !== true;
8839
+ }
8840
+ }
8841
+ }
8842
+ __name(matches, "matches");
8843
+ function createSessionAllows(commands) {
8844
+ const entries = [];
8845
+ return {
8846
+ add(allows) {
8847
+ for (const allow of allows) {
8848
+ if (!entries.some((existing) => sameAllow(existing, allow))) entries.push(allow);
8849
+ }
8850
+ },
8851
+ list: /* @__PURE__ */ __name(() => [...entries], "list"),
8852
+ rule: {
8853
+ type: "predicate",
8854
+ description: "allowed for this session by an answer at a prompt",
8855
+ decide: /* @__PURE__ */ __name((call) => entries.some((allow) => matches(allow, call.toolName, call.toolInput, commands)) ? "allow" : null, "decide")
8856
+ }
8857
+ };
8858
+ }
8859
+ __name(createSessionAllows, "createSessionAllows");
8860
+
8745
8861
  // src/skills/directory.ts
8746
8862
  function createSkillDirectoryResolver(options) {
8747
8863
  return async (skill, context) => {
@@ -8898,17 +9014,17 @@ async function resolveModelSwitch(request, options) {
8898
9014
  const first = selected ?? usable.find(({ entry }) => entry.id === options.currentProvider);
8899
9015
  if (first && await inspect(first)) return resolve9(first);
8900
9016
  const candidates = selected ? [selected] : usable;
8901
- const matches = selected ? [] : (await Promise.all(
9017
+ const matches2 = selected ? [] : (await Promise.all(
8902
9018
  candidates.filter((candidate) => candidate !== first).map(async (candidate) => await inspect(candidate) ? candidate : void 0)
8903
9019
  )).filter((candidate) => candidate !== void 0);
8904
9020
  signal?.throwIfAborted();
8905
- const uniqueMatch = matches.length === 1 ? matches[0] : void 0;
9021
+ const uniqueMatch = matches2.length === 1 ? matches2[0] : void 0;
8906
9022
  if (uniqueMatch) return resolve9(uniqueMatch);
8907
- if (matches.length > 1) {
9023
+ if (matches2.length > 1) {
8908
9024
  return {
8909
9025
  kind: "rejected",
8910
- reason: `Model "${model}" is available from multiple providers. Specify one: ${matches.map(({ entry }) => entry.id).join(", ")}.`,
8911
- choices: matches.map(({ entry }) => ({ provider: entry.id, model }))
9026
+ reason: `Model "${model}" is available from multiple providers. Specify one: ${matches2.map(({ entry }) => entry.id).join(", ")}.`,
9027
+ choices: matches2.map(({ entry }) => ({ provider: entry.id, model }))
8912
9028
  };
8913
9029
  }
8914
9030
  const choices = candidates.flatMap((candidate) => {
@@ -9327,12 +9443,15 @@ function clipRequestContext(prompt, limit, kind) {
9327
9443
  __name(clipRequestContext, "clipRequestContext");
9328
9444
  async function createAgentSession(prefs, detected, options = {}) {
9329
9445
  if (options.palEnvironment) {
9330
- const { createPalAgentSession } = await import("./agent-session-NATAL4BA.js");
9446
+ const { createPalAgentSession } = await import("./agent-session-FXZ4RXQH.js");
9331
9447
  return createPalAgentSession(prefs, detected, options);
9332
9448
  }
9333
- const { palAtWorkspace } = await import("./store-VVOUETR5.js");
9449
+ const { palAtWorkspace } = await import("./store-ULDTJXKN.js");
9334
9450
  if (palAtWorkspace(options.cwd ?? process.cwd()))
9335
9451
  throw new Error("This Pal requires its owned virtual computer. Open it with namzu pal chat.");
9452
+ const commandArguments = builtinCommandArguments();
9453
+ const sessionAllows = createSessionAllows(commandArguments);
9454
+ const sessionRules = [...options.rules ?? [], sessionAllows.rule];
9336
9455
  const fileObservations = /* @__PURE__ */ new Map();
9337
9456
  const observationsFor = /* @__PURE__ */ __name((id, prior) => {
9338
9457
  let seeded = fileObservations.get(id);
@@ -10067,10 +10186,10 @@ async function createAgentSession(prefs, detected, options = {}) {
10067
10186
  }
10068
10187
  })
10069
10188
  );
10070
- const matches = catalogues.flat();
10189
+ const matches2 = catalogues.flat();
10071
10190
  return JSON.stringify({
10072
- models: matches.slice(0, 40),
10073
- omitted: Math.max(0, matches.length - 40),
10191
+ models: matches2.slice(0, 40),
10192
+ omitted: Math.max(0, matches2.length - 40),
10074
10193
  guidance: "Use exact IDs. Omitted capability fields are unknown, not unsupported. Narrow query when results are omitted."
10075
10194
  });
10076
10195
  }, "listModels"),
@@ -10106,7 +10225,7 @@ async function createAgentSession(prefs, detected, options = {}) {
10106
10225
  childToolsets.push(toolset("web-search", [createWebSearchTool()]));
10107
10226
  return childToolsets;
10108
10227
  }, "buildTools"),
10109
- authorizationGate: gateFor(options.rules)
10228
+ authorizationGate: gateFor(sessionRules)
10110
10229
  });
10111
10230
  subagentRuntime = sub;
10112
10231
  const agentToolsets = [toolset("agents", [sub.agentTool, sub.waitForTaskTool])];
@@ -10260,7 +10379,7 @@ async function createAgentSession(prefs, detected, options = {}) {
10260
10379
  if (options.openUrl) toolsets.push(toolset("open-url", [createOpenUrlTool()]));
10261
10380
  const decisionTool = maybeCreateDecisionTool(options.decision, process.env);
10262
10381
  if (decisionTool) toolsets.push(toolset("decide", [decisionTool]));
10263
- const operatorPals = await import("./operator-tools-4NS32VMF.js");
10382
+ const operatorPals = await import("./operator-tools-BRBJUOP5.js");
10264
10383
  toolsets.push(
10265
10384
  readyWhen(
10266
10385
  toolset(
@@ -10620,7 +10739,7 @@ async function createAgentSession(prefs, detected, options = {}) {
10620
10739
  ...subagentRuntime ? {
10621
10740
  taskScheduler: await subagentRuntime.gatewayForTurn(entry2.turnId)
10622
10741
  } : {},
10623
- authorizationGate: gateFor(rules ?? options.rules),
10742
+ authorizationGate: gateFor(rules ?? sessionRules),
10624
10743
  ...pendingDecision ? { pendingDecision } : {},
10625
10744
  compactionConfig: compactionConfigFor(options.compaction),
10626
10745
  retainedToolPreviewChars: options.conversationSessions ? options.compaction?.retainedToolPreviewChars ?? 4e3 : void 0,
@@ -11085,10 +11204,8 @@ async function createAgentSession(prefs, detected, options = {}) {
11085
11204
  errorHint: null,
11086
11205
  errorKind: null,
11087
11206
  // Reads the same object the handler mutates, at call time.
11088
- approvalLatched: /* @__PURE__ */ __name(() => approval.all, "approvalLatched"),
11089
- resetApprovalLatch: /* @__PURE__ */ __name(() => {
11090
- approval.all = false;
11091
- }, "resetApprovalLatch"),
11207
+ allowForSession: /* @__PURE__ */ __name((allows) => sessionAllows.add(allows), "allowForSession"),
11208
+ commandArguments,
11092
11209
  setPermissionMode: /* @__PURE__ */ __name(async (mode, reason) => {
11093
11210
  await Promise.all(
11094
11211
  [...liveModeControls].map(
@@ -11380,7 +11497,7 @@ async function createAgentSession(prefs, detected, options = {}) {
11380
11497
  escalation,
11381
11498
  limits: turnLimits,
11382
11499
  sandboxWorkspace,
11383
- rules: options.rules,
11500
+ rules: sessionRules,
11384
11501
  structuredOutput: options.structuredOutput,
11385
11502
  reviewAnswer: options.reviewAnswer,
11386
11503
  maxAnswerReviews: options.maxAnswerReviews,
@@ -12684,9 +12801,6 @@ function emptySession(errorHint, errorKind = "environment", rawDetail) {
12684
12801
  configNotices: [],
12685
12802
  errorHint,
12686
12803
  // No turn can run here, so no prompt can have been answered.
12687
- approvalLatched: /* @__PURE__ */ __name(() => false, "approvalLatched"),
12688
- resetApprovalLatch: /* @__PURE__ */ __name(() => {
12689
- }, "resetApprovalLatch"),
12690
12804
  // No registry was built, so there is no roster to report on.
12691
12805
  promptExemptTools: /* @__PURE__ */ __name(() => [], "promptExemptTools"),
12692
12806
  send: /* @__PURE__ */ __name(async function* () {
@@ -12745,6 +12859,8 @@ export {
12745
12859
  renderMemorySaveResult,
12746
12860
  renderTypedNoteResult,
12747
12861
  renderStoredMemorySection,
12862
+ allowsForBatch,
12863
+ describeAllows,
12748
12864
  assistantTranscriptTexts,
12749
12865
  projectTurnConversation,
12750
12866
  resolveModelSwitch,
@@ -12774,4 +12890,4 @@ export {
12774
12890
  RESULT_SUMMARY_WHOLE_MAX,
12775
12891
  resultSummaryLine
12776
12892
  };
12777
- //# sourceMappingURL=chunk-RAKBF6PY.js.map
12893
+ //# sourceMappingURL=chunk-WBR7JG42.js.map