@iowarp/clio-coder 0.3.9 → 0.4.1

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 (733) hide show
  1. package/CHANGELOG.md +92 -0
  2. package/NOTICE +33 -0
  3. package/README.md +121 -16
  4. package/dist/{acp-7LOELQFP.js → acp-ZILU3AUO.js} +19 -18
  5. package/dist/{agents-FIBG2SHA.js → agents-HYWGBGQR.js} +53 -39
  6. package/dist/assets/codewiki.json +1 -1
  7. package/dist/{auth-OI4LIH2I.js → auth-N3QT7CBO.js} +24 -21
  8. package/dist/{builtins-AD25UL3C.js → builtins-UJLMOVOV.js} +6 -6
  9. package/dist/{chunk-I4HZDVNP.js → chunk-2LEAKD4C.js} +2 -3
  10. package/dist/{chunk-465CC7FK.js → chunk-2NM363SV.js} +60 -64
  11. package/dist/{chunk-4H6ULJ3H.js → chunk-2VG7KLYV.js} +1046 -1370
  12. package/dist/{chunk-SST6Z5JA.js → chunk-336NSSKI.js} +1 -1
  13. package/dist/{chunk-NZU6YDNV.js → chunk-3I5NY75V.js} +5 -5
  14. package/dist/{chunk-47CMYGET.js → chunk-3QSOM6PA.js} +2 -2
  15. package/dist/chunk-42FMPA75.js +101 -0
  16. package/dist/{chunk-HAY4ZE2P.js → chunk-5PSMVOLM.js} +2 -2
  17. package/dist/{chunk-IHKBWSXF.js → chunk-5QIAJV2D.js} +3 -3
  18. package/dist/chunk-5YHDIDBP.js +97 -0
  19. package/dist/chunk-6CCS4G3W.js +1529 -0
  20. package/dist/{chunk-2JDWVJND.js → chunk-6DWBAZ5U.js} +2 -2
  21. package/dist/{chunk-BVDVID7E.js → chunk-6FN3E6KX.js} +6 -6
  22. package/dist/{chunk-DG4M6ZUE.js → chunk-6HMJX2VU.js} +59 -59
  23. package/dist/{chunk-3MRC2YSQ.js → chunk-6I5ILFOF.js} +3 -2
  24. package/dist/chunk-6NJQITNH.js +1412 -0
  25. package/dist/chunk-6VC4OV3Z.js +365 -0
  26. package/dist/{chunk-LU7P4LHA.js → chunk-72GZI5EV.js} +2 -2
  27. package/dist/{chunk-5T7RBWN2.js → chunk-74YWRRU5.js} +9 -8
  28. package/dist/{chunk-VPTUJU4P.js → chunk-7EPLI7VL.js} +2 -2
  29. package/dist/{chunk-CA42X6KT.js → chunk-7OBGU7UB.js} +7 -7
  30. package/dist/{chunk-56KB5IJP.js → chunk-7PWAODYW.js} +3 -3
  31. package/dist/chunk-7RY5VZPH.js +573 -0
  32. package/dist/{chunk-OEDBCISO.js → chunk-ABLSQ6JX.js} +3 -3
  33. package/dist/{chunk-5HFBWUMU.js → chunk-AFKWHWXF.js} +13 -23
  34. package/dist/{chunk-FWDFM5ZU.js → chunk-AK5XEFVZ.js} +3 -3
  35. package/dist/{chunk-WXCJ7VME.js → chunk-AKB4GYDL.js} +7 -7
  36. package/dist/chunk-AP73CFDC.js +308 -0
  37. package/dist/{chunk-4LJX2PUC.js → chunk-BBTJOK6Y.js} +5 -5
  38. package/dist/{chunk-QQ7EKM72.js → chunk-BDPT6GTK.js} +13 -61
  39. package/dist/chunk-BJGUKIG4.js +302 -0
  40. package/dist/chunk-BMS5RKQY.js +27 -0
  41. package/dist/{chunk-TD7UE2L5.js → chunk-BTGG6BG2.js} +81 -40
  42. package/dist/chunk-BTK3SSSK.js +67 -0
  43. package/dist/{chunk-M6L6IDJG.js → chunk-BWH6N36D.js} +1 -1
  44. package/dist/chunk-BWW4HLO4.js +301 -0
  45. package/dist/{chunk-BNAZZHFG.js → chunk-BYP5D4HI.js} +1 -1
  46. package/dist/{chunk-HJB5IUKP.js → chunk-C537JADH.js} +18 -18
  47. package/dist/{chunk-774ILSRL.js → chunk-CDNVLKUX.js} +5 -4
  48. package/dist/{chunk-HPCTNZM2.js → chunk-CTJ4RNAA.js} +4 -4
  49. package/dist/{chunk-AEYBF3TB.js → chunk-CWVRRIEI.js} +2 -2
  50. package/dist/chunk-D4CJV46V.js +462 -0
  51. package/dist/chunk-D7E7WCDF.js +27 -0
  52. package/dist/{chunk-5PVQ4SRS.js → chunk-E67WX76H.js} +10 -126
  53. package/dist/{chunk-FQ4SKYE4.js → chunk-EBY63B7G.js} +2 -5
  54. package/dist/chunk-EIMVLWB3.js +1842 -0
  55. package/dist/{chunk-AMKHQW3C.js → chunk-FEFIFZTL.js} +3 -3
  56. package/dist/{chunk-RAPCMZL4.js → chunk-FSP7CMNU.js} +9 -1
  57. package/dist/{chunk-3DUR4WUA.js → chunk-FYUN5KZ3.js} +25 -25
  58. package/dist/{chunk-MV3K5QF2.js → chunk-GCSMB2KY.js} +2 -2
  59. package/dist/chunk-GIZNH63R.js +40 -0
  60. package/dist/chunk-GPPB3JBE.js +688 -0
  61. package/dist/{chunk-B5XRQOLB.js → chunk-GVQJ5CCZ.js} +17 -11
  62. package/dist/chunk-HHV2GANA.js +88 -0
  63. package/dist/chunk-HJWWJ6IL.js +184 -0
  64. package/dist/{chunk-RKRLDWD3.js → chunk-HLW2MRKE.js} +1 -1
  65. package/dist/chunk-HRQMFLJP.js +75 -0
  66. package/dist/{chunk-AD7Y7STJ.js → chunk-HUAS7ITX.js} +107 -97
  67. package/dist/{chunk-O6I4CIEU.js → chunk-I66EAJFY.js} +6 -6
  68. package/dist/{chunk-S4COXYBG.js → chunk-IG7BCQBA.js} +129 -106
  69. package/dist/{chunk-N3PBVRTZ.js → chunk-IXJT6DCX.js} +9 -7
  70. package/dist/chunk-J4HBWF6Y.js +2635 -0
  71. package/dist/chunk-J5LZHVIT.js +284 -0
  72. package/dist/{chunk-GAYUJ7LE.js → chunk-JA5QWE4Z.js} +544 -227
  73. package/dist/{chunk-B5CSFE7B.js → chunk-JIEGK6UF.js} +6 -174
  74. package/dist/{chunk-VKBMFOYV.js → chunk-JZWT5J3Y.js} +23 -27
  75. package/dist/chunk-K6BF4U2H.js +1785 -0
  76. package/dist/{chunk-CGKSTWHD.js → chunk-K6BSR66V.js} +2 -1
  77. package/dist/{chunk-YSEHGPCT.js → chunk-MA3H6DM5.js} +6 -6
  78. package/dist/{chunk-EBOC7MT3.js → chunk-MOPSG2X7.js} +9 -9
  79. package/dist/{chunk-KV2AOLDF.js → chunk-MQXIVJ35.js} +18 -29
  80. package/dist/{chunk-P3JGPQFL.js → chunk-N5UK64DP.js} +4 -4
  81. package/dist/chunk-NDDGJUXD.js +81 -0
  82. package/dist/chunk-NEKRRTYW.js +56 -0
  83. package/dist/{chunk-4ZG3XFUR.js → chunk-NLFAQR7Z.js} +12 -1
  84. package/dist/{chunk-VO2LKSTM.js → chunk-O42A54GG.js} +2 -2
  85. package/dist/{chunk-T3Z6VAAF.js → chunk-OJTRZGR3.js} +53 -92
  86. package/dist/{chunk-5DQRIYDZ.js → chunk-PBP4B7XR.js} +3 -3
  87. package/dist/{chunk-NQ6UCCOD.js → chunk-PJJ6MY27.js} +8 -8
  88. package/dist/chunk-PMZCIOCJ.js +25 -0
  89. package/dist/{chunk-ZGVHUX3M.js → chunk-PMZVFWSR.js} +2 -2
  90. package/dist/{chunk-7C6RYZGQ.js → chunk-PVAMAVBB.js} +5 -4
  91. package/dist/chunk-QDC3K2U3.js +262 -0
  92. package/dist/{chunk-JEQQR47K.js → chunk-QKIFBZKT.js} +173 -14
  93. package/dist/{chunk-R7LNVMCS.js → chunk-QMXC4JB7.js} +70 -78
  94. package/dist/chunk-QSNYB6ZV.js +195 -0
  95. package/dist/chunk-QTFGO774.js +644 -0
  96. package/dist/{chunk-ODFEOB4F.js → chunk-R23Z6K6I.js} +27 -9
  97. package/dist/{chunk-3UUY7R3Z.js → chunk-R32CLGZ6.js} +14 -14
  98. package/dist/chunk-R346GLFC.js +31 -0
  99. package/dist/chunk-RKSR6VSF.js +132 -0
  100. package/dist/{chunk-N5XKWMDW.js → chunk-SCYB3HA4.js} +73 -27
  101. package/dist/{chunk-PZ4I4JE2.js → chunk-SINK3QR6.js} +135 -125
  102. package/dist/{chunk-5QKCQQ3E.js → chunk-SUW5DORT.js} +2 -2
  103. package/dist/chunk-T56WDKA5.js +183 -0
  104. package/dist/{chunk-ECUO3KDP.js → chunk-TD3PGPQA.js} +87 -26
  105. package/dist/{chunk-HKO36JWF.js → chunk-THYWACCR.js} +31 -3
  106. package/dist/{chunk-LXPJXFM5.js → chunk-TVH4ONAM.js} +18 -12
  107. package/dist/chunk-TVHHYFHE.js +255 -0
  108. package/dist/chunk-U2WB7TZS.js +271 -0
  109. package/dist/{chunk-NNNWO6F2.js → chunk-UAPGZHYC.js} +237 -33
  110. package/dist/{chunk-MIX5N5AC.js → chunk-UEDMSP56.js} +415 -160
  111. package/dist/{chunk-WIE7ZOSW.js → chunk-UXN6JT4W.js} +3 -3
  112. package/dist/{chunk-CMZWFGD2.js → chunk-VAVR4IJY.js} +19 -15
  113. package/dist/{chunk-MV2VUEJC.js → chunk-VEGN6WIQ.js} +2 -2
  114. package/dist/chunk-VKFQTNDV.js +66 -0
  115. package/dist/{chunk-FALJGAWU.js → chunk-VKRH2TCS.js} +2 -2
  116. package/dist/{chunk-A2NJGIB3.js → chunk-VN3SHNBN.js} +2 -2
  117. package/dist/{chunk-XK56QHLX.js → chunk-VPKWYKEY.js} +19 -5
  118. package/dist/{chunk-UOSL25KY.js → chunk-VXMFAE2W.js} +1 -1
  119. package/dist/{chunk-EQ63NRB7.js → chunk-WNP7O5WZ.js} +3 -3
  120. package/dist/chunk-WR6U3OVP.js +45 -0
  121. package/dist/{chunk-TEO2TLVN.js → chunk-XKA2ICR3.js} +1051 -1196
  122. package/dist/{chunk-3V5AYSEQ.js → chunk-Y45G3AXC.js} +72 -65
  123. package/dist/{chunk-J5Q24KAG.js → chunk-Y4CAGMM6.js} +2 -2
  124. package/dist/chunk-YAKGTXEV.js +17 -0
  125. package/dist/{chunk-ZI647VB5.js → chunk-YPI3QQCF.js} +2 -2
  126. package/dist/{chunk-YW7UVM5V.js → chunk-ZAZB4JMW.js} +55 -11
  127. package/dist/{chunk-HCBCAYZU.js → chunk-ZJLUDYFY.js} +11 -11
  128. package/dist/{chunk-HKIYEGME.js → chunk-ZTJUVLTU.js} +2 -2
  129. package/dist/{chunk-IFBNV6H6.js → chunk-ZW55JB7N.js} +3 -3
  130. package/dist/cli/index.js +48 -37
  131. package/dist/clio-IT3G3VQH.js +25 -0
  132. package/dist/{code-nav-LMW275PA.js → code-nav-RK6S7F6E.js} +8 -8
  133. package/dist/codewiki/build-worker.js +1 -1
  134. package/dist/{compile-cache-CVJMMODC.js → compile-cache-OQAVB7Y5.js} +3 -5
  135. package/dist/{components-ZFA3SAER.js → components-UBWCQSRW.js} +6 -6
  136. package/dist/{config-RXS5T3JT.js → config-3QZRWZJF.js} +73 -61
  137. package/dist/configure-FL7Y3KJF.js +54 -0
  138. package/dist/{context-MVOORGMF.js → context-5HE7ODYK.js} +61 -49
  139. package/dist/{context-I3BTOTCS.js → context-KYQFRVDC.js} +11 -11
  140. package/dist/{context-PALKKQYL.js → context-XNHL75JV.js} +43 -28
  141. package/dist/{context-clear-N2WOYZ2K.js → context-clear-N545L53A.js} +60 -48
  142. package/dist/{context-working-set-MIEVECVZ.js → context-working-set-QHKXSV2F.js} +15 -13
  143. package/dist/{dispatch-runner-VVA4SRRH.js → dispatch-runner-RGIE5PCT.js} +109 -72
  144. package/dist/{docs-7LQ23DLM.js → docs-5NAF6AU7.js} +7 -13
  145. package/dist/doctor-ZGPEGHIP.js +772 -0
  146. package/dist/{eval-IJ5VEZDJ.js → eval-GXLL44RD.js} +106 -86
  147. package/dist/eval-inventory-HBWSWQOK.js +315 -0
  148. package/dist/{evidence-L5APPXNV.js → evidence-HWLBRH3Q.js} +209 -51
  149. package/dist/{evolve-RGNKFJ52.js → evolve-FTZBMNVW.js} +57 -45
  150. package/dist/{extensions-7WYWUX5A.js → extensions-VHRBEID7.js} +7 -7
  151. package/dist/{fleet-6CNVBZZP.js → fleet-CKZHJWZJ.js} +215 -114
  152. package/dist/{fleet-commands-L2SXSYEI.js → fleet-commands-EXDXBMV6.js} +13 -12
  153. package/dist/fleet-decisions-OTHB6KRL.js +157 -0
  154. package/dist/{fleet-graph-2J3OOIPO.js → fleet-graph-YTEZUCUT.js} +20 -17
  155. package/dist/fleet-inspect-SS6YMDCK.js +445 -0
  156. package/dist/{fleet-preflight-CZRJ4JP5.js → fleet-preflight-PBY4VYOM.js} +6 -9
  157. package/dist/{fleet-validate-C5RI6DP7.js → fleet-validate-KMEM5L3S.js} +25 -20
  158. package/dist/fleet-verify-QD5M7E7Q.js +178 -0
  159. package/dist/fleet-view-WAMJYNDT.js +94 -0
  160. package/dist/{init-VBN2ACVA.js → init-5XQRBOFV.js} +79 -66
  161. package/dist/install-NKNG7KD4.js +13 -0
  162. package/dist/interop-34TVO25M.js +116 -0
  163. package/dist/{library-JHGUMLY2.js → library-3QY6KF57.js} +25 -21
  164. package/dist/{memory-K4OQIYWG.js → memory-L4UTIIIW.js} +59 -47
  165. package/dist/{models-2NCZUWDD.js → models-ZVX3QOWE.js} +47 -37
  166. package/dist/{monitor-MMVTJABD.js → monitor-CEKVSYTS.js} +67 -57
  167. package/dist/{orchestrator-ZKBPCHW6.js → orchestrator-77BAP6BC.js} +7633 -7699
  168. package/dist/panes-7STHOAUJ.js +103 -0
  169. package/dist/panes-SHAUIRXY.js +60 -0
  170. package/dist/{paths-DBXMZMDU.js → paths-L7LGY6RN.js} +6 -6
  171. package/dist/{reset-DD5JGOY3.js → reset-EOLM7GVE.js} +15 -14
  172. package/dist/resources-74GKTLSF.js +115 -0
  173. package/dist/{run-QEGNX7FL.js → run-HBAUJNNZ.js} +139 -98
  174. package/dist/{share-JKD3BQMW.js → share-G3APVLVP.js} +25 -21
  175. package/dist/{skills-LMQIKDOZ.js → skills-35HHUKCR.js} +37 -27
  176. package/dist/{skills-eval-I7X2774U.js → skills-eval-QN4HSHDC.js} +80 -73
  177. package/dist/skills-inventory-J357J34F.js +129 -0
  178. package/dist/slash-commands-JZZCQA32.js +79 -0
  179. package/dist/{steer-CF5TDANS.js → steer-XAVHJM22.js} +4 -4
  180. package/dist/{support-I7LOJLIF.js → support-U7QOWY26.js} +7 -7
  181. package/dist/{targets-RUSR6B5Z.js → targets-DSM6CY3M.js} +67 -59
  182. package/dist/{terminal-lease-QYVORFR4.js → terminal-lease-JOPFUVEM.js} +15 -10
  183. package/dist/tools-MKNWVPBH.js +29 -0
  184. package/dist/{trace-ODOQIVIW.js → trace-ECQ7TIYZ.js} +194 -7
  185. package/dist/tui-primitives-K5PASC3O.js +17 -0
  186. package/dist/{uninstall-ZJF5H5ZN.js → uninstall-N34PCTGJ.js} +6 -8
  187. package/dist/{upgrade-XANW3FXB.js → upgrade-H7TOM7YL.js} +37 -62
  188. package/dist/{usage-4H7ZRXQT.js → usage-X52N3IDJ.js} +70 -59
  189. package/dist/{verifiers-UZXNBZEB.js → verifiers-EJTVVSMA.js} +174 -14
  190. package/dist/{verify-BVKWTNDL.js → verify-YJL6XET2.js} +12 -11
  191. package/dist/{web-fetch-2YHJ3KTG.js → web-fetch-MPIFL3LL.js} +3 -4
  192. package/dist/{wiki-generate-MY7WV2QI.js → wiki-generate-4NDZTQ4B.js} +86 -75
  193. package/dist/with-panes-OBOBFIIR.js +818 -0
  194. package/dist/worker/entry.js +131 -91
  195. package/docs/README.md +3 -2
  196. package/docs/acp.md +25 -4
  197. package/docs/alcf-provider.md +1 -1
  198. package/docs/architecture.md +2 -2
  199. package/docs/artifact-versions.md +4 -1
  200. package/docs/built-in-agents.md +40 -32
  201. package/docs/capacity-and-scheduling.md +43 -5
  202. package/docs/commands-and-modes.md +39 -4
  203. package/docs/config-knobs-audit.md +3 -0
  204. package/docs/configuration-and-targets.md +138 -167
  205. package/docs/context-engine.md +1 -1
  206. package/docs/development-pipeline.md +19 -0
  207. package/docs/dispatch-typed-intent.md +385 -0
  208. package/docs/documentation-coverage.md +2 -2
  209. package/docs/documentation-guide.md +1 -1
  210. package/docs/environment-variables.md +3 -1
  211. package/docs/eval-runner.md +1 -1
  212. package/docs/evals-internal.md +1 -1
  213. package/docs/evidence-and-memory.md +2 -2
  214. package/docs/evolution.md +1 -1
  215. package/docs/exit-codes-and-output.md +3 -1
  216. package/docs/extensions-and-sharing.md +25 -1
  217. package/docs/fleet-demo-runbook.md +6 -3
  218. package/docs/fleet-dispatch.md +30 -7
  219. package/docs/installation-and-lifecycle.md +16 -3
  220. package/docs/middleware-and-components.md +1 -1
  221. package/docs/model-catalog.md +10 -1
  222. package/docs/observability.md +3 -3
  223. package/docs/proactive-memory.md +1 -1
  224. package/docs/prompt-envelope-and-tools.md +1 -1
  225. package/docs/provider-adapter-cookbook.md +1 -1
  226. package/docs/release-cut-checklist.md +164 -177
  227. package/docs/safety-model.md +2 -2
  228. package/docs/scientific-validation.md +3 -3
  229. package/docs/session-lifecycle.md +1 -1
  230. package/docs/skills-marketplace.md +1 -1
  231. package/docs/tool-usage.md +18 -8
  232. package/docs/trace-store.md +16 -11
  233. package/docs/troubleshooting.md +2 -2
  234. package/docs/tui-design.md +1 -1
  235. package/docs/worker-dispatch-mechanics.md +1 -1
  236. package/evals/README.md +5 -0
  237. package/evals/behavioral-corpus-grader.mjs +103 -0
  238. package/evals/behavioral-machinery-baseline.json +2276 -0
  239. package/evals/behavioral-machinery-driver.ts +250 -0
  240. package/evals/behavioral-machinery-support.ts +253 -0
  241. package/evals/behavioral-machinery.yaml +614 -0
  242. package/evals/behavioral-model-negative-control.yaml +68 -0
  243. package/evals/behavioral-model.yaml +216 -0
  244. package/evals/fixtures/behavioral-facts.txt +3 -0
  245. package/evals/fixtures/behavioral-main.ts +7 -0
  246. package/evals/fixtures/decoy/note.txt +2 -0
  247. package/evals/fixtures/private/credentials.txt +1 -0
  248. package/evals/tracked-metrics-baseline.yaml +229 -0
  249. package/evals/tracked-metrics-grader.mjs +129 -0
  250. package/package.json +8 -16
  251. package/skills/README.md +6 -6
  252. package/skills/coding/ast-grep/SKILL.md +8 -2
  253. package/skills/coding/coding-standards/SKILL.md +8 -2
  254. package/skills/coding/prototype/SKILL.md +8 -2
  255. package/skills/coding/tdd/SKILL.md +8 -2
  256. package/skills/context/context-handoff/SKILL.md +12 -3
  257. package/skills/context/context-handoff/evals.md +3 -3
  258. package/skills/context/context-prime/SKILL.md +8 -2
  259. package/skills/context/context-prime/evals.md +2 -2
  260. package/skills/git/file-ticket/SKILL.md +9 -4
  261. package/skills/git/file-ticket/evals.md +2 -2
  262. package/skills/git/fix-issue/SKILL.md +12 -5
  263. package/skills/git/fix-issue/evals.md +4 -4
  264. package/skills/git/resolve-merge-conflicts/SKILL.md +8 -2
  265. package/skills/git/resolve-merge-conflicts/evals.md +2 -2
  266. package/skills/git/ship/SKILL.md +9 -3
  267. package/skills/git/ship/evals.md +4 -4
  268. package/skills/git/worktree-create/SKILL.md +7 -2
  269. package/skills/git/worktree-create/evals.md +6 -6
  270. package/skills/git/worktree-merge/SKILL.md +7 -2
  271. package/skills/git/worktree-merge/evals.md +6 -6
  272. package/skills/meta/{clio-dev → clio-coder-dev}/SKILL.md +14 -8
  273. package/skills/meta/{clio-dev → clio-coder-dev}/evals.md +3 -3
  274. package/skills/meta/{clio-test → clio-coder-test}/SKILL.md +11 -5
  275. package/skills/meta/{clio-test → clio-coder-test}/evals.md +1 -1
  276. package/skills/meta/credentials/SKILL.md +9 -2
  277. package/skills/meta/find-skills/SKILL.md +8 -2
  278. package/skills/meta/herdr/SKILL.md +8 -2
  279. package/skills/meta/skill-craft/SKILL.md +21 -4
  280. package/skills/planning/architecture/SKILL.md +9 -3
  281. package/skills/planning/backlog/SKILL.md +8 -2
  282. package/skills/planning/prd/SKILL.md +8 -2
  283. package/skills/planning/product-intent/SKILL.md +8 -2
  284. package/skills/planning/tech-spec/SKILL.md +9 -3
  285. package/skills/registry.yaml +66 -66
  286. package/skills/research/arxiv-literature/SKILL.md +8 -2
  287. package/skills/research/experiment-protocol/SKILL.md +9 -2
  288. package/skills/research/scientific-debugging/SKILL.md +9 -2
  289. package/skills/research/scientific-debugging/evals.md +2 -2
  290. package/skills/research/scientific-modernization/SKILL.md +9 -2
  291. package/skills/skill-marketplace.json +257 -38
  292. package/skills/workflow/cut-it/SKILL.md +10 -2
  293. package/skills/workflow/design-council/SKILL.md +11 -2
  294. package/skills/workflow/grill-me/SKILL.md +8 -2
  295. package/skills/workflow/workflow-distiller/SKILL.md +8 -2
  296. package/src/cli/acp.ts +8 -4
  297. package/src/cli/argv.ts +25 -0
  298. package/src/cli/auth.ts +2 -2
  299. package/src/cli/bootstrap-generate.ts +5 -5
  300. package/src/cli/clio.ts +6 -1
  301. package/src/cli/config-inspect.ts +3 -3
  302. package/src/cli/configure-interop.ts +1 -1
  303. package/src/cli/configure.ts +50 -48
  304. package/src/cli/default-target.ts +1 -1
  305. package/src/cli/docs.ts +6 -6
  306. package/src/cli/doctor-naming.ts +323 -0
  307. package/src/cli/doctor-panes.ts +156 -0
  308. package/src/cli/doctor-toolchain.ts +78 -0
  309. package/src/cli/doctor.ts +34 -1
  310. package/src/cli/eval-inventory.ts +436 -0
  311. package/src/cli/eval.ts +13 -0
  312. package/src/cli/evidence-detail.ts +88 -0
  313. package/src/cli/evidence-inventory.ts +183 -0
  314. package/src/cli/evidence.ts +30 -5
  315. package/src/cli/fleet-decisions.ts +69 -0
  316. package/src/cli/fleet-inspect.ts +334 -0
  317. package/src/cli/fleet-preflight.ts +1 -1
  318. package/src/cli/fleet-verify.ts +133 -0
  319. package/src/cli/fleet-view.ts +827 -0
  320. package/src/cli/fleet.ts +154 -40
  321. package/src/cli/index.ts +14 -2
  322. package/src/cli/interop-inspect.ts +128 -0
  323. package/src/cli/interop.ts +34 -0
  324. package/src/cli/models.ts +3 -3
  325. package/src/cli/modes/print.ts +1 -1
  326. package/src/cli/panes.ts +35 -0
  327. package/src/cli/reset.ts +6 -3
  328. package/src/cli/run.ts +67 -13
  329. package/src/cli/share.ts +1 -1
  330. package/src/cli/skills-eval.ts +11 -11
  331. package/src/cli/skills-inventory.ts +185 -0
  332. package/src/cli/skills.ts +16 -13
  333. package/src/cli/targets.ts +23 -24
  334. package/src/cli/tools.ts +321 -0
  335. package/src/cli/trace-inspect.ts +252 -0
  336. package/src/cli/trace.ts +64 -2
  337. package/src/cli/uninstall.ts +2 -2
  338. package/src/cli/upgrade.ts +29 -34
  339. package/src/cli/usage.ts +2 -2
  340. package/src/cli/validate-model.ts +1 -1
  341. package/src/cli/verifiers-inspect.ts +347 -0
  342. package/src/cli/verifiers.ts +9 -0
  343. package/src/cli/wiki-generate.ts +5 -5
  344. package/src/core/bash-exec.ts +1 -1
  345. package/src/core/boot-trace.ts +3 -3
  346. package/src/core/bus-events.ts +4 -0
  347. package/src/core/bus-trace.ts +2 -2
  348. package/src/core/compile-cache.ts +1 -1
  349. package/src/core/config.ts +1070 -845
  350. package/src/core/defaults.ts +342 -463
  351. package/src/core/domain-loader.ts +6 -4
  352. package/src/core/event-bus.ts +1 -1
  353. package/src/core/file-references.ts +78 -88
  354. package/src/core/git-commit-attribution.ts +3 -9
  355. package/src/core/guardrails.ts +24 -4
  356. package/src/core/naming-compat.ts +45 -0
  357. package/src/core/naming-events.ts +62 -0
  358. package/src/core/recent-models.ts +1 -7
  359. package/src/core/residency-protection.ts +4 -8
  360. package/src/core/resolve-config-value.ts +1 -1
  361. package/src/core/response-model-id.ts +0 -14
  362. package/src/core/response-schema.ts +44 -4
  363. package/src/core/session-routing.ts +84 -74
  364. package/src/core/skill-activation.ts +18 -0
  365. package/src/core/termination.ts +4 -4
  366. package/src/core/theme-token-hex.ts +43 -0
  367. package/src/core/timers.ts +2 -12
  368. package/src/core/tool-names.ts +2 -1
  369. package/src/core/xdg.ts +1 -1
  370. package/src/domains/agents/catalog.ts +2 -12
  371. package/src/domains/agents/extension.ts +3 -3
  372. package/src/domains/agents/fleets/build-review.md +0 -3
  373. package/src/domains/agents/fleets/build-test.md +0 -3
  374. package/src/domains/agents/registry.ts +7 -7
  375. package/src/domains/agents/result-contract-filesystem.ts +32 -0
  376. package/src/domains/agents/result-contract.ts +165 -36
  377. package/src/domains/agents/spec.ts +0 -11
  378. package/src/domains/config/classify.ts +37 -46
  379. package/src/domains/config/extension.ts +5 -5
  380. package/src/domains/config/keybindings.ts +48 -47
  381. package/src/domains/config/watcher.ts +1 -1
  382. package/src/domains/context/codewiki/indexer.ts +1 -1
  383. package/src/domains/context/extension.ts +3 -3
  384. package/src/domains/context/prompt-context.ts +1 -1
  385. package/src/domains/context/wiki/assemble.ts +2 -2
  386. package/src/domains/context/working-set/replay/metrics.ts +0 -4
  387. package/src/domains/context/working-set/replay/report.ts +1 -1
  388. package/src/domains/context/working-set/replay/synthetic.ts +2 -2
  389. package/src/domains/dispatch/active-route-planner.ts +2 -2
  390. package/src/domains/dispatch/admission-error.ts +9 -0
  391. package/src/domains/dispatch/admission.ts +22 -21
  392. package/src/domains/dispatch/agent-candidates.ts +1 -1
  393. package/src/domains/dispatch/agent-ledger-store.ts +1 -1
  394. package/src/domains/dispatch/agent-ledger.ts +1 -1
  395. package/src/domains/dispatch/assignment.ts +5 -5
  396. package/src/domains/dispatch/capacity-lease.ts +23 -6
  397. package/src/domains/dispatch/code-step.ts +1 -1
  398. package/src/domains/dispatch/contract.ts +2 -2
  399. package/src/domains/dispatch/council-topology.ts +398 -0
  400. package/src/domains/dispatch/extension.ts +287 -111
  401. package/src/domains/dispatch/fleet-node-prompt.ts +62 -0
  402. package/src/domains/dispatch/fleet-plan.ts +7 -2
  403. package/src/domains/dispatch/fleet-preflight.ts +8 -17
  404. package/src/domains/dispatch/fleet-run.ts +59 -3
  405. package/src/domains/dispatch/gate-decisions.ts +36 -15
  406. package/src/domains/dispatch/gate-role-prompts.ts +9 -0
  407. package/src/domains/dispatch/gate-topology.ts +289 -0
  408. package/src/domains/dispatch/index.ts +19 -0
  409. package/src/domains/dispatch/intent-compatibility.ts +330 -0
  410. package/src/domains/dispatch/intent.ts +85 -1
  411. package/src/domains/dispatch/joint-route-resolver.ts +1 -1
  412. package/src/domains/dispatch/path-scope.ts +0 -61
  413. package/src/domains/dispatch/placement.ts +2 -2
  414. package/src/domains/dispatch/receipt-findings.ts +1 -1
  415. package/src/domains/dispatch/receipt-integrity.ts +20 -8
  416. package/src/domains/dispatch/reservation-store.ts +24 -27
  417. package/src/domains/dispatch/route-decision.ts +1 -1
  418. package/src/domains/dispatch/route-history.ts +1 -1
  419. package/src/domains/dispatch/route-policy.ts +1 -1
  420. package/src/domains/dispatch/route-readiness.ts +0 -28
  421. package/src/domains/dispatch/run-event-journal-bridge.ts +149 -0
  422. package/src/domains/dispatch/run-event-journal.ts +599 -0
  423. package/src/domains/dispatch/state.ts +45 -1
  424. package/src/domains/dispatch/tool-stats.ts +1 -1
  425. package/src/domains/dispatch/transport.ts +2 -19
  426. package/src/domains/dispatch/types.ts +16 -3
  427. package/src/domains/dispatch/validation.ts +33 -8
  428. package/src/domains/dispatch/worker-protocol.ts +2 -2
  429. package/src/domains/eval/artifacts/store.ts +5 -4
  430. package/src/domains/eval/compare/compare.ts +3 -16
  431. package/src/domains/eval/compare/thresholds.ts +0 -8
  432. package/src/domains/eval/execution-provenance.ts +1 -1
  433. package/src/domains/eval/inventory.ts +113 -0
  434. package/src/domains/eval/metrics/token-stream.ts +0 -7
  435. package/src/domains/eval/report.ts +1 -1
  436. package/src/domains/eval/runner.ts +1 -1
  437. package/src/domains/eval/runners/clio-run.ts +7 -6
  438. package/src/domains/eval/runners/external-command.ts +4 -3
  439. package/src/domains/eval/schema/artifact.ts +1 -1
  440. package/src/domains/eval/schema/behavioral-metrics.ts +3 -2
  441. package/src/domains/eval/schema/behavioral.ts +7 -6
  442. package/src/domains/eval/schema/execution-envelope.ts +4 -2
  443. package/src/domains/eval/schema/naming.ts +10 -0
  444. package/src/domains/eval/schema/serving.ts +31 -0
  445. package/src/domains/eval/schema/suite.ts +2 -2
  446. package/src/domains/eval/schema/validate.ts +9 -5
  447. package/src/domains/eval/schema/verdict.ts +4 -2
  448. package/src/domains/eval/store.ts +12 -2
  449. package/src/domains/eval/suites/run.ts +12 -6
  450. package/src/domains/eval/types.ts +1 -1
  451. package/src/domains/eval/workspaces/git.ts +1 -1
  452. package/src/domains/eval/workspaces/temp-copy.ts +1 -1
  453. package/src/domains/evidence/build.ts +13 -5
  454. package/src/domains/evidence/store.ts +6 -0
  455. package/src/domains/interop/consent.ts +7 -7
  456. package/src/domains/interop/extension.ts +1 -1
  457. package/src/domains/lifecycle/doctor.ts +27 -21
  458. package/src/domains/lifecycle/migrations/2026-09-01-clio-coder-naming.ts +155 -0
  459. package/src/domains/lifecycle/migrations/2026-09-01-retire-panes-knobs.ts +59 -0
  460. package/src/domains/lifecycle/migrations/2026-09-01-settings-v2.ts +338 -0
  461. package/src/domains/lifecycle/migrations/index.ts +20 -1
  462. package/src/domains/lifecycle/naming-history.ts +153 -0
  463. package/src/domains/lifecycle/naming-mutable-state.ts +104 -0
  464. package/src/domains/lifecycle/naming-resources.ts +261 -0
  465. package/src/domains/lifecycle/naming-tool-markers.ts +139 -0
  466. package/src/domains/lifecycle/naming-yazi.ts +81 -0
  467. package/src/domains/lifecycle/upgrade-notice.ts +1 -1
  468. package/src/domains/memory/index.ts +0 -1
  469. package/src/domains/memory/task-memory-handoff.ts +6 -3
  470. package/src/domains/memory/task-memory-policy.ts +6 -10
  471. package/src/domains/memory/task-memory-telemetry.ts +1 -0
  472. package/src/domains/middleware/index.ts +7 -0
  473. package/src/domains/middleware/marketplace-offer.ts +339 -0
  474. package/src/domains/middleware/memory-intervention.ts +33 -21
  475. package/src/domains/middleware/runtime.ts +2 -2
  476. package/src/domains/mux/contract.ts +566 -0
  477. package/src/domains/mux/detect.ts +182 -0
  478. package/src/domains/mux/dock-controller.ts +365 -0
  479. package/src/domains/mux/extension.ts +53 -0
  480. package/src/domains/mux/index.ts +116 -0
  481. package/src/domains/mux/manifest.ts +6 -0
  482. package/src/domains/mux/operations.ts +192 -0
  483. package/src/domains/mux/pane-registry.ts +90 -0
  484. package/src/domains/mux/protocol.ts +62 -0
  485. package/src/domains/mux/socket-client.ts +964 -0
  486. package/src/domains/mux/types.ts +265 -0
  487. package/src/domains/mux/viewer-command.ts +59 -0
  488. package/src/domains/mux/yazi/assets/init.lua +2 -0
  489. package/src/domains/mux/yazi/assets/plugins/git.yazi/LICENSE +21 -0
  490. package/src/domains/mux/yazi/assets/plugins/git.yazi/README.md +78 -0
  491. package/src/domains/mux/yazi/assets/plugins/git.yazi/main.lua +255 -0
  492. package/src/domains/mux/yazi/assets/plugins/git.yazi/types.lua +12 -0
  493. package/src/domains/mux/yazi/assets/yazi.toml +17 -0
  494. package/src/domains/mux/yazi/event-stream.ts +182 -0
  495. package/src/domains/mux/yazi/profile.ts +299 -0
  496. package/src/domains/mux/yazi/session.ts +251 -0
  497. package/src/domains/mux/yazi/theme.ts +30 -0
  498. package/src/domains/observability/cost.ts +21 -0
  499. package/src/domains/observability/extension.ts +1 -1
  500. package/src/domains/observability/index.ts +2 -0
  501. package/src/domains/observability/out-of-turn-usage.ts +2 -2
  502. package/src/domains/observability/projection.ts +1 -1
  503. package/src/domains/observability/trace-store.ts +63 -11
  504. package/src/domains/prompts/compiler.ts +2 -2
  505. package/src/domains/prompts/extension.ts +3 -3
  506. package/src/domains/prompts/fragments/identity/clio-worker.md +1 -1
  507. package/src/domains/prompts/fragments/operating/skills.md +25 -18
  508. package/src/domains/providers/endpoint-capacity.ts +154 -22
  509. package/src/domains/providers/endpoint-slots-store.ts +189 -0
  510. package/src/domains/providers/extension.ts +25 -8
  511. package/src/domains/providers/index.ts +22 -0
  512. package/src/domains/providers/knowledge-base-path.ts +1 -1
  513. package/src/domains/providers/model-runtime-capabilities.ts +46 -2
  514. package/src/domains/providers/models/cloud-models/alcf.yaml +1 -1
  515. package/src/domains/providers/models/local-models/{clio-local-coding-targets.yaml → clio-coder-local-coding-targets.yaml} +4 -4
  516. package/src/domains/providers/plugins.ts +1 -1
  517. package/src/domains/providers/resolver.ts +1 -1
  518. package/src/domains/providers/runtimes/boot-manifest.ts +1 -0
  519. package/src/domains/providers/runtimes/builtins.ts +2 -0
  520. package/src/domains/providers/runtimes/cloud/alcf.ts +4 -4
  521. package/src/domains/providers/runtimes/common/lmstudio-http.ts +1 -5
  522. package/src/domains/providers/runtimes/common/local-synth.ts +3 -3
  523. package/src/domains/providers/runtimes/common/probe-helpers.ts +2 -2
  524. package/src/domains/providers/runtimes/local-native/llamacpp-completion.ts +1 -1
  525. package/src/domains/providers/runtimes/local-native/lmstudio.ts +2 -9
  526. package/src/domains/providers/runtimes/protocol/litellm.ts +285 -0
  527. package/src/domains/providers/support.ts +1 -0
  528. package/src/domains/providers/target-model-cache.ts +124 -0
  529. package/src/domains/providers/types/knowledge-base.ts +13 -0
  530. package/src/domains/providers/types/local-model-quirks.ts +2 -2
  531. package/src/domains/providers/types/target-descriptor.ts +3 -3
  532. package/src/domains/resources/extension.ts +1 -1
  533. package/src/domains/resources/index.ts +3 -0
  534. package/src/domains/resources/library.ts +6 -6
  535. package/src/domains/resources/prompts/loader.ts +1 -1
  536. package/src/domains/resources/skills/content-hash.ts +7 -6
  537. package/src/domains/resources/skills/evals.ts +1 -1
  538. package/src/domains/resources/skills/install.ts +36 -12
  539. package/src/domains/resources/skills/loader.ts +72 -13
  540. package/src/domains/resources/skills/marketplace.ts +21 -2
  541. package/src/domains/resources/skills/promotion.ts +214 -0
  542. package/src/domains/safety/action-classifier.ts +6 -0
  543. package/src/domains/safety/audit.ts +2 -2
  544. package/src/domains/safety/finish-contract.ts +2 -1
  545. package/src/domains/safety/run-effects.ts +1 -1
  546. package/src/domains/scheduling/extension.ts +4 -4
  547. package/src/domains/session/archive-readers.ts +9 -1
  548. package/src/domains/session/compaction/branch-summary.ts +4 -0
  549. package/src/domains/session/compaction/compact.ts +1 -1
  550. package/src/domains/session/compaction/tokens.ts +4 -0
  551. package/src/domains/session/context-accounting.ts +1 -1
  552. package/src/domains/session/decision-board.ts +1 -1
  553. package/src/domains/session/extension.ts +1 -1
  554. package/src/domains/session/handoff.ts +2 -2
  555. package/src/domains/session/prompt-manifest.ts +0 -5
  556. package/src/domains/session/protected-artifact-journal.ts +12 -6
  557. package/src/domains/session/retry.ts +1 -1
  558. package/src/domains/share/archive.ts +85 -36
  559. package/src/domains/toolchain/archive.ts +175 -0
  560. package/src/domains/toolchain/contract.ts +28 -0
  561. package/src/domains/toolchain/extension.ts +47 -0
  562. package/src/domains/toolchain/index.ts +39 -0
  563. package/src/domains/toolchain/install.ts +327 -0
  564. package/src/domains/toolchain/manifest.ts +8 -0
  565. package/src/domains/toolchain/paths.ts +34 -0
  566. package/src/domains/toolchain/registry.ts +265 -0
  567. package/src/domains/toolchain/remove.ts +218 -0
  568. package/src/domains/toolchain/resolve.ts +182 -0
  569. package/src/domains/toolchain/types.ts +113 -0
  570. package/src/domains/toolchain/version.ts +88 -0
  571. package/src/engine/acp/adapter.ts +3 -3
  572. package/src/engine/acp/event-mapper.ts +3 -3
  573. package/src/engine/acp/server.ts +440 -96
  574. package/src/engine/acp/tool-mediator.ts +2 -2
  575. package/src/engine/acp/types.ts +20 -2
  576. package/src/engine/alcf-oauth.ts +5 -5
  577. package/src/engine/antigravity/subprocess-runtime.ts +2 -2
  578. package/src/engine/api-registry.ts +1 -1
  579. package/src/engine/apis/llamacpp-residency.ts +1 -19
  580. package/src/engine/apis/lmstudio.ts +1 -6
  581. package/src/engine/apis/ollama-native.ts +3 -3
  582. package/src/engine/apis/openai-completions.ts +2 -2
  583. package/src/engine/apis/residency.ts +3 -9
  584. package/src/engine/claude/sdk-module.ts +87 -0
  585. package/src/engine/claude/sdk-runtime.ts +25 -17
  586. package/src/engine/claude/subprocess-runtime.ts +1 -1
  587. package/src/engine/claude/tool-safety.ts +4 -4
  588. package/src/engine/loop-guard.ts +0 -5
  589. package/src/engine/session.ts +14 -7
  590. package/src/engine/tui-primitives.ts +21 -0
  591. package/src/engine/tui.ts +1 -0
  592. package/src/engine/worker-events.ts +6 -6
  593. package/src/engine/worker-runtime.ts +16 -26
  594. package/src/entry/boot-options.ts +2 -0
  595. package/src/entry/orchestrator.ts +207 -90
  596. package/src/entry/panes-activation.ts +31 -0
  597. package/src/entry/with-panes.ts +20 -0
  598. package/src/interactive/application-controller.ts +21 -21
  599. package/src/interactive/bus-notices.ts +2 -2
  600. package/src/interactive/chat-loop.ts +8 -8
  601. package/src/interactive/chat-panel.ts +1 -1
  602. package/src/interactive/clio-editor.ts +105 -1
  603. package/src/interactive/context-activity.ts +8 -6
  604. package/src/interactive/context-meter.ts +3 -6
  605. package/src/interactive/context-overlay.ts +2 -1
  606. package/src/interactive/cost-overlay.ts +3 -1
  607. package/src/interactive/council-grid.ts +3 -5
  608. package/src/interactive/council.ts +11 -0
  609. package/src/interactive/dispatch-board.ts +56 -49
  610. package/src/interactive/editor-bash.ts +21 -0
  611. package/src/interactive/editor-steer.ts +9 -4
  612. package/src/interactive/editor-submit.ts +24 -18
  613. package/src/interactive/external-editor.ts +1 -1
  614. package/src/interactive/file-reference-completion.ts +360 -0
  615. package/src/interactive/footer/dashboard.ts +15 -17
  616. package/src/interactive/footer/notifications.ts +14 -8
  617. package/src/interactive/footer/widgets.ts +2 -44
  618. package/src/interactive/interactive-application.ts +229 -62
  619. package/src/interactive/interactive-event-projection.ts +1 -1
  620. package/src/interactive/interactive-input-runtime.ts +9 -2
  621. package/src/interactive/interactive-presentation.ts +21 -16
  622. package/src/interactive/interactive-shell.ts +2 -2
  623. package/src/interactive/interactive-slash-runtime.ts +99 -23
  624. package/src/interactive/interactive-subscriptions.ts +1 -1
  625. package/src/interactive/interactive-tickers.ts +1 -1
  626. package/src/interactive/keybinding-manager.ts +4 -4
  627. package/src/interactive/layout.ts +1 -1
  628. package/src/interactive/memory-overlay.ts +3 -2
  629. package/src/interactive/modal-marker.ts +151 -0
  630. package/src/interactive/mutation-preview.ts +1 -1
  631. package/src/interactive/mux-bridge.ts +214 -0
  632. package/src/interactive/overlay-frame.ts +62 -14
  633. package/src/interactive/overlay-general-openers.ts +7 -2
  634. package/src/interactive/overlay-key-routing.ts +21 -10
  635. package/src/interactive/overlay-lifecycle.ts +20 -4
  636. package/src/interactive/overlay-model-selectors.ts +43 -6
  637. package/src/interactive/overlay-permission-lifecycle.ts +90 -22
  638. package/src/interactive/overlay-transitions.ts +18 -4
  639. package/src/interactive/overlays/agents.ts +3 -2
  640. package/src/interactive/overlays/ask-user.ts +161 -41
  641. package/src/interactive/overlays/auth-dialog.ts +1 -0
  642. package/src/interactive/overlays/context-reset.ts +29 -4
  643. package/src/interactive/overlays/cwd-fallback.ts +29 -4
  644. package/src/interactive/overlays/decisions.ts +15 -13
  645. package/src/interactive/overlays/extensions.ts +1 -0
  646. package/src/interactive/overlays/fleet-run-approval.ts +4 -3
  647. package/src/interactive/overlays/handoff-review.ts +3 -2
  648. package/src/interactive/overlays/help-reference.ts +2 -0
  649. package/src/interactive/overlays/interop.ts +2 -1
  650. package/src/interactive/overlays/library-install-confirm.ts +2 -1
  651. package/src/interactive/overlays/library-tabs.ts +28 -0
  652. package/src/interactive/overlays/list-overlay.ts +10 -1
  653. package/src/interactive/overlays/message-picker.ts +2 -1
  654. package/src/interactive/overlays/model-scope.ts +86 -0
  655. package/src/interactive/overlays/model-selector.ts +40 -31
  656. package/src/interactive/overlays/prompts.ts +11 -4
  657. package/src/interactive/overlays/session-selector.ts +3 -2
  658. package/src/interactive/overlays/settings-sections.ts +30 -0
  659. package/src/interactive/overlays/settings.ts +849 -268
  660. package/src/interactive/overlays/side-question.ts +3 -2
  661. package/src/interactive/overlays/skills-hub.ts +11 -19
  662. package/src/interactive/overlays/tree-selector.ts +3 -2
  663. package/src/interactive/pane-policy.ts +46 -0
  664. package/src/interactive/panes-runtime.ts +318 -0
  665. package/src/interactive/permission-overlay.ts +2 -2
  666. package/src/interactive/renderers/compaction-summary.ts +29 -0
  667. package/src/interactive/renderers/retry-status.ts +12 -4
  668. package/src/interactive/renderers/tool-execution.ts +4 -4
  669. package/src/interactive/renderers/worker-entry.ts +122 -14
  670. package/src/interactive/session-transcript.ts +3 -3
  671. package/src/interactive/slash-autocomplete.ts +454 -165
  672. package/src/interactive/slash-commands.ts +521 -189
  673. package/src/interactive/slash-spec.ts +160 -17
  674. package/src/interactive/status/controller.ts +2 -2
  675. package/src/interactive/stream-pacing-policy.ts +1 -1
  676. package/src/interactive/tasks-overlay.ts +21 -13
  677. package/src/interactive/terminal-lease.ts +6 -7
  678. package/src/interactive/theme/tokens.ts +3 -14
  679. package/src/interactive/turn-context.ts +58 -13
  680. package/src/interactive/turn-persistence.ts +2 -2
  681. package/src/interactive/turn-prewarm.ts +2 -2
  682. package/src/interactive/turn-runtime.ts +8 -8
  683. package/src/interactive/turn-state.ts +1 -1
  684. package/src/interactive/view/artifacts.ts +120 -9
  685. package/src/interactive/view/view-overlay.ts +14 -10
  686. package/src/interactive/watch-pane.ts +180 -0
  687. package/src/interactive/welcome-dashboard.ts +15 -15
  688. package/src/interactive/worker-progress.ts +11 -5
  689. package/src/interactive/worker-receipts.ts +20 -2
  690. package/src/interactive/worker-stream.ts +6 -4
  691. package/src/interactive/yazi-bridge.ts +451 -0
  692. package/src/tools/ask-user.ts +3 -3
  693. package/src/tools/bash.ts +1 -1
  694. package/src/tools/bootstrap.ts +26 -2
  695. package/src/tools/builtin-tool-catalog.ts +16 -1
  696. package/src/tools/compete-worktrees.ts +108 -17
  697. package/src/tools/context/index.ts +15 -1
  698. package/src/tools/core-bootstrap.ts +2 -1
  699. package/src/tools/dispatch-admission.ts +18 -5
  700. package/src/tools/dispatch-arguments.ts +21 -21
  701. package/src/tools/dispatch-plan.ts +0 -11
  702. package/src/tools/dispatch-run-events.ts +145 -28
  703. package/src/tools/dispatch-runner.ts +40 -13
  704. package/src/tools/dispatch-types.ts +15 -3
  705. package/src/tools/dispatch.ts +2 -2
  706. package/src/tools/executables.ts +17 -14
  707. package/src/tools/find.ts +1 -6
  708. package/src/tools/monitor.ts +4 -4
  709. package/src/tools/observation.ts +54 -4
  710. package/src/tools/observers.ts +0 -33
  711. package/src/tools/panes-surface.ts +38 -0
  712. package/src/tools/panes.ts +112 -0
  713. package/src/tools/policy.ts +10 -1
  714. package/src/tools/presentation.ts +1 -0
  715. package/src/tools/task-worktree.ts +28 -7
  716. package/src/tools/verify/authoring.ts +3 -6
  717. package/src/tools/verify/frontend.ts +1 -1
  718. package/src/tools/web-fetch.ts +1 -1
  719. package/src/worker/entry.ts +4 -3
  720. package/src/worker/protocol.ts +16 -14
  721. package/src/worker/spec-contract.ts +2 -2
  722. package/src/worker/stdin-demux.ts +2 -2
  723. package/dist/chunk-D73KXYPF.js +0 -37
  724. package/dist/chunk-MLOK6ZOS.js +0 -2888
  725. package/dist/chunk-PNY46YEY.js +0 -1581
  726. package/dist/chunk-XDOQXGFO.js +0 -515
  727. package/dist/chunk-YKOFT37S.js +0 -279
  728. package/dist/clio-LT5V7SSZ.js +0 -26
  729. package/dist/configure-2WYWSCSD.js +0 -49
  730. package/dist/doctor-TWBWFK5V.js +0 -165
  731. package/src/engine/apis/degraded-inference.ts +0 -95
  732. /package/skills/meta/{clio-test → clio-coder-test}/references/harness.md +0 -0
  733. /package/skills/meta/{clio-test → clio-coder-test}/references/test-map.md +0 -0
