@namzu/cli 35.0.0 → 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 (1304) hide show
  1. package/CHANGELOG.md +756 -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/pal.d.ts +5 -0
  344. package/dist/commands/pal.d.ts.map +1 -0
  345. package/dist/commands/permission-preview.d.ts +38 -0
  346. package/dist/commands/permission-preview.d.ts.map +1 -0
  347. package/dist/commands/registry.d.ts +10 -0
  348. package/dist/commands/registry.d.ts.map +1 -1
  349. package/dist/commands/serve.d.ts +1 -12
  350. package/dist/commands/serve.d.ts.map +1 -1
  351. package/dist/commands/stdin.d.ts.map +1 -1
  352. package/dist/commands/upgrade.d.ts +14 -0
  353. package/dist/commands/upgrade.d.ts.map +1 -1
  354. package/dist/compile-cache-enable.d.ts +2 -0
  355. package/dist/compile-cache-enable.d.ts.map +1 -0
  356. package/dist/compile-cache.d.ts +53 -0
  357. package/dist/compile-cache.d.ts.map +1 -0
  358. package/dist/computer/bundle.d.ts +18 -0
  359. package/dist/computer/bundle.d.ts.map +1 -0
  360. package/dist/computer/run.d.ts +26 -0
  361. package/dist/computer/run.d.ts.map +1 -0
  362. package/dist/computer/sentences.d.ts +30 -0
  363. package/dist/computer/sentences.d.ts.map +1 -0
  364. package/dist/config/load.d.ts +10 -1
  365. package/dist/config/load.d.ts.map +1 -1
  366. package/dist/context/capabilities.d.ts +25 -2
  367. package/dist/context/capabilities.d.ts.map +1 -1
  368. package/dist/context/runtime-message.d.ts.map +1 -1
  369. package/dist/crash-report.d.ts +22 -0
  370. package/dist/crash-report.d.ts.map +1 -0
  371. package/dist/debug-requested.d.ts +7 -0
  372. package/dist/debug-requested.d.ts.map +1 -0
  373. package/dist/doctor/checks/credentials.d.ts.map +1 -1
  374. package/dist/exit-codes.d.ts +9 -1
  375. package/dist/exit-codes.d.ts.map +1 -1
  376. package/dist/index.js +105 -17
  377. package/dist/index.js.map +6 -1
  378. package/dist/integrations/harness/claude-adapter.d.ts +20 -0
  379. package/dist/integrations/harness/claude-adapter.d.ts.map +1 -0
  380. package/dist/integrations/harness/claude-protocol.d.ts +67 -0
  381. package/dist/integrations/harness/claude-protocol.d.ts.map +1 -0
  382. package/dist/integrations/harness/codex-adapter.d.ts +80 -0
  383. package/dist/integrations/harness/codex-adapter.d.ts.map +1 -0
  384. package/dist/integrations/harness/codex-protocol.d.ts +22 -0
  385. package/dist/integrations/harness/codex-protocol.d.ts.map +1 -0
  386. package/dist/integrations/harness/model-cache.d.ts +16 -0
  387. package/dist/integrations/harness/model-cache.d.ts.map +1 -0
  388. package/dist/integrations/harness/native-executable.d.ts +8 -0
  389. package/dist/integrations/harness/native-executable.d.ts.map +1 -0
  390. package/dist/integrations/harness/process.d.ts +25 -0
  391. package/dist/integrations/harness/process.d.ts.map +1 -0
  392. package/dist/integrations/peers/runtime.d.ts +64 -0
  393. package/dist/integrations/peers/runtime.d.ts.map +1 -0
  394. package/dist/integrations/plugins/inventory.d.ts +27 -0
  395. package/dist/integrations/plugins/inventory.d.ts.map +1 -0
  396. package/dist/integrations/providers/composer-settings.d.ts +33 -0
  397. package/dist/integrations/providers/composer-settings.d.ts.map +1 -0
  398. package/dist/integrations/providers/connections.d.ts +37 -0
  399. package/dist/integrations/providers/connections.d.ts.map +1 -0
  400. package/dist/integrations/providers/credential-store.d.ts +35 -0
  401. package/dist/integrations/providers/credential-store.d.ts.map +1 -1
  402. package/dist/integrations/providers/discover.d.ts +27 -1
  403. package/dist/integrations/providers/discover.d.ts.map +1 -1
  404. package/dist/integrations/providers/index.d.ts +2 -2
  405. package/dist/integrations/providers/index.d.ts.map +1 -1
  406. package/dist/integrations/providers/picker-operation.d.ts +6 -0
  407. package/dist/integrations/providers/picker-operation.d.ts.map +1 -0
  408. package/dist/integrations/providers/setup.d.ts +16 -1
  409. package/dist/integrations/providers/setup.d.ts.map +1 -1
  410. package/dist/integrations/resident/runner-worker.js +190 -161
  411. package/dist/integrations/resident/runner-worker.js.map +6 -1
  412. package/dist/integrations/sessions/display-title.d.ts +8 -0
  413. package/dist/integrations/sessions/display-title.d.ts.map +1 -1
  414. package/dist/integrations/sessions/store.d.ts +23 -9
  415. package/dist/integrations/sessions/store.d.ts.map +1 -1
  416. package/dist/integrations/sessions/task-context.d.ts +1 -1
  417. package/dist/integrations/sessions/task-context.d.ts.map +1 -1
  418. package/dist/integrations/sessions/transcript-export.d.ts.map +1 -1
  419. package/dist/integrations/subagents/activity.d.ts +9 -6
  420. package/dist/integrations/subagents/activity.d.ts.map +1 -1
  421. package/dist/integrations/subagents/operator-journal.d.ts +20 -0
  422. package/dist/integrations/subagents/operator-journal.d.ts.map +1 -0
  423. package/dist/integrations/subagents/runtime.d.ts +11 -0
  424. package/dist/integrations/subagents/runtime.d.ts.map +1 -1
  425. package/dist/integrations/trust/store.d.ts +14 -0
  426. package/dist/integrations/trust/store.d.ts.map +1 -1
  427. package/dist/integrations/web/search.d.ts +1 -1
  428. package/dist/pals/actions.d.ts +57 -0
  429. package/dist/pals/actions.d.ts.map +1 -0
  430. package/dist/pals/activity-command.d.ts +3 -0
  431. package/dist/pals/activity-command.d.ts.map +1 -0
  432. package/dist/pals/activity.d.ts +18 -0
  433. package/dist/pals/activity.d.ts.map +1 -0
  434. package/dist/pals/agent-session.d.ts +19 -0
  435. package/dist/pals/agent-session.d.ts.map +1 -0
  436. package/dist/pals/channel-actions.d.ts +5 -0
  437. package/dist/pals/channel-actions.d.ts.map +1 -0
  438. package/dist/pals/channel-local.d.ts +7 -0
  439. package/dist/pals/channel-local.d.ts.map +1 -0
  440. package/dist/pals/channel.d.ts +20 -0
  441. package/dist/pals/channel.d.ts.map +1 -0
  442. package/dist/pals/chat.d.ts +6 -0
  443. package/dist/pals/chat.d.ts.map +1 -0
  444. package/dist/pals/communication.d.ts +47 -0
  445. package/dist/pals/communication.d.ts.map +1 -0
  446. package/dist/pals/conversations.d.ts +26 -0
  447. package/dist/pals/conversations.d.ts.map +1 -0
  448. package/dist/pals/desktop-communication.d.ts +111 -0
  449. package/dist/pals/desktop-communication.d.ts.map +1 -0
  450. package/dist/pals/dispatch.d.ts +13 -0
  451. package/dist/pals/dispatch.d.ts.map +1 -0
  452. package/dist/pals/environment.d.ts +103 -0
  453. package/dist/pals/environment.d.ts.map +1 -0
  454. package/dist/pals/guest-mcp-transport.d.ts +28 -0
  455. package/dist/pals/guest-mcp-transport.d.ts.map +1 -0
  456. package/dist/pals/guest-mcp.d.ts +22 -0
  457. package/dist/pals/guest-mcp.d.ts.map +1 -0
  458. package/dist/pals/inbox-start.d.ts +35 -0
  459. package/dist/pals/inbox-start.d.ts.map +1 -0
  460. package/dist/pals/message-command.d.ts +3 -0
  461. package/dist/pals/message-command.d.ts.map +1 -0
  462. package/dist/pals/operator-tools.d.ts +23 -0
  463. package/dist/pals/operator-tools.d.ts.map +1 -0
  464. package/dist/pals/public-transcript.d.ts +4 -0
  465. package/dist/pals/public-transcript.d.ts.map +1 -0
  466. package/dist/pals/review.d.ts +16 -0
  467. package/dist/pals/review.d.ts.map +1 -0
  468. package/dist/pals/store.d.ts +16 -0
  469. package/dist/pals/store.d.ts.map +1 -0
  470. package/dist/pals/tui-session.d.ts +11 -0
  471. package/dist/pals/tui-session.d.ts.map +1 -0
  472. package/dist/permissions/mode-names.d.ts +2 -0
  473. package/dist/permissions/mode-names.d.ts.map +1 -0
  474. package/dist/resume-invocation.d.ts +1 -1
  475. package/dist/resume-invocation.d.ts.map +1 -1
  476. package/dist/resume-shell.d.ts +8 -0
  477. package/dist/resume-shell.d.ts.map +1 -0
  478. package/dist/schedule/build.d.ts +12 -3
  479. package/dist/schedule/build.d.ts.map +1 -1
  480. package/dist/schedule/commands/add.d.ts +1 -1
  481. package/dist/schedule/commands/add.d.ts.map +1 -1
  482. package/dist/schedule/commands/lifecycle.d.ts.map +1 -1
  483. package/dist/schedule/commands/list.d.ts +3 -1
  484. package/dist/schedule/commands/list.d.ts.map +1 -1
  485. package/dist/schedule/daemon/daemon.d.ts +2 -0
  486. package/dist/schedule/daemon/daemon.d.ts.map +1 -1
  487. package/dist/schedule/delivery.d.ts +66 -0
  488. package/dist/schedule/delivery.d.ts.map +1 -0
  489. package/dist/schedule/fire/fire.d.ts +1 -1
  490. package/dist/schedule/fire/fire.d.ts.map +1 -1
  491. package/dist/schedule/fire/run-script.d.ts +2 -2
  492. package/dist/schedule/fire/run-script.d.ts.map +1 -1
  493. package/dist/schedule/fire/script-report.d.ts +31 -0
  494. package/dist/schedule/fire/script-report.d.ts.map +1 -0
  495. package/dist/schedule/floor.d.ts +1 -1
  496. package/dist/schedule/floor.d.ts.map +1 -1
  497. package/dist/schedule/folder.d.ts +6 -0
  498. package/dist/schedule/folder.d.ts.map +1 -1
  499. package/dist/schedule/resume-command.d.ts +3 -3
  500. package/dist/schedule/resume-command.d.ts.map +1 -1
  501. package/dist/schedule/store/history.d.ts.map +1 -1
  502. package/dist/schedule/store/jobs.d.ts +6 -6
  503. package/dist/schedule/store/jobs.d.ts.map +1 -1
  504. package/dist/schedule/store/script-state.d.ts +31 -0
  505. package/dist/schedule/store/script-state.d.ts.map +1 -0
  506. package/dist/schedule/store/state.d.ts +4 -2
  507. package/dist/schedule/store/state.d.ts.map +1 -1
  508. package/dist/schedule/types.d.ts +61 -16
  509. package/dist/schedule/types.d.ts.map +1 -1
  510. package/dist/skills/store.d.ts.map +1 -1
  511. package/dist/terminal/host.d.ts +22 -0
  512. package/dist/terminal/host.d.ts.map +1 -0
  513. package/dist/terminal/manager.d.ts +124 -0
  514. package/dist/terminal/manager.d.ts.map +1 -0
  515. package/dist/terminal/protocol.d.ts +162 -0
  516. package/dist/terminal/protocol.d.ts.map +1 -0
  517. package/dist/terminal/pty.d.ts +85 -0
  518. package/dist/terminal/pty.d.ts.map +1 -0
  519. package/dist/terminal/ring.d.ts +23 -0
  520. package/dist/terminal/ring.d.ts.map +1 -0
  521. package/dist/terminal/screen.d.ts +31 -0
  522. package/dist/terminal/screen.d.ts.map +1 -0
  523. package/dist/termination-state.d.ts +19 -0
  524. package/dist/termination-state.d.ts.map +1 -0
  525. package/dist/termination.d.ts +2 -9
  526. package/dist/termination.d.ts.map +1 -1
  527. package/dist/tui/AgentExplorer.d.ts +4 -1
  528. package/dist/tui/AgentExplorer.d.ts.map +1 -1
  529. package/dist/tui/App.d.ts.map +1 -1
  530. package/dist/tui/BackgroundJobsPanel.d.ts.map +1 -1
  531. package/dist/tui/BrandHeader.d.ts.map +1 -1
  532. package/dist/tui/ChildComposer.d.ts +22 -0
  533. package/dist/tui/ChildComposer.d.ts.map +1 -0
  534. package/dist/tui/ChoicePicker.d.ts.map +1 -1
  535. package/dist/tui/Composer.d.ts +19 -3
  536. package/dist/tui/Composer.d.ts.map +1 -1
  537. package/dist/tui/ComposerFrame.d.ts.map +1 -1
  538. package/dist/tui/CopyPicker.d.ts.map +1 -1
  539. package/dist/tui/EditPromptPicker.d.ts.map +1 -1
  540. package/dist/tui/EffortSlider.d.ts.map +1 -1
  541. package/dist/tui/LiveActivity.d.ts +7 -1
  542. package/dist/tui/LiveActivity.d.ts.map +1 -1
  543. package/dist/tui/Markdown.d.ts.map +1 -1
  544. package/dist/tui/PendingInputPanel.d.ts.map +1 -1
  545. package/dist/tui/PermissionOverlay.d.ts.map +1 -1
  546. package/dist/tui/Picker.d.ts.map +1 -1
  547. package/dist/tui/ProviderSetup.d.ts.map +1 -1
  548. package/dist/tui/ResumePicker.d.ts.map +1 -1
  549. package/dist/tui/SaveSkillOverlay.d.ts.map +1 -1
  550. package/dist/tui/ScheduleReviewOverlay.d.ts +1 -1
  551. package/dist/tui/ScheduleReviewOverlay.d.ts.map +1 -1
  552. package/dist/tui/StatusBar.d.ts +7 -1
  553. package/dist/tui/StatusBar.d.ts.map +1 -1
  554. package/dist/tui/StatusPanel.d.ts.map +1 -1
  555. package/dist/tui/TextPrompt.d.ts.map +1 -1
  556. package/dist/tui/ToolOutputViewer.d.ts.map +1 -1
  557. package/dist/tui/Transcript.d.ts.map +1 -1
  558. package/dist/tui/TrustPrompt.d.ts +8 -0
  559. package/dist/tui/TrustPrompt.d.ts.map +1 -1
  560. package/dist/tui/agent.d.ts +125 -3
  561. package/dist/tui/agent.d.ts.map +1 -1
  562. package/dist/tui/browser-notices.d.ts.map +1 -1
  563. package/dist/tui/capability-notice.d.ts +38 -0
  564. package/dist/tui/capability-notice.d.ts.map +1 -0
  565. package/dist/tui/console-input.d.ts +31 -0
  566. package/dist/tui/console-input.d.ts.map +1 -0
  567. package/dist/tui/conversation-evidence-view.d.ts.map +1 -1
  568. package/dist/tui/credential-entry.d.ts.map +1 -1
  569. package/dist/tui/exit-summary.d.ts +9 -1
  570. package/dist/tui/exit-summary.d.ts.map +1 -1
  571. package/dist/tui/external-editor.d.ts.map +1 -1
  572. package/dist/tui/index.d.ts.map +1 -1
  573. package/dist/tui/key-hints.d.ts +51 -0
  574. package/dist/tui/key-hints.d.ts.map +1 -0
  575. package/dist/tui/launch-settings.d.ts +34 -0
  576. package/dist/tui/launch-settings.d.ts.map +1 -0
  577. package/dist/tui/log-pane.d.ts.map +1 -1
  578. package/dist/tui/model-choices.d.ts +39 -1
  579. package/dist/tui/model-choices.d.ts.map +1 -1
  580. package/dist/tui/model-search.d.ts +4 -1
  581. package/dist/tui/model-search.d.ts.map +1 -1
  582. package/dist/tui/output-size-watch.d.ts +32 -0
  583. package/dist/tui/output-size-watch.d.ts.map +1 -0
  584. package/dist/tui/permission-review.d.ts.map +1 -1
  585. package/dist/tui/person-terms.d.ts +58 -0
  586. package/dist/tui/person-terms.d.ts.map +1 -0
  587. package/dist/tui/plain-failure.d.ts +27 -0
  588. package/dist/tui/plain-failure.d.ts.map +1 -0
  589. package/dist/tui/plain-interruption.d.ts +46 -0
  590. package/dist/tui/plain-interruption.d.ts.map +1 -0
  591. package/dist/tui/provider-list.d.ts.map +1 -1
  592. package/dist/tui/render-mode.d.ts +19 -0
  593. package/dist/tui/render-mode.d.ts.map +1 -0
  594. package/dist/tui/schedule/host-commands.d.ts +2 -9
  595. package/dist/tui/schedule/host-commands.d.ts.map +1 -1
  596. package/dist/tui/schedule/integration.d.ts +8 -0
  597. package/dist/tui/schedule/integration.d.ts.map +1 -1
  598. package/dist/tui/schedule/source-deliveries.d.ts +37 -0
  599. package/dist/tui/schedule/source-deliveries.d.ts.map +1 -0
  600. package/dist/tui/schedule/startup.d.ts.map +1 -1
  601. package/dist/tui/schedule/tool-host.d.ts +3 -1
  602. package/dist/tui/schedule/tool-host.d.ts.map +1 -1
  603. package/dist/tui/setup-text.d.ts +14 -0
  604. package/dist/tui/setup-text.d.ts.map +1 -0
  605. package/dist/tui/shell-escape.d.ts.map +1 -1
  606. package/dist/tui/skills/suggest-setting.d.ts.map +1 -1
  607. package/dist/tui/slashCommands.d.ts +4 -1
  608. package/dist/tui/slashCommands.d.ts.map +1 -1
  609. package/dist/tui/terminal-choice-text.d.ts +7 -0
  610. package/dist/tui/terminal-choice-text.d.ts.map +1 -1
  611. package/dist/tui/tidy-tool-output.d.ts +83 -0
  612. package/dist/tui/tidy-tool-output.d.ts.map +1 -0
  613. package/dist/tui/tool-presentation.d.ts +6 -0
  614. package/dist/tui/tool-presentation.d.ts.map +1 -0
  615. package/dist/tui/triggers/copy.d.ts.map +1 -1
  616. package/dist/tui/triggers/setting.d.ts.map +1 -1
  617. package/dist/tui/turn-interruption.d.ts +1 -1
  618. package/dist/tui/turn-interruption.d.ts.map +1 -1
  619. package/dist/tui/turn-limits-settings.d.ts +4 -4
  620. package/dist/tui/turn-limits-settings.d.ts.map +1 -1
  621. package/dist/tui/types.d.ts +10 -0
  622. package/dist/tui/types.d.ts.map +1 -1
  623. package/dist/tui/web-activity.d.ts +3 -2
  624. package/dist/tui/web-activity.d.ts.map +1 -1
  625. package/dist/tui/zen-free-refusal.d.ts +17 -0
  626. package/dist/tui/zen-free-refusal.d.ts.map +1 -0
  627. package/dist/usage-error.d.ts +15 -0
  628. package/dist/usage-error.d.ts.map +1 -0
  629. package/dist/warning-filter.d.ts +30 -0
  630. package/dist/warning-filter.d.ts.map +1 -0
  631. package/package.json +21 -10
  632. package/skills/schedule-task/SKILL.md +74 -20
  633. package/dist/browser/commands.js +0 -365
  634. package/dist/browser/commands.js.map +0 -1
  635. package/dist/browser/control.js +0 -140
  636. package/dist/browser/control.js.map +0 -1
  637. package/dist/browser/describe.js +0 -27
  638. package/dist/browser/describe.js.map +0 -1
  639. package/dist/checkpoints/store.js +0 -192
  640. package/dist/checkpoints/store.js.map +0 -1
  641. package/dist/checkpoints/wrap.js +0 -37
  642. package/dist/checkpoints/wrap.js.map +0 -1
  643. package/dist/cli.js +0 -602
  644. package/dist/cli.js.map +0 -1
  645. package/dist/commands/acp.js +0 -388
  646. package/dist/commands/acp.js.map +0 -1
  647. package/dist/commands/archive.js +0 -65
  648. package/dist/commands/archive.js.map +0 -1
  649. package/dist/commands/browser.js +0 -16
  650. package/dist/commands/browser.js.map +0 -1
  651. package/dist/commands/doctor.js +0 -267
  652. package/dist/commands/doctor.js.map +0 -1
  653. package/dist/commands/drain.js +0 -498
  654. package/dist/commands/drain.js.map +0 -1
  655. package/dist/commands/eval.js +0 -237
  656. package/dist/commands/eval.js.map +0 -1
  657. package/dist/commands/exec-flags.js +0 -334
  658. package/dist/commands/exec-flags.js.map +0 -1
  659. package/dist/commands/exec-json.js +0 -497
  660. package/dist/commands/exec-json.js.map +0 -1
  661. package/dist/commands/exec.js +0 -688
  662. package/dist/commands/exec.js.map +0 -1
  663. package/dist/commands/host-queries.js +0 -156
  664. package/dist/commands/host-queries.js.map +0 -1
  665. package/dist/commands/login.js +0 -315
  666. package/dist/commands/login.js.map +0 -1
  667. package/dist/commands/mcp-oauth-login.js +0 -213
  668. package/dist/commands/mcp-oauth-login.js.map +0 -1
  669. package/dist/commands/mcp.js +0 -461
  670. package/dist/commands/mcp.js.map +0 -1
  671. package/dist/commands/prior-messages.js +0 -329
  672. package/dist/commands/prior-messages.js.map +0 -1
  673. package/dist/commands/provider-wait.js +0 -65
  674. package/dist/commands/provider-wait.js.map +0 -1
  675. package/dist/commands/registry.js +0 -40
  676. package/dist/commands/registry.js.map +0 -1
  677. package/dist/commands/resident-flags.js +0 -193
  678. package/dist/commands/resident-flags.js.map +0 -1
  679. package/dist/commands/resident-learning.js +0 -293
  680. package/dist/commands/resident-learning.js.map +0 -1
  681. package/dist/commands/resident.js +0 -419
  682. package/dist/commands/resident.js.map +0 -1
  683. package/dist/commands/resume.js +0 -109
  684. package/dist/commands/resume.js.map +0 -1
  685. package/dist/commands/schedule.js +0 -131
  686. package/dist/commands/schedule.js.map +0 -1
  687. package/dist/commands/serve.js +0 -21
  688. package/dist/commands/serve.js.map +0 -1
  689. package/dist/commands/skills.js +0 -178
  690. package/dist/commands/skills.js.map +0 -1
  691. package/dist/commands/state.js +0 -110
  692. package/dist/commands/state.js.map +0 -1
  693. package/dist/commands/stdin.js +0 -69
  694. package/dist/commands/stdin.js.map +0 -1
  695. package/dist/commands/types.js +0 -2
  696. package/dist/commands/types.js.map +0 -1
  697. package/dist/commands/upgrade-progress.js +0 -54
  698. package/dist/commands/upgrade-progress.js.map +0 -1
  699. package/dist/commands/upgrade.js +0 -232
  700. package/dist/commands/upgrade.js.map +0 -1
  701. package/dist/commands/worktree.js +0 -86
  702. package/dist/commands/worktree.js.map +0 -1
  703. package/dist/config/composer-triggers.js +0 -80
  704. package/dist/config/composer-triggers.js.map +0 -1
  705. package/dist/config/debug.js +0 -126
  706. package/dist/config/debug.js.map +0 -1
  707. package/dist/config/load.js +0 -1208
  708. package/dist/config/load.js.map +0 -1
  709. package/dist/config/schema.js +0 -13
  710. package/dist/config/schema.js.map +0 -1
  711. package/dist/config/tool-result-screens.js +0 -104
  712. package/dist/config/tool-result-screens.js.map +0 -1
  713. package/dist/config/trusted-project-context.js +0 -28
  714. package/dist/config/trusted-project-context.js.map +0 -1
  715. package/dist/config/turn-guards.js +0 -46
  716. package/dist/config/turn-guards.js.map +0 -1
  717. package/dist/config/user-config.js +0 -118
  718. package/dist/config/user-config.js.map +0 -1
  719. package/dist/context/capabilities.js +0 -164
  720. package/dist/context/capabilities.js.map +0 -1
  721. package/dist/context/directories.js +0 -69
  722. package/dist/context/directories.js.map +0 -1
  723. package/dist/context/doctrine.js +0 -24
  724. package/dist/context/doctrine.js.map +0 -1
  725. package/dist/context/environment.js +0 -255
  726. package/dist/context/environment.js.map +0 -1
  727. package/dist/context/project-path.js +0 -16
  728. package/dist/context/project-path.js.map +0 -1
  729. package/dist/context/project-tracker.js +0 -217
  730. package/dist/context/project-tracker.js.map +0 -1
  731. package/dist/context/project.js +0 -256
  732. package/dist/context/project.js.map +0 -1
  733. package/dist/context/runtime-message.js +0 -30
  734. package/dist/context/runtime-message.js.map +0 -1
  735. package/dist/context/sandbox.js +0 -114
  736. package/dist/context/sandbox.js.map +0 -1
  737. package/dist/context/turn-snapshot.js +0 -122
  738. package/dist/context/turn-snapshot.js.map +0 -1
  739. package/dist/doctor/checks/browser.js +0 -63
  740. package/dist/doctor/checks/browser.js.map +0 -1
  741. package/dist/doctor/checks/chain.js +0 -211
  742. package/dist/doctor/checks/chain.js.map +0 -1
  743. package/dist/doctor/checks/credentials.js +0 -98
  744. package/dist/doctor/checks/credentials.js.map +0 -1
  745. package/dist/doctor/checks/index.js +0 -72
  746. package/dist/doctor/checks/index.js.map +0 -1
  747. package/dist/doctor/checks/invariants.js +0 -79
  748. package/dist/doctor/checks/invariants.js.map +0 -1
  749. package/dist/doctor/checks/logging.js +0 -69
  750. package/dist/doctor/checks/logging.js.map +0 -1
  751. package/dist/doctor/checks/providers.js +0 -30
  752. package/dist/doctor/checks/providers.js.map +0 -1
  753. package/dist/doctor/checks/runtime.js +0 -40
  754. package/dist/doctor/checks/runtime.js.map +0 -1
  755. package/dist/doctor/checks/sandbox.js +0 -76
  756. package/dist/doctor/checks/sandbox.js.map +0 -1
  757. package/dist/doctor/checks/scheduler.js +0 -74
  758. package/dist/doctor/checks/scheduler.js.map +0 -1
  759. package/dist/doctor/checks/session-export.js +0 -62
  760. package/dist/doctor/checks/session-export.js.map +0 -1
  761. package/dist/doctor/checks/telemetry.js +0 -58
  762. package/dist/doctor/checks/telemetry.js.map +0 -1
  763. package/dist/doctor/checks/vault.js +0 -67
  764. package/dist/doctor/checks/vault.js.map +0 -1
  765. package/dist/doctor/index.js +0 -3
  766. package/dist/doctor/index.js.map +0 -1
  767. package/dist/doctor/registry.js +0 -230
  768. package/dist/doctor/registry.js.map +0 -1
  769. package/dist/exit-codes.js +0 -62
  770. package/dist/exit-codes.js.map +0 -1
  771. package/dist/installation.js +0 -48
  772. package/dist/installation.js.map +0 -1
  773. package/dist/integrations/clipboard/image.js +0 -119
  774. package/dist/integrations/clipboard/image.js.map +0 -1
  775. package/dist/integrations/clipboard/text.js +0 -43
  776. package/dist/integrations/clipboard/text.js.map +0 -1
  777. package/dist/integrations/files/attachment-store.js +0 -86
  778. package/dist/integrations/files/attachment-store.js.map +0 -1
  779. package/dist/integrations/mcp/oauth-store.js +0 -549
  780. package/dist/integrations/mcp/oauth-store.js.map +0 -1
  781. package/dist/integrations/mcp/servers.js +0 -611
  782. package/dist/integrations/mcp/servers.js.map +0 -1
  783. package/dist/integrations/mcp/user-config.js +0 -92
  784. package/dist/integrations/mcp/user-config.js.map +0 -1
  785. package/dist/integrations/notifications/desktop/freedesktop.js +0 -33
  786. package/dist/integrations/notifications/desktop/freedesktop.js.map +0 -1
  787. package/dist/integrations/notifications/desktop/macos.js +0 -17
  788. package/dist/integrations/notifications/desktop/macos.js.map +0 -1
  789. package/dist/integrations/notifications/desktop/sanitize.js +0 -49
  790. package/dist/integrations/notifications/desktop/sanitize.js.map +0 -1
  791. package/dist/integrations/notifications/desktop/throttle.js +0 -39
  792. package/dist/integrations/notifications/desktop/throttle.js.map +0 -1
  793. package/dist/integrations/notifications/desktop/windows-toast.js +0 -56
  794. package/dist/integrations/notifications/desktop/windows-toast.js.map +0 -1
  795. package/dist/integrations/notifications/desktop.js +0 -199
  796. package/dist/integrations/notifications/desktop.js.map +0 -1
  797. package/dist/integrations/notifications/terminal.js +0 -46
  798. package/dist/integrations/notifications/terminal.js.map +0 -1
  799. package/dist/integrations/npm-invocation.js +0 -23
  800. package/dist/integrations/npm-invocation.js.map +0 -1
  801. package/dist/integrations/plugins/runtime.js +0 -189
  802. package/dist/integrations/plugins/runtime.js.map +0 -1
  803. package/dist/integrations/plugins/settings.js +0 -106
  804. package/dist/integrations/plugins/settings.js.map +0 -1
  805. package/dist/integrations/providers/access.js +0 -23
  806. package/dist/integrations/providers/access.js.map +0 -1
  807. package/dist/integrations/providers/chain-capabilities.js +0 -211
  808. package/dist/integrations/providers/chain-capabilities.js.map +0 -1
  809. package/dist/integrations/providers/codex-device-login.js +0 -195
  810. package/dist/integrations/providers/codex-device-login.js.map +0 -1
  811. package/dist/integrations/providers/codex-oauth.js +0 -95
  812. package/dist/integrations/providers/codex-oauth.js.map +0 -1
  813. package/dist/integrations/providers/credential-provider.js +0 -74
  814. package/dist/integrations/providers/credential-provider.js.map +0 -1
  815. package/dist/integrations/providers/credential-store.js +0 -657
  816. package/dist/integrations/providers/credential-store.js.map +0 -1
  817. package/dist/integrations/providers/current-credential.js +0 -45
  818. package/dist/integrations/providers/current-credential.js.map +0 -1
  819. package/dist/integrations/providers/discover.js +0 -313
  820. package/dist/integrations/providers/discover.js.map +0 -1
  821. package/dist/integrations/providers/gemini-credentials.js +0 -148
  822. package/dist/integrations/providers/gemini-credentials.js.map +0 -1
  823. package/dist/integrations/providers/harness-credentials.js +0 -344
  824. package/dist/integrations/providers/harness-credentials.js.map +0 -1
  825. package/dist/integrations/providers/identity.js +0 -64
  826. package/dist/integrations/providers/identity.js.map +0 -1
  827. package/dist/integrations/providers/index.js +0 -14
  828. package/dist/integrations/providers/index.js.map +0 -1
  829. package/dist/integrations/providers/keychain.js +0 -78
  830. package/dist/integrations/providers/keychain.js.map +0 -1
  831. package/dist/integrations/providers/model-reasoning.js +0 -51
  832. package/dist/integrations/providers/model-reasoning.js.map +0 -1
  833. package/dist/integrations/providers/oauth.js +0 -302
  834. package/dist/integrations/providers/oauth.js.map +0 -1
  835. package/dist/integrations/providers/preferences.js +0 -287
  836. package/dist/integrations/providers/preferences.js.map +0 -1
  837. package/dist/integrations/providers/register.js +0 -154
  838. package/dist/integrations/providers/register.js.map +0 -1
  839. package/dist/integrations/providers/registry.js +0 -289
  840. package/dist/integrations/providers/registry.js.map +0 -1
  841. package/dist/integrations/providers/setup.js +0 -158
  842. package/dist/integrations/providers/setup.js.map +0 -1
  843. package/dist/integrations/providers/subscription-login.js +0 -328
  844. package/dist/integrations/providers/subscription-login.js.map +0 -1
  845. package/dist/integrations/providers/zen-catalogue.js +0 -196
  846. package/dist/integrations/providers/zen-catalogue.js.map +0 -1
  847. package/dist/integrations/resident/foreground.js +0 -95
  848. package/dist/integrations/resident/foreground.js.map +0 -1
  849. package/dist/integrations/resident/inspection.js +0 -282
  850. package/dist/integrations/resident/inspection.js.map +0 -1
  851. package/dist/integrations/resident/learning-sources.js +0 -79
  852. package/dist/integrations/resident/learning-sources.js.map +0 -1
  853. package/dist/integrations/resident/learning-storage.js +0 -55
  854. package/dist/integrations/resident/learning-storage.js.map +0 -1
  855. package/dist/integrations/resident/lifecycle-errors.js +0 -15
  856. package/dist/integrations/resident/lifecycle-errors.js.map +0 -1
  857. package/dist/integrations/resident/owned-runner.js +0 -91
  858. package/dist/integrations/resident/owned-runner.js.map +0 -1
  859. package/dist/integrations/resident/runner-control.js +0 -238
  860. package/dist/integrations/resident/runner-control.js.map +0 -1
  861. package/dist/integrations/resident/runner-launch.js +0 -142
  862. package/dist/integrations/resident/runner-launch.js.map +0 -1
  863. package/dist/integrations/resident/runner-store.js +0 -284
  864. package/dist/integrations/resident/runner-store.js.map +0 -1
  865. package/dist/integrations/resident/session-log-reads.js +0 -125
  866. package/dist/integrations/resident/session-log-reads.js.map +0 -1
  867. package/dist/integrations/resident/session-step.js +0 -476
  868. package/dist/integrations/resident/session-step.js.map +0 -1
  869. package/dist/integrations/resident/storage.js +0 -183
  870. package/dist/integrations/resident/storage.js.map +0 -1
  871. package/dist/integrations/resident/tool-evidence.js +0 -123
  872. package/dist/integrations/resident/tool-evidence.js.map +0 -1
  873. package/dist/integrations/resident/verification.js +0 -109
  874. package/dist/integrations/resident/verification.js.map +0 -1
  875. package/dist/integrations/sessions/checkpoint-view.js +0 -48
  876. package/dist/integrations/sessions/checkpoint-view.js.map +0 -1
  877. package/dist/integrations/sessions/context-inventory.js +0 -44
  878. package/dist/integrations/sessions/context-inventory.js.map +0 -1
  879. package/dist/integrations/sessions/conversation-search.js +0 -572
  880. package/dist/integrations/sessions/conversation-search.js.map +0 -1
  881. package/dist/integrations/sessions/display-title.js +0 -5
  882. package/dist/integrations/sessions/display-title.js.map +0 -1
  883. package/dist/integrations/sessions/evidence-page-validation.js +0 -74
  884. package/dist/integrations/sessions/evidence-page-validation.js.map +0 -1
  885. package/dist/integrations/sessions/evidence-recall.js +0 -117
  886. package/dist/integrations/sessions/evidence-recall.js.map +0 -1
  887. package/dist/integrations/sessions/store.js +0 -780
  888. package/dist/integrations/sessions/store.js.map +0 -1
  889. package/dist/integrations/sessions/task-context.js +0 -96
  890. package/dist/integrations/sessions/task-context.js.map +0 -1
  891. package/dist/integrations/sessions/transcript-export.js +0 -342
  892. package/dist/integrations/sessions/transcript-export.js.map +0 -1
  893. package/dist/integrations/state/home.js +0 -17
  894. package/dist/integrations/state/home.js.map +0 -1
  895. package/dist/integrations/state/identity.js +0 -49
  896. package/dist/integrations/state/identity.js.map +0 -1
  897. package/dist/integrations/state/immutable-json.js +0 -38
  898. package/dist/integrations/state/immutable-json.js.map +0 -1
  899. package/dist/integrations/state/private-directory.js +0 -43
  900. package/dist/integrations/state/private-directory.js.map +0 -1
  901. package/dist/integrations/state/project.js +0 -13
  902. package/dist/integrations/state/project.js.map +0 -1
  903. package/dist/integrations/state/report.js +0 -626
  904. package/dist/integrations/state/report.js.map +0 -1
  905. package/dist/integrations/state/retention.js +0 -18
  906. package/dist/integrations/state/retention.js.map +0 -1
  907. package/dist/integrations/subagents/NamzuCliAgent.js +0 -9
  908. package/dist/integrations/subagents/NamzuCliAgent.js.map +0 -1
  909. package/dist/integrations/subagents/activity.js +0 -759
  910. package/dist/integrations/subagents/activity.js.map +0 -1
  911. package/dist/integrations/subagents/batches.js +0 -172
  912. package/dist/integrations/subagents/batches.js.map +0 -1
  913. package/dist/integrations/subagents/definitions.js +0 -26
  914. package/dist/integrations/subagents/definitions.js.map +0 -1
  915. package/dist/integrations/subagents/model-effort.js +0 -12
  916. package/dist/integrations/subagents/model-effort.js.map +0 -1
  917. package/dist/integrations/subagents/parent.js +0 -47
  918. package/dist/integrations/subagents/parent.js.map +0 -1
  919. package/dist/integrations/subagents/policy.js +0 -3
  920. package/dist/integrations/subagents/policy.js.map +0 -1
  921. package/dist/integrations/subagents/replay.js +0 -295
  922. package/dist/integrations/subagents/replay.js.map +0 -1
  923. package/dist/integrations/subagents/runtime.js +0 -1317
  924. package/dist/integrations/subagents/runtime.js.map +0 -1
  925. package/dist/integrations/subagents/saved-agents.js +0 -102
  926. package/dist/integrations/subagents/saved-agents.js.map +0 -1
  927. package/dist/integrations/subagents/slash.js +0 -45
  928. package/dist/integrations/subagents/slash.js.map +0 -1
  929. package/dist/integrations/subagents/worktree-driver.js +0 -72
  930. package/dist/integrations/subagents/worktree-driver.js.map +0 -1
  931. package/dist/integrations/telemetry/session-export.js +0 -119
  932. package/dist/integrations/telemetry/session-export.js.map +0 -1
  933. package/dist/integrations/trust/store.js +0 -73
  934. package/dist/integrations/trust/store.js.map +0 -1
  935. package/dist/integrations/updates.js +0 -115
  936. package/dist/integrations/updates.js.map +0 -1
  937. package/dist/integrations/web/exa-search.js +0 -154
  938. package/dist/integrations/web/exa-search.js.map +0 -1
  939. package/dist/integrations/web/open-url.js +0 -73
  940. package/dist/integrations/web/open-url.js.map +0 -1
  941. package/dist/integrations/web/search.js +0 -68
  942. package/dist/integrations/web/search.js.map +0 -1
  943. package/dist/integrations/worktrees/managed.js +0 -231
  944. package/dist/integrations/worktrees/managed.js.map +0 -1
  945. package/dist/logging.js +0 -115
  946. package/dist/logging.js.map +0 -1
  947. package/dist/memory/io.js +0 -177
  948. package/dist/memory/io.js.map +0 -1
  949. package/dist/memory/presentation.js +0 -76
  950. package/dist/memory/presentation.js.map +0 -1
  951. package/dist/memory/store.js +0 -180
  952. package/dist/memory/store.js.map +0 -1
  953. package/dist/memory/typed.js +0 -336
  954. package/dist/memory/typed.js.map +0 -1
  955. package/dist/output/formatter.js +0 -16
  956. package/dist/output/formatter.js.map +0 -1
  957. package/dist/output/index.js +0 -22
  958. package/dist/output/index.js.map +0 -1
  959. package/dist/output/json.js +0 -51
  960. package/dist/output/json.js.map +0 -1
  961. package/dist/output/text.js +0 -50
  962. package/dist/output/text.js.map +0 -1
  963. package/dist/output/yaml.js +0 -26
  964. package/dist/output/yaml.js.map +0 -1
  965. package/dist/output-schema.js +0 -18
  966. package/dist/output-schema.js.map +0 -1
  967. package/dist/permissions/browser-sites.js +0 -270
  968. package/dist/permissions/browser-sites.js.map +0 -1
  969. package/dist/permissions/canonical-project.js +0 -13
  970. package/dist/permissions/canonical-project.js.map +0 -1
  971. package/dist/permissions/checks.js +0 -128
  972. package/dist/permissions/checks.js.map +0 -1
  973. package/dist/permissions/headless-trust.js +0 -86
  974. package/dist/permissions/headless-trust.js.map +0 -1
  975. package/dist/permissions/live-mode.js +0 -62
  976. package/dist/permissions/live-mode.js.map +0 -1
  977. package/dist/permissions/mode.js +0 -65
  978. package/dist/permissions/mode.js.map +0 -1
  979. package/dist/permissions/rules.js +0 -358
  980. package/dist/permissions/rules.js.map +0 -1
  981. package/dist/release-notes.js +0 -64
  982. package/dist/release-notes.js.map +0 -1
  983. package/dist/resume-invocation.js +0 -24
  984. package/dist/resume-invocation.js.map +0 -1
  985. package/dist/schedule/build.js +0 -374
  986. package/dist/schedule/build.js.map +0 -1
  987. package/dist/schedule/changes.js +0 -78
  988. package/dist/schedule/changes.js.map +0 -1
  989. package/dist/schedule/commands/add.js +0 -603
  990. package/dist/schedule/commands/add.js.map +0 -1
  991. package/dist/schedule/commands/args.js +0 -80
  992. package/dist/schedule/commands/args.js.map +0 -1
  993. package/dist/schedule/commands/confirm-prompt.js +0 -21
  994. package/dist/schedule/commands/confirm-prompt.js.map +0 -1
  995. package/dist/schedule/commands/lifecycle.js +0 -586
  996. package/dist/schedule/commands/lifecycle.js.map +0 -1
  997. package/dist/schedule/commands/list.js +0 -260
  998. package/dist/schedule/commands/list.js.map +0 -1
  999. package/dist/schedule/commands/logs.js +0 -106
  1000. package/dist/schedule/commands/logs.js.map +0 -1
  1001. package/dist/schedule/commands/service.js +0 -458
  1002. package/dist/schedule/commands/service.js.map +0 -1
  1003. package/dist/schedule/daemon/daemon.js +0 -1265
  1004. package/dist/schedule/daemon/daemon.js.map +0 -1
  1005. package/dist/schedule/daemon/endpoint.js +0 -158
  1006. package/dist/schedule/daemon/endpoint.js.map +0 -1
  1007. package/dist/schedule/daemon/exit.js +0 -8
  1008. package/dist/schedule/daemon/exit.js.map +0 -1
  1009. package/dist/schedule/daemon/log.js +0 -53
  1010. package/dist/schedule/daemon/log.js.map +0 -1
  1011. package/dist/schedule/daemon/notify.js +0 -158
  1012. package/dist/schedule/daemon/notify.js.map +0 -1
  1013. package/dist/schedule/daemon/retention.js +0 -46
  1014. package/dist/schedule/daemon/retention.js.map +0 -1
  1015. package/dist/schedule/daemon/sessions.js +0 -52
  1016. package/dist/schedule/daemon/sessions.js.map +0 -1
  1017. package/dist/schedule/env.js +0 -106
  1018. package/dist/schedule/env.js.map +0 -1
  1019. package/dist/schedule/fire/browser-preflight.js +0 -73
  1020. package/dist/schedule/fire/browser-preflight.js.map +0 -1
  1021. package/dist/schedule/fire/calls.js +0 -114
  1022. package/dist/schedule/fire/calls.js.map +0 -1
  1023. package/dist/schedule/fire/fire.js +0 -681
  1024. package/dist/schedule/fire/fire.js.map +0 -1
  1025. package/dist/schedule/fire/result.js +0 -19
  1026. package/dist/schedule/fire/result.js.map +0 -1
  1027. package/dist/schedule/fire/run-script.js +0 -81
  1028. package/dist/schedule/fire/run-script.js.map +0 -1
  1029. package/dist/schedule/fire/unattended-note.js +0 -51
  1030. package/dist/schedule/fire/unattended-note.js.map +0 -1
  1031. package/dist/schedule/fire/wake-gate.js +0 -90
  1032. package/dist/schedule/fire/wake-gate.js.map +0 -1
  1033. package/dist/schedule/floor.js +0 -1561
  1034. package/dist/schedule/floor.js.map +0 -1
  1035. package/dist/schedule/folder.js +0 -84
  1036. package/dist/schedule/folder.js.map +0 -1
  1037. package/dist/schedule/paths.js +0 -53
  1038. package/dist/schedule/paths.js.map +0 -1
  1039. package/dist/schedule/policy.js +0 -414
  1040. package/dist/schedule/policy.js.map +0 -1
  1041. package/dist/schedule/resume-command.js +0 -72
  1042. package/dist/schedule/resume-command.js.map +0 -1
  1043. package/dist/schedule/script-check.js +0 -146
  1044. package/dist/schedule/script-check.js.map +0 -1
  1045. package/dist/schedule/script-shell.js +0 -5
  1046. package/dist/schedule/script-shell.js.map +0 -1
  1047. package/dist/schedule/service/detect.js +0 -29
  1048. package/dist/schedule/service/detect.js.map +0 -1
  1049. package/dist/schedule/service/index.js +0 -361
  1050. package/dist/schedule/service/index.js.map +0 -1
  1051. package/dist/schedule/service/launchd.js +0 -84
  1052. package/dist/schedule/service/launchd.js.map +0 -1
  1053. package/dist/schedule/service/manifest.js +0 -16
  1054. package/dist/schedule/service/manifest.js.map +0 -1
  1055. package/dist/schedule/service/names.js +0 -22
  1056. package/dist/schedule/service/names.js.map +0 -1
  1057. package/dist/schedule/service/quote.js +0 -64
  1058. package/dist/schedule/service/quote.js.map +0 -1
  1059. package/dist/schedule/service/runner.js +0 -31
  1060. package/dist/schedule/service/runner.js.map +0 -1
  1061. package/dist/schedule/service/systemd.js +0 -96
  1062. package/dist/schedule/service/systemd.js.map +0 -1
  1063. package/dist/schedule/service/windows-task.js +0 -199
  1064. package/dist/schedule/service/windows-task.js.map +0 -1
  1065. package/dist/schedule/service/wsl.js +0 -121
  1066. package/dist/schedule/service/wsl.js.map +0 -1
  1067. package/dist/schedule/store/atomic.js +0 -138
  1068. package/dist/schedule/store/atomic.js.map +0 -1
  1069. package/dist/schedule/store/claims.js +0 -57
  1070. package/dist/schedule/store/claims.js.map +0 -1
  1071. package/dist/schedule/store/digest.js +0 -139
  1072. package/dist/schedule/store/digest.js.map +0 -1
  1073. package/dist/schedule/store/history.js +0 -117
  1074. package/dist/schedule/store/history.js.map +0 -1
  1075. package/dist/schedule/store/jobs.js +0 -277
  1076. package/dist/schedule/store/jobs.js.map +0 -1
  1077. package/dist/schedule/store/state.js +0 -38
  1078. package/dist/schedule/store/state.js.map +0 -1
  1079. package/dist/schedule/types.js +0 -33
  1080. package/dist/schedule/types.js.map +0 -1
  1081. package/dist/schedule/visible-source.js +0 -59
  1082. package/dist/schedule/visible-source.js.map +0 -1
  1083. package/dist/skills/audit.js +0 -75
  1084. package/dist/skills/audit.js.map +0 -1
  1085. package/dist/skills/catalog.js +0 -226
  1086. package/dist/skills/catalog.js.map +0 -1
  1087. package/dist/skills/directory.js +0 -51
  1088. package/dist/skills/directory.js.map +0 -1
  1089. package/dist/skills/save.js +0 -344
  1090. package/dist/skills/save.js.map +0 -1
  1091. package/dist/skills/store.js +0 -351
  1092. package/dist/skills/store.js.map +0 -1
  1093. package/dist/termination.js +0 -143
  1094. package/dist/termination.js.map +0 -1
  1095. package/dist/test-support/toolset.js +0 -27
  1096. package/dist/test-support/toolset.js.map +0 -1
  1097. package/dist/tui/AgentExplorer.js +0 -789
  1098. package/dist/tui/AgentExplorer.js.map +0 -1
  1099. package/dist/tui/App.js +0 -8499
  1100. package/dist/tui/App.js.map +0 -1
  1101. package/dist/tui/BackgroundJobsPanel.js +0 -129
  1102. package/dist/tui/BackgroundJobsPanel.js.map +0 -1
  1103. package/dist/tui/BrandHeader.js +0 -14
  1104. package/dist/tui/BrandHeader.js.map +0 -1
  1105. package/dist/tui/Checklist.js +0 -90
  1106. package/dist/tui/Checklist.js.map +0 -1
  1107. package/dist/tui/ChoicePicker.js +0 -64
  1108. package/dist/tui/ChoicePicker.js.map +0 -1
  1109. package/dist/tui/Composer.js +0 -939
  1110. package/dist/tui/Composer.js.map +0 -1
  1111. package/dist/tui/ComposerFrame.js +0 -79
  1112. package/dist/tui/ComposerFrame.js.map +0 -1
  1113. package/dist/tui/CopyPicker.js +0 -19
  1114. package/dist/tui/CopyPicker.js.map +0 -1
  1115. package/dist/tui/EditPromptPicker.js +0 -17
  1116. package/dist/tui/EditPromptPicker.js.map +0 -1
  1117. package/dist/tui/EffortSlider.js +0 -134
  1118. package/dist/tui/EffortSlider.js.map +0 -1
  1119. package/dist/tui/LiveActivity.js +0 -89
  1120. package/dist/tui/LiveActivity.js.map +0 -1
  1121. package/dist/tui/Markdown.js +0 -137
  1122. package/dist/tui/Markdown.js.map +0 -1
  1123. package/dist/tui/PendingInputPanel.js +0 -108
  1124. package/dist/tui/PendingInputPanel.js.map +0 -1
  1125. package/dist/tui/PermissionOverlay.js +0 -278
  1126. package/dist/tui/PermissionOverlay.js.map +0 -1
  1127. package/dist/tui/Picker.js +0 -1310
  1128. package/dist/tui/Picker.js.map +0 -1
  1129. package/dist/tui/ProviderSetup.js +0 -125
  1130. package/dist/tui/ProviderSetup.js.map +0 -1
  1131. package/dist/tui/ResumePicker.js +0 -34
  1132. package/dist/tui/ResumePicker.js.map +0 -1
  1133. package/dist/tui/SaveSkillOverlay.js +0 -118
  1134. package/dist/tui/SaveSkillOverlay.js.map +0 -1
  1135. package/dist/tui/ScheduleReviewOverlay.js +0 -166
  1136. package/dist/tui/ScheduleReviewOverlay.js.map +0 -1
  1137. package/dist/tui/StatusBar.js +0 -182
  1138. package/dist/tui/StatusBar.js.map +0 -1
  1139. package/dist/tui/StatusPanel.js +0 -11
  1140. package/dist/tui/StatusPanel.js.map +0 -1
  1141. package/dist/tui/TaskList.js +0 -43
  1142. package/dist/tui/TaskList.js.map +0 -1
  1143. package/dist/tui/TextPrompt.js +0 -185
  1144. package/dist/tui/TextPrompt.js.map +0 -1
  1145. package/dist/tui/ToolOutputViewer.js +0 -39
  1146. package/dist/tui/ToolOutputViewer.js.map +0 -1
  1147. package/dist/tui/Transcript.js +0 -235
  1148. package/dist/tui/Transcript.js.map +0 -1
  1149. package/dist/tui/TrustPrompt.js +0 -13
  1150. package/dist/tui/TrustPrompt.js.map +0 -1
  1151. package/dist/tui/ViewportBound.js +0 -55
  1152. package/dist/tui/ViewportBound.js.map +0 -1
  1153. package/dist/tui/agent-transcript-rows.js +0 -115
  1154. package/dist/tui/agent-transcript-rows.js.map +0 -1
  1155. package/dist/tui/agent.js +0 -4301
  1156. package/dist/tui/agent.js.map +0 -1
  1157. package/dist/tui/browser-notices.js +0 -107
  1158. package/dist/tui/browser-notices.js.map +0 -1
  1159. package/dist/tui/choice-selection.js +0 -38
  1160. package/dist/tui/choice-selection.js.map +0 -1
  1161. package/dist/tui/compact-transcript.js +0 -46
  1162. package/dist/tui/compact-transcript.js.map +0 -1
  1163. package/dist/tui/consent-timing.js +0 -48
  1164. package/dist/tui/consent-timing.js.map +0 -1
  1165. package/dist/tui/conversation-evidence-view.js +0 -96
  1166. package/dist/tui/conversation-evidence-view.js.map +0 -1
  1167. package/dist/tui/conversation-history.js +0 -33
  1168. package/dist/tui/conversation-history.js.map +0 -1
  1169. package/dist/tui/copy-targets.js +0 -189
  1170. package/dist/tui/copy-targets.js.map +0 -1
  1171. package/dist/tui/credential-entry.js +0 -134
  1172. package/dist/tui/credential-entry.js.map +0 -1
  1173. package/dist/tui/edit-prompts.js +0 -35
  1174. package/dist/tui/edit-prompts.js.map +0 -1
  1175. package/dist/tui/exit-summary.js +0 -30
  1176. package/dist/tui/exit-summary.js.map +0 -1
  1177. package/dist/tui/external-editor.js +0 -169
  1178. package/dist/tui/external-editor.js.map +0 -1
  1179. package/dist/tui/hypermode.js +0 -58
  1180. package/dist/tui/hypermode.js.map +0 -1
  1181. package/dist/tui/index.js +0 -81
  1182. package/dist/tui/index.js.map +0 -1
  1183. package/dist/tui/live-window.js +0 -281
  1184. package/dist/tui/live-window.js.map +0 -1
  1185. package/dist/tui/log-pane.js +0 -100
  1186. package/dist/tui/log-pane.js.map +0 -1
  1187. package/dist/tui/login-prompt.js +0 -105
  1188. package/dist/tui/login-prompt.js.map +0 -1
  1189. package/dist/tui/logo.js +0 -9
  1190. package/dist/tui/logo.js.map +0 -1
  1191. package/dist/tui/markdown-block-cache.js +0 -76
  1192. package/dist/tui/markdown-block-cache.js.map +0 -1
  1193. package/dist/tui/markdown-table.js +0 -175
  1194. package/dist/tui/markdown-table.js.map +0 -1
  1195. package/dist/tui/markdown-wrap.js +0 -189
  1196. package/dist/tui/markdown-wrap.js.map +0 -1
  1197. package/dist/tui/markdownParser.js +0 -237
  1198. package/dist/tui/markdownParser.js.map +0 -1
  1199. package/dist/tui/mentions.js +0 -150
  1200. package/dist/tui/mentions.js.map +0 -1
  1201. package/dist/tui/model-catalogue-view.js +0 -75
  1202. package/dist/tui/model-catalogue-view.js.map +0 -1
  1203. package/dist/tui/model-choices.js +0 -157
  1204. package/dist/tui/model-choices.js.map +0 -1
  1205. package/dist/tui/model-search.js +0 -28
  1206. package/dist/tui/model-search.js.map +0 -1
  1207. package/dist/tui/model-selection-intent.js +0 -96
  1208. package/dist/tui/model-selection-intent.js.map +0 -1
  1209. package/dist/tui/model-switch-tool.js +0 -74
  1210. package/dist/tui/model-switch-tool.js.map +0 -1
  1211. package/dist/tui/model-switch.js +0 -106
  1212. package/dist/tui/model-switch.js.map +0 -1
  1213. package/dist/tui/notices.js +0 -27
  1214. package/dist/tui/notices.js.map +0 -1
  1215. package/dist/tui/open-browser.js +0 -147
  1216. package/dist/tui/open-browser.js.map +0 -1
  1217. package/dist/tui/permission-review.js +0 -858
  1218. package/dist/tui/permission-review.js.map +0 -1
  1219. package/dist/tui/plugin-view.js +0 -59
  1220. package/dist/tui/plugin-view.js.map +0 -1
  1221. package/dist/tui/provider-list.js +0 -327
  1222. package/dist/tui/provider-list.js.map +0 -1
  1223. package/dist/tui/provider-selection.js +0 -16
  1224. package/dist/tui/provider-selection.js.map +0 -1
  1225. package/dist/tui/schedule/host-commands.js +0 -428
  1226. package/dist/tui/schedule/host-commands.js.map +0 -1
  1227. package/dist/tui/schedule/integration.js +0 -150
  1228. package/dist/tui/schedule/integration.js.map +0 -1
  1229. package/dist/tui/schedule/loop-host.js +0 -153
  1230. package/dist/tui/schedule/loop-host.js.map +0 -1
  1231. package/dist/tui/schedule/resume.js +0 -333
  1232. package/dist/tui/schedule/resume.js.map +0 -1
  1233. package/dist/tui/schedule/startup.js +0 -121
  1234. package/dist/tui/schedule/startup.js.map +0 -1
  1235. package/dist/tui/schedule/tool-host.js +0 -619
  1236. package/dist/tui/schedule/tool-host.js.map +0 -1
  1237. package/dist/tui/selection-window.js +0 -37
  1238. package/dist/tui/selection-window.js.map +0 -1
  1239. package/dist/tui/shell-escape.js +0 -110
  1240. package/dist/tui/shell-escape.js.map +0 -1
  1241. package/dist/tui/skills/learning.js +0 -131
  1242. package/dist/tui/skills/learning.js.map +0 -1
  1243. package/dist/tui/skills/suggest-setting.js +0 -55
  1244. package/dist/tui/skills/suggest-setting.js.map +0 -1
  1245. package/dist/tui/skills/suggestion-ledger.js +0 -52
  1246. package/dist/tui/skills/suggestion-ledger.js.map +0 -1
  1247. package/dist/tui/slashCommands.js +0 -1588
  1248. package/dist/tui/slashCommands.js.map +0 -1
  1249. package/dist/tui/status-card.js +0 -30
  1250. package/dist/tui/status-card.js.map +0 -1
  1251. package/dist/tui/status-panel-layout.js +0 -42
  1252. package/dist/tui/status-panel-layout.js.map +0 -1
  1253. package/dist/tui/stream-blocks.js +0 -187
  1254. package/dist/tui/stream-blocks.js.map +0 -1
  1255. package/dist/tui/task-activity.js +0 -157
  1256. package/dist/tui/task-activity.js.map +0 -1
  1257. package/dist/tui/terminal-choice-text.js +0 -118
  1258. package/dist/tui/terminal-choice-text.js.map +0 -1
  1259. package/dist/tui/terminal-display.js +0 -65
  1260. package/dist/tui/terminal-display.js.map +0 -1
  1261. package/dist/tui/terminal-hyperlinks.js +0 -70
  1262. package/dist/tui/terminal-hyperlinks.js.map +0 -1
  1263. package/dist/tui/theme.js +0 -34
  1264. package/dist/tui/theme.js.map +0 -1
  1265. package/dist/tui/triggers/analyze.js +0 -221
  1266. package/dist/tui/triggers/analyze.js.map +0 -1
  1267. package/dist/tui/triggers/context-text.js +0 -44
  1268. package/dist/tui/triggers/context-text.js.map +0 -1
  1269. package/dist/tui/triggers/copy.js +0 -163
  1270. package/dist/tui/triggers/copy.js.map +0 -1
  1271. package/dist/tui/triggers/detect.js +0 -295
  1272. package/dist/tui/triggers/detect.js.map +0 -1
  1273. package/dist/tui/triggers/fold.js +0 -44
  1274. package/dist/tui/triggers/fold.js.map +0 -1
  1275. package/dist/tui/triggers/pattern.js +0 -243
  1276. package/dist/tui/triggers/pattern.js.map +0 -1
  1277. package/dist/tui/triggers/provenance.js +0 -98
  1278. package/dist/tui/triggers/provenance.js.map +0 -1
  1279. package/dist/tui/triggers/registry.js +0 -164
  1280. package/dist/tui/triggers/registry.js.map +0 -1
  1281. package/dist/tui/triggers/setting.js +0 -61
  1282. package/dist/tui/triggers/setting.js.map +0 -1
  1283. package/dist/tui/triggers/verbs.js +0 -140
  1284. package/dist/tui/triggers/verbs.js.map +0 -1
  1285. package/dist/tui/turn-interruption.js +0 -160
  1286. package/dist/tui/turn-interruption.js.map +0 -1
  1287. package/dist/tui/turn-limits-settings.js +0 -88
  1288. package/dist/tui/turn-limits-settings.js.map +0 -1
  1289. package/dist/tui/types.js +0 -7
  1290. package/dist/tui/types.js.map +0 -1
  1291. package/dist/tui/units.js +0 -20
  1292. package/dist/tui/units.js.map +0 -1
  1293. package/dist/tui/use-selection-index.js +0 -13
  1294. package/dist/tui/use-selection-index.js.map +0 -1
  1295. package/dist/tui/web-activity.js +0 -105
  1296. package/dist/tui/web-activity.js.map +0 -1
  1297. package/dist/tui/workspace-diff.js +0 -101
  1298. package/dist/tui/workspace-diff.js.map +0 -1
  1299. package/dist/tui/workspace-review.js +0 -67
  1300. package/dist/tui/workspace-review.js.map +0 -1
  1301. package/dist/user-commands/store.js +0 -235
  1302. package/dist/user-commands/store.js.map +0 -1
  1303. package/dist/version.js +0 -23
  1304. package/dist/version.js.map +0 -1
