@namzu/cli 34.1.1 → 36.0.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 (1306) hide show
  1. package/CHANGELOG.md +800 -0
  2. package/README.md +160 -394
  3. package/assets/pal-blender-mcp.py +123 -0
  4. package/assets/pal-godot-mcp-pin.json +135 -0
  5. package/assets/pal-godot-mcp.cjs +418 -0
  6. package/dist/bin-main.d.ts +3 -0
  7. package/dist/bin-main.d.ts.map +1 -0
  8. package/dist/bin.d.ts +2 -1
  9. package/dist/bin.d.ts.map +1 -1
  10. package/dist/bin.js +85 -23
  11. package/dist/bin.js.map +6 -1
  12. package/dist/boot-narrative.d.ts +16 -0
  13. package/dist/boot-narrative.d.ts.map +1 -0
  14. package/dist/checkpoints/manifest.d.ts +107 -0
  15. package/dist/checkpoints/manifest.d.ts.map +1 -0
  16. package/dist/checkpoints/store.d.ts +280 -40
  17. package/dist/checkpoints/store.d.ts.map +1 -1
  18. package/dist/checkpoints/undo-plan.d.ts +83 -0
  19. package/dist/checkpoints/undo-plan.d.ts.map +1 -0
  20. package/dist/checkpoints/wrap.d.ts +4 -0
  21. package/dist/checkpoints/wrap.d.ts.map +1 -1
  22. package/dist/chunks/acp-BOSEA4R3.js +13448 -0
  23. package/dist/chunks/acp-BOSEA4R3.js.map +6 -0
  24. package/dist/chunks/activity-command-ACS7KL3C.js +262 -0
  25. package/dist/chunks/activity-command-ACS7KL3C.js.map +6 -0
  26. package/dist/chunks/add-DLS54YKS.js +712 -0
  27. package/dist/chunks/add-DLS54YKS.js.map +6 -0
  28. package/dist/chunks/agent-GV3DWYQC.js +87 -0
  29. package/dist/chunks/agent-GV3DWYQC.js.map +6 -0
  30. package/dist/chunks/agent-session-7VE6GJJH.js +46 -0
  31. package/dist/chunks/agent-session-7VE6GJJH.js.map +6 -0
  32. package/dist/chunks/archive-6ZENIEBP.js +84 -0
  33. package/dist/chunks/archive-6ZENIEBP.js.map +6 -0
  34. package/dist/chunks/bin-main-NFFT5ZIU.js +126 -0
  35. package/dist/chunks/bin-main-NFFT5ZIU.js.map +6 -0
  36. package/dist/chunks/browser-VT2U6NG2.js +31 -0
  37. package/dist/chunks/browser-VT2U6NG2.js.map +6 -0
  38. package/dist/chunks/chat-UNYVLDFL.js +101 -0
  39. package/dist/chunks/chat-UNYVLDFL.js.map +6 -0
  40. package/dist/chunks/chunk-2IL6OG3X.js +311 -0
  41. package/dist/chunks/chunk-2IL6OG3X.js.map +6 -0
  42. package/dist/chunks/chunk-2RBYHHLM.js +319 -0
  43. package/dist/chunks/chunk-2RBYHHLM.js.map +6 -0
  44. package/dist/chunks/chunk-42ZK2AH4.js +71 -0
  45. package/dist/chunks/chunk-42ZK2AH4.js.map +6 -0
  46. package/dist/chunks/chunk-5PQVJBIO.js +168 -0
  47. package/dist/chunks/chunk-5PQVJBIO.js.map +6 -0
  48. package/dist/chunks/chunk-6CPT2ZBS.js +75 -0
  49. package/dist/chunks/chunk-6CPT2ZBS.js.map +6 -0
  50. package/dist/chunks/chunk-6LLJQ3KY.js +225 -0
  51. package/dist/chunks/chunk-6LLJQ3KY.js.map +6 -0
  52. package/dist/chunks/chunk-6YFJDVGA.js +161 -0
  53. package/dist/chunks/chunk-6YFJDVGA.js.map +6 -0
  54. package/dist/chunks/chunk-6YG7D7U4.js +159 -0
  55. package/dist/chunks/chunk-6YG7D7U4.js.map +6 -0
  56. package/dist/chunks/chunk-6ZPODOJN.js +828 -0
  57. package/dist/chunks/chunk-6ZPODOJN.js.map +6 -0
  58. package/dist/chunks/chunk-76FLAFCG.js +51 -0
  59. package/dist/chunks/chunk-76FLAFCG.js.map +6 -0
  60. package/dist/chunks/chunk-7HCPD673.js +25326 -0
  61. package/dist/chunks/chunk-7HCPD673.js.map +6 -0
  62. package/dist/chunks/chunk-7KWGR2YA.js +257 -0
  63. package/dist/chunks/chunk-7KWGR2YA.js.map +6 -0
  64. package/dist/chunks/chunk-A22MBIYU.js +42 -0
  65. package/dist/chunks/chunk-A22MBIYU.js.map +6 -0
  66. package/dist/chunks/chunk-AHIDYIRB.js +329 -0
  67. package/dist/chunks/chunk-AHIDYIRB.js.map +6 -0
  68. package/dist/chunks/chunk-AK2U3N2A.js +31 -0
  69. package/dist/chunks/chunk-AK2U3N2A.js.map +6 -0
  70. package/dist/chunks/chunk-AKKRZTPB.js +283 -0
  71. package/dist/chunks/chunk-AKKRZTPB.js.map +6 -0
  72. package/dist/chunks/chunk-BCZR2B3Y.js +97 -0
  73. package/dist/chunks/chunk-BCZR2B3Y.js.map +6 -0
  74. package/dist/chunks/chunk-CHIEVVQ2.js +32 -0
  75. package/dist/chunks/chunk-CHIEVVQ2.js.map +6 -0
  76. package/dist/chunks/chunk-D67YBUO3.js +110 -0
  77. package/dist/chunks/chunk-D67YBUO3.js.map +6 -0
  78. package/dist/chunks/chunk-DIHEHK7K.js +765 -0
  79. package/dist/chunks/chunk-DIHEHK7K.js.map +6 -0
  80. package/dist/chunks/chunk-E5VLANCO.js +101 -0
  81. package/dist/chunks/chunk-E5VLANCO.js.map +6 -0
  82. package/dist/chunks/chunk-EEDZOGV4.js +47 -0
  83. package/dist/chunks/chunk-EEDZOGV4.js.map +6 -0
  84. package/dist/chunks/chunk-ENGNEELC.js +271 -0
  85. package/dist/chunks/chunk-ENGNEELC.js.map +6 -0
  86. package/dist/chunks/chunk-EVY4MVRE.js +74 -0
  87. package/dist/chunks/chunk-EVY4MVRE.js.map +6 -0
  88. package/dist/chunks/chunk-FJNDNNNQ.js +115 -0
  89. package/dist/chunks/chunk-FJNDNNNQ.js.map +6 -0
  90. package/dist/chunks/chunk-FOFGMP7O.js +20 -0
  91. package/dist/chunks/chunk-FOFGMP7O.js.map +6 -0
  92. package/dist/chunks/chunk-FTMTO72X.js +95 -0
  93. package/dist/chunks/chunk-FTMTO72X.js.map +6 -0
  94. package/dist/chunks/chunk-GIXSS6KW.js +2228 -0
  95. package/dist/chunks/chunk-GIXSS6KW.js.map +6 -0
  96. package/dist/chunks/chunk-GNBMKISG.js +19 -0
  97. package/dist/chunks/chunk-GNBMKISG.js.map +6 -0
  98. package/dist/chunks/chunk-GWQEMJFS.js +28 -0
  99. package/dist/chunks/chunk-GWQEMJFS.js.map +6 -0
  100. package/dist/chunks/chunk-H6B6AROX.js +151 -0
  101. package/dist/chunks/chunk-H6B6AROX.js.map +6 -0
  102. package/dist/chunks/chunk-HE7WUOX2.js +26 -0
  103. package/dist/chunks/chunk-HE7WUOX2.js.map +6 -0
  104. package/dist/chunks/chunk-HZBKWL42.js +303 -0
  105. package/dist/chunks/chunk-HZBKWL42.js.map +6 -0
  106. package/dist/chunks/chunk-I7HQR6ET.js +75 -0
  107. package/dist/chunks/chunk-I7HQR6ET.js.map +6 -0
  108. package/dist/chunks/chunk-IJEB77SH.js +648 -0
  109. package/dist/chunks/chunk-IJEB77SH.js.map +6 -0
  110. package/dist/chunks/chunk-JNPDWME5.js +675 -0
  111. package/dist/chunks/chunk-JNPDWME5.js.map +6 -0
  112. package/dist/chunks/chunk-JORONMD3.js +18 -0
  113. package/dist/chunks/chunk-JORONMD3.js.map +6 -0
  114. package/dist/chunks/chunk-JV3LONAU.js +76 -0
  115. package/dist/chunks/chunk-JV3LONAU.js.map +6 -0
  116. package/dist/chunks/chunk-K5HARZ7G.js +82516 -0
  117. package/dist/chunks/chunk-K5HARZ7G.js.map +6 -0
  118. package/dist/chunks/chunk-KONYGNG6.js +7661 -0
  119. package/dist/chunks/chunk-KONYGNG6.js.map +6 -0
  120. package/dist/chunks/chunk-LXB3S4IC.js +19 -0
  121. package/dist/chunks/chunk-LXB3S4IC.js.map +6 -0
  122. package/dist/chunks/chunk-M3IAMIBJ.js +661 -0
  123. package/dist/chunks/chunk-M3IAMIBJ.js.map +6 -0
  124. package/dist/chunks/chunk-MH6KUKVV.js +1142 -0
  125. package/dist/chunks/chunk-MH6KUKVV.js.map +6 -0
  126. package/dist/chunks/chunk-MS3IYQ72.js +1479 -0
  127. package/dist/chunks/chunk-MS3IYQ72.js.map +6 -0
  128. package/dist/chunks/chunk-MZP6SH3M.js +3497 -0
  129. package/dist/chunks/chunk-MZP6SH3M.js.map +6 -0
  130. package/dist/chunks/chunk-N3ZEXVSS.js +76 -0
  131. package/dist/chunks/chunk-N3ZEXVSS.js.map +6 -0
  132. package/dist/chunks/chunk-N6SR54VC.js +207 -0
  133. package/dist/chunks/chunk-N6SR54VC.js.map +6 -0
  134. package/dist/chunks/chunk-NADQQMMG.js +46 -0
  135. package/dist/chunks/chunk-NADQQMMG.js.map +6 -0
  136. package/dist/chunks/chunk-NBH52WHS.js +247 -0
  137. package/dist/chunks/chunk-NBH52WHS.js.map +6 -0
  138. package/dist/chunks/chunk-NICLKFBG.js +109 -0
  139. package/dist/chunks/chunk-NICLKFBG.js.map +6 -0
  140. package/dist/chunks/chunk-NIPHHZ5G.js +283 -0
  141. package/dist/chunks/chunk-NIPHHZ5G.js.map +6 -0
  142. package/dist/chunks/chunk-NQT244I2.js +517 -0
  143. package/dist/chunks/chunk-NQT244I2.js.map +6 -0
  144. package/dist/chunks/chunk-NUGPLXVK.js +228 -0
  145. package/dist/chunks/chunk-NUGPLXVK.js.map +6 -0
  146. package/dist/chunks/chunk-OEW7CJKK.js +140 -0
  147. package/dist/chunks/chunk-OEW7CJKK.js.map +6 -0
  148. package/dist/chunks/chunk-OH6TB27S.js +111 -0
  149. package/dist/chunks/chunk-OH6TB27S.js.map +6 -0
  150. package/dist/chunks/chunk-OWH6QQY2.js +1858 -0
  151. package/dist/chunks/chunk-OWH6QQY2.js.map +6 -0
  152. package/dist/chunks/chunk-OWXJOD4H.js +773 -0
  153. package/dist/chunks/chunk-OWXJOD4H.js.map +6 -0
  154. package/dist/chunks/chunk-PT537V7B.js +787 -0
  155. package/dist/chunks/chunk-PT537V7B.js.map +6 -0
  156. package/dist/chunks/chunk-QEQZFG2X.js +106 -0
  157. package/dist/chunks/chunk-QEQZFG2X.js.map +6 -0
  158. package/dist/chunks/chunk-QL4O4UGZ.js +245 -0
  159. package/dist/chunks/chunk-QL4O4UGZ.js.map +6 -0
  160. package/dist/chunks/chunk-QL54XCF4.js +73 -0
  161. package/dist/chunks/chunk-QL54XCF4.js.map +6 -0
  162. package/dist/chunks/chunk-SB6UD3ED.js +1355 -0
  163. package/dist/chunks/chunk-SB6UD3ED.js.map +6 -0
  164. package/dist/chunks/chunk-SGGRGKGV.js +34 -0
  165. package/dist/chunks/chunk-SGGRGKGV.js.map +6 -0
  166. package/dist/chunks/chunk-SKKWMMFP.js +474 -0
  167. package/dist/chunks/chunk-SKKWMMFP.js.map +6 -0
  168. package/dist/chunks/chunk-SMIDV4KH.js +171 -0
  169. package/dist/chunks/chunk-SMIDV4KH.js.map +6 -0
  170. package/dist/chunks/chunk-T2VUTAHB.js +46 -0
  171. package/dist/chunks/chunk-T2VUTAHB.js.map +6 -0
  172. package/dist/chunks/chunk-T4SB6AAF.js +134 -0
  173. package/dist/chunks/chunk-T4SB6AAF.js.map +6 -0
  174. package/dist/chunks/chunk-TBIX6JRE.js +24 -0
  175. package/dist/chunks/chunk-TBIX6JRE.js.map +6 -0
  176. package/dist/chunks/chunk-THNCQJ33.js +11265 -0
  177. package/dist/chunks/chunk-THNCQJ33.js.map +6 -0
  178. package/dist/chunks/chunk-U56QFYGA.js +818 -0
  179. package/dist/chunks/chunk-U56QFYGA.js.map +6 -0
  180. package/dist/chunks/chunk-U6GZ7EW4.js +106 -0
  181. package/dist/chunks/chunk-U6GZ7EW4.js.map +6 -0
  182. package/dist/chunks/chunk-UDDSFIMB.js +1373 -0
  183. package/dist/chunks/chunk-UDDSFIMB.js.map +6 -0
  184. package/dist/chunks/chunk-UFHNXZL2.js +399 -0
  185. package/dist/chunks/chunk-UFHNXZL2.js.map +6 -0
  186. package/dist/chunks/chunk-US5ZFPAU.js +400 -0
  187. package/dist/chunks/chunk-US5ZFPAU.js.map +6 -0
  188. package/dist/chunks/chunk-VRL2WNQN.js +7534 -0
  189. package/dist/chunks/chunk-VRL2WNQN.js.map +6 -0
  190. package/dist/chunks/chunk-W3UQMRYA.js +380 -0
  191. package/dist/chunks/chunk-W3UQMRYA.js.map +6 -0
  192. package/dist/chunks/chunk-W5KGCUP3.js +11111 -0
  193. package/dist/chunks/chunk-W5KGCUP3.js.map +6 -0
  194. package/dist/chunks/chunk-WHODOMXA.js +132 -0
  195. package/dist/chunks/chunk-WHODOMXA.js.map +6 -0
  196. package/dist/chunks/chunk-WT6TFCPV.js +154 -0
  197. package/dist/chunks/chunk-WT6TFCPV.js.map +6 -0
  198. package/dist/chunks/chunk-WY2WUTFR.js +164 -0
  199. package/dist/chunks/chunk-WY2WUTFR.js.map +6 -0
  200. package/dist/chunks/chunk-XEUQN4JC.js +54 -0
  201. package/dist/chunks/chunk-XEUQN4JC.js.map +6 -0
  202. package/dist/chunks/chunk-Y7B67G22.js +26 -0
  203. package/dist/chunks/chunk-Y7B67G22.js.map +6 -0
  204. package/dist/chunks/chunk-YEMJX2DS.js +69 -0
  205. package/dist/chunks/chunk-YEMJX2DS.js.map +6 -0
  206. package/dist/chunks/chunk-YKLKHDZU.js +2953 -0
  207. package/dist/chunks/chunk-YKLKHDZU.js.map +6 -0
  208. package/dist/chunks/chunk-YQEWD2EN.js +127 -0
  209. package/dist/chunks/chunk-YQEWD2EN.js.map +6 -0
  210. package/dist/chunks/chunk-YYQJIECC.js +1439 -0
  211. package/dist/chunks/chunk-YYQJIECC.js.map +6 -0
  212. package/dist/chunks/chunk-ZKVZNOUS.js +106 -0
  213. package/dist/chunks/chunk-ZKVZNOUS.js.map +6 -0
  214. package/dist/chunks/chunk-ZPR4IMRT.js +36 -0
  215. package/dist/chunks/chunk-ZPR4IMRT.js.map +6 -0
  216. package/dist/chunks/chunk-ZWA2JRJV.js +45 -0
  217. package/dist/chunks/chunk-ZWA2JRJV.js.map +6 -0
  218. package/dist/chunks/cli-runtime-F4MBZ2UQ.js +129 -0
  219. package/dist/chunks/cli-runtime-F4MBZ2UQ.js.map +6 -0
  220. package/dist/chunks/commands-GMQGFTIY.js +21 -0
  221. package/dist/chunks/commands-GMQGFTIY.js.map +6 -0
  222. package/dist/chunks/computer-GXDY4H35.js +493 -0
  223. package/dist/chunks/computer-GXDY4H35.js.map +6 -0
  224. package/dist/chunks/crash-report-STOHSORG.js +21 -0
  225. package/dist/chunks/crash-report-STOHSORG.js.map +6 -0
  226. package/dist/chunks/devtools-LBE4PAQN.js +3851 -0
  227. package/dist/chunks/devtools-LBE4PAQN.js.map +6 -0
  228. package/dist/chunks/dist-3AF2X4S5.js +1339 -0
  229. package/dist/chunks/dist-3AF2X4S5.js.map +6 -0
  230. package/dist/chunks/dist-AZIMHV2B.js +514 -0
  231. package/dist/chunks/dist-AZIMHV2B.js.map +6 -0
  232. package/dist/chunks/dist-BGYRQ5BC.js +555 -0
  233. package/dist/chunks/dist-BGYRQ5BC.js.map +6 -0
  234. package/dist/chunks/dist-OTTZ7WVD.js +1415 -0
  235. package/dist/chunks/dist-OTTZ7WVD.js.map +6 -0
  236. package/dist/chunks/dist-R3I3ATSG.js +1018 -0
  237. package/dist/chunks/dist-R3I3ATSG.js.map +6 -0
  238. package/dist/chunks/dist-TXEKDBQO.js +40642 -0
  239. package/dist/chunks/dist-TXEKDBQO.js.map +6 -0
  240. package/dist/chunks/dist-XTWYQHHN.js +520 -0
  241. package/dist/chunks/dist-XTWYQHHN.js.map +6 -0
  242. package/dist/chunks/doctor-VXSB4Y4P.js +28 -0
  243. package/dist/chunks/doctor-VXSB4Y4P.js.map +6 -0
  244. package/dist/chunks/drain-DXVICQBR.js +471 -0
  245. package/dist/chunks/drain-DXVICQBR.js.map +6 -0
  246. package/dist/chunks/endpoint-M2DDENPP.js +15 -0
  247. package/dist/chunks/endpoint-M2DDENPP.js.map +6 -0
  248. package/dist/chunks/eval-BMJQXDKA.js +187 -0
  249. package/dist/chunks/eval-BMJQXDKA.js.map +6 -0
  250. package/dist/chunks/exec-3T5ESZPH.js +1284 -0
  251. package/dist/chunks/exec-3T5ESZPH.js.map +6 -0
  252. package/dist/chunks/home-ILHA7B6Z.js +16 -0
  253. package/dist/chunks/home-ILHA7B6Z.js.map +6 -0
  254. package/dist/chunks/host-queries-QCMWDZGS.js +152 -0
  255. package/dist/chunks/host-queries-QCMWDZGS.js.map +6 -0
  256. package/dist/chunks/lib-KXZZJJG2.js +2657 -0
  257. package/dist/chunks/lib-KXZZJJG2.js.map +6 -0
  258. package/dist/chunks/lifecycle-CB23VJI7.js +63 -0
  259. package/dist/chunks/lifecycle-CB23VJI7.js.map +6 -0
  260. package/dist/chunks/list-N6WXZBMD.js +293 -0
  261. package/dist/chunks/list-N6WXZBMD.js.map +6 -0
  262. package/dist/chunks/login-26NCG6EQ.js +29 -0
  263. package/dist/chunks/login-26NCG6EQ.js.map +6 -0
  264. package/dist/chunks/logs-V7SNM7LA.js +116 -0
  265. package/dist/chunks/logs-V7SNM7LA.js.map +6 -0
  266. package/dist/chunks/mcp-BTHCU5ZC.js +763 -0
  267. package/dist/chunks/mcp-BTHCU5ZC.js.map +6 -0
  268. package/dist/chunks/message-command-HMIOR52C.js +170 -0
  269. package/dist/chunks/message-command-HMIOR52C.js.map +6 -0
  270. package/dist/chunks/node-QB2FA2ZB.js +916 -0
  271. package/dist/chunks/node-QB2FA2ZB.js.map +6 -0
  272. package/dist/chunks/operator-tools-7LMWOHSN.js +115 -0
  273. package/dist/chunks/operator-tools-7LMWOHSN.js.map +6 -0
  274. package/dist/chunks/output-schema-XCONYVZ7.js +11 -0
  275. package/dist/chunks/output-schema-XCONYVZ7.js.map +6 -0
  276. package/dist/chunks/pal-YEUKHA6F.js +200 -0
  277. package/dist/chunks/pal-YEUKHA6F.js.map +6 -0
  278. package/dist/chunks/paths-DXYFKIJU.js +10 -0
  279. package/dist/chunks/paths-DXYFKIJU.js.map +6 -0
  280. package/dist/chunks/pica-WNHDDIFX.js +1736 -0
  281. package/dist/chunks/pica-WNHDDIFX.js.map +6 -0
  282. package/dist/chunks/providers-EI3FAKYB.js +160 -0
  283. package/dist/chunks/providers-EI3FAKYB.js.map +6 -0
  284. package/dist/chunks/resident-5ZY6OG6B.js +1314 -0
  285. package/dist/chunks/resident-5ZY6OG6B.js.map +6 -0
  286. package/dist/chunks/resume-command-ONYRZIIA.js +22 -0
  287. package/dist/chunks/resume-command-ONYRZIIA.js.map +6 -0
  288. package/dist/chunks/schedule-6JPEO4NR.js +143 -0
  289. package/dist/chunks/schedule-6JPEO4NR.js.map +6 -0
  290. package/dist/chunks/serve-S7UWNIR3.js +21 -0
  291. package/dist/chunks/serve-S7UWNIR3.js.map +6 -0
  292. package/dist/chunks/service-WSW3M6K5.js +1633 -0
  293. package/dist/chunks/service-WSW3M6K5.js.map +6 -0
  294. package/dist/chunks/session-step-2VZM3CCA.js +26 -0
  295. package/dist/chunks/session-step-2VZM3CCA.js.map +6 -0
  296. package/dist/chunks/skills-KAZJYGX5.js +282 -0
  297. package/dist/chunks/skills-KAZJYGX5.js.map +6 -0
  298. package/dist/chunks/state-263OUKQA.js +717 -0
  299. package/dist/chunks/state-263OUKQA.js.map +6 -0
  300. package/dist/chunks/store-3XLCJ7EL.js +42 -0
  301. package/dist/chunks/store-3XLCJ7EL.js.map +6 -0
  302. package/dist/chunks/store-KN65QI2M.js +82 -0
  303. package/dist/chunks/store-KN65QI2M.js.map +6 -0
  304. package/dist/chunks/store-X3TESBIN.js +34 -0
  305. package/dist/chunks/store-X3TESBIN.js.map +6 -0
  306. package/dist/chunks/tui-5MU7JBXX.js +56703 -0
  307. package/dist/chunks/tui-5MU7JBXX.js.map +6 -0
  308. package/dist/chunks/upgrade-BYM4MWBC.js +315 -0
  309. package/dist/chunks/upgrade-BYM4MWBC.js.map +6 -0
  310. package/dist/chunks/webapi-6HUHZUAH.js +2715 -0
  311. package/dist/chunks/webapi-6HUHZUAH.js.map +6 -0
  312. package/dist/chunks/worktree-K3ZIPXRM.js +116 -0
  313. package/dist/chunks/worktree-K3ZIPXRM.js.map +6 -0
  314. package/dist/cli-runtime.d.ts +19 -0
  315. package/dist/cli-runtime.d.ts.map +1 -0
  316. package/dist/cli.d.ts +0 -15
  317. package/dist/cli.d.ts.map +1 -1
  318. package/dist/commands/acp-harness.d.ts +64 -0
  319. package/dist/commands/acp-harness.d.ts.map +1 -0
  320. package/dist/commands/acp-provider-retry.d.ts +27 -0
  321. package/dist/commands/acp-provider-retry.d.ts.map +1 -0
  322. package/dist/commands/acp.d.ts +134 -3
  323. package/dist/commands/acp.d.ts.map +1 -1
  324. package/dist/commands/computer.d.ts +3 -0
  325. package/dist/commands/computer.d.ts.map +1 -0
  326. package/dist/commands/desktop-host-changes.d.ts +65 -0
  327. package/dist/commands/desktop-host-changes.d.ts.map +1 -0
  328. package/dist/commands/desktop-host-header.d.ts +30 -0
  329. package/dist/commands/desktop-host-header.d.ts.map +1 -0
  330. package/dist/commands/desktop-host.d.ts +354 -0
  331. package/dist/commands/desktop-host.d.ts.map +1 -0
  332. package/dist/commands/desktop-model-catalogue.d.ts +25 -0
  333. package/dist/commands/desktop-model-catalogue.d.ts.map +1 -0
  334. package/dist/commands/effort-levels.d.ts +3 -0
  335. package/dist/commands/effort-levels.d.ts.map +1 -0
  336. package/dist/commands/exec-flags.d.ts +4 -0
  337. package/dist/commands/exec-flags.d.ts.map +1 -1
  338. package/dist/commands/exec.d.ts.map +1 -1
  339. package/dist/commands/lazy.d.ts +20 -0
  340. package/dist/commands/lazy.d.ts.map +1 -0
  341. package/dist/commands/manifest.d.ts +33 -0
  342. package/dist/commands/manifest.d.ts.map +1 -0
  343. package/dist/commands/mcp.d.ts +3 -0
  344. package/dist/commands/mcp.d.ts.map +1 -1
  345. package/dist/commands/pal.d.ts +5 -0
  346. package/dist/commands/pal.d.ts.map +1 -0
  347. package/dist/commands/permission-preview.d.ts +38 -0
  348. package/dist/commands/permission-preview.d.ts.map +1 -0
  349. package/dist/commands/registry.d.ts +10 -0
  350. package/dist/commands/registry.d.ts.map +1 -1
  351. package/dist/commands/serve.d.ts +1 -12
  352. package/dist/commands/serve.d.ts.map +1 -1
  353. package/dist/commands/stdin.d.ts.map +1 -1
  354. package/dist/commands/upgrade.d.ts +14 -0
  355. package/dist/commands/upgrade.d.ts.map +1 -1
  356. package/dist/compile-cache-enable.d.ts +2 -0
  357. package/dist/compile-cache-enable.d.ts.map +1 -0
  358. package/dist/compile-cache.d.ts +53 -0
  359. package/dist/compile-cache.d.ts.map +1 -0
  360. package/dist/computer/bundle.d.ts +18 -0
  361. package/dist/computer/bundle.d.ts.map +1 -0
  362. package/dist/computer/run.d.ts +26 -0
  363. package/dist/computer/run.d.ts.map +1 -0
  364. package/dist/computer/sentences.d.ts +30 -0
  365. package/dist/computer/sentences.d.ts.map +1 -0
  366. package/dist/config/load.d.ts +10 -1
  367. package/dist/config/load.d.ts.map +1 -1
  368. package/dist/context/capabilities.d.ts +25 -2
  369. package/dist/context/capabilities.d.ts.map +1 -1
  370. package/dist/context/runtime-message.d.ts.map +1 -1
  371. package/dist/crash-report.d.ts +22 -0
  372. package/dist/crash-report.d.ts.map +1 -0
  373. package/dist/debug-requested.d.ts +7 -0
  374. package/dist/debug-requested.d.ts.map +1 -0
  375. package/dist/doctor/checks/credentials.d.ts.map +1 -1
  376. package/dist/exit-codes.d.ts +9 -1
  377. package/dist/exit-codes.d.ts.map +1 -1
  378. package/dist/index.js +105 -17
  379. package/dist/index.js.map +6 -1
  380. package/dist/integrations/harness/claude-adapter.d.ts +20 -0
  381. package/dist/integrations/harness/claude-adapter.d.ts.map +1 -0
  382. package/dist/integrations/harness/claude-protocol.d.ts +67 -0
  383. package/dist/integrations/harness/claude-protocol.d.ts.map +1 -0
  384. package/dist/integrations/harness/codex-adapter.d.ts +80 -0
  385. package/dist/integrations/harness/codex-adapter.d.ts.map +1 -0
  386. package/dist/integrations/harness/codex-protocol.d.ts +22 -0
  387. package/dist/integrations/harness/codex-protocol.d.ts.map +1 -0
  388. package/dist/integrations/harness/model-cache.d.ts +16 -0
  389. package/dist/integrations/harness/model-cache.d.ts.map +1 -0
  390. package/dist/integrations/harness/native-executable.d.ts +8 -0
  391. package/dist/integrations/harness/native-executable.d.ts.map +1 -0
  392. package/dist/integrations/harness/process.d.ts +25 -0
  393. package/dist/integrations/harness/process.d.ts.map +1 -0
  394. package/dist/integrations/mcp/servers.d.ts.map +1 -1
  395. package/dist/integrations/peers/runtime.d.ts +64 -0
  396. package/dist/integrations/peers/runtime.d.ts.map +1 -0
  397. package/dist/integrations/plugins/inventory.d.ts +27 -0
  398. package/dist/integrations/plugins/inventory.d.ts.map +1 -0
  399. package/dist/integrations/providers/composer-settings.d.ts +33 -0
  400. package/dist/integrations/providers/composer-settings.d.ts.map +1 -0
  401. package/dist/integrations/providers/connections.d.ts +37 -0
  402. package/dist/integrations/providers/connections.d.ts.map +1 -0
  403. package/dist/integrations/providers/credential-store.d.ts +35 -0
  404. package/dist/integrations/providers/credential-store.d.ts.map +1 -1
  405. package/dist/integrations/providers/discover.d.ts +27 -1
  406. package/dist/integrations/providers/discover.d.ts.map +1 -1
  407. package/dist/integrations/providers/index.d.ts +2 -2
  408. package/dist/integrations/providers/index.d.ts.map +1 -1
  409. package/dist/integrations/providers/picker-operation.d.ts +6 -0
  410. package/dist/integrations/providers/picker-operation.d.ts.map +1 -0
  411. package/dist/integrations/providers/setup.d.ts +16 -1
  412. package/dist/integrations/providers/setup.d.ts.map +1 -1
  413. package/dist/integrations/resident/runner-worker.js +190 -161
  414. package/dist/integrations/resident/runner-worker.js.map +6 -1
  415. package/dist/integrations/resident/session-step.d.ts.map +1 -1
  416. package/dist/integrations/sessions/display-title.d.ts +8 -0
  417. package/dist/integrations/sessions/display-title.d.ts.map +1 -1
  418. package/dist/integrations/sessions/store.d.ts +23 -9
  419. package/dist/integrations/sessions/store.d.ts.map +1 -1
  420. package/dist/integrations/sessions/task-context.d.ts +1 -1
  421. package/dist/integrations/sessions/task-context.d.ts.map +1 -1
  422. package/dist/integrations/sessions/transcript-export.d.ts.map +1 -1
  423. package/dist/integrations/subagents/activity.d.ts +9 -6
  424. package/dist/integrations/subagents/activity.d.ts.map +1 -1
  425. package/dist/integrations/subagents/operator-journal.d.ts +20 -0
  426. package/dist/integrations/subagents/operator-journal.d.ts.map +1 -0
  427. package/dist/integrations/subagents/runtime.d.ts +11 -0
  428. package/dist/integrations/subagents/runtime.d.ts.map +1 -1
  429. package/dist/integrations/trust/store.d.ts +14 -0
  430. package/dist/integrations/trust/store.d.ts.map +1 -1
  431. package/dist/integrations/web/search.d.ts +1 -1
  432. package/dist/pals/actions.d.ts +57 -0
  433. package/dist/pals/actions.d.ts.map +1 -0
  434. package/dist/pals/activity-command.d.ts +3 -0
  435. package/dist/pals/activity-command.d.ts.map +1 -0
  436. package/dist/pals/activity.d.ts +18 -0
  437. package/dist/pals/activity.d.ts.map +1 -0
  438. package/dist/pals/agent-session.d.ts +19 -0
  439. package/dist/pals/agent-session.d.ts.map +1 -0
  440. package/dist/pals/channel-actions.d.ts +5 -0
  441. package/dist/pals/channel-actions.d.ts.map +1 -0
  442. package/dist/pals/channel-local.d.ts +7 -0
  443. package/dist/pals/channel-local.d.ts.map +1 -0
  444. package/dist/pals/channel.d.ts +20 -0
  445. package/dist/pals/channel.d.ts.map +1 -0
  446. package/dist/pals/chat.d.ts +6 -0
  447. package/dist/pals/chat.d.ts.map +1 -0
  448. package/dist/pals/communication.d.ts +47 -0
  449. package/dist/pals/communication.d.ts.map +1 -0
  450. package/dist/pals/conversations.d.ts +26 -0
  451. package/dist/pals/conversations.d.ts.map +1 -0
  452. package/dist/pals/desktop-communication.d.ts +111 -0
  453. package/dist/pals/desktop-communication.d.ts.map +1 -0
  454. package/dist/pals/dispatch.d.ts +13 -0
  455. package/dist/pals/dispatch.d.ts.map +1 -0
  456. package/dist/pals/environment.d.ts +103 -0
  457. package/dist/pals/environment.d.ts.map +1 -0
  458. package/dist/pals/guest-mcp-transport.d.ts +28 -0
  459. package/dist/pals/guest-mcp-transport.d.ts.map +1 -0
  460. package/dist/pals/guest-mcp.d.ts +22 -0
  461. package/dist/pals/guest-mcp.d.ts.map +1 -0
  462. package/dist/pals/inbox-start.d.ts +35 -0
  463. package/dist/pals/inbox-start.d.ts.map +1 -0
  464. package/dist/pals/message-command.d.ts +3 -0
  465. package/dist/pals/message-command.d.ts.map +1 -0
  466. package/dist/pals/operator-tools.d.ts +23 -0
  467. package/dist/pals/operator-tools.d.ts.map +1 -0
  468. package/dist/pals/public-transcript.d.ts +4 -0
  469. package/dist/pals/public-transcript.d.ts.map +1 -0
  470. package/dist/pals/review.d.ts +16 -0
  471. package/dist/pals/review.d.ts.map +1 -0
  472. package/dist/pals/store.d.ts +16 -0
  473. package/dist/pals/store.d.ts.map +1 -0
  474. package/dist/pals/tui-session.d.ts +11 -0
  475. package/dist/pals/tui-session.d.ts.map +1 -0
  476. package/dist/permissions/mode-names.d.ts +2 -0
  477. package/dist/permissions/mode-names.d.ts.map +1 -0
  478. package/dist/resume-invocation.d.ts +1 -1
  479. package/dist/resume-invocation.d.ts.map +1 -1
  480. package/dist/resume-shell.d.ts +8 -0
  481. package/dist/resume-shell.d.ts.map +1 -0
  482. package/dist/schedule/build.d.ts +12 -3
  483. package/dist/schedule/build.d.ts.map +1 -1
  484. package/dist/schedule/commands/add.d.ts +1 -1
  485. package/dist/schedule/commands/add.d.ts.map +1 -1
  486. package/dist/schedule/commands/lifecycle.d.ts.map +1 -1
  487. package/dist/schedule/commands/list.d.ts +3 -1
  488. package/dist/schedule/commands/list.d.ts.map +1 -1
  489. package/dist/schedule/daemon/daemon.d.ts +2 -0
  490. package/dist/schedule/daemon/daemon.d.ts.map +1 -1
  491. package/dist/schedule/delivery.d.ts +66 -0
  492. package/dist/schedule/delivery.d.ts.map +1 -0
  493. package/dist/schedule/fire/fire.d.ts +1 -1
  494. package/dist/schedule/fire/fire.d.ts.map +1 -1
  495. package/dist/schedule/fire/run-script.d.ts +2 -2
  496. package/dist/schedule/fire/run-script.d.ts.map +1 -1
  497. package/dist/schedule/fire/script-report.d.ts +31 -0
  498. package/dist/schedule/fire/script-report.d.ts.map +1 -0
  499. package/dist/schedule/floor.d.ts +1 -1
  500. package/dist/schedule/floor.d.ts.map +1 -1
  501. package/dist/schedule/folder.d.ts +6 -0
  502. package/dist/schedule/folder.d.ts.map +1 -1
  503. package/dist/schedule/resume-command.d.ts +3 -3
  504. package/dist/schedule/resume-command.d.ts.map +1 -1
  505. package/dist/schedule/store/history.d.ts.map +1 -1
  506. package/dist/schedule/store/jobs.d.ts +6 -6
  507. package/dist/schedule/store/jobs.d.ts.map +1 -1
  508. package/dist/schedule/store/script-state.d.ts +31 -0
  509. package/dist/schedule/store/script-state.d.ts.map +1 -0
  510. package/dist/schedule/store/state.d.ts +4 -2
  511. package/dist/schedule/store/state.d.ts.map +1 -1
  512. package/dist/schedule/types.d.ts +61 -16
  513. package/dist/schedule/types.d.ts.map +1 -1
  514. package/dist/skills/store.d.ts.map +1 -1
  515. package/dist/terminal/host.d.ts +22 -0
  516. package/dist/terminal/host.d.ts.map +1 -0
  517. package/dist/terminal/manager.d.ts +124 -0
  518. package/dist/terminal/manager.d.ts.map +1 -0
  519. package/dist/terminal/protocol.d.ts +162 -0
  520. package/dist/terminal/protocol.d.ts.map +1 -0
  521. package/dist/terminal/pty.d.ts +85 -0
  522. package/dist/terminal/pty.d.ts.map +1 -0
  523. package/dist/terminal/ring.d.ts +23 -0
  524. package/dist/terminal/ring.d.ts.map +1 -0
  525. package/dist/terminal/screen.d.ts +31 -0
  526. package/dist/terminal/screen.d.ts.map +1 -0
  527. package/dist/termination-state.d.ts +19 -0
  528. package/dist/termination-state.d.ts.map +1 -0
  529. package/dist/termination.d.ts +2 -9
  530. package/dist/termination.d.ts.map +1 -1
  531. package/dist/tui/AgentExplorer.d.ts +4 -1
  532. package/dist/tui/AgentExplorer.d.ts.map +1 -1
  533. package/dist/tui/App.d.ts.map +1 -1
  534. package/dist/tui/BackgroundJobsPanel.d.ts +26 -0
  535. package/dist/tui/BackgroundJobsPanel.d.ts.map +1 -0
  536. package/dist/tui/BrandHeader.d.ts.map +1 -1
  537. package/dist/tui/ChildComposer.d.ts +22 -0
  538. package/dist/tui/ChildComposer.d.ts.map +1 -0
  539. package/dist/tui/ChoicePicker.d.ts.map +1 -1
  540. package/dist/tui/Composer.d.ts +25 -4
  541. package/dist/tui/Composer.d.ts.map +1 -1
  542. package/dist/tui/ComposerFrame.d.ts.map +1 -1
  543. package/dist/tui/CopyPicker.d.ts.map +1 -1
  544. package/dist/tui/EditPromptPicker.d.ts.map +1 -1
  545. package/dist/tui/EffortSlider.d.ts.map +1 -1
  546. package/dist/tui/LiveActivity.d.ts +7 -1
  547. package/dist/tui/LiveActivity.d.ts.map +1 -1
  548. package/dist/tui/Markdown.d.ts.map +1 -1
  549. package/dist/tui/PendingInputPanel.d.ts +34 -0
  550. package/dist/tui/PendingInputPanel.d.ts.map +1 -0
  551. package/dist/tui/PermissionOverlay.d.ts.map +1 -1
  552. package/dist/tui/Picker.d.ts.map +1 -1
  553. package/dist/tui/ProviderSetup.d.ts.map +1 -1
  554. package/dist/tui/ResumePicker.d.ts.map +1 -1
  555. package/dist/tui/SaveSkillOverlay.d.ts.map +1 -1
  556. package/dist/tui/ScheduleReviewOverlay.d.ts +1 -1
  557. package/dist/tui/ScheduleReviewOverlay.d.ts.map +1 -1
  558. package/dist/tui/StatusBar.d.ts +7 -1
  559. package/dist/tui/StatusBar.d.ts.map +1 -1
  560. package/dist/tui/StatusPanel.d.ts.map +1 -1
  561. package/dist/tui/TextPrompt.d.ts.map +1 -1
  562. package/dist/tui/ToolOutputViewer.d.ts.map +1 -1
  563. package/dist/tui/Transcript.d.ts.map +1 -1
  564. package/dist/tui/TrustPrompt.d.ts +8 -0
  565. package/dist/tui/TrustPrompt.d.ts.map +1 -1
  566. package/dist/tui/agent.d.ts +135 -6
  567. package/dist/tui/agent.d.ts.map +1 -1
  568. package/dist/tui/browser-notices.d.ts.map +1 -1
  569. package/dist/tui/capability-notice.d.ts +38 -0
  570. package/dist/tui/capability-notice.d.ts.map +1 -0
  571. package/dist/tui/console-input.d.ts +31 -0
  572. package/dist/tui/console-input.d.ts.map +1 -0
  573. package/dist/tui/conversation-evidence-view.d.ts.map +1 -1
  574. package/dist/tui/credential-entry.d.ts.map +1 -1
  575. package/dist/tui/exit-summary.d.ts +9 -1
  576. package/dist/tui/exit-summary.d.ts.map +1 -1
  577. package/dist/tui/external-editor.d.ts.map +1 -1
  578. package/dist/tui/index.d.ts.map +1 -1
  579. package/dist/tui/key-hints.d.ts +51 -0
  580. package/dist/tui/key-hints.d.ts.map +1 -0
  581. package/dist/tui/launch-settings.d.ts +34 -0
  582. package/dist/tui/launch-settings.d.ts.map +1 -0
  583. package/dist/tui/log-pane.d.ts.map +1 -1
  584. package/dist/tui/model-choices.d.ts +39 -1
  585. package/dist/tui/model-choices.d.ts.map +1 -1
  586. package/dist/tui/model-search.d.ts +4 -1
  587. package/dist/tui/model-search.d.ts.map +1 -1
  588. package/dist/tui/output-size-watch.d.ts +32 -0
  589. package/dist/tui/output-size-watch.d.ts.map +1 -0
  590. package/dist/tui/permission-review.d.ts.map +1 -1
  591. package/dist/tui/person-terms.d.ts +58 -0
  592. package/dist/tui/person-terms.d.ts.map +1 -0
  593. package/dist/tui/plain-failure.d.ts +27 -0
  594. package/dist/tui/plain-failure.d.ts.map +1 -0
  595. package/dist/tui/plain-interruption.d.ts +46 -0
  596. package/dist/tui/plain-interruption.d.ts.map +1 -0
  597. package/dist/tui/provider-list.d.ts.map +1 -1
  598. package/dist/tui/render-mode.d.ts +19 -0
  599. package/dist/tui/render-mode.d.ts.map +1 -0
  600. package/dist/tui/schedule/host-commands.d.ts +2 -9
  601. package/dist/tui/schedule/host-commands.d.ts.map +1 -1
  602. package/dist/tui/schedule/integration.d.ts +8 -0
  603. package/dist/tui/schedule/integration.d.ts.map +1 -1
  604. package/dist/tui/schedule/source-deliveries.d.ts +37 -0
  605. package/dist/tui/schedule/source-deliveries.d.ts.map +1 -0
  606. package/dist/tui/schedule/startup.d.ts.map +1 -1
  607. package/dist/tui/schedule/tool-host.d.ts +3 -1
  608. package/dist/tui/schedule/tool-host.d.ts.map +1 -1
  609. package/dist/tui/setup-text.d.ts +14 -0
  610. package/dist/tui/setup-text.d.ts.map +1 -0
  611. package/dist/tui/shell-escape.d.ts.map +1 -1
  612. package/dist/tui/skills/suggest-setting.d.ts.map +1 -1
  613. package/dist/tui/slashCommands.d.ts +9 -2
  614. package/dist/tui/slashCommands.d.ts.map +1 -1
  615. package/dist/tui/terminal-choice-text.d.ts +7 -0
  616. package/dist/tui/terminal-choice-text.d.ts.map +1 -1
  617. package/dist/tui/tidy-tool-output.d.ts +83 -0
  618. package/dist/tui/tidy-tool-output.d.ts.map +1 -0
  619. package/dist/tui/tool-presentation.d.ts +6 -0
  620. package/dist/tui/tool-presentation.d.ts.map +1 -0
  621. package/dist/tui/triggers/copy.d.ts.map +1 -1
  622. package/dist/tui/triggers/setting.d.ts.map +1 -1
  623. package/dist/tui/turn-interruption.d.ts +1 -1
  624. package/dist/tui/turn-interruption.d.ts.map +1 -1
  625. package/dist/tui/turn-limits-settings.d.ts +4 -4
  626. package/dist/tui/turn-limits-settings.d.ts.map +1 -1
  627. package/dist/tui/types.d.ts +10 -0
  628. package/dist/tui/types.d.ts.map +1 -1
  629. package/dist/tui/web-activity.d.ts +3 -2
  630. package/dist/tui/web-activity.d.ts.map +1 -1
  631. package/dist/tui/zen-free-refusal.d.ts +17 -0
  632. package/dist/tui/zen-free-refusal.d.ts.map +1 -0
  633. package/dist/usage-error.d.ts +15 -0
  634. package/dist/usage-error.d.ts.map +1 -0
  635. package/dist/warning-filter.d.ts +30 -0
  636. package/dist/warning-filter.d.ts.map +1 -0
  637. package/package.json +22 -11
  638. package/skills/schedule-task/SKILL.md +74 -20
  639. package/dist/browser/commands.js +0 -365
  640. package/dist/browser/commands.js.map +0 -1
  641. package/dist/browser/control.js +0 -140
  642. package/dist/browser/control.js.map +0 -1
  643. package/dist/browser/describe.js +0 -27
  644. package/dist/browser/describe.js.map +0 -1
  645. package/dist/checkpoints/store.js +0 -192
  646. package/dist/checkpoints/store.js.map +0 -1
  647. package/dist/checkpoints/wrap.js +0 -37
  648. package/dist/checkpoints/wrap.js.map +0 -1
  649. package/dist/cli.js +0 -602
  650. package/dist/cli.js.map +0 -1
  651. package/dist/commands/acp.js +0 -388
  652. package/dist/commands/acp.js.map +0 -1
  653. package/dist/commands/archive.js +0 -65
  654. package/dist/commands/archive.js.map +0 -1
  655. package/dist/commands/browser.js +0 -16
  656. package/dist/commands/browser.js.map +0 -1
  657. package/dist/commands/doctor.js +0 -267
  658. package/dist/commands/doctor.js.map +0 -1
  659. package/dist/commands/drain.js +0 -498
  660. package/dist/commands/drain.js.map +0 -1
  661. package/dist/commands/eval.js +0 -237
  662. package/dist/commands/eval.js.map +0 -1
  663. package/dist/commands/exec-flags.js +0 -334
  664. package/dist/commands/exec-flags.js.map +0 -1
  665. package/dist/commands/exec-json.js +0 -497
  666. package/dist/commands/exec-json.js.map +0 -1
  667. package/dist/commands/exec.js +0 -688
  668. package/dist/commands/exec.js.map +0 -1
  669. package/dist/commands/host-queries.js +0 -156
  670. package/dist/commands/host-queries.js.map +0 -1
  671. package/dist/commands/login.js +0 -315
  672. package/dist/commands/login.js.map +0 -1
  673. package/dist/commands/mcp-oauth-login.js +0 -213
  674. package/dist/commands/mcp-oauth-login.js.map +0 -1
  675. package/dist/commands/mcp.js +0 -288
  676. package/dist/commands/mcp.js.map +0 -1
  677. package/dist/commands/prior-messages.js +0 -329
  678. package/dist/commands/prior-messages.js.map +0 -1
  679. package/dist/commands/provider-wait.js +0 -65
  680. package/dist/commands/provider-wait.js.map +0 -1
  681. package/dist/commands/registry.js +0 -40
  682. package/dist/commands/registry.js.map +0 -1
  683. package/dist/commands/resident-flags.js +0 -193
  684. package/dist/commands/resident-flags.js.map +0 -1
  685. package/dist/commands/resident-learning.js +0 -293
  686. package/dist/commands/resident-learning.js.map +0 -1
  687. package/dist/commands/resident.js +0 -419
  688. package/dist/commands/resident.js.map +0 -1
  689. package/dist/commands/resume.js +0 -109
  690. package/dist/commands/resume.js.map +0 -1
  691. package/dist/commands/schedule.js +0 -131
  692. package/dist/commands/schedule.js.map +0 -1
  693. package/dist/commands/serve.js +0 -21
  694. package/dist/commands/serve.js.map +0 -1
  695. package/dist/commands/skills.js +0 -178
  696. package/dist/commands/skills.js.map +0 -1
  697. package/dist/commands/state.js +0 -110
  698. package/dist/commands/state.js.map +0 -1
  699. package/dist/commands/stdin.js +0 -69
  700. package/dist/commands/stdin.js.map +0 -1
  701. package/dist/commands/types.js +0 -2
  702. package/dist/commands/types.js.map +0 -1
  703. package/dist/commands/upgrade-progress.js +0 -54
  704. package/dist/commands/upgrade-progress.js.map +0 -1
  705. package/dist/commands/upgrade.js +0 -232
  706. package/dist/commands/upgrade.js.map +0 -1
  707. package/dist/commands/worktree.js +0 -86
  708. package/dist/commands/worktree.js.map +0 -1
  709. package/dist/config/composer-triggers.js +0 -80
  710. package/dist/config/composer-triggers.js.map +0 -1
  711. package/dist/config/debug.js +0 -126
  712. package/dist/config/debug.js.map +0 -1
  713. package/dist/config/load.js +0 -1208
  714. package/dist/config/load.js.map +0 -1
  715. package/dist/config/schema.js +0 -13
  716. package/dist/config/schema.js.map +0 -1
  717. package/dist/config/tool-result-screens.js +0 -104
  718. package/dist/config/tool-result-screens.js.map +0 -1
  719. package/dist/config/trusted-project-context.js +0 -28
  720. package/dist/config/trusted-project-context.js.map +0 -1
  721. package/dist/config/turn-guards.js +0 -46
  722. package/dist/config/turn-guards.js.map +0 -1
  723. package/dist/config/user-config.js +0 -118
  724. package/dist/config/user-config.js.map +0 -1
  725. package/dist/context/capabilities.js +0 -164
  726. package/dist/context/capabilities.js.map +0 -1
  727. package/dist/context/directories.js +0 -69
  728. package/dist/context/directories.js.map +0 -1
  729. package/dist/context/doctrine.js +0 -24
  730. package/dist/context/doctrine.js.map +0 -1
  731. package/dist/context/environment.js +0 -255
  732. package/dist/context/environment.js.map +0 -1
  733. package/dist/context/project-path.js +0 -16
  734. package/dist/context/project-path.js.map +0 -1
  735. package/dist/context/project-tracker.js +0 -217
  736. package/dist/context/project-tracker.js.map +0 -1
  737. package/dist/context/project.js +0 -256
  738. package/dist/context/project.js.map +0 -1
  739. package/dist/context/runtime-message.js +0 -30
  740. package/dist/context/runtime-message.js.map +0 -1
  741. package/dist/context/sandbox.js +0 -114
  742. package/dist/context/sandbox.js.map +0 -1
  743. package/dist/context/turn-snapshot.js +0 -122
  744. package/dist/context/turn-snapshot.js.map +0 -1
  745. package/dist/doctor/checks/browser.js +0 -63
  746. package/dist/doctor/checks/browser.js.map +0 -1
  747. package/dist/doctor/checks/chain.js +0 -211
  748. package/dist/doctor/checks/chain.js.map +0 -1
  749. package/dist/doctor/checks/credentials.js +0 -98
  750. package/dist/doctor/checks/credentials.js.map +0 -1
  751. package/dist/doctor/checks/index.js +0 -72
  752. package/dist/doctor/checks/index.js.map +0 -1
  753. package/dist/doctor/checks/invariants.js +0 -79
  754. package/dist/doctor/checks/invariants.js.map +0 -1
  755. package/dist/doctor/checks/logging.js +0 -69
  756. package/dist/doctor/checks/logging.js.map +0 -1
  757. package/dist/doctor/checks/providers.js +0 -30
  758. package/dist/doctor/checks/providers.js.map +0 -1
  759. package/dist/doctor/checks/runtime.js +0 -40
  760. package/dist/doctor/checks/runtime.js.map +0 -1
  761. package/dist/doctor/checks/sandbox.js +0 -76
  762. package/dist/doctor/checks/sandbox.js.map +0 -1
  763. package/dist/doctor/checks/scheduler.js +0 -74
  764. package/dist/doctor/checks/scheduler.js.map +0 -1
  765. package/dist/doctor/checks/session-export.js +0 -62
  766. package/dist/doctor/checks/session-export.js.map +0 -1
  767. package/dist/doctor/checks/telemetry.js +0 -58
  768. package/dist/doctor/checks/telemetry.js.map +0 -1
  769. package/dist/doctor/checks/vault.js +0 -67
  770. package/dist/doctor/checks/vault.js.map +0 -1
  771. package/dist/doctor/index.js +0 -3
  772. package/dist/doctor/index.js.map +0 -1
  773. package/dist/doctor/registry.js +0 -230
  774. package/dist/doctor/registry.js.map +0 -1
  775. package/dist/exit-codes.js +0 -62
  776. package/dist/exit-codes.js.map +0 -1
  777. package/dist/installation.js +0 -48
  778. package/dist/installation.js.map +0 -1
  779. package/dist/integrations/clipboard/image.js +0 -119
  780. package/dist/integrations/clipboard/image.js.map +0 -1
  781. package/dist/integrations/clipboard/text.js +0 -43
  782. package/dist/integrations/clipboard/text.js.map +0 -1
  783. package/dist/integrations/files/attachment-store.js +0 -86
  784. package/dist/integrations/files/attachment-store.js.map +0 -1
  785. package/dist/integrations/mcp/oauth-store.js +0 -549
  786. package/dist/integrations/mcp/oauth-store.js.map +0 -1
  787. package/dist/integrations/mcp/servers.js +0 -519
  788. package/dist/integrations/mcp/servers.js.map +0 -1
  789. package/dist/integrations/mcp/user-config.js +0 -92
  790. package/dist/integrations/mcp/user-config.js.map +0 -1
  791. package/dist/integrations/notifications/desktop/freedesktop.js +0 -33
  792. package/dist/integrations/notifications/desktop/freedesktop.js.map +0 -1
  793. package/dist/integrations/notifications/desktop/macos.js +0 -17
  794. package/dist/integrations/notifications/desktop/macos.js.map +0 -1
  795. package/dist/integrations/notifications/desktop/sanitize.js +0 -49
  796. package/dist/integrations/notifications/desktop/sanitize.js.map +0 -1
  797. package/dist/integrations/notifications/desktop/throttle.js +0 -39
  798. package/dist/integrations/notifications/desktop/throttle.js.map +0 -1
  799. package/dist/integrations/notifications/desktop/windows-toast.js +0 -56
  800. package/dist/integrations/notifications/desktop/windows-toast.js.map +0 -1
  801. package/dist/integrations/notifications/desktop.js +0 -199
  802. package/dist/integrations/notifications/desktop.js.map +0 -1
  803. package/dist/integrations/notifications/terminal.js +0 -46
  804. package/dist/integrations/notifications/terminal.js.map +0 -1
  805. package/dist/integrations/npm-invocation.js +0 -23
  806. package/dist/integrations/npm-invocation.js.map +0 -1
  807. package/dist/integrations/plugins/runtime.js +0 -189
  808. package/dist/integrations/plugins/runtime.js.map +0 -1
  809. package/dist/integrations/plugins/settings.js +0 -106
  810. package/dist/integrations/plugins/settings.js.map +0 -1
  811. package/dist/integrations/providers/access.js +0 -23
  812. package/dist/integrations/providers/access.js.map +0 -1
  813. package/dist/integrations/providers/chain-capabilities.js +0 -211
  814. package/dist/integrations/providers/chain-capabilities.js.map +0 -1
  815. package/dist/integrations/providers/codex-device-login.js +0 -195
  816. package/dist/integrations/providers/codex-device-login.js.map +0 -1
  817. package/dist/integrations/providers/codex-oauth.js +0 -95
  818. package/dist/integrations/providers/codex-oauth.js.map +0 -1
  819. package/dist/integrations/providers/credential-provider.js +0 -74
  820. package/dist/integrations/providers/credential-provider.js.map +0 -1
  821. package/dist/integrations/providers/credential-store.js +0 -657
  822. package/dist/integrations/providers/credential-store.js.map +0 -1
  823. package/dist/integrations/providers/current-credential.js +0 -45
  824. package/dist/integrations/providers/current-credential.js.map +0 -1
  825. package/dist/integrations/providers/discover.js +0 -313
  826. package/dist/integrations/providers/discover.js.map +0 -1
  827. package/dist/integrations/providers/gemini-credentials.js +0 -148
  828. package/dist/integrations/providers/gemini-credentials.js.map +0 -1
  829. package/dist/integrations/providers/harness-credentials.js +0 -344
  830. package/dist/integrations/providers/harness-credentials.js.map +0 -1
  831. package/dist/integrations/providers/identity.js +0 -64
  832. package/dist/integrations/providers/identity.js.map +0 -1
  833. package/dist/integrations/providers/index.js +0 -14
  834. package/dist/integrations/providers/index.js.map +0 -1
  835. package/dist/integrations/providers/keychain.js +0 -78
  836. package/dist/integrations/providers/keychain.js.map +0 -1
  837. package/dist/integrations/providers/model-reasoning.js +0 -51
  838. package/dist/integrations/providers/model-reasoning.js.map +0 -1
  839. package/dist/integrations/providers/oauth.js +0 -302
  840. package/dist/integrations/providers/oauth.js.map +0 -1
  841. package/dist/integrations/providers/preferences.js +0 -287
  842. package/dist/integrations/providers/preferences.js.map +0 -1
  843. package/dist/integrations/providers/register.js +0 -154
  844. package/dist/integrations/providers/register.js.map +0 -1
  845. package/dist/integrations/providers/registry.js +0 -289
  846. package/dist/integrations/providers/registry.js.map +0 -1
  847. package/dist/integrations/providers/setup.js +0 -158
  848. package/dist/integrations/providers/setup.js.map +0 -1
  849. package/dist/integrations/providers/subscription-login.js +0 -328
  850. package/dist/integrations/providers/subscription-login.js.map +0 -1
  851. package/dist/integrations/providers/zen-catalogue.js +0 -196
  852. package/dist/integrations/providers/zen-catalogue.js.map +0 -1
  853. package/dist/integrations/resident/foreground.js +0 -95
  854. package/dist/integrations/resident/foreground.js.map +0 -1
  855. package/dist/integrations/resident/inspection.js +0 -282
  856. package/dist/integrations/resident/inspection.js.map +0 -1
  857. package/dist/integrations/resident/learning-sources.js +0 -79
  858. package/dist/integrations/resident/learning-sources.js.map +0 -1
  859. package/dist/integrations/resident/learning-storage.js +0 -55
  860. package/dist/integrations/resident/learning-storage.js.map +0 -1
  861. package/dist/integrations/resident/lifecycle-errors.js +0 -15
  862. package/dist/integrations/resident/lifecycle-errors.js.map +0 -1
  863. package/dist/integrations/resident/owned-runner.js +0 -91
  864. package/dist/integrations/resident/owned-runner.js.map +0 -1
  865. package/dist/integrations/resident/runner-control.js +0 -238
  866. package/dist/integrations/resident/runner-control.js.map +0 -1
  867. package/dist/integrations/resident/runner-launch.js +0 -142
  868. package/dist/integrations/resident/runner-launch.js.map +0 -1
  869. package/dist/integrations/resident/runner-store.js +0 -284
  870. package/dist/integrations/resident/runner-store.js.map +0 -1
  871. package/dist/integrations/resident/session-log-reads.js +0 -125
  872. package/dist/integrations/resident/session-log-reads.js.map +0 -1
  873. package/dist/integrations/resident/session-step.js +0 -471
  874. package/dist/integrations/resident/session-step.js.map +0 -1
  875. package/dist/integrations/resident/storage.js +0 -183
  876. package/dist/integrations/resident/storage.js.map +0 -1
  877. package/dist/integrations/resident/tool-evidence.js +0 -123
  878. package/dist/integrations/resident/tool-evidence.js.map +0 -1
  879. package/dist/integrations/resident/verification.js +0 -109
  880. package/dist/integrations/resident/verification.js.map +0 -1
  881. package/dist/integrations/sessions/checkpoint-view.js +0 -48
  882. package/dist/integrations/sessions/checkpoint-view.js.map +0 -1
  883. package/dist/integrations/sessions/context-inventory.js +0 -44
  884. package/dist/integrations/sessions/context-inventory.js.map +0 -1
  885. package/dist/integrations/sessions/conversation-search.js +0 -572
  886. package/dist/integrations/sessions/conversation-search.js.map +0 -1
  887. package/dist/integrations/sessions/display-title.js +0 -5
  888. package/dist/integrations/sessions/display-title.js.map +0 -1
  889. package/dist/integrations/sessions/evidence-page-validation.js +0 -74
  890. package/dist/integrations/sessions/evidence-page-validation.js.map +0 -1
  891. package/dist/integrations/sessions/evidence-recall.js +0 -117
  892. package/dist/integrations/sessions/evidence-recall.js.map +0 -1
  893. package/dist/integrations/sessions/store.js +0 -780
  894. package/dist/integrations/sessions/store.js.map +0 -1
  895. package/dist/integrations/sessions/task-context.js +0 -96
  896. package/dist/integrations/sessions/task-context.js.map +0 -1
  897. package/dist/integrations/sessions/transcript-export.js +0 -342
  898. package/dist/integrations/sessions/transcript-export.js.map +0 -1
  899. package/dist/integrations/state/home.js +0 -17
  900. package/dist/integrations/state/home.js.map +0 -1
  901. package/dist/integrations/state/identity.js +0 -49
  902. package/dist/integrations/state/identity.js.map +0 -1
  903. package/dist/integrations/state/immutable-json.js +0 -38
  904. package/dist/integrations/state/immutable-json.js.map +0 -1
  905. package/dist/integrations/state/private-directory.js +0 -43
  906. package/dist/integrations/state/private-directory.js.map +0 -1
  907. package/dist/integrations/state/project.js +0 -13
  908. package/dist/integrations/state/project.js.map +0 -1
  909. package/dist/integrations/state/report.js +0 -626
  910. package/dist/integrations/state/report.js.map +0 -1
  911. package/dist/integrations/state/retention.js +0 -18
  912. package/dist/integrations/state/retention.js.map +0 -1
  913. package/dist/integrations/subagents/NamzuCliAgent.js +0 -9
  914. package/dist/integrations/subagents/NamzuCliAgent.js.map +0 -1
  915. package/dist/integrations/subagents/activity.js +0 -759
  916. package/dist/integrations/subagents/activity.js.map +0 -1
  917. package/dist/integrations/subagents/batches.js +0 -172
  918. package/dist/integrations/subagents/batches.js.map +0 -1
  919. package/dist/integrations/subagents/definitions.js +0 -26
  920. package/dist/integrations/subagents/definitions.js.map +0 -1
  921. package/dist/integrations/subagents/model-effort.js +0 -12
  922. package/dist/integrations/subagents/model-effort.js.map +0 -1
  923. package/dist/integrations/subagents/parent.js +0 -47
  924. package/dist/integrations/subagents/parent.js.map +0 -1
  925. package/dist/integrations/subagents/policy.js +0 -3
  926. package/dist/integrations/subagents/policy.js.map +0 -1
  927. package/dist/integrations/subagents/replay.js +0 -295
  928. package/dist/integrations/subagents/replay.js.map +0 -1
  929. package/dist/integrations/subagents/runtime.js +0 -1317
  930. package/dist/integrations/subagents/runtime.js.map +0 -1
  931. package/dist/integrations/subagents/saved-agents.js +0 -102
  932. package/dist/integrations/subagents/saved-agents.js.map +0 -1
  933. package/dist/integrations/subagents/slash.js +0 -45
  934. package/dist/integrations/subagents/slash.js.map +0 -1
  935. package/dist/integrations/subagents/worktree-driver.js +0 -72
  936. package/dist/integrations/subagents/worktree-driver.js.map +0 -1
  937. package/dist/integrations/telemetry/session-export.js +0 -119
  938. package/dist/integrations/telemetry/session-export.js.map +0 -1
  939. package/dist/integrations/trust/store.js +0 -73
  940. package/dist/integrations/trust/store.js.map +0 -1
  941. package/dist/integrations/updates.js +0 -115
  942. package/dist/integrations/updates.js.map +0 -1
  943. package/dist/integrations/web/exa-search.js +0 -154
  944. package/dist/integrations/web/exa-search.js.map +0 -1
  945. package/dist/integrations/web/open-url.js +0 -73
  946. package/dist/integrations/web/open-url.js.map +0 -1
  947. package/dist/integrations/web/search.js +0 -68
  948. package/dist/integrations/web/search.js.map +0 -1
  949. package/dist/integrations/worktrees/managed.js +0 -231
  950. package/dist/integrations/worktrees/managed.js.map +0 -1
  951. package/dist/logging.js +0 -115
  952. package/dist/logging.js.map +0 -1
  953. package/dist/memory/io.js +0 -177
  954. package/dist/memory/io.js.map +0 -1
  955. package/dist/memory/presentation.js +0 -76
  956. package/dist/memory/presentation.js.map +0 -1
  957. package/dist/memory/store.js +0 -180
  958. package/dist/memory/store.js.map +0 -1
  959. package/dist/memory/typed.js +0 -336
  960. package/dist/memory/typed.js.map +0 -1
  961. package/dist/output/formatter.js +0 -16
  962. package/dist/output/formatter.js.map +0 -1
  963. package/dist/output/index.js +0 -22
  964. package/dist/output/index.js.map +0 -1
  965. package/dist/output/json.js +0 -51
  966. package/dist/output/json.js.map +0 -1
  967. package/dist/output/text.js +0 -50
  968. package/dist/output/text.js.map +0 -1
  969. package/dist/output/yaml.js +0 -26
  970. package/dist/output/yaml.js.map +0 -1
  971. package/dist/output-schema.js +0 -18
  972. package/dist/output-schema.js.map +0 -1
  973. package/dist/permissions/browser-sites.js +0 -270
  974. package/dist/permissions/browser-sites.js.map +0 -1
  975. package/dist/permissions/canonical-project.js +0 -13
  976. package/dist/permissions/canonical-project.js.map +0 -1
  977. package/dist/permissions/checks.js +0 -128
  978. package/dist/permissions/checks.js.map +0 -1
  979. package/dist/permissions/headless-trust.js +0 -86
  980. package/dist/permissions/headless-trust.js.map +0 -1
  981. package/dist/permissions/live-mode.js +0 -62
  982. package/dist/permissions/live-mode.js.map +0 -1
  983. package/dist/permissions/mode.js +0 -65
  984. package/dist/permissions/mode.js.map +0 -1
  985. package/dist/permissions/rules.js +0 -358
  986. package/dist/permissions/rules.js.map +0 -1
  987. package/dist/release-notes.js +0 -64
  988. package/dist/release-notes.js.map +0 -1
  989. package/dist/resume-invocation.js +0 -24
  990. package/dist/resume-invocation.js.map +0 -1
  991. package/dist/schedule/build.js +0 -374
  992. package/dist/schedule/build.js.map +0 -1
  993. package/dist/schedule/changes.js +0 -78
  994. package/dist/schedule/changes.js.map +0 -1
  995. package/dist/schedule/commands/add.js +0 -603
  996. package/dist/schedule/commands/add.js.map +0 -1
  997. package/dist/schedule/commands/args.js +0 -80
  998. package/dist/schedule/commands/args.js.map +0 -1
  999. package/dist/schedule/commands/confirm-prompt.js +0 -21
  1000. package/dist/schedule/commands/confirm-prompt.js.map +0 -1
  1001. package/dist/schedule/commands/lifecycle.js +0 -586
  1002. package/dist/schedule/commands/lifecycle.js.map +0 -1
  1003. package/dist/schedule/commands/list.js +0 -260
  1004. package/dist/schedule/commands/list.js.map +0 -1
  1005. package/dist/schedule/commands/logs.js +0 -106
  1006. package/dist/schedule/commands/logs.js.map +0 -1
  1007. package/dist/schedule/commands/service.js +0 -458
  1008. package/dist/schedule/commands/service.js.map +0 -1
  1009. package/dist/schedule/daemon/daemon.js +0 -1265
  1010. package/dist/schedule/daemon/daemon.js.map +0 -1
  1011. package/dist/schedule/daemon/endpoint.js +0 -158
  1012. package/dist/schedule/daemon/endpoint.js.map +0 -1
  1013. package/dist/schedule/daemon/exit.js +0 -8
  1014. package/dist/schedule/daemon/exit.js.map +0 -1
  1015. package/dist/schedule/daemon/log.js +0 -53
  1016. package/dist/schedule/daemon/log.js.map +0 -1
  1017. package/dist/schedule/daemon/notify.js +0 -158
  1018. package/dist/schedule/daemon/notify.js.map +0 -1
  1019. package/dist/schedule/daemon/retention.js +0 -46
  1020. package/dist/schedule/daemon/retention.js.map +0 -1
  1021. package/dist/schedule/daemon/sessions.js +0 -52
  1022. package/dist/schedule/daemon/sessions.js.map +0 -1
  1023. package/dist/schedule/env.js +0 -106
  1024. package/dist/schedule/env.js.map +0 -1
  1025. package/dist/schedule/fire/browser-preflight.js +0 -73
  1026. package/dist/schedule/fire/browser-preflight.js.map +0 -1
  1027. package/dist/schedule/fire/calls.js +0 -114
  1028. package/dist/schedule/fire/calls.js.map +0 -1
  1029. package/dist/schedule/fire/fire.js +0 -681
  1030. package/dist/schedule/fire/fire.js.map +0 -1
  1031. package/dist/schedule/fire/result.js +0 -19
  1032. package/dist/schedule/fire/result.js.map +0 -1
  1033. package/dist/schedule/fire/run-script.js +0 -81
  1034. package/dist/schedule/fire/run-script.js.map +0 -1
  1035. package/dist/schedule/fire/unattended-note.js +0 -51
  1036. package/dist/schedule/fire/unattended-note.js.map +0 -1
  1037. package/dist/schedule/fire/wake-gate.js +0 -90
  1038. package/dist/schedule/fire/wake-gate.js.map +0 -1
  1039. package/dist/schedule/floor.js +0 -1561
  1040. package/dist/schedule/floor.js.map +0 -1
  1041. package/dist/schedule/folder.js +0 -84
  1042. package/dist/schedule/folder.js.map +0 -1
  1043. package/dist/schedule/paths.js +0 -53
  1044. package/dist/schedule/paths.js.map +0 -1
  1045. package/dist/schedule/policy.js +0 -414
  1046. package/dist/schedule/policy.js.map +0 -1
  1047. package/dist/schedule/resume-command.js +0 -72
  1048. package/dist/schedule/resume-command.js.map +0 -1
  1049. package/dist/schedule/script-check.js +0 -146
  1050. package/dist/schedule/script-check.js.map +0 -1
  1051. package/dist/schedule/script-shell.js +0 -5
  1052. package/dist/schedule/script-shell.js.map +0 -1
  1053. package/dist/schedule/service/detect.js +0 -29
  1054. package/dist/schedule/service/detect.js.map +0 -1
  1055. package/dist/schedule/service/index.js +0 -361
  1056. package/dist/schedule/service/index.js.map +0 -1
  1057. package/dist/schedule/service/launchd.js +0 -84
  1058. package/dist/schedule/service/launchd.js.map +0 -1
  1059. package/dist/schedule/service/manifest.js +0 -16
  1060. package/dist/schedule/service/manifest.js.map +0 -1
  1061. package/dist/schedule/service/names.js +0 -22
  1062. package/dist/schedule/service/names.js.map +0 -1
  1063. package/dist/schedule/service/quote.js +0 -64
  1064. package/dist/schedule/service/quote.js.map +0 -1
  1065. package/dist/schedule/service/runner.js +0 -31
  1066. package/dist/schedule/service/runner.js.map +0 -1
  1067. package/dist/schedule/service/systemd.js +0 -96
  1068. package/dist/schedule/service/systemd.js.map +0 -1
  1069. package/dist/schedule/service/windows-task.js +0 -199
  1070. package/dist/schedule/service/windows-task.js.map +0 -1
  1071. package/dist/schedule/service/wsl.js +0 -121
  1072. package/dist/schedule/service/wsl.js.map +0 -1
  1073. package/dist/schedule/store/atomic.js +0 -138
  1074. package/dist/schedule/store/atomic.js.map +0 -1
  1075. package/dist/schedule/store/claims.js +0 -57
  1076. package/dist/schedule/store/claims.js.map +0 -1
  1077. package/dist/schedule/store/digest.js +0 -139
  1078. package/dist/schedule/store/digest.js.map +0 -1
  1079. package/dist/schedule/store/history.js +0 -117
  1080. package/dist/schedule/store/history.js.map +0 -1
  1081. package/dist/schedule/store/jobs.js +0 -277
  1082. package/dist/schedule/store/jobs.js.map +0 -1
  1083. package/dist/schedule/store/state.js +0 -38
  1084. package/dist/schedule/store/state.js.map +0 -1
  1085. package/dist/schedule/types.js +0 -33
  1086. package/dist/schedule/types.js.map +0 -1
  1087. package/dist/schedule/visible-source.js +0 -59
  1088. package/dist/schedule/visible-source.js.map +0 -1
  1089. package/dist/skills/audit.js +0 -75
  1090. package/dist/skills/audit.js.map +0 -1
  1091. package/dist/skills/catalog.js +0 -226
  1092. package/dist/skills/catalog.js.map +0 -1
  1093. package/dist/skills/directory.js +0 -51
  1094. package/dist/skills/directory.js.map +0 -1
  1095. package/dist/skills/save.js +0 -344
  1096. package/dist/skills/save.js.map +0 -1
  1097. package/dist/skills/store.js +0 -351
  1098. package/dist/skills/store.js.map +0 -1
  1099. package/dist/termination.js +0 -143
  1100. package/dist/termination.js.map +0 -1
  1101. package/dist/test-support/toolset.js +0 -27
  1102. package/dist/test-support/toolset.js.map +0 -1
  1103. package/dist/tui/AgentExplorer.js +0 -789
  1104. package/dist/tui/AgentExplorer.js.map +0 -1
  1105. package/dist/tui/App.js +0 -8209
  1106. package/dist/tui/App.js.map +0 -1
  1107. package/dist/tui/BrandHeader.js +0 -14
  1108. package/dist/tui/BrandHeader.js.map +0 -1
  1109. package/dist/tui/Checklist.js +0 -90
  1110. package/dist/tui/Checklist.js.map +0 -1
  1111. package/dist/tui/ChoicePicker.js +0 -64
  1112. package/dist/tui/ChoicePicker.js.map +0 -1
  1113. package/dist/tui/Composer.js +0 -908
  1114. package/dist/tui/Composer.js.map +0 -1
  1115. package/dist/tui/ComposerFrame.js +0 -79
  1116. package/dist/tui/ComposerFrame.js.map +0 -1
  1117. package/dist/tui/CopyPicker.js +0 -19
  1118. package/dist/tui/CopyPicker.js.map +0 -1
  1119. package/dist/tui/EditPromptPicker.js +0 -17
  1120. package/dist/tui/EditPromptPicker.js.map +0 -1
  1121. package/dist/tui/EffortSlider.js +0 -134
  1122. package/dist/tui/EffortSlider.js.map +0 -1
  1123. package/dist/tui/LiveActivity.js +0 -89
  1124. package/dist/tui/LiveActivity.js.map +0 -1
  1125. package/dist/tui/Markdown.js +0 -137
  1126. package/dist/tui/Markdown.js.map +0 -1
  1127. package/dist/tui/PermissionOverlay.js +0 -278
  1128. package/dist/tui/PermissionOverlay.js.map +0 -1
  1129. package/dist/tui/Picker.js +0 -1310
  1130. package/dist/tui/Picker.js.map +0 -1
  1131. package/dist/tui/ProviderSetup.js +0 -125
  1132. package/dist/tui/ProviderSetup.js.map +0 -1
  1133. package/dist/tui/ResumePicker.js +0 -34
  1134. package/dist/tui/ResumePicker.js.map +0 -1
  1135. package/dist/tui/SaveSkillOverlay.js +0 -118
  1136. package/dist/tui/SaveSkillOverlay.js.map +0 -1
  1137. package/dist/tui/ScheduleReviewOverlay.js +0 -166
  1138. package/dist/tui/ScheduleReviewOverlay.js.map +0 -1
  1139. package/dist/tui/StatusBar.js +0 -182
  1140. package/dist/tui/StatusBar.js.map +0 -1
  1141. package/dist/tui/StatusPanel.js +0 -11
  1142. package/dist/tui/StatusPanel.js.map +0 -1
  1143. package/dist/tui/TaskList.js +0 -43
  1144. package/dist/tui/TaskList.js.map +0 -1
  1145. package/dist/tui/TextPrompt.js +0 -185
  1146. package/dist/tui/TextPrompt.js.map +0 -1
  1147. package/dist/tui/ToolOutputViewer.js +0 -39
  1148. package/dist/tui/ToolOutputViewer.js.map +0 -1
  1149. package/dist/tui/Transcript.js +0 -235
  1150. package/dist/tui/Transcript.js.map +0 -1
  1151. package/dist/tui/TrustPrompt.js +0 -13
  1152. package/dist/tui/TrustPrompt.js.map +0 -1
  1153. package/dist/tui/ViewportBound.js +0 -55
  1154. package/dist/tui/ViewportBound.js.map +0 -1
  1155. package/dist/tui/agent-transcript-rows.js +0 -115
  1156. package/dist/tui/agent-transcript-rows.js.map +0 -1
  1157. package/dist/tui/agent.js +0 -4235
  1158. package/dist/tui/agent.js.map +0 -1
  1159. package/dist/tui/browser-notices.js +0 -107
  1160. package/dist/tui/browser-notices.js.map +0 -1
  1161. package/dist/tui/choice-selection.js +0 -38
  1162. package/dist/tui/choice-selection.js.map +0 -1
  1163. package/dist/tui/compact-transcript.js +0 -46
  1164. package/dist/tui/compact-transcript.js.map +0 -1
  1165. package/dist/tui/consent-timing.js +0 -48
  1166. package/dist/tui/consent-timing.js.map +0 -1
  1167. package/dist/tui/conversation-evidence-view.js +0 -96
  1168. package/dist/tui/conversation-evidence-view.js.map +0 -1
  1169. package/dist/tui/conversation-history.js +0 -33
  1170. package/dist/tui/conversation-history.js.map +0 -1
  1171. package/dist/tui/copy-targets.js +0 -189
  1172. package/dist/tui/copy-targets.js.map +0 -1
  1173. package/dist/tui/credential-entry.js +0 -134
  1174. package/dist/tui/credential-entry.js.map +0 -1
  1175. package/dist/tui/edit-prompts.js +0 -35
  1176. package/dist/tui/edit-prompts.js.map +0 -1
  1177. package/dist/tui/exit-summary.js +0 -30
  1178. package/dist/tui/exit-summary.js.map +0 -1
  1179. package/dist/tui/external-editor.js +0 -169
  1180. package/dist/tui/external-editor.js.map +0 -1
  1181. package/dist/tui/hypermode.js +0 -58
  1182. package/dist/tui/hypermode.js.map +0 -1
  1183. package/dist/tui/index.js +0 -81
  1184. package/dist/tui/index.js.map +0 -1
  1185. package/dist/tui/live-window.js +0 -281
  1186. package/dist/tui/live-window.js.map +0 -1
  1187. package/dist/tui/log-pane.js +0 -100
  1188. package/dist/tui/log-pane.js.map +0 -1
  1189. package/dist/tui/login-prompt.js +0 -105
  1190. package/dist/tui/login-prompt.js.map +0 -1
  1191. package/dist/tui/logo.js +0 -9
  1192. package/dist/tui/logo.js.map +0 -1
  1193. package/dist/tui/markdown-block-cache.js +0 -76
  1194. package/dist/tui/markdown-block-cache.js.map +0 -1
  1195. package/dist/tui/markdown-table.js +0 -175
  1196. package/dist/tui/markdown-table.js.map +0 -1
  1197. package/dist/tui/markdown-wrap.js +0 -189
  1198. package/dist/tui/markdown-wrap.js.map +0 -1
  1199. package/dist/tui/markdownParser.js +0 -237
  1200. package/dist/tui/markdownParser.js.map +0 -1
  1201. package/dist/tui/mentions.js +0 -150
  1202. package/dist/tui/mentions.js.map +0 -1
  1203. package/dist/tui/model-catalogue-view.js +0 -75
  1204. package/dist/tui/model-catalogue-view.js.map +0 -1
  1205. package/dist/tui/model-choices.js +0 -157
  1206. package/dist/tui/model-choices.js.map +0 -1
  1207. package/dist/tui/model-search.js +0 -28
  1208. package/dist/tui/model-search.js.map +0 -1
  1209. package/dist/tui/model-selection-intent.js +0 -96
  1210. package/dist/tui/model-selection-intent.js.map +0 -1
  1211. package/dist/tui/model-switch-tool.js +0 -74
  1212. package/dist/tui/model-switch-tool.js.map +0 -1
  1213. package/dist/tui/model-switch.js +0 -106
  1214. package/dist/tui/model-switch.js.map +0 -1
  1215. package/dist/tui/notices.js +0 -27
  1216. package/dist/tui/notices.js.map +0 -1
  1217. package/dist/tui/open-browser.js +0 -147
  1218. package/dist/tui/open-browser.js.map +0 -1
  1219. package/dist/tui/permission-review.js +0 -858
  1220. package/dist/tui/permission-review.js.map +0 -1
  1221. package/dist/tui/plugin-view.js +0 -59
  1222. package/dist/tui/plugin-view.js.map +0 -1
  1223. package/dist/tui/provider-list.js +0 -327
  1224. package/dist/tui/provider-list.js.map +0 -1
  1225. package/dist/tui/provider-selection.js +0 -16
  1226. package/dist/tui/provider-selection.js.map +0 -1
  1227. package/dist/tui/schedule/host-commands.js +0 -428
  1228. package/dist/tui/schedule/host-commands.js.map +0 -1
  1229. package/dist/tui/schedule/integration.js +0 -150
  1230. package/dist/tui/schedule/integration.js.map +0 -1
  1231. package/dist/tui/schedule/loop-host.js +0 -153
  1232. package/dist/tui/schedule/loop-host.js.map +0 -1
  1233. package/dist/tui/schedule/resume.js +0 -333
  1234. package/dist/tui/schedule/resume.js.map +0 -1
  1235. package/dist/tui/schedule/startup.js +0 -121
  1236. package/dist/tui/schedule/startup.js.map +0 -1
  1237. package/dist/tui/schedule/tool-host.js +0 -619
  1238. package/dist/tui/schedule/tool-host.js.map +0 -1
  1239. package/dist/tui/selection-window.js +0 -37
  1240. package/dist/tui/selection-window.js.map +0 -1
  1241. package/dist/tui/shell-escape.js +0 -110
  1242. package/dist/tui/shell-escape.js.map +0 -1
  1243. package/dist/tui/skills/learning.js +0 -131
  1244. package/dist/tui/skills/learning.js.map +0 -1
  1245. package/dist/tui/skills/suggest-setting.js +0 -55
  1246. package/dist/tui/skills/suggest-setting.js.map +0 -1
  1247. package/dist/tui/skills/suggestion-ledger.js +0 -52
  1248. package/dist/tui/skills/suggestion-ledger.js.map +0 -1
  1249. package/dist/tui/slashCommands.js +0 -1587
  1250. package/dist/tui/slashCommands.js.map +0 -1
  1251. package/dist/tui/status-card.js +0 -30
  1252. package/dist/tui/status-card.js.map +0 -1
  1253. package/dist/tui/status-panel-layout.js +0 -42
  1254. package/dist/tui/status-panel-layout.js.map +0 -1
  1255. package/dist/tui/stream-blocks.js +0 -187
  1256. package/dist/tui/stream-blocks.js.map +0 -1
  1257. package/dist/tui/task-activity.js +0 -157
  1258. package/dist/tui/task-activity.js.map +0 -1
  1259. package/dist/tui/terminal-choice-text.js +0 -118
  1260. package/dist/tui/terminal-choice-text.js.map +0 -1
  1261. package/dist/tui/terminal-display.js +0 -65
  1262. package/dist/tui/terminal-display.js.map +0 -1
  1263. package/dist/tui/terminal-hyperlinks.js +0 -70
  1264. package/dist/tui/terminal-hyperlinks.js.map +0 -1
  1265. package/dist/tui/theme.js +0 -34
  1266. package/dist/tui/theme.js.map +0 -1
  1267. package/dist/tui/triggers/analyze.js +0 -221
  1268. package/dist/tui/triggers/analyze.js.map +0 -1
  1269. package/dist/tui/triggers/context-text.js +0 -44
  1270. package/dist/tui/triggers/context-text.js.map +0 -1
  1271. package/dist/tui/triggers/copy.js +0 -163
  1272. package/dist/tui/triggers/copy.js.map +0 -1
  1273. package/dist/tui/triggers/detect.js +0 -295
  1274. package/dist/tui/triggers/detect.js.map +0 -1
  1275. package/dist/tui/triggers/fold.js +0 -44
  1276. package/dist/tui/triggers/fold.js.map +0 -1
  1277. package/dist/tui/triggers/pattern.js +0 -243
  1278. package/dist/tui/triggers/pattern.js.map +0 -1
  1279. package/dist/tui/triggers/provenance.js +0 -98
  1280. package/dist/tui/triggers/provenance.js.map +0 -1
  1281. package/dist/tui/triggers/registry.js +0 -164
  1282. package/dist/tui/triggers/registry.js.map +0 -1
  1283. package/dist/tui/triggers/setting.js +0 -61
  1284. package/dist/tui/triggers/setting.js.map +0 -1
  1285. package/dist/tui/triggers/verbs.js +0 -140
  1286. package/dist/tui/triggers/verbs.js.map +0 -1
  1287. package/dist/tui/turn-interruption.js +0 -160
  1288. package/dist/tui/turn-interruption.js.map +0 -1
  1289. package/dist/tui/turn-limits-settings.js +0 -88
  1290. package/dist/tui/turn-limits-settings.js.map +0 -1
  1291. package/dist/tui/types.js +0 -7
  1292. package/dist/tui/types.js.map +0 -1
  1293. package/dist/tui/units.js +0 -20
  1294. package/dist/tui/units.js.map +0 -1
  1295. package/dist/tui/use-selection-index.js +0 -13
  1296. package/dist/tui/use-selection-index.js.map +0 -1
  1297. package/dist/tui/web-activity.js +0 -105
  1298. package/dist/tui/web-activity.js.map +0 -1
  1299. package/dist/tui/workspace-diff.js +0 -101
  1300. package/dist/tui/workspace-diff.js.map +0 -1
  1301. package/dist/tui/workspace-review.js +0 -67
  1302. package/dist/tui/workspace-review.js.map +0 -1
  1303. package/dist/user-commands/store.js +0 -235
  1304. package/dist/user-commands/store.js.map +0 -1
  1305. package/dist/version.js +0 -23
  1306. package/dist/version.js.map +0 -1