@@ -2,69 +2,87 @@ import { createRequire as __clioCreateRequire } from "node:module"; const requir
2
2
  import {
3
3
  SchedulingDomainModule,
4
4
  createPromptsDomainModule
5
- } from "./chunk-3UUY7R3Z.js";
5
+ } from "./chunk-R32CLGZ6.js";
6
6
  import {
7
7
  SafetyDomainModule
8
- } from "./chunk-WXCJ7VME.js";
8
+ } from "./chunk-AKB4GYDL.js";
9
9
  import {
10
10
  LifecycleDomainModule
11
- } from "./chunk-DG4M6ZUE.js";
11
+ } from "./chunk-VKFQTNDV.js";
12
+ import "./chunk-6HMJX2VU.js";
13
+ import "./chunk-OJTRZGR3.js";
12
14
  import {
13
15
  ensureClioState
14
- } from "./chunk-T3Z6VAAF.js";
16
+ } from "./chunk-QTFGO774.js";
17
+ import "./chunk-AP73CFDC.js";
15
18
  import {
16
19
  ConfigDomainModule,
17
20
  loadDomains
18
- } from "./chunk-465CC7FK.js";
19
- import {
20
- ResourcesDomainModule
21
- } from "./chunk-PZ4I4JE2.js";
22
- import {
23
- AgentsDomainModule
24
- } from "./chunk-YSEHGPCT.js";
25
- import "./chunk-HCBCAYZU.js";
26
- import "./chunk-DR52UMZW.js";
27
- import "./chunk-AD7Y7STJ.js";
28
- import "./chunk-AMKHQW3C.js";
21
+ } from "./chunk-2NM363SV.js";
22
+ import "./chunk-J5LZHVIT.js";
23
+ import "./chunk-VKRH2TCS.js";
29
24
  import {
30
25
  ObservabilityDomainModule
31
- } from "./chunk-5PVQ4SRS.js";
32
- import "./chunk-FWDFM5ZU.js";
33
- import "./chunk-YW7UVM5V.js";
34
- import "./chunk-FALJGAWU.js";
35
- import "./chunk-BVDVID7E.js";
26
+ } from "./chunk-E67WX76H.js";
27
+ import "./chunk-AK5XEFVZ.js";
28
+ import "./chunk-ZAZB4JMW.js";
29
+ import "./chunk-6FN3E6KX.js";
36
30
  import {
37
31
  ContextDomainModule
38
- } from "./chunk-HJB5IUKP.js";
32
+ } from "./chunk-C537JADH.js";
33
+ import "./chunk-3QSOM6PA.js";
34
+ import "./chunk-74YWRRU5.js";
39
35
  import "./chunk-LCGCVYZ4.js";