@@ -0,0 +1,1142 @@
1
+ import { createRequire as __namzuCreateRequire } from 'node:module';
2
+ const require = __namzuCreateRequire(import.meta.url);
3
+ import {
4
+ describeBrowserPlan
5
+ } from "./chunk-ZPR4IMRT.js";
6
+ import {
7
+ readManifest
8
+ } from "./chunk-AK2U3N2A.js";
9
+ import {
10
+ listJobs
11
+ } from "./chunk-SKKWMMFP.js";
12
+ import {
13
+ schedulePaths
14
+ } from "./chunk-A22MBIYU.js";
15
+ import {
16
+ CLI_VERSION
17
+ } from "./chunk-HE7WUOX2.js";
18
+ import {
19
+ KEYCHAIN_SERVICE,
20
+ chainCapabilityDisagreements,
21
+ claudeCredentialSearchPaths,
22
+ discoverProviders,
23
+ hasApiCredential,
24
+ preferencesPath,
25
+ readPreferences,
26
+ requiresCredentialForModel,
27
+ resolveChainCapabilities,
28
+ unresolvedMembers,
29
+ wslWindowsHome
30
+ } from "./chunk-SB6UD3ED.js";
31
+ import {
32
+ PROVIDER_REGISTRY
33
+ } from "./chunk-6LLJQ3KY.js";
34
+ import {
35
+ EXIT_USAGE
36
+ } from "./chunk-Y7B67G22.js";
37
+ import {
38
+ describeSessionExportOff
39
+ } from "./chunk-FTMTO72X.js";
40
+ import {
41
+ capabilityCheckId,
42
+ probeOptionalPackage
43
+ } from "./chunk-OH6TB27S.js";
44
+ import {
45
+ LocalSandboxProvider,
46
+ SANDBOX_ISOLATION_CONTROLS,
47
+ SCOPE_ATTRIBUTE,
48
+ getLogCounters,
49
+ invariants,
50
+ isolationOf,
51
+ resolveNamzuHome
52
+ } from "./chunk-K5HARZ7G.js";
53
+ import {
54
+ __name
55
+ } from "./chunk-76FLAFCG.js";
56
+
57
+ // src/doctor/checks/browser.ts
58
+ async function describeBrowserEngine(env, platform = process.platform, load = () => import("@namzu/browser")) {
59
+ const probe = await probeOptionalPackage("@namzu/browser");
60
+ if (probe.state !== "present") {
61
+ return {
62
+ status: "skipped",
63
+ message: probe.state === "absent" ? "@namzu/browser not installed; no browser tools" : "@namzu/browser failed to load; see browser.installed"
64
+ };
65
+ }
66
+ let mod;
67
+ try {
68
+ mod = await load();
69
+ } catch (error) {
70
+ return {
71
+ status: "skipped",
72
+ message: `@namzu/browser failed to load: ${error instanceof Error ? error.message : String(error)}`
73
+ };
74
+ }
75
+ const detected = mod.detectBrowserEnvironment(env, platform);
76
+ const plan = mod.runnableBrowserPlan(detected);
77
+ const notes = plan.warnings.length > 0 ? ` (${plan.warnings.join(" ")})` : "";
78
+ if (plan.unavailableReason !== void 0) {
79
+ return {
80
+ status: "warn",
81
+ message: `no browser can run here: ${plan.unavailableReason}`,
82
+ remediation: plan.engine === "local" && plan.browser === "chromium" ? "namzu browser install" : "Install Google Chrome, or set browser.engine in your config."
83
+ };
84
+ }
85
+ if (plan.engine === "local" && plan.browser === "chromium") {
86
+ return {
87
+ status: "pass",
88
+ message: `${describeBrowserPlan(plan)}${notes}`,
89
+ remediation: "If the first browser call says Chromium is missing: namzu browser install"
90
+ };
91
+ }
92
+ return {
93
+ status: plan.warnings.length > 0 ? "warn" : "pass",
94
+ message: `${describeBrowserPlan(plan)}${notes}`
95
+ };
96
+ }
97
+ __name(describeBrowserEngine, "describeBrowserEngine");
98
+ var browserEngineCheck = {
99
+ id: "browser.engine",
100
+ category: "custom",
101
+ run: /* @__PURE__ */ __name((ctx) => describeBrowserEngine(ctx.env), "run")
102
+ };
103
+
104
+ // src/doctor/checks/chain.ts
105
+ async function describeProviderChain(options = {}) {
106
+ const path = preferencesPath(options.home);
107
+ let read;
108
+ try {
109
+ read = readPreferences(options.home);
110
+ } catch (err) {
111
+ return {
112
+ status: "fail",
113
+ message: `could not read ${path}: ${err instanceof Error ? err.message : String(err)}`,
114
+ remediation: "Fix or delete the file, then run `namzu` to pick a provider again."
115
+ };
116
+ }
117
+ if (read.status === "missing") {
118
+ return {
119
+ status: "skipped",
120
+ message: `no provider chain configured (${path} does not exist)`,
121
+ remediation: "Run `namzu` and pick a provider; the choice is saved to that file."
122
+ };
123
+ }
124
+ if (read.status === "needs-repick") {
125
+ return {
126
+ status: "fail",
127
+ message: `provider chain unusable: ${read.reason}`,
128
+ remediation: "Run `namzu` to pick again, or edit that file by hand."
129
+ };
130
+ }
131
+ let detected;
132
+ try {
133
+ detected = await discoverProviders({
134
+ ...options.env ? { env: options.env } : {},
135
+ ...options.home ? { home: options.home } : {},
136
+ ...options.skipKeychain ? { skipKeychain: true } : {},
137
+ ...options.skipProbes ? { skipProbes: true } : {}
138
+ });
139
+ } catch (err) {
140
+ return {
141
+ status: "inconclusive",
142
+ message: `provider chain read, but credential discovery failed: ${err instanceof Error ? err.message : String(err)}`
143
+ };
144
+ }
145
+ const members = read.prefs.providers;
146
+ const lines = [];
147
+ let unusable = 0;
148
+ let primaryUnusable = false;
149
+ let anonymousZen = false;
150
+ for (const [index, member] of members.entries()) {
151
+ const entry = PROVIDER_REGISTRY[member.id];
152
+ const position = index === 0 ? "primary" : `fallback ${index}`;
153
+ const model = member.model ?? `${entry.defaultModel} (namzu default)`;
154
+ const det = detected.find((d) => d.entry.id === member.id);
155
+ const needsKey = requiresCredentialForModel(entry, member.model ?? entry.defaultModel);
156
+ const usable = needsKey ? hasApiCredential(entry, det?.apiKey) : Boolean(det);
157
+ if (entry.id === "zen" && usable && !hasApiCredential(entry, det?.apiKey)) anonymousZen = true;
158
+ if (!usable) {
159
+ unusable++;
160
+ if (index === 0) primaryUnusable = true;
161
+ }
162
+ const state = needsKey ? usable ? "credential found" : "NO CREDENTIAL" : entry.id === "zen" && usable ? hasApiCredential(entry, det?.apiKey) ? "credential found" : "experimental free models (gateway may refuse)" : usable ? "reachable" : "NOT REACHABLE";
163
+ lines.push(`${index + 1}. ${position} \xB7 ${entry.label} \xB7 ${model} \xB7 ${state}`);
164
+ }
165
+ const chain = lines.join("\n");
166
+ const resolved = await resolveChainCapabilities(members);
167
+ const disagreements = chainCapabilityDisagreements(members, resolved);
168
+ const accepted = read.prefs.allowCapabilityMismatch === true;
169
+ const unreadable = unresolvedMembers(members, resolved);
170
+ const primaryUnreadable = resolved[0]?.kind === "unresolved";
171
+ const sections = [chain];
172
+ if (disagreements.length > 0) {
173
+ sections.push(
174
+ accepted ? "The members declare different capabilities, and you have accepted that:" : "The members declare different capabilities, so a session will be REFUSED:",
175
+ ...disagreements.map((d) => ` - ${d.sentence}`)
176
+ );
177
+ }
178
+ if (unreadable.length > 0) {
179
+ sections.push(
180
+ "Could not read what these members declare:",
181
+ ...unreadable.map((line) => ` - ${line}`)
182
+ );
183
+ }
184
+ const message = sections.join("\n");
185
+ if (disagreements.length > 0 && !accepted) {
186
+ return {
187
+ status: "fail",
188
+ message: `provider chain cannot be honoured as written:
189
+ ${message}`,
190
+ remediation: 'Drop the member that disagrees, or set "allowCapabilityMismatch": true in your preferences to accept the limitation. namzu will not choose between advertising abilities a fallback lacks and costing your primary a capability on every turn.'
191
+ };
192
+ }
193
+ if (primaryUnusable || primaryUnreadable) {
194
+ return {
195
+ status: "fail",
196
+ message: `${unusable} of ${members.length} chain member(s) cannot be used:
197
+ ${message}`,
198
+ remediation: primaryUnusable ? "The primary provider has no usable credential, so no turn can start. Set its key, or run `namzu` to pick a provider that has one." : "The primary provider could not be loaded, so no turn can start. Run `namzu` to pick a provider that can."
199
+ };
200
+ }
201
+ if (unusable > 0 || unreadable.length > 0 || disagreements.length > 0 || anonymousZen) {
202
+ return {
203
+ // Anonymous Zen may be refused at inference time even when its model
204
+ // catalogue answers. That is unverified, not a failed credential check.
205
+ status: "warn",
206
+ message: unusable > 0 ? `${unusable} of ${members.length} chain member(s) cannot be used:
207
+ ${message}` : anonymousZen ? `provider chain configured, with experimental free-model access:
208
+ ${message}` : `provider chain usable, with limitations:
209
+ ${message}`,
210
+ remediation: anonymousZen ? "Zen free models are experimental; the gateway may refuse direct Namzu requests. OpenCode installation is recommended for its own client. If a turn is refused, configure OPENCODE_API_KEY or choose another provider." : unusable > 0 ? "The primary still works, so turns will start. But a fallback with no credential is not a fallback \u2014 set its key, or take it out of the chain." : "The primary still works. A fallback that declares less than your primary will serve shorter or less capable turns if the chain ever falls over to it."
211
+ };
212
+ }
213
+ return {
214
+ status: "pass",
215
+ message: members.length === 1 ? `1 provider configured (no fallback):
216
+ ${message}` : `${members.length} providers configured, in order:
217
+ ${message}`
218
+ };
219
+ }
220
+ __name(describeProviderChain, "describeProviderChain");
221
+ var providerChainCheck = {
222
+ id: "providers.chain",
223
+ category: "providers",
224
+ run: /* @__PURE__ */ __name((ctx) => describeProviderChain({ env: ctx.env }), "run")
225
+ };
226
+
227
+ // src/doctor/checks/credentials.ts
228
+ function missingClaudeSessionNote(env, windowsHome) {
229
+ const paths = claudeCredentialSearchPaths(void 0, env, windowsHome);
230
+ const keychain = process.platform === "darwin" && !env.CLAUDE_CONFIG_DIR ? ` and macOS Keychain service ${KEYCHAIN_SERVICE}` : "";
231
+ return `Claude Code session not detected; checked ${paths.join(", ")}${keychain}. Desktop sign-in does not guarantee a reusable Claude Code CLI session; Namzu does not read Desktop's credential store. Sign in to the standalone Claude Code CLI, or run \`namzu login claude\`.`;
232
+ }
233
+ __name(missingClaudeSessionNote, "missingClaudeSessionNote");
234
+ var credentialSourcesCheck = {
235
+ id: "providers.credentials",
236
+ category: "providers",
237
+ run: /* @__PURE__ */ __name(async (ctx) => {
238
+ const env = ctx.env;
239
+ const windowsHome = wslWindowsHome(env);
240
+ let detected;
241
+ try {
242
+ detected = await discoverProviders({ env, windowsHome });
243
+ } catch (err) {
244
+ return {
245
+ status: "inconclusive",
246
+ message: `credential discovery failed: ${err instanceof Error ? err.message : String(err)}`
247
+ };
248
+ }
249
+ const missingClaude = !detected.some((provider) => provider.entry.id === "anthropic");
250
+ const missingNote = missingClaude ? missingClaudeSessionNote(env, windowsHome) : "";
251
+ if (detected.length === 0) {
252
+ return {
253
+ status: "warn",
254
+ message: `no LLM credential found
255
+ ${missingNote}`,
256
+ remediation: "Namzu no longer reads the secrets file. It first reuses current Claude and Codex sessions on this device, then subscriptions signed in with `namzu login claude|codex`. API keys remain optional alternatives through ANTHROPIC_API_KEY or OPENAI_API_KEY; local Ollama and LM Studio servers are also detected."
257
+ };
258
+ }
259
+ const lines = detected.map((d) => {
260
+ switch (d.source.kind) {
261
+ case "env":
262
+ if (d.entry.id === "zen" && !hasApiCredential(d.entry, d.apiKey))
263
+ return `${d.entry.id} (env \xB7 ${d.source.envName}=public; free models experimental)`;
264
+ return `${d.entry.id} (env \xB7 ${d.source.envName})`;
265
+ case "public":
266
+ return `${d.entry.id} (experimental free models \xB7 gateway may refuse)`;
267
+ case "opencode-file":
268
+ return `${d.entry.id} (OpenCode API key \xB7 ${d.source.path})`;
269
+ case "keychain":
270
+ return `${d.entry.id} (keychain \xB7 ${d.source.service})`;
271
+ case "claude-file":
272
+ return `${d.entry.id} (Claude session \xB7 ${d.source.path})`;
273
+ case "gemini-file":
274
+ return `${d.entry.id} (Gemini session \xB7 ${d.source.path})`;
275
+ case "stored-gemini-key":
276
+ return `${d.entry.id} (saved Gemini API key \xB7 ${d.source.path})`;
277
+ case "stored-api-key":
278
+ return `${d.entry.id} (saved API key \xB7 ${d.source.path})`;
279
+ case "codex-file":
280
+ return `${d.entry.id} (Codex session \xB7 ${d.source.path})`;
281
+ case "stored":
282
+ return `${d.entry.id} (signed in \xB7 ${d.source.path})`;
283
+ case "probe":
284
+ return `${d.entry.id} (local \xB7 ${d.source.url.replace(/^https?:\/\//, "")})`;
285
+ case "session":
286
+ return `${d.entry.id} (typed \xB7 current session)`;
287
+ }
288
+ });
289
+ const onlyAnonymousZen = detected.every(
290
+ (d) => d.entry.id === "zen" && !hasApiCredential(d.entry, d.apiKey)
291
+ );
292
+ return {
293
+ status: onlyAnonymousZen ? "warn" : "pass",
294
+ message: `${detected.length} provider source(s) discovered: ${lines.join(", ")}${missingNote ? `
295
+ ${missingNote}` : ""}`,
296
+ ...onlyAnonymousZen ? {
297
+ remediation: "Zen free models are experimental; the gateway may refuse direct Namzu requests. OpenCode installation is recommended for its own client. If a turn is refused, configure OPENCODE_API_KEY or choose another provider."
298
+ } : {}
299
+ };
300
+ }, "run")
301
+ };
302
+
303
+ // src/doctor/checks/invariants.ts
304
+ function label(row) {
305
+ return `${row.id} (${row.violations} violation${row.violations === 1 ? "" : "s"})`;
306
+ }
307
+ __name(label, "label");
308
+ async function describeInvariants(registry) {
309
+ const ids = registry.listIds();
310
+ if (ids.length === 0) {
311
+ return { status: "skipped", message: "no invariants registered" };
312
+ }
313
+ const rows = await Promise.all(
314
+ ids.map(async (id) => ({
315
+ id,
316
+ outcome: await registry.evaluate(id, void 0),
317
+ violations: registry.violationCount(id)
318
+ }))
319
+ );
320
+ const violated = rows.filter((r) => r.outcome.state === "violated");
321
+ const unknown = rows.filter((r) => r.outcome.state === "unknown");
322
+ if (violated.length > 0) {
323
+ const detail = violated.map((r) => r.outcome.state === "violated" ? `${label(r)}: ${r.outcome.detail}` : label(r)).join("; ");
324
+ return {
325
+ status: "fail",
326
+ message: `${violated.length}/${ids.length} invariant(s) violated \u2014 ${detail}`,
327
+ remediation: "Check the warn/error logs at the module that registered the violated invariant."
328
+ };
329
+ }
330
+ if (unknown.length > 0) {
331
+ const names = unknown.map(label).join(", ");
332
+ return {
333
+ status: "skipped",
334
+ message: `${unknown.length}/${ids.length} invariant(s) have no subject outside a live turn: ${names}`
335
+ };
336
+ }
337
+ return {
338
+ status: "pass",
339
+ message: `${ids.length} invariant(s) hold: ${rows.map(label).join(", ")}`
340
+ };
341
+ }
342
+ __name(describeInvariants, "describeInvariants");
343
+ var invariantsCheck = {
344
+ id: "runtime.invariants",
345
+ category: "runtime",
346
+ run: /* @__PURE__ */ __name(() => describeInvariants(invariants), "run")
347
+ };
348
+
349
+ // src/doctor/checks/logging.ts
350
+ var FIELDS = [
351
+ "dropped",
352
+ "redacted",
353
+ "attributesDropped",
354
+ "valuesTruncated",
355
+ "recordsTruncated"
356
+ ];
357
+ function summarise(counters) {
358
+ return FIELDS.map((f) => `${f}=${counters[f]}`).join(" ");
359
+ }
360
+ __name(summarise, "summarise");
361
+ function describeLogPipeline(counters) {
362
+ if (counters === void 0) {
363
+ return {
364
+ status: "inconclusive",
365
+ message: "no log sink installed \u2014 records reach stderr through the legacy path, where nothing is counted, redacted or size-capped",
366
+ remediation: "A host owns its log destination: call installProcessSink(sink, level) during boot. The CLI does this itself, so seeing this from `namzu doctor` means that step did not run."
367
+ };
368
+ }
369
+ if (counters.dropped > 0) {
370
+ return {
371
+ status: "fail",
372
+ message: `${counters.dropped} log record(s) never reached the sink \u2014 ${summarise(counters)}`,
373
+ remediation: "A record is counted dropped when the installed sink threw, or when the sink is NOOP_SINK. Check the sink passed to installProcessSink: a sink that throws is caught so one bad record cannot fail a turn, which is exactly why the count is the only place this shows up."
374
+ };
375
+ }
376
+ return {
377
+ status: "pass",
378
+ message: `log pipeline live, nothing dropped \u2014 ${summarise(counters)}`
379
+ };
380
+ }
381
+ __name(describeLogPipeline, "describeLogPipeline");
382
+ var loggingPipelineCheck = {
383
+ id: "logging.pipeline",
384
+ // `DoctorCategory` has no `logging` member, and widening that union is an
385
+ // SDK type change this check does not need — the same call the optional
386
+ // package probes made for `files` and `computer-use`.
387
+ category: "custom",
388
+ run: /* @__PURE__ */ __name(() => Promise.resolve(describeLogPipeline(getLogCounters())), "run")
389
+ };
390
+
391
+ // src/doctor/checks/providers.ts
392
+ var providersRegisteredCheck = {
393
+ id: "providers.registered",
394
+ category: "providers",
395
+ run: /* @__PURE__ */ __name(async () => ({
396
+ status: "skipped",
397
+ message: "no provider auto-discovery in v1; register a provider check via registerDoctorCheck for your specific provider configuration (call provider.doctorCheck?() per registered provider)"
398
+ }), "run")
399
+ };
400
+
401
+ // src/doctor/checks/runtime.ts
402
+ import { constants, access } from "node:fs/promises";
403
+ import { tmpdir } from "node:os";
404
+ var cwdWritableCheck = {
405
+ id: "runtime.cwd-writable",
406
+ category: "runtime",
407
+ run: /* @__PURE__ */ __name(async (ctx) => {
408
+ try {
409
+ await access(ctx.cwd, constants.W_OK);
410
+ return { status: "pass", message: `cwd writable: ${ctx.cwd}` };
411
+ } catch (error) {
412
+ const message = error instanceof Error ? error.message : String(error);
413
+ return {
414
+ status: "fail",
415
+ message: `cwd not writable: ${ctx.cwd} (${message})`,
416
+ remediation: "Run from a directory you have write access to, or pass an explicit cwd."
417
+ };
418
+ }
419
+ }, "run")
420
+ };
421
+ var tmpdirWritableCheck = {
422
+ id: "runtime.tmpdir-writable",
423
+ category: "runtime",
424
+ run: /* @__PURE__ */ __name(async () => {
425
+ const dir = tmpdir();
426
+ try {
427
+ await access(dir, constants.W_OK);
428
+ return { status: "pass", message: `tmpdir writable: ${dir}` };
429
+ } catch (error) {
430
+ const message = error instanceof Error ? error.message : String(error);
431
+ return {
432
+ status: "fail",
433
+ message: `tmpdir not writable: ${dir} (${message})`,
434
+ remediation: "Set TMPDIR / TMP / TEMP to a writable location."
435
+ };
436
+ }
437
+ }, "run")
438
+ };
439
+
440
+ // src/doctor/checks/sandbox.ts
441
+ var quietLogger = (() => {
442
+ const noop = /* @__PURE__ */ __name(() => {
443
+ }, "noop");
444
+ const self = { info: noop, warn: noop, error: noop, debug: noop };
445
+ return { ...self, child: /* @__PURE__ */ __name(() => self, "child") };
446
+ })();
447
+ var listControls = /* @__PURE__ */ __name((report, want) => SANDBOX_ISOLATION_CONTROLS.filter((control) => report[control] === want).join(", "), "listControls");
448
+ function describeIsolationHealth(environment) {
449
+ const report = isolationOf(environment);
450
+ const enforced = listControls(report, true);
451
+ const missing = listControls(report, false);
452
+ if (missing.length === 0) {
453
+ return { status: "pass", message: `${environment} enforces ${enforced}` };
454
+ }
455
+ if (enforced.length === 0) {
456
+ return {
457
+ status: "warn",
458
+ message: `${environment} enforces nothing \u2014 commands run unconfined`,
459
+ remediation: "Run the agent inside a container per task (@namzu/sandbox, container tier), or pass requireIsolation so a turn refuses rather than proceeding unconfined."
460
+ };
461
+ }
462
+ return {
463
+ status: "warn",
464
+ message: `${environment} enforces ${enforced} but not ${missing}`,
465
+ remediation: "Pass requireIsolation with the controls you depend on, so a host that cannot enforce one refuses instead of downgrading quietly."
466
+ };
467
+ }
468
+ __name(describeIsolationHealth, "describeIsolationHealth");
469
+ var sandboxPlatformCheck = {
470
+ id: "sandbox.platform",
471
+ category: "sandbox",
472
+ run: /* @__PURE__ */ __name(async () => {
473
+ try {
474
+ return describeIsolationHealth(new LocalSandboxProvider(quietLogger).environment);
475
+ } catch (error) {
476
+ return {
477
+ status: "fail",
478
+ message: `sandbox probe failed: ${error instanceof Error ? error.message : String(error)}`,
479
+ remediation: "The local sandbox provider could not determine what this host enforces. Treat commands as unconfined until this is resolved."
480
+ };
481
+ }
482
+ }, "run")
483
+ };
484
+
485
+ // src/doctor/checks/scheduler.ts
486
+ import { readFileSync, realpathSync } from "node:fs";
487
+ var schedulerCheck = {
488
+ id: "scheduler.service",
489
+ category: "runtime",
490
+ async run(ctx) {
491
+ const paths = schedulePaths(resolveNamzuHome({ env: ctx.env }));
492
+ let jobs = 0;
493
+ try {
494
+ jobs = listJobs(paths).jobs.filter((j) => j.state === "active").length;
495
+ } catch {
496
+ jobs = 0;
497
+ }
498
+ let manifest;
499
+ try {
500
+ manifest = readManifest(paths);
501
+ } catch (error) {
502
+ return { status: "fail", message: error instanceof Error ? error.message : String(error) };
503
+ }
504
+ if (!manifest) {
505
+ return jobs > 0 ? {
506
+ status: "warn",
507
+ message: `${jobs} active scheduled job(s) and no scheduler installed; they will not run`,
508
+ remediation: "namzu schedule install"
509
+ } : { status: "skipped", message: "no scheduled jobs and no scheduler installed" };
510
+ }
511
+ for (const path of [manifest.nodePath, manifest.binPath]) {
512
+ try {
513
+ realpathSync(path);
514
+ } catch {
515
+ return {
516
+ status: "fail",
517
+ message: `the scheduler service starts ${path}, which no longer exists`,
518
+ remediation: "namzu schedule install"
519
+ };
520
+ }
521
+ }
522
+ let age;
523
+ try {
524
+ const beat = JSON.parse(readFileSync(paths.heartbeat, "utf8"));
525
+ age = beat.at ? Date.now() - Date.parse(beat.at) : void 0;
526
+ } catch {
527
+ age = void 0;
528
+ }
529
+ if (age === void 0 || age > 9e4) {
530
+ return {
531
+ status: "warn",
532
+ message: `${manifest.name} (${manifest.platform}) is installed but the daemon has not been seen ${age === void 0 ? "yet" : `for ${Math.round(age / 1e3)} s`}`,
533
+ remediation: "namzu schedule status"
534
+ };
535
+ }
536
+ return {
537
+ status: "pass",
538
+ message: `${manifest.name} (${manifest.platform}) running; ${jobs} active job(s)`
539
+ };
540
+ }
541
+ };
542
+
543
+ // src/doctor/checks/telemetry.ts
544
+ var TELEMETRY = "@namzu/telemetry";
545
+ async function describeInstalledPackage(specifier) {
546
+ const probe = await probeOptionalPackage(specifier);
547
+ switch (probe.state) {
548
+ case "absent":
549
+ return {
550
+ status: "skipped",
551
+ message: `${specifier} not installed (optional package)`
552
+ };
553
+ case "present":
554
+ return { status: "pass", message: `${specifier} is installed` };
555
+ case "broken":
556
+ return {
557
+ status: "fail",
558
+ // The reason is the whole value of separating these: "installed but
559
+ // will not load" sends the reader somewhere, and "not installed" would
560
+ // have sent them to install what is already there.
561
+ message: `${specifier} is installed but failed to load: ${probe.error.message}`,
562
+ remediation: `Reinstall ${specifier}, or remove it if you are not using it \u2014 it is optional and namzu runs without it.`
563
+ };
564
+ }
565
+ }
566
+ __name(describeInstalledPackage, "describeInstalledPackage");
567
+ var telemetryInstalledCheck = {
568
+ id: "telemetry.installed",
569
+ category: "telemetry",
570
+ run: /* @__PURE__ */ __name(() => describeInstalledPackage(TELEMETRY), "run")
571
+ };
572
+
573
+ // src/doctor/checks/vault.ts
574
+ var registered = [];
575
+ var vaultRegisteredCheck = {
576
+ id: "vault.registered",
577
+ category: "vault",
578
+ run: /* @__PURE__ */ __name(async () => {
579
+ if (registered.length === 0) {
580
+ return {
581
+ status: "skipped",
582
+ message: "No credential provider is registered, so there is nothing to report on."
583
+ };
584
+ }
585
+ const lines = [];
586
+ let anyConfigured = false;
587
+ for (const entry of registered) {
588
+ for (const ref of entry.refs) {
589
+ const described = await entry.provider.describe(ref);
590
+ if (described.configured) anyConfigured = true;
591
+ lines.push(
592
+ `${entry.label}: ${ref} \u2014 ${described.configured ? "configured" : "not set"}${described.source ? ` (${described.source})` : ""}, ${described.writable ? "writable" : "read-only"}`
593
+ );
594
+ }
595
+ }
596
+ return {
597
+ // A provider registered and nothing configured is a real answer,
598
+ // not a failure: an operator who has not logged in yet is in a
599
+ // state the doctor should describe rather than complain about.
600
+ status: anyConfigured ? "pass" : "warn",
601
+ message: lines.join("\n")
602
+ };
603
+ }, "run")
604
+ };
605
+
606
+ // src/doctor/checks/index.ts
607
+ function installedCheck(specifier, category) {
608
+ return {
609
+ id: capabilityCheckId(specifier),
610
+ category,
611
+ run: /* @__PURE__ */ __name(() => describeInstalledPackage(specifier), "run")
612
+ };
613
+ }
614
+ __name(installedCheck, "installedCheck");
615
+ var sandboxInstalledCheck = installedCheck("@namzu/sandbox", "sandbox");
616
+ var filesInstalledCheck = installedCheck("@namzu/files", "custom");
617
+ var computerUseInstalledCheck = installedCheck(
618
+ "@namzu/computer-use",
619
+ "custom"
620
+ );
621
+ var browserInstalledCheck = installedCheck("@namzu/browser", "custom");
622
+ var builtInDoctorChecks = [
623
+ sandboxPlatformCheck,
624
+ cwdWritableCheck,
625
+ tmpdirWritableCheck,
626
+ providersRegisteredCheck,
627
+ credentialSourcesCheck,
628
+ // After the credential scan: this one reports which of the credentials that
629
+ // found are actually WIRED INTO the chain, which only reads sensibly once
630
+ // the operator has seen what was found.
631
+ providerChainCheck,
632
+ vaultRegisteredCheck,
633
+ sandboxInstalledCheck,
634
+ filesInstalledCheck,
635
+ computerUseInstalledCheck,
636
+ browserInstalledCheck,
637
+ // After the package check: which browser it would drive here, and how.
638
+ browserEngineCheck,
639
+ telemetryInstalledCheck,
640
+ schedulerCheck,
641
+ // Last, deliberately: it reports what the pipeline did to the records
642
+ // every check above it just produced, so running it first would report a
643
+ // process that had barely logged anything yet.
644
+ loggingPipelineCheck,
645
+ invariantsCheck
646
+ ];
647
+
648
+ // src/doctor/checks/session-export.ts
649
+ async function describeSessionExportStatus(config, loader) {
650
+ const configured = config.telemetry?.sessionExport;
651
+ if (!configured) {
652
+ const off2 = await describeSessionExportOff(loader);
653
+ return {
654
+ status: "pass",
655
+ message: off2 ?? "Session export is off: telemetry.sessionExport is not configured."
656
+ };
657
+ }
658
+ const off = await describeSessionExportOff(loader);
659
+ if (off === null) {
660
+ return {
661
+ status: "fail",
662
+ message: `telemetry.sessionExport is configured (destination: ${configured.destination}) but "@namzu/telemetry" is not installed, so nothing would be recorded.`,
663
+ remediation: "Install @namzu/telemetry, or remove telemetry.sessionExport from your config. namzu refuses to start a session in this state rather than run one whose export silently does not exist."
664
+ };
665
+ }
666
+ const redactorCount = configured.redactors?.length ?? 1;
667
+ const typePhrase = configured.eventTypes ? `${configured.eventTypes.length} event type(s)` : "every session event";
668
+ return {
669
+ status: "pass",
670
+ message: `Session export is ON: ${typePhrase} is written to ${configured.destination}, with ${redactorCount} redactor(s) installed.`,
671
+ ...redactorCount === 0 ? {
672
+ remediation: "`redactors: []` turns redaction off entirely \u2014 credential-shaped values in tool results will be written verbatim. Remove the key to install the shipped `secrets` redactor."
673
+ } : {}
674
+ };
675
+ }
676
+ __name(describeSessionExportStatus, "describeSessionExportStatus");
677
+ function sessionExportCheck(config, loader) {
678
+ return {
679
+ id: "telemetry.session-export",
680
+ category: "telemetry",
681
+ run: /* @__PURE__ */ __name(() => describeSessionExportStatus(config, loader), "run")
682
+ };
683
+ }
684
+ __name(sessionExportCheck, "sessionExportCheck");
685
+
686
+ // src/doctor/registry.ts
687
+ var DEFAULT_PER_CHECK_TIMEOUT_MS = 5e3;
688
+ var DEFAULT_WALL_CLOCK_TIMEOUT_MS = 1e4;
689
+ var DoctorRegistry = class {
690
+ static {
691
+ __name(this, "DoctorRegistry");
692
+ }
693
+ checks = /* @__PURE__ */ new Map();
694
+ log;
695
+ setLogger(log) {
696
+ this.log = log.child({ [SCOPE_ATTRIBUTE]: "doctor" });
697
+ }
698
+ register(check) {
699
+ if (this.checks.has(check.id)) {
700
+ throw new Error(
701
+ `Doctor check with id "${check.id}" is already registered. Pick a different id or call clear() first.`
702
+ );
703
+ }
704
+ this.checks.set(check.id, check);
705
+ }
706
+ unregister(id) {
707
+ return this.checks.delete(id);
708
+ }
709
+ clear() {
710
+ this.checks.clear();
711
+ }
712
+ list() {
713
+ return Array.from(this.checks.values());
714
+ }
715
+ async run(opts = {}) {
716
+ const ctx = buildContext(opts);
717
+ const perCheck = opts.perCheckTimeoutMs ?? DEFAULT_PER_CHECK_TIMEOUT_MS;
718
+ const wall = opts.wallClockTimeoutMs ?? DEFAULT_WALL_CLOCK_TIMEOUT_MS;
719
+ const signal = opts.signal;
720
+ const filteredChecks = opts.categories ? this.list().filter((c) => opts.categories?.includes(c.category)) : this.list();
721
+ const startedAt = Date.now();
722
+ const completed = /* @__PURE__ */ new Map();
723
+ const wallTimer = sleep(wall).then(() => "wall-timeout");
724
+ const abortPromise = signal ? signal.aborted ? Promise.resolve("aborted") : new Promise((resolve) => {
725
+ signal.addEventListener("abort", () => resolve("aborted"), {
726
+ once: true
727
+ });
728
+ }) : new Promise(() => {
729
+ });
730
+ const recordCompletion = /* @__PURE__ */ __name((record) => {
731
+ if (completed.has(record.id)) return;
732
+ completed.set(record.id, record);
733
+ this.invokeCallback("onCheckComplete", () => opts.onCheckComplete?.(record));
734
+ }, "recordCompletion");
735
+ const inFlight = filteredChecks.map(async (check) => {
736
+ this.invokeCallback("onCheckStart", () => opts.onCheckStart?.(check));
737
+ const t0 = Date.now();
738
+ const checkPromise = (async () => check.run(ctx))();
739
+ const timeoutPromise = sleep(perCheck).then(
740
+ () => ({
741
+ status: "inconclusive",
742
+ message: `check did not return within ${perCheck}ms`
743
+ })
744
+ );
745
+ let result;
746
+ try {
747
+ result = await Promise.race([checkPromise, timeoutPromise]);
748
+ } catch (error) {
749
+ const message = error instanceof Error ? error.message : String(error);
750
+ this.log?.warn("doctor check threw", {
751
+ "namzu.doctor.id": check.id,
752
+ "namzu.doctor.message": message
753
+ });
754
+ result = { status: "fail", message: `check threw: ${message}` };
755
+ }
756
+ recordCompletion({
757
+ id: check.id,
758
+ category: check.category,
759
+ status: result.status,
760
+ message: result.message,
761
+ remediation: result.remediation,
762
+ durationMs: result.durationMs ?? Date.now() - t0
763
+ });
764
+ });
765
+ const allChecks = Promise.all(inFlight);
766
+ const raceWinner = await Promise.race([allChecks, wallTimer, abortPromise]);
767
+ let records;
768
+ if (raceWinner === "wall-timeout" || raceWinner === "aborted") {
769
+ const reason = raceWinner === "aborted" ? "aborted by signal before this check completed" : `wall-clock timeout (${wall}ms) reached before this check completed`;
770
+ const unfinished = filteredChecks.filter((c) => !completed.has(c.id));
771
+ this.log?.warn(
772
+ raceWinner === "aborted" ? "doctor aborted by signal" : "doctor wall-clock timeout",
773
+ {
774
+ "namzu.doctor.wall": wall,
775
+ "namzu.doctor.total": filteredChecks.length,
776
+ "namzu.doctor.unfinished": unfinished.length
777
+ }
778
+ );
779
+ records = filteredChecks.map((check) => {
780
+ const existing = completed.get(check.id);
781
+ if (existing) return existing;
782
+ const record = {
783
+ id: check.id,
784
+ category: check.category,
785
+ status: "inconclusive",
786
+ message: reason,
787
+ durationMs: Date.now() - startedAt
788
+ };
789
+ recordCompletion(record);
790
+ return record;
791
+ });
792
+ } else {
793
+ records = filteredChecks.map((check) => {
794
+ const existing = completed.get(check.id);
795
+ if (existing) return existing;
796
+ return {
797
+ id: check.id,
798
+ category: check.category,
799
+ status: "inconclusive",
800
+ message: "check resolved without producing a record (internal)",
801
+ durationMs: Date.now() - startedAt
802
+ };
803
+ });
804
+ }
805
+ return buildReport(records, opts.version ?? "unknown");
806
+ }
807
+ /**
808
+ * Invoke a consumer callback (onCheckStart / onCheckComplete) with
809
+ * try/catch isolation. Per ses_013 C3: a throwing callback must not
810
+ * affect the doctor run or the final DoctorReport. Logged but
811
+ * swallowed.
812
+ */
813
+ invokeCallback(phase, fn) {
814
+ try {
815
+ fn();
816
+ } catch (error) {
817
+ const message = error instanceof Error ? error.message : String(error);
818
+ this.log?.warn("doctor callback threw", {
819
+ "namzu.doctor.phase": phase,
820
+ "namzu.doctor.message": message
821
+ });
822
+ }
823
+ }
824
+ };
825
+ var doctor = new DoctorRegistry();
826
+ function createDoctorRegistry() {
827
+ return new DoctorRegistry();
828
+ }
829
+ __name(createDoctorRegistry, "createDoctorRegistry");
830
+ function registerDoctorCheck(check) {
831
+ doctor.register(check);
832
+ }
833
+ __name(registerDoctorCheck, "registerDoctorCheck");
834
+ function runDoctor(opts = {}) {
835
+ const registry = opts.registry ?? doctor;
836
+ return registry.run({
837
+ categories: opts.categories,
838
+ perCheckTimeoutMs: opts.perCheckTimeoutMs,
839
+ wallClockTimeoutMs: opts.wallClockTimeoutMs,
840
+ cwd: opts.cwd,
841
+ env: opts.env,
842
+ projectRoot: opts.projectRoot,
843
+ version: opts.version,
844
+ onCheckStart: opts.onCheckStart,
845
+ onCheckComplete: opts.onCheckComplete,
846
+ signal: opts.signal
847
+ });
848
+ }
849
+ __name(runDoctor, "runDoctor");
850
+ function buildContext(opts) {
851
+ return Object.freeze({
852
+ cwd: opts.cwd ?? process.cwd(),
853
+ env: opts.env ?? process.env,
854
+ projectRoot: opts.projectRoot ?? null
855
+ });
856
+ }
857
+ __name(buildContext, "buildContext");
858
+ function buildReport(records, version) {
859
+ const summary = {
860
+ pass: records.filter((r) => r.status === "pass").length,
861
+ fail: records.filter((r) => r.status === "fail").length,
862
+ inconclusive: records.filter((r) => r.status === "inconclusive").length,
863
+ warn: records.filter((r) => r.status === "warn").length,
864
+ skipped: records.filter((r) => r.status === "skipped").length,
865
+ total: records.length
866
+ };
867
+ const exit = summary.fail > 0 ? 1 : summary.total === 0 ? 2 : summary.inconclusive > 0 ? 69 : 0;
868
+ return Object.freeze({
869
+ version,
870
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
871
+ checks: records,
872
+ summary,
873
+ exit
874
+ });
875
+ }
876
+ __name(buildReport, "buildReport");
877
+ function sleep(ms) {
878
+ return new Promise((resolve) => setTimeout(() => resolve("sleep-done"), ms));
879
+ }
880
+ __name(sleep, "sleep");
881
+
882
+ // src/commands/doctor.ts
883
+ var VALID_CATEGORIES = [
884
+ "sandbox",
885
+ "providers",
886
+ "vault",
887
+ "telemetry",
888
+ "runtime",
889
+ "plugins",
890
+ "custom"
891
+ ];
892
+ var HELP = `namzu doctor \u2014 health checks for the local Namzu environment
893
+
894
+ Usage:
895
+ namzu doctor [options]
896
+
897
+ Options:
898
+ --json Emit a machine-readable JSON report
899
+ --verbose Include stack traces on failures
900
+ --category <a,b,c> Comma-separated category filter
901
+ (sandbox, providers, vault, telemetry,
902
+ runtime, plugins, custom)
903
+ --per-check-timeout <ms> Per-check timeout (default 5000)
904
+ --wall-clock-timeout <ms> Total wall-clock timeout (default 10000)
905
+ -h, --help Show this help
906
+
907
+ Exit codes:
908
+ 0 every check answered, and none of them failed
909
+ 1 one or more checks reported \`fail\`
910
+ 2 no checks registered (Namzu not configured here)
911
+ 69 a check could not answer \u2014 it timed out, was aborted, or what it
912
+ reads threw. Separate from 0 because a report that did not manage
913
+ to look tells you nothing about the part it did look at, and
914
+ separate from 1 because nothing was established to have failed.
915
+ 70 internal CLI error (sysexits EX_SOFTWARE)
916
+
917
+ A \`skipped\` check does not affect the exit code: it means there was
918
+ nothing here to check \u2014 an optional package absent, nothing configured
919
+ yet \u2014 which is an ordinary state of a healthy machine.
920
+ `;
921
+ function parseArgs(args) {
922
+ let json = false;
923
+ let verbose = false;
924
+ let help = false;
925
+ let categories;
926
+ let perCheckTimeoutMs;
927
+ let wallClockTimeoutMs;
928
+ for (let i = 0; i < args.length; i++) {
929
+ const arg = args[i];
930
+ switch (arg) {
931
+ case "--json":
932
+ json = true;
933
+ break;
934
+ case "--verbose":
935
+ verbose = true;
936
+ break;
937
+ case "-h":
938
+ case "--help":
939
+ help = true;
940
+ break;
941
+ case "--category": {
942
+ const value = args[++i];
943
+ if (!value) return { json, verbose, help, error: "--category requires a value" };
944
+ const parts = value.split(",").map((p) => p.trim()).filter(Boolean);
945
+ const invalid = parts.filter((p) => !VALID_CATEGORIES.includes(p));
946
+ if (invalid.length > 0) {
947
+ return {
948
+ json,
949
+ verbose,
950
+ help,
951
+ error: `unknown category: ${invalid.join(", ")} (valid: ${VALID_CATEGORIES.join(", ")})`
952
+ };
953
+ }
954
+ categories = parts;
955
+ break;
956
+ }
957
+ case "--per-check-timeout": {
958
+ const value = args[++i];
959
+ if (!value)
960
+ return {
961
+ json,
962
+ verbose,
963
+ help,
964
+ error: "--per-check-timeout requires a value"
965
+ };
966
+ const n = Number.parseInt(value, 10);
967
+ if (!Number.isFinite(n) || n <= 0) {
968
+ return {
969
+ json,
970
+ verbose,
971
+ help,
972
+ error: `--per-check-timeout must be a positive integer; got ${value}`
973
+ };
974
+ }
975
+ perCheckTimeoutMs = n;
976
+ break;
977
+ }
978
+ case "--wall-clock-timeout": {
979
+ const value = args[++i];
980
+ if (!value)
981
+ return {
982
+ json,
983
+ verbose,
984
+ help,
985
+ error: "--wall-clock-timeout requires a value"
986
+ };
987
+ const n = Number.parseInt(value, 10);
988
+ if (!Number.isFinite(n) || n <= 0) {
989
+ return {
990
+ json,
991
+ verbose,
992
+ help,
993
+ error: `--wall-clock-timeout must be a positive integer; got ${value}`
994
+ };
995
+ }
996
+ wallClockTimeoutMs = n;
997
+ break;
998
+ }
999
+ default:
1000
+ return { json, verbose, help, error: `unknown option: ${arg}` };
1001
+ }
1002
+ }
1003
+ return {
1004
+ json,
1005
+ verbose,
1006
+ help,
1007
+ categories,
1008
+ perCheckTimeoutMs,
1009
+ wallClockTimeoutMs
1010
+ };
1011
+ }
1012
+ __name(parseArgs, "parseArgs");
1013
+ function statusGlyph(status) {
1014
+ switch (status) {
1015
+ case "pass":
1016
+ return "\u2713";
1017
+ case "fail":
1018
+ return "\u2717";
1019
+ case "inconclusive":
1020
+ return "?";
1021
+ case "warn":
1022
+ return "!";
1023
+ // The glyph `inconclusive` used to carry. It reads as "not applicable",
1024
+ // which is what this status means and what that status never did — so
1025
+ // the mark moves to the row it was describing all along, and the check
1026
+ // that could not answer takes the question mark.
1027
+ case "skipped":
1028
+ return "\u2298";
1029
+ }
1030
+ }
1031
+ __name(statusGlyph, "statusGlyph");
1032
+ function formatHumanReport(report, verbose) {
1033
+ const lines = [];
1034
+ lines.push(`namzu doctor \u2014 ${report.timestamp}`);
1035
+ lines.push("");
1036
+ const widestCategory = report.checks.reduce(
1037
+ (w, c) => Math.max(w, c.category.length),
1038
+ "category".length
1039
+ );
1040
+ for (const record of report.checks) {
1041
+ const glyph = statusGlyph(record.status);
1042
+ const category = record.category.padEnd(widestCategory);
1043
+ const dur = `${record.durationMs}ms`;
1044
+ const head = ` ${glyph} ${category} ${record.id} ${dur}`;
1045
+ lines.push(head);
1046
+ if (record.message) {
1047
+ for (const line of record.message.split("\n")) lines.push(` ${line}`);
1048
+ }
1049
+ if (record.remediation) {
1050
+ const [first = "", ...rest] = record.remediation.split("\n");
1051
+ lines.push(` \u2192 ${first}`);
1052
+ for (const line of rest) lines.push(` ${line}`);
1053
+ }
1054
+ }
1055
+ lines.push("");
1056
+ const s = report.summary;
1057
+ lines.push(
1058
+ ` pass: ${s.pass} fail: ${s.fail} warn: ${s.warn} inconc: ${s.inconclusive} skipped: ${s.skipped} total: ${s.total}`
1059
+ );
1060
+ lines.push(` exit: ${report.exit}`);
1061
+ if (report.exit === 69) {
1062
+ lines.push(" (69: at least one check could not answer \u2014 see the ? rows above)");
1063
+ }
1064
+ if (verbose) {
1065
+ const failed = report.checks.filter((c) => c.status === "fail");
1066
+ if (failed.length > 0) {
1067
+ lines.push("");
1068
+ lines.push("Failures:");
1069
+ for (const f of failed) {
1070
+ lines.push(` ${f.id}: ${f.message ?? "(no message)"}`);
1071
+ }
1072
+ }
1073
+ }
1074
+ return lines.join("\n");
1075
+ }
1076
+ __name(formatHumanReport, "formatHumanReport");
1077
+ async function runDoctorCommand(args, config = {}) {
1078
+ const parsed = parseArgs(args);
1079
+ if (parsed.error) {
1080
+ process.stderr.write(`Error: ${parsed.error}
1081
+
1082
+ ${HELP}
1083
+ `);
1084
+ return EXIT_USAGE;
1085
+ }
1086
+ if (parsed.help) {
1087
+ process.stdout.write(`${HELP}
1088
+ `);
1089
+ return 0;
1090
+ }
1091
+ const registry = createDoctorRegistry();
1092
+ for (const check of builtInDoctorChecks) registry.register(check);
1093
+ registry.register(sessionExportCheck(config));
1094
+ const opts = {
1095
+ registry,
1096
+ version: CLI_VERSION,
1097
+ categories: parsed.categories,
1098
+ perCheckTimeoutMs: parsed.perCheckTimeoutMs,
1099
+ wallClockTimeoutMs: parsed.wallClockTimeoutMs
1100
+ };
1101
+ const report = await runDoctor(opts);
1102
+ if (parsed.json) {
1103
+ process.stdout.write(`${JSON.stringify(report, null, 2)}
1104
+ `);
1105
+ } else {
1106
+ process.stdout.write(`${formatHumanReport(report, parsed.verbose)}
1107
+ `);
1108
+ }
1109
+ return report.exit;
1110
+ }
1111
+ __name(runDoctorCommand, "runDoctorCommand");
1112
+ var doctorCommand = {
1113
+ name: "doctor",
1114
+ description: "Run health checks against the local Namzu environment",
1115
+ passThrough: true,
1116
+ handler: /* @__PURE__ */ __name(async ({ rawArgs, ctx }) => runDoctorCommand(rawArgs, ctx.config), "handler")
1117
+ };
1118
+
1119
+ export {
1120
+ browserEngineCheck,
1121
+ providerChainCheck,
1122
+ credentialSourcesCheck,
1123
+ providersRegisteredCheck,
1124
+ cwdWritableCheck,
1125
+ tmpdirWritableCheck,
1126
+ sandboxPlatformCheck,
1127
+ telemetryInstalledCheck,
1128
+ vaultRegisteredCheck,
1129
+ sandboxInstalledCheck,
1130
+ filesInstalledCheck,
1131
+ computerUseInstalledCheck,
1132
+ browserInstalledCheck,
1133
+ builtInDoctorChecks,
1134
+ DoctorRegistry,
1135
+ doctor,
1136
+ createDoctorRegistry,
1137
+ registerDoctorCheck,
1138
+ runDoctor,
1139
+ runDoctorCommand,
1140
+ doctorCommand
1141
+ };
1142
+ //# sourceMappingURL=chunk-MH6KUKVV.js.map