@iowarp/clio-coder 0.4.7 → 0.4.9

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 (675) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +111 -0
  3. package/CONTRIBUTING.md +83 -74
  4. package/README.md +69 -47
  5. package/dist/{acp-W3Y3TRHD.js → acp-ZWZCPS2A.js} +15 -15
  6. package/dist/{agents-J4ICNLQ3.js → agents-LYSOWZUE.js} +61 -59
  7. package/dist/assets/codewiki.json +1 -1
  8. package/dist/assets/web-notices/@hono__node-server-LICENSE +21 -0
  9. package/dist/assets/web-notices/hono-LICENSE +21 -0
  10. package/dist/{auth-X2UJUMOC.js → auth-WBQGKWQ5.js} +27 -27
  11. package/dist/background-BUMOBAQN.js +37 -0
  12. package/dist/{builtins-XLXWWSRF.js → builtins-ODRJOEDI.js} +7 -7
  13. package/dist/{chunk-C3G5PNUO.js → chunk-2DRRZ57Q.js} +36 -27
  14. package/dist/chunk-2JBZYUPY.js +105 -0
  15. package/dist/chunk-2KUBKL63.js +336 -0
  16. package/dist/chunk-2VBWFXYE.js +198 -0
  17. package/dist/{chunk-XZ6UFQ52.js → chunk-2X2R3UTH.js} +25 -15
  18. package/dist/{chunk-M6Z2V6YU.js → chunk-37LW32LZ.js} +5 -5
  19. package/dist/{chunk-6LRLOJHQ.js → chunk-3AND2EFU.js} +11 -62
  20. package/dist/{chunk-FQOOGXBH.js → chunk-3RDHGNU7.js} +101 -33
  21. package/dist/{chunk-D2T66PDV.js → chunk-3SUDBGEI.js} +41 -208
  22. package/dist/{chunk-5AJPUR72.js → chunk-3TQN67I2.js} +9 -9
  23. package/dist/{chunk-LBFQMYS3.js → chunk-3U4BL2EV.js} +5 -3
  24. package/dist/{chunk-UFYNOQK4.js → chunk-3UQADNG2.js} +7 -7
  25. package/dist/{chunk-V4ZKOKRB.js → chunk-434LRQ6Z.js} +61 -53
  26. package/dist/{chunk-NO7J45X6.js → chunk-4ATBOFRP.js} +713 -218
  27. package/dist/{chunk-ECOMVOHP.js → chunk-4DNL43EZ.js} +3 -3
  28. package/dist/{chunk-WT5TRMO4.js → chunk-4HFJKRGZ.js} +255 -82
  29. package/dist/{chunk-5A6XR3RJ.js → chunk-555E2WVV.js} +16 -2
  30. package/dist/{chunk-WURGVOZJ.js → chunk-5RTEFNBP.js} +18 -14
  31. package/dist/{config-YXARKGTX.js → chunk-64XJW7NT.js} +24 -268
  32. package/dist/{chunk-24S3DN22.js → chunk-6TKOFFGE.js} +4 -4
  33. package/dist/{chunk-YKRJTYNP.js → chunk-6UJ7RDI7.js} +4 -4
  34. package/dist/{chunk-MZNWZUJM.js → chunk-7FBCRWVT.js} +288 -288
  35. package/dist/{chunk-UA6W4XFJ.js → chunk-7JSOSVLP.js} +2 -2
  36. package/dist/chunk-7N3OLLSL.js +637 -0
  37. package/dist/{chunk-KKEYGFX4.js → chunk-7QQRPB2E.js} +11 -11
  38. package/dist/{chunk-N37QC5FV.js → chunk-A6DULIMH.js} +21 -9
  39. package/dist/{fleet-decisions-S3PTZV2D.js → chunk-AB3QXXBC.js} +5 -41
  40. package/dist/chunk-ACCECAH4.js +49 -0
  41. package/dist/{chunk-CP3HIR5H.js → chunk-AM6CEP2K.js} +20 -19
  42. package/dist/chunk-AUHVBIDW.js +19 -0
  43. package/dist/{chunk-BQQ5MXUC.js → chunk-AY4XE6GN.js} +19 -13
  44. package/dist/{chunk-ISNCCX42.js → chunk-BBA2TAWV.js} +10 -9
  45. package/dist/chunk-BFPHMSK7.js +169 -0
  46. package/dist/{chunk-LVFANMOH.js → chunk-BHJMMCXS.js} +4 -4
  47. package/dist/{chunk-DO7M3LSX.js → chunk-BMNVVKEW.js} +40 -93
  48. package/dist/{chunk-VTYHHQ57.js → chunk-CTGZCEI6.js} +2 -2
  49. package/dist/{chunk-RTLNFZMD.js → chunk-DIAJYJYG.js} +3 -3
  50. package/dist/chunk-EHZRAB4U.js +63 -0
  51. package/dist/{chunk-KS7ETA3P.js → chunk-EM2DIQAJ.js} +3 -3
  52. package/dist/{chunk-MNQN3X6Y.js → chunk-ETF4ROKH.js} +5 -5
  53. package/dist/{chunk-WN552PKN.js → chunk-F2YM3JY4.js} +744 -1134
  54. package/dist/{chunk-7EEGBKV4.js → chunk-FEBQWHJT.js} +24 -19
  55. package/dist/{chunk-4QKAITQT.js → chunk-FPS4R2RN.js} +74 -10
  56. package/dist/chunk-G5R53COU.js +68 -0
  57. package/dist/chunk-GHXGMFQ5.js +40 -0
  58. package/dist/{chunk-GFQ7P2UF.js → chunk-GJDRMBDI.js} +10 -10
  59. package/dist/{chunk-LZBMXNLP.js → chunk-GM4TY6VN.js} +43 -6
  60. package/dist/{chunk-NCCQ6DVS.js → chunk-GREYLTZ5.js} +8 -8
  61. package/dist/{chunk-HOX4YZ2K.js → chunk-H2WSCZZT.js} +19 -3
  62. package/dist/{chunk-3LXJOICS.js → chunk-H6IUCY6Q.js} +2 -2
  63. package/dist/{chunk-BO4XV5VX.js → chunk-H72DCH3E.js} +95 -206
  64. package/dist/{chunk-SEDI5K5B.js → chunk-H7TXJR23.js} +20 -20
  65. package/dist/chunk-HBJQQTKM.js +40 -0
  66. package/dist/chunk-HCVKSGNZ.js +990 -0
  67. package/dist/chunk-HVCAY2FH.js +67 -0
  68. package/dist/{chunk-34XHRVKG.js → chunk-I47EJPYL.js} +3 -3
  69. package/dist/{chunk-4N2RZ4TO.js → chunk-IALGWTLO.js} +3 -3
  70. package/dist/{chunk-IQCNVLO6.js → chunk-IALZJE37.js} +10 -7
  71. package/dist/{chunk-DLIYANB7.js → chunk-IC7JXLOM.js} +16 -11
  72. package/dist/{chunk-G4LGUTOE.js → chunk-IOSVTTCD.js} +5 -5
  73. package/dist/{chunk-DBREN25X.js → chunk-IPTPMLA6.js} +8 -3
  74. package/dist/{chunk-V552WL53.js → chunk-IZZI3SKQ.js} +3 -67
  75. package/dist/{chunk-TN5FW4XY.js → chunk-JIYWMQZ5.js} +12 -9
  76. package/dist/{chunk-T7QQBNLH.js → chunk-JKU34ACI.js} +10 -8
  77. package/dist/chunk-JOBN2YQQ.js +176 -0
  78. package/dist/chunk-JOL2QRLE.js +152 -0
  79. package/dist/{chunk-GXIWHXDB.js → chunk-JTR3VSV3.js} +3 -3
  80. package/dist/{chunk-T334FW2H.js → chunk-JU6MAMRJ.js} +7 -7
  81. package/dist/chunk-JURMQWVJ.js +15 -0
  82. package/dist/{chunk-CULVKYTK.js → chunk-K3XN4LZ4.js} +5 -5
  83. package/dist/{chunk-3T4DXWP6.js → chunk-KIVFXGBM.js} +27 -7
  84. package/dist/chunk-KKRXONXG.js +43 -0
  85. package/dist/{chunk-YPRSNUTC.js → chunk-KOAHT3N2.js} +2 -2
  86. package/dist/chunk-KP5BPXR3.js +73 -0
  87. package/dist/{chunk-UA3W4FGC.js → chunk-KRJQG47M.js} +6 -6
  88. package/dist/{chunk-GI5RRMAH.js → chunk-KW6OJ7IY.js} +19 -21
  89. package/dist/{chunk-A46ILRS2.js → chunk-L3NBWLSN.js} +4 -4
  90. package/dist/{chunk-MZHXENL7.js → chunk-L4RUTLRL.js} +8 -8
  91. package/dist/{chunk-P5SC4DLJ.js → chunk-LGTVWPRN.js} +2 -2
  92. package/dist/{chunk-65BGHOUR.js → chunk-LSQW6KZO.js} +5 -5
  93. package/dist/{chunk-TZHN5ITX.js → chunk-LWJYOHT3.js} +8 -8
  94. package/dist/{chunk-U3TPUXOQ.js → chunk-M6YLF66Z.js} +74 -40
  95. package/dist/chunk-MJ4QEJVT.js +185 -0
  96. package/dist/{chunk-T4TY5GG3.js → chunk-MO65K5CH.js} +5 -5
  97. package/dist/{chunk-TZ6UVP2H.js → chunk-MTOZEQHL.js} +8 -8
  98. package/dist/chunk-MZDPF35R.js +45 -0
  99. package/dist/{chunk-P4DL2LM5.js → chunk-MZKYVIWW.js} +8 -119
  100. package/dist/{chunk-KAFMW7WM.js → chunk-NBPA5QM6.js} +2 -2
  101. package/dist/{chunk-EUEXGXXR.js → chunk-NMBEW4PP.js} +5 -5
  102. package/dist/{chunk-SELG4SUR.js → chunk-NPLLK3HO.js} +72 -89
  103. package/dist/{chunk-VCRVEDUC.js → chunk-NSYGPIVW.js} +5 -5
  104. package/dist/{context-7HJEWTTP.js → chunk-NXTV5OI5.js} +36 -90
  105. package/dist/{chunk-IMOD2YPV.js → chunk-NYDG4QP4.js} +9 -19
  106. package/dist/{chunk-6CA2BHOR.js → chunk-OA2GDACN.js} +5 -5
  107. package/dist/{chunk-A67NR5AT.js → chunk-PJI57EC6.js} +14 -11
  108. package/dist/{chunk-IJMW64DX.js → chunk-PJJBUGMR.js} +50 -50
  109. package/dist/{chunk-CPXGJI2A.js → chunk-PNJE7JPS.js} +20 -5
  110. package/dist/chunk-PP23PZEV.js +1347 -0
  111. package/dist/chunk-PPIFDSBK.js +409 -0
  112. package/dist/{chunk-T52TPHYC.js → chunk-PTFISXQO.js} +8 -7
  113. package/dist/{chunk-C6GEXX4L.js → chunk-QB33Z5S7.js} +5 -5
  114. package/dist/{chunk-VMATUZB6.js → chunk-QGNII5VC.js} +10 -10
  115. package/dist/{chunk-TLTGZTXI.js → chunk-QI72X67S.js} +104 -27
  116. package/dist/chunk-QKHZZFKH.js +98 -0
  117. package/dist/{chunk-PFLOULP3.js → chunk-RDKX2PME.js} +4 -4
  118. package/dist/{chunk-B5ZTR6KZ.js → chunk-RL7LJYN4.js} +1 -1
  119. package/dist/chunk-RPMNIFRY.js +65 -0
  120. package/dist/{chunk-L3Z5ANCV.js → chunk-RQROVOV3.js} +13 -11
  121. package/dist/{chunk-6YHPAAZR.js → chunk-S34A7BSP.js} +3 -3
  122. package/dist/{chunk-5ZSZEYJK.js → chunk-SJETVJHX.js} +2 -2
  123. package/dist/{chunk-77CZRFTE.js → chunk-SJMNU4ZS.js} +2 -2
  124. package/dist/chunk-SLLG2G44.js +85 -0
  125. package/dist/{chunk-GVZFCJHE.js → chunk-SQAZN2V3.js} +48 -22
  126. package/dist/{chunk-2O2LVQQK.js → chunk-SQBT46OF.js} +2 -2
  127. package/dist/{chunk-ZGIGW4ZG.js → chunk-TCUOGIL2.js} +5 -5
  128. package/dist/{chunk-DACXIVVF.js → chunk-TIWPKCVO.js} +5 -5
  129. package/dist/{chunk-5CMARGPF.js → chunk-UIU7MGZ3.js} +11 -2
  130. package/dist/chunk-USBBEKHW.js +177 -0
  131. package/dist/{chunk-WLHX3MM5.js → chunk-V4XJWDHR.js} +21 -11
  132. package/dist/{chunk-MBJO5VNZ.js → chunk-VPWGADBG.js} +33 -33
  133. package/dist/{chunk-UUQ5G6EZ.js → chunk-VWFCAK34.js} +6 -6
  134. package/dist/{chunk-6CB2IL4N.js → chunk-W5RM7YAH.js} +1 -1
  135. package/dist/{chunk-4MFBBY2Z.js → chunk-W72LLZAV.js} +3 -3
  136. package/dist/{chunk-4UHVS5T7.js → chunk-WGRDABW7.js} +8 -8
  137. package/dist/{chunk-XR3XJN2M.js → chunk-WWRV5RJI.js} +4 -4
  138. package/dist/{chunk-24TOGHPO.js → chunk-X6FLVUM5.js} +4 -4
  139. package/dist/{chunk-6YA46L5A.js → chunk-XFLSL7BT.js} +2 -2
  140. package/dist/{chunk-QKWL7SYE.js → chunk-XJZEDCNT.js} +50 -39
  141. package/dist/{chunk-UWD3JD5X.js → chunk-XLLEL3K7.js} +10 -10
  142. package/dist/{chunk-2GPGAE5W.js → chunk-XNIZBOFV.js} +15 -1
  143. package/dist/chunk-XNZWWDC3.js +686 -0
  144. package/dist/{chunk-WBVKKTUT.js → chunk-XRECG65F.js} +2 -2
  145. package/dist/chunk-XTQ7MEJG.js +457 -0
  146. package/dist/{chunk-GEVQNST4.js → chunk-XZWSP67B.js} +2 -2
  147. package/dist/{chunk-WB7POC6M.js → chunk-Y3M2T5RO.js} +6 -6
  148. package/dist/{chunk-RXFPB32E.js → chunk-YJCCMYYT.js} +2 -2
  149. package/dist/{chunk-EUZRMP4Y.js → chunk-YPQOPFP7.js} +20 -20
  150. package/dist/{chunk-USZA7GWL.js → chunk-YQ3GFEUY.js} +2 -2
  151. package/dist/{chunk-BAU36233.js → chunk-YQYINEJI.js} +9 -9
  152. package/dist/{chunk-CE64C5K5.js → chunk-ZF6CV4WZ.js} +1356 -235
  153. package/dist/{chunk-3XE4NRLF.js → chunk-ZKJU55MX.js} +4 -2
  154. package/dist/{chunk-IZYTT3CD.js → chunk-ZKQ63XZ5.js} +16 -39
  155. package/dist/{chunk-6TAATXXH.js → chunk-ZKVMDNAN.js} +7 -7
  156. package/dist/chunk-ZST3FRCV.js +132 -0
  157. package/dist/cli/index.js +50 -38
  158. package/dist/{clio-L2P7S2R2.js → clio-JUDCLNHC.js} +11 -11
  159. package/dist/clio-context-tools-FT672MNZ.js +136 -0
  160. package/dist/{code-nav-B5LNX4KU.js → code-nav-7OVCTP2Z.js} +39 -37
  161. package/dist/{components-63MMQKUT.js → components-OZXZMDWU.js} +11 -11
  162. package/dist/config-P3ZQVF63.js +275 -0
  163. package/dist/config-graph-GKAOBAS5.js +160 -0
  164. package/dist/{configure-LMVQJ46J.js → configure-25LRYZJG.js} +56 -55
  165. package/dist/context-72VQV7JX.js +73 -0
  166. package/dist/{context-YG2LZDYZ.js → context-COWRWXP3.js} +89 -83
  167. package/dist/{context-XSZKKFBW.js → context-WB3D474G.js} +16 -16
  168. package/dist/{context-clear-AC5NXHM2.js → context-clear-Y4LYMWC6.js} +88 -82
  169. package/dist/{context-index-KKTPRV5G.js → context-index-W6A4V7OC.js} +4 -4
  170. package/dist/{context-map-T7ROR5D5.js → context-map-DKL3QT6D.js} +3 -3
  171. package/dist/{context-working-set-F4Q4J3NS.js → context-working-set-TMZYVC7A.js} +27 -25
  172. package/dist/data-tool-KMBWKKWR.js +2987 -0
  173. package/dist/{detail-H73BEF2N.js → detail-4GLROGY5.js} +89 -83
  174. package/dist/{dispatch-runner-3RY5FSJC.js → dispatch-runner-TR3LBP5P.js} +113 -107
  175. package/dist/docs-ZK777W2G.js +101 -0
  176. package/dist/{doctor-EQYJOGUG.js → doctor-WC4OV2OB.js} +76 -73
  177. package/dist/{eval-4P7O6CCE.js → eval-FUNWJNUJ.js} +88 -73
  178. package/dist/{eval-inventory-QOYZERXJ.js → eval-inventory-CX24K2JT.js} +5 -60
  179. package/dist/evals-L73EBHSU.js +104 -0
  180. package/dist/{evidence-O76QF7TZ.js → evidence-AVJ2RTHX.js} +99 -93
  181. package/dist/{evidence-D6GUSYJW.js → evidence-P4NZOAK7.js} +88 -82
  182. package/dist/evidence-Y55WKYHH.js +246 -0
  183. package/dist/{evolve-H47BCETS.js → evolve-MAWKRYWF.js} +93 -87
  184. package/dist/{extensions-NNL3ZOCU.js → extensions-PYQH3H47.js} +14 -13
  185. package/dist/fleet-M4H2QBWT.js +268 -0
  186. package/dist/{fleet-KMNS6NOM.js → fleet-ULBXXRDR.js} +146 -138
  187. package/dist/{fleet-commands-DOWSYCBX.js → fleet-commands-7NNC4JZU.js} +18 -17
  188. package/dist/fleet-decisions-EHEY7KPU.js +52 -0
  189. package/dist/{fleet-graph-F2DE2TME.js → fleet-graph-LQ2AHZT3.js} +24 -24
  190. package/dist/{fleet-inspect-EN2Q6IVB.js → fleet-inspect-5IGBIIYZ.js} +98 -258
  191. package/dist/{fleet-preflight-FRLETDD3.js → fleet-preflight-UTTNOKMG.js} +9 -4
  192. package/dist/{fleet-validate-B2XDLS57.js → fleet-validate-YGILJKA6.js} +29 -29
  193. package/dist/{fleet-verify-4JKUWGJ7.js → fleet-verify-AUWTCDKR.js} +88 -82
  194. package/dist/{fleet-view-BHJFW26B.js → fleet-view-TGUFCY5A.js} +90 -84
  195. package/dist/{init-XAT5N5YM.js → init-GFN2Z7NF.js} +111 -104
  196. package/dist/install-6PIF6F6W.js +19 -0
  197. package/dist/{interop-FVECHFKG.js → interop-EF5JUWWK.js} +29 -29
  198. package/dist/{inventory-7KFQGLCV.js → inventory-I6VJDDYF.js} +90 -84
  199. package/dist/library-3J5IO2OJ.js +75 -0
  200. package/dist/{library-QAPAO23R.js → library-IJTOFTDS.js} +20 -19
  201. package/dist/{library-NY2XOT75.js → library-Z3KZSHPE.js} +35 -35
  202. package/dist/{library-import-5Y6MAS3R.js → library-import-IMKFLDHX.js} +29 -29
  203. package/dist/{library-inventory-JT6HWITQ.js → library-inventory-CQP5D6GU.js} +21 -21
  204. package/dist/{library-validation-EQUH25DC.js → library-validation-33UTX7AI.js} +19 -19
  205. package/dist/mcp-5FWZKUS6.js +26 -0
  206. package/dist/{memory-DYVTTCP6.js → memory-36CWN67Y.js} +93 -87
  207. package/dist/{models-MASFJ6Y2.js → models-KQ6PQJJQ.js} +57 -56
  208. package/dist/{monitor-YMP4NXJJ.js → monitor-XX6ZD6KC.js} +98 -91
  209. package/dist/{orchestrator-AFQRRTEI.js → orchestrator-SK6HDAOP.js} +1537 -832
  210. package/dist/{panes-NICTHQCV.js → panes-L27QRXUH.js} +14 -14
  211. package/dist/{panes-D3Y2KFG5.js → panes-LXZIWNOZ.js} +4 -4
  212. package/dist/{paths-PSFAUIGO.js → paths-7DJDU4P4.js} +6 -6
  213. package/dist/{preload-5Q7VXRFJ.js → preload-K2TDYI4Y.js} +88 -82
  214. package/dist/{reset-7NKZK7JN.js → reset-73VU3XNT.js} +13 -13
  215. package/dist/{resources-NILSIZAT.js → resources-3BYJYVYL.js} +24 -24
  216. package/dist/{run-BPZGEBZV.js → run-AR7PY6GW.js} +144 -136
  217. package/dist/run-script-H2KUDIII.js +41 -0
  218. package/dist/settings-3VMBMWID.js +72 -0
  219. package/dist/{share-EZ6ERBMH.js → share-HVWH4FPF.js} +30 -30
  220. package/dist/{skills-BTVVNYVM.js → skills-5TYEY75Q.js} +30 -30
  221. package/dist/{skills-eval-UY34MNK7.js → skills-eval-CK3MD63Z.js} +114 -103
  222. package/dist/{skills-inventory-JDHSIA7I.js → skills-inventory-KSFYG3I6.js} +24 -24
  223. package/dist/{slash-commands-K4FNQ2AT.js → slash-commands-DMVHML7P.js} +60 -57
  224. package/dist/{steer-2B3EQGFH.js → steer-XCD6V3EW.js} +4 -4
  225. package/dist/{support-L2SOL3IE.js → support-JAZL6VBR.js} +7 -7
  226. package/dist/system-3TDQRMZZ.js +116 -0
  227. package/dist/{targets-44VKGFLN.js → targets-EZKHAYRN.js} +74 -72
  228. package/dist/{tasks-3KODKFU7.js → tasks-SNEFHWYW.js} +18 -18
  229. package/dist/{terminal-lease-LXA7MMPO.js → terminal-lease-BNLFA4OF.js} +8 -7
  230. package/dist/{tools-3UB7TEVR.js → tools-7IM6BDCE.js} +12 -12
  231. package/dist/{trace-TAMIU4OJ.js → trace-C3MBGD4S.js} +16 -65
  232. package/dist/{tui-primitives-A6MUW32V.js → tui-primitives-36BY2774.js} +2 -2
  233. package/dist/{uninstall-QYVRPEM4.js → uninstall-WWLOSZ42.js} +35 -10
  234. package/dist/{upgrade-7PMKM2JH.js → upgrade-ETK2JNSJ.js} +42 -51
  235. package/dist/{usage-6EQV7EQK.js → usage-S2HOB7BZ.js} +112 -102
  236. package/dist/{verifiers-JLITWSHU.js → verifiers-QDTEVH7R.js} +26 -24
  237. package/dist/{verify-T7NAEVIG.js → verify-SUKUK6XM.js} +16 -15
  238. package/dist/web/client/THIRD_PARTY_LICENSES.md +1809 -0
  239. package/dist/web/client/assets/abnfDiagram-VCTEODGH-BznNOe_I.js +1 -0
  240. package/dist/web/client/assets/arc-Pry-7G1_.js +1 -0
  241. package/dist/web/client/assets/architecture-7GRP2DOG-BQO9DL_y.js +1 -0
  242. package/dist/web/client/assets/architectureDiagram-5GKGNRK7-CKPbdvyx.js +36 -0
  243. package/dist/web/client/assets/array-BifhSqXX.js +1 -0
  244. package/dist/web/client/assets/atkinson-hyperlegible-next-latin-ext-wght-normal-C6vrW8VD.woff2 +0 -0
  245. package/dist/web/client/assets/atkinson-hyperlegible-next-latin-wght-normal-BcXVPD7q.woff2 +0 -0
  246. package/dist/web/client/assets/blockDiagram-I7D4REHJ-prINbpbM.js +129 -0
  247. package/dist/web/client/assets/c4Diagram-7LVT6UL2-DkVRKtyU.js +38 -0
  248. package/dist/web/client/assets/channel-c4EeUUqA.js +1 -0
  249. package/dist/web/client/assets/chunk-2Q5K7J3B-C1jixKkw.js +1 -0
  250. package/dist/web/client/assets/chunk-4HAMMTFA-CV0Z1ApC.js +62 -0
  251. package/dist/web/client/assets/chunk-5VM5RSS4-ZNzvKenW.js +15 -0
  252. package/dist/web/client/assets/chunk-75Z2AOVW-D34Nohxq.js +2 -0
  253. package/dist/web/client/assets/chunk-DU6HZSFF-Das_cS-O.js +125 -0
  254. package/dist/web/client/assets/chunk-F27PBJKO-CmRojxkG.js +1 -0
  255. package/dist/web/client/assets/chunk-FOHPRMQF-CoA4358r.js +161 -0
  256. package/dist/web/client/assets/chunk-GMAD6QVW-ClYZmc73.js +72 -0
  257. package/dist/web/client/assets/chunk-GVQU2GXP-B2BiHFt-.js +1 -0
  258. package/dist/web/client/assets/chunk-IMKFNOWR-BGApZ8nP.js +231 -0
  259. package/dist/web/client/assets/chunk-JWPE2WC7-DVXcaiue.js +1 -0
  260. package/dist/web/client/assets/chunk-L3NEJ4N5-DIzCgpkY.js +1 -0
  261. package/dist/web/client/assets/chunk-OSK3NFVY-BPT-yePv.js +10 -0
  262. package/dist/web/client/assets/chunk-P2QGCYS3-BC1WTc2t.js +1 -0
  263. package/dist/web/client/assets/chunk-POPQ4Y6H-BSjzBmZU.js +1 -0
  264. package/dist/web/client/assets/chunk-PWAF6VOD-BIjLs86Z.js +1 -0
  265. package/dist/web/client/assets/chunk-SHT3W25Y-CduDz2cm.js +168 -0
  266. package/dist/web/client/assets/chunk-SVP7TREG-XUn4pPAP.js +88 -0
  267. package/dist/web/client/assets/chunk-TICWLB2K-DcBy2DKy.js +206 -0
  268. package/dist/web/client/assets/chunk-XXDRQBXY-DqAYeljN.js +1 -0
  269. package/dist/web/client/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +1 -0
  270. package/dist/web/client/assets/classDiagram-ZZMXUADV-C0HR7YKN.js +1 -0
  271. package/dist/web/client/assets/classDiagram-v2-VYDZK3BY-C0HR7YKN.js +1 -0
  272. package/dist/web/client/assets/commit-mono-latin-400-normal-s0S3qwFW.woff +0 -0
  273. package/dist/web/client/assets/commit-mono-latin-400-normal-wzhe4RuD.woff2 +0 -0
  274. package/dist/web/client/assets/cose-bilkent-JH36ORCC-CVh1icwb.js +1 -0
  275. package/dist/web/client/assets/cynefin-OW5HDTMX-BecPbyM6.js +1 -0
  276. package/dist/web/client/assets/cynefinDiagram-5FMLGOSQ-BzMzFwyT.js +62 -0
  277. package/dist/web/client/assets/cytoscape.esm-c2aL46s-.js +321 -0
  278. package/dist/web/client/assets/dagre-C-rnJpZF.js +1 -0
  279. package/dist/web/client/assets/dagre-GXQ25YYZ-CAWJmRMG.js +4 -0
  280. package/dist/web/client/assets/defaultLocale-BFoDCU3G.js +1 -0
  281. package/dist/web/client/assets/diagram-S7CK7UJ4--lp0ALmn.js +30 -0
  282. package/dist/web/client/assets/diagram-UQ7AKVKN-gKUnsjcj.js +41 -0
  283. package/dist/web/client/assets/diagram-VSXAHHWV-BoN5D1Gh.js +3 -0
  284. package/dist/web/client/assets/diagram-VX7I27RA-BMtuswQ6.js +24 -0
  285. package/dist/web/client/assets/diagram-Z3DM3KII-DtU8LXrA.js +24 -0
  286. package/dist/web/client/assets/dist-v5Q1xZ2K.js +1 -0
  287. package/dist/web/client/assets/ebnfDiagram-PWID7BFC-DDcnv9BH.js +1 -0
  288. package/dist/web/client/assets/erDiagram-RLTQ6QDP-DvRb4iDL.js +99 -0
  289. package/dist/web/client/assets/eventmodeling-NTZA5JFV-01h4SbTc.js +1 -0
  290. package/dist/web/client/assets/flowDiagram-HODETNUW-Bll_YZ6T.js +1 -0
  291. package/dist/web/client/assets/framework-YGoR34M4.js +9 -0
  292. package/dist/web/client/assets/ganttDiagram-EL5Y4UJY-DdFZ9hvH.js +292 -0
  293. package/dist/web/client/assets/gitGraph-4MIJSDKK-DjD_AAMj.js +1 -0
  294. package/dist/web/client/assets/gitGraphDiagram-WWUBYQGX-CDyN9n2u.js +106 -0
  295. package/dist/web/client/assets/graphlib-DS17s2tU.js +1 -0
  296. package/dist/web/client/assets/index-CVcy0FAn.js +75 -0
  297. package/dist/web/client/assets/index-Dsi52apB.css +1 -0
  298. package/dist/web/client/assets/info-A6RAGUB7-C_XK8Hq0.js +1 -0
  299. package/dist/web/client/assets/infoDiagram-27XIBGKW-DIe4tJ1i.js +2 -0
  300. package/dist/web/client/assets/init-C-OQMol4.js +1 -0
  301. package/dist/web/client/assets/ishikawaDiagram-5VMMS53U-CVl5unKI.js +70 -0
  302. package/dist/web/client/assets/journeyDiagram-3NMN7TZE-CPEB1Vt8.js +139 -0
  303. package/dist/web/client/assets/kanban-definition-UXKFOSKX-j-9WXjYQ.js +89 -0
  304. package/dist/web/client/assets/katex-ZlcWpGUi.js +257 -0
  305. package/dist/web/client/assets/line-BIDAcEtX.js +1 -0
  306. package/dist/web/client/assets/linear-SzVmGSw4.js +1 -0
  307. package/dist/web/client/assets/mermaid-parser.core-Ux4vssh0.js +7 -0
  308. package/dist/web/client/assets/mermaid.core-CDuwVKeh.js +44 -0
  309. package/dist/web/client/assets/mindmap-definition-YA3MSWOX-5MlQEeQ6.js +96 -0
  310. package/dist/web/client/assets/newsreader-latin-ext-wght-normal-C-3rgBeH.woff2 +0 -0
  311. package/dist/web/client/assets/newsreader-latin-wght-normal-CCVVNp6i.woff2 +0 -0
  312. package/dist/web/client/assets/newsreader-vietnamese-wght-normal-Czsa-EzN.woff2 +0 -0
  313. package/dist/web/client/assets/ordinal-BDEzSJ7C.js +1 -0
  314. package/dist/web/client/assets/packet-AYTQ26CC-DRO66c9Q.js +1 -0
  315. package/dist/web/client/assets/path-fybaL0A-.js +1 -0
  316. package/dist/web/client/assets/pegDiagram-XKGWAZYB-BakZnSjM.js +1 -0
  317. package/dist/web/client/assets/pie-WAS4IAKB-BEzcmhz8.js +1 -0
  318. package/dist/web/client/assets/pieDiagram-E7YTZNPT-DpmqgoPt.js +39 -0
  319. package/dist/web/client/assets/prism-bash-D6zCJ74D.js +1 -0
  320. package/dist/web/client/assets/prism-c-04YixN25.js +1 -0
  321. package/dist/web/client/assets/prism-clike-DapgWyxx.js +1 -0
  322. package/dist/web/client/assets/prism-core-BtsZdCS6.js +1 -0
  323. package/dist/web/client/assets/prism-cpp-C-lJbC-6.js +1 -0
  324. package/dist/web/client/assets/prism-css-CPgOzxXp.js +1 -0
  325. package/dist/web/client/assets/prism-diff-BF8m0_mq.js +3 -0
  326. package/dist/web/client/assets/prism-docker-DkT6yOFj.js +1 -0
  327. package/dist/web/client/assets/prism-fortran-Be5x3y1V.js +1 -0
  328. package/dist/web/client/assets/prism-go-C_8qAH5n.js +1 -0
  329. package/dist/web/client/assets/prism-ini-BESK3y0r.js +1 -0
  330. package/dist/web/client/assets/prism-javascript-BnO-swvr.js +1 -0
  331. package/dist/web/client/assets/prism-json-Dp_-W-Hv.js +1 -0
  332. package/dist/web/client/assets/prism-jsx-D-D0NWtC.js +1 -0
  333. package/dist/web/client/assets/prism-julia-DIjOgiAV.js +1 -0
  334. package/dist/web/client/assets/prism-latex-DNMbqcH_.js +1 -0
  335. package/dist/web/client/assets/prism-makefile-CRKWLQ8l.js +1 -0
  336. package/dist/web/client/assets/prism-markdown-C0FPJ1Iz.js +1 -0
  337. package/dist/web/client/assets/prism-markup-Cp04rIa1.js +1 -0
  338. package/dist/web/client/assets/prism-matlab-D-nk08al.js +1 -0
  339. package/dist/web/client/assets/prism-python-CfiSVtM6.js +1 -0
  340. package/dist/web/client/assets/prism-r-QmNGR8LX.js +1 -0
  341. package/dist/web/client/assets/prism-rust-Bu9N8X3N.js +1 -0
  342. package/dist/web/client/assets/prism-shell-session-Be4UuYoM.js +1 -0
  343. package/dist/web/client/assets/prism-sql-CYhVDMEE.js +1 -0
  344. package/dist/web/client/assets/prism-toml-DKb54GAT.js +1 -0
  345. package/dist/web/client/assets/prism-tsx-p6J2Kc_4.js +1 -0
  346. package/dist/web/client/assets/prism-typescript-BMqONzxf.js +1 -0
  347. package/dist/web/client/assets/prism-yaml-C0JHu8gr.js +1 -0
  348. package/dist/web/client/assets/purify.es-ChwZkWde.js +3 -0
  349. package/dist/web/client/assets/quadrantDiagram-AXDQQJYC-DuMPwwV2.js +7 -0
  350. package/dist/web/client/assets/radar-RG4KPBEZ-Djm3oXl5.js +1 -0
  351. package/dist/web/client/assets/railroad-74A4TZTK-Cpvkwsao.js +1 -0
  352. package/dist/web/client/assets/railroad-abnf-HS5TGJTU-CpRQ3ruG.js +1 -0
  353. package/dist/web/client/assets/railroad-ebnf-LZEXJU2U-1Rm5a5eJ.js +1 -0
  354. package/dist/web/client/assets/railroad-peg-WCYAUIDC-C8344cTh.js +1 -0
  355. package/dist/web/client/assets/railroadDiagram-O6MQD6OU-CgMS4B6R.js +1 -0
  356. package/dist/web/client/assets/requirementDiagram-BXWQKSXE-CX5eoNdN.js +84 -0
  357. package/dist/web/client/assets/rolldown-runtime-hePW80VL.js +1 -0
  358. package/dist/web/client/assets/rough.esm-Dy-Kn_BL.js +1 -0
  359. package/dist/web/client/assets/sankeyDiagram-P5KCCOFB-CODBX2N3.js +40 -0
  360. package/dist/web/client/assets/sequenceDiagram-WJ2MYXX4-eUhhF8OR.js +162 -0
  361. package/dist/web/client/assets/sizeCapture-INFHLROL-B0uUizjq.js +1 -0
  362. package/dist/web/client/assets/src-B6xuSHsQ.js +1 -0
  363. package/dist/web/client/assets/stateDiagram-D77RDMKH-vR6l0NC2.js +1 -0
  364. package/dist/web/client/assets/stateDiagram-v2-MP3YSRHH-BYUm8jLY.js +1 -0
  365. package/dist/web/client/assets/swimlanes-42K2YHIH-v9Tw_zX7.js +1 -0
  366. package/dist/web/client/assets/swimlanesDiagram-VR7AAH4N-B2jdCvhD.js +8 -0
  367. package/dist/web/client/assets/timeline-definition-24CTP7MA-DxianbhU.js +120 -0
  368. package/dist/web/client/assets/treeView-Q6P3EWNA-DLxnZb9R.js +1 -0
  369. package/dist/web/client/assets/treemap-WGGIJYW6-I7UnZ6xJ.js +1 -0
  370. package/dist/web/client/assets/vennDiagram-4TSXK5OY-Ar7M8Mrj.js +34 -0
  371. package/dist/web/client/assets/wardley-WFR3VGLG-B8ZSHeDu.js +1 -0
  372. package/dist/web/client/assets/wardleyDiagram-VM6X3IG4-Qks2FmIn.js +78 -0
  373. package/dist/web/client/assets/xychartDiagram-S5SC5T6Z-BBBjRtiE.js +7 -0
  374. package/dist/web/client/clio-coder-logo.webp +0 -0
  375. package/dist/web/client/icon-192.png +0 -0
  376. package/dist/web/client/icon-512.png +0 -0
  377. package/dist/web/client/index.html +6 -0
  378. package/dist/web/client/manifest.webmanifest +15 -0
  379. package/dist/web/client/offline.css +55 -0
  380. package/dist/web/client/offline.html +5 -0
  381. package/dist/web/client/offline.js +27 -0
  382. package/dist/web/client/sw.js +34 -0
  383. package/dist/web/ops-worker.js +37 -0
  384. package/dist/web/reads-worker.js +1726 -0
  385. package/dist/web/server.js +8499 -0
  386. package/dist/web-EMGUGGEI.js +13 -0
  387. package/dist/{web-fetch-W4TNW4Q7.js → web-fetch-6BRRVQON.js} +22 -5
  388. package/dist/{wiki-generate-T2TJQJUA.js → wiki-generate-XHSJTDOP.js} +120 -113
  389. package/dist/{with-panes-CHFC7HGI.js → with-panes-Z6BTEHMZ.js} +12 -12
  390. package/dist/worker/entry.js +113 -99
  391. package/docs/README.md +28 -27
  392. package/docs/architecture/acp.md +5 -9
  393. package/docs/architecture/alcf-provider.md +0 -3
  394. package/docs/architecture/architecture.md +0 -3
  395. package/docs/architecture/artifact-placement.md +12 -4
  396. package/docs/architecture/artifact-versions.md +0 -3
  397. package/docs/architecture/capacity-and-scheduling.md +0 -3
  398. package/docs/architecture/context-engine.md +0 -3
  399. package/docs/architecture/context-working-set.md +0 -3
  400. package/docs/architecture/dispatch-architecture-rationale.md +0 -3
  401. package/docs/architecture/dispatch-typed-intent.md +0 -3
  402. package/docs/architecture/evidence-and-memory.md +0 -3
  403. package/docs/architecture/library.md +1 -3
  404. package/docs/architecture/middleware-and-components.md +0 -3
  405. package/docs/architecture/model-catalog.md +1 -4
  406. package/docs/architecture/observability.md +0 -3
  407. package/docs/architecture/pi-boundary.md +6 -9
  408. package/docs/architecture/prompt-envelope-and-tools.md +37 -30
  409. package/docs/architecture/provider-adapter-cookbook.md +1 -4
  410. package/docs/architecture/safety-model.md +19 -9
  411. package/docs/architecture/session-lifecycle.md +10 -7
  412. package/docs/architecture/time-conventions.md +0 -3
  413. package/docs/architecture/trace-store.md +28 -20
  414. package/docs/architecture/tui-design.md +38 -18
  415. package/docs/architecture/worker-context.md +1 -3
  416. package/docs/architecture/worker-dispatch-mechanics.md +1 -4
  417. package/docs/guide/authoring-plugins.md +1 -3
  418. package/docs/guide/built-in-agents.md +0 -3
  419. package/docs/guide/commands-and-modes.md +41 -25
  420. package/docs/guide/configuration-and-targets.md +204 -9
  421. package/docs/guide/configuration-reference.md +125 -17
  422. package/docs/guide/environment-variables.md +2 -8
  423. package/docs/guide/exit-codes-and-output.md +0 -3
  424. package/docs/guide/extensions-and-sharing.md +0 -3
  425. package/docs/guide/fleet-dispatch.md +3 -5
  426. package/docs/guide/glossary.md +1 -4
  427. package/docs/guide/harness-extensions.md +0 -2
  428. package/docs/guide/installation-and-lifecycle.md +3 -6
  429. package/docs/guide/interop.md +0 -2
  430. package/docs/guide/panes-and-files.md +0 -3
  431. package/docs/guide/plugins.md +0 -3
  432. package/docs/guide/proactive-memory.md +0 -3
  433. package/docs/guide/resource-library.md +1 -3
  434. package/docs/guide/skills-marketplace.md +0 -2
  435. package/docs/guide/tool-usage.md +166 -67
  436. package/docs/guide/troubleshooting.md +1 -4
  437. package/docs/history/config-knobs-audit.md +0 -3
  438. package/docs/history/release-cut-checklist.md +0 -3
  439. package/docs/process/development-pipeline.md +0 -3
  440. package/docs/process/documentation-coverage.md +3 -3
  441. package/docs/process/documentation-guide.md +16 -22
  442. package/docs/process/eval-runner.md +0 -3
  443. package/docs/process/evals-internal.md +0 -3
  444. package/docs/process/evolution.md +0 -3
  445. package/docs/process/fleet-demo-runbook.md +6 -9
  446. package/docs/process/git-commit-provenance.md +0 -3
  447. package/docs/process/performance-methodology.md +1 -4
  448. package/docs/process/release-cut-checklist.md +114 -221
  449. package/docs/process/scientific-validation.md +23 -6
  450. package/docs/process/tool-audit-v0.4.9.md +357 -0
  451. package/library/registry.yaml +2 -2
  452. package/library/skills/meta/clio-coder-test/SKILL.md +25 -15
  453. package/library/skills/meta/clio-coder-test/evals.md +16 -2
  454. package/library/skills/meta/clio-coder-test/plugin.json +1 -1
  455. package/library/skills/meta/clio-coder-test/references/test-map.md +19 -18
  456. package/library/skills/registry.yaml +2 -2
  457. package/library/skills/skill-marketplace.json +1 -1
  458. package/package.json +13 -11
  459. package/src/cli/argv.ts +31 -0
  460. package/src/cli/clio.ts +17 -13
  461. package/src/cli/config.ts +4 -0
  462. package/src/cli/docs.ts +65 -328
  463. package/src/cli/doctor-panes.ts +1 -1
  464. package/src/cli/doctor.ts +3 -1
  465. package/src/cli/index.ts +17 -2
  466. package/src/cli/mcp.ts +106 -0
  467. package/src/cli/skills-eval.ts +8 -2
  468. package/src/cli/trace.ts +4 -65
  469. package/src/cli/uninstall.ts +26 -0
  470. package/src/cli/upgrade.ts +34 -38
  471. package/src/cli/usage.ts +3 -0
  472. package/src/cli/verifiers.ts +1 -1
  473. package/src/cli/web.ts +79 -0
  474. package/src/core/bash-exec.ts +27 -4
  475. package/src/core/bus-events.ts +3 -4
  476. package/src/core/config.ts +73 -1
  477. package/src/core/defaults.ts +10 -1
  478. package/src/core/domain-loader.ts +37 -28
  479. package/src/core/event-bus.ts +1 -1
  480. package/src/core/run-records.ts +438 -0
  481. package/src/core/safe-exec.ts +506 -56
  482. package/src/core/skill-activation.ts +5 -3
  483. package/src/core/termination.ts +16 -12
  484. package/src/core/tool-names.ts +33 -12
  485. package/src/domains/agents/contract.ts +1 -1
  486. package/src/domains/agents/extension.ts +18 -10
  487. package/src/domains/config/extension.ts +5 -4
  488. package/src/domains/context/clio-md.ts +1 -1
  489. package/src/domains/context/worker/pressure.ts +6 -2
  490. package/src/domains/context/working-set/path-index.ts +7 -2
  491. package/src/domains/dispatch/code-step.ts +7 -2
  492. package/src/domains/dispatch/contract.ts +7 -0
  493. package/src/domains/dispatch/execution-role.ts +3 -3
  494. package/src/domains/dispatch/execution-scheduler.ts +204 -79
  495. package/src/domains/dispatch/extension.ts +206 -26
  496. package/src/domains/dispatch/fleet-preflight.ts +18 -3
  497. package/src/domains/dispatch/fleet-run.ts +1 -0
  498. package/src/domains/dispatch/gate-decisions.ts +3 -3
  499. package/src/domains/dispatch/heartbeat.ts +1 -1
  500. package/src/domains/dispatch/host-verification.ts +16 -14
  501. package/src/domains/dispatch/index.ts +1 -0
  502. package/src/domains/dispatch/orphan-recovery.ts +1 -0
  503. package/src/domains/dispatch/receipt-findings.ts +3 -4
  504. package/src/domains/dispatch/receipt-integrity.ts +3 -0
  505. package/src/domains/dispatch/reservation-store.ts +7 -9
  506. package/src/domains/dispatch/route-facts.ts +1 -1
  507. package/src/domains/dispatch/state.ts +4 -5
  508. package/src/domains/dispatch/types.ts +3 -1
  509. package/src/domains/eval/metrics/tracked.ts +22 -2
  510. package/src/domains/evidence/build.ts +35 -7
  511. package/src/domains/extensions/operator-runtime.ts +3 -1
  512. package/src/domains/gateway/mcp/client.ts +923 -0
  513. package/src/domains/gateway/mcp/config.ts +456 -0
  514. package/src/domains/gateway/mcp/index.ts +88 -0
  515. package/src/domains/gateway/mcp/protocol.ts +273 -0
  516. package/src/domains/gateway/mcp/trust.ts +263 -0
  517. package/src/domains/lifecycle/doctor.ts +17 -3
  518. package/src/domains/middleware/hooks.ts +2 -2
  519. package/src/domains/mux/contract.ts +5 -9
  520. package/src/domains/mux/detect.ts +1 -1
  521. package/src/domains/mux/extension.ts +1 -1
  522. package/src/domains/mux/protocol.ts +5 -7
  523. package/src/domains/mux/socket-client.ts +3 -3
  524. package/src/domains/observability/accountability.ts +2 -2
  525. package/src/domains/observability/background-memory-usage.ts +3 -0
  526. package/src/domains/observability/compaction-usage.ts +2 -0
  527. package/src/domains/observability/contract.ts +7 -3
  528. package/src/domains/observability/cost.ts +5 -0
  529. package/src/domains/observability/evidence-index.ts +2 -2
  530. package/src/domains/observability/extension.ts +1 -0
  531. package/src/domains/observability/out-of-turn-usage.ts +2 -0
  532. package/src/domains/observability/projection.ts +10 -0
  533. package/src/domains/observability/trace-store.ts +65 -5
  534. package/src/domains/prompts/compiler.ts +41 -23
  535. package/src/domains/prompts/extension.ts +4 -17
  536. package/src/domains/prompts/fragments/identity/docs-routing.md +2 -2
  537. package/src/domains/prompts/fragments/operating/skills.md +12 -10
  538. package/src/domains/providers/cache-deployment.ts +147 -0
  539. package/src/domains/providers/catalog.ts +12 -7
  540. package/src/domains/providers/extension.ts +27 -5
  541. package/src/domains/providers/index.ts +6 -1
  542. package/src/domains/providers/models/local-models/clio-coder-local-coding-targets.yaml +42 -10
  543. package/src/domains/providers/plugins.ts +3 -13
  544. package/src/domains/providers/probe/http.ts +44 -59
  545. package/src/domains/providers/probe/reasoning.ts +2 -0
  546. package/src/domains/providers/runtimes/common/local-synth.ts +4 -0
  547. package/src/domains/providers/runtimes/local-native/llamacpp-embed.ts +20 -31
  548. package/src/domains/providers/runtimes/local-native/llamacpp-rerank.ts +9 -4
  549. package/src/domains/providers/types/target-descriptor.ts +17 -0
  550. package/src/domains/safety/action-classifier.ts +17 -1
  551. package/src/domains/safety/call-target.ts +14 -0
  552. package/src/domains/safety/contract.ts +1 -1
  553. package/src/domains/safety/finish-contract.ts +9 -3
  554. package/src/domains/safety/loop-detector.ts +1 -1
  555. package/src/domains/safety/policy-engine.ts +7 -0
  556. package/src/domains/safety/protected-artifacts.ts +3 -4
  557. package/src/domains/safety/rejection-feedback.ts +1 -1
  558. package/src/domains/safety/scope.ts +2 -3
  559. package/src/domains/safety/validation-contract.ts +3 -2
  560. package/src/domains/scheduling/budget.ts +5 -3
  561. package/src/domains/scheduling/contract.ts +2 -1
  562. package/src/domains/scheduling/extension.ts +3 -3
  563. package/src/domains/session/compaction/branch-summary.ts +1 -1
  564. package/src/domains/session/compaction/compact.ts +29 -3
  565. package/src/domains/session/compaction/cut-point.ts +1 -1
  566. package/src/domains/session/compaction/tokens.ts +5 -10
  567. package/src/domains/session/contract.ts +1 -1
  568. package/src/domains/session/cwd-fallback.ts +2 -2
  569. package/src/domains/session/entries.ts +1 -0
  570. package/src/domains/session/handoff.ts +5 -1
  571. package/src/domains/session/history.ts +6 -0
  572. package/src/domains/session/manager.ts +14 -7
  573. package/src/domains/session/retry.ts +2 -1
  574. package/src/domains/session/session-artifacts.ts +12 -7
  575. package/src/domains/session/task-board.ts +2 -3
  576. package/src/domains/session/usage.ts +6 -7
  577. package/src/engine/acp/server.ts +11 -0
  578. package/src/engine/ai.ts +2 -0
  579. package/src/engine/apis/openai-completions.ts +17 -4
  580. package/src/engine/loop-guard.ts +7 -0
  581. package/src/engine/prewarm.ts +232 -0
  582. package/src/engine/provider-diagnostics.ts +6 -1
  583. package/src/engine/provider-error-body.ts +65 -0
  584. package/src/engine/session.ts +118 -29
  585. package/src/engine/worker-runtime.ts +3 -0
  586. package/src/entry/boot-options.ts +2 -0
  587. package/src/entry/orchestrator.ts +38 -18
  588. package/src/interactive/chat-loop-messages.ts +3 -0
  589. package/src/interactive/chat-loop-policy.ts +1 -0
  590. package/src/interactive/chat-loop.ts +10 -12
  591. package/src/interactive/chat-panel.ts +23 -9
  592. package/src/interactive/chat-renderer.ts +33 -11
  593. package/src/interactive/clio-editor.ts +13 -5
  594. package/src/interactive/dispatch-board.ts +70 -30
  595. package/src/interactive/editor-submit.ts +30 -25
  596. package/src/interactive/footer/widgets.ts +12 -9
  597. package/src/interactive/interactive-presentation.ts +2 -3
  598. package/src/interactive/mux-bridge.ts +3 -7
  599. package/src/interactive/overlay-general-openers.ts +14 -7
  600. package/src/interactive/overlays/cwd-fallback.ts +1 -1
  601. package/src/interactive/overlays/library-model.ts +114 -35
  602. package/src/interactive/overlays/library.ts +52 -5
  603. package/src/interactive/overlays/list-overlay.ts +4 -1
  604. package/src/interactive/overlays/session-selector.ts +28 -23
  605. package/src/interactive/overlays/settings.ts +20 -1
  606. package/src/interactive/overlays/tree-selector.ts +47 -10
  607. package/src/interactive/panes-runtime.ts +1 -1
  608. package/src/interactive/prewarm.ts +11 -197
  609. package/src/interactive/renderers/compaction-summary.ts +1 -1
  610. package/src/interactive/renderers/provider-error.ts +118 -0
  611. package/src/interactive/renderers/retry-status.ts +59 -23
  612. package/src/interactive/renderers/tool-execution.ts +67 -7
  613. package/src/interactive/renderers/worker-answer.ts +198 -0
  614. package/src/interactive/renderers/worker-entry.ts +57 -163
  615. package/src/interactive/session-usage-reseed.ts +2 -0
  616. package/src/interactive/side-question.ts +2 -0
  617. package/src/interactive/slash-commands.ts +26 -1
  618. package/src/interactive/slash-spec.ts +2 -2
  619. package/src/interactive/theme/labels.ts +66 -30
  620. package/src/interactive/turn-context.ts +1 -0
  621. package/src/interactive/turn-persistence.ts +9 -1
  622. package/src/interactive/turn-prewarm.ts +126 -19
  623. package/src/interactive/turn-recovery.ts +2 -1
  624. package/src/interactive/turn-runtime.ts +36 -5
  625. package/src/interactive/view/artifacts.ts +3 -2
  626. package/src/interactive/view/view-overlay.ts +96 -20
  627. package/src/tools/agent-tools.ts +21 -7
  628. package/src/tools/artifact.ts +16 -8
  629. package/src/tools/bash.ts +90 -11
  630. package/src/tools/bootstrap.ts +42 -4
  631. package/src/tools/builtin-tool-catalog.ts +80 -11
  632. package/src/tools/context/index.ts +27 -31
  633. package/src/tools/context/library.ts +3 -1
  634. package/src/tools/context/surface.ts +12 -26
  635. package/src/tools/core-bootstrap.ts +72 -1
  636. package/src/tools/data/csv.ts +1189 -0
  637. package/src/tools/data/index.ts +308 -0
  638. package/src/tools/data/json.ts +1799 -0
  639. package/src/tools/data/jsonl.ts +561 -0
  640. package/src/tools/data/shared.ts +452 -0
  641. package/src/tools/edit-diff.ts +0 -7
  642. package/src/tools/edit.ts +115 -18
  643. package/src/tools/file-mutation-queue.ts +114 -4
  644. package/src/tools/find.ts +108 -29
  645. package/src/tools/gateway/caps.ts +11 -0
  646. package/src/tools/gateway/clio-context-surface.ts +41 -0
  647. package/src/tools/gateway/clio-context-tools.ts +77 -0
  648. package/src/tools/gateway/data-surface.ts +138 -0
  649. package/src/tools/gateway/data-tool.ts +201 -0
  650. package/src/tools/gateway/index.ts +342 -0
  651. package/src/tools/gateway/mcp-capabilities.ts +469 -0
  652. package/src/tools/grep.ts +88 -33
  653. package/src/tools/harness-extensions.ts +3 -0
  654. package/src/tools/ignore-policy.ts +7 -5
  655. package/src/tools/ls.ts +111 -20
  656. package/src/tools/policy.ts +35 -13
  657. package/src/tools/presentation.ts +6 -0
  658. package/src/tools/read.ts +634 -156
  659. package/src/tools/registry.ts +106 -8
  660. package/src/tools/run-script.ts +997 -0
  661. package/src/tools/spawn-hygiene.ts +157 -5
  662. package/src/tools/surface.ts +163 -0
  663. package/src/tools/verify/authoring.ts +8 -3
  664. package/src/tools/verify/catalog.ts +14 -1
  665. package/src/tools/verify/numeric.ts +367 -59
  666. package/src/tools/verify/perf.ts +171 -9
  667. package/src/tools/verify/scripts.ts +178 -26
  668. package/src/tools/web-fetch-surface.ts +22 -0
  669. package/src/tools/web-fetch.ts +26 -1
  670. package/src/tools/write.ts +45 -19
  671. package/src/worker/spec-contract.ts +27 -0
  672. package/dist/chunk-B6UM3OZC.js +0 -15
  673. package/dist/chunk-GJ24ODAX.js +0 -196
  674. package/dist/chunk-HRAKUPIH.js +0 -57
  675. package/dist/docs-BL7ROUFN.js +0 -292