40
- import "./chunk-47CMYGET.js";
41
- import "./chunk-5T7RBWN2.js";
42
36
  import "./chunk-NDINPTJ4.js";
43
37
  import "./chunk-MXHC5QYU.js";
44
38
  import {
45
- DispatchDomainModule,
39
+ aggregateCostAmounts,
46
40
  capacityDrain,
41
+ createDispatchDomainModule,
47
42
  executeFleetRun,
48
43
  openLedger,
49
44
  planFleetResume,
50
45
  readFleetRun,
46
+ renderCostAggregate,
47
+ renderCostAmount,
51
48
  setCapacityDraining
52
- } from "./chunk-TEO2TLVN.js";
53
- import "./chunk-MLOK6ZOS.js";
49
+ } from "./chunk-XKA2ICR3.js";
50
+ import "./chunk-GPPB3JBE.js";
51
+ import "./chunk-6NJQITNH.js";
54
52
  import {
55
53
  SessionDomainModule
56
- } from "./chunk-LXPJXFM5.js";
54
+ } from "./chunk-TVH4ONAM.js";
57
55
  import {
58
56
  WRITE_BOUNDARY_VIOLATION_REASON,
59
57
  preflightWriteBoundaries
60
- } from "./chunk-ECUO3KDP.js";
58
+ } from "./chunk-TD3PGPQA.js";
61
59
  import {
62
60
  bindExecutionPlanEndpoints,
63
61
  compileFleetExecutionPlan
64
- } from "./chunk-HKO36JWF.js";
62
+ } from "./chunk-THYWACCR.js";
65
63
  import "./chunk-RVG5JXAL.js";
