@iowarp/clio-coder 0.4.9 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1172) hide show
  1. package/.claude-plugin/marketplace.json +11 -3
  2. package/CHANGELOG.md +153 -0
  3. package/CODE_OF_CONDUCT.md +10 -0
  4. package/CONTRIBUTING.md +208 -382
  5. package/NOTICE +8 -2
  6. package/README.md +199 -418
  7. package/ROADMAP.md +82 -0
  8. package/SECURITY.md +14 -11
  9. package/dist/acp-KS7ARGV6.js +132 -0
  10. package/dist/agents-YOGJ2YEJ.js +163 -0
  11. package/dist/assets/codewiki.json +1 -1
  12. package/dist/auth-CEDCO6O6.js +557 -0
  13. package/dist/background-YWTBPSQU.js +39 -0
  14. package/dist/builtins-GDYO4RTR.js +23 -0
  15. package/dist/chunk-27YTM2CV.js +175 -0
  16. package/dist/chunk-2AF6YC7Q.js +75 -0
  17. package/dist/chunk-2DTIWSAW.js +381 -0
  18. package/dist/chunk-2EMLKSCX.js +262 -0
  19. package/dist/chunk-2OJ3YZQP.js +665 -0
  20. package/dist/chunk-2VLYHHFT.js +35 -0
  21. package/dist/chunk-2WVPJF3Z.js +204 -0
  22. package/dist/chunk-33OASOS6.js +176 -0
  23. package/dist/chunk-3BD2LXYJ.js +19 -0
  24. package/dist/chunk-3JHUFKG7.js +30 -0
  25. package/dist/chunk-3JLTRPN7.js +711 -0
  26. package/dist/chunk-3LT34CAM.js +2796 -0
  27. package/dist/chunk-3O5JWP4L.js +1670 -0
  28. package/dist/chunk-3UW3KU4A.js +21 -0
  29. package/dist/chunk-4A6YRGV4.js +569 -0
  30. package/dist/chunk-4D2BRCZ3.js +67 -0
  31. package/dist/chunk-4SYHGVDE.js +668 -0
  32. package/dist/chunk-4VDHLCF5.js +66 -0
  33. package/dist/chunk-4WOOTKFD.js +637 -0
  34. package/dist/chunk-4WV4PI66.js +80 -0
  35. package/dist/chunk-53OXPRI6.js +195 -0
  36. package/dist/chunk-55RMDDFM.js +1347 -0
  37. package/dist/chunk-56XP4FJU.js +2025 -0
  38. package/dist/chunk-5B3RTYAK.js +123 -0
  39. package/dist/chunk-5CD243WE.js +45 -0
  40. package/dist/chunk-5JQR5B4D.js +709 -0
  41. package/dist/chunk-5KQEUIWM.js +597 -0
  42. package/dist/chunk-5LP5FNNR.js +915 -0
  43. package/dist/chunk-62UK7AGW.js +9344 -0
  44. package/dist/chunk-6CTHLZFB.js +563 -0
  45. package/dist/chunk-6EJYVCTN.js +23 -0
  46. package/dist/chunk-6OWUM2NC.js +12289 -0
  47. package/dist/chunk-6RJMYYIE.js +1023 -0
  48. package/dist/chunk-6W75D37F.js +643 -0
  49. package/dist/chunk-733ZBT5P.js +1721 -0
  50. package/dist/chunk-77DCC6JZ.js +3710 -0
  51. package/dist/chunk-7QXCO3AF.js +156 -0
  52. package/dist/chunk-7RET77VB.js +481 -0
  53. package/dist/chunk-A4MVRV4C.js +65 -0
  54. package/dist/chunk-ALJWT6O6.js +93 -0
  55. package/dist/chunk-AVSR2HKI.js +232 -0
  56. package/dist/chunk-B7GY6QER.js +42 -0
  57. package/dist/chunk-BFOSV5EZ.js +178 -0
  58. package/dist/chunk-BGOIM7NB.js +103 -0
  59. package/dist/chunk-BJH6WFIB.js +372 -0
  60. package/dist/chunk-BOBCCDJ6.js +1533 -0
  61. package/dist/chunk-BRCOSE7O.js +117 -0
  62. package/dist/chunk-BYFHHCFV.js +601 -0
  63. package/dist/chunk-C2CPOIH2.js +83 -0
  64. package/dist/chunk-C7AQTPCE.js +694 -0
  65. package/dist/chunk-CBAQPTDU.js +165 -0
  66. package/dist/chunk-CDQ2UC6W.js +125 -0
  67. package/dist/chunk-CN6SW5DC.js +177 -0
  68. package/dist/chunk-CRHPCPZP.js +132 -0
  69. package/dist/chunk-CTFPFW3H.js +44 -0
  70. package/dist/chunk-D3KWFOUT.js +103 -0
  71. package/dist/chunk-D65E25JG.js +185 -0
  72. package/dist/chunk-DCGHJQ2U.js +236 -0
  73. package/dist/chunk-DE2LU267.js +106 -0
  74. package/dist/chunk-DF6PI6GN.js +97 -0
  75. package/dist/chunk-DGC6X6XR.js +53 -0
  76. package/dist/chunk-DOUISWEE.js +526 -0
  77. package/dist/chunk-DR3TAEUA.js +188 -0
  78. package/dist/chunk-DVTBERFY.js +33 -0
  79. package/dist/chunk-DXSETN72.js +1051 -0
  80. package/dist/chunk-DZLR4UEH.js +128 -0
  81. package/dist/chunk-E6IPKW2E.js +77 -0
  82. package/dist/chunk-EG4ARXPC.js +139 -0
  83. package/dist/chunk-EKV4UBCM.js +652 -0
  84. package/dist/chunk-EOJPDNUP.js +1325 -0
  85. package/dist/chunk-EX57VVWW.js +4157 -0
  86. package/dist/chunk-EYTLV3W3.js +5937 -0
  87. package/dist/chunk-EZD2BXGP.js +475 -0
  88. package/dist/chunk-EZDCA34W.js +314 -0
  89. package/dist/chunk-FD2I4KBR.js +33 -0
  90. package/dist/chunk-FD3IAHQM.js +27 -0
  91. package/dist/chunk-FFYTC2KQ.js +416 -0
  92. package/dist/chunk-FGSQHUCK.js +110 -0
  93. package/dist/chunk-GCQFN7YI.js +32 -0
  94. package/dist/chunk-GGPF6LLE.js +38 -0
  95. package/dist/chunk-GGWI3OVM.js +215 -0
  96. package/dist/chunk-GLIQT7SU.js +172 -0
  97. package/dist/chunk-GN7QBEEI.js +95 -0
  98. package/dist/chunk-GRHOXDKB.js +1104 -0
  99. package/dist/chunk-HMN2C6YL.js +54 -0
  100. package/dist/chunk-HOEDA42N.js +310 -0
  101. package/dist/chunk-HOYZUKG7.js +192 -0
  102. package/dist/chunk-HQVN7G4F.js +1021 -0
  103. package/dist/chunk-HSQQFDB3.js +519 -0
  104. package/dist/chunk-I4ELN5BX.js +47 -0
  105. package/dist/chunk-I4Y4WKZR.js +386 -0
  106. package/dist/chunk-IFPDAD7R.js +797 -0
  107. package/dist/chunk-IN7DGBVS.js +582 -0
  108. package/dist/chunk-ISHUS7HC.js +396 -0
  109. package/dist/chunk-JPXLJSGR.js +191 -0
  110. package/dist/chunk-JQCLXSFI.js +69 -0
  111. package/dist/chunk-KBUTSJSR.js +61 -0
  112. package/dist/chunk-KW5HXKLJ.js +56 -0
  113. package/dist/chunk-L4APUGCT.js +139 -0
  114. package/dist/chunk-L7G7K4I2.js +505 -0
  115. package/dist/chunk-LAR7DX5E.js +1840 -0
  116. package/dist/chunk-LAVUQX3B.js +462 -0
  117. package/dist/chunk-LJRBX7QR.js +116 -0
  118. package/dist/chunk-LNOXCGN2.js +1864 -0
  119. package/dist/chunk-LTWH2ACR.js +23002 -0
  120. package/dist/chunk-LYJJ6546.js +661 -0
  121. package/dist/chunk-M2IPMWCN.js +457 -0
  122. package/dist/chunk-MGLRTOCK.js +101 -0
  123. package/dist/chunk-MZF5IKZT.js +160 -0
  124. package/dist/chunk-N24R6KWS.js +386 -0
  125. package/dist/chunk-NASYVWDB.js +604 -0
  126. package/dist/chunk-NBXFPI7U.js +195 -0
  127. package/dist/chunk-NDPF2N2L.js +400 -0
  128. package/dist/chunk-NFSK2VNU.js +446 -0
  129. package/dist/chunk-NG3QQSXY.js +43 -0
  130. package/dist/chunk-NOCSM22Y.js +63 -0
  131. package/dist/chunk-NVPXXW2H.js +1143 -0
  132. package/dist/chunk-O63U2I6I.js +30 -0
  133. package/dist/chunk-OJXOA6YU.js +98 -0
  134. package/dist/chunk-OPD7GL6F.js +1196 -0
  135. package/dist/chunk-OQ2EOAHA.js +14399 -0
  136. package/dist/chunk-OV62D6KO.js +688 -0
  137. package/dist/chunk-OZ76TLGU.js +740 -0
  138. package/dist/chunk-P4GNZPXO.js +1156 -0
  139. package/dist/chunk-PS6JAWJZ.js +78 -0
  140. package/dist/chunk-PXRCXGLK.js +1865 -0
  141. package/dist/chunk-QDUUOZ3S.js +108 -0
  142. package/dist/chunk-QG6I2T5E.js +1416 -0
  143. package/dist/chunk-QHSBROEW.js +308 -0
  144. package/dist/chunk-QNUQ7K7D.js +46 -0
  145. package/dist/chunk-QZTTRSJE.js +333 -0
  146. package/dist/chunk-R2UUNSNQ.js +1605 -0
  147. package/dist/chunk-R7FGRZNF.js +1794 -0
  148. package/dist/chunk-RNDCROSG.js +199 -0
  149. package/dist/chunk-S36CXHO2.js +302 -0
  150. package/dist/chunk-SJGS3GDI.js +575 -0
  151. package/dist/chunk-SQZHXUB3.js +510 -0
  152. package/dist/chunk-SUTLW6ND.js +686 -0
  153. package/dist/chunk-SYF7FVBL.js +179 -0
  154. package/dist/chunk-T2MDZES3.js +1577 -0
  155. package/dist/chunk-T33IYTZM.js +1146 -0
  156. package/dist/chunk-TDGYTWM6.js +49 -0
  157. package/dist/chunk-TGL5FZVD.js +132 -0
  158. package/dist/chunk-TGWZXJ7L.js +1205 -0
  159. package/dist/chunk-TKDRT2DF.js +114 -0
  160. package/dist/chunk-TV2EBCSQ.js +152 -0
  161. package/dist/chunk-U26XXPJS.js +367 -0
  162. package/dist/chunk-U5QU5ZOD.js +419 -0
  163. package/dist/chunk-U6YTUVOX.js +1011 -0
  164. package/dist/chunk-UCINIRHW.js +188 -0
  165. package/dist/chunk-UJD5MPP6.js +52 -0
  166. package/dist/chunk-URCXX7WJ.js +146 -0
  167. package/dist/chunk-UX2L5CUD.js +898 -0
  168. package/dist/chunk-UZVYEF57.js +114 -0
  169. package/dist/chunk-V35KZDUZ.js +218 -0
  170. package/dist/chunk-VESL6DQY.js +1058 -0
  171. package/dist/chunk-VKHLUZNO.js +986 -0
  172. package/dist/chunk-VOYUCAQF.js +584 -0
  173. package/dist/chunk-VYRQHORQ.js +414 -0
  174. package/dist/chunk-W53XSRQE.js +245 -0
  175. package/dist/chunk-X4CEFOSG.js +226 -0
  176. package/dist/chunk-XDHUDE5K.js +380 -0
  177. package/dist/chunk-XISLDHEL.js +1290 -0
  178. package/dist/chunk-XM34YQ2Y.js +169 -0
  179. package/dist/chunk-XMDBTYCH.js +661 -0
  180. package/dist/chunk-XS2QPZJE.js +449 -0
  181. package/dist/chunk-YBUECLAF.js +618 -0
  182. package/dist/chunk-YQ6XEFVK.js +332 -0
  183. package/dist/chunk-YYLCPDCC.js +990 -0
  184. package/dist/chunk-Z4GLJ6J4.js +1035 -0
  185. package/dist/chunk-ZARZ4POR.js +210 -0
  186. package/dist/chunk-ZJPORZTC.js +119 -0
  187. package/dist/chunk-ZNUZ3EXD.js +243 -0
  188. package/dist/chunk-ZPST2KQO.js +49 -0
  189. package/dist/chunk-ZR5YA6ZF.js +512 -0
  190. package/dist/chunk-ZU4JPCPR.js +319 -0
  191. package/dist/chunk-ZUKUCZYZ.js +39 -0
  192. package/dist/cli/index.js +56 -45
  193. package/dist/clio-K2PBVCEM.js +27 -0
  194. package/dist/clio-context-tools-GR4OHFSO.js +145 -0
  195. package/dist/code-nav-4X3OI6DK.js +715 -0
  196. package/dist/codewiki/build-worker.js +4 -4
  197. package/dist/compile-cache-YRB6QRO7.js +18 -0
  198. package/dist/components-RQOJ6NUR.js +675 -0
  199. package/dist/config-Q5J7UBAB.js +291 -0
  200. package/dist/config-XE7XYZLU.js +38 -0
  201. package/dist/config-graph-P3555574.js +175 -0
  202. package/dist/configure-KIJ32ZO6.js +104 -0
  203. package/dist/context-LFBQOSXT.js +344 -0
  204. package/dist/context-NNLBES2Y.js +82 -0
  205. package/dist/context-WBH3KSVR.js +302 -0
  206. package/dist/context-clear-YOHMQ6SQ.js +208 -0
  207. package/dist/context-index-X2N5UAIF.js +120 -0
  208. package/dist/context-map-HOSMGUG2.js +555 -0
  209. package/dist/context-working-set-MRAEVDNV.js +1564 -0
  210. package/dist/data-tool-JJPBGMQJ.js +2986 -0
  211. package/dist/detail-RHJOTGN4.js +139 -0
  212. package/dist/dispatch-runner-NC7PYNIO.js +2477 -0
  213. package/dist/docs-K4GBWRUX.js +342 -0
  214. package/dist/doctor-S5KZ2GTN.js +1138 -0
  215. package/dist/doctor-deep-2EJQSHIZ.js +130 -0
  216. package/dist/domain-loader-MB34FDPD.js +13 -0
  217. package/dist/eval-3D6M36N7.js +5220 -0
  218. package/dist/eval-inventory-SM3HNM47.js +260 -0
  219. package/dist/evals-FO6JEUCN.js +104 -0
  220. package/dist/evidence-6IYN52ET.js +262 -0
  221. package/dist/evidence-JVECPI3F.js +250 -0
  222. package/dist/evidence-XNVPPLVK.js +410 -0
  223. package/dist/evolve-TLPUDJDM.js +634 -0
  224. package/dist/extensions-ROZJ5X3J.js +311 -0
  225. package/dist/fleet-6RJWIOEO.js +284 -0
  226. package/dist/fleet-WKVBF5SZ.js +942 -0
  227. package/dist/fleet-commands-L6WFT7KZ.js +76 -0
  228. package/dist/fleet-decisions-BTQMWU5A.js +55 -0
  229. package/dist/fleet-graph-553DZ67Q.js +141 -0
  230. package/dist/fleet-inspect-236FZPRB.js +329 -0
  231. package/dist/fleet-new-CKUXP3CO.js +48 -0
  232. package/dist/fleet-preflight-NZQHABWO.js +95 -0
  233. package/dist/fleet-validate-7NLAE26R.js +96 -0
  234. package/dist/fleet-verify-E3RO6A5W.js +226 -0
  235. package/dist/fleet-view-KMZQY7YJ.js +144 -0
  236. package/dist/gui/client/assets/abnfDiagram-VCTEODGH-DPBWQwNn.js +1 -0
  237. package/dist/gui/client/assets/architecture-7GRP2DOG-D1w8FrFW.js +1 -0
  238. package/dist/gui/client/assets/architectureDiagram-5GKGNRK7-CVPgKd1-.js +36 -0
  239. package/dist/gui/client/assets/blockDiagram-I7D4REHJ-BLmnqkK5.js +129 -0
  240. package/dist/gui/client/assets/c4Diagram-7LVT6UL2-4AU9cfM7.js +38 -0
  241. package/dist/gui/client/assets/channel-DwFZ0m8S.js +1 -0
  242. package/dist/gui/client/assets/chunk-4HAMMTFA-EOWkKCav.js +62 -0
  243. package/dist/gui/client/assets/chunk-75Z2AOVW-CygeoIMl.js +2 -0
  244. package/dist/gui/client/assets/chunk-DU6HZSFF-s27fViLb.js +125 -0
  245. package/dist/gui/client/assets/chunk-F27PBJKO-BrHvwLsZ.js +1 -0
  246. package/dist/gui/client/assets/chunk-GMAD6QVW-DzPh-7jt.js +72 -0
  247. package/dist/gui/client/assets/chunk-GVQU2GXP-pIaQkIzm.js +1 -0
  248. package/dist/gui/client/assets/chunk-IMKFNOWR-BGJVE_Br.js +231 -0
  249. package/dist/gui/client/assets/chunk-L3NEJ4N5-B3YLuhww.js +1 -0
  250. package/dist/gui/client/assets/chunk-OSK3NFVY-BRj61HHU.js +10 -0
  251. package/dist/gui/client/assets/chunk-P2QGCYS3-Sno90KxP.js +1 -0
  252. package/dist/gui/client/assets/chunk-POPQ4Y6H-Cw8NTbxr.js +1 -0
  253. package/dist/gui/client/assets/chunk-PWAF6VOD-BIhHgz37.js +1 -0
  254. package/dist/gui/client/assets/chunk-SHT3W25Y-Cqv7npBj.js +168 -0
  255. package/dist/gui/client/assets/chunk-SVP7TREG-Hxzl6Dee.js +88 -0
  256. package/dist/gui/client/assets/chunk-TICWLB2K-CIFVyVP2.js +206 -0
  257. package/dist/gui/client/assets/classDiagram-ZZMXUADV-BJbAiI_w.js +1 -0
  258. package/dist/gui/client/assets/classDiagram-v2-VYDZK3BY-BJbAiI_w.js +1 -0
  259. package/dist/gui/client/assets/cynefin-OW5HDTMX-DecLWZ-y.js +1 -0
  260. package/dist/gui/client/assets/cynefinDiagram-5FMLGOSQ-CK-T2N-D.js +62 -0
  261. package/dist/gui/client/assets/dagre-GXQ25YYZ-C0dfg-OS.js +4 -0
  262. package/dist/gui/client/assets/diagram-S7CK7UJ4-EaJukVh-.js +30 -0
  263. package/dist/gui/client/assets/diagram-UQ7AKVKN-xcOucEtP.js +41 -0
  264. package/dist/gui/client/assets/diagram-VSXAHHWV-3AUJACMf.js +3 -0
  265. package/dist/gui/client/assets/diagram-VX7I27RA-TPknLqam.js +24 -0
  266. package/dist/gui/client/assets/diagram-Z3DM3KII-wa1q3YMF.js +24 -0
  267. package/dist/gui/client/assets/ebnfDiagram-PWID7BFC-JBCF2-s7.js +1 -0
  268. package/dist/gui/client/assets/erDiagram-RLTQ6QDP-CmXjXPc4.js +99 -0
  269. package/dist/gui/client/assets/eventmodeling-NTZA5JFV-D_1aJWYl.js +1 -0
  270. package/dist/gui/client/assets/flowDiagram-HODETNUW-BQtZlael.js +1 -0
  271. package/dist/gui/client/assets/framework-Bq-znqwW.js +9 -0
  272. package/dist/gui/client/assets/ganttDiagram-EL5Y4UJY-IPaL_kaa.js +292 -0
  273. package/dist/gui/client/assets/gitGraph-4MIJSDKK-Oy0Q3hoc.js +1 -0
  274. package/dist/gui/client/assets/gitGraphDiagram-WWUBYQGX-jtAuBmbc.js +106 -0
  275. package/dist/gui/client/assets/index-CuFuBEdL.css +1 -0
  276. package/dist/gui/client/assets/index-hMbEIsX0.js +87 -0
  277. package/dist/gui/client/assets/info-A6RAGUB7-UtEs1tv7.js +1 -0
  278. package/dist/gui/client/assets/infoDiagram-27XIBGKW-hlwR1pBW.js +2 -0
  279. package/dist/gui/client/assets/ishikawaDiagram-5VMMS53U-C6vMtfsd.js +70 -0
  280. package/dist/gui/client/assets/journeyDiagram-3NMN7TZE-EAwAl_PS.js +139 -0
  281. package/dist/gui/client/assets/kanban-definition-UXKFOSKX-CQOhRKHW.js +89 -0
  282. package/dist/gui/client/assets/line-DbcwGZTW.js +1 -0
  283. package/dist/gui/client/assets/mermaid-parser.core-C2QfVcHd.js +7 -0
  284. package/dist/gui/client/assets/mermaid.core-N9qUTre1.js +44 -0
  285. package/dist/gui/client/assets/mindmap-definition-YA3MSWOX-BR_FL9gK.js +96 -0
  286. package/dist/gui/client/assets/packet-AYTQ26CC-CbBJ2oAa.js +1 -0
  287. package/dist/gui/client/assets/pegDiagram-XKGWAZYB-BruU0IHM.js +1 -0
  288. package/dist/gui/client/assets/pie-WAS4IAKB-BWdSng4H.js +1 -0
  289. package/dist/gui/client/assets/pieDiagram-E7YTZNPT-CR3ljgdU.js +39 -0
  290. package/dist/gui/client/assets/quadrantDiagram-AXDQQJYC-C-boKslr.js +7 -0
  291. package/dist/gui/client/assets/radar-RG4KPBEZ-CGlOnAKG.js +1 -0
  292. package/dist/gui/client/assets/railroad-74A4TZTK-CDvuAlyC.js +1 -0
  293. package/dist/gui/client/assets/railroad-abnf-HS5TGJTU-CQUA9crC.js +1 -0
  294. package/dist/gui/client/assets/railroad-ebnf-LZEXJU2U-CD857gxq.js +1 -0
  295. package/dist/gui/client/assets/railroad-peg-WCYAUIDC-DUV4k35E.js +1 -0
  296. package/dist/gui/client/assets/railroadDiagram-O6MQD6OU-DMR4LXmA.js +1 -0
  297. package/dist/gui/client/assets/requirementDiagram-BXWQKSXE-DVltaF6c.js +84 -0
  298. package/dist/gui/client/assets/sankeyDiagram-P5KCCOFB-CHdNz472.js +40 -0
  299. package/dist/gui/client/assets/sequenceDiagram-WJ2MYXX4-DaMafIty.js +162 -0
  300. package/dist/gui/client/assets/stateDiagram-D77RDMKH-CEbBHqn3.js +1 -0
  301. package/dist/gui/client/assets/stateDiagram-v2-MP3YSRHH-B3JgDdFg.js +1 -0
  302. package/dist/gui/client/assets/swimlanes-42K2YHIH-BlPHndnJ.js +1 -0
  303. package/dist/gui/client/assets/swimlanesDiagram-VR7AAH4N-BPabHwsZ.js +8 -0
  304. package/dist/gui/client/assets/timeline-definition-24CTP7MA-E4Y1lPBI.js +120 -0
  305. package/dist/gui/client/assets/treeView-Q6P3EWNA-DrY0uhTN.js +1 -0
  306. package/dist/gui/client/assets/treemap-WGGIJYW6-CVotnLHf.js +1 -0
  307. package/dist/gui/client/assets/vennDiagram-4TSXK5OY-DJNrLIOF.js +34 -0
  308. package/dist/gui/client/assets/wardley-WFR3VGLG-ClOpAp5S.js +1 -0
  309. package/dist/gui/client/assets/wardleyDiagram-VM6X3IG4-qhMoKOXc.js +78 -0
  310. package/dist/gui/client/assets/xychartDiagram-S5SC5T6Z-CTuXoo9R.js +7 -0
  311. package/dist/gui/client/index.html +6 -0
  312. package/dist/gui/ops-worker.js +167 -0
  313. package/dist/gui/reads-worker.js +473 -0
  314. package/dist/gui/server.js +9780 -0
  315. package/dist/gui-QJS7XQMV.js +16 -0
  316. package/dist/init-DV5B6HQG.js +354 -0
  317. package/dist/install-6C45YXFP.js +19 -0
  318. package/dist/install-O7NSRU2W.js +13 -0
  319. package/dist/interactive-OXGYZYAS.js +22381 -0
  320. package/dist/interop-J7UOBOSF.js +254 -0
  321. package/dist/inventory-OEGIL6PY.js +144 -0
  322. package/dist/library-B3UPGY4V.js +83 -0
  323. package/dist/library-MXQA5DLT.js +309 -0
  324. package/dist/library-ROZAMUIL.js +496 -0
  325. package/dist/library-import-2LTWOVBD.js +190 -0
  326. package/dist/library-inventory-LJ3XHLWO.js +60 -0
  327. package/dist/library-validation-DARHHUNW.js +46 -0
  328. package/dist/mcp-2GSPYQ54.js +28 -0
  329. package/dist/memory-J3STUUIK.js +537 -0
  330. package/dist/models-Y3GMFJ2V.js +314 -0
  331. package/dist/monitor-LHNH577J.js +811 -0
  332. package/dist/orchestrator-DTAPXULA.js +12117 -0
  333. package/dist/panes-A743ONZ5.js +103 -0
  334. package/dist/panes-CTNO57ZY.js +76 -0
  335. package/dist/paths-3SBYJQDP.js +68 -0
  336. package/dist/preload-OJBMAIXF.js +140 -0
  337. package/dist/providers-CMETPZNS.js +232 -0
  338. package/dist/registry-37T4U6X2.js +15 -0
  339. package/dist/reset-O7EUCYWO.js +346 -0
  340. package/dist/resources-FY6XYFN2.js +189 -0
  341. package/dist/run-H64MEVTA.js +1067 -0
  342. package/dist/run-script-PQ5NRU3X.js +42 -0
  343. package/dist/settings-SNIQNXCW.js +73 -0
  344. package/dist/settings-controls-X6GMCPVG.js +202 -0
  345. package/dist/share-CAFMMQLM.js +299 -0
  346. package/dist/skills-ERKQUC7L.js +114 -0
  347. package/dist/skills-eval-CQ23MYQK.js +1099 -0
  348. package/dist/skills-inventory-TVUYJDVN.js +142 -0
  349. package/dist/slash-commands-ROG3KIFJ.js +107 -0
  350. package/dist/startup-background-KDWCQMWT.js +247 -0
  351. package/dist/steer-KKYXJSH4.js +77 -0
  352. package/dist/support-M3RCUUEL.js +40 -0
  353. package/dist/system-ZDW44ZGX.js +142 -0
  354. package/dist/target-runtimes-PWA22WVW.js +73 -0
  355. package/dist/targets-AJWA6E7Z.js +1207 -0
  356. package/dist/tasks-6L2JJRC5.js +39 -0
  357. package/dist/terminal-lease-YFUSDPAD.js +432 -0
  358. package/dist/tools-5XJUABRD.js +30 -0
  359. package/dist/trace-LA5MVR4Y.js +527 -0
  360. package/dist/tree-sitter-TQW3Y52T.js +4673 -0
  361. package/dist/tui-primitives-IUCVWLH5.js +19 -0
  362. package/dist/uninstall-SAWGGXAB.js +448 -0
  363. package/dist/upgrade-HSNSVTZG.js +300 -0
  364. package/dist/usage-XSILDHKF.js +1083 -0
  365. package/dist/verifiers-ECA5GIHL.js +633 -0
  366. package/dist/verify-R6QQCCEB.js +31 -0
  367. package/dist/version-PLZYB5KW.js +22 -0
  368. package/dist/web-fetch-PVZNMBOB.js +803 -0
  369. package/dist/wiki-generate-RP22WP5K.js +647 -0
  370. package/dist/with-panes-W3PAZPRF.js +629 -0
  371. package/dist/worker/entry.js +324 -284
  372. package/dist/workspace-check-3764ZKC2.js +83 -0
  373. package/docs/README.md +26 -10
  374. package/docs/architecture/acp.md +179 -12
  375. package/docs/architecture/artifact-placement.md +1 -1
  376. package/docs/architecture/capacity-and-scheduling.md +7 -8
  377. package/docs/architecture/context-engine.md +350 -95
  378. package/docs/architecture/model-catalog.md +18 -11
  379. package/docs/architecture/observability.md +1 -1
  380. package/docs/architecture/pi-boundary.md +59 -6
  381. package/docs/architecture/prompt-envelope-and-tools.md +147 -39
  382. package/docs/architecture/provider-adapter-cookbook.md +2 -2
  383. package/docs/architecture/safety-model.md +18 -4
  384. package/docs/architecture/trace-store.md +2 -2
  385. package/docs/architecture/tui-design.md +41 -81
  386. package/docs/architecture/worker-dispatch-mechanics.md +9 -1
  387. package/docs/gui/README.md +69 -0
  388. package/docs/gui/boundary-doctrine.md +104 -0
  389. package/docs/gui/chat-rendering-spec.md +1440 -0
  390. package/docs/gui/cli-surface-routing.md +148 -0
  391. package/docs/gui/delivery-order.md +53 -0
  392. package/docs/gui/event-bus-coverage.md +103 -0
  393. package/docs/gui/inspector-presentation.md +71 -0
  394. package/docs/gui/parity/01-cli-surface.md +74 -0
  395. package/docs/gui/parity/02-slash-and-surfaces.md +110 -0
  396. package/docs/gui/parity/03-domains-and-plan.md +69 -0
  397. package/docs/gui/performance-baseline.md +76 -0
  398. package/docs/gui/settings-write-surface.md +267 -0
  399. package/docs/gui/workflow-coverage.md +64 -0
  400. package/docs/guide/built-in-agents.md +1 -1
  401. package/docs/guide/commands-and-modes.md +256 -99
  402. package/docs/guide/configuration-and-targets.md +485 -124
  403. package/docs/guide/configuration-reference.md +165 -82
  404. package/docs/guide/doctor.md +127 -0
  405. package/docs/guide/environment-variables.md +1 -1
  406. package/docs/guide/exit-codes-and-output.md +3 -1
  407. package/docs/guide/extensions-and-sharing.md +3 -14
  408. package/docs/guide/fleet-dispatch.md +231 -45
  409. package/docs/guide/glossary.md +1 -1
  410. package/docs/guide/installation-and-lifecycle.md +27 -16
  411. package/docs/guide/interop.md +2 -2
  412. package/docs/guide/proactive-memory.md +154 -68
  413. package/docs/guide/resource-library.md +4 -0
  414. package/docs/guide/skills-marketplace.md +8 -4
  415. package/docs/guide/slurm.md +88 -0
  416. package/docs/guide/tool-usage.md +134 -11
  417. package/docs/guide/troubleshooting.md +4 -2
  418. package/docs/process/battletest-2026-09-20-fixes.md +161 -0
  419. package/docs/process/configure-tree-proposal.md +637 -0
  420. package/docs/process/documentation-coverage.md +8 -0
  421. package/docs/process/documentation-guide.md +18 -1
  422. package/docs/process/eval-runner.md +58 -14
  423. package/docs/process/performance-methodology.md +11 -3
  424. package/docs/process/release-cut-checklist.md +29 -3
  425. package/docs/process/tool-audit-v0.4.9.md +3 -0
  426. package/examples/extensions/README.md +1 -3
  427. package/examples/extensions/lab-status/clio-coder-extension.json +1 -1
  428. package/examples/extensions/measurements/clio-coder-extension.json +1 -1
  429. package/library/registry.yaml +30 -5
  430. package/library/skills/git/fix-issue/SKILL.md +2 -1
  431. package/library/skills/git/fix-issue/plugin.json +1 -1
  432. package/library/skills/git/ship/SKILL.md +2 -1
  433. package/library/skills/git/ship/plugin.json +1 -1
  434. package/library/skills/meta/clio-coder-test/SKILL.md +5 -6
  435. package/library/skills/meta/clio-coder-test/evals.md +2 -2
  436. package/library/skills/meta/clio-coder-test/references/test-map.md +2 -2
  437. package/library/skills/registry.yaml +9 -5
  438. package/library/skills/research/slurm-jobs/SKILL.md +110 -0
  439. package/library/skills/research/slurm-jobs/evals.md +39 -0
  440. package/library/skills/research/slurm-jobs/plugin.json +23 -0
  441. package/library/skills/skill-marketplace.json +18 -2
  442. package/package.json +15 -10
  443. package/src/cli/args.ts +59 -0
  444. package/src/cli/argv.ts +7 -0
  445. package/src/cli/clio.ts +9 -1
  446. package/src/cli/configure-controls.ts +136 -0
  447. package/src/cli/configure-onboarding.ts +24 -7
  448. package/src/cli/configure-quick.ts +32 -7
  449. package/src/cli/configure-target.ts +11 -1
  450. package/src/cli/configure.ts +253 -256
  451. package/src/cli/docs-server.ts +290 -0
  452. package/src/cli/docs.ts +60 -15
  453. package/src/cli/doctor-deep.ts +126 -0
  454. package/src/cli/doctor-hpc.ts +122 -0
  455. package/src/cli/doctor-slurm.ts +130 -0
  456. package/src/cli/doctor-task-worktrees.ts +88 -0
  457. package/src/cli/doctor.ts +165 -16
  458. package/src/cli/fleet-verify.ts +3 -2
  459. package/src/cli/gui.ts +111 -0
  460. package/src/cli/index.ts +14 -4
  461. package/src/cli/library.ts +2 -7
  462. package/src/cli/modes/json-stream.ts +4 -2
  463. package/src/cli/modes/print.ts +252 -25
  464. package/src/cli/run.ts +199 -71
  465. package/src/cli/skills.ts +25 -7
  466. package/src/cli/targets.ts +87 -9
  467. package/src/cli/uninstall.ts +28 -8
  468. package/src/cli/usage.ts +2 -1
  469. package/src/cli/workspace-check.ts +71 -0
  470. package/src/core/bash-exec.ts +8 -2
  471. package/src/core/bus-events.ts +32 -3
  472. package/src/core/cache-telemetry.ts +3 -2
  473. package/src/core/compile-cache.ts +11 -1
  474. package/src/core/config.ts +59 -6
  475. package/src/core/defaults.ts +27 -5
  476. package/src/core/diagnostics.ts +25 -0
  477. package/src/core/event-bus.ts +2 -1
  478. package/src/core/gateway-routing.ts +10 -3
  479. package/src/core/git-commit-attribution.ts +2 -1
  480. package/src/core/naming-compat.ts +6 -4
  481. package/src/core/package-root.ts +0 -9
  482. package/src/core/path-canonical.ts +143 -24
  483. package/src/core/residency-target-key.ts +2 -6
  484. package/src/core/run-overrides.ts +1 -1
  485. package/src/core/settings-awareness.ts +108 -0
  486. package/src/core/settings-controls.ts +673 -0
  487. package/src/core/settings-navigation.ts +116 -0
  488. package/src/core/theme-token-hex.ts +19 -9
  489. package/src/core/turn-constraints.ts +52 -0
  490. package/src/domains/agents/builtins/scout.md +7 -17
  491. package/src/domains/agents/catalog.ts +5 -1
  492. package/src/domains/agents/extension.ts +2 -1
  493. package/src/domains/agents/registry.ts +4 -3
  494. package/src/domains/agents/result-contract.ts +132 -1
  495. package/src/domains/config/classify.ts +11 -7
  496. package/src/domains/config/extension.ts +5 -1
  497. package/src/domains/config/keybindings.ts +2 -2
  498. package/src/domains/context/codewiki/coordinator.ts +10 -0
  499. package/src/domains/context/worker/snapshot.ts +6 -3
  500. package/src/domains/dispatch/active-route-planner.ts +2 -0
  501. package/src/domains/dispatch/agent-candidates.ts +5 -1
  502. package/src/domains/dispatch/capability-match.ts +1 -1
  503. package/src/domains/dispatch/contract.ts +28 -0
  504. package/src/domains/dispatch/event-pump.ts +37 -3
  505. package/src/domains/dispatch/extension.ts +391 -48
  506. package/src/domains/dispatch/failure-classification.ts +37 -2
  507. package/src/domains/dispatch/receipt-integrity.ts +3 -0
  508. package/src/domains/dispatch/run-identity.ts +10 -3
  509. package/src/domains/dispatch/target-breaker.ts +163 -0
  510. package/src/domains/dispatch/types.ts +29 -2
  511. package/src/domains/dispatch/worker-model-loads.ts +66 -0
  512. package/src/domains/dispatch/worker-protocol.ts +20 -1
  513. package/src/domains/dispatch/worker-spawn.ts +28 -2
  514. package/src/domains/eval/artifacts/redact.ts +9 -0
  515. package/src/domains/eval/metrics/noop.ts +61 -0
  516. package/src/domains/eval/reports/junit.ts +5 -1
  517. package/src/domains/eval/reports/text.ts +7 -0
  518. package/src/domains/eval/runners/clio-run.ts +19 -8
  519. package/src/domains/eval/runners/external-command.ts +29 -4
  520. package/src/domains/eval/schema/adapter.ts +6 -2
  521. package/src/domains/eval/schema/suite.ts +2 -0
  522. package/src/domains/eval/schema/validate.ts +3 -0
  523. package/src/domains/eval/suites/run.ts +167 -26
  524. package/src/domains/evidence/detail.ts +3 -2
  525. package/src/domains/extensions/operator-runtime.ts +11 -4
  526. package/src/domains/gateway/mcp/client.ts +1 -1
  527. package/src/domains/lifecycle/doctor.ts +42 -26
  528. package/src/domains/lifecycle/migrations/2026-09-18-ollama-runtime-id.ts +38 -0
  529. package/src/domains/lifecycle/migrations/index.ts +2 -0
  530. package/src/domains/middleware/demo-guidance.ts +36 -0
  531. package/src/domains/middleware/dispatch-nudge.ts +1 -1
  532. package/src/domains/middleware/memory-intervention.ts +51 -4
  533. package/src/domains/middleware/runtime.ts +5 -4
  534. package/src/domains/middleware/skills-reminder.ts +29 -52
  535. package/src/domains/middleware/task-nudge.ts +1 -0
  536. package/src/domains/middleware/watchdog.ts +4 -0
  537. package/src/domains/observability/extension.ts +2 -1
  538. package/src/domains/observability/out-of-turn-usage.ts +3 -2
  539. package/src/domains/observability/projection.ts +3 -2
  540. package/src/domains/observability/worker-progress.ts +48 -0
  541. package/src/domains/prompts/compiler.ts +148 -52
  542. package/src/domains/prompts/contract.ts +3 -3
  543. package/src/domains/prompts/demo-guidance.ts +8 -0
  544. package/src/domains/prompts/extension.ts +12 -7
  545. package/src/domains/prompts/fragments/identity/clio.md +2 -1
  546. package/src/domains/prompts/fragments/identity/docs-routing.md +2 -0
  547. package/src/domains/prompts/fragments/identity/self-awareness.md +4 -0
  548. package/src/domains/prompts/fragments/operating/contract.md +16 -7
  549. package/src/domains/prompts/fragments/operating/delegation.md +29 -13
  550. package/src/domains/prompts/fragments/operating/skills.md +18 -10
  551. package/src/domains/prompts/fragments/operating/worker.md +2 -0
  552. package/src/domains/providers/cache-deployment.ts +45 -2
  553. package/src/domains/providers/contract.ts +52 -11
  554. package/src/domains/providers/extension.ts +230 -53
  555. package/src/domains/providers/model-discovery.ts +22 -8
  556. package/src/domains/providers/models/local-models/clio-coder-local-coding-targets.yaml +5 -7
  557. package/src/domains/providers/plugins.ts +3 -4
  558. package/src/domains/providers/probe/fingerprint.ts +2 -2
  559. package/src/domains/providers/probe/reasoning.ts +9 -16
  560. package/src/domains/providers/probe/tool-call.ts +236 -0
  561. package/src/domains/providers/registry.ts +51 -8
  562. package/src/domains/providers/runtime-resolution.ts +60 -12
  563. package/src/domains/providers/runtimes/boot-manifest.ts +1 -1
  564. package/src/domains/providers/runtimes/builtins.ts +2 -2
  565. package/src/domains/providers/runtimes/common/lmstudio-http.ts +57 -41
  566. package/src/domains/providers/runtimes/common/local-synth.ts +3 -1
  567. package/src/domains/providers/runtimes/common/ollama-model-ids.ts +11 -0
  568. package/src/domains/providers/runtimes/common/probe-helpers.ts +53 -0
  569. package/src/domains/providers/runtimes/local-native/llamacpp-completion.ts +3 -1
  570. package/src/domains/providers/runtimes/local-native/llamacpp-embed.ts +7 -13
  571. package/src/domains/providers/runtimes/local-native/llamacpp-rerank.ts +7 -17
  572. package/src/domains/providers/runtimes/local-native/llamacpp.ts +1 -0
  573. package/src/domains/providers/runtimes/local-native/ollama.ts +211 -0
  574. package/src/domains/providers/runtimes/protocol/litellm.ts +77 -65
  575. package/src/domains/providers/support.ts +1 -1
  576. package/src/domains/providers/types/local-model-quirks.ts +2 -3
  577. package/src/domains/providers/types/runtime-descriptor.ts +23 -3
  578. package/src/domains/providers/types/target-descriptor.ts +15 -3
  579. package/src/domains/resources/collision.ts +7 -2
  580. package/src/domains/resources/index.ts +1 -0
  581. package/src/domains/resources/library-actions.ts +4 -2
  582. package/src/domains/resources/library-inventory.ts +6 -2
  583. package/src/domains/resources/prompts/loader.ts +20 -7
  584. package/src/domains/resources/skills/availability.ts +56 -0
  585. package/src/domains/resources/skills/loader.ts +20 -9
  586. package/src/domains/safety/action-classifier.ts +282 -31
  587. package/src/domains/safety/audit.ts +2 -1
  588. package/src/domains/safety/autonomy.ts +54 -11
  589. package/src/domains/safety/decision-presentation.ts +17 -4
  590. package/src/domains/safety/finish-contract-registration.ts +25 -1
  591. package/src/domains/safety/finish-contract.ts +20 -5
  592. package/src/domains/safety/path-policy.ts +6 -2
  593. package/src/domains/safety/policy-engine.ts +168 -48
  594. package/src/domains/safety/protected-artifacts.ts +527 -16
  595. package/src/domains/safety/read-scope.ts +120 -0
  596. package/src/domains/safety/skill-authority.ts +52 -16
  597. package/src/domains/scheduling/cluster.ts +14 -3
  598. package/src/domains/scheduling/contract.ts +7 -0
  599. package/src/domains/scheduling/extension.ts +20 -9
  600. package/src/domains/scheduling/local-capacity.ts +160 -0
  601. package/src/domains/session/context-accounting.ts +44 -31
  602. package/src/domains/session/context-ledger.ts +10 -3
  603. package/src/domains/session/entries.ts +4 -0
  604. package/src/domains/session/history.ts +1 -1
  605. package/src/domains/session/prompt-cache.ts +1 -0
  606. package/src/domains/session/prompt-manifest.ts +3 -1
  607. package/src/domains/session/retry.ts +4 -6
  608. package/src/domains/session/task-board.ts +19 -4
  609. package/src/domains/session/tree/preview.ts +3 -2
  610. package/src/engine/acp/commands.ts +653 -0
  611. package/src/engine/acp/server.ts +639 -20
  612. package/src/engine/acp/tool-mediator.ts +30 -7
  613. package/src/engine/acp/types.ts +58 -0
  614. package/src/engine/agent.ts +55 -10
  615. package/src/engine/ai.ts +11 -2
  616. package/src/engine/api-registry.ts +5 -4
  617. package/src/engine/apis/degraded-inference.ts +243 -0
  618. package/src/engine/apis/llamacpp-residency.ts +50 -6
  619. package/src/engine/apis/lmstudio-residency.ts +3 -5
  620. package/src/engine/apis/lmstudio.ts +137 -31
  621. package/src/engine/apis/ollama-http.ts +118 -0
  622. package/src/engine/apis/ollama-native.ts +216 -97
  623. package/src/engine/apis/openai-completions.ts +191 -189
  624. package/src/engine/apis/output-budget.ts +3 -1
  625. package/src/engine/apis/residency-lock.ts +2 -1
  626. package/src/engine/apis/residency.ts +339 -89
  627. package/src/engine/apis/sampling-overrides.ts +23 -2
  628. package/src/engine/apis/types.ts +1 -2
  629. package/src/engine/claude/tool-safety.ts +30 -5
  630. package/src/engine/context.ts +13 -0
  631. package/src/engine/env-api-keys.ts +2 -1
  632. package/src/engine/gemma-channel-filter.ts +3 -2
  633. package/src/engine/instrumented-tui.ts +25 -0
  634. package/src/engine/loop-guard.ts +172 -6
  635. package/src/engine/pi-mono-names.ts +16 -0
  636. package/src/engine/prewarm.ts +44 -15
  637. package/src/engine/provider-payload.ts +52 -14
  638. package/src/engine/session.ts +4 -2
  639. package/src/engine/worker-events.ts +9 -1
  640. package/src/engine/worker-runtime.ts +269 -42
  641. package/src/engine/worker-tools.ts +8 -3
  642. package/src/entry/boot-options.ts +23 -0
  643. package/src/entry/orchestrator.ts +207 -36
  644. package/src/interactive/assistant-generation-timing.ts +52 -0
  645. package/src/interactive/chat-loop-messages.ts +4 -1
  646. package/src/interactive/chat-loop.ts +59 -9
  647. package/src/interactive/chat-panel.ts +10 -1
  648. package/src/interactive/clio-editor.ts +51 -79
  649. package/src/interactive/context-meter.ts +1 -0
  650. package/src/interactive/context-overlay.ts +21 -8
  651. package/src/interactive/cost-overlay.ts +1 -1
  652. package/src/interactive/dispatch-board.ts +39 -8
  653. package/src/interactive/editor-bash.ts +0 -34
  654. package/src/interactive/editor-rails.ts +43 -0
  655. package/src/interactive/editor-submit.ts +34 -2
  656. package/src/interactive/footer/dashboard.ts +67 -38
  657. package/src/interactive/footer/demo-hints.ts +40 -0
  658. package/src/interactive/footer/key-hints.ts +21 -0
  659. package/src/interactive/footer/notifications.ts +1 -1
  660. package/src/interactive/footer/pages.ts +486 -0
  661. package/src/interactive/footer/system-metrics.ts +147 -0
  662. package/src/interactive/footer/widgets.ts +158 -63
  663. package/src/interactive/footer-panel.ts +29 -7
  664. package/src/interactive/interactive-application.ts +109 -21
  665. package/src/interactive/interactive-event-projection.ts +6 -2
  666. package/src/interactive/interactive-presentation.ts +25 -29
  667. package/src/interactive/interactive-slash-runtime.ts +32 -18
  668. package/src/interactive/interactive-subscriptions.ts +25 -5
  669. package/src/interactive/interactive-tickers.ts +21 -5
  670. package/src/interactive/keybinding-manager.ts +9 -0
  671. package/src/interactive/overlay-frame.ts +29 -7
  672. package/src/interactive/overlay-lifecycle.ts +5 -3
  673. package/src/interactive/overlay-model-selectors.ts +4 -0
  674. package/src/interactive/overlay-permission-lifecycle.ts +6 -5
  675. package/src/interactive/overlays/ask-user.ts +103 -110
  676. package/src/interactive/overlays/help-reference.ts +1 -0
  677. package/src/interactive/overlays/message-picker.ts +3 -29
  678. package/src/interactive/overlays/session-selector.ts +3 -2
  679. package/src/interactive/overlays/settings-sections.ts +2 -30
  680. package/src/interactive/overlays/settings.ts +310 -607
  681. package/src/interactive/permission-hint.ts +3 -3
  682. package/src/interactive/permission-overlay.ts +45 -27
  683. package/src/interactive/renderers/doctor-report.ts +43 -0
  684. package/src/interactive/renderers/tool-execution.ts +87 -62
  685. package/src/interactive/renderers/worker-entry.ts +76 -3
  686. package/src/interactive/side-question.ts +3 -1
  687. package/src/interactive/slash-commands.ts +78 -23
  688. package/src/interactive/startup-background.ts +131 -0
  689. package/src/interactive/startup-diagnostics.ts +16 -0
  690. package/src/interactive/status/state-machine.ts +16 -3
  691. package/src/interactive/status/types.ts +2 -0
  692. package/src/interactive/status/verbs.ts +1 -1
  693. package/src/interactive/terminal-lease.ts +26 -22
  694. package/src/interactive/theme/components.ts +1 -1
  695. package/src/interactive/theme/rules.ts +1 -1
  696. package/src/interactive/theme/tokens.ts +16 -10
  697. package/src/interactive/transcript-detail.ts +4 -0
  698. package/src/interactive/turn-context.ts +56 -20
  699. package/src/interactive/turn-middleware.ts +57 -9
  700. package/src/interactive/turn-prewarm.ts +121 -18
  701. package/src/interactive/turn-recovery.ts +10 -8
  702. package/src/interactive/turn-runtime.ts +74 -29
  703. package/src/interactive/turn-state.ts +3 -0
  704. package/src/interactive/welcome-art.ts +36 -0
  705. package/src/interactive/welcome-dashboard.ts +209 -49
  706. package/src/interactive/worker-replay.ts +4 -0
  707. package/src/interactive/worker-stream.ts +17 -2
  708. package/src/tools/agent-tools.ts +22 -1
  709. package/src/tools/builtin-tool-catalog.ts +2 -2
  710. package/src/tools/codewiki/code-nav.ts +1 -1
  711. package/src/tools/codewiki/shared.ts +39 -1
  712. package/src/tools/compete-worktrees.ts +8 -91
  713. package/src/tools/context/docs-engine.ts +44 -12
  714. package/src/tools/context/index.ts +126 -22
  715. package/src/tools/context/library.ts +1 -1
  716. package/src/tools/context/surface.ts +12 -7
  717. package/src/tools/core-bootstrap.ts +3 -0
  718. package/src/tools/dispatch-runner.ts +18 -0
  719. package/src/tools/dispatch-schema.ts +187 -206
  720. package/src/tools/edit.ts +46 -42
  721. package/src/tools/file-mutation-queue.ts +25 -26
  722. package/src/tools/gateway/clio-context-surface.ts +1 -1
  723. package/src/tools/gateway/index.ts +7 -3
  724. package/src/tools/gateway/mcp-capabilities.ts +5 -3
  725. package/src/tools/grep.ts +14 -2
  726. package/src/tools/ls.ts +1 -4
  727. package/src/tools/monitor.ts +14 -1
  728. package/src/tools/observation.ts +1 -3
  729. package/src/tools/path-utils.ts +51 -18
  730. package/src/tools/process-lease.ts +99 -0
  731. package/src/tools/read.ts +1 -1
  732. package/src/tools/registry.ts +71 -9
  733. package/src/tools/task-worktree.ts +296 -17
  734. package/src/tools/tasks.ts +29 -7
  735. package/src/tools/worker-evidence.ts +60 -1
  736. package/src/tools/worktree-root.ts +252 -0
  737. package/src/tools/write.ts +34 -30
  738. package/src/worker/entry.ts +18 -1
  739. package/src/worker/protocol.ts +54 -1
  740. package/src/worker/spec-contract.ts +22 -2
  741. package/dist/acp-ZWZCPS2A.js +0 -130
  742. package/dist/agents-LYSOWZUE.js +0 -150
  743. package/dist/auth-WBQGKWQ5.js +0 -551
  744. package/dist/background-BUMOBAQN.js +0 -37
  745. package/dist/builtins-ODRJOEDI.js +0 -22
  746. package/dist/chunk-2DRRZ57Q.js +0 -571
  747. package/dist/chunk-2JBZYUPY.js +0 -105
  748. package/dist/chunk-2VBWFXYE.js +0 -198
  749. package/dist/chunk-2X2R3UTH.js +0 -1018
  750. package/dist/chunk-32KJPXAM.js +0 -75
  751. package/dist/chunk-37LW32LZ.js +0 -32
  752. package/dist/chunk-3A3CUMKA.js +0 -54
  753. package/dist/chunk-3AND2EFU.js +0 -215
  754. package/dist/chunk-3RDHGNU7.js +0 -647
  755. package/dist/chunk-3SUDBGEI.js +0 -1323
  756. package/dist/chunk-3TQN67I2.js +0 -396
  757. package/dist/chunk-3U4BL2EV.js +0 -103
  758. package/dist/chunk-3UQADNG2.js +0 -302
  759. package/dist/chunk-434LRQ6Z.js +0 -13441
  760. package/dist/chunk-4ATBOFRP.js +0 -7802
  761. package/dist/chunk-4DNL43EZ.js +0 -139
  762. package/dist/chunk-4HFJKRGZ.js +0 -5250
  763. package/dist/chunk-555E2WVV.js +0 -322
  764. package/dist/chunk-5GZICIYO.js +0 -462
  765. package/dist/chunk-5PHVPU4G.js +0 -160
  766. package/dist/chunk-5RTEFNBP.js +0 -197
  767. package/dist/chunk-64XJW7NT.js +0 -380
  768. package/dist/chunk-6TKOFFGE.js +0 -1058
  769. package/dist/chunk-6UJ7RDI7.js +0 -1143
  770. package/dist/chunk-7FBCRWVT.js +0 -1801
  771. package/dist/chunk-7JSOSVLP.js +0 -283
  772. package/dist/chunk-7N3OLLSL.js +0 -637
  773. package/dist/chunk-7QQRPB2E.js +0 -915
  774. package/dist/chunk-A6DULIMH.js +0 -986
  775. package/dist/chunk-AB3QXXBC.js +0 -123
  776. package/dist/chunk-ACCECAH4.js +0 -49
  777. package/dist/chunk-AM6CEP2K.js +0 -2120
  778. package/dist/chunk-AUHVBIDW.js +0 -19
  779. package/dist/chunk-AY4XE6GN.js +0 -665
  780. package/dist/chunk-BBA2TAWV.js +0 -667
  781. package/dist/chunk-BFPHMSK7.js +0 -169
  782. package/dist/chunk-BMNVVKEW.js +0 -604
  783. package/dist/chunk-CKK25WN3.js +0 -72
  784. package/dist/chunk-CTGZCEI6.js +0 -33
  785. package/dist/chunk-DIAJYJYG.js +0 -446
  786. package/dist/chunk-DVNAPPXU.js +0 -27
  787. package/dist/chunk-DXVMLM3Z.js +0 -92
  788. package/dist/chunk-E3LEPLQ2.js +0 -68
  789. package/dist/chunk-EHZRAB4U.js +0 -63
  790. package/dist/chunk-EM2DIQAJ.js +0 -179
  791. package/dist/chunk-EM2WNQS2.js +0 -93
  792. package/dist/chunk-ETF4ROKH.js +0 -595
  793. package/dist/chunk-F2YM3JY4.js +0 -22513
  794. package/dist/chunk-FEBQWHJT.js +0 -1023
  795. package/dist/chunk-FPS4R2RN.js +0 -1975
  796. package/dist/chunk-GD55RTIW.js +0 -33
  797. package/dist/chunk-GJDRMBDI.js +0 -573
  798. package/dist/chunk-GREYLTZ5.js +0 -658
  799. package/dist/chunk-H2WSCZZT.js +0 -238
  800. package/dist/chunk-H6IUCY6Q.js +0 -117
  801. package/dist/chunk-H72DCH3E.js +0 -563
  802. package/dist/chunk-H7TXJR23.js +0 -705
  803. package/dist/chunk-HBJQQTKM.js +0 -40
  804. package/dist/chunk-HCVKSGNZ.js +0 -990
  805. package/dist/chunk-HVCAY2FH.js +0 -67
  806. package/dist/chunk-I47EJPYL.js +0 -1377
  807. package/dist/chunk-IALGWTLO.js +0 -36
  808. package/dist/chunk-IALZJE37.js +0 -1710
  809. package/dist/chunk-IC7JXLOM.js +0 -1577
  810. package/dist/chunk-IOSVTTCD.js +0 -108
  811. package/dist/chunk-IPTPMLA6.js +0 -475
  812. package/dist/chunk-IZZI3SKQ.js +0 -128
  813. package/dist/chunk-JABWPKFY.js +0 -27
  814. package/dist/chunk-JIYWMQZ5.js +0 -175
  815. package/dist/chunk-JKU34ACI.js +0 -693
  816. package/dist/chunk-JOBN2YQQ.js +0 -176
  817. package/dist/chunk-JOL2QRLE.js +0 -152
  818. package/dist/chunk-JTR3VSV3.js +0 -44
  819. package/dist/chunk-JU6MAMRJ.js +0 -362
  820. package/dist/chunk-JURMQWVJ.js +0 -15
  821. package/dist/chunk-K2BLQC5E.js +0 -262
  822. package/dist/chunk-K3XN4LZ4.js +0 -402
  823. package/dist/chunk-KIVFXGBM.js +0 -688
  824. package/dist/chunk-KKRXONXG.js +0 -43
  825. package/dist/chunk-KOAHT3N2.js +0 -395
  826. package/dist/chunk-KP5BPXR3.js +0 -73
  827. package/dist/chunk-KQ6IDQIB.js +0 -39
  828. package/dist/chunk-KRJQG47M.js +0 -1289
  829. package/dist/chunk-KW6OJ7IY.js +0 -221
  830. package/dist/chunk-L3NBWLSN.js +0 -314
  831. package/dist/chunk-L4RUTLRL.js +0 -59
  832. package/dist/chunk-LGTVWPRN.js +0 -47
  833. package/dist/chunk-LSQW6KZO.js +0 -200
  834. package/dist/chunk-LTR5QCLS.js +0 -446
  835. package/dist/chunk-LWJYOHT3.js +0 -165
  836. package/dist/chunk-M6YLF66Z.js +0 -2687
  837. package/dist/chunk-MJ4QEJVT.js +0 -185
  838. package/dist/chunk-MO65K5CH.js +0 -1148
  839. package/dist/chunk-MTOZEQHL.js +0 -637
  840. package/dist/chunk-MZDPF35R.js +0 -45
  841. package/dist/chunk-MZKYVIWW.js +0 -188
  842. package/dist/chunk-NBPA5QM6.js +0 -386
  843. package/dist/chunk-NMBEW4PP.js +0 -688
  844. package/dist/chunk-NPLLK3HO.js +0 -3610
  845. package/dist/chunk-NSYGPIVW.js +0 -39
  846. package/dist/chunk-NXTV5OI5.js +0 -1020
  847. package/dist/chunk-NYDG4QP4.js +0 -689
  848. package/dist/chunk-OA2GDACN.js +0 -146
  849. package/dist/chunk-PJI57EC6.js +0 -236
  850. package/dist/chunk-PJJBUGMR.js +0 -4484
  851. package/dist/chunk-PNJE7JPS.js +0 -50
  852. package/dist/chunk-PP23PZEV.js +0 -1347
  853. package/dist/chunk-PPIFDSBK.js +0 -409
  854. package/dist/chunk-PTFISXQO.js +0 -319
  855. package/dist/chunk-QB33Z5S7.js +0 -1865
  856. package/dist/chunk-QGNII5VC.js +0 -110
  857. package/dist/chunk-QH3ZTUOA.js +0 -113
  858. package/dist/chunk-QI72X67S.js +0 -481
  859. package/dist/chunk-QJMRYTCX.js +0 -56
  860. package/dist/chunk-QKHZZFKH.js +0 -98
  861. package/dist/chunk-RDKX2PME.js +0 -66
  862. package/dist/chunk-RL7LJYN4.js +0 -66
  863. package/dist/chunk-RPMNIFRY.js +0 -65
  864. package/dist/chunk-RQROVOV3.js +0 -670
  865. package/dist/chunk-S34A7BSP.js +0 -97
  866. package/dist/chunk-SJETVJHX.js +0 -119
  867. package/dist/chunk-SJMNU4ZS.js +0 -634
  868. package/dist/chunk-SL2RDHKO.js +0 -19
  869. package/dist/chunk-SLLG2G44.js +0 -85
  870. package/dist/chunk-SQAZN2V3.js +0 -2744
  871. package/dist/chunk-SQBT46OF.js +0 -814
  872. package/dist/chunk-SRCEQKQS.js +0 -165
  873. package/dist/chunk-TCUOGIL2.js +0 -52
  874. package/dist/chunk-TIWPKCVO.js +0 -42
  875. package/dist/chunk-U44YYLVV.js +0 -1529
  876. package/dist/chunk-UIU7MGZ3.js +0 -486
  877. package/dist/chunk-USBBEKHW.js +0 -177
  878. package/dist/chunk-VHKTOLEW.js +0 -1416
  879. package/dist/chunk-VPWGADBG.js +0 -3151
  880. package/dist/chunk-VQD7NH7Z.js +0 -356
  881. package/dist/chunk-VWFCAK34.js +0 -697
  882. package/dist/chunk-W5RM7YAH.js +0 -78
  883. package/dist/chunk-W72LLZAV.js +0 -243
  884. package/dist/chunk-WGRDABW7.js +0 -207
  885. package/dist/chunk-WWRV5RJI.js +0 -165
  886. package/dist/chunk-XCUDZQLX.js +0 -195
  887. package/dist/chunk-XFLSL7BT.js +0 -386
  888. package/dist/chunk-XJZEDCNT.js +0 -391
  889. package/dist/chunk-XLLEL3K7.js +0 -709
  890. package/dist/chunk-XNZWWDC3.js +0 -686
  891. package/dist/chunk-XRECG65F.js +0 -308
  892. package/dist/chunk-XTQ7MEJG.js +0 -457
  893. package/dist/chunk-XW2UZICE.js +0 -372
  894. package/dist/chunk-Y3M2T5RO.js +0 -891
  895. package/dist/chunk-YGDMBK7O.js +0 -567
  896. package/dist/chunk-YJCCMYYT.js +0 -125
  897. package/dist/chunk-YPQOPFP7.js +0 -797
  898. package/dist/chunk-YQYINEJI.js +0 -132
  899. package/dist/chunk-ZF6CV4WZ.js +0 -5614
  900. package/dist/chunk-ZKJU55MX.js +0 -326
  901. package/dist/chunk-ZKQ63XZ5.js +0 -1196
  902. package/dist/chunk-ZKVMDNAN.js +0 -962
  903. package/dist/chunk-ZST3FRCV.js +0 -132
  904. package/dist/clio-JUDCLNHC.js +0 -26
  905. package/dist/clio-context-tools-FT672MNZ.js +0 -136
  906. package/dist/code-nav-7OVCTP2Z.js +0 -688
  907. package/dist/compile-cache-WJEPUZEJ.js +0 -16
  908. package/dist/components-OZXZMDWU.js +0 -674
  909. package/dist/config-P3ZQVF63.js +0 -275
  910. package/dist/config-graph-GKAOBAS5.js +0 -160
  911. package/dist/configure-25LRYZJG.js +0 -86
  912. package/dist/context-72VQV7JX.js +0 -73
  913. package/dist/context-COWRWXP3.js +0 -286
  914. package/dist/context-WB3D474G.js +0 -344
  915. package/dist/context-clear-Y4LYMWC6.js +0 -192
  916. package/dist/context-index-W6A4V7OC.js +0 -120
  917. package/dist/context-map-DKL3QT6D.js +0 -555
  918. package/dist/context-working-set-TMZYVC7A.js +0 -1560
  919. package/dist/data-tool-KMBWKKWR.js +0 -2987
  920. package/dist/detail-4GLROGY5.js +0 -123
  921. package/dist/dispatch-runner-TR3LBP5P.js +0 -2446
  922. package/dist/docs-ZK777W2G.js +0 -101
  923. package/dist/doctor-WC4OV2OB.js +0 -814
  924. package/dist/eval-FUNWJNUJ.js +0 -5050
  925. package/dist/eval-inventory-CX24K2JT.js +0 -260
  926. package/dist/evals-L73EBHSU.js +0 -104
  927. package/dist/evidence-AVJ2RTHX.js +0 -392
  928. package/dist/evidence-P4NZOAK7.js +0 -233
  929. package/dist/evidence-Y55WKYHH.js +0 -246
  930. package/dist/evolve-MAWKRYWF.js +0 -617
  931. package/dist/extensions-PYQH3H47.js +0 -308
  932. package/dist/fleet-M4H2QBWT.js +0 -268
  933. package/dist/fleet-ULBXXRDR.js +0 -923
  934. package/dist/fleet-commands-7NNC4JZU.js +0 -76
  935. package/dist/fleet-decisions-EHEY7KPU.js +0 -52
  936. package/dist/fleet-graph-LQ2AHZT3.js +0 -136
  937. package/dist/fleet-inspect-5IGBIIYZ.js +0 -312
  938. package/dist/fleet-new-RCKGSRDV.js +0 -48
  939. package/dist/fleet-preflight-UTTNOKMG.js +0 -27
  940. package/dist/fleet-validate-YGILJKA6.js +0 -91
  941. package/dist/fleet-verify-AUWTCDKR.js +0 -210
  942. package/dist/fleet-view-TGUFCY5A.js +0 -127
  943. package/dist/init-GFN2Z7NF.js +0 -333
  944. package/dist/install-3RZDDP23.js +0 -13
  945. package/dist/install-6PIF6F6W.js +0 -19
  946. package/dist/interop-EF5JUWWK.js +0 -246
  947. package/dist/inventory-I6VJDDYF.js +0 -127
  948. package/dist/library-3J5IO2OJ.js +0 -75
  949. package/dist/library-IJTOFTDS.js +0 -307
  950. package/dist/library-Z3KZSHPE.js +0 -492
  951. package/dist/library-import-IMKFLDHX.js +0 -183
  952. package/dist/library-inventory-CQP5D6GU.js +0 -56
  953. package/dist/library-validation-33UTX7AI.js +0 -42
  954. package/dist/mcp-5FWZKUS6.js +0 -26
  955. package/dist/memory-36CWN67Y.js +0 -520
  956. package/dist/models-KQ6PQJJQ.js +0 -302
  957. package/dist/monitor-XX6ZD6KC.js +0 -785
  958. package/dist/orchestrator-SK6HDAOP.js +0 -42067
  959. package/dist/panes-L27QRXUH.js +0 -74
  960. package/dist/panes-LXZIWNOZ.js +0 -103
  961. package/dist/paths-7DJDU4P4.js +0 -67
  962. package/dist/preload-K2TDYI4Y.js +0 -124
  963. package/dist/registry-DESGAXWK.js +0 -11
  964. package/dist/reset-73VU3XNT.js +0 -345
  965. package/dist/resources-3BYJYVYL.js +0 -181
  966. package/dist/run-AR7PY6GW.js +0 -896
  967. package/dist/run-script-H2KUDIII.js +0 -41
  968. package/dist/settings-3VMBMWID.js +0 -72
  969. package/dist/share-HVWH4FPF.js +0 -293
  970. package/dist/skills-5TYEY75Q.js +0 -100
  971. package/dist/skills-eval-CK3MD63Z.js +0 -1083
  972. package/dist/skills-inventory-KSFYG3I6.js +0 -138
  973. package/dist/slash-commands-DMVHML7P.js +0 -98
  974. package/dist/steer-XCD6V3EW.js +0 -77
  975. package/dist/support-JAZL6VBR.js +0 -38
  976. package/dist/system-3TDQRMZZ.js +0 -116
  977. package/dist/targets-EZKHAYRN.js +0 -1117
  978. package/dist/tasks-SNEFHWYW.js +0 -36
  979. package/dist/terminal-lease-BNLFA4OF.js +0 -419
  980. package/dist/tools-7IM6BDCE.js +0 -28
  981. package/dist/trace-C3MBGD4S.js +0 -524
  982. package/dist/tree-sitter-AQUUOSYM.js +0 -4673
  983. package/dist/tui-primitives-36BY2774.js +0 -18
  984. package/dist/uninstall-WWLOSZ42.js +0 -432
  985. package/dist/upgrade-ETK2JNSJ.js +0 -297
  986. package/dist/usage-S2HOB7BZ.js +0 -1065
  987. package/dist/verifiers-QDTEVH7R.js +0 -632
  988. package/dist/verify-SUKUK6XM.js +0 -31
  989. package/dist/version-RFPKO6T7.js +0 -21
  990. package/dist/web/client/assets/abnfDiagram-VCTEODGH-BznNOe_I.js +0 -1
  991. package/dist/web/client/assets/architecture-7GRP2DOG-BQO9DL_y.js +0 -1
  992. package/dist/web/client/assets/architectureDiagram-5GKGNRK7-CKPbdvyx.js +0 -36
  993. package/dist/web/client/assets/blockDiagram-I7D4REHJ-prINbpbM.js +0 -129
  994. package/dist/web/client/assets/c4Diagram-7LVT6UL2-DkVRKtyU.js +0 -38
  995. package/dist/web/client/assets/channel-c4EeUUqA.js +0 -1
  996. package/dist/web/client/assets/chunk-4HAMMTFA-CV0Z1ApC.js +0 -62
  997. package/dist/web/client/assets/chunk-75Z2AOVW-D34Nohxq.js +0 -2
  998. package/dist/web/client/assets/chunk-DU6HZSFF-Das_cS-O.js +0 -125
  999. package/dist/web/client/assets/chunk-F27PBJKO-CmRojxkG.js +0 -1
  1000. package/dist/web/client/assets/chunk-GMAD6QVW-ClYZmc73.js +0 -72
  1001. package/dist/web/client/assets/chunk-GVQU2GXP-B2BiHFt-.js +0 -1
  1002. package/dist/web/client/assets/chunk-IMKFNOWR-BGApZ8nP.js +0 -231
  1003. package/dist/web/client/assets/chunk-L3NEJ4N5-DIzCgpkY.js +0 -1
  1004. package/dist/web/client/assets/chunk-OSK3NFVY-BPT-yePv.js +0 -10
  1005. package/dist/web/client/assets/chunk-P2QGCYS3-BC1WTc2t.js +0 -1
  1006. package/dist/web/client/assets/chunk-POPQ4Y6H-BSjzBmZU.js +0 -1
  1007. package/dist/web/client/assets/chunk-PWAF6VOD-BIjLs86Z.js +0 -1
  1008. package/dist/web/client/assets/chunk-SHT3W25Y-CduDz2cm.js +0 -168
  1009. package/dist/web/client/assets/chunk-SVP7TREG-XUn4pPAP.js +0 -88
  1010. package/dist/web/client/assets/chunk-TICWLB2K-DcBy2DKy.js +0 -206
  1011. package/dist/web/client/assets/classDiagram-ZZMXUADV-C0HR7YKN.js +0 -1
  1012. package/dist/web/client/assets/classDiagram-v2-VYDZK3BY-C0HR7YKN.js +0 -1
  1013. package/dist/web/client/assets/cynefin-OW5HDTMX-BecPbyM6.js +0 -1
  1014. package/dist/web/client/assets/cynefinDiagram-5FMLGOSQ-BzMzFwyT.js +0 -62
  1015. package/dist/web/client/assets/dagre-GXQ25YYZ-CAWJmRMG.js +0 -4
  1016. package/dist/web/client/assets/diagram-S7CK7UJ4--lp0ALmn.js +0 -30
  1017. package/dist/web/client/assets/diagram-UQ7AKVKN-gKUnsjcj.js +0 -41
  1018. package/dist/web/client/assets/diagram-VSXAHHWV-BoN5D1Gh.js +0 -3
  1019. package/dist/web/client/assets/diagram-VX7I27RA-BMtuswQ6.js +0 -24
  1020. package/dist/web/client/assets/diagram-Z3DM3KII-DtU8LXrA.js +0 -24
  1021. package/dist/web/client/assets/ebnfDiagram-PWID7BFC-DDcnv9BH.js +0 -1
  1022. package/dist/web/client/assets/erDiagram-RLTQ6QDP-DvRb4iDL.js +0 -99
  1023. package/dist/web/client/assets/eventmodeling-NTZA5JFV-01h4SbTc.js +0 -1
  1024. package/dist/web/client/assets/flowDiagram-HODETNUW-Bll_YZ6T.js +0 -1
  1025. package/dist/web/client/assets/framework-YGoR34M4.js +0 -9
  1026. package/dist/web/client/assets/ganttDiagram-EL5Y4UJY-DdFZ9hvH.js +0 -292
  1027. package/dist/web/client/assets/gitGraph-4MIJSDKK-DjD_AAMj.js +0 -1
  1028. package/dist/web/client/assets/gitGraphDiagram-WWUBYQGX-CDyN9n2u.js +0 -106
  1029. package/dist/web/client/assets/index-CVcy0FAn.js +0 -75
  1030. package/dist/web/client/assets/index-Dsi52apB.css +0 -1
  1031. package/dist/web/client/assets/info-A6RAGUB7-C_XK8Hq0.js +0 -1
  1032. package/dist/web/client/assets/infoDiagram-27XIBGKW-DIe4tJ1i.js +0 -2
  1033. package/dist/web/client/assets/ishikawaDiagram-5VMMS53U-CVl5unKI.js +0 -70
  1034. package/dist/web/client/assets/journeyDiagram-3NMN7TZE-CPEB1Vt8.js +0 -139
  1035. package/dist/web/client/assets/kanban-definition-UXKFOSKX-j-9WXjYQ.js +0 -89
  1036. package/dist/web/client/assets/line-BIDAcEtX.js +0 -1
  1037. package/dist/web/client/assets/mermaid-parser.core-Ux4vssh0.js +0 -7
  1038. package/dist/web/client/assets/mermaid.core-CDuwVKeh.js +0 -44
  1039. package/dist/web/client/assets/mindmap-definition-YA3MSWOX-5MlQEeQ6.js +0 -96
  1040. package/dist/web/client/assets/packet-AYTQ26CC-DRO66c9Q.js +0 -1
  1041. package/dist/web/client/assets/pegDiagram-XKGWAZYB-BakZnSjM.js +0 -1
  1042. package/dist/web/client/assets/pie-WAS4IAKB-BEzcmhz8.js +0 -1
  1043. package/dist/web/client/assets/pieDiagram-E7YTZNPT-DpmqgoPt.js +0 -39
  1044. package/dist/web/client/assets/quadrantDiagram-AXDQQJYC-DuMPwwV2.js +0 -7
  1045. package/dist/web/client/assets/radar-RG4KPBEZ-Djm3oXl5.js +0 -1
  1046. package/dist/web/client/assets/railroad-74A4TZTK-Cpvkwsao.js +0 -1
  1047. package/dist/web/client/assets/railroad-abnf-HS5TGJTU-CpRQ3ruG.js +0 -1
  1048. package/dist/web/client/assets/railroad-ebnf-LZEXJU2U-1Rm5a5eJ.js +0 -1
  1049. package/dist/web/client/assets/railroad-peg-WCYAUIDC-C8344cTh.js +0 -1
  1050. package/dist/web/client/assets/railroadDiagram-O6MQD6OU-CgMS4B6R.js +0 -1
  1051. package/dist/web/client/assets/requirementDiagram-BXWQKSXE-CX5eoNdN.js +0 -84
  1052. package/dist/web/client/assets/sankeyDiagram-P5KCCOFB-CODBX2N3.js +0 -40
  1053. package/dist/web/client/assets/sequenceDiagram-WJ2MYXX4-eUhhF8OR.js +0 -162
  1054. package/dist/web/client/assets/stateDiagram-D77RDMKH-vR6l0NC2.js +0 -1
  1055. package/dist/web/client/assets/stateDiagram-v2-MP3YSRHH-BYUm8jLY.js +0 -1
  1056. package/dist/web/client/assets/swimlanes-42K2YHIH-v9Tw_zX7.js +0 -1
  1057. package/dist/web/client/assets/swimlanesDiagram-VR7AAH4N-B2jdCvhD.js +0 -8
  1058. package/dist/web/client/assets/timeline-definition-24CTP7MA-DxianbhU.js +0 -120
  1059. package/dist/web/client/assets/treeView-Q6P3EWNA-DLxnZb9R.js +0 -1
  1060. package/dist/web/client/assets/treemap-WGGIJYW6-I7UnZ6xJ.js +0 -1
  1061. package/dist/web/client/assets/vennDiagram-4TSXK5OY-Ar7M8Mrj.js +0 -34
  1062. package/dist/web/client/assets/wardley-WFR3VGLG-B8ZSHeDu.js +0 -1
  1063. package/dist/web/client/assets/wardleyDiagram-VM6X3IG4-Qks2FmIn.js +0 -78
  1064. package/dist/web/client/assets/xychartDiagram-S5SC5T6Z-BBBjRtiE.js +0 -7
  1065. package/dist/web/client/index.html +0 -6
  1066. package/dist/web/ops-worker.js +0 -37
  1067. package/dist/web/reads-worker.js +0 -1726
  1068. package/dist/web/server.js +0 -8499
  1069. package/dist/web-EMGUGGEI.js +0 -13
  1070. package/dist/web-fetch-6BRRVQON.js +0 -805
  1071. package/dist/wiki-generate-XHSJTDOP.js +0 -627
  1072. package/dist/with-panes-Z6BTEHMZ.js +0 -628
  1073. package/evals/README.md +0 -9
  1074. package/evals/behavioral-corpus-grader.mjs +0 -236
  1075. package/evals/behavioral-machinery-baseline.json +0 -2276
  1076. package/evals/behavioral-machinery-driver.ts +0 -250
  1077. package/evals/behavioral-machinery-support.ts +0 -254
  1078. package/evals/behavioral-machinery.yaml +0 -614
  1079. package/evals/behavioral-model-negative-control.yaml +0 -69
  1080. package/evals/behavioral-model.yaml +0 -482
  1081. package/evals/fixtures/behavioral-facts.txt +0 -3
  1082. package/evals/fixtures/behavioral-main.ts +0 -7
  1083. package/evals/fixtures/decoy/note.txt +0 -2
  1084. package/evals/fixtures/docs-retrieval.json +0 -102
  1085. package/evals/fixtures/private/credentials.txt +0 -1
  1086. package/evals/fixtures/scalar-decision.json +0 -17
  1087. package/evals/fixtures/scout-citation-pipeline.json +0 -55
  1088. package/evals/fixtures/source-explanation.json +0 -74
  1089. package/evals/fixtures/tool-arguments.json +0 -18
  1090. package/evals/fixtures/tool-surface/read.txt +0 -4
  1091. package/evals/fixtures/tool-surface/subdir/keep.txt +0 -1
  1092. package/evals/no-edit-memory-grader.mjs +0 -149
  1093. package/evals/scalar-decision-grader.py +0 -41
  1094. package/evals/scalar-decision-machinery.ts +0 -145
  1095. package/evals/source-explanation-grader.mjs +0 -118
  1096. package/evals/tool-surface-grader.mjs +0 -53
  1097. package/evals/tool-surface-model.yaml +0 -274
  1098. package/evals/tracked-metrics-baseline.yaml +0 -229
  1099. package/evals/tracked-metrics-grader.mjs +0 -129
  1100. package/src/cli/web.ts +0 -79
  1101. package/src/domains/providers/runtimes/local-native/ollama-native.ts +0 -122
  1102. /package/dist/assets/{web-notices → gui-notices}/@hono__node-server-LICENSE +0 -0
  1103. /package/dist/assets/{web-notices → gui-notices}/hono-LICENSE +0 -0
  1104. /package/dist/{web → gui}/client/THIRD_PARTY_LICENSES.md +0 -0
  1105. /package/dist/{web → gui}/client/assets/arc-Pry-7G1_.js +0 -0
  1106. /package/dist/{web → gui}/client/assets/array-BifhSqXX.js +0 -0
  1107. /package/dist/{web → gui}/client/assets/atkinson-hyperlegible-next-latin-ext-wght-normal-C6vrW8VD.woff2 +0 -0
  1108. /package/dist/{web → gui}/client/assets/atkinson-hyperlegible-next-latin-wght-normal-BcXVPD7q.woff2 +0 -0
  1109. /package/dist/{web → gui}/client/assets/chunk-2Q5K7J3B-C1jixKkw.js +0 -0
  1110. /package/dist/{web → gui}/client/assets/chunk-5VM5RSS4-ZNzvKenW.js +0 -0
  1111. /package/dist/{web → gui}/client/assets/chunk-FOHPRMQF-CoA4358r.js +0 -0
  1112. /package/dist/{web → gui}/client/assets/chunk-JWPE2WC7-DVXcaiue.js +0 -0
  1113. /package/dist/{web → gui}/client/assets/chunk-XXDRQBXY-DqAYeljN.js +0 -0
  1114. /package/dist/{web → gui}/client/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +0 -0
  1115. /package/dist/{web → gui}/client/assets/commit-mono-latin-400-normal-s0S3qwFW.woff +0 -0
  1116. /package/dist/{web → gui}/client/assets/commit-mono-latin-400-normal-wzhe4RuD.woff2 +0 -0
  1117. /package/dist/{web → gui}/client/assets/cose-bilkent-JH36ORCC-CVh1icwb.js +0 -0
  1118. /package/dist/{web → gui}/client/assets/cytoscape.esm-c2aL46s-.js +0 -0
  1119. /package/dist/{web → gui}/client/assets/dagre-C-rnJpZF.js +0 -0
  1120. /package/dist/{web → gui}/client/assets/defaultLocale-BFoDCU3G.js +0 -0
  1121. /package/dist/{web → gui}/client/assets/dist-v5Q1xZ2K.js +0 -0
  1122. /package/dist/{web → gui}/client/assets/graphlib-DS17s2tU.js +0 -0
  1123. /package/dist/{web → gui}/client/assets/init-C-OQMol4.js +0 -0
  1124. /package/dist/{web → gui}/client/assets/katex-ZlcWpGUi.js +0 -0
  1125. /package/dist/{web → gui}/client/assets/linear-SzVmGSw4.js +0 -0
  1126. /package/dist/{web → gui}/client/assets/newsreader-latin-ext-wght-normal-C-3rgBeH.woff2 +0 -0
  1127. /package/dist/{web → gui}/client/assets/newsreader-latin-wght-normal-CCVVNp6i.woff2 +0 -0
  1128. /package/dist/{web → gui}/client/assets/newsreader-vietnamese-wght-normal-Czsa-EzN.woff2 +0 -0
  1129. /package/dist/{web → gui}/client/assets/ordinal-BDEzSJ7C.js +0 -0
  1130. /package/dist/{web → gui}/client/assets/path-fybaL0A-.js +0 -0
  1131. /package/dist/{web → gui}/client/assets/prism-bash-D6zCJ74D.js +0 -0
  1132. /package/dist/{web → gui}/client/assets/prism-c-04YixN25.js +0 -0
  1133. /package/dist/{web → gui}/client/assets/prism-clike-DapgWyxx.js +0 -0
  1134. /package/dist/{web → gui}/client/assets/prism-core-BtsZdCS6.js +0 -0
  1135. /package/dist/{web → gui}/client/assets/prism-cpp-C-lJbC-6.js +0 -0
  1136. /package/dist/{web → gui}/client/assets/prism-css-CPgOzxXp.js +0 -0
  1137. /package/dist/{web → gui}/client/assets/prism-diff-BF8m0_mq.js +0 -0
  1138. /package/dist/{web → gui}/client/assets/prism-docker-DkT6yOFj.js +0 -0
  1139. /package/dist/{web → gui}/client/assets/prism-fortran-Be5x3y1V.js +0 -0
  1140. /package/dist/{web → gui}/client/assets/prism-go-C_8qAH5n.js +0 -0
  1141. /package/dist/{web → gui}/client/assets/prism-ini-BESK3y0r.js +0 -0
  1142. /package/dist/{web → gui}/client/assets/prism-javascript-BnO-swvr.js +0 -0
  1143. /package/dist/{web → gui}/client/assets/prism-json-Dp_-W-Hv.js +0 -0
  1144. /package/dist/{web → gui}/client/assets/prism-jsx-D-D0NWtC.js +0 -0
  1145. /package/dist/{web → gui}/client/assets/prism-julia-DIjOgiAV.js +0 -0
  1146. /package/dist/{web → gui}/client/assets/prism-latex-DNMbqcH_.js +0 -0
  1147. /package/dist/{web → gui}/client/assets/prism-makefile-CRKWLQ8l.js +0 -0
  1148. /package/dist/{web → gui}/client/assets/prism-markdown-C0FPJ1Iz.js +0 -0
  1149. /package/dist/{web → gui}/client/assets/prism-markup-Cp04rIa1.js +0 -0
  1150. /package/dist/{web → gui}/client/assets/prism-matlab-D-nk08al.js +0 -0
  1151. /package/dist/{web → gui}/client/assets/prism-python-CfiSVtM6.js +0 -0
  1152. /package/dist/{web → gui}/client/assets/prism-r-QmNGR8LX.js +0 -0
  1153. /package/dist/{web → gui}/client/assets/prism-rust-Bu9N8X3N.js +0 -0
  1154. /package/dist/{web → gui}/client/assets/prism-shell-session-Be4UuYoM.js +0 -0
  1155. /package/dist/{web → gui}/client/assets/prism-sql-CYhVDMEE.js +0 -0
  1156. /package/dist/{web → gui}/client/assets/prism-toml-DKb54GAT.js +0 -0
  1157. /package/dist/{web → gui}/client/assets/prism-tsx-p6J2Kc_4.js +0 -0
  1158. /package/dist/{web → gui}/client/assets/prism-typescript-BMqONzxf.js +0 -0
  1159. /package/dist/{web → gui}/client/assets/prism-yaml-C0JHu8gr.js +0 -0
  1160. /package/dist/{web → gui}/client/assets/purify.es-ChwZkWde.js +0 -0
  1161. /package/dist/{web → gui}/client/assets/rolldown-runtime-hePW80VL.js +0 -0
  1162. /package/dist/{web → gui}/client/assets/rough.esm-Dy-Kn_BL.js +0 -0
  1163. /package/dist/{web → gui}/client/assets/sizeCapture-INFHLROL-B0uUizjq.js +0 -0
  1164. /package/dist/{web → gui}/client/assets/src-B6xuSHsQ.js +0 -0
  1165. /package/dist/{web → gui}/client/clio-coder-logo.webp +0 -0
  1166. /package/dist/{web → gui}/client/icon-192.png +0 -0
  1167. /package/dist/{web → gui}/client/icon-512.png +0 -0
  1168. /package/dist/{web → gui}/client/manifest.webmanifest +0 -0
  1169. /package/dist/{web → gui}/client/offline.css +0 -0
  1170. /package/dist/{web → gui}/client/offline.html +0 -0
  1171. /package/dist/{web → gui}/client/offline.js +0 -0
  1172. /package/dist/{web → gui}/client/sw.js +0 -0