@@ -66,7 +66,7 @@
66
66
  "name": "clio-coder-test",
67
67
  "source": "./library/skills/meta/clio-coder-test",
68
68
  "description": "Verifies a Clio Coder source change against the current contract, smoke, boundary, and application test lanes, including temporary-state and local-provider harnesses. Not for deciding what may change; use clio-coder-dev.",
69
- "version": "0.3.0",
69
+ "version": "0.3.1",
70
70
  "category": "meta",
71
71
  "license": "Apache-2.0"
72
72
  },
package/CHANGELOG.md CHANGED
@@ -2,6 +2,117 @@
2
2
 
3
3
  All notable changes to Clio Coder are documented in this file. The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and versions follow Semantic Versioning; pre-1.0 minor releases may include incompatible changes.
4
4
 
5
+ ## 0.4.9 - 2026-09-17
6
+
7
+ ### read
8
+
9
+ - Read text of any size through bounded windows; count exact lines only through 32 MiB, keep a separate 20 MB (20000000 bytes) image ceiling, refuse binary/invalid UTF-8 with offsets, report file identity and observed changes, and provide honest tail continuation and numbering limits.
10
+
11
+ ### write and edit
12
+
13
+ - Publish atomically to real symlink targets with mode preservation, before/after file identities, and explicit durability warnings. Bound previous-content diff reads and skip diffs above 1 MiB.
14
+ - Edit refuses binary, invalid UTF-8, mixed or bare-CR endings; preserves BOM and uniform line endings; requires exact matching above 1 MiB. External writers remain unlocked.
15
+
16
+ ### bash
17
+
18
+ - Keep the combined 16 MiB stop-on-output contract while distinguishing observed and retained bytes and reporting actual inline, offloaded, discarded, or failed retention under every output policy. Point large-output processing to run_script.
19
+
20
+ ### grep, find, and ls
21
+
22
+ - Preserve partial search results on timeout, cancellation, and recoverable errors, with completeness, skipped counts, bounded samples, and unknown-coverage notices. Disclose fallback ignore differences and native find's uncounted symlink-directory skips while preserving fd glob behavior.
23
+ - List symlink targets, broken links, and inspection failures explicitly. Select the alphabetical prefix asynchronously with bounded retained entries and report selection metadata.
24
+
25
+ ### run_script
26
+
27
+ - Add direct script execution with an explicit interpreter, argv, cwd, timeout, declared environment and file references, disk-streamed stdout/stderr, bounded progress, and a run manifest under `.clio-coder/runs/`.
28
+ - Preserve actual leader exit beside effective failure for incomplete group cleanup or pipe draining; bound post-exit draining to one second and state escaped-process limits. Keep 100 completed run records with bounded retention metadata reads and explicit skipped entries.
29
+
30
+ ### verify
31
+
32
+ - Add explicit all/any tolerance combination and fail/match non-finite policy, safe-integer ULP bounds, lossless non-finite report spellings, reference/payload provenance, and separate execution/validation/scientific-validity judgements.
33
+ - Add version-2 performance baseline environments and informational mismatch reports. Refuse judgement of capped output; align direct and host verification at the 32 MiB judged capture/reference ceiling.
34
+
35
+ ### gateway and MCP
36
+
37
+ - Add find/describe/call routing for secondary builtins, extension commands, and trusted local stdio MCP, preserving inner authority, worker attestation, terminal results, and exported evidence identity.
38
+ - Add strict user/project mcp.yaml configuration, digest-bound project trust, `clio-coder mcp list|trust|untrust`, and interactive `/mcp`. Cancel shared discovery with owned cleanup and await teardown on shutdown; exit cleanup stays client-owned.
39
+ - Reject malformed MCP call result envelopes instead of reporting successful empty results.
40
+ - Render structured-only MCP results in bounded model-visible text, preserving numeric source literals in both the projection and retained evidence.
41
+ - Resolve overlapping MCP server prefixes deterministically and report conflicting tool names as unregistrable, preserving server identity and authority during lazy discovery.
42
+
43
+ ### model compatibility
44
+
45
+ - Record the measured mini/qwopus3.8-27b-dense route's low/medium/xhigh effort vocabulary. Map high/max to xhigh and forward the explicit effort through LiteLLM to avoid the observed upstream rejection, consistent with an incompatible deployment default.
46
+
47
+ ### context, web, and artifacts
48
+
49
+ - Keep workspace, skills, and recall on context; move documentation and recipe browsing to gateway capabilities clio_docs and clio_library.
50
+ - Separate gateway GET-only web_read from full web_fetch requests. Move git, evidence, and credential_present behind the same gateway.
51
+ - Move artifact behind the gateway with atomic publication and its existing terminal turn contract intact.
52
+
53
+ ### data
54
+
55
+ - Add gateway inspection, selection, and validation for CSV/TSV and JSON/JSONL with streaming readers, explicit exact/sampled/cut views, precision and sentinel reporting, bounded captures, and actionable unsupported-format refusals.
56
+
57
+ ### terminal workbench
58
+
59
+ - Use case-insensitive literal search terms across View resource identity and provenance, show match counts, and place the cursor at the end of an initial query. Ctrl+U clears the whole filter independently of customized cursor bindings, with one-step undo restoring the query and cursor. Workspace outputs lead with their basename and relative path; preview offers scrollable provenance with `i` and retains selection across refresh.
60
+ - Separate Library discovery notices into a searchable `n` view that preserves the resource browser on return. Use package, entry, and member units consistently in status and footer counts; label plugin providers in recipe categories, explain package action scope, and open narrow layouts with detail visible. Notice-return guidance respects search focus, and trusted state colors survive sanitization of external metadata.
61
+ - Preserve raw target/model fields until composer rendering, retaining recognizable target, model family, and variant suffixes at narrow widths. Sanitize identity and workspace text before abbreviation. Keep workspace identity and live worker counts visible in the footer. Fleet Runs shows current operations and compact task previews, with the full route and task, available policy and budget details, and a bounded answer excerpt available through Enter detail; complete available evidence remains inspectable through `/view`; control hints reflect the selected run's capabilities. Ordinary unvalidated completions retain an explicit unverified/validation summary, with full provenance on Enter and exceptional trust facts still visible.
62
+ - Distinguish current worker operations from completed calls in Detailed previews while retaining pending checkpoint questions and canonical evidence.
63
+
64
+ ### maintenance reliability
65
+
66
+ - Keep stale or unavailable addressed worker steering out of the main conversation and preserve the rejected draft. Preserve session-picker selection through filtering and undo, honor the selected row with customized confirmation, and prioritize task identity in narrow terminals.
67
+ - Bound provider-error previews by terminal rows, retain actionable status and route advice, and distinguish provider retries from fleet retries. Keep complete available redacted diagnostics in inspection and export. On OpenAI-compatible routes, restore the error body the SDK truncates at 4000 characters when the captured response provably matches it, bounded at 65536 characters; other adapters keep the upstream cap. Replaying intermediate tool-use messages no longer attaches a successful completion footer to an earlier failed or cancelled turn.
68
+ - Complete partial UTF-8 session writes before acknowledging entries, roll back failed appends, and retain pending durability flushes through descriptor cleanup. Validate session format and replay entries before switching owners, and prepare migrated ledgers before publishing reopened lifecycle state.
69
+ - Keep provider deadlines and caller cancellation active through response bodies and release unread probe responses. Apply the same lifetime to native capability and embedding requests; permit native embedding fallback only for completed endpoint-unavailable responses, preserving the existing healthy vector and reranking contracts.
70
+ - Render recognized completed worker contracts consistently in Fleet Runs and the transcript using verified receipt identity and conformance. Preserve raw evidence, partial-output disclosure and the distinction between execution, contract conformance and validation.
71
+ - Align installed-skill activation guidance with the existing autonomy policy while preserving operator-gated marketplace installation, recipe restrictions and first-turn discovery. The corrected instructions replace contradictory wording without growing the prompt.
72
+ - Retain scheduler ownership of workers across partial parallel startup and cancellation until their terminal cleanup settles. Keep concrete fleet-member steering, permission responses and cancellation within the addressed member or assignment retry chain instead of selecting a sibling with shared ancestry.
73
+ - Reopen and restamp a migrated version-3 session in one atomic metadata publication, so a refused resume leaves the prior metadata intact instead of marking the candidate open under its old version.
74
+ - Stop the boot-time tool-support warning for targets that were never probed; a cold gateway route reports nothing about its model until a probe, catalog entry or target flag states it.
75
+ - Record fleet preflight results again, through `clio-coder doctor --fix`. Since 0.4.1 no command wrote the preflight store, so dispatch admission refused every SSH node while advising a plain `doctor` run that could not help. Plain `doctor` stays observation-only and says whether the node is recorded. Verified with a real worker dispatched to a homelab node over SSH.
76
+ - Name write-root confinement in the dispatch refusal when it, not the runtime, removed a required tool, with the remedy for read-only or worktree runs.
77
+ - Verify a preserved skill load when its `context` call shared a parallel tool batch. The ledger chains entries linearly, so the strict parent check failed for batched loads, the fail-closed clamp then protected everything after the activation, and the session could never compact. Found in a live WTF-P session that stalled at 80% context with `/context compact` reporting nothing to compact.
78
+ - Record a loaded skill that declares no tool narrowing as a known selection. It was persisted as unknown, which also forced the compaction clamp for the rest of the session.
79
+ - Title a session from the typed input when a prompt template or command expanded it. The session picker and replayed transcripts showed the expansion, so every WTF-P session read "<!-- Generated by WTF-P adapter compiler". The expansion stays the request that compaction reasserts.
80
+ - Render one terminal row per tool line. A multi-line bash command stayed one row with a raw newline inside, and tool output kept cursor movement, backspaces and carriage returns, so the diff renderer painted every row below one row low and left bash residue over the composer border. Command previews collapse to one sanitized line and result text is neutralized before it is wrapped.
81
+ - Bound one MCP result to 16 KiB of model context, the cap the built-in observation tools use. Only the 64 KiB session cap applied before, so a 62 KB search result entered context verbatim and two of them stalled a 131k local model. The full text is offloaded and the result names how to narrow the call or read the file in windows.
82
+ - Name an ignored project settings layer under the Settings header of `clio-coder config inspect`. An untrusted `.clio-coder/settings.yaml` is ignored by design until `clio-coder config trust settings --hash <digest>`, but the only notice sat in the trailing Issues block, so a project `chat.retry.streamStallMs` looked like a setting that failed to apply.
83
+ - Give the wait for a call's first token its own window, `chat.retry.firstTokenStallMs` (default 600000). One 180 s timer covered both the first token and mid-stream silence, although the setting is documented as measured from the last token received. A local llama-server that slept reloads in about 150 s and then prefills cold, so healthy turns were aborted and retried. `streamStallMs` still catches a stream that goes silent after it started, and re-arms at the first token.
84
+ - Accept `clio-coder --autonomy <level>` for the interactive session. Only `clio-coder run` took the flag, so the supervised start that the WTF-P guide documents failed as an unknown global option. The flag seeds the same one-session override `/settings` uses and leaves `settings.yaml` untouched. Before a subcommand it is refused with the `run --autonomy` form named, because dropping a safety level silently would be worse. The top-level help now also lists `clio-coder mcp`.
85
+ - Clear the remaining lint findings and split the web framework into its own chunk, which removes the oversized entry-chunk warning.
86
+
87
+ ## 0.4.8 - 2026-09-12
88
+
89
+ Clio Coder 0.4.8 strengthens the terminal and headless harness: settings take effect consistently, provider and usage records stay tied to the right request, and startup, reload and shutdown retain their cleanup guarantees. Start with `clio-coder configure`, then `clio-coder` for interactive work or `clio-coder run` for headless tasks. The optional web app and local PWA add another way to reach the same runtime; they do not replace the CLI, TUI or ACP.
90
+
91
+ ### Added
92
+ - An npm-backed bootstrap installer for Linux/macOS with prerequisite checks, a user-owned prefix, version selection, dry runs, conflict protection, and terminal-first next steps.
93
+ - An optional web application through the lazy `clio-coder web` command, packaged with its REST/SSE server, two domain workers, and local client assets. Sessions, traces, docs, toolchain, settings/targets, fleet, evidence, evals/usage, Library, and system inspection use the existing Clio runtime.
94
+ - Explicit background service setup for Linux with a systemd user session and an installable PWA with a stable local connection and offline recovery. Native lifecycle verification covers Linux/WSL2; macOS and Windows were not exercised in this sprint. Foreground web use remains available on other platforms.
95
+
96
+ ### Changed
97
+ - Separate fast routine CI, exact-package qualification and explicitly invoked full development investigations. Publication now checks a fresh, source- and artifact-bound qualification instead of rerunning the entire suite. An earlier v0.4.8 candidate was withdrawn before npm publication; this release is the re-qualified cut.
98
+ - Remove duplicated catalog/prose snapshots and repeated synthetic eval executions, reuse the installed package for browser verification, and replace configuration-reference repository copies with one typed schema check.
99
+ - Preserve causal first-call timing when session wall clocks regress, and stop cancellation tests from swallowing Node test reporter output.
100
+ - Generate the web documentation directly from the canonical Markdown, with shared navigation, search, heading outlines and the application theme. `clio-coder docs [topic]` opens the same reading surface and reuses a configured background app. Retire the separate docs server and HTML blueprints, including their iframe bridge and package assets. Markdown remains available to agents and repository readers.
101
+ - Build the web surface together with the CLI, share server chunks, and ship frontend/font/Hono notices. Installed-package tests exercise both workers without a TypeScript loader. Release size tripwires are 12 MB compressed / 55 MB unpacked for the complete package.
102
+ - Restore the Clio logo in the web app with cream and pastel forest themes and compact application controls.
103
+ - Retire the separate trace viewer and `trace ui`; the unified web app uses the shared runtime trace reader. Preserve Workbench as reference source outside workspace builds, publication, and product gates. Update the shipped testing skill to use the current application lane.
104
+
105
+ ### Fixed
106
+ - Apply effective output limits, thinking settings, tool read limits and history retention at their declared reload boundaries. Changing the selected target refreshes its runtime; configuration mutations are validated once against the value that will actually be committed.
107
+ - Load provider runtime packages from canonical settings and bind cached probe state to the current target identity. External agent edits invalidate prompt inputs; recipe reloads stay independent from executable extension reloads.
108
+ - Preserve SDK pricing tiers and per-call costs through native worker accounting. Retain cache-write lifetimes and usage from billed failed calls across session history, traces, compaction and receipts instead of repricing aggregate tokens.
109
+ - Carry target cache policy through native provider requests. Prewarm uses the normal request hooks, requires fresh matching deployment evidence, and enforces input, duration and cooldown bounds. Detached work retains ownership until it settles; paid routes remain ineligible for speculative warming.
110
+ - Unwind started domains after a startup failure, stop each domain once, and preserve per-domain shutdown budgets. Failed extension reloads retain the cleanup needed to stop their processes.
111
+ - Apply user-hook path protections before tool execution and preserve annotations emitted before a tool starts.
112
+ - Report unavailable target credentials before an ACP turn starts, with recovery instructions for background sessions whose keys were configured only in a terminal environment. Keep provider error bodies and credentials out of web errors.
113
+ - Stop and disable owned web background services and remove their desktop entries before root uninstall deletes Clio state. Preview these resources and preserve state when ownership checks or service removal fail.
114
+ - Resolve the real-home release smoke's input configuration through Clio's canonical paths command and pin all four temporary roots before running diagnosis or a turn, so inherited directory overrides cannot redirect smoke writes into the operator's state.
115
+
5
116
  ## 0.4.7 - 2026-09-10