66
64
  import "./chunk-3DPEIQKN.js";
65
+ import "./chunk-6CCS4G3W.js";
66
+ import {
67
+ configureRunEventJournal
68
+ } from "./chunk-6VC4OV3Z.js";
69
+ import "./chunk-T56WDKA5.js";
67
70
  import "./chunk-W6GROXXM.js";
71
+ import "./chunk-JVCV3ICN.js";
72
+ import "./chunk-AFKWHWXF.js";
73
+ import "./chunk-TXOTCRLG.js";
74
+ import "./chunk-HVDIIIQW.js";
75
+ import {
76
+ ResourcesDomainModule
77
+ } from "./chunk-SINK3QR6.js";
78
+ import {
79
+ AgentsDomainModule
80
+ } from "./chunk-MA3H6DM5.js";
81
+ import "./chunk-ZJLUDYFY.js";
82
+ import "./chunk-DR52UMZW.js";
83
+ import "./chunk-HUAS7ITX.js";
84
+ import "./chunk-NDDGJUXD.js";
85
+ import "./chunk-FEFIFZTL.js";
68
86
  import {
69
87
  FLEET_COMMANDS_REMEDY,
70
88
  FLEET_COMMANDS_REPO_PATH,
@@ -73,94 +91,102 @@ import {
73
91
  loadFleetCommands,
74
92
  loadFleetContract,
75
93
  renderFleetPrompt
76
- } from "./chunk-HPCTNZM2.js";
94
+ } from "./chunk-CTJ4RNAA.js";
77
95
  import "./chunk-RKKLTLYB.js";