@@ -1,86 +1,90 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
3
3
  import {
4
- assertRegisteredBuiltinTools,
5
4
  createEngineAgent,
6
5
  createLoopGuardRegistration,
7
6
  createProtectedArtifactsRegistration,
8
- effectiveToolNames,
9
7
  isLockedSynthesisFallbackOnly,
10
8
  isLoopGuardSynthesisBackstopReason,
11
9
  isReserveAdmittedTool,
12
10
  lockedSynthesisFallbackText,
13
11
  lockedSynthesisRepromptMessages,
12
+ lockedSynthesisSystemPrompt,
14
13
  patchWorkerRequestPayload,
15
- registerCoreTools,
16
- registerHarnessExtensionTools,
17
- resolveAgentTools,
18
14
  resolveDeliveryTools,
19
15
  sanitizeLockedSynthesisMessage,
16
+ supportsNamedToolChoice,
20
17
  workerLoopBlockBudget
21
- } from "../chunk-ZF6CV4WZ.js";
22
- import {
23
- createMiddlewareContractFromSnapshot,
24
- createMiddlewareToolChoiceControl,
25
- shouldRequestStalledTurnContinuation
26
- } from "../chunk-VPWGADBG.js";
18
+ } from "../chunk-GRHOXDKB.js";
27
19
  import {
28
20
  readLayeredSettings
29
- } from "../chunk-W72LLZAV.js";
30
- import "../chunk-ACCECAH4.js";
31
- import "../chunk-HBJQQTKM.js";
32
- import "../chunk-JABWPKFY.js";
33
- import "../chunk-HCVKSGNZ.js";
34
- import "../chunk-PNJE7JPS.js";
35
- import "../chunk-L4RUTLRL.js";
36
- import "../chunk-PPIFDSBK.js";
37
- import "../chunk-TCUOGIL2.js";
38
- import "../chunk-PP23PZEV.js";
39
- import "../chunk-3A3CUMKA.js";
40
- import "../chunk-XCUDZQLX.js";
41
- import "../chunk-K2BLQC5E.js";
21
+ } from "../chunk-ZNUZ3EXD.js";
42
22
  import {
43
23
  DEFAULT_ESCALATION_FALLBACK,
44
24
  DEFAULT_ESCALATION_TIMEOUT_MS,
45
25
  WORKER_EXIT_PERMISSION_REQUIRED,
46
26
  claudeToolsOutsideProfile,
47
27
  coerceToolInput,
48
- createRegistry,
49
28
  createRunEffectsRecorder,
50
29
  emitClaudeToolPermissionDecision,
51
30
  isClaudeCodeSessionId,
52
31
  nodeResultContractFilesystem,
53
32
  parseWorkerSpec,
54
- runtimeSpeaksResponseSchemaDialect,
55
33
  startAntigravityWorkerRun,
56
34
  startClaudeCodeWorkerRun,
57
35
  validateRehydratedWorkerRuntime
58
- } from "../chunk-4ATBOFRP.js";
36
+ } from "../chunk-R7FGRZNF.js";
37
+ import "../chunk-DOUISWEE.js";
38
+ import "../chunk-VKHLUZNO.js";
39
+ import {
40
+ INTERNAL_HELPER_RESULT_TOOL,
41
+ attestedToolSignature,
42
+ createMiddlewareToolChoiceControl,
43
+ createWorkerSafety,
44
+ createWorkerToolRegistry,
45
+ resolveAgentTools,
46
+ runtimeSpeaksResponseSchemaDialect,
47
+ shouldRequestStalledTurnContinuation
48
+ } from "../chunk-OQ2EOAHA.js";
49
+ import "../chunk-NDPF2N2L.js";
50
+ import "../chunk-7QXCO3AF.js";
59
51
  import {
60
52
  contextHash,
61
53
  messageToolCalls,
62
54
  seededWorkerMessages
63
- } from "../chunk-MO65K5CH.js";
64
- import "../chunk-KOAHT3N2.js";
65
- import {
66
- CONFIRMED_SCOPE,
67
- READONLY_SCOPE,
68
- WORKSPACE_SCOPE,
69
- createLoopState,
70
- isSubset,
71
- observe
72
- } from "../chunk-AY4XE6GN.js";
73
- import "../chunk-555E2WVV.js";
55
+ } from "../chunk-T33IYTZM.js";
74
56
  import "../chunk-OH3YYA3B.js";