6
117
 
7
118
  This release brings a unified Library for reusable workflows, operator extensions, safer keyboard and draft handling, and a compact welcome header. Native workers retain configured output limits and interrupted reasoning, and the guides describe the shipped behavior and its verification limits.
package/CONTRIBUTING.md CHANGED
@@ -17,45 +17,60 @@ Requirements:
17
17
  - Linux or macOS for full parity. Windows is best effort until a stable release.
18
18
 
19
19
  Enable pnpm through Corepack (`corepack enable pnpm`), or install the pinned version locally.
20
- The root workspace includes both applications. pnpm owns dependency installation;
21
- Workbench still uses Deno for its host and tests.
20
+ The root workspace includes the unified web application. pnpm owns dependency
21
+ installation. `apps/workbench/` is retained reference source and excluded from
22
+ workspace builds, publication, and product gates.
22
23
 
23
- Bootstrap:
24
+ Bootstrap, in the order the checks depend on each other (the smoke tests run
25
+ the built `dist/`, so build before testing):
24
26
 
25
27
  ```bash
26
28
  pnpm install --frozen-lockfile
29
+ pnpm run build
27
30
  pnpm run typecheck
28
31
  pnpm run lint
29
32
  pnpm run test
30
- pnpm run build
33
+ pnpm run test:web
31
34
  ```