@@ -1,50 +0,0 @@
1
- import { inspect } from 'node:util';
2
- export class TextFormatter {
3
- opts;
4
- name = 'text';
5
- constructor(opts) {
6
- this.opts = opts;
7
- }
8
- print(data) {
9
- process.stdout.write(`${renderText(data)}\n`);
10
- }
11
- info(message) {
12
- if (this.opts.quiet)
13
- return;
14
- process.stderr.write(`${message}\n`);
15
- }
16
- error(payload) {
17
- process.stderr.write(`Error: ${payload.message}\n`);
18
- if (payload.details !== undefined) {
19
- process.stderr.write(`${renderText(payload.details)}\n`);
20
- }
21
- }
22
- }
23
- function renderText(data) {
24
- if (data === null || data === undefined)
25
- return '';
26
- if (typeof data === 'string')
27
- return data;
28
- if (typeof data === 'number' || typeof data === 'boolean' || typeof data === 'bigint') {
29
- return String(data);
30
- }
31
- // A payload that brought its own rendering gets to use it.
32
- //
33
- // Without this a command has to choose: print the structured payload,
34
- // which the `json` and `yaml` formats need, or print the human string,
35
- // which text needs. Every command that wanted both ended up passing the
36
- // object and letting `inspect` dump it — so `namzu eval` in its default
37
- // format printed a nested object graph where a report was meant to be,
38
- // with the readable version sitting unused in a `text` field one level
39
- // down. Found by running the built binary, not by a test: the test
40
- // asserted on the payload, which was correct, and never on what a
41
- // person sees.
42
- if (typeof data === 'object' && typeof data.text === 'string') {
43
- return data.text;
44
- }
45
- // `depth: 6` is generous for CLI payloads while keeping pathological
46
- // (deeply nested or self-referencing) graphs from exhausting stack/heap.
47
- // `inspect` already marks already-seen objects as `[Circular]`.
48
- return inspect(data, { depth: 6, colors: false, compact: false });
49
- }
50
- //# sourceMappingURL=text.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/output/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAInC,MAAM,OAAO,aAAa;IAGI;IAFpB,IAAI,GAAG,MAAe,CAAA;IAE/B,YAA6B,IAAsB;QAAtB,SAAI,GAAJ,IAAI,CAAkB;IAAG,CAAC;IAEvD,KAAK,CAAC,IAAa;QAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC9C,CAAC;IAED,IAAI,CAAC,OAAe;QACnB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAM;QAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,KAAK,CAAC,OAA+C;QACpD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,OAAO,CAAC,OAAO,IAAI,CAAC,CAAA;QACnD,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACnC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACzD,CAAC;IACF,CAAC;CACD;AAED,SAAS,UAAU,CAAC,IAAa;IAChC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,EAAE,CAAA;IAClD,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IACzC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,SAAS,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QACvF,OAAO,MAAM,CAAC,IAAI,CAAC,CAAA;IACpB,CAAC;IAED,2DAA2D;IAC3D,EAAE;IACF,sEAAsE;IACtE,uEAAuE;IACvE,wEAAwE;IACxE,wEAAwE;IACxE,uEAAuE;IACvE,uEAAuE;IACvE,mEAAmE;IACnE,kEAAkE;IAClE,eAAe;IACf,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAQ,IAA2B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACvF,OAAQ,IAAyB,CAAC,IAAI,CAAA;IACvC,CAAC;IACD,qEAAqE;IACrE,yEAAyE;IACzE,gEAAgE;IAChE,OAAO,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;AAClE,CAAC"}
@@ -1,26 +0,0 @@
1
- import { stringify as yamlStringify } from 'yaml';
2
- export class YamlFormatter {
3
- opts;
4
- name = 'yaml';
5
- constructor(opts) {
6
- this.opts = opts;
7
- }
8
- print(data) {
9
- process.stdout.write(yamlStringify(data));
10
- }
11
- info(message) {
12
- if (this.opts.quiet)
13
- return;
14
- process.stderr.write(yamlStringify({ level: 'info', message }));
15
- }
16
- error(payload) {
17
- const out = {
18
- level: 'error',
19
- message: payload.message,
20
- };
21
- if (payload.details !== undefined)
22
- out.details = payload.details;
23
- process.stderr.write(yamlStringify(out));
24
- }
25
- }
26
- //# sourceMappingURL=yaml.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"yaml.js","sourceRoot":"","sources":["../../src/output/yaml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAA;AAIjD,MAAM,OAAO,aAAa;IAGI;IAFpB,IAAI,GAAG,MAAe,CAAA;IAE/B,YAA6B,IAAsB;QAAtB,SAAI,GAAJ,IAAI,CAAkB;IAAG,CAAC;IAEvD,KAAK,CAAC,IAAa;QAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;IAC1C,CAAC;IAED,IAAI,CAAC,OAAe;QACnB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAM;QAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;IAChE,CAAC;IAED,KAAK,CAAC,OAA+C;QACpD,MAAM,GAAG,GAA4B;YACpC,KAAK,EAAE,OAAO;YACd,OAAO,EAAE,OAAO,CAAC,OAAO;SACxB,CAAA;QACD,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS;YAAE,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;QAChE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAA;IACzC,CAAC;CACD"}
@@ -1,18 +0,0 @@
1
- import { readFileSync } from 'node:fs';
2
- import { isDeepStrictEqual } from 'node:util';
3
- import { mcpJsonSchemaToZod, renderToolSchema, } from '@namzu/sdk';
4
- /** Resolve once at launch; the schema remains fixed for the session. */
5
- export function loadOutputSchema(path) {
6
- const value = JSON.parse(readFileSync(path, 'utf8'));
7
- if (!value || typeof value !== 'object' || Array.isArray(value))
8
- throw new Error('Output schema must be a JSON Schema object.');
9
- const schema = mcpJsonSchemaToZod(value);
10
- const { $schema: _dialect, ...expected } = value;
11
- if (!isDeepStrictEqual(renderToolSchema(schema), expected))
12
- throw new Error('Output schema cannot be represented losslessly. Use an explicit object schema with properties, required and additionalProperties; unsupported constraints are not discarded.');
13
- return {
14
- mode: 'native',
15
- schema,
16
- };
17
- }
18
- //# sourceMappingURL=output-schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"output-schema.js","sourceRoot":"","sources":["../src/output-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,EAGN,kBAAkB,EAClB,gBAAgB,GAChB,MAAM,YAAY,CAAA;AAEnB,wEAAwE;AACxE,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC5C,MAAM,KAAK,GAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA;IAC7D,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;IAC/D,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAsB,CAAC,CAAA;IACzD,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,GAAG,KAAgC,CAAA;IAC3E,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC;QACzD,MAAM,IAAI,KAAK,CACd,8KAA8K,CAC9K,CAAA;IACF,OAAO;QACN,IAAI,EAAE,QAAQ;QACd,MAAM;KACN,CAAA;AACF,CAAC"}
@@ -1,270 +0,0 @@
1
- /**
2
- * `browser.sites`, compiled to the kernel's rule vocabulary.
3
- *
4
- * An operator writes one level per site:
5
- *
6
- * ```yaml
7
- * browser:
8
- * sites:
9
- * "https://github.com": act
10
- * "https://*.example.com": read
11
- * "*": ask
12
- * ```
13
- *
14
- * and the gate sees `argument_pattern` rules over the two arguments the
15
- * browser tools canonicalise: `browser.url` (the address a navigation loads)
16
- * and `browser_act.origin` (the page an action changes). The tools declare
17
- * `url` as a URL argument, so a rule tests it whole; the SDK's input schema
18
- * has already turned `HTTPS://GitHub.com.:443/x` into `https://github.com/x`,
19
- * so one spelling per site is enough.
20
- *
21
- * | Level | `browser` navigate / tabs new | `browser_act` |
22
- * | ------ | ----------------------------- | ------------- |
23
- * | `deny` | deny | deny |
24
- * | `read` | allow | deny |
25
- * | `ask` | review | review |
26
- * | `act` | allow | allow |
27
- *
28
- * Order is the gate's first match: every `deny` first, then the other sites
29
- * from most to least specific (the same order `@namzu/browser`'s host policy
30
- * uses, so the gate and the host agree on which key decides), then `*`.
31
- * Looking at the page (`snapshot`, `screenshot`, `scroll`, `wait_for`, and
32
- * `tabs list|select|close`) is allowed: the browser tools are network tools,
33
- * which are reviewed even when read-only unless a rule allows them, and the
34
- * page being looked at is one the host already let stay loaded.
35
- *
36
- * The origin patterns are built here, from the SDK's canonical site key,
37
- * rather than from a glob: `https://github.com` must not match
38
- * `https://github.com.evil.example`, `https://evil.example/?https://github.com`
39
- * or `https://github.com:8443`.
40
- */
41
- import { BROWSER_ACT_TOOL_NAME, BROWSER_TOOL_NAME, canonicalizeBrowserSitePattern, canonicalizeBrowserUrl, } from '@namzu/sdk';
42
- export const BROWSER_SITE_LEVELS = ['deny', 'read', 'ask', 'act'];
43
- /** What an unlisted site gets when `*` is not written. */
44
- export const DEFAULT_BROWSER_SITE_LEVEL = 'ask';
45
- export function isBrowserSiteLevel(value) {
46
- return typeof value === 'string' && BROWSER_SITE_LEVELS.includes(value);
47
- }
48
- /** A site key as the gate and the host read it: `*`, or the SDK's canonical pattern. */
49
- export function canonicalBrowserSiteKey(raw) {
50
- if (raw.trim() === '*')
51
- return { ok: true, key: '*' };
52
- const verdict = canonicalizeBrowserSitePattern(raw);
53
- return verdict.ok ? { ok: true, key: verdict.pattern } : { ok: false, reason: verdict.reason };
54
- }
55
- function parseSite(key, level) {
56
- const match = /^(https?):\/\/(\*\.)?([^:]+)(?::(\*|\d+))?$/.exec(key);
57
- if (!match)
58
- return undefined;
59
- return {
60
- key,
61
- level,
62
- scheme: match[1] ?? '',
63
- host: match[3] ?? '',
64
- wildcardHost: match[2] !== undefined,
65
- port: match[4] ?? '',
66
- };
67
- }
68
- /** Higher is more specific: exact host over wildcard, longer suffix first, exact port over `*`. */
69
- function specificity(site) {
70
- return (site.wildcardHost ? 0 : 1_000_000) + site.host.length * 10 + (site.port === '*' ? 0 : 1);
71
- }
72
- function escapeRegExp(value) {
73
- return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
74
- }
75
- /**
76
- * The regex source (unanchored) that matches exactly the canonical origins
77
- * a site key names. `*.` is one or more whole labels; `:*` is any port or
78
- * none; no port is the scheme's default only, which the canonical form
79
- * leaves out.
80
- */
81
- function originSource(site) {
82
- const host = site.wildcardHost
83
- ? `(?:[^./:?#@\\[\\]]+\\.)+${escapeRegExp(site.host)}`
84
- : escapeRegExp(site.host);
85
- const port = site.port === '*' ? '(?::\\d{1,5})?' : site.port === '' ? '' : `:${site.port}`;
86
- return `${site.scheme}://${host}${port}`;
87
- }
88
- const NAVIGATE = {
89
- deny: 'deny',
90
- read: 'allow',
91
- ask: 'review',
92
- act: 'allow',
93
- };
94
- const ACT = {
95
- deny: 'deny',
96
- read: 'deny',
97
- ask: 'review',
98
- act: 'allow',
99
- };
100
- function rulesFor(origin, level) {
101
- // `*`: any value. `^` alone matches every string the argument can hold.
102
- const url = origin === undefined ? '^' : `^${origin}(?:[/?#]|$)`;
103
- const act = origin === undefined ? '^' : `^${origin}$`;
104
- return [
105
- {
106
- type: 'argument_pattern',
107
- toolNames: [BROWSER_TOOL_NAME],
108
- argument: 'url',
109
- pattern: url,
110
- decision: NAVIGATE[level],
111
- },
112
- {
113
- type: 'argument_pattern',
114
- toolNames: [BROWSER_ACT_TOOL_NAME],
115
- argument: 'origin',
116
- pattern: act,
117
- decision: ACT[level],
118
- },
119
- ];
120
- }
121
- /**
122
- * Looking at the page the browser holds. These calls carry no address; the
123
- * host only ever holds a page the site rules let stay (or `about:blank`).
124
- * `tabs new` carries a `url` and is decided by the site rules instead.
125
- */
126
- const LOOKING = [
127
- {
128
- type: 'argument_pattern',
129
- toolNames: [BROWSER_TOOL_NAME],
130
- argument: 'action',
131
- pattern: '^(?:snapshot|screenshot|scroll|wait_for)$',
132
- decision: 'allow',
133
- },
134
- {
135
- type: 'argument_pattern',
136
- toolNames: [BROWSER_TOOL_NAME],
137
- argument: 'op',
138
- pattern: '^(?:list|select|close)$',
139
- decision: 'allow',
140
- },
141
- ];
142
- /** Canonical keys, `*` filled in, unreadable entries reported. */
143
- export function normalizeBrowserSites(sites) {
144
- const out = {};
145
- const diagnostics = [];
146
- for (const [raw, level] of Object.entries(sites ?? {})) {
147
- if (!isBrowserSiteLevel(level)) {
148
- diagnostics.push(`browser.sites."${raw}": use deny, read, ask or act`);
149
- continue;
150
- }
151
- const verdict = canonicalBrowserSiteKey(raw);
152
- if (!verdict.ok) {
153
- diagnostics.push(`browser.sites."${raw}": ${verdict.reason}`);
154
- continue;
155
- }
156
- const existing = out[verdict.key];
157
- // The same site written twice (`https://GitHub.com` and
158
- // `https://github.com`): the narrower level holds, so a spelling can
159
- // never widen what another spelling said.
160
- out[verdict.key] = existing === undefined ? level : narrower(existing, level);
161
- }
162
- if (out['*'] === undefined)
163
- out['*'] = DEFAULT_BROWSER_SITE_LEVEL;
164
- return { sites: out, diagnostics };
165
- }
166
- /** The narrower of two levels: `deny`, then `read`, then `ask`, then `act`. */
167
- export function narrower(a, b) {
168
- return BROWSER_SITE_LEVELS.indexOf(a) <= BROWSER_SITE_LEVELS.indexOf(b) ? a : b;
169
- }
170
- /** Compile `browser.sites` into gate rules, in the order the gate must try them. */
171
- export function compileBrowserSites(sites) {
172
- const normalized = normalizeBrowserSites(sites);
173
- const diagnostics = [...normalized.diagnostics];
174
- const parsed = [];
175
- for (const [key, level] of Object.entries(normalized.sites)) {
176
- if (key === '*')
177
- continue;
178
- const site = parseSite(key, level);
179
- if (site)
180
- parsed.push(site);
181
- else
182
- diagnostics.push(`browser.sites."${key}": could not be read`);
183
- }
184
- const denies = parsed.filter((site) => site.level === 'deny');
185
- const others = parsed
186
- .filter((site) => site.level !== 'deny')
187
- .sort((a, b) => specificity(b) - specificity(a) || (a.key < b.key ? -1 : 1));
188
- const rules = [
189
- // A blank tab is where the browser starts; it loads nothing.
190
- {
191
- type: 'argument_pattern',
192
- toolNames: [BROWSER_TOOL_NAME],
193
- argument: 'url',
194
- pattern: '^about:blank$',
195
- decision: 'allow',
196
- },
197
- ...denies.flatMap((site) => rulesFor(originSource(site), 'deny')),
198
- ...others.flatMap((site) => rulesFor(originSource(site), site.level)),
199
- ...rulesFor(undefined, normalized.sites['*'] ?? DEFAULT_BROWSER_SITE_LEVEL),
200
- ...LOOKING,
201
- ];
202
- return { rules, sites: normalized.sites, diagnostics };
203
- }
204
- const BROWSER_TOOLS = new Set([BROWSER_TOOL_NAME, BROWSER_ACT_TOOL_NAME]);
205
- /** A `[permissions]` rule that denies a browser tool, which the site rules must not get ahead of. */
206
- function isBrowserDeny(rule) {
207
- switch (rule.type) {
208
- case 'deny_by_name':
209
- return rule.toolNames.some((name) => BROWSER_TOOLS.has(name));
210
- case 'argument_pattern':
211
- return rule.decision === 'deny' && rule.toolNames.some((name) => BROWSER_TOOLS.has(name));
212
- case 'custom_pattern':
213
- return (rule.decision === 'deny' &&
214
- (rule.pattern.startsWith(`^${BROWSER_TOOL_NAME}`) ||
215
- rule.pattern.startsWith(`^${BROWSER_ACT_TOOL_NAME}`)));
216
- default:
217
- return false;
218
- }
219
- }
220
- /**
221
- * The session's rules with the site rules in them: a `[permissions]` deny
222
- * that names a browser tool first (it still wins), then the site rules, then
223
- * the rest of the table. An `allow` or `ask` for `browser` in the table is
224
- * reached only by a call no site rule decided (`back`, `forward`, `reload`).
225
- */
226
- export function withBrowserSiteRules(tableRules, siteRules) {
227
- return [
228
- ...tableRules.filter(isBrowserDeny),
229
- ...siteRules,
230
- ...tableRules.filter((rule) => !isBrowserDeny(rule)),
231
- ];
232
- }
233
- /**
234
- * Which key of `sites` decides `origin`, and at what level: a matching
235
- * `deny` first, else the most specific match, else `*`. The same answer the
236
- * compiled rules give; used to show the rule on the review screen.
237
- */
238
- export function browserSiteRuleFor(sites, origin) {
239
- const normalized = normalizeBrowserSites(sites).sites;
240
- const parsed = Object.entries(normalized)
241
- .filter(([key]) => key !== '*')
242
- .map(([key, level]) => parseSite(key, level))
243
- .filter((site) => site !== undefined);
244
- const hits = parsed.filter((site) => new RegExp(`^${originSource(site)}$`).test(origin));
245
- const deny = hits.find((site) => site.level === 'deny');
246
- if (deny)
247
- return { site: deny.key, level: 'deny' };
248
- const best = hits.sort((a, b) => specificity(b) - specificity(a))[0];
249
- if (best)
250
- return { site: best.key, level: best.level };
251
- return { site: '*', level: normalized['*'] ?? DEFAULT_BROWSER_SITE_LEVEL };
252
- }
253
- /**
254
- * The origin a browser call opens or acts on, canonical, or `undefined` for
255
- * one that names none (`snapshot`, `back`, …).
256
- */
257
- export function browserCallOrigin(toolName, input) {
258
- if (typeof input !== 'object' || input === null)
259
- return undefined;
260
- const record = input;
261
- if (toolName === BROWSER_ACT_TOOL_NAME) {
262
- return typeof record.origin === 'string' ? record.origin : undefined;
263
- }
264
- if (toolName === BROWSER_TOOL_NAME && typeof record.url === 'string') {
265
- const verdict = canonicalizeBrowserUrl(record.url);
266
- return verdict.ok && verdict.url !== 'about:blank' ? verdict.origin : undefined;
267
- }
268
- return undefined;
269
- }
270
- //# sourceMappingURL=browser-sites.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-sites.js","sourceRoot":"","sources":["../../src/permissions/browser-sites.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import { realpathSync } from 'node:fs';
2
- import { resolve } from 'node:path';
3
- /**
4
- * Resolve a project path once at the authority boundary.
5
- *
6
- * Every operation admitted by a trust decision must keep this exact result.
7
- * Re-resolving a lexical symlink later would let it be redirected after the
8
- * operator approved a different directory.
9
- */
10
- export function canonicalProjectPath(dir) {
11
- return realpathSync(resolve(dir));
12
- }
13
- //# sourceMappingURL=canonical-project.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"canonical-project.js","sourceRoot":"","sources":["../../src/permissions/canonical-project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC/C,OAAO,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;AAClC,CAAC"}
@@ -1,128 +0,0 @@
1
- /**
2
- * An operator's own expectations about their own permission table, checked.
3
- *
4
- * ## Why config needs tests at all
5
- *
6
- * A `[permissions]` entry is a glob compiled to a regular expression and
7
- * evaluated against a subject the operator never sees. Every part of that
8
- * pipeline has been wrong at least once in this repository, and each time the
9
- * failure was silent and permissive: a rule that read like a prohibition and
10
- * decided nothing, an `allow` whose match began wherever the text did, a glob
11
- * whose trailing star reached past the end of a command. In every case the
12
- * config LOOKED right, and nothing the operator could run would have told them
13
- * otherwise.
14
- *
15
- * A test case attached to the policy turns that into a startup failure. It is
16
- * the same argument as `a-falsifiable-comment-is-a-test`, applied to
17
- * configuration: a claim nobody can check is a claim nobody should believe.
18
- *
19
- * ## What a check is
20
- *
21
- * A tool, an input, and the decision the operator believes their table
22
- * produces:
23
- *
24
- * "permissionChecks": [
25
- * { "tool": "bash", "input": { "command": "git status --short" }, "expect": "allow" },
26
- * { "tool": "bash", "input": { "command": "git status && rm -rf ~" }, "expect": "ask" }
27
- * ]
28
- *
29
- * The second is the interesting one. It asserts a NEGATIVE — that the table
30
- * does not stretch to cover a command the operator never named — and a negative
31
- * is exactly what a table of globs cannot be read for.
32
- *
33
- * ## Why it runs the real gate
34
- *
35
- * Re-implementing the matching here would check this file against itself. The
36
- * check compiles the operator's table to rules and hands them to the same
37
- * `AuthorizationGate` a turn uses, so what it verifies is the decision that will
38
- * actually be taken.
39
- *
40
- * The floor is deliberately OFF while checking. `denyDangerousPatterns` would
41
- * answer for the four catastrophic commands before any operator rule was
42
- * consulted, so a check written about the table would silently be answered by
43
- * something else — and would keep passing after the rule it was written for was
44
- * deleted.
45
- */
46
- import { AuthorizationGate, NOOP_LOGGER, getBuiltinTools } from '@namzu/sdk';
47
- import { isPermissionEffect } from './rules.js';
48
- /**
49
- * The gate's vocabulary against the operator's.
50
- *
51
- * `review` is what the gate returns when nothing decided, and `ask` is what the
52
- * operator writes for it. Two names for one outcome is a translation, not a
53
- * mapping to be got wrong in one direction.
54
- */
55
- function asEffect(decision) {
56
- return decision === 'review' ? 'ask' : decision;
57
- }
58
- /**
59
- * Evaluate every check against the compiled table.
60
- *
61
- * Returns a diagnostic per failure rather than throwing, for the reason the
62
- * compiler already collects rather than throws: one wrong expectation should
63
- * cost that line and not the other nine. But a failure must be SAID — a check
64
- * that silently passes is worse than no check, because it is a reason to
65
- * believe.
66
- */
67
- export function verifyPermissionChecks(rules, checks) {
68
- if (!checks || checks.length === 0)
69
- return [];
70
- const diagnostics = [];
71
- const gate = new AuthorizationGate({
72
- enabled: true,
73
- rules: [...rules],
74
- allowReadOnlyTools: false,
75
- // Off on purpose; see the note at the top of this file.
76
- denyDangerousPatterns: false,
77
- logDecisions: false,
78
- }, NOOP_LOGGER);
79
- for (const [index, check] of checks.entries()) {
80
- const where = `permissionChecks[${index}]`;
81
- if (typeof check?.tool !== 'string' || check.tool === '') {
82
- diagnostics.push({ tool: where, message: 'expected a "tool" naming the tool to evaluate' });
83
- continue;
84
- }
85
- if (typeof check.input !== 'object' || check.input === null || Array.isArray(check.input)) {
86
- diagnostics.push({
87
- tool: where,
88
- message: `expected an "input" object for ${check.tool}; got ${describe(check.input)}`,
89
- });
90
- continue;
91
- }
92
- if (!isPermissionEffect(check.expect)) {
93
- diagnostics.push({
94
- tool: where,
95
- message: `expected "expect" to be "allow", "ask" or "deny"; got ${JSON.stringify(check.expect)}`,
96
- });
97
- continue;
98
- }
99
- // A builtin's command line is read for the shell the tool spawns, as it
100
- // is at runtime; the CLI runs commands on the host unless a sandbox is
101
- // chosen, and a sandboxed reading is only ever stricter.
102
- const builtin = getBuiltinTools().find((tool) => tool.name === check.tool);
103
- const commandDialect = builtin?.commandDialect?.({ sandboxed: false });
104
- const verdict = gate.evaluate({
105
- toolName: check.tool,
106
- toolInput: check.input,
107
- toolDef: undefined,
108
- ...(commandDialect !== undefined ? { commandDialect } : {}),
109
- });
110
- const actual = asEffect(verdict.decision);
111
- if (actual === check.expect)
112
- continue;
113
- // The reason is quoted because it names the rule that decided, which is
114
- // the difference between "your config is wrong" and a message someone
115
- // can act on without re-deriving the whole table.
116
- diagnostics.push({
117
- tool: where,
118
- message: `${check.tool} ${JSON.stringify(check.input)} is "${actual}", not the expected "${check.expect}" — ${verdict.reason}`,
119
- });
120
- }
121
- return diagnostics;
122
- }
123
- function describe(value) {
124
- if (value === null)
125
- return 'null';
126
- return Array.isArray(value) ? 'an array' : typeof value;
127
- }
128
- //# sourceMappingURL=checks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"checks.js","sourceRoot":"","sources":["../../src/permissions/checks.ts"],"names":[],"mappings":"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"}
@@ -1,86 +0,0 @@
1
- /**
2
- * The folder-trust gate for the headless one-shots.
3
- *
4
- * `integrations/trust/store.ts` states the contract in its own header: "before
5
- * namzu reads, runs commands in, or edits files in a directory, the user must
6
- * trust it." That was true of the TUI and false of everything else —
7
- * `isTrusted` had exactly one caller, `tui/App.tsx`. `exec` and `exec --json`
8
- * opened a session in whatever directory they were pointed at, with tools
9
- * auto-approved because there is nobody to ask, so
10
- *
11
- * git clone <a stranger's repository> && cd <it> && namzu exec "what is this?"
12
- *
13
- * ran that repository's code on the machine, unattended, having asked nobody.
14
- *
15
- * ## What this stops, and what it does not
16
- *
17
- * It stops one thing: a headless run in a directory no human has vouched for
18
- * does not start. A decision currently made by nobody becomes a decision made
19
- * by someone, on the record.
20
- *
21
- * It does NOT stop a trusted directory that later turns hostile — a `git pull`
22
- * into a trusted checkout can bring in anything, and trust is a statement about
23
- * a location rather than about its current contents. It does not stop anything
24
- * INSIDE a trusted directory, where the operator's rules and the safety gate
25
- * are the only controls. And it does not stop an operator who passes the
26
- * opt-in reflexively. This raises the floor from "nobody was asked" to
27
- * "somebody typed it". It is not a sandbox and must not be described as one.
28
- *
29
- * ## Why not gate only the reading of `AGENTS.md`
30
- *
31
- * That was proposed on the grounds that a system-prompt read is authority
32
- * where a tool result is only data, which is true and still the wrong fix.
33
- * Anyone who can write `AGENTS.md` in that repository can write the build
34
- * script, the test file, the install hook — all of which run with tools
35
- * auto-approved. Declining to read the attacker's markdown while executing the
36
- * attacker's code blocks the weaker vector, reports success on a turn that is
37
- * already compromised, and would make the instructions feature silently dead
38
- * in CI where nothing has ever been trusted.
39
- *
40
- * ## Refuse, never degrade
41
- *
42
- * There is no reduced mode. "Degrade gracefully" here would mean executing
43
- * slightly less of the stranger's code and printing something that looks like
44
- * an answer, which is the failure this package keeps finding rather than a
45
- * milder version of it.
46
- */
47
- import { isTrusted } from '../integrations/trust/store.js';
48
- import { canonicalProjectPath } from './canonical-project.js';
49
- export function decideHeadlessTrust(check) {
50
- // Capture the real target exactly once. The permission and every operation
51
- // it admits must refer to the same directory entry even if the lexical
52
- // `--cwd` was a symlink and somebody repoints it immediately afterward.
53
- let cwd;
54
- try {
55
- cwd = canonicalProjectPath(check.cwd);
56
- }
57
- catch {
58
- return {
59
- allowed: false,
60
- message: `refusing to run because the working directory changed or became unavailable while trust was being checked: ${check.cwd}`,
61
- };
62
- }
63
- // `--trust` is per-turn and is deliberately NOT written to the trust file.
64
- // One reflexive use must not change the machine's state forever; the TUI
65
- // stays the only path that records durable trust, because that is the one
66
- // where a human is actually looking at a prompt.
67
- if (check.trustFlag)
68
- return { allowed: true, cwd };
69
- const isDirTrusted = check.trusted ?? ((dir) => isTrusted(dir));
70
- if (isDirTrusted(cwd))
71
- return { allowed: true, cwd };
72
- return {
73
- allowed: false,
74
- message: [
75
- `refusing to run in a folder nobody has trusted: ${cwd}`,
76
- '',
77
- "namzu reads this folder's files, runs commands in it and executes its",
78
- 'code, and a headless turn approves those tools without asking because',
79
- 'there is nobody to ask.',
80
- '',
81
- 'Run `namzu` here once and accept the trust prompt to trust the folder',
82
- 'permanently, or pass --trust to accept it for this turn only.',
83
- ].join('\n'),
84
- };
85
- }
86
- //# sourceMappingURL=headless-trust.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"headless-trust.js","sourceRoot":"","sources":["../../src/permissions/headless-trust.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAsB7D,MAAM,UAAU,mBAAmB,CAAC,KAAiB;IACpD,2EAA2E;IAC3E,uEAAuE;IACvE,wEAAwE;IACxE,IAAI,GAAW,CAAA;IACf,IAAI,CAAC;QACJ,GAAG,GAAG,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACtC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO;YACN,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,8GAA8G,KAAK,CAAC,GAAG,EAAE;SAClI,CAAA;IACF,CAAC;IACD,2EAA2E;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,iDAAiD;IACjD,IAAI,KAAK,CAAC,SAAS;QAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAA;IAClD,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;IACvE,IAAI,YAAY,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAA;IACpD,OAAO;QACN,OAAO,EAAE,KAAK;QACd,OAAO,EAAE;YACR,mDAAmD,GAAG,EAAE;YACxD,EAAE;YACF,uEAAuE;YACvE,uEAAuE;YACvE,yBAAyB;YACzB,EAAE;YACF,uEAAuE;YACvE,+DAA+D;SAC/D,CAAC,IAAI,CAAC,IAAI,CAAC;KACZ,CAAA;AACF,CAAC"}