75
- import "../chunk-6TKOFFGE.js";
76
- import {
77
- effectiveToolCall
78
- } from "../chunk-2JBZYUPY.js";
57
+ import "../chunk-VESL6DQY.js";
58
+ import "../chunk-FD3IAHQM.js";
79
59
  import {
80
60
  describeCallTarget
81
61
  } from "../chunk-XNIZBOFV.js";
82
62
  import "../chunk-XZWSP67B.js";
83
- import "../chunk-H6IUCY6Q.js";
63
+ import "../chunk-BRCOSE7O.js";
64
+ import "../chunk-55RMDDFM.js";
65
+ import "../chunk-L4N3DWNW.js";
66
+ import "../chunk-TDGYTWM6.js";
67
+ import "../chunk-CTFPFW3H.js";
68
+ import {
69
+ effectiveToolCall
70
+ } from "../chunk-DE2LU267.js";
71
+ import "../chunk-YYLCPDCC.js";
72
+ import "../chunk-EFSEIZE6.js";
73
+ import "../chunk-KBUTSJSR.js";
74
+ import "../chunk-YBUECLAF.js";
75
+ import "../chunk-CRHPCPZP.js";
76
+ import "../chunk-FFYTC2KQ.js";
77
+ import "../chunk-UJD5MPP6.js";
78
+ import "../chunk-DZLR4UEH.js";
79
+ import "../chunk-OPD7GL6F.js";
80
+ import "../chunk-733ZBT5P.js";
81
+ import "../chunk-GHXGMFQ5.js";
82
+ import "../chunk-KECNXMDE.js";
83
+ import "../chunk-WXA2CFJO.js";
84
+ import "../chunk-6CTHLZFB.js";
85
+ import "../chunk-2KUBKL63.js";
86
+ import "../chunk-MYI32N4R.js";
87
+ import "../chunk-X6FLVUM5.js";
84
88
  import {
85
89
  FileKnowledgeBase,
86
90
  applyModelCapabilityPatch,
@@ -91,86 +95,47 @@ import {
91
95
  resolveProviderKnowledgeBaseRoots,
92
96
  resolveReservedOutputTokens,
93
97
  setGlobalDefaultMaxOutputTokens,
98
+ setModelLoadReportSink,
94
99
  setProtectedModelsProvider,
95
100
  setResidencyNoticeSink
96
- } from "../chunk-4HFJKRGZ.js";
101
+ } from "../chunk-EYTLV3W3.js";
97
102
  import "../chunk-MCJKEGHO.js";