32
35
 
33
- Local and GitHub PR gate (fast, deterministic):
36
+ Local and GitHub PR gate:
34
37
 
35
38
  ```bash
36
39
  pnpm run ci
37
40
  ```
38
41
 
39
- This runs type checking, lint (including boundaries, documentation drift and
40
- skill audit records and full-tree library pins), one build, the contract/smoke
41
- suite, and the trace-viewer suite. Use `pnpm run library:check` for package pins
42
- and `pnpm run skills:check` for skill authoring records; both run in `lint` and `ci`.
42
+ This runs types, lint (including architecture boundaries and library pins), one
43
+ build, 27 core contract files, three real CLI/ACP/process smoke files, and the
44
+ web application's authentication and runtime boundary tests. It deliberately
45
+ excludes broad development regressions, catalog inventories and model eval
46
+ corpora. Superseded GitHub runs are cancelled. Branch protection requires `ci (22)` (the routine gate) and `ci (24)` (engine,
47
+ provider transport and durable-session compatibility only). The separate Windows job runs
48
+ only the three subprocess contracts whose process-tree behavior is platform-specific.
43
49
 
44
- The GitHub `ci` job runs the release gate on Ubuntu. The separate
45
- `windows-subprocess` job uses Node 22 on `windows-latest` and runs typecheck
46
- plus the Antigravity subprocess, Bash settlement, and Windows process-tree
47
- contracts. It is a focused Windows lane, not the full suite. Native Windows
48
- local checks provide local evidence; they do not establish a hosted CI pass.
49
-
50
- Release gate (for maintainers before tags or release artifacts):
50
+ Choose the lane for the risk:
51
51
 