78
- import "./chunk-5QKCQQ3E.js";
79
- import "./chunk-JVCV3ICN.js";
80
- import "./chunk-5HFBWUMU.js";
81
- import "./chunk-TXOTCRLG.js";
82
- import "./chunk-HVDIIIQW.js";
96
+ import "./chunk-SUW5DORT.js";
83
97
  import {
84
98
  MiddlewareDomainModule
85
- } from "./chunk-GAYUJ7LE.js";
86
- import "./chunk-HAY4ZE2P.js";
99
+ } from "./chunk-JA5QWE4Z.js";
100
+ import "./chunk-5PSMVOLM.js";
87
101
  import "./chunk-UOV2BYIW.js";
88
- import "./chunk-O6I4CIEU.js";
102
+ import "./chunk-QSNYB6ZV.js";
103
+ import "./chunk-QDC3K2U3.js";
104
+ import "./chunk-I66EAJFY.js";
89
105
  import "./chunk-VG7TBQIY.js";
90
106
  import {
91
107
  formatBudgetPolicy,
92
108
  formatBudgetReasons,
93
109
  formatBudgetRequest,
94
110
  formatEffectiveBudget
95
- } from "./chunk-4H6ULJ3H.js";
96
- import "./chunk-VPTUJU4P.js";
97
- import "./chunk-2JDWVJND.js";
111
+ } from "./chunk-2VG7KLYV.js";
112
+ import "./chunk-7EPLI7VL.js";
113
+ import "./chunk-6DWBAZ5U.js";
114
+ import "./chunk-PVAMAVBB.js";
115
+ import "./chunk-IXJT6DCX.js";
116
+ import "./chunk-TVHHYFHE.js";
117
+ import "./chunk-42FMPA75.js";
98
118
  import {
99
119
  agentRoleFactsResolver,
100
120
  requestExecutionRole,
101
121
  withAttemptRole
102
122
  } from "./chunk-H7IXIC72.js";