98
- import "../chunk-CTGZCEI6.js";
99
- import "../chunk-RL7LJYN4.js";
103
+ import "../chunk-DVTBERFY.js";
104
+ import "../chunk-6EJYVCTN.js";
105
+ import "../chunk-W53XSRQE.js";
100
106
  import {
101
107
  estimateAgentContextBreakdown,
102
108
  estimateAgentMessageTokens
103
- } from "../chunk-SJMNU4ZS.js";
104
- import "../chunk-W5RM7YAH.js";
105
- import "../chunk-EFSEIZE6.js";
106
- import "../chunk-SL2RDHKO.js";
107
- import "../chunk-YGDMBK7O.js";
108
- import "../chunk-JURMQWVJ.js";
109
- import "../chunk-IZZI3SKQ.js";
110
- import "../chunk-ZKQ63XZ5.js";
111
- import {
112
- createSafetyPolicyEngine
113
- } from "../chunk-IC7JXLOM.js";
114
- import "../chunk-X6FLVUM5.js";
115
- import "../chunk-GHXGMFQ5.js";
116
- import "../chunk-KECNXMDE.js";
117
- import "../chunk-WXA2CFJO.js";
118
- import "../chunk-KP5BPXR3.js";
119
- import {
120
- RESULT_CONTRACT_REPAIR_LIMIT,
121
- parseWorkerResultContract,
122
- resultContractRepairMessages,
123
- validateResultContract
124
- } from "../chunk-I47EJPYL.js";
125
- import "../chunk-XW2UZICE.js";
126
- import {
127
- readSettings
128
- } from "../chunk-FPS4R2RN.js";
129
- import "../chunk-DVNAPPXU.js";
130
- import "../chunk-5EQO5NWP.js";
131
- import {
132
- classify
133
- } from "../chunk-H2WSCZZT.js";
134
- import {
135
- protectedArtifactMutationBlockReason
136
- } from "../chunk-SQBT46OF.js";
137
- import "../chunk-KQ6IDQIB.js";
138
- import "../chunk-L4N3DWNW.js";
139
- import "../chunk-YQYINEJI.js";
140
- import "../chunk-H72DCH3E.js";
141
- import "../chunk-2KUBKL63.js";
142
- import "../chunk-MYI32N4R.js";
143
- import "../chunk-R2P2U3ZS.js";
144
- import "../chunk-NTTS3O53.js";
145
- import "../chunk-M4KFUXS7.js";
146
- import {
147
- ToolNames
148
- } from "../chunk-V4XJWDHR.js";
109
+ } from "../chunk-6W75D37F.js";
149
110
  import {
150
111
  registerBuiltinRuntimes
151
- } from "../chunk-NPLLK3HO.js";
152
- import "../chunk-ZKJU55MX.js";
153
- import "../chunk-U2MSJ57E.js";
154
- import {
155
- configureGuardrails,
156
- guardrailValuesFromSettings,
157
- isWorkerToolCallCapExceededReason,
158
- isWorkerToolCallCapSynthesisReason
159
- } from "../chunk-C27U2TYG.js";
160
- import "../chunk-EM2DIQAJ.js";
161
- import "../chunk-ZKVMDNAN.js";
112
+ } from "../chunk-77DCC6JZ.js";
113
+ import "../chunk-SYF7FVBL.js";
114
+ import "../chunk-Z4GLJ6J4.js";
162
115
  import "../chunk-VNBICSS2.js";