52
52
  ```bash
53
- pnpm run ci:release
53
+ pnpm run test:file -- tests/contracts/safety-gates.test.ts # focused development
54
+ pnpm run ci # routine Linux CI
55
+ pnpm run ci:release # clean committed candidate
56
+ pnpm run test:full # explicit full root investigation
57
+ pnpm run test:web:full # explicit full web investigation
58
+ pnpm --filter @iowarp/clio-coder-web verify # full web development, including browser matrix
54
59
  ```
55
60
 
56
- The release gate includes `ci` and adds the package audit. Running `ci` again
57
- on the same unchanged tree is unnecessary. Run a focused regression while
58
- developing a repair, then the full gate for the candidate being reviewed.
61
+ Candidate qualification runs the routine gate, web types, the dependency/package
62
+ audit, and two package smoke files. Those install the exact tarball with normal npm
63
+ lifecycle scripts, exercise native delayed-header timing, and boot the installed web
64
+ app in Chrome. They reuse that installed server for the browser check. No live model
65
+ or operator credentials are required. Registry access is needed for the installed
66
+ runtime dependencies and advisory audit; a failed audit is a failed qualification.
67
+ Cold dependency installation is separate from gate timing.
68
+
69
+ `tests/extended/` and `tests/extended-smoke/` retain focused development regressions.
70
+ Run the relevant ones when editing their surfaces, or the explicit full suite for an
71
+ extended investigation. They are not repeated during CI or npm publication. A newly
72
+ found correctness regression must be fixed before qualification; moving a failing
73
+ test to an extended lane is not a repair.
59
74
 