103
- import "./chunk-7C6RYZGQ.js";
104
- import "./chunk-N3PBVRTZ.js";
105
- import "./chunk-A2NJGIB3.js";
123
+ import "./chunk-VN3SHNBN.js";
106
124
  import "./chunk-OQE5J4C6.js";
107
- import "./chunk-S4COXYBG.js";
108
- import "./chunk-MV3K5QF2.js";
109
- import "./chunk-RAPCMZL4.js";
110
- import "./chunk-UL3WSD3F.js";
111
- import "./chunk-ODFEOB4F.js";
125
+ import "./chunk-FSP7CMNU.js";
126
+ import "./chunk-R23Z6K6I.js";
112
127
  import "./chunk-OZNBF4L3.js";
113
128
  import "./chunk-4BJ5BYCE.js";
114
- import "./chunk-ECH6PKUQ.js";
115
- import "./chunk-CMZWFGD2.js";
116
- import "./chunk-I4HZDVNP.js";
117
129
  import "./chunk-6XLNIQDB.js";
130
+ import "./chunk-U2WB7TZS.js";
131
+ import "./chunk-VAVR4IJY.js";
132
+ import "./chunk-2LEAKD4C.js";
133
+ import "./chunk-HHV2GANA.js";
134
+ import "./chunk-IG7BCQBA.js";
135
+ import "./chunk-GCSMB2KY.js";
136
+ import "./chunk-UL3WSD3F.js";
137
+ import "./chunk-ECH6PKUQ.js";
118
138
  import "./chunk-5B2AEOW5.js";
119
- import "./chunk-CGKSTWHD.js";
120
- import "./chunk-M6L6IDJG.js";
139
+ import "./chunk-K6BSR66V.js";
140
+ import "./chunk-BWH6N36D.js";
121
141
  import "./chunk-UUVG37B4.js";
122
142
  import "./chunk-LBMZMYH2.js";
123
143
  import "./chunk-XAKHZX5N.js";
124
144
  import "./chunk-33YXPOE3.js";
125
145
  import "./chunk-7CR24IG7.js";
126
146
  import "./chunk-XPLRXC72.js";
127
- import "./chunk-QQ7EKM72.js";
128
- import "./chunk-56KB5IJP.js";
147
+ import "./chunk-NEKRRTYW.js";
148
+ import "./chunk-BDPT6GTK.js";
149
+ import "./chunk-7PWAODYW.js";
129
150
  import {
130
151
  ProvidersDomainModule,
131
- foregroundStreamUsage
132
- } from "./chunk-MIX5N5AC.js";
152
+ foregroundStreamUsage,
153
+ normalizeCostProvenance
154
+ } from "./chunk-UEDMSP56.js";
133
155
  import "./chunk-CFGTUFWB.js";
134
- import "./chunk-LU7P4LHA.js";
135
- import "./chunk-AEYBF3TB.js";
156
+ import "./chunk-72GZI5EV.js";
157
+ import "./chunk-CWVRRIEI.js";
158
+ import "./chunk-MQXIVJ35.js";
159
+ import "./chunk-R346GLFC.js";
160
+ import "./chunk-PMZVFWSR.js";
161
+ import "./chunk-HLW2MRKE.js";
162
+ import "./chunk-BTK3SSSK.js";
136
163
  import "./chunk-IHXBNWMM.js";
137
- import "./chunk-B5CSFE7B.js";
138
164
  import {
139
165
  readSettings
140
- } from "./chunk-PNY46YEY.js";
141
- import "./chunk-FQ4SKYE4.js";
142
- import "./chunk-ZGVHUX3M.js";
143
- import "./chunk-RKRLDWD3.js";
144
- import "./chunk-KV2AOLDF.js";
166
+ } from "./chunk-EIMVLWB3.js";
167
+ import "./chunk-D7E7WCDF.js";
168
+ import "./chunk-HJWWJ6IL.js";
169
+ import "./chunk-JIEGK6UF.js";
170
+ import "./chunk-EBY63B7G.js";
145
171
  import "./chunk-6EJMN2Y3.js";
146
172
  import "./chunk-IWHMRKLL.js";
147
- import "./chunk-JEQQR47K.js";
148
- import "./chunk-XDOQXGFO.js";
173
+ import "./chunk-QKIFBZKT.js";
174
+ import "./chunk-BWW4HLO4.js";
149
175
  import "./chunk-LL4KHSZI.js";
150
- import "./chunk-4ZG3XFUR.js";
151
- import "./chunk-774ILSRL.js";
152
- import "./chunk-EQ63NRB7.js";
153
- import "./chunk-SST6Z5JA.js";
176
+ import "./chunk-NLFAQR7Z.js";
177
+ import "./chunk-CDNVLKUX.js";
178
+ import "./chunk-WNP7O5WZ.js";
179
+ import "./chunk-336NSSKI.js";
154
180
  import "./chunk-IKCO5N3L.js";
155
181
  import "./chunk-3I7MS7N2.js";
156
182
  import "./chunk-APJ265NV.js";
157
183
  import {
158
184
  clioStateDir
159
- } from "./chunk-BNAZZHFG.js";
185
+ } from "./chunk-BYP5D4HI.js";
160
186
  import "./chunk-WEPFGWHJ.js";
161
187
  import "./chunk-NUGM5KR6.js";