163
- import "../chunk-B5GGDIHT.js";
164
116
  import {
165
117
  getRuntimeRegistry
166
- } from "../chunk-SRCEQKQS.js";
167
- import "../chunk-JIYWMQZ5.js";
118
+ } from "../chunk-2WVPJF3Z.js";
119
+ import "../chunk-27YTM2CV.js";
168
120
  import {
169
121
  engineStreamSimple,
170
- registerFauxFromEnv
171
- } from "../chunk-UIU7MGZ3.js";
172
- import "../chunk-DXVMLM3Z.js";
122
+ registerFauxFromEnv,
123
+ resolvedRequestContext
124
+ } from "../chunk-L7G7K4I2.js";
125
+ import "../chunk-ALJWT6O6.js";
126
+ import {
127
+ deleteInjectedCompileCacheFrom
128
+ } from "../chunk-4WV4PI66.js";
129
+ import "../chunk-HMN2C6YL.js";
173
130
  import {
131
+ agentSkillToolPolicy
132
+ } from "../chunk-I4Y4WKZR.js";
133
+ import "../chunk-UZVYEF57.js";
134
+ import "../chunk-O3VV6IVK.js";
135
+ import "../chunk-EKV4UBCM.js";
136
+ import "../chunk-UHW5V7HC.js";
137
+ import {
138
+ RESULT_CONTRACT_REPAIR_LIMIT,
174
139
  UNKNOWN_RESOURCE,
175
140
  WORKER_PROTOCOL_VERSION,
176
141
  WORKER_RESOURCE_LABEL_MAX,
@@ -178,38 +143,61 @@ import {
178
143
  canonicalJson,
179
144
  encodeControlFrame,
180
145
  endpointIdentityHash,
146
+ internalHelperResultSchema,
181
147
  knownResource,
182
148
  parseAgentLedgerBody,
183
149
  parseAgentLedgerEntry,
184
- toolSignatureOf,
150
+ parseWorkerResultContract,
151
+ resultContractRepairMessages,
152
+ resultContractRepairUserMessage,
153
+ resultContractShape,
154
+ validateResultContract,
155
+ validateStructuredHelperResult,
185
156
  withinFrameBudget,
186
157
  workerSpecDigest
187
- } from "../chunk-VQD7NH7Z.js";
158
+ } from "../chunk-LNOXCGN2.js";
159
+ import "../chunk-BJH6WFIB.js";
160
+ import "../chunk-5EQO5NWP.js";
161
+ import "../chunk-VYRQHORQ.js";
162
+ import "../chunk-P4GNZPXO.js";
163
+ import "../chunk-R2P2U3ZS.js";
164
+ import "../chunk-NTTS3O53.js";
165
+ import "../chunk-C2CPOIH2.js";
166
+ import "../chunk-MGLRTOCK.js";
167
+ import "../chunk-M4KFUXS7.js";
188
168
  import {
189
- deleteInjectedCompileCacheFrom
190
- } from "../chunk-CKK25WN3.js";
191
- import "../chunk-XTQ7MEJG.js";
169
+ ToolNames
170
+ } from "../chunk-V4XJWDHR.js";
171
+ import {
172
+ readSettings
173
+ } from "../chunk-56XP4FJU.js";
174
+ import "../chunk-QZTTRSJE.js";
175
+ import "../chunk-U2MSJ57E.js";
176
+ import {
177
+ configureGuardrails,
178
+ guardrailValuesFromSettings,
179
+ isWorkerToolCallCapExceededReason,
180
+ isWorkerToolCallCapSynthesisReason
181
+ } from "../chunk-C27U2TYG.js";
182
+ import "../chunk-B5GGDIHT.js";
183
+ import "../chunk-O63U2I6I.js";
184
+ import "../chunk-M2IPMWCN.js";
192
185
  import {
193
186
  setGitCommitAttributionEnabled,
194
187
  withManagedGitCommitAttributionEnvironment
195
- } from "../chunk-LTR5QCLS.js";
188
+ } from "../chunk-XS2QPZJE.js";
196
189
  import "../chunk-6EXUUOSN.js";