60
75
  Live provider validation (manual/opt-in, after `pnpm run build`):
61
76
 
@@ -76,56 +91,38 @@ built `dist/cli/index.js`; their files own the process drivers needed for each
76
91
  boundary. Rebuild `dist/` after changing CLI or entry-point source before
77
92
  running a focused smoke test.
78
93
 
79
- Do not assert a CLI subcommand's output by capturing `process.stdout.write`
80
- in-process. In-process stdout capture fights the node:test spec reporter:
81
- async flushes land in the capture buffer and the reporter's pass/fail counters
82
- get eaten, so a passing test can report as no output. Spawn the CLI through the
83
- harness instead. Patching `process.stdout`/`stderr` to assert a small library
84
- function's own output is fine; the trap is capturing a whole subcommand's
85
- output in-process while the reporter runs.
94
+ Never replace `process.stdout.write` across asynchronous test work. Node's test
95
+ child sends reporter records through that stream: a later test's mock can swallow
96
+ an earlier failure's name and details. Spawn CLI commands using the current built
97
+ binary. Small library captures must forward non-string reporter frames unchanged.
98
+
86
99
 
87
100
  ## Releasing
88
101
 
89
- Releases are cut from a tag. The GitHub release is created by CI; the npm
90
- publish is a manual maintainer step. The current procedure is the sequence
91
- below together with `.github/workflows/release.yml` and
92
- `scripts/check-release.mjs`. The
93
- [v0.4.1 release-cut checklist](docs/history/release-cut-checklist.md) is a
94
- historical record, not a reusable current checklist.
95
-
96
- 1. During development, keep the top changelog section at `## Unreleased`. A
97
- maintainer collects release work on a **local-only** compact candidate
98
- branch (`v046` for `v0.4.6`) and bumps `version` there. Never push this
99
- candidate branch to the canonical repository. Before the cut, retitle the
100
- changelog section `## <version> - YYYY-MM-DD`, align the ACP registry manifest
101
- version, and update the README's install tag and release notices.
102
- 2. Run `pnpm run ci:release` on the exact candidate. It runs the full `ci` gate,
103
- then `scripts/check-release.mjs`, which verifies the built `dist/` and
104
- audits the exact npm package contents.
105
- 3. Fetch `origin`, require the fetched `origin/main` to be the candidate's
106
- ancestor, then fast-forward local `main` with `git merge --ff-only v046`.
107
- Re-run the release gate if the candidate changed and verify local `main`
108
- equals the reviewed candidate SHA.
109
- 4. Fetch once more and stop on unexpected movement. With explicit maintainer
110
- authorization, push only `refs/heads/main:refs/heads/main`; no topic or
111
- release-candidate branch is pushed to canonical `origin`.
112
- 5. Require CI for that exact `main` SHA to pass. Create the annotated tag on
113
- that commit and push only it: `git tag -a v0.4.6` followed by
114
- `git push origin refs/tags/v0.4.6`. The tag must match `package.json`; the
115
- release workflow refuses mismatches.
116
- 6. `.github/workflows/release.yml` verifies the tag against `package.json`,
117
- runs `pnpm run ci:release` on the tagged tree, and creates the GitHub release
118
- with the tarball attached and the version's `CHANGELOG.md` section as the
119
- body. It does not publish to npm.
120
- 7. A maintainer publishes from the tagged commit with `npm publish`;
121
- `prepublishOnly` runs the same `ci:release` gate in release mode first.
122
- 8. Verify the release and tag. Reconcile milestone tickets against tagged
123
- implementation and acceptance evidence; plain issue references and release
124
- tags do not close tickets. Verify automatic closures, explicitly close
125
- completed tickets that remain open, and carry incomplete work forward before
126
- closing the milestone. Then delete the local compact candidate branch.
127
- The canonical remote returns to its steady state: `main` plus immutable
128
- release tags and GitHub releases, with no release branch.
102
+ The current [release checklist](docs/process/release-cut-checklist.md) is authoritative.
103
+
104
+ 1. Prepare and commit the exact candidate on a local branch. Install the pinned
105
+ workspace dependencies, then run `pnpm run ci:release` once. It qualifies one
106
+ artifact and stores it with a receipt under `~/.cache/clio-coder/qualification/`.
107
+ A new qualification invalidates old evidence before doing any work.
108
+ 2. Review the candidate SHA and qualified package. With explicit authorization,
109
+ fast-forward main and push the matching annotated version tag. The tag workflow
110
+ qualifies its own exact package before a dependent job can create the GitHub release.
111
+ It uploads that package, never a newly packed replacement.
112
+ 3. From the unchanged locally qualified checkout, run `pnpm run release:preflight`,
113
+ then, only with publication authorization, `npm publish`. `prepublishOnly` repeats
114
+ only the fast preflight. It requires the same clean commit, Node version, a
115
+ qualification less than 24 hours old, the original artifact digest, matching
116
+ current package bytes (including ignored build output), and dated release notes.
117
+ Missing, stale or changed evidence fails closed: qualify again. There are no
118
+ bypass flags or ignored lifecycle hooks in this procedure.
119
+ 4. Verify the published artifact and reconcile the release milestone before branch
120
+ closeout. Remote writes, tags and publishing always require explicit authorization.
121
+
122
+ Do not run `ci`, the full suite, another build, or another installed-package check
123
+ between successful qualification and publication. A rebuild may change package bytes
124
+ and require qualification again. Live-model checks and the real-home smoke are
125
+ optional investigations, not deterministic publish prerequisites.
129
126
 