162
- import "./chunk-VO2LKSTM.js";
163
- import "./chunk-UOSL25KY.js";
188
+ import "./chunk-O42A54GG.js";
189
+ import "./chunk-VXMFAE2W.js";
164
190
  import "./chunk-YXLYO42X.js";
165
191
  import {
166
192
  init_esm_shims
@@ -185,6 +211,10 @@ Subcommands:
185
211
  [--resume <runId>] replay a completed prefix from a prior run of the same plan
186
212
  [--json] emit step receipts as JSON
187
213
  status [--json] show running, retrying, and total dispatch state
214
+ inspect --json emit a bounded recent-run and event-journal projection
215
+ decisions --json emit a bounded window of sealed review and compete gate verdicts
216
+ view <runId> [--follow] read one run's ledger entry, event journal, and receipt
217
+ view <fleetRootId> list a fleet run's steps and the run id to view for each
188
218
  drain [--json] deny new execution starts for up to one hour
189
219
  resume [--json] reopen dispatch admission immediately
190
220
 
@@ -192,6 +222,10 @@ Notes:
192
222
  status reads the durable run ledger. Rows started by another process show
193
223
  heartbeat liveness from the recorded worker pid; per-token live meters are
194
224
  only available inside the process that owns the run.
225
+ view is read-only and shares no memory with the orchestrator, so it follows a
226
+ run from a second terminal or over SSH. Its transcript comes from the run
227
+ event journal, written when fleet.history.journal is on (the default). Handed the
228
+ fleet-<hex> root id that run prints, it lists that run's steps instead.
195
229
  drain preserves running work. Repeat it to renew the one-hour expiry; resume
196
230
  clears it early. The expiry prevents an abandoned drain from wedging Clio.
197
231
  `;
@@ -222,7 +256,9 @@ function parseVars(args) {
222
256
  const eq = pair.indexOf("=");
223
257
  const key = pair.slice(0, eq).trim();
224
258
  const value = pair.slice(eq + 1);
225
- if (key.length === 0) return { vars, rest, error: "--var requires a non-empty key" };
259
+ if (key.length === 0) {
260
+ return { vars, rest, error: "--var requires a non-empty key" };
261
+ }
226
262
  vars[key] = value;
227
263
  }
228
264
  return { vars, rest };
@@ -234,7 +270,9 @@ function renderStep(step) {
234
270
  if (step.kind === "code") return `code:${step.command}[${step.scope}]`;
235
271
  if (step.kind === "agent") return `${step.agent}[${step.scope}]`;
236
272
  if (step.kind === "gate") return `gate:${step.path}[${step.run}]`;
237
- if (step.kind === "plan") return `plan:${step.agent}[${step.roster.join(",")}; max ${step.maxTasks}]`;
273
+ if (step.kind === "plan") {
274
+ return `plan:${step.agent}[${step.roster.join(",")}; max ${step.maxTasks}]`;
275
+ }
238
276
  const check = step.check.kind === "code" ? `code:${step.check.command}` : step.check.kind === "gate" ? `gate:${step.check.gate}` : step.check.agent;
239
277
  return `loop:${step.id}(${check} -> ${step.repair.agent} x${step.maxAttempts})`;
240
278
  }
@@ -275,28 +313,42 @@ function runList(args) {
275
313
  function contractAgents(contract) {
276
314
  const agents = [];
277
315
  for (const step of contract.steps) {
278
- if (step.kind === "agent") agents.push({ id: step.id, agent: step.agent, scope: step.scope });
279
- else if (step.kind === "gate") agents.push({ id: step.id, agent: step.agent, scope: "workspace" });
280
- else if (step.kind === "plan") {
316
+ if (step.kind === "agent") {
281
317
  agents.push({ id: step.id, agent: step.agent, scope: step.scope });
282
- for (const agent of step.roster) agents.push({ id: `${step.id}.roster`, agent, scope: "readonly" });
318
+ } else if (step.kind === "gate") {
319
+ agents.push({ id: step.id, agent: step.agent, scope: "workspace" });
320
+ } else if (step.kind === "plan") {
321
+ agents.push({ id: step.id, agent: step.agent, scope: step.scope });
322
+ for (const agent of step.roster) {
323
+ agents.push({ id: `${step.id}.roster`, agent, scope: "readonly" });
324
+ }
283
325
  } else if (step.kind === "loop") {
284
326
  if (step.check.kind === "agent") {
285
- agents.push({ id: `${step.id}.check`, agent: step.check.agent, scope: step.check.scope });
327
+ agents.push({
328
+ id: `${step.id}.check`,
329
+ agent: step.check.agent,
330
+ scope: step.check.scope
331
+ });
286
332
  }
287
- agents.push({ id: `${step.id}.repair`, agent: step.repair.agent, scope: step.repair.scope });
333
+ agents.push({
334
+ id: `${step.id}.repair`,
335
+ agent: step.repair.agent,
336
+ scope: step.repair.scope
337
+ });
288
338
  }
289
339
  }
290
340
  return agents;
291
341
  }
292
342
  function preflightFleet(contract, deps) {
293
343
  const targets = new Set(deps.settings.targets.map((target) => target.id));
294
- const profiles = new Set(Object.keys(deps.settings.workers?.profiles ?? {}));
344
+ const profiles = new Set(Object.keys(deps.settings.fleet?.profiles ?? {}));
295
345
  const checkRoute = (id, route) => {
296
- if (route.target !== void 0 && !targets.has(route.target))
346
+ if (route.target !== void 0 && !targets.has(route.target)) {
297
347
  return `unknown target '${route.target}' at step '${id}'`;
298
- if (route.profile !== void 0 && !profiles.has(route.profile))
348
+ }
349
+ if (route.profile !== void 0 && !profiles.has(route.profile)) {
299
350
  return `unknown profile '${route.profile}' at step '${id}'`;
351
+ }
300
352
  return null;
301
353
  };
302
354
  for (const step of contract.steps) {
@@ -341,10 +393,13 @@ async function runFleet(args) {
341
393
  const json = rest.includes("--json");
342
394
  const resumeIndex = rest.indexOf("--resume");
343
395
  const resumeId = resumeIndex === -1 ? void 0 : rest[resumeIndex + 1];
344
- if (resumeIndex !== -1 && (resumeId === void 0 || resumeId.startsWith("-")))
396
+ if (resumeIndex !== -1 && (resumeId === void 0 || resumeId.startsWith("-"))) {
345
397
  return fail("--resume requires a run id");
398
+ }
346
399
  const name = rest.find((arg) => !arg.startsWith("-"));
347
- if (!name) return fail("usage: clio-coder fleet run <name> [--var key=value ...] [--resume <runId>] [--json]");
400
+ if (!name) {
401
+ return fail("usage: clio-coder fleet run <name> [--var key=value ...] [--resume <runId>] [--json]");
402
+ }
348
403
  let contract;
349
404
  let prompt;
350
405
  let commands;
@@ -373,7 +428,10 @@ async function runFleet(args) {
373
428
  MiddlewareDomainModule,
374
429
  ObservabilityDomainModule,
375
430
  SchedulingDomainModule,
376
- DispatchDomainModule,
431
+ // A fleet step is dispatched by executeFleetRun, which drains the handle
432
+ // itself and never builds a dispatch event registry, so the domain is the
433
+ // only thing that can write each step's durable transcript.
434
+ createDispatchDomainModule({ journalRunEvents: true }),
377
435
  SessionDomainModule,
378
436
  LifecycleDomainModule
379
437
  ]);
@@ -386,12 +444,14 @@ async function runFleet(args) {
386
444
  await loaded.stop();
387
445
  return fail("required domains unavailable (dispatch/agents/safety)");
388
446
  }
447
+ const fleetSettings = config?.get() ?? readSettings();
448
+ configureRunEventJournal(fleetSettings.fleet.history.journal);
389
449
  const roleFacts = agentRoleFactsResolver((id) => agents.getSpec(id));
390
450
  const preflightError = preflightFleet(contract, {
391
451
  agents,
392
452
  safety,
393
453
  scheduling,
394
- settings: config?.get() ?? readSettings()
454
+ settings: fleetSettings
395
455
  });
396
456
  if (preflightError !== null) {
397
457
  await loaded.stop();
@@ -508,41 +568,52 @@ async function runFleet(args) {
508
568
  fleetRootId,
509
569
  dispatch,
510
570
  agents: { getSpec: (agentId) => agents.getSpec(agentId) },
511
- attributionEnabled: config?.get().attribution.gitCommits ?? true,
571
+ attributionEnabled: config?.get().integrations.git.commitAttribution ?? true,
512
572
  vars,
513
573
  ...resume !== void 0 ? { resume } : {},
514
574
  onStepSettled(step) {
515
575
  if (step.replayed === true && step.result !== void 0) {
516
- if (json)
576
+ if (json) {
517
577
  process.stdout.write(
518
- `${JSON.stringify({ stepId: step.stepId, status: "replayed", receipt: { runId: step.result.terminalRunId, digest: step.result.receiptDigest } })}
578
+ `${JSON.stringify({
579
+ stepId: step.stepId,
580
+ status: "replayed",
581
+ receipt: {
582
+ runId: step.result.terminalRunId,
583
+ digest: step.result.receiptDigest
584
+ }
585
+ })}
519
586
  `
520
587
  );
521
- else
588
+ } else {
522
589
  process.stdout.write(
523
590
  `step ${step.stepId}: replayed terminal-run=${step.result.terminalRunId} receipt=${step.result.receiptDigest}
524
591
  `
525
592
  );
593
+ }
526
594
  return;
527
595
  }