197
190
  import {
198
191
  AI_AGENT_NAME
199
192
  } from "../chunk-ZTNFYMIO.js";
200
- import {
201
- agentSkillToolPolicy
202
- } from "../chunk-NBPA5QM6.js";
203
- import {
204
- DEFAULT_AUTONOMY_LEVEL
205
- } from "../chunk-EM2WNQS2.js";
206
- import "../chunk-O3VV6IVK.js";
207
- import "../chunk-DVJL77SO.js";
208
- import "../chunk-3RDHGNU7.js";
209
- import "../chunk-UHW5V7HC.js";
193
+ import "../chunk-53OXPRI6.js";
194
+ import "../chunk-2EMLKSCX.js";
210
195
  import "../chunk-KMF54VH3.js";
196
+ import "../chunk-DVJL77SO.js";
211
197
  import "../chunk-SER7RRAE.js";
212
- import "../chunk-GH5ZR6JP.js";
198
+ import {
199
+ typebox_exports
200
+ } from "../chunk-GH5ZR6JP.js";
213
201
  import "../chunk-TK2BMCBZ.js";
214
202
  import {
215
203
  clioStateDir
@@ -217,10 +205,14 @@ import {
217
205
  import {
218
206
  safeResourceWrite
219
207
  } from "../chunk-ZZFWWYLX.js";
220
- import "../chunk-GD55RTIW.js";
208
+ import "../chunk-2VLYHHFT.js";
209
+ import "../chunk-3JHUFKG7.js";
221
210
  import {
222
211
  readClioVersion
223
- } from "../chunk-E3LEPLQ2.js";
212
+ } from "../chunk-ZPST2KQO.js";
213
+ import "../chunk-JQCLXSFI.js";
214
+ import "../chunk-PS6JAWJZ.js";
215
+ import "../chunk-FD2I4KBR.js";
224
216
  import {
225
217
  init_esm_shims
226
218
  } from "../chunk-ECBHH7LU.js";
@@ -381,132 +373,6 @@ import path from "node:path";
381
373
  // src/engine/claude/sdk-runtime.ts
382
374
  init_esm_shims();
383
375
 
384
- // src/engine/worker-tools.ts
385
- init_esm_shims();
386
- function createWorkerSafety(options = {}) {
387
- let loopState = createLoopState();
388
- const policyEngine = createSafetyPolicyEngine({
389
- ...options.cwd !== void 0 ? { cwd: options.cwd } : {},
390
- ...options.writeRoots !== void 0 ? { writeRoots: options.writeRoots } : {}
391
- });
392
- const protectedArtifactState = {
393
- artifacts: structuredClone(options.protectedArtifactState?.artifacts ?? [])
394
- };
395
- return {
396
- classify: (call) => classify(call),
397
- evaluate(call, posture) {
398
- const protectedReason = protectedArtifactMutationBlockReason(protectedArtifactState, call.tool, call.args);
399
- if (protectedReason !== null) {
400
- const classification2 = classify(call);
401
- const rejection = {
402
- short: "protected artifact blocked",
403
- detail: protectedReason,
404
- hints: []
405
- };
406
- const metadata = policyEngine.metadata(posture);
407
- const policy2 = {
408
- kind: "block",
409
- classification: classification2,
410
- tool: call.tool,
411
- actionClass: classification2.actionClass,
412
- reasons: [...classification2.reasons, protectedReason],
413
- ruleId: "protected-artifact",
414
- reasonCode: "protected-artifact",
415
- cwd: metadata.cwd,
416
- policySource: "builtin-classifier",
417
- rejection,
418
- ...posture !== void 0 ? { posture } : {}
419
- };
420
- return { kind: "block", classification: classification2, rejection, policy: policy2 };
421
- }
422
- const policy = policyEngine.evaluate(call, posture);
423
- const classification = policy.classification;
424
- if (policy.kind === "block") {
425
- const decision = {
426
- kind: "block",
427
- classification,
428
- rejection: policy.rejection ?? fallbackRejection(policy),
429
- policy
430
- };
431
- if (policy.match) decision.match = policy.match;
432
- return decision;
433
- }
434
- if (policy.kind === "ask") {
435
- const decision = {
436
- kind: "ask",
437
- classification,
438
- rejection: policy.rejection ?? fallbackRejection(policy),
439
- policy
440
- };
441
- if (policy.match) decision.match = policy.match;
442
- return decision;
443
- }
444
- return { kind: "allow", classification, policy };
445
- },
446
- observeLoop(key, now) {
447
- const [next, verdict] = observe(loopState, key, now ?? Date.now());
448
- loopState = next;
449
- return verdict;
450
- },
451
- scopes: { readonly: READONLY_SCOPE, workspace: WORKSPACE_SCOPE, confirmed: CONFIRMED_SCOPE },
452
- isSubset,
453
- policy: {
454
- metadata: (posture) => policyEngine.metadata(posture),
455
- allowsObservationPath: (path2) => policyEngine.evaluate({ tool: "read", args: { path: path2 } }).reasonCode !== "path-policy:zeroAccessPaths"
456
- },
457
- audit: { recordCount: () => 0 }
458
- };
459
- }
460
- function fallbackRejection(policy) {
461
- return {
462
- short: `${policy.tool} blocked: ${policy.actionClass}`,
463
- detail: policy.reasons.join("\n"),
464
- hints: []
465
- };
466
- }
467
- function createWorkerToolRegistry(middlewareSnapshot, safety = createWorkerSafety(), skillLoaderOptions, hookRegistrations, autonomy, onMiddlewareEffects, agentLedger, workerRecall) {
468
- const middleware = createMiddlewareContractFromSnapshot(middlewareSnapshot ?? { version: 1, rules: [] });
469
- for (const registration2 of hookRegistrations ?? []) {
470
- middleware.registerHook(registration2);
471
- }
472
- const registry = createRegistry({
473
- safety,
474
- middleware,
475
- autonomy: () => autonomy ?? DEFAULT_AUTONOMY_LEVEL,
476
- ...onMiddlewareEffects ? { onMiddlewareEffects } : {}
477
- });
478
- const registration = registerCoreTools(registry, {
479
- includeLedgerTools: true,
480
- ...workerRecall ? { workerRecall } : {},
481
- ...agentLedger ? { agentLedger } : {},
482
- // A worker cannot install a skill or reach the operator who could, so
483
- // its skill listing carries installed (or bound) skills only; the
484
- // marketplace is the orchestrator's to offer.
485
- skillMarketplace: false,
486
- getSkillLoaderOptions: () => ({
487
- trustProjectCompatRoots: skillLoaderOptions?.trustProjectCompatRoots === true,
488
- disableDiscovery: skillLoaderOptions?.noSkills === true,
489
- ...skillLoaderOptions?.skillPaths && skillLoaderOptions.skillPaths.length > 0 ? { explicitSkillPaths: skillLoaderOptions.skillPaths } : {}
490
- })
491
- });
492
- assertRegisteredBuiltinTools(registry, registration, false);
493
- registerHarnessExtensionTools(registry);
494
- return registry;
495
- }
496
- function attestedToolSignature(input) {
497
- const registry = createWorkerToolRegistry();
498
- return toolSignatureOf(
499
- effectiveToolNames({
500
- registry,
501
- allowedTools: input.toolsSupported ? input.allowedTools : [],
502
- includeInteractiveTools: false,
503
- ...input.toolProfile !== void 0 ? { toolProfile: input.toolProfile } : {},
504
- ...input.agentId !== void 0 ? { agentId: input.agentId } : {},
505
- ...input.task !== void 0 ? { task: input.task } : {}
506
- })
507
- );
508
- }
509
-
510
376
  // src/engine/claude/sdk-module.ts
511
377
  init_esm_shims();
512
378
  var CLAUDE_AGENT_SDK_PACKAGE = "@anthropic-ai/claude-agent-sdk";
@@ -1068,6 +934,17 @@ function startClaudeSdkWorkerRun(input, emit) {
1068
934
  }
1069
935
 
1070
936
  // src/engine/worker-runtime.ts
937
+ function workerPermissionCacheKey(call, decision, axis) {
938
+ return canonicalJson({
939
+ tool: call.tool,
940
+ args: call.args ?? {},
941
+ axis,
942
+ actionClass: decision.classification.actionClass,
943
+ policyReason: decision.policy?.reasonCode,
944
+ policySource: decision.policy?.policySource,
945
+ policyHash: decision.policy?.policyHash
946
+ });
947
+ }
1071
948
  function isAssistantMessage(message) {
1072
949
  if (typeof message !== "object" || message === null) return false;
1073
950
  return "role" in message && message.role === "assistant";
@@ -1096,7 +973,7 @@ function terminalContractViolation(contract, message, cwd, observedReadRanges, o
1096
973
  const text = assistantMessageText(message);
1097
974
  if (text === null || text.length === 0) return "missing final result";
1098
975
  if (text.trim() === lockedSynthesisFallbackText()) {
1099
- return "the reply after the tool-call lockout held only tool-call markup and was removed; tools are off, so state the final result as plain text";
976
+ return "the reply after the tool-call lockout held only tool-call markup and was removed; tools are off, so emit the required terminal result format";
1100
977
  }
1101
978
  const stopReason = message.stopReason;
1102
979
  if (shouldRequestStalledTurnContinuation({
@@ -1158,7 +1035,14 @@ function taskMessage(task) {
1158
1035
  }
1159
1036
  function promptMessagesForWorker(input) {
1160
1037
  const messages = (input.dynamicPromptMessages ?? []).map(promptMessage);
1161
- messages.push(taskMessage(input.task));
1038
+ messages.push(
1039
+ taskMessage(
1040
+ input.contextSeed ? `# Your worker assignment
1041
+ You are already the dispatched ${input.agentId} worker. The preceding conversation is inherited background; its requests to dispatch a worker were addressed to the parent. Carry out the assignment below, preserving safety and operator scope constraints. Do not dispatch yourself again.
1042
+
1043
+ ${input.task}` : input.task
1044
+ )
1045
+ );
1162
1046
  return messages;
1163
1047
  }
1164
1048
  function workerProviderSupportsTools(input) {
@@ -1184,6 +1068,10 @@ function startWorkerRun(input, emit) {
1184
1068
  if (input.contextSeed && input.runtime.kind !== "http")
1185
1069
  throw new Error("worker context: history seeds require a native Pi runtime");
1186
1070
  if (input.resultContract !== void 0) parseWorkerResultContract(input.resultContract, "WorkerSpec.resultContract");
1071
+ const helperSchema = input.helperResult === true && input.resultContract ? internalHelperResultSchema(input.resultContract) : null;
1072
+ if (input.helperResult === true && (helperSchema === null || input.runtime.kind !== "http")) {
1073
+ throw new Error("helperResult requires a supported internal JSON contract and native HTTP worker");
1074
+ }
1187
1075
  if (input.runtime.id === "claude-sdk") {
1188
1076
  return startClaudeSdkWorkerRun(input, emit);
1189
1077
  }
@@ -1226,6 +1114,7 @@ function startWorkerRun(input, emit) {
1226
1114
  let workerModelRound = 0;
1227
1115
  const loopGuardRegistration = createLoopGuardRegistration({
1228
1116
  safety,
1117
+ readResultMaxBytes: workerSettings.context.toolResultMaxBytes,
1229
1118
  toolCallCap: workerBudget.hardCap,
1230
1119
  toolBudgetAdvisory: workerBudget.mode === "advisory",
1231
1120
  toolCallSoftLimit: workerBudget.toolCalls,
@@ -1287,9 +1176,28 @@ function startWorkerRun(input, emit) {
1287
1176
  const contractCwd = input.cwd ?? process.cwd();
1288
1177
  let resultContractRepairsQueued = 0;
1289
1178
  let resultContractRevisionActive = false;
1179
+ let acceptedHelperResult = null;
1180
+ let helperTerminalPhase = false;
1181
+ let helperTurnFailure = null;
1290
1182
  const pendingReadCitations = /* @__PURE__ */ new Map();
1291
1183
  const observedReadRanges = /* @__PURE__ */ new Map();
1292
1184
  const runEffects = createRunEffectsRecorder(contractCwd);
1185
+ const acceptHelperResult = (data) => {
1186
+ if (!input.resultContract) return "missing helper result contract";
1187
+ const checked = validateStructuredHelperResult({
1188
+ contract: input.resultContract,
1189
+ data,
1190
+ cwd: contractCwd,
1191
+ observedReadRanges,
1192
+ observedRunEffects: runEffects.snapshot(),
1193
+ networkAllowed: true,
1194
+ filesystem: nodeResultContractFilesystem()
1195
+ });
1196
+ if (checked.structured === null) return checked.validation.reason ?? "invalid helper result";
1197
+ acceptedHelperResult = checked.structured;
1198
+ emit({ type: "clio_coder_helper_result", payload: checked.structured });
1199
+ return null;
1200
+ };
1293
1201
  const recordObservedRead = (request, result) => {
1294
1202
  const observation = result?.details?.observation;
1295
1203
  if (!observation) return;
@@ -1345,12 +1253,14 @@ function startWorkerRun(input, emit) {
1345
1253
  };
1346
1254
  const tools = resolveAgentTools({
1347
1255
  registry,
1256
+ ...input.turnConstraints ? { turnConstraints: input.turnConstraints } : {},
1348
1257
  telemetry,
1349
1258
  allowedTools: activeWorkerTools,
1350
1259
  agentId: input.agentId,
1351
1260
  task: input.task,
1352
1261
  includeInteractiveTools: false,
1353
1262
  invokeOptions: () => ({
1263
+ ...input.turnConstraints ? { turnConstraints: input.turnConstraints } : {},
1354
1264
  correlationId: `worker-model-round-${workerModelRound}`,
1355
1265
  toolResultMaxBytes: workerSettings.context.toolResultMaxBytes,
1356
1266
  supportsImages: model.input.includes("image"),
@@ -1360,6 +1270,32 @@ function startWorkerRun(input, emit) {
1360
1270
  ...agentSkillPolicy ? { pendingSkillPolicy: agentSkillPolicy } : {}
1361
1271
  })
1362
1272
  });
1273
+ const helperToolAvailable = helperSchema !== null && workerProviderSupportsTools(input);
1274
+ const helperForcedChoiceAvailable = helperToolAvailable && supportsNamedToolChoice(model.api);
1275
+ if (helperToolAvailable) {
1276
+ tools.push({
1277
+ name: INTERNAL_HELPER_RESULT_TOOL,
1278
+ label: "Submit helper result",
1279
+ description: "Submit the final internal result as this tool's arguments. Call alone, after gathering evidence. A validated submission finishes the run; no prose response follows.",
1280
+ parameters: typebox_exports.Unsafe(helperSchema),
1281
+ async execute(_id, args) {
1282
+ if (acceptedHelperResult !== null || workerBoundFailure !== null) {
1283
+ return {
1284
+ content: [{ type: "text", text: "The terminal result is already sealed." }],
1285
+ details: { kind: "error" },
1286
+ terminate: true
1287
+ };
1288
+ }
1289
+ helperTerminalPhase = true;
1290
+ synthesisToolLock = true;
1291
+ helperTurnFailure = acceptHelperResult(args);
1292
+ if (helperTurnFailure !== null) {
1293
+ return { content: [{ type: "text", text: helperTurnFailure }], details: { kind: "error" } };
1294
+ }
1295
+ return { content: [{ type: "text", text: "Internal result accepted." }], details: { kind: "ok" }, terminate: true };
1296
+ }
1297
+ });
1298
+ }
1363
1299
  if (tools.length === 0 && activeWorkerTools.length > 0) {
1364
1300
  process.stderr.write(`[worker] warning: no tools resolved for allowed=[${activeWorkerTools.join(",")}]
1365
1301
  `);
@@ -1369,16 +1305,41 @@ function startWorkerRun(input, emit) {
1369
1305
  input.runtimeResolution?.effectiveThinkingLevel ?? input.thinkingLevel
1370
1306
  );
1371
1307
  const inheritedMessages = seededWorkerMessages(input.contextSeed);
1372
- const inheritedCount = inheritedMessages.length;
1373
1308
  const contextGuard = createWorkerContextGuard(observations.archive);
1374
1309
  const options = {
1375
- streamFn: (currentModel, currentContext, streamOptions) => {
1310
+ beforeToolCall: async ({ assistantMessage, toolCall }) => {
1311
+ if (helperSchema === null) return void 0;
1312
+ if (acceptedHelperResult !== null || workerBoundFailure !== null)
1313
+ return { block: true, reason: "The helper result is sealed.", terminate: true };
1314
+ const calls = assistantMessage.content.filter((block) => block.type === "toolCall");
1315
+ if (calls.some((call) => call.name === INTERNAL_HELPER_RESULT_TOOL) && calls.length !== 1) {
1316
+ helperTurnFailure = "Submit exactly one terminal handoff, alone; mixed or duplicate handoff batches are rejected without executing work.";
1317
+ return { block: true, reason: helperTurnFailure };
1318
+ }
1319
+ if ((helperTerminalPhase || synthesisToolLock) && toolCall.name !== INTERNAL_HELPER_RESULT_TOOL) {
1320
+ helperTurnFailure = "Work tools are disabled. Submit only the internal terminal result.";
1321
+ return { block: true, reason: helperTurnFailure };
1322
+ }
1323
+ return void 0;
1324
+ },
1325
+ afterToolCall: async ({ toolCall, result }) => toolCall.name === INTERNAL_HELPER_RESULT_TOOL && result.details?.kind === "error" ? { isError: true } : void 0,
1326
+ shouldStopAfterTurn: () => helperSchema !== null && (acceptedHelperResult !== null || workerBoundFailure !== null),
1327
+ streamFn: (currentModel, transcript, streamOptions) => {
1328
+ const currentContext = resolvedRequestContext(transcript);
1329
+ const helperPrompt = helperToolAvailable && (!(synthesisToolLock || helperTerminalPhase) || helperForcedChoiceAvailable) ? `${currentContext.systemPrompt ?? ""}
1330
+
1331
+ # Internal helper protocol
1332
+ Return the result by calling ${INTERNAL_HELPER_RESULT_TOOL} alone with the result object as arguments. Successful submission ends the run; no narrative report is needed.${synthesisToolLock || helperTerminalPhase ? " Work tools are disabled. Earlier tool-use instructions apply only to the completed work phase; only the terminal handoff remains available. Do not invent missing evidence." : ""}` : currentContext.systemPrompt;
1333
+ const systemPrompt = helperToolAvailable && (!(synthesisToolLock || helperTerminalPhase) || helperForcedChoiceAvailable) ? helperPrompt : synthesisToolLock ? lockedSynthesisSystemPrompt(
1334
+ currentContext.systemPrompt ?? "",
1335
+ input.resultContract ? resultContractShape(input.resultContract) : void 0
1336
+ ) : currentContext.systemPrompt;
1376
1337
  const window = input.runtimeResolution?.capabilities.contextWindow ?? currentModel.contextWindow;
1377
1338
  let messages;
1378
1339
  try {
1379
1340
  messages = contextGuard({
1380
1341
  messages: currentContext.messages,
1381
- systemPrompt: currentContext.systemPrompt ?? "",
1342
+ systemPrompt: systemPrompt ?? "",
1382
1343
  tools: currentContext.tools ?? [],
1383
1344
  contextWindow: window,
1384
1345
  threshold: workerSettings.context.compaction.threshold,
@@ -1398,7 +1359,11 @@ function startWorkerRun(input, emit) {
1398
1359
  }
1399
1360
  return engineStreamSimple(
1400
1361
  currentModel,
1401
- { ...currentContext, messages },
1362
+ {
1363
+ ...currentContext,
1364
+ ...systemPrompt !== void 0 ? { systemPrompt } : {},
1365
+ messages
1366
+ },
1402
1367
  streamOptions
1403
1368
  );
1404
1369
  },
@@ -1416,6 +1381,7 @@ function startWorkerRun(input, emit) {
1416
1381
  thinkingLevel: effectiveThinkingLevel,
1417
1382
  ...input.responseSchema !== void 0 ? { responseSchema: input.responseSchema } : {},
1418
1383
  toolSurfaceLocked: synthesisToolLock,
1384
+ ...helperToolAvailable && (synthesisToolLock || helperTerminalPhase) && supportsNamedToolChoice(currentModel.api) ? { terminalToolName: INTERNAL_HELPER_RESULT_TOOL } : {},
1419
1385
  toolChoiceNone: middlewareChoice.kind === "none",
1420
1386
  ...middlewareChoice.kind === "required" ? { toolChoiceName: middlewareChoice.toolName } : {}
1421
1387
  });
@@ -1424,10 +1390,57 @@ function startWorkerRun(input, emit) {
1424
1390
  };
1425
1391
  if (input.sessionId) options.sessionId = input.sessionId;
1426
1392
  const { agent } = createEngineAgent(options);
1393
+ const inheritedCount = agent.state.messages.length;
1427
1394
  agent.followUpMode = "all";
1428
1395
  abortWorkerForBound = () => agent.abort();
1396
+ const repairHelperResult = (reason) => {
1397
+ if (!input.resultContract || acceptedHelperResult !== null || workerBoundFailure !== null) return;
1398
+ helperTerminalPhase = true;
1399
+ synthesisToolLock = true;
1400
+ if (resultContractRepairsQueued >= RESULT_CONTRACT_REPAIR_LIMIT) {
1401
+ workerBoundFailure = `result contract failed after ${RESULT_CONTRACT_REPAIR_LIMIT} bounded repair rounds: ${reason}`;
1402
+ emit({ type: "clio_coder_run_outcome", payload: { outcomeCode: "result_contract_exhausted" } });
1403
+ return;
1404
+ }
1405
+ resultContractRepairsQueued += 1;
1406
+ const instruction = helperForcedChoiceAvailable ? `${reason} Work tools remain disabled. Repair the result by calling ${INTERNAL_HELPER_RESULT_TOOL} exactly once, alone, with the complete result object. Do not emit prose.` : reason;
1407
+ for (const message of resultContractRepairMessages(
1408
+ {
1409
+ contract: input.resultContract,
1410
+ reason: instruction,
1411
+ attempt: resultContractRepairsQueued,
1412
+ anchors: observedReadAnchors()
1413
+ },
1414
+ { provider: model.provider, api: model.api, model: model.id }
1415
+ )) {
1416
+ const repairMessage = helperForcedChoiceAvailable && message.role === "toolResult" ? {
1417
+ ...message,
1418
+ content: [
1419
+ {
1420
+ type: "text",
1421
+ text: `${instruction}
1422
+ Required arguments schema: ${JSON.stringify(helperSchema)}
1423
+ Observed read ranges: ${observedReadAnchors().join(", ") || "none"}`
1424
+ }
1425
+ ]
1426
+ } : message;
1427
+ agent.followUp(repairMessage);
1428
+ }
1429
+ };
1429
1430
  const unsubscribe = agent.subscribe(async (event) => {
1430
- if (event.type === "turn_start") workerModelRound += 1;
1431
+ if (event.type === "turn_start") {
1432
+ workerModelRound += 1;
1433
+ helperTurnFailure = null;
1434
+ }
1435
+ if (helperSchema !== null && event.type === "message_end" && isAssistantMessage(event.message)) {
1436
+ const calls = event.message.content.filter((block) => block.type === "toolCall");
1437
+ if (calls.some((call) => call.name === INTERNAL_HELPER_RESULT_TOOL)) {
1438
+ helperTerminalPhase = true;
1439
+ synthesisToolLock = true;
1440
+ if (calls.length !== 1)
1441
+ helperTurnFailure = "Submit exactly one terminal handoff, alone; mixed or duplicate batches cannot execute work.";
1442
+ }
1443
+ }
1431
1444
  if (event.type === "tool_execution_start") middlewareToolChoice.toolStarted(event.toolName);
1432
1445
  if (event.type === "tool_execution_start") {
1433
1446
  runEffects.start(event.toolCallId, event.toolName, event.args);
@@ -1449,23 +1462,41 @@ function startWorkerRun(input, emit) {
1449
1462
  if (request !== void 0 && event.isError !== true) recordObservedRead(request, event.result);
1450
1463
  }
1451
1464
  let repromptedThisMessage = false;
1452
- if (synthesisToolLock && event.type === "message_end") {
1465
+ if (synthesisToolLock && !helperToolAvailable && event.type === "message_end") {
1453
1466
  const stripped = sanitizeLockedSynthesisMessage(event.message);
1454
1467
  if (stripped && lockedSynthesisReprompts < 1 && isLockedSynthesisFallbackOnly(event.message)) {
1455
1468
  lockedSynthesisReprompts += 1;
1456
1469
  repromptedThisMessage = true;
1457
- process.stderr.write("[worker] synthesis lock: reply was tool-call markup only; re-prompting once for prose\n");
1458
- for (const message of lockedSynthesisRepromptMessages(lockedSynthesisReprompts, {
1459
- provider: model.provider,
1460
- api: model.api,
1461
- model: model.id
1462
- })) {
1463
- agent.followUp(message);
1470
+ process.stderr.write(
1471
+ "[worker] synthesis lock: reply was tool-call markup only; re-prompting once for the required final format\n"
1472
+ );
1473
+ const directive = lockedSynthesisRepromptMessages(
1474
+ lockedSynthesisReprompts,
1475
+ { provider: model.provider, api: model.api, model: model.id },
1476
+ input.resultContract ? resultContractShape(input.resultContract) : void 0
1477
+ ).find((message) => message.role === "toolResult");
1478
+ if (directive?.role === "toolResult") {
1479
+ agent.followUp({ role: "user", content: directive.content, timestamp: Date.now() });
1464
1480
  }
1465
1481
  }
1466
1482
  }
1467
1483
  const contract = input.resultContract;
1468
- if (contract && !repromptedThisMessage && event.type === "message_end" && isTerminalAssistantMessage(event.message)) {
1484
+ if (helperSchema !== null && contract && !repromptedThisMessage && event.type === "message_end" && isTerminalAssistantMessage(event.message)) {
1485
+ const text = assistantMessageText(event.message);
1486
+ let reason;
1487
+ try {
1488
+ reason = acceptHelperResult(JSON.parse(text ?? ""));
1489
+ } catch {
1490
+ reason = "The internal result must be a JSON object conforming to the declared contract.";
1491
+ }
1492
+ if (reason !== null) repairHelperResult(reason);
1493
+ }
1494
+ if (helperSchema !== null && event.type === "turn_end" && acceptedHelperResult === null && event.toolResults.length > 0 && (helperTerminalPhase || synthesisToolLock)) {
1495
+ const error = event.toolResults.find((result) => result.isError);
1496
+ const reason = helperTurnFailure ?? error?.content.filter((block) => block.type === "text").map((block) => block.text).join("\n") ?? "The terminal handoff was not accepted.";
1497
+ repairHelperResult(reason);
1498
+ }
1499
+ if (helperSchema === null && contract && !repromptedThisMessage && event.type === "message_end" && isTerminalAssistantMessage(event.message)) {
1469
1500
  const violation = terminalContractViolation(
1470
1501
  contract,
1471
1502
  event.message,
@@ -1486,16 +1517,14 @@ function startWorkerRun(input, emit) {
1486
1517
  }
1487
1518
  const revisionToolsAvailable = (workerBudget.mode === "advisory" || resultContractRevisionActive) && !synthesisToolLock;
1488
1519
  if (!revisionToolsAvailable) synthesisToolLock = true;
1489
- const repair = resultContractRepairMessages(
1490
- {
1491
- contract,
1492
- reason: violation,
1493
- attempt: resultContractRepairsQueued,
1494
- anchors: observedReadAnchors(),
1495
- ...revisionToolsAvailable ? { toolsAvailable: true } : {}
1496
- },
1497
- { provider: model.provider, api: model.api, model: model.id }
1498
- );
1520
+ const repairInput = {
1521
+ contract,
1522
+ reason: violation,
1523
+ attempt: resultContractRepairsQueued,
1524
+ anchors: observedReadAnchors(),
1525
+ toolsAvailable: revisionToolsAvailable
1526
+ };
1527
+ const repair = revisionToolsAvailable ? resultContractRepairMessages(repairInput, { provider: model.provider, api: model.api, model: model.id }) : [resultContractRepairUserMessage(repairInput)];
1499
1528
  for (const message of repair) agent.followUp(message);
1500
1529
  } else if (workerBoundFailure === null) {
1501
1530
  workerBoundFailure = `result contract failed after ${RESULT_CONTRACT_REPAIR_LIMIT} bounded repair rounds: ${violation}`;
@@ -1522,7 +1551,6 @@ function startWorkerRun(input, emit) {
1522
1551
  const failReason = (tool, actionClass) => `permission required for ${tool} (${actionClass}); workers.onPermission=fail ends this run`;
1523
1552
  let activeEscalation = null;
1524
1553
  const answeredEscalations = /* @__PURE__ */ new Map();
1525
- const escalationCallKey = (tool, args) => `${tool}\0${canonicalJson(args ?? {})}`;
1526
1554
  const clearActiveEscalation = () => {
1527
1555
  if (activeEscalation) {
1528
1556
  clearTimeout(activeEscalation.timer);
@@ -1533,7 +1561,7 @@ function startWorkerRun(input, emit) {
1533
1561
  const active = activeEscalation;
1534
1562
  if (!active || active.requestId !== requestId) return false;
1535
1563
  clearActiveEscalation();
1536
- answeredEscalations.set(active.callKey, { decision, requestId });
1564
+ answeredEscalations.set(active.callKey, { decision, requestId, source });
1537
1565
  if (decision === "approve") {
1538
1566
  emit({
1539
1567
  type: "clio_coder_permission_resolved",
@@ -1600,11 +1628,11 @@ function startWorkerRun(input, emit) {
1600
1628
  const unsubscribePermission = registry.onPermissionRequired((call, decision, meta) => {
1601
1629
  const actionClass = decision.classification.actionClass;
1602
1630
  if (escalationConfig) {
1603
- const callKey = escalationCallKey(call.tool, call.args);
1631
+ const callKey = workerPermissionCacheKey(call, decision, meta.axis);
1604
1632
  const remembered = answeredEscalations.get(callKey);
1605
1633
  if (remembered !== void 0) {
1606
1634
  const approved = remembered.decision === "approve";
1607
- const reason2 = approved ? `operator approved an identical ${call.tool} call earlier in this run (request ${remembered.requestId}); the answer stands without a new prompt` : `permission denied by operator: an identical ${call.tool} call was already denied earlier in this run (request ${remembered.requestId}); the answer stands, so do not repeat this call`;
1635
+ const reason2 = approved ? `operator approved an identical ${call.tool} call under the same permission conditions earlier in this run (request ${remembered.requestId}); the answer stands without a new prompt` : `permission denied by ${remembered.source === "timeout" ? "escalation timeout fallback" : "operator"}: an identical ${call.tool} call under the same permission conditions was already denied earlier in this run (request ${remembered.requestId}); the answer stands, so do not repeat this call`;
1608
1636
  emit({
1609
1637
  type: "clio_coder_permission_resolved",
1610
1638
  payload: {
@@ -1685,6 +1713,9 @@ function startWorkerRun(input, emit) {
1685
1713
  return { messages: agent.state.messages.slice(inheritedCount), exitCode: WORKER_EXIT_PERMISSION_REQUIRED };
1686
1714
  }
1687
1715
  const messages = agent.state.messages.slice(inheritedCount);
1716
+ if (helperSchema !== null && acceptedHelperResult === null) {
1717
+ return { messages, exitCode: 1 };
1718
+ }
1688
1719
  const errorMessage = getTerminalAgentError(messages);
1689
1720
  if (errorMessage !== null) {
1690
1721
  if (errorMessage.length > 0) {
@@ -2143,6 +2174,7 @@ function announceWorker(spec, input) {
2143
2174
  toolSignature: attestedToolSignature({
2144
2175
  allowedTools: spec.allowedTools,
2145
2176
  toolsSupported: workerProviderSupportsTools(input),
2177
+ ...spec.helperResult === true ? { helperResult: true } : {},
2146
2178
  ...spec.toolProfile !== void 0 ? { toolProfile: spec.toolProfile } : {},
2147
2179
  agentId: spec.agentId,
2148
2180
  task: spec.task
@@ -2159,6 +2191,12 @@ async function main() {
2159
2191
  emitEvent({ type: "clio_coder_run_outcome", payload: { outcomeCode: "vram_capacity_fit_failure" } });
2160
2192
  }
2161
2193
  });
2194
+ setModelLoadReportSink((load) => {
2195
+ emitControlFrame({
2196
+ kind: "model_loaded",
2197
+ load: { targetId: load.targetId, modelId: load.modelId, aliasIds: load.aliasIds }
2198
+ });
2199
+ });
2162
2200
  const demux = createWorkerStdinDemux();
2163
2201
  process.stdin.setEncoding("utf8");
2164
2202
  process.stdin.on("data", (chunk) => demux.feed(chunk));
@@ -2215,6 +2253,7 @@ async function main() {
2215
2253
  allowedTools: spec.allowedTools,
2216
2254
  budget: spec.budget,
2217
2255
  ...spec.noSkills !== void 0 ? { noSkills: spec.noSkills } : {},
2256
+ ...spec.turnConstraints !== void 0 ? { turnConstraints: spec.turnConstraints } : {},
2218
2257
  ...spec.skillPaths !== void 0 ? { skillPaths: [...spec.skillPaths] } : {},
2219
2258
  ...spec.agentSkills !== void 0 ? { agentSkills: [...spec.agentSkills] } : {},
2220
2259
  ...spec.trustProjectCompatRoots !== void 0 ? { trustProjectCompatRoots: spec.trustProjectCompatRoots } : {},
@@ -2231,6 +2270,7 @@ async function main() {
2231
2270
  } : {},
2232
2271
  ...spec.responseSchema !== void 0 ? { responseSchema: spec.responseSchema } : {},
2233
2272
  ...spec.resultContract !== void 0 ? { resultContract: spec.resultContract } : {},
2273
+ ...spec.helperResult === true ? { helperResult: true } : {},
2234
2274
  ...spec.product !== void 0 ? { product: spec.product } : {},
2235
2275
  agentLedger: ledgerPort,
2236
2276
  cwd: process.cwd()