130
127
  What `scripts/check-release.mjs` enforces, and how to respond when it fails:
131
128
 
@@ -133,8 +130,9 @@ What `scripts/check-release.mjs` enforces, and how to respond when it fails:
133
130
  `npm publish` require `## <version> - YYYY-MM-DD`, so unfinished notes cannot
134
131
  enter an immutable artifact.
135
132
  - Only `dist/cli/index.js` and `dist/worker/entry.js` carry a shebang. The
136
- shebang comes from the hashbang line in each entry source file. Never add
137
- a tsup `banner`; it would stamp every chunk in `dist/`.
133
+ shebang comes from the hashbang line in each entry source file. Never put a
134
+ shebang in the tsup `banner`; a banner is stamped on every chunk in `dist/`
135
+ (the existing banner only defines `require` for bundled CommonJS code).
138
136
  - The package ships no source maps, benchmarks, caches, or repo scripts. If
139
137
  a forbidden file appears, fix the `files` allowlist in `package.json`
140
138
  rather than deleting the file from the repo.
@@ -144,7 +142,7 @@ What `scripts/check-release.mjs` enforces, and how to respond when it fails:
144
142
  both package.json `files` and `scripts/release-manifest.json`.
145
143
  The double bookkeeping is deliberate: neither edit can silently drop a
146
144
  resource the CLI needs at runtime.
147
- - Size budgets: 10 MB tarball, 50 MB unpacked, set in `check-release.mjs`.
145
+ - Size budgets: 12 MB tarball, 55 MB unpacked, set in `check-release.mjs`.
148
146
  They are a tripwire for packaging defects such as a leaked `node_modules`
149
147
  or a doubled `dist/`, not a diet. If a legitimate change exceeds them,
150
148
  raise the budget in the same PR with a justification, never as a drive-by.
@@ -156,6 +154,18 @@ subcommands behind dynamic imports, and keep heavyweight runtime dependencies
156
154
  in the `external` list so they load from `node_modules` only when a chunk
157
155
  that needs them runs.
158
156
 