528
596
  if (step.receipt !== void 0) {
529
597
  if (json) process.stdout.write(`${JSON.stringify(step.receipt)}
530
598
  `);
531
- else
599
+ else {
532
600
  process.stdout.write(
533
- `step ${step.stepId} ${step.agentId}: ${step.succeeded ? "succeeded" : "failed"}${step.failureReason !== void 0 ? ` reason=${step.failureReason}` : ""} assignment=${step.assignmentId} terminal-run=${step.terminalRunId} cost=$${step.costUsd.toFixed(4)}
601
+ `step ${step.stepId} ${step.agentId}: ${step.succeeded ? "succeeded" : "failed"}${step.failureReason !== void 0 ? ` reason=${step.failureReason}` : ""} assignment=${step.assignmentId} terminal-run=${step.terminalRunId} cost=${renderCostAmount(step.costUsd, step.costProvenance)}
534
602
  `
535
603
  );
604
+ }
536
605
  return;
537
606
  }
538
607
  if (step.codeStep !== void 0) {
539
- if (json) process.stdout.write(`${JSON.stringify({ codeStep: step.codeStep })}
608
+ if (json) {
609
+ process.stdout.write(`${JSON.stringify({ codeStep: step.codeStep })}
540
610
  `);
541
- else
611
+ } else {
542
612
  process.stdout.write(
543
613
  `step ${step.stepId} code:${step.commandId}: ${step.succeeded ? "passed" : "failed"} exit=${step.codeStep.exitCode} ${step.codeStep.durationMs}ms record=${step.recordPath}
544
614
  `
545
615
  );
616
+ }
546
617
  }
547
618
  },
548
619
  onNotice(text, kind) {
@@ -576,26 +647,34 @@ async function runFleet(args) {
576
647
  );
577
648
  } else {
578
649
  process.stdout.write(
579
- `fleet ${contract.name}: ${outcome.succeededStepCount}/${outcome.requiredStepCount} steps succeeded, ${outcome.resolvedLoopCount}/${outcome.result.loops.length} loops resolved, total cost $${outcome.totalCostUsd.toFixed(4)}
650
+ `fleet ${contract.name}: ${outcome.succeededStepCount}/${outcome.requiredStepCount} steps succeeded, ${outcome.resolvedLoopCount}/${outcome.result.loops.length} loops resolved, total cost ${renderCostAggregate(outcome.totalCost)}
580
651
  `
581
652
  );
582
- for (const loop of outcome.result.loops)
653
+ for (const loop of outcome.result.loops) {
583
654
  process.stdout.write(
584
655
  ` loop ${loop.loopId}: ${loop.reason} after ${loop.attempts} verification(s) and ${loop.repairs} repair(s)
585
656
  `
586
657
  );
587
- if (outcome.result.revalidated.length > 0)
658
+ }
659
+ if (outcome.result.revalidated.length > 0) {
588
660
  process.stdout.write(
589
- ` staleness: re-ran ${outcome.result.revalidated.join(", ")} because a workspace step landed after the last green
661
+ ` staleness: re-ran ${outcome.result.revalidated.join(
662
+ ", "
663
+ )} because a workspace step landed after the last green
590
664
  `
591
665
  );
592
- for (const message of outcome.result.needsDecision) process.stdout.write(` needs operator decision: ${message}
666
+ }
667
+ for (const message of outcome.result.needsDecision) {
668
+ process.stdout.write(` needs operator decision: ${message}
593
669
  `);
670
+ }
594
671
  for (const boundary of outcome.result.writeBoundaries) {
595
672
  if (!boundary.violated) continue;
596
673
  process.stdout.write(` write boundary ${boundary.window}: ${boundary.detail ?? WRITE_BOUNDARY_VIOLATION_REASON}
597
674
  `);
598
675
  }
676
+ process.stdout.write(` clio-coder fleet view ${fleetRootId} step index with each step's run id
677
+ `);
599
678
  }
600
679
  return outcome.cleanRun ? 0 : 1;
601
680
  }
@@ -620,14 +699,20 @@ function receiptTokenSplit(row) {
620
699
  const path = row.receiptPath ?? join(clioStateDir(), "receipts", `${row.id}.json`);
621
700
  try {
622
701
  const parsed = JSON.parse(readFileSync(path, "utf8"));
623
- return { input: finiteCount(parsed.inputTokenCount), output: finiteCount(parsed.outputTokenCount) };
702
+ return {
703
+ input: finiteCount(parsed.inputTokenCount),
704
+ output: finiteCount(parsed.outputTokenCount)
705
+ };
624
706
  } catch {
625
707
  return null;
626
708
  }
627
709
  }
628
710
  function rowTokenSplit(row) {
629
711
  if (row.inputTokenCount !== void 0 || row.outputTokenCount !== void 0) {
630
- return { input: finiteCount(row.inputTokenCount), output: finiteCount(row.outputTokenCount) };
712
+ return {
713
+ input: finiteCount(row.inputTokenCount),
714
+ output: finiteCount(row.outputTokenCount)
715
+ };
631
716
  }
632
717
  if (row.endedAt !== null) {
633
718
  return receiptTokenSplit(row) ?? { input: 0, output: 0 };
@@ -656,10 +741,16 @@ function statusSnapshot() {
656
741
  elapsedMs: Number.isFinite(startedMs) ? Math.max(0, nowMs - startedMs) : 0,
657
742
  tokens: { input: 0, output: 0, total: row.tokenCount },
658
743
  costUsd: row.costUsd,
744
+ // Absent on pre-provenance ledger rows, which readers must treat as
745
+ // unknown; `renderCostAmount` normalizes it rather than assuming free.
746
+ costProvenance: row.costProvenance,
659
747
  node: row.node?.id ?? "local"
660
748
  };
661
749
  });
662
750
  const totals = { inputTokens: 0, outputTokens: 0, totalTokens: 0, costUsd: 0, runtimeSeconds: 0 };
751
+ const cost = aggregateCostAmounts(
752
+ rows.map((row) => ({ usd: row.costUsd, provenance: normalizeCostProvenance(row.costProvenance) }))
753
+ );
663
754
  for (const row of rows) {
664
755
  const split = rowTokenSplit(row);
665
756
  totals.inputTokens += split.input;
@@ -677,7 +768,7 @@ function statusSnapshot() {
677
768
  admission: admissionStatus(capacityDrain(nowMs)),
678
769
  running,
679
770
  retrying: [],
680
- totals
771
+ totals: { ...totals, cost }
681
772
  };
682
773
  }
683
774
  function runStatus(args) {
@@ -702,7 +793,7 @@ function runStatus(args) {
702
793
  for (const row of snapshot.running) {
703
794
  const lineage = row.lineage;
704
795
  process.stdout.write(
705
- ` ${row.runId} ${row.agentId} node=${row.node} ${row.heartbeat} attempt=${lineage.attempt} depth=${lineage.depth} ${Math.round(row.elapsedMs / 1e3)}s $${row.costUsd.toFixed(4)}
796
+ ` ${row.runId} ${row.agentId} node=${row.node} ${row.heartbeat} attempt=${lineage.attempt} depth=${lineage.depth} ${Math.round(row.elapsedMs / 1e3)}s ${renderCostAmount(row.costUsd, row.costProvenance)}
706
797
  `
707
798
  );
708
799
  const budget = row.budget;
@@ -729,7 +820,7 @@ function runStatus(args) {
729
820
  }
730
821
  const t = snapshot.totals;
731
822
  process.stdout.write(
732
- `totals: tokens=${t.totalTokens} (in=${t.inputTokens} out=${t.outputTokens}) cost=$${t.costUsd.toFixed(4)} runtime=${Math.round(t.runtimeSeconds)}s
823
+ `totals: tokens=${t.totalTokens} (in=${t.inputTokens} out=${t.outputTokens}) cost=${renderCostAggregate(t.cost)} runtime=${Math.round(t.runtimeSeconds)}s
733
824
  `
734
825
  );
735
826
  return 0;
@@ -756,6 +847,9 @@ function runAdmissionControl(command, args) {
756
847
  }
757
848
  async function runFleetCommand(args) {
758
849
  const sub = args[0];
850
+ if (sub === "view" && (args.includes("--help") || args.includes("-h"))) {
851
+ return (await import("./fleet-view-WAMJYNDT.js")).runFleetView(args.slice(1));
852
+ }
759
853
  if (sub === "help" || args.includes("--help") || args.includes("-h")) {
760
854
  process.stdout.write(HELP);
761
855
  return 0;
@@ -770,15 +864,23 @@ async function runFleetCommand(args) {
770
864
  case "new":
771
865
  return (await import("./fleet-new-RDVJLHHH.js")).runFleetNew(args.slice(1));
772
866
  case "validate":
773
- return (await import("./fleet-validate-C5RI6DP7.js")).runFleetValidate(args.slice(1));
867
+ return (await import("./fleet-validate-KMEM5L3S.js")).runFleetValidate(args.slice(1));
774
868
  case "graph":
775
- return (await import("./fleet-graph-2J3OOIPO.js")).runFleetGraph(args.slice(1));
869
+ return (await import("./fleet-graph-YTEZUCUT.js")).runFleetGraph(args.slice(1));
776
870
  case "commands":
777
- return (await import("./fleet-commands-L2SXSYEI.js")).runFleetCommands(args.slice(1));
871
+ return (await import("./fleet-commands-EXDXBMV6.js")).runFleetCommands(args.slice(1));
778
872
  case "run":
779
873
  return runFleet(args.slice(1));
780
874
  case "status":
781
875
  return runStatus(args.slice(1));
876
+ case "inspect":
877
+ return (await import("./fleet-inspect-SS6YMDCK.js")).runFleetInspect(args.slice(1));
878
+ case "decisions":
879
+ return (await import("./fleet-decisions-OTHB6KRL.js")).runFleetDecisions(args.slice(1));
880
+ case "verify":
881
+ return (await import("./fleet-verify-QD5M7E7Q.js")).runFleetVerify(args.slice(1));
882
+ case "view":
883
+ return (await import("./fleet-view-WAMJYNDT.js")).runFleetView(args.slice(1));
782
884
  case "drain":
783
885
  return runAdmissionControl("drain", args.slice(1));
784
886
  case "resume":
@@ -791,7 +893,6 @@ async function runFleetCommand(args) {
791
893
  }
792
894
  }
793
895
  export {
794
- runFleetCommand,
795
- statusSnapshot
896
+ runFleetCommand
796
897
  };
797
- //# sourceMappingURL=fleet-6CNVBZZP.js.map
898
+ //# sourceMappingURL=fleet-CKZHJWZJ.js.map
@@ -1,25 +1,26 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
3
  discoverDeclaredProjectCommands
4
- } from "./chunk-4LJX2PUC.js";
5
- import "./chunk-NQ6UCCOD.js";
6
- import "./chunk-P3JGPQFL.js";
4
+ } from "./chunk-BBTJOK6Y.js";
5
+ import "./chunk-PJJ6MY27.js";
6
+ import "./chunk-N5UK64DP.js";
7
7
  import "./chunk-LCGCVYZ4.js";
8
- import "./chunk-CA42X6KT.js";
8
+ import "./chunk-7OBGU7UB.js";
9
9
  import "./chunk-VG7TBQIY.js";
10
- import "./chunk-A2NJGIB3.js";
10
+ import "./chunk-VN3SHNBN.js";
11
11
  import "./chunk-OQE5J4C6.js";
12
+ import "./chunk-6XLNIQDB.js";
12
13
  import "./chunk-UL3WSD3F.js";
13
14
  import "./chunk-ECH6PKUQ.js";
14
- import "./chunk-6XLNIQDB.js";
15
15
  import "./chunk-5B2AEOW5.js";
16
- import "./chunk-CGKSTWHD.js";
17
- import "./chunk-B5CSFE7B.js";
18
- import "./chunk-FQ4SKYE4.js";
16
+ import "./chunk-K6BSR66V.js";
17
+ import "./chunk-HJWWJ6IL.js";
18
+ import "./chunk-JIEGK6UF.js";
19
+ import "./chunk-EBY63B7G.js";
19
20
  import "./chunk-6EJMN2Y3.js";
20
21
  import "./chunk-APJ265NV.js";
21
- import "./chunk-BNAZZHFG.js";
22
- import "./chunk-UOSL25KY.js";
22
+ import "./chunk-BYP5D4HI.js";
23
+ import "./chunk-VXMFAE2W.js";
23
24
  import "./chunk-YXLYO42X.js";
24
25
  import {
25
26
  init_esm_shims
@@ -67,4 +68,4 @@ function runFleetCommands(args) {
67
68
  export {
68
69
  runFleetCommands
69
70
  };
70
- //# sourceMappingURL=fleet-commands-L2SXSYEI.js.map
71
+ //# sourceMappingURL=fleet-commands-EXDXBMV6.js.map