157
+ ## Getting help and reporting problems
158
+
159
+ - Questions, bug reports, and feature requests go to
160
+ [GitHub issues](https://github.com/iowarp/clio-coder/issues). Include the
161
+ Clio and Node versions, the relevant `clio-coder doctor` output, and steps
162
+ to reproduce, with credentials and sensitive project data removed.
163
+ - Security issues follow [SECURITY.md](SECURITY.md), not a public issue.
164
+ - Participation is governed by the [Code of Conduct](CODE_OF_CONDUCT.md).
165
+ - Field reports from real research projects are the most useful input: a
166
+ difficult build, an unreliable model connection, or a workflow that needs
167
+ better support.
168
+
159
169
  ## Hard Rules
160
170
 
161
171
  1. The canonical repository's only branch is `main`. Maintainer topic,
@@ -317,10 +327,9 @@ requiring a network fetch.
317
327
  - Standalone agent, prompt, and fleet packages live under `library/agents/`,
318
328
  `library/prompts/`, and `library/fleets/`.
319
329
  - Working authoring templates for all five kinds live under `library/_authoring/templates/{skill,agent,prompt,fleet,plugin}/`.
320
- - `.claude-plugin/marketplace.json` and `.agents/skills/` are the generated outbound
321
- surfaces. The first is regenerated by `library:pin`; the second is two symlinks at
322
- the canonical trees so a Codex session started in a clone discovers them. Neither
323
- holds a copied recipe body, and neither is edited by hand.
330
+ - `.claude-plugin/marketplace.json` is the generated outbound surface. It is
331
+ regenerated by `library:pin`, holds no copied recipe body, and is never edited by
332
+ hand.
324
333
  - Core agent recipes (`src/domains/agents/builtins/`) and baseline fleets
325
334
  (`src/domains/agents/fleets/`) remain product-owned in `src/` and are not
326
335
  community library packages.
package/README.md CHANGED
@@ -27,9 +27,9 @@
27
27
  <a href="https://github.com/iowarp/clio-coder/issues">Feedback</a>
28
28
  </p>
29
29
 
30
- Clio Coder is an open-source coding agent for your terminal. Ask it to explain a
31
- repository, investigate a failing test, or help implement a change. It reads the
32
- project, works with your tools, and shows you what it did.
30
+ Clio Coder is an open-source coding agent that runs in your terminal. Ask it to
31
+ explain a repository, investigate a failing test, or help implement a change. It
32
+ reads the project, works with your tools, and shows you what it did.
33
33
 
34
34
  Built for scientific software and high-performance computing (HPC), Clio works
35
35
  with the code researchers maintain every day: simulation kernels, numerical
@@ -42,8 +42,10 @@ still needs your expertise. See [release notes](CHANGELOG.md) for current change
42
42
 
43
43
  ## Get started
44
44
 
45
- You need **Node.js 22.19 or newer**, Linux or macOS, and a running model server
46
- or API endpoint. Windows support is currently best effort.
45
+ You need **Node.js 22.19 or newer** on Linux or macOS, and a model to talk to:
46
+ a local inference server such as Ollama or LM Studio, your lab's gateway, or a
47
+ cloud API. A local server usually needs no key. A gateway or cloud API gives you
48
+ one, and Quick Connect asks for it. Windows support is currently best effort.
47
49
 
48
50
  ```bash
49
51
  npm install -g @iowarp/clio-coder
@@ -65,10 +67,18 @@ workspace edits with command approval, one worker at a time, a $5 tracked sessio
65
67
  budget, and a regular terminal interface. Other settings can wait. Escape goes
66
68
  back during setup; `clio-coder configure --settings` opens the full menu.
67
69
 
68
- **New in 0.4.7:** A unified Library for reusable workflows, operator extensions,
69
- safer keyboard controls, and a compact welcome header. See the
70
- [changelog](CHANGELOG.md) for release details and [Install](#install) for source
71
- builds and other package managers.
70
+ `clio-coder` opens the **terminal interface (TUI)**: an interactive chat that
71
+ shows tool calls and diffs as they happen. The same command is the **CLI** for
72
+ setup, diagnostics, headless runs, and automation; `clio-coder --help` lists
73
+ it. An optional local **browser app** over the same runtime is described under
74
+ [Optional browser app](#optional-browser-app). The first session does not need it.
75
+
76
+ **New in 0.4.9:** File tools report bounded reads, atomic edits, and partial
77
+ search results more precisely. Script runs retain streamed logs and provenance,
78
+ and scientific verification exposes explicit tolerance and non-finite policies.
79
+ A capability gateway adds data inspection and trusted local MCP alongside
80
+ secondary tools. See the [changelog](CHANGELOG.md) for release details and
81
+ [Install](#install) for source builds and other package managers.
72
82
 
73
83
  ## Built for scientific software
74
84
 
@@ -304,6 +314,28 @@ Read the [Safety Model](docs/architecture/safety-model.md) and
304
314
 
305
315
  ## Install
306
316
 
317
+ The npm-backed bootstrap installer checks prerequisites and guides you through
318
+ terminal setup:
319
+
320
+ ```bash
321
+ curl -fsSL https://raw.githubusercontent.com/iowarp/clio-coder/main/scripts/install.sh | bash
322
+ ```
323
+
324
+ To preview it from a source checkout, run `bash scripts/install.sh --dry-run`.
325
+ The installer targets Linux and macOS (on Windows, use the npm command above),
326
+ requires Node.js 22.19+ and npm, and installs under
327
+ `$HOME/.local` without sudo or shell-profile edits. It checks for
328
+ conflicting launchers, prints PATH guidance, and runs Clio's post-install migrations.
329
+ It opens no browser and enables no background service automatically. Its next-step
330
+ instructions follow the commands supported by the version actually installed.
331
+
332
+ Options include `--version <tag-or-version>`, `--prefix <directory>`,
333
+ `--omit-optional`, and `--dry-run`; pass them to a downloaded script using
334
+ `bash -s -- <options>`. A source-checkout symlink is preserved unless you explicitly
335
+ select `--force`. If you enabled the background service, run `clio-coder web background uninstall`
336
+ before removing the package. Remove an install at the default prefix with
337
+ `npm uninstall -g --prefix "$HOME/.local" @iowarp/clio-coder`.
338
+
307
339
  The npm command in [Get started](#get-started) is the shortest path. Other
308
340
  package managers install the same CLI; Node.js is required for all of them.
309
341
 
@@ -341,7 +373,7 @@ can also be installed with your package manager. See
341
373
  From source, the latest stable release uses the pinned pnpm workflow:
342
374
 
343
375
  ```bash
344
- git clone --branch v0.4.7 https://github.com/iowarp/clio-coder.git
376
+ git clone --branch v0.4.9 https://github.com/iowarp/clio-coder.git
345
377
  cd clio-coder
346
378
  corepack enable pnpm
347
379
  pnpm run install:local
@@ -384,7 +416,10 @@ For source installs, update your checkout and rerun `pnpm run install:local`.
384
416
  To remove the npm package, use `npm uninstall -g @iowarp/clio-coder`.
385
417
  Removing the package preserves Clio's user data. For a deliberate data purge,
386
418
  preview `clio-coder uninstall --dry-run`; `uninstall --remove-binary` also
387
- removes a local source launcher. Per-project files are preserved.
419
+ removes a local source launcher. It stops and disables the owned web background service
420
+ before deleting its state and removes its desktop entry. Ownership conflicts or a
421
+ failed service stop preserve Clio state and report the problem. Per-project files
422
+ are preserved.
388
423
 
389
424
  `clio-coder reset --help` lists selective reset options. Use `--dry-run` before
390
425
  a reset. The [lifecycle guide](docs/guide/installation-and-lifecycle.md) explains
@@ -392,52 +427,39 @@ exactly which settings, credentials, and session directories each option affects
392
427
 
393
428
  </details>
394
429
 
395
- ## Optional interfaces
430
+ ## Optional browser app
396
431
 
397
- The terminal is the main starting point. Source checkouts also include a
398
- desktop/browser interface and a local viewer for recorded runs.
399
-
400
- <details>
401
- <summary><strong>Desktop and browser GUI</strong></summary>
402
-
403
- The GUI in `apps/workbench/` uses your existing Clio configuration. It requires
404
- Deno `>=2.9.5`, workspace dependencies, and `clio-coder` on `PATH`.
432
+ The terminal is the primary interface. Clio Coder also packages a local browser
433
+ app over the same runtime, projects, configuration, and model targets:
405
434
 
406
435
  ```bash
407
- cd apps/workbench
408
- deno task browser # build and serve on localhost:4173
409
- deno task gui:install # optional standalone local application
436
+ clio-coder web --open
410
437
  ```
411
438
 
412
- The installed launcher is `clio-coder-gui`. Linux, including WSL2, is tested;
413
- native Windows launch is unavailable. Prebuilt GUI downloads are not distributed.
414
- The GUI keeps its own recent-project list; Clio owns sessions and authentication.
439
+ It prints a private launch link and opens your default browser only when asked.
440
+ The server binds to `127.0.0.1`, and its Traces page reads the trace database
441
+ without modifying it. On Linux with a systemd user session,
442
+ `clio-coder web background install --open` keeps the app available after login
443
+ and lets you install it from the browser as a PWA; `web background status`,
444
+ `stop`, and `uninstall` manage that service. Other platforms can run the
445
+ foreground app while its server is running. The background service has been
446
+ verified on Linux only; macOS and Windows have not been exercised. Development
447
+ details are in [`apps/clio-coder-web/README.md`](apps/clio-coder-web/README.md).
415
448
 
416
- See the [GUI guide](apps/workbench/README.md) for installation, state locations,
417
- updates, and removal. There is no `clio-coder workbench` subcommand.
418
-
419
- </details>
420
-
421
- <details>
422
- <summary><strong>Read-only trace viewer</strong></summary>
423
-
424
- From a source checkout:
425
-
426
- ```bash
427
- clio-coder trace ui --port 4600
428
- ```
429
-
430
- The viewer binds to `127.0.0.1` and reads the local trace database without
431
- modifying it. The npm package does not include this app. See the
432
- [trace viewer guide](apps/trace-viewer/README.md).
433
-
434
- </details>
449
+ `apps/workbench/` remains as reference source for future GUI work. It is excluded
450
+ from workspace installation, recursive builds, publication, and product gates.
435
451
 
436
452
  ## Help and documentation
437
453
 
454
+ The guides under [`docs/`](docs/README.md) are Markdown, ship with the package,
455
+ and need no browser. To discover commands, use `clio-coder --help` (`--help
456
+ --all` includes developer tools) and `/help` inside a session.
457
+ `clio-coder docs [topic]` opens the same guides in the browser app; for example,
458
+ `clio-coder docs safety` opens the safety guide, and `--no-open` prints the
459
+ private launch link instead of opening a browser.
460
+
438
461
  If setup fails, start with `clio-coder doctor` and
439
- `clio-coder configure --section diagnostics`. To discover commands, use
440
- `clio-coder --help`; `--help --all` includes developer tools.
462
+ `clio-coder configure --section diagnostics`.
441
463
 
442
464
  | Looking for… | Start here |
443
465
  | --- | --- |
@@ -6,32 +6,32 @@ import {
6
6
  } from "./chunk-7WLRF2U5.js";
7
7
  import {
8
8
  runClioCommand
9
- } from "./chunk-GI5RRMAH.js";
10
- import "./chunk-6CA2BHOR.js";
11
- import "./chunk-4N2RZ4TO.js";
9
+ } from "./chunk-KW6OJ7IY.js";
10
+ import "./chunk-OA2GDACN.js";
11
+ import "./chunk-IALGWTLO.js";
12
12
  import "./chunk-FXFVDPWY.js";
13
13
  import {
14
14
  printError
15
- } from "./chunk-3T4DXWP6.js";
16
- import "./chunk-4MFBBY2Z.js";
17
- import "./chunk-24TOGHPO.js";
18
- import "./chunk-6TAATXXH.js";
19
- import "./chunk-VNBICSS2.js";
20
- import "./chunk-DXVMLM3Z.js";
21
- import "./chunk-4QKAITQT.js";
15
+ } from "./chunk-KIVFXGBM.js";
16
+ import "./chunk-W72LLZAV.js";
17
+ import "./chunk-X6FLVUM5.js";
18
+ import "./chunk-FPS4R2RN.js";
22
19
  import "./chunk-DVNAPPXU.js";
23
- import "./chunk-E3LEPLQ2.js";
24
- import "./chunk-3XE4NRLF.js";
20
+ import "./chunk-ZKJU55MX.js";
25
21
  import "./chunk-U2MSJ57E.js";
26
22
  import "./chunk-C27U2TYG.js";
23
+ import "./chunk-ZKVMDNAN.js";
24
+ import "./chunk-VNBICSS2.js";
25
+ import "./chunk-B5GGDIHT.js";
26
+ import "./chunk-DXVMLM3Z.js";
27
27
  import {
28
28
  MAX_TIMER_DELAY_MS
29
29
  } from "./chunk-6EXUUOSN.js";
30
30
  import "./chunk-DVJL77SO.js";
31
31
  import "./chunk-TK2BMCBZ.js";
32
- import "./chunk-B5GGDIHT.js";
33
- import "./chunk-ZZFWWYLX.js";
34
32
  import "./chunk-CTTI7G3T.js";
33
+ import "./chunk-ZZFWWYLX.js";
34
+ import "./chunk-E3LEPLQ2.js";
35
35
  import {
36
36
  init_esm_shims
37
37
  } from "./chunk-ECBHH7LU.js";
@@ -127,4 +127,4 @@ async function runAcpCommand(args, options = {}) {
127
127
  export {
128
128
  runAcpCommand
129
129
  };
130
- //# sourceMappingURL=acp-W3Y3TRHD.js.map
130
+ //# sourceMappingURL=acp-ZWZCPS2A.js.map